主要内容

adapthisteq

Contrast-limited自适应直方图均衡化(CLAHE)

描述

例子

J= adapthisteq ()提高灰度图像的对比度通过改变值使用contrast-limited自适应直方图均衡化(CLAHE)[1]

J= adapthisteq (,名称,值)使用名称-值参数控制方面的对比度增强。

例子

全部折叠

CLAHE应用到一个图像,显示结果。

我= imread (“tire.tif”);J = adapthisteq(我“clipLimit”,0.02,“分布”,“瑞利”);imshowpair (I, J,“蒙太奇”);标题(“原始图像(左)和对比度增强的图像(右))

图包含一个坐标轴对象。坐标轴对象标题原始图像(左)和对比度增强的图像(右)包含一个类型的对象的形象。

读取索引彩色图像到工作区中。

[X,地图]= imread (“shadow.tif”);

索引图像转换成真彩(RGB)图像,然后将RGB图像转换成L * a * b *颜色空间。

RGB = ind2rgb (X,地图);实验室= rgb2lab (RGB);

规模值所期望的范围adapthisteq函数,[0 1]。

L =实验室(::1)/ 100;

对L执行CLAHE通道。结果回到规模范围L * a * b *所使用的颜色空间。

L = adapthisteq (L,“NumTiles”[8],“ClipLimit”,0.005);实验室(::1)= L * 100;

转换生成图像回RGB颜色空间。

J = lab2rgb(实验室);

显示原始图像和图像处理。

图imshowpair (RGB, J,“蒙太奇”)标题(的原始(左)和对比度增强的图像(右)”)

图包含一个坐标轴对象。坐标轴对象标题原创(左)和对比度增强的图像(右)包含一个类型的对象的形象。

在增强的图像看起来黑暗和阴影突出看起来更明亮。整体对比改善。

输入参数

全部折叠

灰度图像,指定为一个二维数值矩阵。

数据类型:||int16|uint8|uint16

名称-值参数

指定可选的双参数作为Name1 = Value1,…,以=家,在那里的名字参数名称和吗价值相应的价值。名称-值参数必须出现在其他参数,但对的顺序无关紧要。

R2021a之前,用逗号来分隔每一个名称和值,并附上的名字在报价。

例子:8“NumTiles”, [16]将图像划分为8行16列的瓷砖。

矩形上下文区域数量(瓷砖)中adapthisteq把形象,指定为一个2-element向量的正整数。与原图像分成行和N瓷砖的列的值NumTiles(mn)。这两个N必须至少2。瓷砖的总数等于M * N。瓷砖的最优数量取决于输入图像的类型,并通过实验最好决定。

数据类型:

对比度增强极限,指定为一个数字在区间[0,1]。更高的限制导致更多的对比。

ClipLimit图像的对比因素,防止过饱和专门在同类地区。这些地区的特点是一个特定的图像的直方图峰瓦由于许多像素相同的灰度范围内下降。没有剪辑限制,自适应直方图均衡化方法可能产生的结果,在某些情况下,比原始图像更坏。

数据类型:

数量的直方图箱用于构建一个对比增强变换,指定为一个正整数。更高的值导致更大的动态范围的成本处理速度慢。

数据类型:

指定范围的输出图像数据,作为其中一个值。

价值 描述
“全部” 使用输出的各种类(如255年[0]uint8)。
“原始” 限制范围我(:)[min()马克斯(我(:)))

数据类型:字符|字符串

期望的直方图形状,指定为以下值之一:

价值 描述
“统一” 创建一个平面分布图。
“瑞利” 创建一个钟形的直方图。
“指数” 创建一个弯曲的直方图。

分布指定的分布adapthisteq使用作为创建对比变换的基础功能。您选择分布应该是依靠输入图像的类型。例如,水下图像似乎看起来更自然,当使用瑞利分布。

数据类型:字符|字符串

分布参数,指定为一个非负数。α只是时使用分布被设置为“瑞利”“指数”

数据类型:

输出参数

全部折叠

对比增强的形象,作为一个二维矩阵相同的返回数据类型作为输入图像

算法

CLAHE作用于小区域的图像,称为瓷砖,而不是整个图像。adapthisteq分别计算每个瓷砖的对比度变换函数。每个瓷砖的对比增强,所以输出区域的直方图近似匹配指定的直方图分布价值。邻近的瓷砖,使用双线性插值结合消除人工边界。对比,特别是在均匀区域,可以限制,以避免放大图像中可能出现的任何噪音。

引用

[1]Zuiderveld,卡雷尔。“对比自适应直方图均衡有限。”图形宝石四世。圣地亚哥:学术新闻专业,1994年。474 - 485。

扩展功能

GPU的代码生成
生成NVIDIA的CUDA®代码®GPU使用GPU编码器™。

版本历史

之前介绍过的R2006a

全部展开