當前位置:首頁 » 編程語言 » python輪廓

python輪廓

發布時間: 2025-01-10 23:49:23

A. 如何用python取圖片輪廓

1、查找輪廓(find_contours)

measure模塊中的find_contours()函數,可用來檢測二值圖像的邊緣慧游輪廓。

函數原型為:

skimage.measure.find_contours(array,level)

array: 一個二值數組圖像

level: 在圖像中查找輪廓的級別值

返回輪廓列表集合,可用for循環取出每一條輪廓。

例1:

importnumpyasnp
importmatplotlib.pyplotasplt
fromskimageimportmeasure,draw

#生成二值測試圖像
img=np.zeros([100,100])
img[20:40,60:80]=1#矩形
rr,cc=draw.circle(60,60,10)#小圓
rr1,cc1=draw.circle(20,30,15)#大圓
img[rr,cc]=1
img[rr1,cc1]=1

#檢測所有圖形的輪廓
contours=measure.find_contours(img,0.5)

#繪制輪廓前陵銷
fig,(ax0,ax1)=plt.subplots(1,2,figsize=(8,8))
ax0.imshow(img,plt.cm.gray)
ax1.imshow(img,plt.cm.gray)
forn,contour汪則inenumerate(contours):
ax1.plot(contour[:,1],contour[:,0],linewidth=2)
ax1.axis('image')
ax1.set_xticks([])
ax1.set_yticks([])
plt.show()

結果如下:不同的輪廓用不同的顏色顯示

B. python 圖像處理 怎樣將輪廓內部填充

可以用反選,也可以把要填充的部分選中,選擇油漆桶工具直接填充自己想要的顏色。

C. 【Python學習蝴蝶書】第八章 輪廓8-輪廓的匹配(等級匹配)

等級匹配通過逐步削減或填充輪廓邊緣的尖角或凹陷,減少多邊形頂點的數量,形成一個每步操作的三角形作為葉節點的二分樹。最終頂點剩下4個,再被分解為兩個三角形,作為根節點的子節點,形成二分樹結構。

等級匹配過程可直觀理解為輪廓頂點的遞減過程,形成具有根節點和葉節點的二分樹。每一步的三角形代表一個葉節點,最終輪廓頂點減少至四個,形成兩個三角形作為根節點的兩個子節點。

實現等級匹配的原理圖通常顯示了此過程,包括從原始輪廓到最終二分樹的轉換。然而,這個過程的魯棒性可能不高,輪廓上微小的變化可能會導致樹結構發生顯著變化。

凸包和凸缺陷是輪廓分析中的兩個關鍵概念。凸包是指輪廓頂點形成的外角均大於180度的多邊形。凸缺陷則表示輪廓相對於凸包的偏差區域。

凸包的概念可以通過計算輪廓點集的凸包角點來實現,Python中提供cv2.convexHull函數完成此任務。該函數接收輪廓點集作為參數,並可選擇輸出凸包角點的坐標或索引,以及決定角點排列方向。

凸缺陷則通過cv2.convexityDefects函數計算,該函數需要輪廓點集、凸包點索引作為輸入,輸出每個缺陷的起始點、終止點、最遠輪廓點索引和最遠距離。

實際應用中,通過cv2.convexHull函數可以計算出輪廓的凸包,如圖中藍色多邊形所示。接著,使用cv2.convexityDefects函數獲取凸包與原始輪廓之間的凸缺陷信息。通過將起始點與終止點相連,可以得到凸包的輪廓線,同時,標記出凸缺陷中最遠點與凸包邊的距離。

熱點內容
網易雲音樂腳本 發布:2025-01-11 02:22:56 瀏覽:608
java軟體開發培訓怎麼樣 發布:2025-01-11 02:17:53 瀏覽:194
md5加密優點 發布:2025-01-11 02:12:52 瀏覽:435
讀取文件夾所有文件名 發布:2025-01-11 02:12:50 瀏覽:682
雲伺服器華為 發布:2025-01-11 02:11:07 瀏覽:162
路由器重置了wifi默認密碼是什麼 發布:2025-01-11 02:03:55 瀏覽:659
2019速騰買什麼配置好 發布:2025-01-11 01:35:07 瀏覽:831
博越存儲異常 發布:2025-01-11 01:24:31 瀏覽:918
我的世界還原中國伺服器版圖 發布:2025-01-11 01:18:45 瀏覽:384
pythonopenasfile 發布:2025-01-11 01:17:06 瀏覽:973