lookup table (LUT)

21 篇文章 0 订阅

查找表(LUT)转换是基本的图像处理功能,突出细节包含重要的信息。这些功能包括直方图均衡化,伽马校正,对数修正,指数的修正。

何时使用

使用LUT的转换,通过修改的区域的动态强度较差的对比度提高的图像的对比度和亮度.

概念

一个LUT变换转换输入到其它的变换后的图像中的灰度级值从源图像中的灰度级值。

一个LUT转换适用于变换T(x)在指定的输入范围的RangeMax] rangeMin,以下列方式:

 

T(x) = dynamicMin if x ≤ rangeMin
f(x) if rangeMin < x ≤ rangeMax
dynamicMax if x > rangeMax

wherex represents the input gray-level value
dynamicMin = 0 (8-bit images) or the smallest initial pixel value (16-bit and floating point images)
dynamicMax = 255 (8-bit images) or the largest initial pixel value (16-bit and floating point images)
dynamicRange = dynamicMax - dynamicMin
f(x) represents the new value.

 

该函数尺度函数f(x),使得f(rangeMin)= dynamicMin和f(的RangeMax)= dynamicMax。 [rangeMin的RangeMax] F(X)的行为,根据您所选择的方法。

在一个8位的分辨率的情况下,LUT是256个元素的表。的数组元素的索引表示的输入灰度级值。每一个元素的值表示的输出值。

与一个LUT相关联的传递函数有一个预期的效果的图像的亮度和对比度。

Example

下面的示例使用下面的源图像。在线性的源图像的直方图,灰色电平的时间间隔[0,49]和[191,254]不包含显着的信息。

使用以下LUT变换,任何的值小于49的像素被设置为0,并且任何一个值大于191的像素被设置为255。在区间[50,190]扩展到[1,254],增加强度动态的浓度区域中的像素的灰度级的范围内[50,190]。

If x ∈[0, 49], F(x) =0

If x ∈[191, 254], F(x) =255

else F(x) = 1.81 × x89.5

 

查询表转换产生以下图像。线性直方图的新形象只包含这两座山峰的区间[50,190]。

预定义的查找表

7个预定义的LUT可在NI视觉:线性,对数,功率1 / Y,平方根,指数次方Y,和广场。下表显示了每个LUT的传递函数,并描述了其效果在一个调色板中显示的图像相关联的暗颜色的低强度值和高强度的值,如灰色的调色板的颜色鲜艳。

LUTTransfer FunctionShading Correction
LinearIncreases the intensity dynamic by evenly distributing a given gray-level interval [min, max] over the full gray scale [0, 255]. Min and max default values are 0 and 255 for an 8-bit image.
Logarithmic Power
1/Y Square Root
Increases the brightness and contrast in dark regions. Decreases the contrast in bright regions.
Exponential Power
Y Square
Decreases the brightness and contrast in dark regions. Increases the contrast in bright regions.

Logarithmic and Inverse Gamma Correction

数和反伽马校正扩大低灰度级范围,同时压缩高灰度级范围。使用灰色的调色板时,这些转换增加图像的整体亮度和增加在黑暗区域的对比度,在明亮的区域中的对比度为代价。

下面的图表显示了如何转换的行为。横轴表示输入灰度级的范围内,并且垂直轴表示的输出灰度级范围。每个输入灰度级的值绘制垂直和水平绘制其与查找曲线的交点的点,得到的输出值。

 

 

扩大的时间间隔包含在压缩的时间间隔含有高灰度值的灰度值低的对数,平方根,功率1 / Y功能。

较高的伽马系数为Y,较强的强度校正。的对数的修正具有较强的影响,比功率1 / Y功能。

 

Logarithmic and Inverse Gamma Correction Examples

以下一系列的插图呈现线性和累积的各种LUT的转换后的图像的直方图。更多的直方图被压缩,在右侧,图像越亮。

 注意在左边的图形表示的原始图像,图形上的最佳权代表线性直方图,和图形的右下角表示累积直方图。

下图显示了原始图像和直方图。

 

A Power 1/Y transformation (where Y = 1.5) produces the following image and histograms.

A Square Root or Power 1/Y transformation (where Y = 2) produces the following image and histograms.

A Logarithm transformation produces the following image and histograms.

Exponential and Gamma Correction

指数和伽玛校正扩大高灰度级范围,同时压缩低灰度级范围。当使用的灰色的调色板,这些变换图像的整体亮度降低,并增加对比度的明亮区域,在暗区中的对比度为代价。

下面的图表显示了如何转换的行为。横轴表示输入灰度级的范围内,并且垂直轴表示的输出灰度级范围。每个输入灰度级的值绘制垂直和水平绘制其与查找曲线的交点的点,得到的输出值。

 

 

的指数,广场,次方Y功能扩展包含在压缩的时间间隔包含低灰度值高灰度值的时间间隔。

较高的伽马系数为Y,较强的强度校正。指数修正具有较强的影响比Y型电源功能

 

Exponential and Gamma Correction Examples

以下一系列的插图呈现线性和累积的各种LUT的转换后的图像的直方图。更多的直方图被压缩,图像越暗。

 注意在左边的图形表示的原始图像,图形上的最佳权代表线性直方图,和图形的右下角表示累积直方图。

下图显示了原始图像和直方图。

 

A Power Y transformation (where Y = 1.5) produces the following image and histograms.

A Square or Power Y transformation (where Y = 2) produces the following image and histograms.

An Exponential transformation produces the following image and histograms.

Equalize

平衡功能是预定义的LUT查找表操作不工作。相反,在LUT的计算的基础上的图像的内容,其中的函数被施加。

