图像轮廓提取关键函数
一. 關(guān)鍵函數(shù)介紹
下面就介紹OpenCV中對圖像進行二值化的關(guān)鍵函數(shù)——cvThreshold()。
函數(shù)功能:采用Canny方法對圖像進行邊緣檢測
函數(shù)原型:
void?cvThreshold(
? const?CvArr*?src,
? CvArr*?dst,
? double?threshold,
? double?max_value,
? int?threshold_type
);
函數(shù)說明:
第一個參數(shù)表示輸入圖像,必須為單通道灰度圖。
第二個參數(shù)表示輸出的邊緣圖像,為單通道黑白圖。
第三個參數(shù)表示閾值
第四個參數(shù)表示最大值。
第五個參數(shù)表示運算方法。
在OpenCV的imgproc\types_c.h中可以找到運算方法的定義。
/* Threshold types*/
enum
{
????CV_THRESH_BINARY?????=0,??/* value = value > threshold ? max_value :0???????*/
????CV_THRESH_BINARY_INV?=1,??/* value = value > threshold ? 0 : max_value???????*/
????CV_THRESH_TRUNC??????=2,??/* value = value > threshold ? threshold : value???*/
????CV_THRESH_TOZERO?????=3,??/* value = value > threshold ? value :0???????????*/
????CV_THRESH_TOZERO_INV?=4,??/* value = value > threshold ? 0 :value???????????*/
????CV_THRESH_MASK???????=7,
????CV_THRESH_OTSU???????=8??/* use Otsualgorithm to choose the optimal threshold value; combine the flag with one ofthe above CV_THRESH_* values */
};
注釋已經(jīng)寫的很清楚了,因此不再用中文來表達(dá)了。
現(xiàn)象:
注意了:
?
其中的二值化灰度值是可以調(diào)節(jié)的,當(dāng)灰度值比較小的時候,出現(xiàn)輪廓很大的情況,與事實不符合。所以需要調(diào)節(jié)到合適的灰度值。
《新程序員》:云原生和全面數(shù)字化實踐50位技術(shù)專家共同創(chuàng)作,文字、視頻、音頻交互閱讀總結(jié)
以上是生活随笔為你收集整理的图像轮廓提取关键函数的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: vs2013配置opencv2.4.9
- 下一篇: C++中substr函数的用法