Questions tagged «opencv»

OpenCV(开源计算机视觉)是用于实时计算机视觉的库。使用此标签时,请提及您正在使用的OpenCV版本(例如3.4.6),并在需要时添加特定于语言的标签(python,c ++,...)。

18
如何使用pip安装opencv?
我需要安装cv2已经为我编写的脚本。我尝试过 pip install cv2并pip install open_cv遇到相同的问题-来自的警告消息dist.py并抱怨zlib未找到。未安装cv2。我也试过pyopenvc和pip install opencv-python。 因此,我去了opencv网站并下载了相关的exe。运行它-生成一堆子目录以及一个make文件和其他东西。 现在我该怎么做?
77 python  opencv 

6
选择正确的上下HSV边界以使用`cv :: inRange`(OpenCV)进行颜色检测
我有一个想要找到橙色盖子位置的咖啡罐图像。就是这里。 gcolor2实用程序显示盖中央的HSV为(22,59,100)。问题是如何选择颜色的界限呢?我尝试了min =(18,40,90)和max =(27,255,255),但是出乎意料 这是Python代码: import cv in_image = 'kaffee.png' out_image = 'kaffee_out.png' out_image_thr = 'kaffee_thr.png' ORANGE_MIN = cv.Scalar(18, 40, 90) ORANGE_MAX = cv.Scalar(27, 255, 255) COLOR_MIN = ORANGE_MIN COLOR_MAX = ORANGE_MAX def test1(): frame = cv.LoadImage(in_image) frameHSV = cv.CreateImage(cv.GetSize(frame), 8, 3) cv.CvtColor(frame, frameHSV, cv.CV_RGB2HSV) frame_threshed = cv.CreateImage(cv.GetSize(frameHSV), 8, 1) …


7
OpenCV python:ValueError:太多值无法解包
我正在编写一个opencv程序,并且在另一个stackoverflow问题上找到了一个脚本:Computer Vision:遮盖人的手 运行脚本化答案时,出现以下错误: Traceback (most recent call last): File "skinimagecontour.py", line 13, in <module> contours, _ = cv2.findContours(skin_ycrcb, cv2.RETR_EXTERNAL, cv2.CHAIN_APPROX_SIMPLE) ValueError: too many values to unpack 编码: import sys import numpy import cv2 im = cv2.imread('Photos/test.jpg') im_ycrcb = cv2.cvtColor(im, cv2.COLOR_BGR2YCR_CB) skin_ycrcb_mint = numpy.array((0, 133, 77)) skin_ycrcb_maxt = numpy.array((255, 173, 127)) …

3
OpenCV Point(x,y)表示(列,行)或(行,列)
我在Matrix中有一个300x200的图片src。我正在对图像执行以下操作。 for(int i=0;i<src.rows;i++){ for(int j=0;j<src.cols;j++){ line( src, Point(i,j),Point(i,j), Scalar( 255, 0, 0 ), 1,8 ); } } imshow("A",src); waitKey(0); 我期望它能以白色覆盖整个图像,但是图像的下部仍然是空白。如果我这样做 for(int i=0;i<src.rows;i++){ for(int j=0;j<src.cols;j++){ src.at<uchar>(i,j)=255; } } imshow("A",src); waitKey(0); 整个图像以白色覆盖。因此,这意味着src.at<uchar>(i,j)正在使用(i,j)as(row,column)但Point(x,y)正在使用(x,y)as(column,row)
77 c++  opencv 

15
RuntimeError:针对API版本A编译的模块,但此版本的numpy为9
码: import numpy as np import cv 安慰: >>> runfile('/Users/isaiahnields/.spyder2/temp.py', wdir='/Users/isaiahnields/.spyder2') RuntimeError: module compiled against API version a but this version of numpy is 9 Traceback (most recent call last): File "<stdin>", line 1, in <module> File "/Applications/Spyder-Py2.app/Contents/Resources/lib/python2.7/spyderlib/widgets/externalshell/sitecustomize.py", line 685, in runfile execfile(filename, namespace) File "/Applications/Spyder-Py2.app/Contents/Resources/lib/python2.7/spyderlib/widgets/externalshell/sitecustomize.py", line 78, in execfile …

2
OpenCV在加载时为彩色图像提供错误的颜色
我正在Python OpenCV中加载彩色图像并将其绘制出来。但是,我得到的图像的颜色都混合了。 这是代码: import cv2 import numpy as np from numpy import array, arange, uint8 from matplotlib import pyplot as plt img = cv2.imread('lena_caption.png', cv2.IMREAD_COLOR) bw_img = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY) images = [] images.append(img) images.append(bw_img) titles = ['Original Image','BW Image'] for i in xrange(len(images)): plt.subplot(1,2,i+1),plt.imshow(images[i],'gray') plt.title(titles[i]) plt.xticks([]),plt.yticks([]) plt.show() 这是原始图片: 这是绘制的图像:
76 python  image  opencv  colors  rgb 

8
如何使用python opencv2在Windows中的图像上写文本
我想在图像上放一些文字。我将代码编写为: cv2.putText(image,"Hello World!!!", (x,y), cv2.CV_FONT_HERSHEY_SIMPLEX, 2, 255) 它给出错误,说“模块”对象没有属性“ CV_FONT_HERSHEY_SIMPLEX” 查询 我不能使用上述字体类型吗?我在Internet上搜索,但只找到了与initFont与Opencv C ++有关的语法。然后我想到了使用putText传递字体类型作为参数。但这对我不起作用。 有什么建议?
75 python  windows  opencv 

