Image division into blocks
1 次查看(过去 30 天)
显示 更早的评论
Hello,
I have a code that divides an image into 16x16 blocks. This works really well. However the content of the 16x16 block is stored in a cell array similar to this one:
rgbBlock = ca{r,c};
I've been wondering about the possible alternatives that could be used instead of the line above. This is because I am converting the code to C++ using Matlab coder and the code generation does not support cell structure. Any suggestion would be appreciated.
0 个评论
回答(2 个)
Matz Johansson Bergström
2014-8-10
If you have the image processing toolbox you could use blocproc blockproc documentation. I'm not sure it goes well with Matlab coder because I have never used it.
0 个评论
Image Analyst
2014-8-10
Look at the second method in the FAQ http://matlab.wikia.com/wiki/Split_image_into_blocks. It shows you how you can take the extracted 16by16 block and put it as one plane (slice) in a 3D array. That's for gray scale images. If you have color images and want to stack small 16x16 color images, then you can use a 4D array, or else do some bookkeeping if you want to still use a 3D array.
0 个评论
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Image Processing Toolbox 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!