对比度

一次搞懂清晰度、对比度以及锐化的区别

回眸只為那壹抹淺笑 提交于 2019-12-31 20:57:00
文章转载自: https://blog.csdn.net/qijitao/article/details/80271507 清晰度、对比度和锐化程度的调整,是照片后期的三个重要步骤。它们容易混淆,但各自效果却并不相同。本文会帮大家从原理上理清他们的区别。   1、对比度   对比度是指的画面的明暗反差程度。增加对比度,画面中亮的地方会更亮,暗的地方会更暗,明暗反差增强。   为了更好的解释对比度、清晰度和锐度的区别,我会使用下面一张放大20倍的纹理边缘为例子。   下图就是增加对比度的结果。增加对比度之后,原来的两个物体反差扩大。   对比度是对全局作用的,对照片整体的明暗有较大影响。比如下面这张照片:   对比度增加之后,照片亮的地方更亮,暗的地方更暗,一下子反差就拉开了。   2、清晰度   在Photoshop以及众多软件中,都提供了清晰度的调整工具。   当我们增加照片的清晰度,靠近边缘较暗的一侧会变得更暗,靠近边缘较亮的一侧会变得更亮,但这种亮度对比的变化只局限在边缘周围的部分。   清晰度相当于让边缘亮的一边加上一根白色渐变条,暗的一边加上一根黑色渐变条,从而让物体轮廓和细节纹理更加清晰。   因此增加清晰度,只会增加边缘附近的反差,让物体轮廓更清晰。对照片整体的对比度,影响没有对比度滑块那么大。   由于清晰度相当于让边缘亮的一边加上一根白条,暗的一边加上一根黑条

灰度变换增强

人盡茶涼 提交于 2019-12-28 19:00:55
文章目录 1.线性变换与非线性变换 2.MATLAB的灰度变换函数 灰度变换增强是将图像的对比度从弱变强的过程,所以也通常称为对比度增强。各种因素的限制,导致图像的对比度比较差,图像的直方图分布不够均衡,主要的元素集中在几个像素值附近。通过对比度增强,使得图像中各个像素值尽可能均匀分布或者服从一定形式的分布,从而提高图像的质量。 灰度变换可使图像动态范围增大,对比度得到拓展,使图像清晰、特征明显,是图像增强的重要手段之一。它主要利用点运算来修正像素灰度,由输入像素点的灰度值确定相应输出点的灰度值,是一种基于图像变换的操作。 灰度变换不改变图像内的空间关系,除了灰度级的改变是根据某种特定的灰度函数进行之外,可以看做是‘从像素到像素’的复制操作。 1.线性变换与非线性变换 设原图像为f(x,y),其灰度范围为[a,b],变换后的图像为g(x,y),其灰度范围线性扩展至[c,d],则对于图像中的任一点的灰度值f(x,y),灰度变换后为g(x,y),其数学表达式为 若图像中大部分像素的灰度级分布在区间[a,b]内,maxf为原图的最大灰度级,只有很小一部分的灰度级超过了此区间,则为了改善增强效果,可以令 采用线性变换对图像中每一个像素灰度作线性拉伸,将有效改善图像视觉效果。在曝光不足或曝光过度情况下,图像的灰度可能会局限在一个很小的范围内,这时得到的图像可能是一个模糊不清

调整对比度和亮度

a 夏天 提交于 2019-12-22 02:55:55
#include <iostream> #include <opencv2/core/core.hpp> #include <opencv2/highgui/highgui.hpp> #include <opencv2\opencv.hpp> using namespace cv; using namespace std; static void ContrastAndBright(int, void *); //-----------------------------------【全局变量声明部分】-------------------------------------- // 描述:全局变量声明 //----------------------------------------------------------------------------------------------- int g_nContrastValue; //对比度值 int g_nBrightValue; //亮度值 Mat g_srcImage, g_dstImage; //-----------------------------------【main( )函数】-------------------------------------------- // 描述:控制台应用程序的入口函数

图像修改亮度和对比度

你离开我真会死。 提交于 2019-12-06 16:46:05
#include <opencv2/opencv.hpp> #include <iostream> #include <math.h> using namespace cv; using namespace std; int main() { Mat src1,dst,dst2; //原图 src1 = imread(".//pic//kate.png",IMREAD_UNCHANGED); if (!src1.data) { cout << "load error" << endl; return -1; } char input_win[] = "imput image"; namedWindow(input_win , CV_WINDOW_AUTOSIZE); imshow(input_win, src1); int height = src1.rows; int width = src1.cols; dst = Mat::zeros(src1.size(), src1.type()); dst2 = Mat::zeros(src1.size(), src1.type()); float alpha = 1.5;//对比度 float beta = 10;//亮度 Mat m1; src1.convertTo(m1, CV_32F); dst2.convertTo(dst2,

8051单片机的LCD1602使用

