I want to divide image into 8*8 blocks and to find the color difference between pixels inside the block. And i need to retrieve only the larger difference pixel.

3 Ansichten (letzte 30 Tage)
I want to divide image into 8*8 blocks and to find the color difference between pixels inside the block. And i need to retrieve only the larger difference pixel.

Akzeptierte Antwort

Takuji Fukumoto
Takuji Fukumoto am 30 Jan. 2017
You can cut out 8*8 image from a large image.
Icut = I(i:i+8,k:k+8);
Please set appropriate i,k value to get the area you want.

Weitere Antworten (1)

Walter Roberson
Walter Roberson am 30 Jan. 2017
blockproc and have the function return max of the data minus min of the data.
Alternately you can use morphological dilation with ones(8,8) and subtract the morphological erosion with the same matrix as dilation is regional max and erosion is regional min. You could use this approach if the 8x8 blocks are sliding instead of distinct.

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by