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

OpenCV-利用其它widthStep方法把interest——img的所有像素值增加2001:代码如下:#include”stdafx.h”#include”highgui.h”#include”cv.h”#include”iostream”usingnamespacestd;intmain(){IplImage*interest_img=cvLoadImage(“C:\\horse.jpg”);cvNamedWindow(“inte

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

1:代码如下:

#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

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

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

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

  • python的变量名命名规则_python的变量命名规范

    python的变量名命名规则_python的变量命名规范一.python变量名命名规则:1.变量名通常由字母,数字,下划线组成;2.数字不能作为变量名开头;3.不能以python中的关键字命名;4.变量名要有意义;5.不要用汉字和拼音去命名;6.变量名要区分大小写;7.推荐使用驼峰型(GuessAge或guessAge)和下划线(guess_age)来命名;8.常量通常使用大写来定义.二.注释代码的方法1.单行(当行)注释:用#2.多行注释通过三引号完…

  • dtu连接mysql_Azure SQL 数据库中的DTU和eDTU是什么

    dtu连接mysql_Azure SQL 数据库中的DTU和eDTU是什么AzureSQL数据库中的DTU和eDTU是什么03/07/20177分钟可看完本文内容MaxShen沈云技术解决方案专家AzureSQL使用了数据库事务单位(DTU)和弹性数据库事务单位(eDTU)来作为一个计量单位。但是DTU和eDTU究竟是什么?在官方文档中是这样解释的:DTU是一个资源度量单位,表示保证可用于单一数据库服务层内特定性能级别的单个AzureSQL…

    2022年10月31日
  • linux查看80端口占用情况_centos查看端口命令

    linux查看80端口占用情况_centos查看端口命令前言平常使用linux,我们经常需要查看哪个服务占用了哪个端口,接下来就为大家介绍了2种Linux查看端口占用情况可以使用lsof和netstat命令。1.lsof-i:端口号用

  • python每天定时9点执行_python定时执行方法

    python每天定时9点执行_python定时执行方法1time.sleepimporttimeforiinrange(5):print(i)time.sleep(10)2用shedimporttimeimportschedschedule=sched.scheduler(time.time,time.sleep)deffunc(string1,float1):print(“nowis”,time.time(),”…

  • Matlab axis函数应用简介

    Matlab axis函数应用简介axis用于操作普通的坐标属性,(轴的缩放和外观)。axis([xminxmaxyminymax])设置当前坐标轴x轴和y轴的限制范围axis([xminxmaxyminymaxzminzmaxcmincmax])设置x,y,z轴的限制范围和色差范围。v=axis返回一个行向量,记录了坐标范围axisauto解除限…

  • 微服务架构-实现技术之具体实现工具与框架5:Spring Cloud Feign与Ribbon原理与注意事项

    微服务架构-实现技术之具体实现工具与框架5:Spring Cloud Feign与Ribbon原理与注意事项目录一、SpringCloudFeign概述与工作原理解读(一)服务间调用的几种方式(二)Feign概述二、FeignClent注解剖析+SpringCloudFeign基本功能配置解读(一)@FeignClient注解剖析(二)SpringCloudFeign基本功能配置(三)Feign请求超时问题方法一方法二方法三三、SpringC…

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号