
来自学习opencv(中文版)的一道例题
题目是用imageROI来增加某范围的像素#include<cv.h>#include<highgui.h>intmain(intargc,char**argv){Ipl...
题目是 用imageROI来增加某范围的像素
#include<cv.h>
#include<highgui.h>
int main(int argc,char**argv)
{
IplImage *src;
if(argc==7&&((src==cvLoadImage(argv[1],1))!=0)
{
int x=atoi(argv[2]);
int y=atoi(argv[3]);
int width=atoi(argv[4]);
int hight=atoi(argv[5]);
int add=atoi(argv[6]);
cvSetImageRoi(src,cvRect(x,y,width,hight));
cvAdds(src,cvScalar(add),src);
cvResetImageROI(src);
cvNameWindow("abc",1);
cvShowImage("abc",src);
cvWaitKey();
}
return 0;
}
学习opencv的新手求高手帮忙加一下注释,没注释我看不懂啊,谢谢 展开
#include<cv.h>
#include<highgui.h>
int main(int argc,char**argv)
{
IplImage *src;
if(argc==7&&((src==cvLoadImage(argv[1],1))!=0)
{
int x=atoi(argv[2]);
int y=atoi(argv[3]);
int width=atoi(argv[4]);
int hight=atoi(argv[5]);
int add=atoi(argv[6]);
cvSetImageRoi(src,cvRect(x,y,width,hight));
cvAdds(src,cvScalar(add),src);
cvResetImageROI(src);
cvNameWindow("abc",1);
cvShowImage("abc",src);
cvWaitKey();
}
return 0;
}
学习opencv的新手求高手帮忙加一下注释,没注释我看不懂啊,谢谢 展开
1个回答
展开全部
#include<cv.h>
#include<highgui.h>
int main(int argc,char**argv)
{
IplImage *src;
if(argc==7&&((src==cvLoadImage(argv[1],1))!=0) // src读进了文件名argv[1]的文件
{
int x=atoi(argv[2]);
int y=atoi(argv[3]);
int width=atoi(argv[4]);
int hight=atoi(argv[5]);
int add=atoi(argv[6]);
// 以上都在读参数, argv[2]~[5] 所选区域的 x坐标,y坐标,
// width 宽, height 高。这样 x y width height就定义了一块矩形区域
// add 是要对这块区域上每个pixel要加的值
cvSetImageRoi(src,cvRect(x,y,width,hight)); //先将x,y,width,height构成一个CvRect
// 然后再将这个Rect设置为图像的roi(目标区域)
cvAdds(src,cvScalar(add),src); //对图像进行加操作,因为图像设定了roi,所以只对roi进行操作。
cvResetImageROI(src); //释放图像的roi,现在图像的roi就又回到了全图
cvNameWindow("abc",1); //声明一个叫abc得窗口
cvShowImage("abc",src); // 在abc窗口上显示src
cvWaitKey(); // 等待键盘的输入
}
return 0;
}
#include<highgui.h>
int main(int argc,char**argv)
{
IplImage *src;
if(argc==7&&((src==cvLoadImage(argv[1],1))!=0) // src读进了文件名argv[1]的文件
{
int x=atoi(argv[2]);
int y=atoi(argv[3]);
int width=atoi(argv[4]);
int hight=atoi(argv[5]);
int add=atoi(argv[6]);
// 以上都在读参数, argv[2]~[5] 所选区域的 x坐标,y坐标,
// width 宽, height 高。这样 x y width height就定义了一块矩形区域
// add 是要对这块区域上每个pixel要加的值
cvSetImageRoi(src,cvRect(x,y,width,hight)); //先将x,y,width,height构成一个CvRect
// 然后再将这个Rect设置为图像的roi(目标区域)
cvAdds(src,cvScalar(add),src); //对图像进行加操作,因为图像设定了roi,所以只对roi进行操作。
cvResetImageROI(src); //释放图像的roi,现在图像的roi就又回到了全图
cvNameWindow("abc",1); //声明一个叫abc得窗口
cvShowImage("abc",src); // 在abc窗口上显示src
cvWaitKey(); // 等待键盘的输入
}
return 0;
}
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询