このページの内容は最新ではありません。最新版の英語を参照するには、ここをクリックします。
bboxcrop
境界ボックスのトリミング
構文
説明
[___] = bboxcrop(___,
は、前の構文にある引数の任意の組み合わせに加えて、名前と値の引数を 1 つ以上使用してオプションを指定します。たとえば、Name=Value
)OverlapThreshold=1
は、正のオーバーラップしきい値を 1
に設定します。
例
イメージおよび対応する境界ボックスの中央トリミング
イメージを読み取ります。
I = imread('peppers.png');
境界ボックスとラベルを定義します。
bboxA = [ 410 230 100 90 186 78 80 60 ]
bboxA = 2×4
410 230 100 90
186 78 80 60
labelsA = [ "garlic" "onion" ];
中央トリミング ウィンドウを作成します。
targetSize = [256 256]; win = centerCropWindow2d(size(I),targetSize);
イメージを中央でトリミングします。
[r,c] = deal(win.YLimits(1):win.YLimits(2),win.XLimits(1):win.XLimits(2)); J = I(r,c,:);
ボックスとラベルを中央でトリミングします。トリミング ウィンドウの外にあるボックスは削除されます。
[bboxB,indices] = bboxcrop(bboxA,win); labelsB = labelsA(indices);
結果を表示します。
figure I = insertObjectAnnotation(I,'Rectangle',bboxA,labelsA); J = insertObjectAnnotation(J,'Rectangle',bboxB,labelsB); imshowpair(I,J,'montage')
入力引数
bboxA
— 境界ボックス
M 行 4 列の行列 | M 行 5 列の行列 | M 行 9 列の行列
境界ボックス。M 行 4 列、M 行 5 列、または M 行 9 列の非スパース数値行列として指定します。M は境界ボックスの数です。行列の各行で、軸に平行な四角形、回転した四角形、または直方体として、境界ボックスを定義します。次の表に、各境界ボックスの形式を示します。
境界ボックス | 説明 |
---|---|
軸に平行な四角形 | [x y w h] 形式の行をもつ M 行 4 列の数値行列として、空間座標で定義します。ここで、
|
回転した四角形 | [xctr yctr xlen ylen yaw] 形式の行をもつ M 行 5 列の数値行列として、空間座標で定義します。ここで、
|
直方体 | [xctr yctr zctr xlen ylen zlen xrot yrot zrot] 形式の行をもつ M 行 9 列の数値行列として、空間座標で定義します。ここで、
次の図は、これらの値で直方体の位置がどのように決定されるかを示しています。 |
window
— トリミング ウィンドウ
4 要素のベクトル (既定値) | images.spatialref.Rectangle
| 6 要素ベクトル | images.spatialref.Cuboid
| 数値 | イメージ
名前と値の引数
オプションの引数のペアを Name1=Value1,...,NameN=ValueN
として指定します。ここで、Name
は引数名で、Value
は対応する値です。名前と値の引数は他の引数の後に指定しなければなりませんが、ペアの順序は重要ではありません。
R2021a より前では、コンマを使用して名前と値をそれぞれ区切り、Name
を引用符で囲みます。
例: OverlapThreshold=1
は、正のオーバーラップしきい値を 1
に設定します。
OverlapThreshold
— オーバーラップしきい値
1 (既定値) | 1
以下の正のスカラー
出力引数
bboxB
— トリミングされた境界ボックス
M2 行 N 列の行列 | 非スパースの数値
トリミングされた境界ボックス。M2 個の境界ボックスから成る M2 行 N 列の行列として返されます。返される境界ボックスの数は、入力の境界ボックスの数よりも少なくなります。行列の各行 M2 は、入力 bboxA
と同じタイプの 1 つの境界ボックスを定義します。出力境界ボックスの位置は、トリミング ウィンドウの位置を基準にしています。
indices
— インデックス
整数のベクトル
インデックス。整数のベクトルとして返されます。インデックスは、入力 bboxA
内のどの境界ボックスがトリミング ウィンドウ内にあるかを示します。
バージョン履歴
R2019b で導入R2022a: 境界ボックス座標: 空間座標を使用したオブジェクト検出用のデータ拡張
関数 bboxresize
、bboxcrop
、bboxwarp
、および showShape
は、軸に平行な長方形の入力境界ボックス座標が空間座標で指定されていることを前提として、変換後の境界ボックスを空間座標で返します。
参考
imcrop
| bboxresize
| bboxwarp
| bboxerase
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)