失眠网,内容丰富有趣,生活中的好帮手!
失眠网 > 医学图像增强MATLAB程序 图像增强程序及评价指标含Matlab程序

医学图像增强MATLAB程序 图像增强程序及评价指标含Matlab程序

时间:2023-08-18 21:18:52

相关推荐

医学图像增强MATLAB程序 图像增强程序及评价指标含Matlab程序

版权声明:以上文章中所选用的图片及文字来源于网络以及用户投稿,由于未联系到知识产权人或未发现有关知识产权的登记,如有知识产权人并不愿意我们使用,如果有侵权请立即联系:55525090@,我们立即下架或删除。

简介:图像增强及评价指标含Matlab程序说明

第1部分 图像增强方法及程序

非线性增强、彩色图像滤波增强、MSR增强、暗通道去雾算法增强、直方图规定化算法、自适应直方图均衡化、小波变换增强、模糊增强

第2部分 图像增强评价指标及程序

对比度提升指数CII、熵等

P1 图像增强方法及程序

非线性增强程序

%**************************************************************************

% filename: zenqiangcontrast.m

% function: 实现对比度展宽,采用非线性调整,要输入的参数为模型阶数

% date: .11.22

% programmer:xxx

%**************************************************************************

clc;

clear all;

I=imread('sample.jpg');

imshow(I);

figure(2);

[m n]=size(I);

I=double(I);

%p=4.5;

p=1.3;

f=I;

g=zeros(size(I));

unit=f./255;

g=unit.^p;

subplot(1,1,1);

imshow(g,[]);

title('调整后的图像');

figure(1);

%imwrite(g,'C:\Documents and Settings\Administrator\桌面\彩色医学图像增强效果\28.jpg');

彩色图像滤波增强

以下为滤波增强程序,包含一个子函数guidedfilter.m

% example: detail enhancement

% figure 6 in our paper

clc;

clear all;

close all;

I = double(imread('10.jpg'))/ 255;

p = I;

figure(1);

imshow(I);

r = 16;%r = 16;

eps = 0.1^2;

q = zeros(size(I));

q(:, :, 1) = guidedfilter(I(:, :, 1), p(:, :, 1), r, eps);

q(:, :, 2) = guidedfilter(I(:, :, 2), p(:, :, 2), r, eps);

q(:, :, 3) = guidedfilter(I(:, :, 3), p(:, :, 3), r, eps);

I_enhanced = (I - q) * 5 + q;

%figure();

%imshow([I, q, I_enhanced], [0, 1]);

%figure(2);

%imshow(q);

figure(2);

imshow(I_enhanced);

%imwrite(I_enhanced,'hkmtx10.jpg')

========子函数guidedfilter.m===========

function q = guidedfilter(I, p, r, eps)

% GUIDEDFILTER O(1) time implementation of guided filter.

%

% - guidance image: I (should be a gray-scale/single channel image)

% - filtering input image: p (should be a gray-scale/single channel image)

% - local window radius: r

% - regularization parameter: eps

[hei, wid] = size(I);

N = boxfilter(ones(hei, wid), r); % the size of each local patch; N=(2r+1)^2 except for boundary pixels.

mean_I = boxfilter(I, r) ./ N;

mean_p = boxfilter(p, r) ./ N;

mean_Ip = boxfilter(I.*p, r) ./ N;

cov_Ip = mean_Ip - mean_I .* mean_p; % this is the covariance of (I, p) in each local patch.

mean_II = boxfilter(I.*I, r) ./ N;

var_I = mean_II - mean_I .* mean_I;

a = cov_Ip ./ (var_I + eps); % Eqn. (5) in the paper;

b = mean_p - a .* mean_I; % Eqn. (6) in the paper;

mean_a = boxfilter(a, r) ./ N;

mean_b = boxfilter(b, r) ./ N;

q = mean_a .* I + mean_b; % Eqn. (8) in the paper;

end

MSR方法进行增强

f=imread('E:\work\OriginalImages\1.jpg');

fr=f(:, :, 1); fg=f(:, :, 2); fb=f(:, :, 3);%RGB通道

mr=mat2gray(im2double(fr)); mg=mat2gray(im2double(fg)); mb=mat2gray(im2double(fb));%数据类型归一化

alf1=1458; %定义标准差alf=a^2/2 a=54

n=161;%定义模板大小

n1=floor((n+1)/2);%计算中心

for i=1:n

for j=1:n

b(i,j) =exp(-((i-n1)^2+(j-n1)^2)/(4*alf1))/(pi*alf1); %高斯函数

... 更多>>

如果觉得《医学图像增强MATLAB程序 图像增强程序及评价指标含Matlab程序》对你有帮助,请点赞、收藏,并留下你的观点哦!

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。