将 histeq 函数应用于 3x3 块

Applying histeq function to 3x3 blocks

我将 cameraman.tif 分成 3x3 块,我想将 histeq 函数应用于所有这些 3x3 块 并试图获得一个新形象。我需要有关 MATLAB 上这些 3x3 块的直方图均衡的帮助。

I = imread("cameraman.tif");
 
for i = 2:3:255
    for j = 2:3:255 
         B = I(i:i+2 , j:j+2);
         J = double(B);
       
    end
end

试试这个:

img = imread('cameraman.tif');
fun = @(heq) histeq(heq.data)
b = blockproc(img,[3,3],fun);

figure, imshow(imtile([img b],[]));