メインコンテンツまでスキップ

品質検査

モデル訓練では、フレームレート不足、センサ Topic の欠落、時刻合わせの悪さなどが訓練の途中まで表面化し、計算資源の浪費と原因究明の難しさにつながりがちです。品質検査は、データの前処理完了後、エクスポートや訓練のに、設定可能な基準で ROS 録音データ(例:.mcap.bag.db3)を自動スキャンし、合格/不合格を付けます。

プラットフォームの製品機能として提供されます。管理者やプロジェクトマネージャが QC 画面でルールを設定すると、システムがスキャンをキューイングし、データセット一覧・詳細に結果が表示されます。独自のスキャンスクリプトは不要です。

ルール編集画面や項目の詳細は?

ルール優先度、データ名の glob、動画品質検査との違いなどは データ品質検査 を参照してください。本ページは データパイプライン上の位置づけ に重点を置きます。

クイックスタート

いつ走るか

データは 前処理 され、プラットフォームが検査可能な ROS 録音形式 になってから品質検査の対象になります。前処理成功後、ルールにマッチすればシステムが 自動でキュー投入 します。各データの詳細から 手動で再実行 することもできます。

ルールの適用範囲

  • プロジェクトルール:選択したプロジェクト内のデータのみ。プロジェクトごとの基準向け。
  • グローバルルール:プラットフォーム上の 全 ROS 録音データ(未所属のデータを含む)。全社共通の底線向け。

同一データに複数ルールがマッチしても、ルールごとに独立して判定されます。

結果の人手確認

機械判定が不合格のとき、権限のある 管理者/プロジェクトマネージャ手動上書き(誤検知の確認など)できます。一覧・タグ・エクスポート可否は 有効判定 を基準とし、手動上書きは機械判定より優先されます。管理者は「不合格時はエクスポート禁止」などのポリシーで QC とエクスポートを連動させられます。

パイプライン上の位置

アップロードから訓練までの大まかな流れは以下です。品質検査は前処理の直後に置かれ、明らかに不適なデータをフィルタ・エクスポート・訓練の前に遮ります。

プラットフォームフローにおける品��質検査

ルールで設定できること

ルールエディタでは主に次の 3 種類が使われます(表示名は画面に準拠)。

数値(閾値)
指標(例:フレームレート、収録時間、マルチストリームの時刻ずれ)と比較演算(以上/以下など)と閾値を選びます。ファイル全体や特定センサの底線向け。

Topic の有無
例:「/joint_states が必須」「デバッグ用 Topic は禁止」。必須センサの記録確認向け。

重大度:不合格 vs 警告

  • 不合格:条件を満たさないと その QC 実行全体 が不合格。
  • 警告:明細に表示されるだけで、警告のみでは全体は不合格になりません。分布を見てから基準を厳しくするのに向きます。

通常、1 本のルール内の条件はすべて満たすとその実行は合格です。新規ルールはまず 警告 で数日観察し、重要項目を 不合格 に切り替えるのがおすすめです。

ルールを変えたら?

ルールの新規作成・有効化・変更後、すでにそのルールにマッチしていた履歴データへ 自動で再スキャン が入り、最新定義と整合します。バックグラウンド処理のため、画面を張り付く必要はありません。

QC ルールの追加

代表的な検査項目(画面との対応)

次の 2 表は画面の検査名に対応しています。大きいほどよい 指標は で下限、小さいほどよい 指標は で上限を切るイメージです。

ファイル全体/主ストリーム

検査項目説明単位方向用途例
収録時間先頭から末尾メッセージまでの時間大きいほどよい短すぎるクリップの除外
タイムスタンプ後退回数時間軸が戻る回数小さいほどよい(0 推奨)時刻異常の検出
クロストピック同期(P95/P99/最大)マルチセンサの時刻合わせ誤差ms小さいほどよい同期 SLA
参照フレームレートメインストリームの平均メッセージレートHz大きいほどよい最低 FPS
フレーム間隔(中央値/P95/P99/最大)隣接フレーム間隔=ジッター・カクつきms小さいほどよいリズム・停滞
ドロップフレーム数通常より明らかに長い間隔の数小さいほどよい途切れ・欠損
画面鮮明度(高い分位)画像から算出した鮮明さスコア大きいほどよいボケ・ピント
露出外れ率明るさが大きく外れたフレームの割合比率小さいほどよい露出不安定

Topic 単位/型単位

マッチした各 Topic に対して個別に計算されます。スコープは「Topic 名」または「メッセージ型」、ワイルドカード可。いずれか 1 路でも満たさなければその条件は不合格です。

検査項目説明単位方向用途例
Topic 毎メッセージレートそのストリームのおおよその HzHz大きいほどよいカメラ最低 FPS
Topic 毎最大フレーム間隔そのストリームで最も「詰まった」間隔ms小さいほどよい最悪のカクつき
Topic 毎メッセージ数メッセージ本数大きいほどよいほぼ空のストリーム防止
Topic 毎収録スパン先頭〜末尾の時間幅大きいほどよい途中途切れの検出
Topic 毎先頭/末尾時刻ファイル時間軸上の位置タスク次第上級向け

設定例(数値は現場で調整)

  1. 全社底線:グローバルルールで主レート ≥ 15 Hz、時間 ≥ 5 s、重大度は不合格。
  2. 時系列:タイムスタンプ後退 ≤ 0。
  3. マルチセンサ同期:クロストピック同期 P99 ≤ 100 ms;尖り重視なら 最大 を使用。
  4. 必須 Topic:現場の実名(例 /joint_states)を「必須 Topic」に。
  5. マルチカメラ:画像系 Topic にマッチ;各路でレート ≥ 10 Hz かつ最大フレーム間隔 ≤ 500 ms。
  6. 全体鮮明度:スコープ「全体」、鮮明度高分位 ≥ 40(値は試行で調整)。
  7. ドロップ:ドロップ数 ≤ 10;エクスポートは止めず見たいだけなら 警告
  8. 訓練に入れたくない Topic:「禁止 Topic」にデバッグ系などを指定。

推奨ワークフロー

  1. データ品質検査 でルールを保守(プロジェクト/グローバル、データ名 glob は必要に応じて)。
  2. データセット一覧・詳細でサマリを確認;各実行の内訳は QC 履歴から。
  3. ルールが厳しすぎる場合は上書きと理由記載;品質問題なら収集/前処理側を直して再実行。
  4. エクスポートは データエクスポート、訓練は モデル訓練

管理者またはプロジェクトマネージャが個別に上書きし、有効判定を合格にできます。

データセット詳細の QC サマリ

QC ルール一覧とスコープ絞り込み

関連リンク