Main Content

ワークスペースへのイメージ データの読み取り

この例では、関数 imread を使用して、グラフィックス ファイルから MATLAB® ワークスペースにイメージ データを読み取る方法を説明します。

トゥルーカラー イメージをワークスペースに読み取ります。この例では、JPEG 形式を使用するグラフィックス ファイルからイメージ データを読み取ります。

RGB = imread("football.jpg");

イメージ ファイル形式が 8 ビットのピクセルを使用している場合、関数 imread はイメージ データを uint8 値の m x n x 3 の配列として返します。PNG や TIFF などの 16 ビット データをサポートしているグラフィックス ファイル形式に対しては、関数 imreaduint16 値の配列を返します。

whos
  Name        Size                Bytes  Class    Attributes

  RGB       256x320x3            245760  uint8              

グレースケール イメージをワークスペースに読み取ります。この例では、TIFF 形式を使用するグラフィックス ファイルからイメージ データを読み取ります。関数 imread はグレースケール イメージを uint8 値の m 行 n 列の配列として返します。

I = imread("cameraman.tif");
whos
  Name        Size                Bytes  Class    Attributes

  I         256x256               65536  uint8              
  RGB       256x320x3            245760  uint8              

インデックス付きイメージをワークスペースに読み取ります。関数 imread では 2 つの変数を使用して、インデックス付きイメージをワークスペースに格納します。1 つの変数はイメージ用で、もう 1 つはそれに関連付けられているカラーマップ用です。関数 imread では、イメージ配列自体のクラスが uint8 または uint16 であっても、カラーマップを double クラスの行列に常に読み取ります。

[X,map] = imread("trees.tif");
whos
  Name        Size                Bytes  Class     Attributes

  I         256x256               65536  uint8               
  RGB       256x320x3            245760  uint8               
  X         258x350               90300  uint8               
  map       256x3                  6144  double              

これらの例では、関数 imread は、使用するファイル形式をファイルの内容から推測します。ファイル形式を関数 imread の引数として指定することもできます。関数 imread は、Graphics Interchange Format (GIF)、Joint Photographic Experts Group (JPEG)、Portable Network Graphics (PNG)、Tagged Image File Format (TIFF) 形式などの数多くの一般的なグラフィックス ファイル形式をサポートしています。サポートされているビット深度やイメージ形式に関する最新情報は、imread および imformats のリファレンス ページを参照してください。

pep = imread("peppers.png","png");
whos
  Name        Size                Bytes  Class     Attributes

  I         256x256               65536  uint8               
  RGB       256x320x3            245760  uint8               
  X         258x350               90300  uint8               
  map       256x3                  6144  double              
  pep       384x512x3            589824  uint8               

参考

関連するトピック