Main Content

checkSetup

設定の検証 (オプション)

説明

ラベル付けアプリにおいて、オートメーション セッション中に [実行] をクリックすると、checkSetup メソッドが設定の有効性をチェックします。checkSetuptrue を返した場合、設定は有効なため、アプリは initializerun、および terminate メソッドを使用して、オートメーション アルゴリズムの実行に進みます。

AutomationAlgorithm のクライアントはこのメソッドを必要に応じて実装できます。

isReady = checkSetup(algObj) は、設定が正しく完了していてオートメーション アルゴリズム algObj が実行を開始できる場合、true を返します。そうでない場合、checkSetupfalse を返します。

isReady = checkSetup(algObj,labelsToAutomate) はさらに、オートメーション アルゴリズムがラベル付けに使用するよう選択されたラベルを含む table、labelsToAutomate を提供します。この構文は、ピクセル ラベルのオートメーションをサポートしていません。また、この構文は、時間依存 (時間的) オートメーション アルゴリズムでのみ使用できます。グラウンド トゥルース ラベラー (Automated Driving Toolbox) アプリとビデオ ラベラー アプリは時間的アルゴリズムをサポートしていますが、イメージ ラベラーはサポートしていません。これらのタイプのアルゴリズムの詳細については、時間的オートメーション アルゴリズムを参照してください。

すべて展開する

checkSetup メソッドのこの実装では、時間的オートメーション アルゴリズムの設定を確認します。このメソッドは、少なくとも 1 つの ROI ラベルが存在する場合、オートメーション アルゴリズムを実行する準備が整っていると判定します。

function isReady = checkSetup(algObj,labelsToAutomate)
    
    notEmpty = ~isempty(labelsToAutomate);
    hasROILabels = any(labelsToAutomate.Type == labelType.Rectangle);
    isReady = (notEmpty && hasROILabels)
        
end

入力引数

すべて展開する

オートメーション アルゴリズム。vision.labeler.AutomationAlgorithm オブジェクトとして指定します。

オートメーション用に選択されているラベル。次の列を持つ table として指定します。

列名説明
Type

ラベル タイプを保持する labelType の列挙値。有効なラベル タイプは次のとおりです。

  • labelType.Rectangle

  • labelType.Cuboid (グラウンド トゥルース ラベラー アプリのみ)

  • labelType.ProjectedCuboid

  • labelType.Line

  • labelType.Scene

labelType.PixelLabellabelType.Custom はサポートされていません。

Nameラベルの名前を保持する文字ベクトル。
Timeラベルがマークされた時刻を秒単位で指定する double 型のスカラー。
Position

フレーム内のラベルの位置。このベクトルの形式はラベル タイプによって異なります。

ラベル タイプPosition の形式
Rectangle — 四角形の関心領域 (ROI) ラベル

[x, y, w, h] 形式の M 行 4 列の数値ベクトル。ここで、

  • M は、フレームに含まれるラベルの数です。

  • xy は四角形の左上隅を指定します。

  • w は四角形の幅、つまり x 軸に沿った四角形の長さを指定します。

  • h は四角形の高さ、つまり y 軸に沿った四角形の長さを指定します。

Cuboid — 直方体の ROI ラベル

[xctr, yctr, zctr, xlen, ylen, zlen, xrot, yrot, zrot] 形式の M 行 9 列の数値ベクトル。ここで、

  • M は、フレームに含まれるラベルの数です。

  • xctryctr、および zctr は直方体の中心を指定します。

  • xlenylen、および zlen はそれぞれ、x 軸、y 軸、および z 軸に沿った直方体の長さを指定します。

  • xrotyrot、および zrot はそれぞれ、x 軸、y 軸、および z 軸に沿った直方体の回転角度を指定します。これらの角度は、それぞれが対応する軸の正方向を見たときに、時計回りが正となります。

次の図は、これらの値で直方体の位置をどのように指定するかを示しています。

ProjectedCuboid — 直方体の ROI ラベル

[x1, y1, w1, h1, x2, y2, w2, h2] 形式の M 行 8 列の数値ベクトル。ここで、

  • M は、フレームに含まれるラベルの数です。

  • x1, y1 は、投影された直方体の前面の左上の位置の x,y 座標を指定します。

  • w1 は、投影された直方体の前面の幅を指定します。

  • h1 は、投影された直方体の前面の高さを指定します。

  • x2, y2 は、投影された直方体の背面の左上の位置の x,y 座標を指定します。

  • w2 は、投影された直方体の背面の幅を指定します。

  • h2 は、投影された直方体の背面の高さを指定します。

次の図は、これらの値で直方体の位置がどのように決定されるかを示しています。

Labeled projected cuboid

Line — ポリラインの ROI ラベルcell 配列の M 行 1 列のベクトル。ここで、M は、フレームに含まれるラベルの数です。各 cell 配列に、ポリラインの N 個の点に関する [x1 y1; x2 y2; ... ; xN yN] 形式の N 行 2 列の数値行列が含まれています。
Scene — シーン ラベル

ラベルがフレーム内に存在する場合は logical 値 1、そうでない場合は 0

テーブルの各行が、オートメーション用に選択されたラベルに対応しています。次の labelsToAutomate テーブルには、四角形のラベル、5 個の点を持つラインのラベル、直方体のラベルが含まれています。

       Type           Name           Time        Position  
     _________    ____________    _________    ____________
 
     Rectangle    'Car'           0.033333     [1x4 double]
     Line         'LaneMarker'    0.066667     [5x2 double]
     Cuboid       'Truck'         0.099999     [1x9 double] 

出力引数

すべて展開する

設定確認の結果を示す true または false。データ型 logical1 または 0 として返されます。

バージョン履歴

R2017a で導入