參考:opencv3/c++輪廓的提取與篩選
#define _crt_secure_no_warnings
#include
#include
#include
using
namespace cv;
using
namespace xfeatures2d;
using
namespace std;
intmain()
cvtcolor
(test, testgray, cv_bgr2gray)
;namedwindow
("[2]灰度化");
imshow
("[2]灰度化"
, testgray)
;threshold
(testgray, testbi,70,
255, cv_thresh_binary)
;//可修改閾值
namedwindow
("[3]二值化");
imshow
("[3]二值化"
, testbi)
;//膨脹
mat testswell;
int g_nstructelementsize =1;
//結構元素(核心矩陣)的尺寸
mat element =
getstructuringelement
(morph_rect,
size(2
* g_nstructelementsize +1,
2* g_nstructelementsize +1)
,point
(g_nstructelementsize, g_nstructelementsize));
dilate
(testbi, testswell, element)
;namedwindow
("[5]膨脹");
imshow
("[5]膨脹"
, testswell)
; src = testswell;
dst = mat::
zeros
(src.
size()
, cv_8uc3)
;//canny(src, src, 20, 80, 3, false);
std::vector<:vector>> contours;
std::vector hierarchy;
findcontours
point(0
,0))
; std::vector
boundrect
(contours.
size()
);//定義外接矩形集合
opencv提取外部輪廓並在外部加矩形框
這段時間一直在用opencv搞影象處理的問題,發現雖然可呼叫的函式多,但是直接找相應 還是很困難,就行尋找連通域,並在連通域外側加框,對於習慣使用mat矩形操作的我,真心感覺 少之又少,為防止以後自己還會用到,特在此記錄一下。要對下面的影象進行字元的邊緣檢測。程式中具體的步驟為 1 灰度化 二值化 ...
opencv畫矩形框
rectangle 畫矩形 c mat類 void rectangle mat img,point pt1,point pt2,const scalar color,int thickness 1,int linetype 8,int shift 0 void rectangle mat img,c...
opencv 對於矩形框的操作
如果建立乙個rect物件rect 100,50,50,100 那麼rect會有以下幾個功能 rect.area 返回rect的面積 5000 rect.size 返回rect的尺寸 50 100 rect.tl 返回rect的左上頂點的座標 100,50 rect.br 返回rect的右下頂點的座標...