Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/opencv/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
OpenCV使用输入图像的命令行参数(Python)_Python_Opencv - Fatal编程技术网

OpenCV使用输入图像的命令行参数(Python)

OpenCV使用输入图像的命令行参数(Python),python,opencv,Python,Opencv,我正在尝试从命令行上指定的文件加载图像,然后使用OpenCV命令houghcirles对其进行处理。发生的情况是,我正在打开文件: img = cv2.imread(argv[0],0) 然后尝试使用以下功能: def _getCircles(img): _circles = cv2.HoughCircles(img,cv2.cv.CV_HOUGH_GRADIENT,1,20,param1=50,param2=30,minRadius=1,maxRadius=20) 但返回错误: cv2

我正在尝试从命令行上指定的文件加载图像,然后使用OpenCV命令houghcirles对其进行处理。发生的情况是,我正在打开文件:

img = cv2.imread(argv[0],0)
然后尝试使用以下功能:

def _getCircles(img):
  _circles = cv2.HoughCircles(img,cv2.cv.CV_HOUGH_GRADIENT,1,20,param1=50,param2=30,minRadius=1,maxRadius=20)
但返回错误:

cv2.error: error: (-206) Unrecognized or unsupported array type in function cvGetMat

但是,如果我直接加载该文件,即将argv[0]更改为显式文件名,则一切都会正常工作。有什么想法吗?

在python和大多数其他语言中
argv[0]
包含程序名。尝试使用
argv[1]
获得正确的结果


这里有一些可以帮助你。Python有一个惊人的文档库,我强烈推荐使用它。

在Python和大多数其他语言中
argv[0]
包含程序名。尝试使用
argv[1]
获得正确的结果


这里有一些可以帮助你。Python有一个惊人的文档库,我强烈建议使用它。

这是我没有正确解释的错误。我知道关于argv,我通过(sys.argv[1:])将参数从_main传递到def main(argv)。问题是在命令行输入中使用-t而不是-i是愚蠢的。从技术上讲,你对我提出的问题的回答是正确的,但这是我没有问问题的错properly@MattStokes遗憾的是我没有用,但我很高兴你发现并解决了问题。这是我没有正确解释的错误。我知道关于argv,我通过(sys.argv[1:])将参数从_main传递到def main(argv)。问题是在命令行输入中使用-t而不是-i是愚蠢的。从技术上讲,你对我提出的问题的回答是正确的,但这是我没有问问题的错properly@MattStokes遗憾的是我没有用,但我很高兴你发现并解决了这个问题。