Main Content

イメージのグラフィックス タイプまたはデータ型の変換

データ型間の変換は、イメージ データを解釈する方法を変更します。結果の配列をイメージ データとして適切に解釈する場合は、変換したとき、データを再スケーリングするか、オフセットを適用します。(オフセットに関する情報は、イメージの種類インデックス付きイメージ の節を参照してください)。

ある演算では、イメージを異なるイメージ タイプに変換することが有効な場合があります。たとえば、インデックス付きイメージとして格納しているカラー イメージをフィルター処理するには、まず、RGB イメージに変換します。これを効率的に行うには、関数 ind2rgb を使用します。RGB イメージにフィルターを適用すると、イメージ内の強度値が適切にフィルター処理されます。また、インデックス付きイメージにフィルターを適用しようとすると、単にインデックス付きイメージ行列のインデックスにフィルターが適用され、結果は意味のないものになる可能性があります。

MATLAB® の構文を使って、変換を行うこともできます。たとえば、グレースケール イメージを RGB に変換するには、次のように、3 番目の次元に沿って、3 つのオリジナル行列のコピーを連結してください。

RGB = cat(3,I,I,I);

結果求まる RGB イメージは、赤、緑、青平面が、同じ行列になります。それで、イメージはグレーの色調として表示されます。

他のソフトウェアで使用するため、イメージのグラフィックス形式を変更することは、非常に簡単です。たとえば、イメージを BMP から PNG に変換するには、関数 imread を使用して BMP を読み取り、データ型を uint8uint16double のいずれかに設定してから、'PNG' をターゲット形式として指定し、関数 imwrite を使用してイメージを保存します。各グラフィックス形式でサポートされているビット深度の詳細と、イメージをファイルに書き込むときの形式タイプの指定方法の詳細は、関数 imread および imwrite を参照してください。