【发布时间】:2016-07-01 03:30:56
【问题描述】:
我正在尝试使用从http://docs.opencv.org/2.4/modules/imgproc/doc/histograms.html 获得的以下 sn-p 计算我拥有的两个直方图 (x1,x2) 之间的地球移动器距离:
cv2.cv.CalcEMD2(x1, x2,cv2.cv.CV_DIST_L1)
但是我不断收到此错误。
TypeError: CvArr argument 'signature1' must be IplImage, CvMat or CvMatND. Use fromarray() to convert numpy arrays to CvMat or cvMatND"
我尝试使用 .fromarray() 将我拥有的内容转换为 CvMat 格式,但尚未成功。是不是我做错了什么?
这是我正在使用的两种类型的数组(为清楚起见缩短为三个元素)我尝试使用 cv2.cv.fromarray() 进行转换:
np.histogramdd(data, bins = 80))
给我:
(array([ 28., 5., 0.]), [array([-1.71194523, -1.66131523, -1.61068523])])
和一个普通的 np 数组:
[28. 5. 0.]
这两种方法都不适合我,也不允许我计算阵列之间的地球移动器距离。任何帮助将不胜感激!
【问题讨论】:
标签: python opencv numpy histogram