Opencv图片明暗处理

#include <iostream>
#include <opencv2/opencv.hpp> using namespace std;
using namespace cv; //图片明暗处理
cv::Mat shadingTreatment(cv::Mat imgParam); int main()
{
double alpha; //对比度
int beta; //亮度
//Mat image = imread("F:\\OpencvProject\\CamerasAndSurveillance201910\\x64\\Debug\\face_data\\20191025143712025.jpg");
Mat image = imread("D:\\images\\特朗普\\0.jpg"); if (image.empty())
{
return ;
} cv::Mat new_image = shadingTreatment(image); /// 目标图像空间预分配
/// 显示图像
imshow("原图像", image);
imshow("新图像", new_image); /// 等待键盘事件
waitKey(); return ;
} //图片明暗处理
cv::Mat shadingTreatment(cv::Mat imgParam)
{
Mat new_image = Mat::zeros(imgParam.size(), imgParam.type()); /// 输入初始化值
//cout << "请输入对比度1-3: ";
//cin >> alpha;
//cout << "请输入亮度1-100: ";
//cin >> beta; double alpha = 1.2;
int beta = ;
/// 执行变换 new_image(i,j) = alpha * image(i,j) + beta
for (int y = ; y < imgParam.rows; y++)
{
for (int x = ; x < imgParam.cols; x++)
{
for (int c = ; c < ; c++)
{
new_image.at<Vec3b>(y, x)[c] = saturate_cast<uchar>(alpha * (imgParam.at<Vec3b>(y, x)[c]) + beta);
}
}
} return new_image;
}

Opencv图片明暗处理的更多相关文章

  1. 基于opencv图片切割

    基于opencv图片切割为n个3*3区块 工作原因,切割图片,任务急,暂留调通的源码,留以后用. package com.rosetta.image.test; import org.opencv.c ...

  2. Python OpenCV图片转视频 工具贴(三)

    Python OpenCV图片转视频 粘贴即用,注意使用时最好把自己的文件按照数字顺序命名.按照引导输入操作. # 一键傻瓜式引导图片串成视频 # 注意使用前最好把文件命名为数字顺序格式 import ...

  3. OpenCV图片类cv::Mat和QImage之间进行转换(好多相关文章)

    在使用Qt和OpenCV混合编程时,我们有时需要在两种图片类cv::Mat和QImage之间进行转换,下面的代码参考了网上这个帖子: //##### cv::Mat ---> QImage ## ...

  4. OpenCV图片矩阵操作相关,对png图片操作(多通道)

    文献链接: http://www.cnblogs.com/tornadomeet/archive/2012/12/26/2834336.html 下面这个高手,写了个小程序我还没有调试,回头 调试看看 ...

  5. opencv图片转幻灯片视频

    /*g++ *.cpp `pkg-config --cflags --libs opencv` -std=c++11*/ #include <opencv2/opencv.hpp> usi ...

  6. opencv图片右转函数

    因为需要将函数进行右转,发现opencv自带 的过于麻烦.自己写了个右转的.可以根据这个想法写出任何方向的 //函数功能,右转图片 IplImage* convertImage(IplImage* i ...

  7. opencv图片压缩视频并读取

    import os import cv2 import numpy as np import time path = './new_image/' filelist = os.listdir(path ...

  8. opencv图片旋转90度

    #include<iostream> #include <opencv2/opencv.hpp> using namespace std; using namespace cv ...

  9. opencv 图片识别

    # -*- coding: utf-8 -*-"""Created on Fri Nov 22 21:35:12 2019 @author: Administrator& ...

随机推荐

  1. 大小端示例-arm c51

    大小端系列文章https://blog.csdn.net/liming0931/article/details/100016425 MDK(Keil5,STM32F407)C语言: #include  ...

  2. 通过 ffmpeg 获取视频第一帧(指定时间)图片

    最近做一个上传教学视频的方法,上传视频的同时需要上传视频缩略图,为了避免用户上传的缩略图与视频内容不符,经理要求直接从上传的视频中截图视频的某一帧作为缩略图,并给我推荐了FFMPEG.FFMPEG 功 ...

  3. python - django (路由)

    # """ # Django路由分配系统简介: Django project目录中的urls.py文件中, 以Python [ ( ) ]的数据类型记录了可以访问到该站点 ...

  4. 织梦cms 后台查看会员性别为空

    织梦cms会员注册选择性别为保密时,在后台会员中心查看性别为空的修改方法 第一步:找到dede/templets/member_view.htm,在引号中添加保密就ok 再次修改后的结果

  5. SpringBoot官方文档学习(三)配置文件、日志、国际化和JSON

    一.Profiles Spring配置文件提供了一种方法来隔离应用程序配置的各个部分,并使其仅在某些环境中可用.任何@Component.@Configuration或@ConfigurationPr ...

  6. loj #6191. 「美团 CodeM 复赛」配对游戏 期望dp

    题意:有一个栈,随机插入 $n$ 次 $0$/$1$ 如果栈顶是 $1$,然后插入 $0$,则将这两个元素都弹出,否则,插入栈顶. 求:$n$ 次操作后栈中期望的元素个数. 我们发现,按照上述弹栈方式 ...

  7. 结构化异常SEH处理机制详细介绍(一)

    结构化异常处理(SEH)是Windows操作系统提供的强大异常处理功能.而Visual C++中的__try{}/__finally{}和__try{}/__except{}结构本质上是对Window ...

  8. windows传文件到linux服务器--- secureCRT PK xftp

    背景: 需要从windows上传下载文件到aws虚拟服务器上并进行服务器环境搭建,由于secureCRT的局限性它只支持pub格式的密钥,不支持pem格式密钥,xshell是支持pem格式的,所以尝试 ...

  9. 记一次vue+vuex+vue-router+axios+elementUI开发(一)

    记录自己的vue开发之旅,方便之后查询 一.开发环境 1.安装node.js  自带npm https://nodejs.org/en/ 2. 全局安装vue-cli脚手架 npm install v ...

  10. 常用spaceclaim脚本

    #创建一个长方体,通过两点来确定一个立方体 #MM表示的是以毫米作为单位 #返回的是一个BlockBody的对象 #本函数还有第三个参数可选,分别代表增加材料,切除材料等等 #默认值为增加材料 注:第 ...