python – OpenCV中使用calcHist的模糊异常
发布时间:2020-12-20 11:22:47 所属栏目:Python 来源:网络整理
导读:尝试使用cv2.calcHist()时,我遇到了以下模棱两可的错误 imgarray([ 1.,2.,3.,4.,5.]) cv2.calcHist( [img],channels = [0],mask = np.ones(img.size),histSize = [6],ranges = [(0,6)])Traceback (most recent call last): File "stdin",line 1,in moduleSys
尝试使用cv2.calcHist()时,我遇到了以下模棱两可的错误
>>> img array([ 1.,2.,3.,4.,5.]) >>> cv2.calcHist( [img],channels = [0],mask = np.ones(img.size),histSize = [6],ranges = [(0,6)]) Traceback (most recent call last): File "<stdin>",line 1,in <module> SystemError: error return without exception set 错误是如此通用,以至于我完全无法知道可能出现的问题.您可以找到记录为here的函数.我目前正在运行通过MacPorts安装的OpenCV v2.3.1. 谢谢! 解决方法
我发现Python界面的在线文档有点稀疏.
我发现一个非常宝贵的资源是样本(OpenCV-2.3.x / samples / python2),您可以在其中找到Python界面中几乎所有函数的示例用法. 但是查看文档: > mask参数必须是8位(mask.astype(‘uint8’)) 从查看python2示例(camshift.py,color_histogram.py): > range参数不需要是一个元组,只需一个列表(虽然文档建议它应该是列表或数组数组……) 所以: cv2.calcHist( [img.astype('float32')],# <-- convert to float32 channels=[0],mask=np.ones(img.size).astype('uint8'),# <-- convert to uint8 histSize=[6],ranges=[0,6] ) # <-- flat list (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |