一种兼顾速度和效果的对比度增强算法——CONTRAST ENHANCEMENT BASED ON LAYERED DIFFERENCE REPRESENTATION

论文《CONTRAST ENHANCEMENT BASED ON LAYERED DIFFERENCE REPRESENTATION》是一种思路比较新颖的利用直方图思想来进行对比度增强的算法,经常在低光增强的算法比较中见到。其核心思想是重建映射函数X=[x0∼255x_{0\sim255}x0∼255​],X由差分变量d来构建。

其中k和k+l分别代表原图中的两个灰度值xk和xk+lx_{k}和x_{k+l}xk​和xk+l​代表执行算法后的结果灰度值。现在目标就是得到d。论文提出了一个假设:对于每个像素,分别统计其邻域像素不同灰度值的数量h(k,k+l)h(k,k+l)h(k,k+l)。假设像素1的灰度值为10,周边四邻域的灰度值分别为15,11,11,11.那么该像素的h(10,11)+=3,h(10,15)+=1。对所有像素进行统计。
接下来,论文假设h和d呈正比关系,
dkl=a×h(k,k+l)d_k^l=a×h(k,k+l)dkl​=a×h(k,k+l)
可以理解,如果h值大的话,说明这两个灰度值应该拉的开一些,d值应该也大。
两个前提条件:


d呈树形结构

接下来需要解方程:

当然这个方程论文提到效果不好,需要加其他假设
di1=dj1fork<=i,j<=k+l−1d_i^1=d_j^1\ for\ k<=i,j<=k+l-1di1​=dj1​ for k<=i,j<=k+l−1
这次可以解方程,得到结果

现在对算法进行加速,主要依据矩阵上的值都在对角线上,可以相乘。

这种算法的速度较快。算法的具体过程还需仔细看论文。图像效果:

最后给出作者代码:

function x = LDR( src_data, alpha, U )% -------------------------------------------------------------------------
% An implementation of
%   C. Lee, C. Lee, and Chang-Su Kim, "Contrast enahancement based on
%   layered difference representation of 2D histograms," IEEE Trans. Image
%   Image Process., vol. 22, no. 12, pp. 5372-5384, Dec. 2013
%
% -------------------------------------------------------------------------
% Input variables (see the paper for details)
%   src_data : can be either 2D histogram or gray scale image. This script
%   automatically detects based on its dimension.
%   alpha    : controls the level of enhancement
%   U        : U matrix in Equation (31). If it is provided, we can save
%   the computation time.
%
% Output variables
%   x    : Output transformation function.
%
% -------------------------------------------------------------------------
%                           written by Chulwoo Lee, chulwoo@mcl.korea.ac.krif nargin < 3% Pre-computingU = zeros(255,255);tmp_k = 1:255;for layer=1:255U(:,layer) = min(tmp_k,256-layer) - max(tmp_k-layer,0);end
endif nargin < 2alpha = 2.5;
end[R, C] = size(src_data);
if R==256 && C==256h2D_in = src_data;
elsein_Y = src_data;% unordered 2D histogram acquisitionh2D_in = zeros(256,256);for j=1:Rfor i=1:Cref = in_Y(j,i);if j~=Rtrg = in_Y(j+1,i);h2D_in(max(trg,ref)+1,min(trg,ref)+1) = h2D_in(max(trg,ref)+1,min(trg,ref)+1) + 1;endif i~=Ctrg = in_Y(j,i+1);h2D_in(max(trg,ref)+1,min(trg,ref)+1) = h2D_in(max(trg,ref)+1,min(trg,ref)+1) + 1;endendendclear ref trg
end%% Intra-Layer Optimization
D = zeros(255,255);
s = zeros(255,1);% iteration start
for layer = 1:255h_l = zeros(256-layer,1);tmp_idx = 1;for j=1+layer:256i=j-layer;h_l(tmp_idx,1) = log(h2D_in(j,i)+1);    % Equation (2)tmp_idx = tmp_idx+1;endclear tmp_idxs(layer,1) = sum(h_l);% if all elements in h_l is zero, then skipif s(layer,1) == 0continueend% Convolutionm_l = conv(h_l, ones(layer,1));             % Equation (30)d_l = (m_l - min(m_l))./U(:,layer);         % Equation (33)if sum(d_l) == 0continueendD(:,layer) = d_l/sum(d_l);end%% Inter-Layer Aggregation
W = (s/max(s)).^alpha;                          % Equation (23)
d = D*W;                                        % Equation (24)%% reconstruct transformation function
d = d/sum(d);       % normalization
tmp = zeros(256,1);
for k=1:255tmp(k+1) = tmp(k) + d(k);
endx = 255*tmp;end

