直方图拉伸
直方图拉伸
天蚕宝衣 发表于9个月前
直方图拉伸
  • 发表于 9个月前
  • 阅读 6
  • 收藏 0
  • 点赞 0
  • 评论 0

腾讯云 技术升级10大核心产品年终让利>>>   

下边是主函数: 

% picturelong1.m

p = imread('F:/personal/2_硕士/1_2_研一下学期/3_图像处理技术(李智)/2017.03.15/0_picturelong1/lena512.bmp');
%rgb2gray()函数能将彩色图像转换成灰度图像。
%p = rgb2gray(p); 
figure, imshow(p);
%figure, imhist(p);

%读取灰度图像的灰度值。
%imread函数用于读入各种图像文件,其一般的用法为
%[X,MAP]=imread('filename', 'fmt')
%其中,X,MAP分别为读出的图像数据和颜色表数据,fmt为图像的格式,
%filename为读取的图像文件(可以加上文件的路径)。
%例:[X, MAP] = imread('flowers.tif', 'tif');
%比较读取二值图像,灰度图像,索引图像,彩色图像的X和MAP的特点,
%可以利用size函数用来显示数组的维数,了解数据的特点。
%B=size(a) 返回数组a的维数。
[X, MAP] = imread('F:/personal/2_硕士/1_2_研一下学期/3_图像处理技术(李智)/2017.03.15/0_picturelong1/lena512.bmp', 'bmp');
original = X;

%线性对比度拉伸。
LinearTransformFunc(original);

%指数对比度拉伸。
IndexTransformFunc(original);

%对数对比度拉伸。
LogarithmTransformFunc(original);

然后是三个做图像拉伸的函数:

% LinearTransformFunc.m

% 线性对比度拉伸。
function [ new ] = LinearTransformFunc(original)
    %输入线性变换的斜率k。
    k = input('please input the slope(k) of grayscale linear transformation function:\n');
    %输入线性变换的b值。
    b = input('please input the intercept(b) of grayscale linear transformation function:\n');     
    new = original * k + b;
    figure, imshow(new);
end
% IndexTransformFunc.m

% 指数对比度拉伸。
function [ new ] = IndexTransformFunc(original)
    %输入对数变换的x值。
    x = input('please input the intercept(b) of grayscale index transformation function:\n');      
    B = im2double(original);
    new = B.^x;
    figure, imshow(new);
end
%LogarithmTransformFunc.m

% 对数对比度拉伸。
function [ new ] = LogarithmTransformFunc(original) 
    %输入对数变换的t值。
    t = input('please input the intercept(b) of grayscale logarithm transformation function:\n');
    B = im2double(original);
    B = abs(B);
    new = log(B + t);
    
    %输入对数变换的t值。
    %t = input('please input the intercept(b) of grayscale logarithm transformation function:\n');
    %对数对比度拉伸。
    %logarithmtransformed = LogarithmTransformFunc(original, t);
    figure, imshow(new);
end

 

共有 人打赏支持
粉丝 16
博文 222
码字总数 146332
×
天蚕宝衣
如果觉得我的文章对您有用,请随意打赏。您的支持将鼓励我继续创作!
* 金额(元)
¥1 ¥5 ¥10 ¥20 其他金额
打赏人
留言
* 支付类型
微信扫码支付
打赏金额:
已支付成功
打赏金额: