ドキュメンテーション

最新のリリースでは、このページがまだ翻訳されていません。 このページの最新版は英語でご覧になれます。

getimage

座標軸からのイメージ データ

構文

A = getimage(h)
[x, y, A] = getimage(h)
[..., A, flag] = getimage(h)
[...] = getimage

説明

A = getimage(h) はグラフィックス オブジェクト h に格納される最初のイメージ データを返します。h は figure、axes または image です。A はイメージ CData と同じです。イメージ CData と同じ値を格納し、クラスも同じです (uint8uint16double または logical)。h がイメージでないか、イメージを格納していない場合、A は空です。

[x, y, A] = getimage(h) はイメージ XDatax に、YDatay に返します。XDataYDataX 軸と Y 軸の範囲を示す 2 要素ベクトルです。

[..., A, flag] = getimage(h)h が格納するイメージ タイプを示す整数フラグを返します。次の表は、flag の取り得る値をまとめています。

フラグ

イメージ タイプ

0

イメージではありません。A は空の行列として返されます。

1

インデックス付きイメージ

2

強度イメージ。値は標準範囲内 (single 配列と double 配列の場合は [0,1]、uint8 配列の場合は [0,255]、uint16 配列の場合は [0,65535])。

3

強度データ。値は標準範囲外

4

RGB イメージ

5

バイナリ イメージ

[...] = getimage は現在の axes オブジェクトの情報を返します。これは [...] = getimage(gca) と等価です。

クラス サポート

出力配列 A はイメージ CData と同じクラスです。その他すべての入力と出力のクラスは double です。

メモ:

int16 イメージと single イメージの場合、getimage によって返されるイメージ データのクラスは double であり、int16 でも single でもありません。これは、関数 getimage がイメージ オブジェクトの CData プロパティからデータを取得し、イメージ オブジェクトが int16single のイメージ データを double クラスとして格納するからです。

たとえば、int16 クラスのイメージ オブジェクトを作成します。オブジェクトから CData を取得しクラスをチェックすると、double が返されます。

h = imshow(ones(10,'int16')); 
class(get(h,'CData'))

したがって、関数 getimage を使用してイメージ データを取得する場合、返されるデータは double クラスでもあります。関数 flag の戻り値は 3 に設定されます。

[img,flag] = getimage(h);
class(img)

同じことは single クラスのイメージにも当てはまります。イメージ オブジェクトから CData を直接または getimage を使用して取得すると、返されるデータのクラスは double になります。

h = imshow(ones(10,'single'));
class(get(h,'CData')) 
[img,flag] = getimage(h);
class(img)

single クラスのイメージの場合、関数 flag の戻り値は 2 に設定されます。これは、singledouble が同じダイナミック レンジを共有するからです。

すべて折りたたむ

imshow を使用して、ファイルからイメージを直接表示し、イメージ データを格納する変数をワークスペースに作成します。

imshow rice.png
I = getimage;

イメージ ビューアー アプリ (imtool) を使用してファイルからイメージを直接表示し、イメージ データを格納する変数をワークスペースに作成します。

h = imtool('cameraman.tif');
I = getimage(imgca);

参考

|

R2006a より前に導入

この情報は役に立ちましたか?