2024-05-15 04:28:31 发布
网友
我试图用函数SE3 = skimage.morphology.ball(8)创建的球结构元素在形态学上关闭一个卷。 使用closing = cv2.morphologyEx(volume_start, cv2.MORPH_CLOSE, SE)时,返回TypeError:src data type=0不受支持 你知道怎么解决这个问题吗? 谢谢你
SE3 = skimage.morphology.ball(8)
closing = cv2.morphologyEx(volume_start, cv2.MORPH_CLOSE, SE)
在我进行二值化(从0到255的灰度图像)的二值化图像上调用erode函数时,出现了相同的错误,如下所示:
erode
bin_img = grayscale_img > 125
我猜>运算符“吞并”了该类型,或者将其更改为openCV的代码类型0。
>
0
我通过这样的二值化解决了这个问题:
ret, bin_img = cv2.threshold(grayscale, 125, 255, cv2.THRESH_BINARY)
ret是阈值(在本例中是125),而bin_img是生成的二值图像。
ret
bin_img
确保volume_start是dtype=uint8。你可以用volume_start = np.array(volume_start, dtype=np.uint8)转换它。
volume_start
dtype=uint8
volume_start = np.array(volume_start, dtype=np.uint8)
或者更好: volume_start = volume_start.astype(np.uint8)
volume_start = volume_start.astype(np.uint8)
在我进行二值化(从0到255的灰度图像)的二值化图像上调用
erode
函数时,出现了相同的错误,如下所示:我猜
>
运算符“吞并”了该类型,或者将其更改为openCV的代码类型0
。我通过这样的二值化解决了这个问题:
ret
是阈值(在本例中是125),而bin_img
是生成的二值图像。确保
volume_start
是dtype=uint8
。你可以用volume_start = np.array(volume_start, dtype=np.uint8)
转换它。或者更好:
volume_start = volume_start.astype(np.uint8)
相关问题 更多 >
编程相关推荐