Tag: opencv

如何在opencv中找到图像之间的重叠区域?

我正在尝试使用两个图像实现alpha混合以进行图像拼接。 我的第一张照片是 – > 这是我的第二张图片 – > 这是我的结果图片 – > 你可以看到结果不合适。我想我首先必须找到之间的重叠区域,然后在重叠部分上实现alpha混合。

在Opencv中将Lab值转换为RGB值

我试图将Lab值转换为相应的RGB值。我不想将Lab图像转换为RGB图像,而是将L a和b的某些值转换。函数cvCvtColor仅适用于图像。任何人都可以告诉我该怎么做这个。 谢谢; 代码: CvMat* rgb = cvCreateMat(centres->rows,centres->cols,centres->type); cvCvtColor(centres,rgb,CV_Lab2BGR);

将两个Mat图像合并为一个

我有个问题。 我有一个图像。 然后我必须将图像分成两个相等的部分。 我这样做(代码编译,一切都很好): Mat image_temp1 = image(Rect(0, 0, image.cols, image.rows/2)).clone(); Mat image_temp2 = image(Rect(0, image.rows/2, image.cols, image.rows/2)).clone(); 然后我必须独立地改变每个部分,最后合并为一个。 我不知道如何正确地做到这一点。 我应该如何将这两部分图像合并为一个图像? 示例: http : //i.stack.imgur.com/CLDK7.jpg

在opencv中聚类图像片段

我正在使用opencv进行非静态相机的运动检测。 我正在使用一个非常基本的背景减法和阈值处理方法来广泛了解所有在示例video中移动的内容。 在阈值处理之后,我将所有可分离的白色像素“补丁”存储起来,将它们存储为独立的组件并随机地用红色,绿色或蓝色着色。 下图显示了足球video,其中所有这些组件都是可见的。 我在这些检测到的组件上创建了矩形,我得到了这个图像: 所以我可以在这看到挑战。 我想将所有“相似”和附近组件聚类成一个单独的实体,以便输出图像中的矩形显示一个整体移动的玩家(而不是他的独立肢体)。 我尝试做K-means聚类,但理想情况下我不知道移动实体的数量,我无法取得任何进展。 请指导我如何做到这一点。 谢谢

将float数组图像转换为可用于opencv的格式

我想知道是否有一种简单的方法可以将我的浮点数组图像转换为iplimage,这可以通过opencv来处理。 当然我可以用相同的大小创建一个空的iplimage,只是将我的浮点数组图像中的像素复制到emplty iplimage,但是有更优雅的解决方案。 也许是一种消耗更少内存的方法,因为源图像非常大,复制过程需要一段时间。 最好的祝福, Zhengtonic

使用openCv c ++复制图像的一部分

我正在使用opencv,我想从另一个图像的一部分创建一个图像。 我没有找到这样做的function所以我试图实现我的想法,包括逐像素地复制图像但是徒劳无法得到我正在等待的结果。 任何人都有另一个想法 码: #include “cv.h” #include “highgui.h” #include #include #include int main(int argc,char** argv) { IplImage * img =0; uchar *data; int i,j,k; int height,width,widthStep,nChannels; img=cvLoadImage(argv[1],3); height =img->height; width = img->width; widthStep= img->widthStep; nChannels = img->nChannels; data=(uchar*)img->imageData; IplImage* img1=cvCreateImage(cvSize(height/2,width/2),IPL_DEPTH_8U,nChannels); for(i=0;i<height/2;i++){ for(j=0;j<width/2;j++){ for(k=0;kimageData[i*widthStep+j*nChannels]=data[i*widthStep+j*nChannels]; } } } cvShowImage(“image_Originale2”,img1); cvWaitKey(0); cvReleaseImage(&img); return 0; }

YUV420到RGB颜色转换错误

我正在converting YUV420格式的图像converting为opencv RGB图像,但conversion.后我得到的是Orange图像conversion. 我使用以下代码来做到这一点。 我的代码有问题吗? int step = origImage->widthStep; uchar *data = (uchar *)origImage->imageData; int size = origImage->width * origImage->height; IplImage* img1 = cvCreateImage(cvGetSize(origImage), IPL_DEPTH_8U, 3); for (int i = 0; iheight; i++) { for (int j=0; jwidth; j++) { float Y = data[i*step + j]; float U = data[ (int)(size + (i/2)*(step/2) + j/2) […]

关于在video中找到学生

我现在正致力于眼动追踪项目。 在这个项目中,我正在跟踪摄像头video中的眼睛(分辨率为640X480)。 我可以在每一帧中找到并跟踪眼睛,但我需要找到瞳孔。 我阅读了很多论文,其中大部分都提到了Alan Yuille的可变形模板方法来提取和跟踪眼睛特征。 任何人都可以帮助我使用任何语言的代码(matlab / OpenCV)吗? 我尝试过不同的阈值,但由于眼睛区域的分辨率低,它不能很好地工作。 我非常感谢在video中找到瞳孔甚至虹膜的任何帮助。

使用英特尔IPP的OpenCV Mat图像?

我最近开始使用Intel Performance Primitives(IPP)进行图像处理。 对于那些没有听说过IPP的人,可以将IPP视为MKL的模拟图像处理而不是线性代数。 我已经在OpenCV中实现了一个有点复杂的视觉系统,我想换掉一些OpenCV例程(例如卷积和FFT)来实现更快的IPP例程。 我的OpenCV代码总是使用cv::Mat图像数据结构。 但是,基于IPP代码示例,IPP似乎更喜欢CIppiImage数据结构。 我的系统在OpenCV中进行了几次图像转换,然后我想在IPP中做一些事情,然后在OpenCV中做更多的工作。 这是让OpenCV和IPP很好地融合在一起的天真方式: cv::Mat = load original image use OpenCV to do some work on cv::Mat write cv::Mat to file CIppiImage = read cv::Mat from file //for IPP use IPP to do some work on CIppiImage write CIppiImage to file cv::Mat = read CIppiImage from file use OpenCV to […]

opencv中的video文件

我想阅读video文件(.avi或.mov)并使用Opencv检测运动和边缘。可以帮助我使用代码吗?我想创建一个GUI,我们可以在其中选择video文件,然后我们就可以进行图像处理了opencv中的函数?