草庐IT

Opencv_contrib

全部标签

c++ - OpenCV 图像到黑白形状

我希望手图像是手的黑白形状。这是输入和所需输出的示例:使用阈值不会提供所需的输出,因为手内部的某些颜色与背景颜色相同。如何获得所需的输出? 最佳答案 Adaptivethreshold,findcontours,floodfill?基本上,自适应阈值会将您的图像变成黑白,但会根据每个像素周围的局部条件采用阈值级别-这样,您应该避免使用普通阈值时遇到的问题。事实上,我不确定为什么有人会想要使用正常阈值。如果这不起作用,另一种方法是找到图像中最大的轮廓,将其绘制到单独的矩阵上,然后用黑色填充其中的所有内容。(Floodfill就像MSP

c++ - OpenCV 计算相机位置和旋转

对于一个项目,我需要计算相机在现实世界中的位置和方向关于已知对象。我有一组照片,每张都展示了从不同角度看的棋盘。使用CalibrateCamera和solvePnP我能够在2d中重新投影点,以获得AR事物。所以我的情况是这样的:内参已知失真系数已知每张照片已知平移vector和旋转vector。我根本不知道如何计算相机的位置。我的猜测是:反转翻译vector。(=t')将旋转vector转换为度数(好像是弧度)并反转在旋转vector上使用rodriguez计算旋转矩阵*t'但结果不知何故完全不对...基本上我想为世界坐标中的每个像素计算一条射线。如果需要有关我的问题的更多信息,我很乐

c++ - OpenCV:对 RGB 图像应用操作(拆分+合并)

抱歉,如果这个问题太基础了,我是OpenCV的新手。我想对RGB图像应用直方图均衡化。HE只适用于单channel,所以我想我必须将图像分成3个不同的channel,将HE应用于每个channel,然后将它们合并在一起以形成输出均衡图像。所以我就这样做了,这是我真正认为应该有效的程序:#include#include#include#includeintmain(intargc,char*argv[]){IplImage*img=cvLoadImage("/Users/Documents/red.jpg");//LoadimagefilecvNamedWindow("Trans-in"

c++ - OpenCV 中的嘈杂色调

这个问题是关于在VS2008express中使用c++的opencv。我正在做非常简单的事情。尝试从相机图像中获取皮肤值。正如您在屏幕截图中看到的,相机图像看起来相当不错。我正在将它转换为HSV并将Huechannel从中分离出来,以便稍后设定皮肤值的阈值。但Huechannel似乎过于嘈杂和颗粒状。HSV图像窗口也显示信息退化。为什么会这样?以及如何解决。如果我们不能,我们可以通过某种平滑来消除噪音吗?代码如下:#includeintmain(){cv::VideoCapturecap(0);//openthedefaultcameracv::Mathsv,bgr,skin;//ma

c++ - OpenCV C++ 中的映射函数

我不确定OpenCV(C++)中是否存在执行此操作的函数。我想为OpenCV中cv::Mat的每个像素调用自定义函数,整个结果应存储在矩阵中。我能否在一行代码中完成此操作(类似于Python中的map函数)? 最佳答案 我没有尝试过,但根据docs有用于访问矩阵元素的STL样式迭代器://computesumofpositivematrixelements,iterator-basedvariantdoublesum=0;MatConstIterator_it=M.begin(),it_end=M.end();for(;it!=it

c++ - 尝试编译 OpenCV 程序,但在 Visual Studio 2012 中出现 LNK2038 错误

我关注了this使用VisualStudio2012设置OpenCV的教程,并将所有对x86的引用更改为x64,如教程建议的那样。但是当运行给出的示例代码时,我收到以下错误消息(除了236其他):错误LNK2038:检测到“RuntimeLibrary”不匹配:值“MTd_StaticDebug”与Source.obj中的值“MDd_DynamicDebug”不匹配c:\Users\user\documents\visualstudio2012\Projects\NewProject\NewProject\opencv_core246d.lib(array.obj)新项目我不确定如何解

c++ - 使用 opencv 通过 Filestorage 保存时出错

我正在尝试从BOW算法中保存词汇。下面是我的代码。FileStoragefs;fs.open("Vocabulary.xml",FileStorage::WRITE);Matvocabulary=bow.cluster();fs>vocabulary;dextract.setVocabulary(vocabulary);cv::Mattraining_mat(num_img,dictionarySize,CV_32FC1);cv::Matlabels(num_img,1,CV_32FC1);CvSVMsvm;svm.load("trainsvm.xml");这是我的错误:OpenCVE

c++ - 如何在 OpenCV 中获取旋转矩形的顶点?

我在OpenCV中使用warpAffine来旋转一个矩形。现在我想得到这个旋转矩形的四个顶点(四个点的x和y位置)而不旋转回来。经过几个小时的搜索,我没有找到任何结果。有人可以帮我吗?谢谢你。 最佳答案 像这样:cv::RotatedRectRotRect;//FillinRotRectsomehow...//Getfourcornerscv::Point2fpts[4];RotRect.points(pts);documentation还有一个例子。 关于c++-如何在OpenCV中获

c++ - 如何使用非静态相机跟踪任何移动物体? [Opencv]

我想用非静态相机跟踪任何移动的物体,并获取该物体的轮廓。有人可以给我一些如何实现该目标的建议吗?我很难减去背景,但这只适用于静态相机。 最佳答案 背景减除不是非静态相机的一个选项。将第一帧与第二帧的扭曲单应性输出相减在某些情况下可能会起作用,但错误的发生率会很高。最好的选择是使用FAST、ORB、SURF、SIFT、BRISK等特征检测器算法。如果性能有问题,FAST或ORB可能是最佳选择。这些FD算法跟踪并映射图像中存在的“稳定点”。例如,角可以称为“稳定点”,因为平移、缩放、倾斜、旋转等不会改变它们的属性。跟踪第2帧和第1帧“稳

计算机java项目 - 基于opencv与SVM的车牌识别系统

文章目录0项目说明1主要实现2环境配置3界面效果4算法实现5项目源码6最后0项目说明基于opencv与SVM的车牌识别系统提示:适合用于课程设计或毕业设计,工作量达标,源码开放1主要实现用python3+opencv3做的中国车牌识别,包括算法和客户端界面,只有2个文件,surface.py是界面代码,predict.py是算法代码,界面不是重点所以用tkinter写得很简单。2环境配置python3.7.3opencv4.0.0.21numpy1.16.2TkinterPIL5.4.13界面效果4算法实现算法思想来自于网上资源,先使用图像边缘和车牌颜色定位车牌,再识别字符。车牌定位在pred