AttributeError: 'module' object has no attribute

℡╲_俬逩灬. 提交于 2019-12-12 08:37:48

问题


I am trying to get the depth map of two stereo images. I have taken the code from http://docs.opencv.org/trunk/doc/py_tutorials/py_calib3d/py_depthmap/py_depthmap.html

I get the following error:

Traceback (most recent call last):
  File "depth.py", line 9, in <module>
    stereo = cv2.createStereoBM(numDisparities=16, blockSize=15)
AttributeError: 'module' object has no attribute 'createStereoBM'

My code is:

import numpy as np
import cv2
from matplotlib import pyplot as plt

imgL = cv2.imread('tsukuba_l.png',0)
imgR = cv2.imread('tsukuba_r.png',0)

stereo = cv2.createStereoBM(numDisparities=16, blockSize=15)
disparity = stereo.compute(imgL,imgR)
plt.imshow(disparity,'gray')
plt.show()

I entered the Python line interpreter, and wrote the following code:

import cv2
help(cv2)

There is no function called 'createStereoBM' in cv2.

Is the code wrong in the link provided at the top? I am using Python 2.7.3 in Ubuntu 12.04. Is it possible that the code is meant for Python 3 and above?

Please help.


回答1:


Use this function instead

stereo = cv2.StereoBM(cv2.STEREO_BM_BASIC_PRESET,ndisparities=16, SADWindowSize=15)

You can find documentation for this function here




回答2:


cv2.StereoBM_create(numDisparities=16, blockSize=15)

Try it. My opencv version is 3.2.

If you want to find any function working in opencv, you can try this

  1. import(cv2)
  2. help(cv2)



回答3:


import numpy as np

import cv2

from matplotlib import pyplot as plt

imgL = cv2.imread('l.png',0)

imgR = cv2.imread('r.png',0)

stereo = cv2.StereoBM_create(numDisparities=16, blockSize=15)

disparity = stereo.compute(imgL,imgR)

plt.imshow(disparity,'gray')

plt.show()  

try to use this code is your using the code from open-cv documentation




回答4:


You are getting the example from the trunk (aka devel) documentation. if you aren't using trunk version, try to find an example for your correct version.



来源:https://stackoverflow.com/questions/21702945/attributeerror-module-object-has-no-attribute

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!