互模糊函数的matlab代码
时间: 2023-07-29 21:07:05 浏览: 237
互模糊函数是一种常用于图像处理中的技术,可以用来去除图像模糊。以下是一个简单的互模糊函数的MATLAB代码:
```matlab
function [deblurred_image] = deblur(image, kernel)
% image为待去模糊的图像,kernel为其对应的卷积核
[m, n] = size(image);
[p, q] = size(kernel);
pad = floor((size(kernel)-1)/2);
padded_image = padarray(image, [pad pad], 'replicate', 'both');
deblurred_image = zeros(size(image));
padded_kernel = padarray(kernel, [m-p n-q], 'post');
padded_kernel = padded_kernel / sum(padded_kernel(:));
for i = 1:m
for j = 1:n
roi = padded_image(i:i+p-1, j:j+q-1);
deblurred_image(i,j) = sum(roi(:).*padded_kernel(:));
end
end
end
```
其中,image为待去模糊的图像,kernel为其对应的卷积核。首先,使用padarray函数对图像进行边缘填充,然后对每个像素点进行卷积运算,最后得到去模糊后的图像。
阅读全文