色调均化的函数改变的像素的灰度级值,使他们变得均匀地分布在所定义的灰度范围,这是从0至255的8 - 比特图像。功能联营公司同等数量的像素每恒定的灰度级的时间间隔,并充分利用可用深浅不同的灰色。使用这种转变,以增加图像的对比度不使用所有灰度级。

的均衡可以被限制到一个灰度电平的时间间隔,也被称为均衡范围。在这种情况下,该函数均匀分布的像素以上的充分的时间间隔,这是属于均衡范围为0至255的8 - 比特图像。的其它像素被设置为0。产生的图像显示在均衡范围内的强度的区域具有的细节,其他方面都被清零。

 

Equalization Example
 

这个例子显示,均衡区间[0,255]如何传播的信息中包含的三个原峰在更大的时间间隔。转换后的图像显示在原始图像中的每个组件的详细信息。下面的图形显示原始图像和直方图。

 注意:在实施例1和实施例2中,在左边的图形表示的原始图像,图形上的最佳权代表的线性的直方图,并在右下角的图形表示的累积直方图。

An equalization from [0, 255] to [0, 255] produces the following image and histograms.

 
 Note  The cumulative histogram of an image after a histogram equalization always has a linear profile, as seen in the preceding example.
Equalization Example 2

此示例显示如何均衡区间[166,200]可以传播的信息包含在原来的第三个高峰(范围从166至200)在区间[0,255]。转换后的图像显示与原来的强度范围内的组件的详细信息[166,200],而所有其他组件设置为黑色。 [166,200]到[0,255],产生了下面的图像和直方图均衡。

  • 1
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
### 回答1: 要将一个查找表(lookup table)保存为.mat文件,可以按照以下步骤进行: 1. 首先,确保你已经有了一个查找表的数据。查找表是一个包含输入值和相应输出值的表格或矩阵。假设你已经有了一个名为"LUT"的查找表。 2. 在MATLAB命令窗口中,使用`save`命令将查找表保存为.mat文件。命令的语法为: ```matlab save 文件名 变量名 ``` 其中,文件名是你想要保存的.mat文件的名称,可以自定义,比如"lookup_table.mat"。变量名是你已经定义的查找表变量的名称,即"LUT"。 执行该命令后,MATLAB会将查找表数据保存到指定的.mat文件中。 ```matlab save lookup_table.mat LUT ``` 3. 查找表数据就会以.mat文件的形式保存在当前的工作目录中。你可以在MATLAB浏览器窗口的"Current Folder"选项卡下找到该文件。 4. 若要加载保存的.mat文件并将其存储到一个变量中,可以使用`load`命令。命令的语法为: ```matlab 变量名 = load('文件名') ``` 其中,文件名是你之前保存的.mat文件的名称,比如"lookup_table.mat"。 执行该命令后,MATLAB会将.mat文件中的数据加载到指定的变量中。 ```matlab LUT_loaded = load('lookup_table.mat') ``` 在此示例中,查找表数据将被加载到名为"LUT_loaded"的变量中。 通过这些步骤,你就可以将查找表保存为MAT文件,并在需要时重新加载使用。 ### 回答2: 在MATLAB中,可以使用lookup table(查找表)来存储一系列的数据对,以便于快速查找相关数值。如果需要将lookup table保存为.mat文件,可以按照以下步骤进行操作: 1. 首先,将lookup table的数据存储在一个MATLAB中的变量中。这个变量可以是一个数组、矩阵或结构体,其维度和数据类型应该与lookup table相匹配。 2. 使用MATLAB中的save函数将lookup table的变量保存为.mat文件。使用以下形式的命令: save('文件路径\文件名.mat', '变量名') 其中,'文件路径\文件名.mat'指定了保存的位置和文件名,'变量名'指定了要保存的lookup table变量。 3. 执行保存操作后,MATLAB会将lookup table变量以.mat文件的格式保存在指定的位置。 如有需要,可以使用load函数将之前保存的.mat文件中的lookup table变量重新加载到MATLAB工作空间中: load('文件路径\文件名.mat', '变量名') 这将会将.mat文件中的变量加载到与.mat文件中保存的变量名相同的变量中。 通过以上步骤,你可以将lookup table以.mat文件的形式进行输入和输出,方便地在MATLAB中进行使用和共享。 ### 回答3: 要将Lookup Table(查找表)存储为.mat文件(MATLAB文件格式),可以按照以下步骤进行操作: 1. 打开MATLAB软件。 2. 创建一个包含Lookup Table数据的变量。可以使用MATLAB的Table数据类型或者在MATLAB命令窗口上创建一个二维数组。 3. 将Lookup Table数据赋值给变量。确保数据的维度和格式正确。 4. 将变量保存到.mat文件中。使用MATLAB的save函数,将变量名和保存文件的路径作为输入参数。例如,假设Lookup Table数据存储在一个名为"lookupTable"的变量中,可以使用以下代码将其保存为lookupTable.mat文件: ```matlab save('lookupTable.mat', 'lookupTable') ``` 这将在保存文件的当前工作目录下创建一个名为lookupTable.mat的.mat文件。 5. 程序将Lookup Table数据保存为.mat文件后,可以通过使用MATLAB的load函数进行读取和加载。使用load函数,将.mat文件的路径作为输入参数,并以一个变量来接收返回的数据。例如,假设要将数据加载到名为"loadedLookupTable"的变量中,可以使用以下代码: ```matlab loadedLookupTable = load('lookupTable.mat'); ``` 此时,变量loadedLookupTable将包含.mat文件中存储的Lookup Table数据。可以像使用其他MATLAB变量一样使用它。 以上是将Lookup Table导出为.mat文件以及从.mat文件导入Lookup Table的一般步骤。具体操作可能根据使用的编程环境和需求而有所不同。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值