首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >逐个像素复制ipl图像

逐个像素复制ipl图像
EN

Stack Overflow用户
提问于 2012-11-22 16:38:34
回答 2查看 2.1K关注 0票数 0

问题解决了……我用的是cvGet2D,下面是示例代码

代码语言:javascript
复制
        CvScalar s;
        s=cvGet2D(src_Image,pixel[i].x,pixel[i].y);         
        cvSet2D(dst_Image,pixel[i].x,pixel[i].y,s);

其中src_Iamge和dst_Image分别是源图像和目标图像,而pixeli是我想要在dst图像中绘制的选定像素。我已经在下面包含了真实的图片。

有一个源Ipl图像,我想将图像的一些部分逐个像素复制到新的目标图像。有人能告诉我怎么做吗?我在opencv中使用c,c++。例如,如果下面的图像是源图像,

实际输出图像

EN

回答 2

Stack Overflow用户

发布于 2012-11-23 01:24:40

编辑:

我可以看到建议使用cvGet2d的评论。我认为,如果你只是想显示“点”,最好是用一个小的邻域来显示它们,这样就可以看到它们所在的位置。为此,您可以在蒙版上绘制原点为(x,y)的白色实心圆,然后执行copyTo

代码语言:javascript
复制
using namespace cv;

Mat m(input_iplimage);
Mat mask=Mat::zeros(m.size(), CV_8UC1);

p1 = Point(x,y); 
r = 3;
circle(mask,p1,r, 1); // draws the circle around your point.
floodFill(mask, p1, 1); // fills the circle.

//p2, p3, ...

Mat output = Mat::zeros(m.size(),m.type()); // output starts with a black background.
m.copyTo(output, mask); // copies the selected parts of m to output     

旧帖子:

创建蒙版并复制这些像素:

代码语言:javascript
复制
#include<opencv2/opencv.hpp>
using namespace cv;

Mat m(input_iplimage);
Mat mask=Mat::zeros(m.size(), CV_8UC1); // set mask 1 for every pixel you wanna copy.
Rect roi=Rect(x,y,width,height);  // create a rectangle
mask(roi) = 1;   // set it to 0.
roi = Rect(x2,y2,w2,h2);
mask(roi)=1;     // set the second rectangular area for copying...

Mat output = 100*Mat::ones(m.size(),m.type()); // output with a gray background.
m.copyTo(output, mask); // copy selected areas of m to output

或者,可以逐个复制Rect:

代码语言:javascript
复制
Mat m(input_iplimage);
Mat output = 100*Mat::ones(m.size(),m.type()); // output with a gray background.

Rect roi=Rect(x,y,width,height);
Mat m_temp, out_temp;
m_temp=m(roi);
out_temp = output(roi);
m_temp.copyTo(out_temp);

roi=Rect(x2,y2,w2,h2);
Mat m_temp, out_temp;
m_temp=m(roi);
out_temp = output(roi);
m_temp.copyTo(out_temp);
票数 1
EN

Stack Overflow用户

发布于 2012-11-22 20:08:50

您的问题的答案只需要查看OpenCV文档或在您最喜欢的搜索引擎中搜索即可。

对于Here图像和更新的Mat数据,您已经有了答案。

对于我在你的图像中看到的输出,我会设置ROI,这样效率更高。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/13508664

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档