use*_*372 2 grid matlab histogram
我有一个灰度200x200图像,我想计算图像中每个8x8窗口的强度直方图.我怎样才能快速计算出来?我现在使用for循环,但它太慢了.我目前的代码如下:
I = imread('image.jpg');
for i=1:8:height-7
for j=1:8:width-7
patch = I(i:i+7,j:j+7);
% compute histogram for the patch
end
end
Run Code Online (Sandbox Code Playgroud)
如果您有图像处理工具箱,则可以使用该函数blockproc,该函数是循环的已编译和通用版本.只需将回调函数定义为直方图计算.
B = blockproc(I, [8 8], @myhistfun)
Run Code Online (Sandbox Code Playgroud)