日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 >

opencv 腐蚀 matlab,Opencv3编程入门笔记(4)腐蚀、膨胀、开闭运算、漫水填充、金字塔、阈值化、霍夫变换...

發(fā)布時間:2024/1/23 37 豆豆
生活随笔 收集整理的這篇文章主要介紹了 opencv 腐蚀 matlab,Opencv3编程入门笔记(4)腐蚀、膨胀、开闭运算、漫水填充、金字塔、阈值化、霍夫变换... 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

19????? 腐蝕erode、膨脹dilate

腐蝕和膨脹是針對圖像中的白色部分(高亮部分)而言的,不是黑色的。除了輸入輸出圖像外,還需傳入模板算子element,opencv中有三種可以選擇:矩形MORPH_RECT,交叉形MORPH_CROSS,橢圓形MORPH_ELLIPSE。Matlab中會有更多一點的模板。

例如:

Mat element = getStructuringElement(MORPH_RECT,Size(15,15));

erode(srcImage,dstImage,element);

imshow("腐蝕圖",dstImage);

dilate(srcImage,dstImage,element);

imshow("膨脹圖",dstImage);

20????? 開閉運算、形態(tài)學梯度、頂帽、黑帽

開運算是先腐蝕后膨脹的過程,開運算可以用來消除小物體,在纖細點處分離物體,并且在平滑較大物體的邊界的同時不明顯改變其面積。

閉運算是先膨脹后腐蝕的過程,能夠排除小型黑洞(黑色區(qū)域),也就是形成連通域。

形態(tài)學梯度是膨脹圖域腐蝕圖之差,可以用來保留物體的邊緣輪廓。

頂帽是原圖像與開運算的結果圖之差,頂帽操作往往用來分離比鄰近點亮一點的斑塊。在一幅圖像具有大幅的背景而微小物品比較有規(guī)律的情況下,可以使用頂帽運算進行背景提取。

黑帽是閉運算結果圖與原圖像之差,黑帽運算用來分離比鄰近點暗一些的斑塊。

21????? 漫水填充

漫水填充法是一種用特定的顏色填充連通區(qū)域,經常被用來標記或者分離圖像的一部分進行處理或分析。其實現(xiàn)函數(shù)是floodFill。

Rect ccomp;

floodFill(srcImage,Point(50,300),Scalar(155,255,55),&ccomp,Scalar(20,20,20),Scalar(20,20,20));

imshow("漫水填充圖",srcImage);

Point(50,300)是Point類型的,表示漫水填充的起始點;Scalar(155,255,55)表示像素點被染色的值,即在重繪去油像素的新值;&ccomp 是Rect*類型的,有默認值為0,用于設定floodfill函數(shù)將要重繪區(qū)域的最小邊界矩形區(qū)域;第五個參數(shù)Scalar(20,20,20)表示當前觀察像素值與其部件鄰域像素值或者待加入該部件的種子像素之間的亮度或顏色之負差的最大值;第六個參數(shù)Scalar(20,20,20)表示當前觀察像素值與其部件鄰域像素值或者待加入該部件的種子像素之間的亮度或顏色之正差的最大值;

22????? 圖像金字塔與圖片尺寸縮放

我們經常會將某種尺寸的圖像轉換為其他尺寸的圖像,如果要放大或縮小圖片的尺寸,opencv里有兩種方法:

(1) resize函數(shù) 最直接

resize(srcImage,dstImage,Size(),0.5,0.5);//縮小為一半

imshow("縮放1/2圖",dstImage);

resize(srcImage,dstImage,Size(),2,2);//放大2倍

imshow("放大2倍圖",dstImage);

resize(srcImage,dstImage,Size(srcImage.cols*3,srcImage.rows*3));//放大3倍

imshow("放大3倍圖",dstImage);

上方所有例子的插值方式都是默認的線性插值LITER_LINEAR,還可選擇最近鄰插值INTER_NEAREST,區(qū)域插值INTER_AREA,三次樣條插值INTER_CUBIC,Lanczos插值INTER_LANCZOS4。

(2) pyrUp()、pyrDown()函數(shù),即圖像金字塔的對圖像向上采樣和向下采樣操作函數(shù)。

一般有兩種類型的金字塔:1.高斯金字塔,向下采樣也就是尺寸縮小,實現(xiàn)函數(shù)為pyrUp;2.拉普拉斯金字塔,向上采樣,也就是圖像尺寸放大,實現(xiàn)函數(shù)為pyrDown。

與resize函數(shù)實現(xiàn)相似,?? pyrUp(srcImage,dstImage,Size(srcImage.cols*2,srcImage.rows*2));// 放大2倍

imshow("金字塔放大2倍圖",dstImage);

pyrDown(srcImage,dstImage,Size(srcImage.cols/2,srcImage.rows/2));// 縮小2倍

imshow("金字塔縮小2倍圖",dstImage);

23????? 閾值化

閾值是最簡單的圖像分割方法,是基于圖像中物體與背景之間的灰度差異,且此分割屬于像素級的分割。閾值操作分為固定閾值操作threshold和自適應閾值操作adaptiveThreshold。Ps:threshold函數(shù)輸入圖像可以是8位也可以是32位,即可以是灰度圖也可以為彩色圖,但adaptiveThreshold輸入圖像必須是8位,即必須是灰度圖。

Mat imgGray;

cvtColor(srcImage,dstImage,CV_BGR2GRAY);

imshow("灰度圖.jpg",dstImage);

imgGray = dstImage;

//閾值化操作

threshold(srcImage,dstImage,100,255,3);//表示閾值的具體值,255表示閾值類型的最大值,3表示其閾值方式

imshow("固定閾值化圖像",dstImage);

adaptiveThreshold(imgGray,dstImage,255,ADAPTIVE_THRESH_MEAN_C,THRESH_BINARY,3,1);//3表示計算閾值大小的一個像素的領域尺寸,取值為3,5,7等。1表示減去平均或加權平均值后的常數(shù)值,通常為正數(shù),少數(shù)情況下也可以為0或負數(shù)。

imshow("自適應閾值化圖像",dstImage);

24????? 霍夫變換 Hough

霍夫變換是圖像處理中的一種特征提取技術,霍夫變換運用兩個坐標空間之間的變換將在一個空間中具有相同形狀的曲線或者直線映射到另一個坐標空間的一個點上形成峰值,從而把檢測任意形狀的問題轉化為統(tǒng)計峰值問題。

霍夫線變換原理采用直線在極坐標表示情況下,由極徑和極角(r,theta)表示。

? ?

原文:http://www.cnblogs.com/ggYYa/p/5671831.html

總結

以上是生活随笔為你收集整理的opencv 腐蚀 matlab,Opencv3编程入门笔记(4)腐蚀、膨胀、开闭运算、漫水填充、金字塔、阈值化、霍夫变换...的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內容還不錯,歡迎將生活随笔推薦給好友。