例如,圖像如下所示:import cv2
import numpy as np
img = cv2.imread("mdb168.pgm",0)
import matplotlib.pyplot as plt
plt.imshow(img, cmap="gray")
我想刪除圖像中所有的偽影和不必要的部分。在
為此,我首先對圖像進行二值化
^{pr2}$
使用開口kernel = np.ones((20,20),np.uint8)
opening = cv2.morphologyEx(thresh1, cv2.MORPH_OPEN, kernel)
plt.imshow(opening, cmap="gray")
然后是侵蝕kernel = np.ones((120,120),np.uint8)
erosion = cv2.erode(opening,kernel,iterations = 1)
plt.imshow(erosion, cmap="gray")
然后將此蒙版與原始圖像合并merged = cv2.bitwise_and(img, img , mask=erosion)
plt.imshow(merged, cmap="gray")
我現在要切除左上角的胸肌。
在本出版物中:https://www.ncbi.nlm.nih.gov/pubmed/26742491
它們使用完全相同的數據集,并使用“種子區域生長”來實現這一點。
但是,沒有提供代碼,我在opencv中找不到這個。在
我可以通過再做擴張/腐蝕等來達到類似的效果,但我正在尋找一個更具普遍性的解決方案。
另外,有些圖像沒有顯示肌肉,這也應該被檢測到。在