前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >OpenCV-利用其它widthStep方法把interest——img的所有像素值增加200

OpenCV-利用其它widthStep方法把interest——img的所有像素值增加200

作者头像
全栈程序员站长
发布2022-09-01 16:26:55
2790
发布2022-09-01 16:26:55
举报

大家好,又见面了,我是你们的朋友全栈君。

1:代码如下:

代码语言:javascript
复制
#include "stdafx.h"
#include "highgui.h"
#include "cv.h"
#include "iostream"
using namespace std;
int main()
{
    IplImage* interest_img=cvLoadImage("C:\\horse.jpg");
    cvNamedWindow("interest_img");
    cvShowImage("interest_img",interest_img);
    CvRect interest_rect=cvRect(100,40,100,120);//决定处理后显示图像的大小和位置
    IplImage* sub_img=cvCreateImageHeader(cvSize(interest_rect.width,interest_rect.height),//图像的大小取决于矩阵的大小
                                          interest_img->depth,
                                          interest_img->nChannels);
    sub_img->origin=interest_img->origin;
    sub_img->widthStep=interest_img->widthStep;
    //个人理解:imageData是显示图像的的头,即左上角的点,下面的指令,使imageData向下移动了y行,向右移动了x*通道列。
    //所以,显示的图像整体移动了。
    sub_img->imageData=interest_img->imageData+
                       interest_rect.y*interest_img->widthStep+
                       interest_rect.x*interest_img->nChannels;
    cvAddS(sub_img,cvScalar(200),sub_img);
    cvNamedWindow("sub_img");
    cvShowImage("sub_img",sub_img);
    cvWaitKey(0);
    cvReleaseImage(&interest_img);
    cvDestroyWindow("interest_img");
    cvReleaseImage(&sub_img);
    cvDestroyWindow("sub_img");
    cvReleaseImageHeader(&sub_img);
    return 0;
}

运行结果:

OpenCV-利用其它widthStep方法把interest——img的所有像素值增加200
OpenCV-利用其它widthStep方法把interest——img的所有像素值增加200

发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/140946.html原文链接:https://javaforall.cn

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2022年5月2,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档