2012-03-12 16 views
1

変形を行う元画像があるとしましょう:元画像の画素を新しい変形位置に再配置するには、xとyの値にそれぞれgriddata関数を使用します。指定された参照点に従って画像内の点。次に、グリッドデータの出力に基づいて各ピクセルのどこを再マッピングするかを計算します。MATLABの色付き画像の歪み

ただし、処理中に色情報が失われます。従って、出力画像はグレースケールである。

グリッドデータ機能で色情報を失うことなく動作させるにはどうすればよいですか?

私の質問は着色された画像のワープに関するものです。オープン残りから質問を防止するために

+2

RGB画像がある場合は、3つのチャンネルのそれぞれで再マッピングできますか? – Jonas

+1

あなたの質問はむしろあいまいです。あなたの問題をより良く感じるためのコードを投稿してください。私は暗闇の中で撮影を行い、MATLABでカラー画像がmxnx3マトリックスであることに気づいて反応します。したがって、RチャンネルはA(:、:、1)、GチャンネルA(:、:、2)およびB A(:、:、3)である。グレースケールからカラーに移動するには、各カラーチャンネルマトリクスを別々に取得し、トランスフォーム(灰色の場合と同じように)を実行して、3つのイメージを新しいものに結合する必要があります(新しいマトリクス/そのそれぞれの変形されたものと一緒に)。 – Jorge

+0

私は実際に私の問題を解決しました。皆さんが提案したように、それぞれのカラーチャネルを個別に治療し、再形成するのは単なる問題でした。どうもありがとう! –

答えて

0

私は解決策につながったコメントを引用します:

あなたは RGBイメージを持っている場合は、3つのチャンネルのそれぞれに再マッピングを行うことができ、ありませんか?

-

MATLABでは、有色画像がmxnx3行列であることに注意。したがって、R チャネルはA(:、:1)、GチャネルA(:、:、2)およびB A(:、:、3)チャネルです。 をグレースケールからカラーに移動するには、各カラーチャネルマトリックス を別々に取得し、変換を実行する必要があります(灰色の場合と同様)。 は、3つの画像を新しいものに結合します(それぞれのプレーンにはそれぞれ

)1を変換し、それぞれの持つ新しい行列/画像 -

私は実際に私の問題を解決しました。これは単なる治療の問題であり、 各チャンネルを別々に再構成することです。

関連する問題