Divide an Image of an Arbitrary Size Into 512 * 512 Blocks

4 Ansichten (letzte 30 Tage)
Hello Everyone. This is my first time posting a question here, I will try to explain as best as I can (sorry for the not-so-good English lol).
I have an image of size 11772 x 11396. I want to divide it into 512 x 512 non-overlapping blocks. I tried to use reshape(img, 512, 512, []), but it gave me an error that basically means the number of pixels in the original image is not divisible by 512. What is the best way to overcome this problem?
This is the exact error message (in case it is needed): Error using reshape Product of known dimensions, 262144, not divisible into total number of elements, 134153712.
Thanks.

Akzeptierte Antwort

Image Analyst
Image Analyst am 27 Jun. 2018

Weitere Antworten (1)

KSSV
KSSV am 27 Jun. 2018
  2 Kommentare
Nour Aburaed
Nour Aburaed am 27 Jun. 2018
It doesn't seem relevant to my question because 32 x 32 is divisible by 4, they can be easily reduced to 8x8 blocks. My problem is that the number of pixels in my original image is not divisible by 512.
KSSV
KSSV am 27 Jun. 2018
Use imresize and change the dimensions so that, they are divisible by 512.

Melden Sie sich an, um zu kommentieren.

Kategorien

Mehr zu Images finden Sie in Help Center und File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by