匿名 (未验证) 提交于 2019-12-03 00:19:01
LCD1602简介 LCD:液晶显示器。 1602:16个字符×2行。 首先来看一下LCD1602在proteus8中的模型,在proteus8中,它叫做LM016L。我们从仿真元器件上可以看到它和实物图的区别, 带有背光的LCD实物图上有16个引脚,分别是15号引脚BLA(正),16号引脚BLK(负),仿真元件省去了15,16引脚。 仿真电路图如下: 需要说明的是,3好引脚被称作是液晶驱动电压,作用是调整对比度,可以通过电位器改变阻值的大小来改变对比度。在此处,我将对比度设置为不可以调节的。(直接接一个5KΩ的不可变电阻)我使用了P3.4,P3.5,P3.6作为控制信号来操作1602。 对外部硬件的操作需要知道外部设备的时序图才能操作。1602的速度对于8051而言是较慢的(12MHZ)。属于慢速设备,因此对于它的读写需要等待一会时间才可以进行。(其实从上面的指令表可以看出LCD1602提供了读操作的,但是我去读1602的忙信号总是没作用。由于我使用了P1口,所以读之前需要给P1口写高电平,即使这么做了,还是读不到1602)所以我选择等待一会儿再去给1602写。具体代码如下: #include<reg52.h> #include<string.h> #include<intrins.h> #define uchar unsigned char #define uint

利用matlab自带函数graycoprops 实现基于共生矩阵的遥感图像纹理特征分析

匿名 (未验证) 提交于 2019-12-02 23:56:01
close all;clear all;clc; I = imread('yaogan2.jpg'); HSV = rgb2hsv(I); Hgray = rgb2gray(HSV); % 计算64位灰度共生矩阵 glcmsl = graycomatrix(Hgray,'numlevels',64,'offset',[0 1;-1 1;-1 0;-1 -1]); % 纹理特征统计,包括对比度、相关性、熵、平稳度、二阶矩(能量) stats = graycoprops(glcmsl,{'contrast','correlation','energy','homogeneity'}); ga1 = glcmsl(:,:,1); %0° ga2 = glcmsl(:,:,2); %45° ga3 = glcmsl(:,:,3); %90° ga4 = glcmsl(:,:,4); %135° energya1 = 0;energya2=0;energya3=0;energya4=0; for i=1:64 for j=1:64 energya1=energya1+sum(ga1(i,j)^2); energya2=energya2+sum(ga2(i,j)^2); energya3=energya3+sum(ga3(i,j)^2); energya4=energya4+sum(ga4(i

基于局部对比度的质量评价(QILV)的matlab实现

匿名 (未验证) 提交于 2019-12-02 23:34:01
基于局部对比度的质量评价隶属于全参考的图片质量评估,是将图片分块后求加权均值和方差最后利用提出的公式计算QILV的一共方法,原文:《Image Quality Assessment Based on Local Variance,Santiago A.F.》 步骤:对原图像和参考图像 1.将原始图像转化为灰度图像后,转化为若干个M*N大小的图像分块。利用同等大小的二维高斯函数获得每个像素对应的权值; maxi=max(m,n); mini=min(m,n); sig=randi([mini,maxi]); w_x=(1-floor(n/2):n-floor(n/2));%为与图像大小相同 mn互换 w_y=(1-floor(m/2):m-floor(m/2)); [X,Y]=meshgrid(w_x,w_y); W=exp(-(X.^2+Y.^2)./sig.^2);%生成二维高斯函数,用于计算块内每个的像素的权值 W即为高斯函数 2.加权求每个(第k个)分块的均值和方差; 3.求原图像的总均值和方差( len(mean)表示分了多少个子图像) 4.对于两个图像I J 分别得到miu和kesi后,求基于局部对比的相似度: 5.根据一下公式求最后的QILV: 代码: function [avg,var]=get_every_image(I)%返回子图象的加权均值和方差 [m,n]

数字图像处理之第三章

半世苍凉 提交于 2019-12-02 10:58:12
第三章 图像增强 1.图像增强的方法有很多种,按增强的目的和效果来划分,图像增强的方法大致可以分为灰度级修正、图像平滑、图像锐化、图像增晰和色彩增晰等。 2.灰度级修正(主要用来提高图像对比度,提高人眼视觉分辨能力,包括灰度变换和直方图修正等) 灰度级修正主要针对独立的像素点进行处理,由输入像素点的灰度值来决定相应输出像素点的灰度值,通过改变原始图像所占据的灰度范围而使图像在视觉上得到改观,这种变换没有利用像素点之间的相互空间关系,因而这种处理方法也称为点运算法。 3.灰度级修正有氛围灰度的线性变换、非线性变换和直方图均衡等。 1)灰度的线性变换就是将图像中的所有像素点的灰度按照线性变换函数进行变换; 2)当用某些非线性函数对图像灰度进行映射时,就可以实现图像灰度的非线性变换; 3)直方图修正:图像的灰度图直方图反映图像灰度的统计特性,变大了图像中取不同灰度值的面积或像素数在整幅图像中所占的比例,是图像中最基本的信息。用横坐标表示灰度级,纵坐标表示灰度级出现的频数,一幅图像的直方图可以表示为: 式中,N为一幅图像中的像素总数,nk为第k级灰度的像素数,rk表示第k个灰度级,L为灰度级数,p(rk)表示该灰度级出现的概率。 ①直方图均衡 直方图均衡的基本思想是对原始图像中的像素灰度做某种映射变换,使变换后的图像灰度的概率密度是均匀分布的,即变换后图像是一幅灰度级均匀分布的图像