一种兼顾速度和效果的对比度增强算法——CONTRAST ENHANCEMENT BASED ON LAYERED DIFFERENCE REPRESENTATION相关推荐

  1. 图像对比度增强(Contrast Enhancement)详解

    Contrast Enhancement: 对比度增强一直是图像处理中的一个恒久话题,一般来说都是基于直方图的,比如直方图均衡化.冈萨雷斯的书里面对这个话题讲的比较透彻. 关于图像增强必须清楚的基本概 ...

  2. 数字图像处理 图像对比度增强算法概览

    一.图像对比度增强 图像对比度增强又叫作图像对比度拉伸或者直接称为点运算.图像亮度和对比度调整的目的之一是在合适的亮度上提供最大的细节信息,细节纹理的沟纹越深,图像越清晰.在图像处理中,图像对比度增强 ...

  3. 基于熵保持映射先验的快速图像对比度增强算法的python实现

    # -*- coding: utf-8 -*- # @FileName: (2区)基于熵保持映射先验的快速图像对比度增强算法 # @Software: PyCharm # @Author : Xu # ...

  4. SSE图像算法优化系列十九:一种局部Gamma校正对比度增强算法及其SSE优化。

    这是一篇2010年比较古老的文章了,是在QQ群里一位群友提到的,无聊下载看了下,其实也没有啥高深的理论,抽空实现了下,虽然不高大上,还是花了点时间和心思优化了代码,既然这样,就顺便分享下优化的思路和经 ...

  5. 用于图像去雾的优化对比度增强算法

    图像去雾哪家强?之前我们已经讨论过了著名的基于暗通道先验的图像去雾(Kaiming He, 2009)算法,如果你用兴趣可以参考: 暗通道优先的图像去雾算法(上) 暗通道优先的图像去雾算法(下) 此外 ...

  6. 【图像融合】基于matlab对比度增强结合多尺度边缘保持分解红外与可见光图像融合【含Matlab源码 1886期】

    ⛄一.对比度增强结合多尺度边缘保持分解红外与可见光图像融合简介 1 引言 夜视成像技术在军事与执法领域,如监控,侦查,情报搜集和安保等方面有着重要应用.不同类型的夜视成像传感器在记录同一场景时,在其提 ...

  7. 【红外】数字细节增强算法的缘由效果如何评价效果(我对FLIR算法文档详解)

    创作时间: 2018-11-26 提前声明:本文属本人原创,版权所有,禁止转载. 标题: 数字细节增强算法的缘由与效果 DDE( digitial detail enhancement ) 目录: 0 ...

  8. 二维码提升对比度文献调研(3)--A Low-Complexity Algorithm for Contrast Enhancement of Digital Images

    简介 (1)论文(包括期刊和发表时间):A Low-Complexity Algorithm for Contrast Enhancement of Digital Images (2)论文链接: h ...

  9. 阿里达摩院开源DAMO-YOLO:兼顾速度与精度的新目标检测框架

    作者丨陈威华 阿里达摩院智能计算实验室 编辑丨极市平台 1.简介 DAMO-YOLO是一个兼顾速度与精度的目标检测框架,其效果超越了目前的一众YOLO系列方法,在实现SOTA的同时,保持了很高的推理速 ...

  10. 达摩院 | DAMO-YOLO:兼顾速度与精度的新目标检测框架

    作者 | 陈威华  编辑 | 极市平台 点击下方卡片,关注"自动驾驶之心"公众号 ADAS巨卷干货,即可获取 点击进入→自动驾驶之心[目标检测]技术交流群 后台回复[2D检测综述] ...

最新文章

  1. 微服务实战之春云与刀客(三)—— 面向接口调用代码结构实例
  2. 谢文: 三网融合还是三网凑合(转一篇好文)
  3. Android实现导航菜单随着ListView联动,当导航菜单遇到顶部菜单时停止在哪里,并且listview仍能滑动...
  4. 操作系统--处理机调度
  5. c++ cdi+示例_C ++“和”关键字示例
  6. 华为私有云的搭建方案_华为云搭建word press
  7. MongoDB学习:关闭mongod方式
  8. iOS:在OC中调用JS脚本
  9. vivo S12 PRO怎么解锁vivoS12解锁平台刷机教程屏幕锁激活手机锁不记得了可以用这个方法教程刷机解锁用的
  10. linux查看ubuntu版本命令,检查Ubuntu版本号的三种方法:从终端和设置中检查及使用Neofetch...
  11. [linux]linux mint zsh安装和配置
  12. 2022年字节跳动日常实习面经(抖音)
  13. 多人同时用一个linux主机,云服务器能否多人使用?
  14. 新手如何在IEEE上发表论文?
  15. LeetCode 229 求众数 II
  16. 超声波模块测距 Arduino代码
  17. Verilog中task使用
  18. Python爬取ppt工作项目模板
  19. Real-Time Rendering 4th 译文《六 纹理(下)》
  20. 合理使用百度开放平台(一)---动物识别

热门文章

  1. Linux下进行微信小程序开发
  2. python可以作为源文件后缀名的是_python 后缀名
  3. 怎么将多张图片批量转为 Word 、Excel 、PPT 、PDF 等文档格式
  4. python求n的倍数_求n以下所有数字的总和,这些数字是某些数字的倍数
  5. 【新品重磅发布】FOHEART·HF1面部表情捕捉头盔
  6. SUBMAIL API如何帮助您构建企业云通信平台?
  7. python-docx 复制一页_python 怎么用docx读取word的某一页然后放到新的word文档中?...
  8. bzoj 2339: [HNOI2011]卡农 组合数学+递推
  9. FYI | Neuro Workshop (Virtual)-Connectomics
  10. 计算机英特尔显卡在哪找,英特尔®显卡和 Windows 7 * 常见问题解答