このページの内容は最新ではありません。最新版の英語を参照するには、ここをクリックします。
getBlock
bigimage
オブジェクトの関数 getBlock
は将来のリリースで削除される予定です。代わりに、blockedImage
オブジェクトに関連付けられた関数 getBlock
を使用してください。詳細については、互換性の考慮事項を参照してください。
説明
は、指定された解像度レベルで data
= getBlock(bigimg
,level
,locationWorld
)bigimg
内の大きなイメージ データを読み取り、座標 locationWorld
を含むブロック全体のピクセル データを返します。
例
対話形式による bigimage
ブロックの選択と表示
CAMELYON16 データセットのイメージ "tumor_091.tif" の変更したバージョンを使用して bigimage
を作成します。元のイメージは、腫瘍組織が含まれるリンパ節の学習イメージです。元のイメージには 8 つの解像度レベルがあり、最も細かいレベルの解像度は 53760 x 61440 です。変更したイメージには、3 つの粗い解像度レベルのみが含まれています。変更したイメージの空間参照は、縦横比が一定に維持され、各レベルで特徴がレジストレーションされるように調整されています。
bim = bigimage('tumor_091R.tif');
関数 bigimageshow
を使用して bigimage
を表示します。最も細かい解像度レベルでブロック境界を表示するグリッドを重ね合わせます。
hb = subplot(1,2,1); bigimageshow(bim,'GridVisible','on','GridLevel',1);
表示するブロックの (x,y) 座標を指定します。この座標を含むブロックを取得します。表示された bigimage
の上の指定された座標に Point
ROI を追加します。
coord = [2500,2500];
blk = getBlock(bim,1,coord);
hp = drawpoint(hb,'Position',coord);
図の中で、bigimage
全体の横にブロックを表示します。ブロックはメモリに収まり、単一の解像度レベルをもっているので、imshow
を使用してブロックを表示できます。
ha = subplot(1,2,2);
imshow(blk,'Parent',ha)
Point
ROI にリスナーを追加します。ROI をマウスでドラッグすると、図が更新されて、現在の ROI 座標を含むブロックが表示されます。
title(hb,'Drag Point to Select Block'); addlistener(hp, ... 'ROIMoved',@(~,~) imshow(getBlock(bim,1,hp.Position),'Parent',ha));
入力引数
出力引数
data
— ピクセル データ
数値配列
ピクセル データ。大きなイメージ
と同じデータ型の数値配列として返されます。bigimg
.ClassUnderlying
バージョン履歴
R2019b で導入R2023b: getBlock
は削除予定
bigimage
オブジェクトとこの関数は将来のリリースで削除される予定です。代わりに、blockedImage
オブジェクトの関数 getBlock
を使用してください。
コードを更新するには、まず、イメージ データを読み取るための blockedImage
オブジェクトを作成します。次に、以下の手順に従います。
2 つの要素の順序を入れ替えて、(x, y) ワールド座標を (行, 列) ワールド座標に変換します。
関数
world2sub
を使用して、ワールド座標をピクセルの添字に変換します。レベル 1 以外の解像度レベルでブロックを取得するには、名前と値の引数Level
を使用してそのレベルを指定します。関数
sub2blocksub
を使用して、ピクセルの添字をブロックの添字に変換します。レベル 1 以外の解像度レベルでブロックを取得するには、名前と値の引数Level
を使用してそのレベルを指定します。ブロック化されたイメージの次元が 2 より大きい場合、未指定の各次元について、ピクセルの添字のベクトルの長さを 1 つ増やす必要があることに注意してください。それらの追加要素に対し、値
1
を指定することができます。たとえば、2 次元カラー イメージは、カラー チャネルがあるため、次元が 3 になります。関数sub2blocksub
の呼び出し時に、ピクセルの添字のベクトルに要素を 1 つ追加しなければなりません。ブロック化されたイメージおよびブロックの添字を関数
getBlock
に渡します。レベル 1 以外の解像度レベルでブロックを取得するには、名前と値の引数Level
を使用してそのレベルを指定します。
非推奨の使用方法 | 推奨される代替案 |
---|---|
この例では、関数
filename = "tumor_091R.tif";
bim = bigimage(filename);
coordWorld = [1000 2500];
blk = getBlock(bim,1,coordWorld); | 以下は、 filename = "tumor_091R.tif";
blockedIm = blockedImage(filename);
coordWorld = [1000 2500];
coordRC = flip(coordWorld);
subPixel = world2sub(blockedIm,coordRC);
subBlock = sub2blocksub(blockedIm,[subPixel 1]);
blk = getBlock(blockedIm,subBlock); |
この例では、解像度レベル 2 で操作を繰り返します。 lvl = 2; blk = getBlock(bim,lvl,coordWorld); | この例では、名前と値の引数 lvl = 2; subPixel = world2sub(blockedIm,coordRC,Level=lvl); subBlock = sub2blocksub(blockedIm,[subPixel 1],Level=lvl); blk = getBlock(blockedIm,subBlock,Level=lvl); |
R2021a: 関数 getBlock
は非推奨
bigimage
オブジェクトの関数 getBlock
は推奨されません。代わりに、blockedImage
オブジェクトの関数 getBlock
を使用してください。blockedImage
オブジェクトには、N 次元の処理に拡張できる、インターフェイスがシンプルである、非標準イメージ形式の読み書きをカスタムでサポートしている、といったいくつかの利点があります。
参考
MATLAB コマンド
次の MATLAB コマンドに対応するリンクがクリックされました。
コマンドを MATLAB コマンド ウィンドウに入力して実行してください。Web ブラウザーは MATLAB コマンドをサポートしていません。
Select a Web Site
Choose a web site to get translated content where available and see local events and offers. Based on your location, we recommend that you select: .
You can also select a web site from the following list:
How to Get Best Site Performance
Select the China site (in Chinese or English) for best site performance. Other MathWorks country sites are not optimized for visits from your location.
Americas
- América Latina (Español)
- Canada (English)
- United States (English)
Europe
- Belgium (English)
- Denmark (English)
- Deutschland (Deutsch)
- España (Español)
- Finland (English)
- France (Français)
- Ireland (English)
- Italia (Italiano)
- Luxembourg (English)
- Netherlands (English)
- Norway (English)
- Österreich (Deutsch)
- Portugal (English)
- Sweden (English)
- Switzerland
- United Kingdom (English)