我使用以下说明尝试了所有可能性:
ret,thresh = cv2.threshold(img,0,255,cv2.THRESH_BINARY+cv2.THRESH_OTSU)
但它总是给我同样的错误:
错误:(-215)src.type()== CV_8UC1 in function cv :: threshold
有可能将图像阈值为32位,单通道??!提前致谢
答案 0 :(得分:1)
根据cv::threshold的OpenCV文档:
目前,Otsu的方法仅适用于8位(
CV_8UC1
)图像。
对于其他方法,根据文档,是有效的单通道矩阵,8位(CV_8UC1
)或32位浮点(CV_32FC1
)。
但是,它也适用于16位(CV_16SC1
)矩阵
对于cv::adaptiveThreshold
,请输入CV_8UC1
。