How to access the image's blocks in an iterative way
1 回表示 (過去 30 日間)
古いコメントを表示
Hi
i have a database of 100 images of size 256X384 RGB images.
i divided each image into 6 equal blocks.
now i want to make this in a big nested loop with keeping record of every image and blocks.
i thought to make a big 2D array of size(100 , 6*128 , 128) but i have a problem to access the first layer of each block
i tried this code :
for i=1:6
hblock(k,i*128,128)=iblock(k,i*128,128)(:,:,1);
end
but i got this error:
()-indexing must appear last in an index expression.
i tried using cell arrays but the results wasn't as accurate as numeric arrays.
any help will be appreciated Thank you
0 件のコメント
回答 (1 件)
Image Analyst
2011 年 12 月 31 日
You can't have two indexing things with an array, like array()(). You can have only one set of parentheses. I'm not sure what you're after. Do you want to store the kth slice, or the first slice in your new 3D array?
5 件のコメント
Image Analyst
2011 年 12 月 31 日
Answer my question on using size(). What is iblock? How did you create that array?
参考
カテゴリ
Help Center および File Exchange で Matrix Indexing についてさらに検索
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!