1
scikit 이미지와 바이너리 이미지의 골격을 구하는 방법나는 다음과 같은 이미지의 골격을 그리려는
import cv2
from skimage import morphology, color
import matplotlib.pyplot as plt
image = cv2.imread(r'C:\Users\Administrator\Desktop\sample.jpg')
gray_image = cv2.cvtColor(image, cv2.COLOR_BGR2GRAY)
image=color.rgb2gray(image)
skeleton =morphology.medial_axis(image)
fig, (ax1, ax2) = plt.subplots(nrows=1, ncols=2, figsize=(8, 4))
ax1.imshow(image, cmap=plt.cm.gray)
ax1.axis('off')
ax1.set_title('original', fontsize=20)
ax2.imshow(skeleton, cmap=plt.cm.gray)
ax2.axis('off')
ax2.set_title('skeleton', fontsize=20)
fig.tight_layout()
plt.show()
:
나는 다음과 같은 파이썬 코드로 시도했습니다
그리고 나는 다음과 같은 골격을 가지고 :
을이것은 올바른 해골 이미지가 아닙니다. 나는 무엇이 잘못 될지 모른다.
아무도 도와 줄 수 있습니까? 어떤 도움을 주시면 감사하겠습니다 !!!
당신이 한 큰 일은 강조하지만 강조하지는 않았지만 바이너리로 변환하는 것이 꽤 정리 될 것입니다. 원본 이미지의 흰색 레벨에서 약간의 차이가 골격 유물을 일으키고 있다고 상상해 봅니다. – Aaron
원래 이미지는 jpeg 였으므로 지각 할 수없는 인공물을 겪게됩니다. – Aaron
어리석은 저, 저는 대각선으로 질문을 읽고 OP가 실제로 윤곽보다 골격을 원한다는 것을 알아 채지 못했습니다. – Tonechas