Spliting an Image into smaller images of NxN

I have an image of 1000x1000 pixels, I want to split the image into NxN size blocks and save them into a cell and export them into .jpe files.

 採用された回答

Naqi
Naqi 2011 年 11 月 5 日

0 投票

I tried using blockproc(), but could not save block_struct.data into a matrix. I want to be able to export the images into .jpg files.

1 件のコメント

Walter Roberson
Walter Roberson 2011 年 11 月 5 日
You do not need to save the data in to a matrix: just write out the image directly.
imwrite(block_struct.data, FILENAME, 'jpg')
Now the only question becomes one of how to determine what filename to use.

サインインしてコメントする。

その他の回答 (2 件)

Image Analyst
Image Analyst 2011 年 11 月 5 日

1 投票

Just do this:
smallGrayImage = fullSizeGrayImage(row1:row2, col1:col2);
If it's color you can do this:
smallRGBImage = fullSizeRGBImage(row1:row2, col1:col2,:);
You'll need to set up row1, row2, col1, and col2 for each subimage with this method, but it's pretty straightforward.
Walter Roberson
Walter Roberson 2011 年 11 月 5 日

0 投票

mat2cell() or blkproc() or blockproc().
You will have to decide what you want to do when N does not evenly divide 1000, leaving you with partial images.

質問済み:

2011 年 11 月 5 日

Community Treasure Hunt

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

Start Hunting!

Translated by