パブリック最終クラスBoundingBoxUtil
境界ボックスを表す値を四角形に変換するためのヘルパー クラス。
このクラスは、さまざまなタイプの構成から境界ボックスをRectF
として作成する静的関数を提供します。
一般に、境界ボックスは 4 つの float 値で表すことができますが、値はさまざまな方法で解釈できます。 3 つのBoundingBoxUtil.Type
構成がサポートされるようになり、各タイプの要素の順序も構成可能です。
ネストされたクラス
列挙型 | BoundingBoxUtil.CooperativeType | 座標が実際のピクセルであるか相対比率であるかを示します。 | |
列挙型 | BoundingBoxUtil.Type | 境界ボックスがどのように表現されるかを示します。 |
パブリックメソッド
静的リスト<RectF> | 変換( TensorBufferテンソル、 int[] valueIndex、 intboundingBoxAxis、 BoundingBoxUtil.Typeタイプ、 BoundingBoxUtil.CooperativeType座標タイプ、 int height、 int width) 境界ボックスを表す TensorBuffer から境界ボックスのリストを作成します。 |
継承されたメソッド
パブリックメソッド
public static List <RectF> Convert ( TensorBuffer tensor、int[] valueIndex、intboundingBoxAxis、 BoundingBoxUtil.Typeタイプ、 BoundingBoxUtil.CoownedType座標タイプ、int height、int width)
境界ボックスを表すTensorBuffer
から境界ボックスのリストを作成します。
パラメーター
テンソル | いくつかのボックスを表すデータを保持します。 |
---|---|
値インデックス | は、各境界ボックス タイプで定義された要素の順序を示します。空のインデックス配列は、各境界ボックス タイプのデフォルトの順序を表します。たとえば、境界のデフォルトの順序 {left、top、right、bottom} を示すには、インデックスは {0、1、2、3} である必要があります。 {left、right、top、bottom} の順序を示すには、順序は {0、2、1、3} である必要があります。 インデックス配列をすべての境界ボックス タイプに適用して、対応する基礎となる要素の順序を調整できます。 |
境界ボックス軸 | 境界ボックスを表す次元のインデックスを指定します。その次元のサイズは 4 である必要があります。ここでのインデックスは 0 から始まります。たとえば、テンソルの形状が 4x10 の場合、境界ボックスの軸は 0 になる可能性があります。負の軸もサポートされています。-1 は最後の軸を示します。 -2 は 2 番目を返します。などです。形状 10x4 の場合、軸は 1 (または同等の -1) になる可能性があります。 |
タイプ | 値をボックスに変換する方法を定義します。 BoundingBoxUtil.Type を参照してください。 |
座標タイプ | 値が座標にどのように解釈されるかを定義します。 BoundingBoxUtil.CoordinateType を参照してください。 |
身長 | ボックスが属する画像の高さ。 coordinateType がBoundingBoxUtil.CoordinateType.RATIO の場合にのみ効果があります。 |
幅 | ボックスが属する画像の幅。 coordinateType がBoundingBoxUtil.CoordinateType.RATIO の場合にのみ効果があります。 |
戻り値
tensor
が表す境界ボックスのリスト。boundingBoxAxis
を除くすべての次元は、順序を維持したまま折りたたまれます。たとえば、形状が {1, 4, 10, 2} で、boundingBoxAxis = 1
のtensor
の場合、結果は 20 個の境界ボックスのリストになります。
投げる
IllegalArgumentException | 境界ボックスの寸法 ( boundingBoxAxis で設定) のサイズが 4 ではない場合。 |
---|---|
IllegalArgumentException | boundingBoxAxis が(-(D+1), D) にない場合、 D はtensor の次元数です。 |
IllegalArgumentException | tensor のデータ型がDataType.FLOAT32 以外の場合。 |