精华内容
下载资源
问答
  • 《OpenCV系列教程》 ...这里是一张图片,里面表示的是灰度数值,灰度值为1的有4个点,灰度值为2的有7个数值,灰度值为3的有5个。如果表示为直方图的形式就是下面的状态了。 这里用直方图的形式对...

    《OpenCV系列教程》
    《深度学习-如何提高数据集质量》

    项目位置:OpenCV-Sample
    代码位置:39-equalizeHist.py

    图像直方图讲解

    如果用一句话来表示的话,那就统计每个像素点数值出现的次数,如下图:
    在这里插入图片描述
    这里是一张图片,里面表示的是灰度数值,灰度值为1的有4个点,灰度值为2的有7个数值,灰度值为3的有5个。如果表示为直方图的形式就是下面的状态了。
    在这里插入图片描述
    这里用直方图的形式对像素数值进行了展示。

    使用直方图均衡修正的图片对比

    曝光过度 曝光不足
    在这里插入图片描述 在这里插入图片描述
    在这里插入图片描述 在这里插入图片描述

    通过修复,图像有了很大的改进。
    直方图效果对比:
    在这里插入图片描述

    代码部分

    这里面支持对多通道的均衡处理

    import cv2
    import numpy as np
    from matplotlib import pyplot as plt
    
    
    def main():
        Overexpose = cv2.imread("res/Overexposed.jpg")
        underexpose = cv2.imread("res/underexposed.jpg")
        #cv2.imshow("Over", Overexpose)
        #cv2.imshow("under", underexpose)
        plt.figure(1)
    
        plt.subplot(4,2,1)
        plt.imshow(Overexpose)
    
        plt.subplot(4,2,2)
        plt.imshow(underexpose)
    
        plt.subplot(4, 2, 3)
        chans = cv2.split(Overexpose)
        colors = ("b", "g", "r")
        for (chan, color) in zip(chans, colors):
            hist = cv2.calcHist([chan], [0], None, [256], [0, 256])
            plt.plot(hist, color=color)
            plt.xlim([0, 256])
    
        plt.subplot(4, 2, 4)
        chans = cv2.split(underexpose)
        colors = ("b", "g", "r")
        for (chan, color) in zip(chans, colors):
            hist = cv2.calcHist([chan], [0], None, [256], [0, 256])
            plt.plot(hist, color=color)
            plt.xlim([0, 256])
    
        plt.subplot(4, 2, 5)
        equalizeOver = np.zeros(Overexpose.shape, Overexpose.dtype)
        equalizeOver[:, :, 0] = cv2.equalizeHist(Overexpose[:, :, 0])
        equalizeOver[:, :, 1] = cv2.equalizeHist(Overexpose[:, :, 1])
        equalizeOver[:, :, 2] = cv2.equalizeHist(Overexpose[:, :, 2])
        plt.imshow(equalizeOver)
        cv2.imwrite('./out/equlizeOver.jpg', equalizeOver)
    #    cv2.imshow('equalizeOver', equalizeOver)
    
        plt.subplot(4, 2, 6)
        equalizeUnder = np.zeros(underexpose.shape, underexpose.dtype)
        equalizeUnder[:, :, 0] = cv2.equalizeHist(underexpose[:, :, 0])
        equalizeUnder[:, :, 1] = cv2.equalizeHist(underexpose[:, :, 1])
        equalizeUnder[:, :, 2] = cv2.equalizeHist(underexpose[:, :, 2])
        plt.imshow(equalizeUnder)
        cv2.imwrite('./out/equalizeunder.jpg', equalizeUnder)
    
        plt.subplot(4, 2, 7)
        chans = cv2.split(equalizeOver)
        colors = ("b", "g", "r")
        for (chan, color) in zip(chans, colors):
            hist = cv2.calcHist([chan], [0], None, [256], [0, 256])
            plt.plot(hist, color=color)
            plt.xlim([0, 256])
    
        plt.subplot(4, 2, 8)
        chans = cv2.split(equalizeUnder)
        colors = ("b", "g", "r")
        for (chan, color) in zip(chans, colors):
            hist = cv2.calcHist([chan], [0], None, [256], [0, 256])
            plt.plot(hist, color=color)
            plt.xlim([0, 256])
    
        plt.show()
        cv2.waitKey(0)
    
    if __name__ == '__main__':
        main()
    
    展开全文
  • img = imread('F:\MATLAB\touxiang.jpg'); img1=img(:,:,1);%对应rgb img2=img(:,:,2); img3=img(:,:,3); %同台滤波程序 % figure,imshow(img1); % title('Original Image1'); % figu...
    img = imread('F:\MATLAB\touxiang.jpg');
    img1=img(:,:,1);%对应rgb
    img2=img(:,:,2);
    img3=img(:,:,3);
    
    %同台滤波程序
                % figure,imshow(img1);
                % title('Original Image1');
                % figure,imshow(img2);
                % title('Original Image2');
                % figure,imshow(img3);
                % title('Original Image3');
                % figure,imhist(img1);
                % title('hist Image1');
                % figure,imhist(img2);
                % title('hist Image2');
                % figure,imhist(img3);
                % title('hist Image3');
    % F = fftshift(fft2(img3));  %将图像中心移到中间
    % imF = log10(abs(F)+1);
    % figure,imshow(imF);
    % F1 = fftshift(fft2(img2));  %将图像中心移到中间
    % imF1 = log10(abs(F1)+1);
    % figure,imshow(imF1);
    
    % 构造一个高斯滤波器
    f_high = 1.0;
    f_low = 0.8;
    % 得到一个高斯低通滤波器,fspecial构造一个滤波器,第三个参数是标准差
    gauss_low_filter = fspecial('gaussian', [7 7],0.8);% 0.4
    %size输出滤波器矩阵的行和列
    matsize = size(gauss_low_filter);
    % 由于同态滤波是要滤出高频部分,
    % 所以我们得把这个低通滤波器转换成一个高通滤波器.
    % f_high 和 f_low 是控制这个高通滤波器形态的参数.
    % zeros创建一个空的矩阵
    gauss_high_filter = zeros(matsize);
    gauss_high_filter(ceil(matsize(1,1)/2) , ceil(matsize(1,2)/2)) = 1.0;
    % figure,freqz2(gauss_high_filter);
    % figure,freqz2(gauss_low_filter);
    gauss_high_filter = f_high*gauss_high_filter - (f_high-f_low)*gauss_low_filter;
    
    % 显示搞通滤波期的频率响应
    figure,freqz2(gauss_high_filter);
    colormap(jet(64));%转化为64灰度3色
    % 利用对数变换将入射光和反射光部分分开
    log_img1 = log(double(img1));
    log_img2 = log(double(img2));
    log_img3 = log(double(img3));
    % 将高斯高通滤波器与对数转换后的图象卷积
    high_log_part1 = imfilter(log_img1, gauss_high_filter, 'symmetric', 'conv');
    high_log_part2 = imfilter(log_img2, gauss_high_filter, 'symmetric', 'conv');
    high_log_part3 = imfilter(log_img3, gauss_high_filter, 'symmetric', 'conv');
    % 显示卷积后的图象
    % figure,imshow(high_log_part1);
    % title('High Frequency Part1');
    % figure,imshow(high_log_part2);
    % title('High Frequency Part2');
    % figure,imshow(high_log_part3);
    % title('High Frequency Part3');
    % 由于被处理的图象是经过对数变换的,我们再用幂变换将图象恢复过来
    high_part1 = exp(high_log_part1);
    high_part2 = exp(high_log_part2);
    high_part3 = exp(high_log_part3);
    
    high_part3(isnan(high_part3)==1) = 0;
    [inf_r1, inf_c1] = find(high_part3==0);
    [inf_r2, inf_c2] = find(high_part3==inf);
    
    inf_r=[inf_r1;inf_r2];
    inf_c=[inf_c1;inf_c2];
    
    [m,n]=size(img1);
    [a,b]=size(inf_r);
    
    high_part3_ave=high_part3;
    high_part3_ave(inf_r,inf_c)= 0;
    ave_test3=mean(high_part3_ave(:));
    %ave_test3 = mean(mean(high_part3_ave));
    ave=ave_test3*(m*m)/(m*m-a);
    
    
    high_part3(inf_r,inf_c)= ave;
    
    minv1 = min(min(high_part1));
    maxv1 = max(max(high_part1));
    minv2 = min(min(high_part2));
    maxv2 = max(max(high_part2));
    minv3 = min(min(high_part3));
    maxv3 = max(max(high_part3));
    % 得到的结果图象
    imm1=(high_part1-minv1)/(maxv1-minv1);
    imm2=(high_part2-minv2)/(maxv2-minv2);
    imm3=(high_part3-minv3)/(maxv3-minv3);
    % figure,imshow(imm1);
    % title('Result Image1');
                % figure,imshow(imm2);
                % title('Result Image2');
                % figure,imshow(imm3);
                % title('Result Image3');
    img_hazy=cat(3,imm1,imm2,imm3);
    % img_hazy=cat(3,imm1,imm2,double(img3)/340);
    
    
    
    figure,imshow(img_hazy);
    title('imghazy Image');
    

     

    展开全文
  • 手机照相 曝光过度 解决一法

    万次阅读 2009-04-18 12:59:00
    <!--google_ad_client = "pub-9528830580198364";/* 文章顶部横幅 */google_ad_slot = "4496963300";google_ad_width = 728;google_ad_height = 90...// --> 刚买的时候手机(Hair M260)照相效果还可以,图片: 毕竟是20

    <script src="http://pagead2.googlesyndication.com/pagead/show_ads.js" type="text/javascript"></script>

     刚买的时候手机(Hair M260)照相效果还可以,图片:

     

    毕竟是200W像素的摄像头 ,用了大概有3年了,这个效果啊,真是越来越差,成像质量差,噪点严重,主题模糊.自习观察过后,相片白色部分很白,一片白的那种,看图片为证:

    这几天研究了很久,因为问题主要是曝光过度了,白色偏重,所以只要控制曝光量就可以了,但是M260虽然是一款拍照手机,并没有提供曝光控制,为了减少曝光,我特意找了一块透明胶,贴在摄像头上,减少进入摄像头的光线,说干就干,那个透明胶布也不好找哦,撕开透明胶发现透明胶有些地方有瑕疵,当然,我们只选取透明效果比较好的那种,为此,本人几乎将一块透明胶布撕完了,最后终于获得了令人满意的效果,将透明胶布贴在摄像头上,注意不要产生气泡,不要有痕迹,完全透明就可以了,多试几块,看效果,我贴了一块过后,效果可以了,又贴了一块,发现此时照片曝光已经不足了,所以还是贴一块比较合适,当然,个人试情况而定.图片:

     

     

     

    当然此方法,是由于摄像头老化的原因,我是这样归类的,如果你的手机是30W,或者130W的话,估计没得好多改善的,因为摄像头本身成像质量就很差,像素的原因.

    展开全文
  • 相机曝光原理

    千次阅读 2018-03-25 13:00:47
    正确的曝光值对图像有着重要影响,曝光过度照片看起来会过亮,曝光不足图片看起来会太暗。在摄像机中自动曝光模块用于调整照射到传感器上的入射光量从而充分利用其动态范围。曝光过程其实就是在给定的灵敏度下通过...

    摘要:自动曝光本质是通过控制曝光时间和光圈大小来控制亮度,是整体图像达到最佳亮度效果。


    1.曝光简述

    正确的曝光值对图像有着重要影响,曝光过度照片看起来会过亮,曝光不足图片看起来会太暗。在摄像机中自动曝光模块用于调整照射到传感器上的入射光量从而充分利用其动态范围。曝光过程其实就是在给定的灵敏度下通过控制光圈和快门速度达到控制照射到传感器上的光量的过程。

    欠曝
    曝光不足
    过曝
    曝光过度
    正常
    曝光正常

    2.曝光相关参数

    • 常用的曝光时间(s):

      1,1/2,1/4,1/8,1/15,1/25,1/30,1/60,1/125,1/250,1/500,1/1000,1/2000

    • 常用光圈级数:
      F1,F/1.4,F/2,F/2.8,F/4,F/5.6,F/8,F/11,F/16,F/22

    • 自动曝光模式通常有三种:

      • 自动曝光:快门和光圈都是自动模式。
      • 快门优先:用户选定快门速度,光圈为自动模式;该模式通常用于拍摄快速运动的物体,如果快门速度过慢,则获取的图像会模糊(夜晚通过增加曝光时间来降噪获取的图片会有拖影不知是否和这个有关系?)。
      • 光圈优先:用户决定光圈大小,快门为自动模式;该模式通常用来控制景深,光圈值越大照片景深层次越分明。

    3.曝光值的计算

    曝光值(exposure value,EV)代表能够给出同样曝光的所有相机光圈和快门的组合。其是一个以2为底的对数刻度系统。

    EV=log2N2tEV=log2N2t
    • 其中N是光圈(F值); t是曝光时间(快门),单位秒。
    • 曝光值0(EV0)对应于曝光时间为1秒而光圈为f/1.0的组合或其等效组合。

    曝光值也是图像亮度和相当感光度的函数:

    EV=f(BV,SV)EV=f(BV,SV)
    • BV表示亮度值
    • SV表示感光度值

    对于一种图像sensor来说,一般其感光度是单一的。我们可以通过测光设备来获取关系式中的f。传统相机的相当感光度一般用ISO表示,该数值越大,胶卷对光线的敏感程度也增加。为了用户便于理解,企业一般将数码相机的CCD/CMOS感光度(或对应光线灵敏度)等效转换为传统胶卷的感光度,因而数码相机也就有了“相当感光度”这一说法。当iso值从100增加到200时,图像噪度和颗粒度增加了%40.一般来讲,当光照条件足够是,以最小的iso值来拍摄相对静止的物体,就可以获得清晰度较高的照片。

    对于目前我们使用的sensor一般来说每款sensor的感光度都是固定的,所以需要确定,Ev和BV的值,然后就确定了关系f。有两种获取EV和BV的值,一种是通过测光计测量亮度,然后查表查出曝光值;另一种方法是根据中性灰或者%18的反光率来获取一个合适的曝光值。如果相机中有很亮和很暗的值,这种方法获取的值就存在非常大的误差,这种情况下可以采用手动曝光来解决。

    • 曝光值,光圈,曝光时间对照表
      这里写图片描述

    4.曝光时间的计算

    一个非线性操作和色彩控制之前预先设置好的模拟和数字增益放大器,被用来执行自动曝光的信息感知和控制。亮度值Y用于作为控制曝光时间的指标。整个图像感知区域分为多个同步子模块(宏块),称为自动曝光窗口。如下图1.1展示了一个典型的自动曝光窗口的布局。

    这里写图片描述

    对于一个RGB色彩滤波阵列的图像传感器而言,色彩信息可以转化为Y值以便衡量入射光强,自动曝光信号处理模块计算所有自动曝光窗口信号的平均值和峰值,并将其传递给微处理器。微处理器中运行的自动曝光控制程序会估计每一个值并决定最佳的曝光时间,这样的估计算法有很多,例如常用的利用窗口值的方差进行计算。

    5曝光控制算法

    目前常用的曝光方法一般有两种,一种是根据亮度来计算曝光时间或者光圈值;另一种是研究不同光照条件下,亮度与曝光值的关系(EV = f(BV,SV)中的f)来进行曝光控制。具体的控制算法可以参考网上论文。

    展开全文
  • 图片的平均亮度

    千次阅读 2018-07-24 15:09:51
    图像相关开发中,有时我们需要知道和了解图片的 亮度 这一信息,例如判断图片是否曝光严重过度或者太黑什么都看不清。 那么怎么去获取到图片的 平均亮度 这一信息呢? 一、YUV 图片 一般相机的原始数据类型就是...
  • photoshop第七章:图片的效果制作2

    千次阅读 2017-02-18 16:55:30
    photoshop第七章:图片特种效果的制作:制作彩霞(镜头、朦胧光烛、繁星闪烁、光芒四射)效果、调整曝光不够、调整曝光过度、制作闪电效果
  • 宝丽来照片(使照片有点像宝丽来照片那样曝光过度) 用法 在浏览器中 用过滤的版本替换图像: var image = document . getElementById ( 'my-image' ) ; var filteredCanvas = leonardo . applyFilter ( image , ...
  • Smart Color靓彩是针对数十万用户的照片数据进行整合分析、配合10多年的数码印刷...针对照片曝光过度、曝光不足、背光、偏色、暗淡等问题可以明显改善。同时配合有福网高质量的数码印刷工艺还能将您美好的回忆变成精
  • 拍过产品图片的孩纸都知道用白色背景拍出来的图片,背景是呈灰色,如果硬是要拍成白色很可能就会造成产品的过度曝光。所以摄影师往往会选择保留产品的细节,白底图就让后期去调。抖音上有很多视频,但是都是只说了一...
  • 原图可能有些曝光过度。。可以自动色阶下。。  然后按【ctrl+alt+2】选中高光区。。。【解释一下,我的ps版本是这个快捷键。。可能有的版本是《ctrl+alt+~》这个组合键,大家都试下吧。。】  填充黑色,模式柔光...
  • 第一幅VRay作品

    千次阅读 2006-12-19 16:52:00
    第一幅VRay 渲染的作品(第一张),不知道为什么加上阳光后总是曝光过度,所以只留下了这张半成品作为留念吧。今天新安装的3DS MAX 8.0,终于能安装VRay了。第二张400*300的图片,渲染花了将近30分钟。使用软件:3D ...
  • 图像处理之调整亮度与饱和度

    万次阅读 2012-09-27 21:41:59
    图像处理之调整亮度与饱和度 ...饱和度是是指颜色的强度,调整饱和度可以修正过度曝光或者未充分曝光图片。使 图像看上去更加自然。 基本思想: 通常在RGB色彩空间调整亮度与饱和度不是很直观,而HSL
  • 图像处理------调整亮度与饱和度

    千次阅读 2015-07-24 14:50:25
    什么是饱和度:饱和度是是指颜色的强度,调整饱和度可以修正过度曝光或者未充分曝光图片。使图像看上去更加自然。基本思想:通常在RGB色彩空间调整亮度与饱和度不是很直观,而HSL彩色空可以很直观表示出每个像素的...
  • 论文题目 Dual Illumination Estimation for Robust Exposure Correction 论文实现代码 https://github.com/pvnieo/Low-light-Image-Enhancement OpenCV使用直方图均衡,修正曝光过度和曝光不足的图片
  • 曝光过度,图像看起来太亮,曝光不足,则图像看起来太暗。 到达传感器的通光量大小主要由两方面因素决定;曝光时间长短及光圈的大小。 利用光圈进行自动曝光,主要根据所拍摄的场景来控制光圈大小,使得进光量维持在...
  • 图像处理------调整亮度与对比度

    万次阅读 2015-07-24 09:51:44
    很多时候,一张图像被过度曝光显得很白,或者光线不足显得很暗,有时候背景跟图像人物也观察不清楚,这个时候可以通过调节图像的两个基本属性-亮度与对比度来获得整体效果的提升,从而得到质量更高的图片。...
  • 图像处理之调整亮度与对比度

    万次阅读 多人点赞 2012-03-22 22:23:31
    很多时候,一张图像被过度曝光显得很白,或者光线不足显得很暗,有时候背景跟图像人物 也观察不清楚,这个时候可以通过调节图像的两个基本属性-亮度与对比度来获得整体效果 的提升,从而得到质量更高的图片。   ...
  • 通过调用函数,调整图片的灰度,曝光度,明暗度,还可以进行两个图片过度,合并,或挖空
  • 这篇是写给零基础的“摄影爱好者”看的。...右:曝光过度 影响曝光的3个因素为光圈、快门、感光度。 光圈控制镜头进光直径的大小,光圈越大曝光越多 快门控制通光时间的长短,快门时间越长曝光越多 感光
  • 当需要灵感时,您需要曝光过度的HDR或黑白风景图片,上面印有陈词滥调。 这是找到它的地方! 关于 使用Backbone.js,Handlebars.js,Bourbon,Neat和Google Web字体构建。 要构建,请运行: gulp build
  • 直方图

    2020-02-19 20:38:59
    28、直方图 窗口→直方图 注: 不同图片不同的处理方法,但是都再(图像→调整)中进行操作 1.逆光图 (1)定义 从后往前打光,背景比前景亮 (2)如何解决 ...3.曝光过度 (1)定义 图片是那种刺...
  • 破损照片修复技术

    千次阅读 2016-09-08 13:26:32
    通过计算机技术进行修复,包括扫描褪色、残损照片或胶片,调整暗调/高光以改善面效果,修正曝光斑痕,利用曲线调整图层进行局部遮光和局部额外曝光,扫描并修护曝光过度的照片,最终达到完美无缺的图片。 一、...
  • 直方图均衡化是利用图像直方图对图像对比度进行调整的方法,这种方法对曝光不足或者曝光过度图片都非常有用,这倒是让我想起了Matlab R2018版本中的imbinarize函数,该函数可以对曝光不均匀的图像准确筛选出前景...
  • 从一张简单的LDR图像来生成HDR图像是一个不适定[1]的问题,我们需要补偿由曝光不足/过度曝光[2]和颜色量化[3]所带来的数据损失。为了解决这一问题,本文作者第一个提出使用深度学习框架来自动进行LDR图片到HDR图片的...
  • 下载一曝光不足和一曝光过度的彩色图片,对彩色图片进行直方图均衡化,并保存和展示。原理简述直方图概念 直方图(Histogram)又称质量分布图、柱状图,是一种统计报告图,也是表示资料变化情况的一种主要工具。...
  • 晚上拍照时最容易遇见“曝光不足”和“曝光过度”的问题,使得照片看起来明暗不协调,缺乏应有的美感。不过,如果你的手机中 装有“美图秀秀”,这些问题都能迎刃而解,Android版美图秀秀v1.5.4新增“智能补光”,有...
  • Photoshop图层混合模式的计算公式

    千次阅读 2019-06-07 21:18:58
    正片叠底相当于变暗,滤色变亮,可以比较快速处理曝光过度和曝光不足的图片,复制原图层到新图层,2个图层直接运算即可,比用曲线CTRL+M快点 反相是指RGB用 255-当前像素值 注释: 1.混合模式的数学计算公式,...
  • 手机摄影

    2019-09-30 10:07:46
    开启了 HDR 后,相机会将正常曝光曝光不足和过度曝光的三个画面拍摄下来,然后把这三张图片合成为一张。并且突出每张照片最好的部分,从而生成一张精妙绝伦的照片。 遇到明暗程度差别较大时,不妨试试开启HDR来...

空空如也

空空如也

1 2 3 4
收藏数 75
精华内容 30
关键字:

图片曝光过度