




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
第OpenCV學(xué)習(xí)記錄python實(shí)現(xiàn)連通域處理函數(shù)目錄1、兩個函數(shù)介紹1.1什么是連通域1.2cv2.connectedComponents()1.3cv2.connectedComponentsWithStats()2、代碼實(shí)踐3、總結(jié)
1、兩個函數(shù)介紹
總得來說,connectedComponents()僅僅創(chuàng)建了一個標(biāo)記圖(圖中不同連通域使用不同的標(biāo)記,和原圖寬高一致),connectedComponentsWithStats()可以完成上面任務(wù),除此之外,還可以返回每個連通區(qū)域的重要信息boundingbox,area,andcentroid。
1.1什么是連通域
連通區(qū)域一般是指圖像中具有相同像素值且位置相鄰的前景像素點(diǎn)組成的圖像區(qū)域。連通區(qū)域分析是指將圖像中的各個連通區(qū)域找出并標(biāo)記。
連通區(qū)域分析是一種在CVPR和圖像分析處理的眾多應(yīng)用領(lǐng)域中較為常用和基本的方法。
例如:OCR識別中字符分割提?。ㄜ嚺谱R別、文本識別、字幕識別等)、視覺跟蹤中的運(yùn)動前景目標(biāo)分割與提?。ㄐ腥巳肭謾z測、遺留物體檢測、基于視覺的車輛檢測與跟蹤等)、醫(yī)學(xué)圖像處理(感興趣目標(biāo)區(qū)域提?。⒌鹊?。也就是說,在需要將前景目標(biāo)提取出來以便后續(xù)進(jìn)行處理的應(yīng)用場景中都能夠用到連通區(qū)域分析方法,通常連通區(qū)域分析處理的對象是一張二值化后的圖像。
1.2cv2.connectedComponents()
函數(shù)各參數(shù)意義:
num_objects,labels=cv2.connectedComponents(image)
參數(shù)介紹如下:
image:也就是輸入圖像,必須是二值圖,即8位單通道圖像。(因此輸入圖像必須先進(jìn)行二值化處理才能被這個函數(shù)接受)
返回值:
num_labels:所有連通域的數(shù)目
labels:圖像上每一像素的標(biāo)記,用數(shù)字1、2、3表示(不同的數(shù)字表示不同的連通域)
1.3cv2.connectedComponentsWithStats()
這個函數(shù)的作用是對一幅圖像進(jìn)行連通域提取,并返回找到的連通域的信息:retval、labels、stats、centroids
num_labels,labels,stats,centroids=cv2.connectedComponentsWithStats(image,connectivity=8,ltype=None)
參數(shù)介紹如下:
image:也就是輸入圖像,必須是二值圖,即8位單通道圖像。(因此輸入圖像必須先進(jìn)行二值化處理才能被這個函數(shù)接受)connectivity:可選值為4或8,也就是使用4連通還是8連通。ltype:輸出圖像標(biāo)記的類型,目前支持CV_32S和CV_16U。
返回值:
num_labels:所有連通域的數(shù)目labels:圖像上每一像素的標(biāo)記,用數(shù)字1、2、3表示(不同的數(shù)字表示不同的連通域)stats:每一個標(biāo)記的統(tǒng)計信息,是一個5列的矩陣,每一行對應(yīng)每個連通區(qū)域的外接矩形的x、y、width、height和面積,示例如下:00720720291805centroids:連通域的中心點(diǎn)
2、代碼實(shí)踐
兩個代碼的用處是共通的,cv2.connectedComponentsWithStats函數(shù)返回的信息量更大,所以這里展示它的應(yīng)用。
importcv2
importnumpyasnp
#讀入圖片
img=cv2.imread("001.jpg")
#中值濾波,去噪
img=cv2.medianBlur(img,3)
gray=cv2.cvtColor(img,cv2.COLOR_BGR2GRAY)
dWindow('original',cv2.WINDOW_AUTOSIZE)
cv2.imshow('original',gray)
#閾值分割得到二值化圖片
ret,binary=cv2.threshold(gray,0,255,cv2.THRESH_BINARY|cv2.THRESH_OTSU)
#膨脹操作
kernel2=cv2.getStructuringElement(cv2.MORPH_RECT,(3,3))
bin_clo=cv2.dilate(binary,kernel2,iterations=2)
#連通域分析
num_labels,labels,stats,centroids=cv2.connectedComponentsWithStats(bin_clo,connectivity=8)
#查看各個返回值
#連通域數(shù)量
print('num_labels=',num_labels)
#連通域的信息:對應(yīng)各個輪廓的x、y、width、height和面積
print('stats=',stats)
#連通域的中心點(diǎn)
print('centroids=',centroids)
#每一個像素的標(biāo)簽1、2、3.。。,同一個連通域的標(biāo)簽是一致的
print('labels=',labels)
#不同的連通域賦予不同的顏色
output=np.zeros((img.shape[0],img.shape[1],3),np.uint8)
foriinrange(1,num_labels):
mask=labels==i
output[:,:,0][mask]=np.random.randint(0,255)
output[:,:,1][mask]=np.random.randint(0,255)
output[:,:,2][mask]=np.random.randint(0,255)
cv2.imshow('oginal',output)
cv2.waitKey()
cv2.destroyAllWindows()
打印出的連通域的信息如下:
重點(diǎn)是理解stats和labels參數(shù)的意義,其他的參數(shù)都容易理解:
labels:對原始圖中的每一個像素都打上標(biāo)簽,背景為0,連通域打上1,2,3。。。的標(biāo)簽,同一個連通域的像素打上同樣的標(biāo)簽。相當(dāng)與對每一個像素進(jìn)行了分類(分割)
stats:每一連通域的信息,表示每個連通區(qū)域的外接矩形(起始點(diǎn)的x、y、寬和高)和面積
連通域檢測的效果圖:
3、總結(jié)
(1)連通域分析可以實(shí)現(xiàn)將前景目標(biāo)提取出來以便后續(xù)進(jìn)行處理(類似于輪廓處理)
(2)重點(diǎn)是cv2.connectedComponentsWithStats函數(shù)中stats和labels參數(shù)的意義
labels:對原始圖中的每一個像素都打上標(biāo)簽,背景為0,連通域打上1,2,3。。。的標(biāo)簽,同一個連通域的像素打上同樣的標(biāo)簽。相當(dāng)與對每一個像素進(jìn)行了分類(分割)
stats:每一連通域的信息,表示每個連通區(qū)域的外接矩形(起始點(diǎn)的x、
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 拆遷補(bǔ)償及臨時安置補(bǔ)償協(xié)議書
- 2025年中國博士服市場調(diào)查研究報告
- 2024年度浙江省二級建造師之二建水利水電實(shí)務(wù)能力測試試卷B卷附答案
- 2024年度浙江省二級建造師之二建礦業(yè)工程實(shí)務(wù)題庫附答案(基礎(chǔ)題)
- 2024年度浙江省二級建造師之二建礦業(yè)工程實(shí)務(wù)考前練習(xí)題及答案
- 2024年度浙江省二級建造師之二建機(jī)電工程實(shí)務(wù)自我檢測試卷A卷附答案
- 高級財務(wù)分析師勞動合同書
- 拆除房屋及配套設(shè)施搬遷安置補(bǔ)償服務(wù)合同
- 餐飲店與旅游公司聯(lián)合營銷合作協(xié)議
- 云南省2025年中考第三次模擬考試英語試卷(解析版)
- 2024年西安高新區(qū)公辦學(xué)校教師招聘真題
- 行政管理學(xué)科試題及答案分享
- 2023-2024學(xué)年上海市浦東區(qū)八年級(下)期末數(shù)學(xué)試卷 (含答案)
- 會務(wù)技能測試題及答案
- 公司辦公用品管理規(guī)程:申購、領(lǐng)用與報廢流程詳解
- 江蘇南通2025年公開招聘農(nóng)村(村務(wù))工作者筆試題帶答案分析
- 《公司法教學(xué)課件》課件
- 2024北京朝陽區(qū)四年級(下)期末英語試題及答案
- 公安外宣工作培訓(xùn)
- 光伏組件清洗合同
- 作風(fēng)建設(shè)學(xué)習(xí)教育心得體會:在深入學(xué)習(xí)中校準(zhǔn)思想坐標(biāo)持續(xù)轉(zhuǎn)變工作作風(fēng)(3篇)
評論
0/150
提交評論