2016-11-14 12 views
0

サイズ128x128の画像があります。私はそれにmatlabのimread関数を適用しました、 A = imread(first.jpg); これは私に3次元配列128x128x3を返していますが、どのように3列R、G、B(各色ごとに1列)からなる2次元行列に変換できますか?RGB(2-Dマトリックス)の形式で画像を変換する方法

+0

3列と16384(128^2)行、つまり1ピクセルあたり1行の行列を取得しますか? – marcoresk

+0

はい、私は行の各ピクセルのRGB値をお寄せください –

答えて

1
A = imread('first.jpg'); 
Npixels = size(A,1)*size(A,2); 
newA = reshape(A,[Npixels,3]); 
+0

ありがとうございます。それは絶対に罰金を働いている、あなたはまた、私はJPG画像にこれを変換することができます私に教えてもいいですか? –

+0

@Tehreem Fatima元のサイズに戻すには、画像サイズを 'Asz = size(A);'に読み込んだ後に保存する必要があります。そして、 'origA = reshape(newA、Asz);' – jodag

+0

を処理した後にリシェイプ操作を実行します。 'jwriteが保存したものは正しいです。 @TehreemFatima –

関連する問題