使用skeleton = morphology.skeletonize(img)
提取图像img的骨架时,img的数值范围应调整至0~1。
可以使用opencv的threshold完成从255到1的转变,既_,img = cv2.threshold(img,127,1,cv2.THRESH_BINARY)
同时要注意函数返回的skeleton虽然是numpy的ndarray格式,但并非数值型而是bool型,若直接使用opencv显示会报错。
若要展示提取后的骨架可以通过astype转化为uint8格式,并将数组乘255以方便opencv显示:
skeleton = skeleton.astype(np.uint8)
skeleton = skeleton*255
cv2.imshow('skeleton',skeleton)
cv2.waitKey(0)
cv2.destroyAllWindows()
标签:skeleton,img,骨架,cv2,opencv,注意事项,morphologhy,skimage,255
From: https://www.cnblogs.com/learnAcc/p/17997735