Opencv图片明暗处理
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图片明暗处理的更多相关文章
- 基于opencv图片切割
基于opencv图片切割为n个3*3区块 工作原因,切割图片,任务急,暂留调通的源码,留以后用. package com.rosetta.image.test; import org.opencv.c ...
- Python OpenCV图片转视频 工具贴(三)
Python OpenCV图片转视频 粘贴即用,注意使用时最好把自己的文件按照数字顺序命名.按照引导输入操作. # 一键傻瓜式引导图片串成视频 # 注意使用前最好把文件命名为数字顺序格式 import ...
- OpenCV图片类cv::Mat和QImage之间进行转换(好多相关文章)
在使用Qt和OpenCV混合编程时,我们有时需要在两种图片类cv::Mat和QImage之间进行转换,下面的代码参考了网上这个帖子: //##### cv::Mat ---> QImage ## ...
- OpenCV图片矩阵操作相关,对png图片操作(多通道)
文献链接: http://www.cnblogs.com/tornadomeet/archive/2012/12/26/2834336.html 下面这个高手,写了个小程序我还没有调试,回头 调试看看 ...
- opencv图片转幻灯片视频
/*g++ *.cpp `pkg-config --cflags --libs opencv` -std=c++11*/ #include <opencv2/opencv.hpp> usi ...
- opencv图片右转函数
因为需要将函数进行右转,发现opencv自带 的过于麻烦.自己写了个右转的.可以根据这个想法写出任何方向的 //函数功能,右转图片 IplImage* convertImage(IplImage* i ...
- opencv图片压缩视频并读取
import os import cv2 import numpy as np import time path = './new_image/' filelist = os.listdir(path ...
- opencv图片旋转90度
#include<iostream> #include <opencv2/opencv.hpp> using namespace std; using namespace cv ...
- opencv 图片识别
# -*- coding: utf-8 -*-"""Created on Fri Nov 22 21:35:12 2019 @author: Administrator& ...
随机推荐
- Oracle中修改某个字段可以为空
待修改字段假定为:shuifen 1.当该字段为空时,可直接修改: alter table reportqymx modify shuifen null; 2.当待修改字段不为空时:新增一列把要改变的 ...
- Linux系统 安装JDK和tomcat
下载文件路径包: http://archive.apache.org/dist/ 首先将软件包上传到/tmp目录下 需要文件如下 jdk-8u60-linux-x64.gz apache-tomcat ...
- [React] Write a Custom React Effect Hook
Similar to writing a custom State Hook, we’ll write our own Effect Hook called useStarWarsQuote, whi ...
- [NgRx] NgRx Data Fetching Solution - How to Load Data Only If Needed
We have a reoslver, which everytime we want visit '/courses' route, it will be triggered, then api w ...
- MySQL分区表 非分区索引 无法使用
在<高性能Mysql>这本书的‘如何使用分区’这一小章中,列举的常见问题中,有以下一个问题: 分区列和索引列不匹配 如果定义的索引列和分区列不匹配,会导致查询无法进行分区过滤.假设在列a上 ...
- VIM工具的常用命令快捷键
一.光标的移动0: 移动到行首.$: 移动到行尾.w: walk移动到下一个单词b: back 移动到上一个单词h或退格: 左移一个字符:后退l或空格: 右移一个字符:前进j: 下移一行:k: 上移一 ...
- coturn编译运行在Windows平台
turn 编译安装到Windows平台 https://www.webrtc-experiment.com/docs/TURN-server-installation-guide.html#windo ...
- phpstorm 2019.1 修改浏览器
如图,修改如下浏览器的位置,由于我安装了虚拟机,导致每次点击谷歌浏览器后,都是打开的虚拟机里面的谷歌浏览器,需要重新设置浏览器的位置 打开设置 打开浏览器设置界面 双击可以选择浏览器的路径,然后就可以 ...
- DM-移除几何上的洞
原视频下载地址:http://yunpan.cn/cujMhvXt4fCfa 访问密码 8afb
- @Scope("prototype")的正确用法——解决Bean的多例问题
转自: https://www.jianshu.com/p/54b0711a8ec8 1. 问题,Spring管理的某个Bean需要使用多例 在使用了Spring的web工程中,除非特殊情况,我们 ...