سلام
به این صورت تصویر به دست میاد
در نسخه های جدیدتر متلب به جای blkproc از تابع blockproc می شه استفاده کرد
clc
clear
close all
img = imread('1.png');
figure;
subplot(221)
imshow(img)
g = mean2(img);
img_gt_g = img > g;
k=16;
S = blkproc (img_gt_g,[k k], @(x) sum(x(:)));
S(S==0) = k *g;
subplot(2,2,2)
imshow(S,[],'InitialMagnification','fit')