指定任意灰度变换

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/hhw999/article/details/52122561

 
指定任意灰度变换



用一个指定的变换函数来变换一幅图像的灰度:
     令T表示一个列向量,其包含该变换函数的值,例如:在一幅8比特图像的情况下,T(1)是由输入图像中的0灰度值映射来的值,T(2)是由1灰度值映射来的值,以此类推,T(256)是由255映射来的值

     使用取值范围为【0 1】的浮点数来表示输入图像和输出图像,可以简化程序

     实现灰度映射的一种简单方法:函数interp1
               g=interp1(z,T,f),其中f是输入图像,g是输出图像,T是上述的列向量,z是长度与T相同的列向量
          
                   z的形成:z=linspace(0,1,numel(T)),机制:函数linspace(a,b,n)会生成一个行向量,该行向量的n个元素是在a和b之间(包括a和b)线性间隔的
                              
                    机制:对于f中的一个像素值,interp1首先寻找横坐标的值(z),然后,寻找(内插)T中的相应值,并将寻找(内插)的值输出到g中的相应像素位置
                                                 
                    例如,假定T是负变换,T=【1,0】(T(1)由f的0灰度值来映射,T(2)由f的1灰度值来映射),则z=【0,1】,假定f中的一个像素由值0.75,则在g中相应的像素将被赋值为0.25

                  内插是必要的,因为对于T仅有给定数量的离散点,而r(输入图像的灰度)在【0 1】范围内有任意值

                         内插是数学领域数值分析中的通过已知的离散数据求未知数据的过程或方法。
                         科学和工程问题可以通过诸如采样、实验等方法获得若干离散的数据,根据这些数据,我们往往希望得到一个连续的函数(也就是曲线)或者
                         更加密集的离散方程与已知数据相吻合。这个过程叫做拟合。内插是曲线必须通过已知点的拟合。

     
展开阅读全文

没有更多推荐了,返回首页