Opencv之外形輪廓繪製

2021-10-09 18:26:39 字數 2010 閱讀 9071

相關理論知識

相關程式

#include

"stdafx.h"

//本節講述 影象處理之 輪廓發現;

#include

#include

#include

using

namespace std;

using

namespace cv;

void

contours_demo

(int

,void*)

;mat src, test1, test2, dst, gray_src, temp;

char input_title=

"原圖"

;//char output_title = "結果圖";

int match_method = cv_tm_sqdiff;

int max_track =5;

int threshold_value =

100;

int max_threshold =

255;

intmain

(int argc,

char

**ar**)

namedwindow

(input_title, cv_window_autosize)

;//namedwindow(output_title, cv_window_autosize);

imshow

(input_title, src)

;cvtcolor

(src, gray_src, cv_bgr2gray)

;//const char*trackbar_title = "threshold value";

createtrackbar

("threshold value"

, input_title,

&threshold_value, max_threshold, contours_demo)

;contours_demo(0

,0);

//blur(gray_src, gray_src, size(3, 3));

//const char* source_window = "source";

//namedwindow(source_window, window_autosize);

//imshow(source_window, src);

waitkey(0

);destroyallwindows()

;return0;

}void

contours_demo

(int

,void*)

imshow

("外形輪廓繪製"

, drawing)

;}

執行結果:

備註:

1.本節的兩個核心apifindcontours()和drawcontours();

2.本節知識最全面的一篇文章:

api函式及全面相關知識

3.findcontours()函式內部引數的補充

opencv學習心得(六)新版本繪製外形輪廓。

最近在研究opencv2.3.1版本函式,因為函式結構使用c 型別的,所以在一些函式呼叫上有很多差別,但是在執行速度上提高不少,所以還是新版本好用。其實在新版本發布是,會有相關的使用手冊,很多例子會在其中找到。這個程式和例程有所不同,只繪製最外側的輪廓,為後來的提取影象,有很大幫助。include ...

opencv尋找輪廓 繪製輪廓 輪廓層級原理

void findcontours inputoutputarray image,outputarrayofarrays contours,outputarray hierarchy,int mode,int method,point offset point 引數image inputarray型...

OpenCV中的輪廓發現和輪廓繪製

實現 import cv2 import numpy as np 輪廓發現和輪廓繪製 img是一張與binary類似的二值圖,contours是list列表結構每個元素包含乙個邊沿資訊,heriachy是乙個矩陣,用處作者也未知,可以 contours,heriachy cv2.findcontou...