色婷婷狠狠18禁久久YY,CHINESE性内射高清国产,国产女人18毛片水真多1,国产AV在线观看

python矩形骨架提取

李佳璐1年前6瀏覽0評論

Python是一款強大的編程語言,廣泛應用于數據處理和圖形圖像處理領域。在圖像處理領域中,矩形骨架提取是一項非常重要的任務,能夠方便地去除圖像中不必要的背景,提取對象的輪廓和形狀。本文將介紹如何使用Python進行矩形骨架提取。

import cv2
# 讀取圖像
img = cv2.imread('image.jpg', 0)
# 二值化
ret, img = cv2.threshold(img, 127, 255, cv2.THRESH_BINARY)
# 提取骨架
size = np.size(img)
skel = np.zeros(img.shape, np.uint8)
element = cv2.getStructuringElement(cv2.MORPH_CROSS, (3, 3))
while True:
eroded = cv2.erode(img, element)
temp = cv2.dilate(eroded, element)
temp = cv2.subtract(img, temp)
skel = cv2.bitwise_or(skel, temp)
img = eroded.copy()
zeros = size - cv2.countNonZero(img)
if zeros == size:
break
# 顯示結果
cv2.imshow('Original', img)
cv2.imshow('Skeleton', skel)
cv2.waitKey(0)
cv2.destroyAllWindows()

在以上代碼中,我們使用了OpenCV的cv2庫來讀取圖像,并進行二值化處理。接著,我們使用了cv2.getStructuringElement()函數來創建一個交叉結構元素。在while循環中,我們使用cv2.erode()和cv2.dilate()函數來對圖像進行腐蝕和膨脹操作,然后通過cv2.subtract()函數減去原始圖像,得到提取出來的骨架。最后,我們使用cv2.bitwise_or()函數將提取出來的骨架合并起來,并用cv2.imshow()函數將原始圖像和骨架圖像顯示出來。

通過以上代碼,我們可以方便地進行矩形骨架提取的操作,并得到清晰明了的骨架圖像,大大提高了圖像處理的效率。