3
使用OpenCV在Python中反转图像
我想加载彩色图像,将其转换为灰度,然后反转文件中的数据。 我需要的是:遍历OpenCV中的数组并使用此公式更改每个值(这可能是错误的,但对我来说似乎很合理): img[x,y] = abs(img[x,y] - 255) 但我不明白为什么它不起作用: def inverte(imagem, name): imagem = abs(imagem - 255) cv2.imwrite(name, imagem) def inverte2(imagem, name): for x in np.nditer(imagem, op_flags=['readwrite']): x = abs(x - 255) cv2.imwrite(name, imagem) if __name__ == '__main__': nome = str(sys.argv[1]) image = cv2.imread(nome) gs_imagem = cv2.cvtColor(image, cv2.COLOR_BGR2GRAY) inverte(gs_imagem, "invertida.png") inverte2(gs_imagem, …

3
如何在OpenCV中定义分水岭的标记?
我正在使用OpenCV为Android编写。我正在使用标记控制的分水岭对类似于下面的图像进行分割,而无需用户手动标记图像。我打算将区域最大值用作标记​​。 minMaxLoc()会给我带来价值,但是如何将其限制在我感兴趣的斑点上?我可以利用来自findContours()或cvBlob Blob的结果来限制ROI并将最大值应用于每个Blob吗?

4
如何在OpenCV(Python)中将灰度图像转换为RGB?
我正在学习使用OpenCV进行实时应用程序的图像处理。我对图像进行了一些阈值处理,并希望将轮廓标记为绿色,但是由于我的图像是黑白图像,所以它们没有显示为绿色。 在程序的早期,我曾经gray = cv2.cvtColor(frame, cv2.COLOR_BGR2GRAY)将RGB转换为灰度,但是回过头来,我很困惑,该函数backtorgb = cv2.cvtColor(gray,cv2.CV_GRAY2RGB)给出了: AttributeError:“模块”对象没有属性“ CV_GRAY2RGB”。 下面的代码似乎不是用绿色绘制轮廓。这是因为它是灰度图像吗?如果是这样,我可以将灰度图像转换回RGB,以绿色显示轮廓吗? import numpy as np import cv2 import time cap = cv2.VideoCapture(0) while(cap.isOpened()): ret, frame = cap.read() gray = cv2.cvtColor(frame, cv2.COLOR_BGR2GRAY) ret, gb = cv2.threshold(gray,128,255,cv2.THRESH_BINARY) gb = cv2.bitwise_not(gb) contour,hier = cv2.findContours(gb,cv2.RETR_CCOMP,cv2.CHAIN_APPROX_SIMPLE) for cnt in contour: cv2.drawContours(gb,[cnt],0,255,-1) gray = cv2.bitwise_not(gb) cv2.drawContours(gray,contour,-1,(0,255,0),3) cv2.imshow('test', …


8
.Net(dotNet)封装的OpenCV?[关闭]
关闭。此问题不符合堆栈溢出准则。它当前不接受答案。 想改善这个问题吗?更新问题,使其成为Stack Overflow的主题。 3年前关闭。 改善这个问题 我已经看到了其中的一些。 opencvdotnet,SharperCV,EmguCV,一个on Code Project. 有没有人有任何经验?我在Code Project上玩了一段时间,但是一旦尝试做任何复杂的事情,我就会遇到一些讨厌的不可捕获的异常(即Msgbox异常)。跨平台(支持Mono)是最好的。

2
从图像点计算x,y坐标(3D)
我有一项任务是在3D坐标系中定位对象。由于我必须获得几乎精确的X和Y坐标,因此我决定跟踪一个具有已知Z坐标的颜色标记,该颜色标记将放置在移动对象的顶部,如该图中的橙色球: 首先,我已经完成了相机校准以获取固有参数,然后使用cv :: solvePnP来获取旋转和平移矢量,如以下代码所示: std::vector<cv::Point2f> imagePoints; std::vector<cv::Point3f> objectPoints; //img points are green dots in the picture imagePoints.push_back(cv::Point2f(271.,109.)); imagePoints.push_back(cv::Point2f(65.,208.)); imagePoints.push_back(cv::Point2f(334.,459.)); imagePoints.push_back(cv::Point2f(600.,225.)); //object points are measured in millimeters because calibration is done in mm also objectPoints.push_back(cv::Point3f(0., 0., 0.)); objectPoints.push_back(cv::Point3f(-511.,2181.,0.)); objectPoints.push_back(cv::Point3f(-3574.,2354.,0.)); objectPoints.push_back(cv::Point3f(-3400.,0.,0.)); cv::Mat rvec(1,3,cv::DataType<double>::type); cv::Mat tvec(1,3,cv::DataType<double>::type); cv::Mat rotationMatrix(3,3,cv::DataType<double>::type); cv::solvePnP(objectPoints, imagePoints, cameraMatrix, distCoeffs, rvec, …

12
如何在使用Gradle中使用opencv?
我想使用Android Studio使用Gradle构建工具开发应用程序。我无法在上插入OpenCV存储库和库build.gradle。我的.gradle文件如下: buildscript { repositories { mavenCentral() } dependencies { classpath 'com.android.tools.build:gradle:0.5.+' } } apply plugin: 'android' repositories { mavenCentral() } dependencies { compile 'com.android.support:support-v4:13.0.+' } android { compileSdkVersion 17 buildToolsVersion "17.0.0" defaultConfig { minSdkVersion 7 targetSdkVersion 16 } } 如何在项目中添加OpenCV?

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.