opencv 3.0.0-dev python绑定无法正常工作

Aly*_*ell 18 python binding opencv

我在ubuntu 14.04.02,我安装并更新了python,cython和numpy.我从http://github.com/itseez/opencv中提取了最新的开放cv源代码,根据文档编译...当试图运行我从https://github.com/shantnu/FaceDetect中提取的python源代码时/ 它给了我以下错误:

modprobe:致命:未找到模块nvidia.回溯(最近一次调用最后一次):文件"face_detect.py",第21行,在flags = cv2.cv.CV_HAAR_SCALE_IMAGE中AttributeError:'module'对象没有属性'cv'

为了确保我有python绑定我在终端输入以下内容:python

import cv2
cv2.__version__
Run Code Online (Sandbox Code Playgroud)

它返回以下'3.0.0-dev'

它可能有什么问题?

ber*_*rak 50

在opencv3.0中删除了cv2.cv子模块,也改变了一些常量.

请改用cv2.CASCADE_SCALE_IMAGE

(做一个help(cv2)查看更新的常量)


小智 6

对于碰撞道歉,但上面对我没有用,我找到了另一种"解决方案",但它可能有不必要的副作用,因为我知道SFA关于openCV.

简单的解决方案是将其设置为0.

  # Detect faces in the image
Run Code Online (Sandbox Code Playgroud)
faces = faceCascade.detectMultiScale(
    gray,
    scaleFactor=1.1,
    minNeighbors=5,
    minSize=(30, 30),
#    flags = cv2.cv.CV_HAAR_SCALE_IMAGE
    flags = 0
)
Run Code Online (Sandbox Code Playgroud)

正如你所看到的......我只是将它设置为0并且可以继续我的生活.

我尝试了所有数量的组合,但我无法使CASCADE_SCALE_IMAGE正常工作.

这个openCV doco解释给了我nadda,zip,只有混乱.

flags - 与函数cvHaarDetectObjects中的旧级联具有相同含义的参数.它不用于新的级联.

这清理了......

无论如何,openCV上的例子硬编码为0.

  • 这似乎是一种简单的方法.男人从版本之间的问题缺乏适当的文档,OpenCV肯定是一个痛苦. (2认同)