〓 Mathematica 5 〓
■ このスレッドは過去ログ倉庫に格納されています
0370132人目の素数さん
2011/02/22(火) 20:09:17.97g = Import[ "/Users/Open/Desktop/rei.bmp"]
k = ColorConvert[g, "GrayScale"]
p = ImageDimensions[k]
nx = p[[ 1 ]]
ny = p[[ 2 ]]
ix = Ceiling[ nx/8 ]
jy = Ceiling[ ny/8 ]
Do[ j0 = If[ j < jy, (j - 1)*8 + 1, ny - 8 + 1 ];
Do[ i0 = If[i < ix, (i - 1)*8 + 1, nx - 8 + 1 ];
List1 = Take[ k, {j0, j0 + 7}, {i0, i0 + 7} ], {i, 1,
ix} ];, {j, 1, jy} ];
目的としては画像を8*8 画素を1ブロックとし分割を行いたいのです。
Do文により{{1,8},{1,8}} ,{{1,8},{9,16}},,,,,,,,,,,,,,,{{121,128},{121,128}} といったようにブロックを抽出しようと試みたのですが、実行結果は最後の{{121,128},{121,128}} ブロックのみがList1 に割り当てられた状態です。
Takeの動作がList1 にどんどん上書きされていき、最終のブロックのみが記憶されている感じなのかなと推測していますが自力で解決できずにいます。
詳しい方おられましたら原因もしくは解決方法をご教授いただけませんでしょうか?
よろしくお願いします。
■ このスレッドは過去ログ倉庫に格納されています