1 目的
原图曝光太低,使得图像太暗看不清楚,现对图像进行提亮修复。
clc;
clear;
img = imread('aa.jpg');
figure;
imshow(img);
title('原图')
%转hsv
img_hsv = rgb2hsv(img);
%提取亮度
img_v = img_hsv( :,:,3);
%先进行直方图均衡化处理
img_hist = hist_1(img_v);
%再进行锐化处理
% w = fspecial('laplacian', 0.8);%生成拉普拉斯滤波器
w = fspecial('log', [5 5], 5);%生成高斯-拉普拉斯滤波器
img_ruihua = filter(img_hist, w, 5);
img_hsv(:,:,3) = img_ruihua;
img_after = hsv2rgb(img_hsv);
figure;
imshow(img_after);
title('处理后')
%
%锐化函数
function img_result = filter(img_v, w, muban_size)
moban_size = muban_size;
[M, N] = size(img_v);
img_lap = zeros(M, N);
expand_img = double(wextend('2D','zpd', img_v, floor(moban_size/2)));%扩展0,转double为了矩阵运算
for i=1:M
for j=1:N
ave = sum( sum( expand_img(i:i+moban_size-1,j:j+moban_size-1) .* w)); %取出扩展元素与模板相乘,并求矩阵元素之和
img_lap(i,j) = ave;
end
end
img_result = img_v - img_lap;
end
%
%直方图均衡化函数
function hist_img

最低0.47元/天 解锁文章

被折叠的 条评论
为什么被折叠?



