Main Content

このページの内容は最新ではありません。最新版の英語を参照するには、ここをクリックします。

getPixelRegionFormatFcn

ピクセル値を文字ベクトルに書式設定する関数ハンドルの取得

説明

fun = getPixelRegionFormatFcn(imgmodel) は、イメージ モデル imgmodel の 1 つ以上のピクセル値を書式設定する関数を文字ベクトルとして返します。文字ベクトルの形式はピクセル領域ツールに表示される情報に一致します。

すべて折りたたむ

imagemodel オブジェクトから得られたピクセル値は、さまざまな対話型のイメージ処理ツールでの表示に適した複数の形式で返すことができます。

カラー イメージに関連付けられたイメージ モデルを作成します。

h = imshow('flamingos.jpg');

Figure contains an axes object. The axes object contains an object of type image.

im = imagemodel(h)
 
im =
 
IMAGEMODEL object accessing an image with these properties:

       ClassType: 'uint8'
    DisplayRange: []
     ImageHeight: 972
       ImageType: 'truecolor'
      ImageWidth: 1296
    MinIntensity: []
    MaxIntensity: []

 

行座標と列座標を指定してピクセルを選択します。このピクセルの (行, 列) 座標は (100, 200) です。

r = 100;
c = 200;

関数 getPixelValue を使用してピクセルの数値を取得します。

pxValue = getPixelValue(im,r,c)
pxValue = 1x3 uint8 row vector

   104    95    54

関数 getDefaultPixelInfoString を使用して既定のピクセル情報文字列を取得します。この文字列はイメージのタイプによって異なりますが、ピクセル値を使用しません。ピクセル情報文字列はピクセル情報ツールで使用するのに適しています。

defaultPxInfoStr = getDefaultPixelInfoString(im)
defaultPxInfoStr = 
'[R G B]'

関数 getPixelInfoString を使用して、指定したピクセルのピクセル情報文字列を同じ文字列形式で取得します。

pxInfoStr = getPixelInfoString(im,r,c)
pxInfoStr = 
'[104 95 54]'

関数 getDefaultPixelRegionString を使用して既定のピクセル領域文字列を取得します。この文字列はイメージのタイプによって異なりますが、ピクセル値を使用しません。ピクセル領域文字列はピクセル領域ツールで使用するのに適しています。

defaultPxRegStr = getDefaultPixelRegionString(im)
defaultPxRegStr = 
    'R:000
     G:000
     B:000'

指定したピクセルのピクセル領域文字列を同じ文字列形式で取得するための 2 つの手順があります。まず、関数 getPixelRegionFormatFcn を使用して、数値ピクセル値を書式設定する関数 formatFcn を取得します。次に、formatFcn の入力引数としてピクセルの行座標と列座標を指定して、書式化された文字列を取得します。

formatFcn = getPixelRegionFormatFcn(im);
pxRegStr = formatFcn(r,c)
pxRegStr = 1x1 cell array
    {'R:104...'}

imagemodel オブジェクトから得られたピクセル値は、さまざまな対話型のイメージ処理ツールでの表示に適した複数の形式で返すことができます。

グレースケール イメージに関連付けられたイメージ モデルを作成します。

h = imshow('liftingbody.png');

Figure contains an axes object. The axes object contains an object of type image.

im = imagemodel(h);

複数ピクセルの行座標と列座標をベクトルとして指定します。

r = [50 400 500];
c = [250 300 500];

関数 getPixelValue を使用してピクセルの数値を取得します。

pxValue = getPixelValue(im,r,c)
pxValue = 1x3 uint8 row vector

   151    74   104

ピクセルのピクセル領域文字列を取得するための 2 つの手順があります。まず、関数 getPixelRegionFormatFcn を使用して、数値ピクセル値を書式設定する関数 formatFcn を取得します。次に、formatFcn の入力引数としてピクセルの行座標と列座標を指定して、書式化された文字列を取得します。

formatFcn = getPixelRegionFormatFcn(im);
pxRegStr = formatFcn(r,c)
pxRegStr = 3x1 cell
    {'151'}
    {'74' }
    {'104'}

入力引数

すべて折りたたむ

イメージ モデル。スカラー imagemodel オブジェクトとして指定します。

出力引数

すべて折りたたむ

ピクセル値の書式設定関数。関数ハンドルとして返されます。関数 fun には 2 つの入力引数があります。それらの入力引数は、ターゲット イメージ内のピクセルの行座標と列座標です。グレースケール、インデックス付き、およびバイナリ イメージの場合、fun は、複数のピクセルを指定する行ベクトルを受け入れます。RGB イメージの場合、fun は単一ピクセルのみを受け入れます。fun は、入力イメージ タイプに従って書式設定された文字ベクトルの cell 配列としてピクセル値を返します。

イメージ タイプピクセル値のサンプル書式
グレースケール'000'
トゥルーカラー (RGB)'R:000 G:000 B:000'
バイナリ'0'
インデックス付き'<000> R:0.00 G:0.00 B:0.00'

データ型: function_handle

バージョン履歴

R2006a より前に導入