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

データアップロード

データアップロードページでは、ローカルファイルまたはオブジェクトストレージ上のデータをプラットフォームにインポートします。プラットフォーム内のデータセットは MCAP を基準形式とします。動画と音声はブラウザ内で MCAP に変換し、BAG はバックエンドサービスが MCAP に変換し、MCAP と LeRobot ディレクトリはそのまま取り込みます。インポート後のデータセットはデータ管理ページでまとめて検索とプレビューを行います。

アップロードページの形式選択とプロジェクト・ストレージ選択(管理者、テスト環境)

前提条件​

インポート方法、プロジェクト、クラウドストレージを選択すると、対応するアップロードフォームが表示されます。

項目内容
メニュー入口データ → アップロード
ルート/upload
必須権限「データアップロード」
インターフェースチェックアップロード記録の書き込み API が「データセット一覧」を検証します
参照可能なロール管理者、プロジェクトマネージャー、収集者
プロジェクトの前提プロジェクト未選択の場合は「プロジェクトを選択してください」と表示します
クラウドストレージの前提クラウドストレージ未選択の場合は「クラウドストレージを選択してください」と表示します。選択肢がない場合は管理者がクラウドページで設定します

データのインポート​

インポート方法​

ページ上部のインポート方法カードが、アップロードの入口と変換動作を決めます。

インポート方法対応形式変換動作制約
MCAPファイルMCAP元ファイルをそのまま取り込み、変換は行いませんなし
BAGファイルBAGバックエンドが ROS1 か ROS2 を判別し、MCAP に変換します変換はサーバー側で実行します
動画ファイルMP4、WebM(ブラウザがデコードできる動画コンテナ)ブラウザ内で MCAP にトランスコードしますChrome 94+ または Edge 94+ が必要です
音声ファイルMP3、WAV、AAC、Oggブラウザ内で AudioData メッセージに変換しますブラウザの音声デコード性能に依存し、ブラウザ種別の制限はありません
画像ファイルJPG、PNG元ファイルをそのまま取り込み、画像アノテーションに使用しますなし
HDF5ファイルHDF5アップロード時にロボットタイプを選択し、取り込み後に前処理パイプラインで処理します管理者による前処理パイプラインの設定が必要です
LeRobotフォルダLeRobot v2、v3meta/info.json を検証し、tar としてストリーミングでパッケージ化しますデータセットフォルダ全体を選択する必要があります
MeituanフォルダMeituan 収集ディレクトリ(data と video)パッケージとしてアップロードし、前処理で MCAP に変換します管理者による前処理パイプラインの設定が必要です
Lumos FastUMIフォルダUMI、EGOsession 単位で .lumos としてパッケージ化します管理者による前処理パイプラインの設定が必要です
zc0touchフォルダdata.json を含むディレクトリディレクトリごとに .zc0touch としてパッケージ化します管理者による前処理パイプラインの設定が必要です
SenseXperienceフォルダデバイス収集の episode ディレクトリepisode ディレクトリ単位でアップロードしますsensexperience オブジェクトストレージが設定されている場合のみ表示されます
BVHファイルBVH元ファイルをそのまま取り込み、動作可視化アノテーションに使用します管理者による前処理パイプラインの設定が必要です
バッチ自動アップロードスクリプトのデータタイプによりますローカルスクリプトがディレクトリを監視し、自動でアップロードします「バッチアップロードスクリプト」を参照
クラウドからインポートMCAP、HDF5、LeRobotオブジェクトストレージをスキャンしてインポートします先にプロジェクトを選択する必要があります

ブラウザの前提条件​

動画の MCAP 変換は、ブラウザの MediaStreamTrackProcessor と HTMLVideoElement.captureStream に依存します(Firefox のプレフィックス付き mozCaptureStream をフォールバックとします)。ページは動画のインポート方法を開いたときにこの 2 つのインターフェースの有無を判定します。これは実行時の機能判定であり、ブラウザバージョンの許可リストでは判定しません。

項目値
依存インターフェースMediaStreamTrackProcessor、HTMLVideoElement.captureStream
判定方法上記インターフェースの有無を実行時に判定します
対応ブラウザChrome 94+、Edge 94+(2 つのインターフェースを提供)
非対応ブラウザFirefox は MediaStreamTrackProcessor を提供しません。Safari 18+ は MediaStreamTrackProcessor を提供しますが、HTMLVideoElement.captureStream を提供しません
判定のタイミング動画のインポート方法を開いたとき
非対応時の動作「ブラウザ互換性がありません」と表示し、ドラッグ&ドロップとファイル選択をブロックします
回避策Chrome 94+ または Edge 94+ を使用します。または、先にファイルを MCAP に変換してから MCAPファイルとしてアップロードします

動画変換パラメータ​

動画のインポート方法を選択すると次のパラメータが表示されます。変換はブラウザ内で実行します。

パラメータ値既定値制約
画像画質20%、50%、70%、100%70%画質が高いほどファイルが大きくなり、時間もかかります
ビデオフレームレート自動、10 FPS、15 FPS、30 FPS自動自動では元動画のフレームレートで処理します
音声を含むチェックあり、チェックなしチェックあり音声トラックを保持するかを決めます

音声変換パラメータ​

音声ファイルは ROS 標準の AudioData メッセージに変換され、設定は不要です。

項目値
出力メッセージROS メッセージタイプ audio_common_msgs/msg/AudioData。io_teleop/audio_data トピックに書き込み、メッセージエンコードは CDR です
メッセージ頻度10 Hz 固定
サンプル形式16 ビット符号付きリトルエンディアン PCM(s16le)
メタデータチャンネルにサンプルレート、チャンネル数、エンコード形式(s16le)を記録します
チャンネル処理元のチャンネル数でチャンネルごとに書き込みます

アップロードとインポート​

アップロードキューと進捗​

同じバッチのアップロードは一覧で 1 件ずつ状態を表示します。ファイルサイズがアップロード方式と利用できる操作を決めます。

項目値説明
分割アップロードのしきい値100 MBこの値を超えると分割アップロードを使用し、分割サイズは 10 MB です
一時停止と再開分割アップロードのみ対応しきい値未満のファイルはキャンセルのみ可能です
進捗表示アップロード速度、アップロード済みと合計サイズ、残り時間の目安ファイルごとに更新します
離脱確認アップロード中または待機中のファイルがある場合ページを閉じるか更新するときに確認を表示します
動画処理のタイムアウト10 分タイムアウトするとこの変換は失敗します

アップロード状態​

一覧は 1 件ずつ状態を表示します。値と後続の操作は次のとおりです。

ステータス意味次の操作
pendingファイルを選択済みで開始待ちなし
uploading変換またはアップロード中なし
paused分割アップロードを一時停止中「再開」をクリックします
successアップロードに成功し、データセットを作成済み「データセットを表示」をクリックします
error処理またはアップロードに失敗原因を確認して再試行します
cancelledアップロードがキャンセル済み再アップロードします

重複アップロードと同名チェック​

アップロード記録の書き込み API は送信元アドレスで重複を判定します。同じプロジェクトの同名記録はシステム設定 DATASET_REUPLOAD_RECOVER に従って処理します。

一致した場合処理結果
送信元アドレスが既存データセットと一致既存の記録を再利用アップロード情報を統合し、新規作成は行わず、「ファイルが存在します」と表示します
同じプロジェクトに同名の未削除データセットが存在既存の記録を再利用新規作成は行いません
同名データセットが削除済みで、復元スイッチがオン復元元のアノテーション、タスク関連、データタグを保持します
同名データセットが削除済みで、復元スイッチがオフ拒否「同じプロジェクト内の同じ名前のデータが削除されました。現在のシステム設定では、削除されたデータを復元して再アップロードすることはできません。」と表示します
同名の記録がない新規作成新しいデータセットを作成し、必要に応じて接尾辞を付けます

バッチアップロードスクリプト​

「バッチ自動アップロード」はロボット端末で実行するスクリプトを提供し、指定ディレクトリを監視して新しいファイルを自動でアップロードします。スクリプトは現在のプロジェクトとクラウドストレージに基づいて生成されます。

項目値
データタイプ単一ファイル(mcap、bag、hdf5)、フォルダ(AgiBot データ形式)、フォルダ(LeRobot データ形式)、フォルダ(Meituan 収集形式)、フォルダ(Lumos FastUMI)、フォルダ(zc0touch)
親ディレクトリの階層0 階層(既定)、1 階層、2 階層
スクリプトコマンドupload(フォアグラウンドで実行)、install(systemd サービスとしてインストール)、uninstall(サービスをアンインストール)
権限要件upload は一般ユーザー、install と uninstall は root が必要です

親ディレクトリの階層は同名ファイルの衝突を避けるために使います。0 階層ではファイル名をそのまま使用し、1 階層では直接の親ディレクトリを接頭辞に付け、2 階層では 2 段上の親ディレクトリまでを接頭辞に付けます。たとえば episode_1.mcap は 2 階層モードで 2025-01-01_10-30_episode_1.mcap になります。

クラウドからのインポート​

「クラウドからインポート」はオブジェクトストレージをスキャンし、既存データをインポートします。

項目値
データタイプMCAP、HDF5、LeRobot
実行モードテスト(スキャンとプレビューのみ)、インポート(スキャンして取り込み)
統計項目検出数、インポート待ち数、インポート済み数、インポート数
1 件ごとの状態to_import(インポート待ち)、already_imported(インポート済み)

制約と制限​

項目値適用範囲
プロジェクトとクラウドストレージいずれも必須すべてのインポート方法
分割アップロードのしきい値100 MB単一ファイル
分割サイズ10 MB単一ファイル
動画処理のタイムアウト10 分動画のインポート方法
動画変換のブラウザChrome 94+、Edge 94+動画のインポート方法
隠しファイルの除外パッケージアップロード時に「.」で始まるファイルを除外フォルダ系のインポート方法
空ファイルのブロックサイズが 0 のファイルはアップロードできません単一ファイル
HDF5 のロボットタイプ前処理パイプラインでロボットタイプが設定されている場合は必須HDF5 のインポート方法

トラブルシューティング​

現象考えられる原因対処担当
「プロジェクトを選択してください」と表示所属プロジェクトを選択していないプロジェクトセレクターでプロジェクトを選択しますアップロード者
「クラウドストレージを選択してください」と表示対象のクラウドストレージを選択していないクラウドストレージを選択します。選択肢がない場合は管理者に設定を依頼しますアップロード者、管理者
動画のインポートで「ブラウザ互換性がありません」と表示ブラウザに MediaStreamTrackProcessor または HTMLVideoElement.captureStream がないChrome 94+ または Edge 94+ を使用します。または先に MCAP に変換してアップロードしますアップロード者
動画処理がタイムアウトする動画の長さや解像度が高すぎる画質またはフレームレートを下げて再試行しますアップロード者
アップロードが失敗し原因が表示されるネットワーク切断、ファイル破損、ストレージ不足分割アップロードは再開できます。ファイル破損は先に修復します。容量不足は管理者に拡張を依頼しますアップロード者、管理者
「空ファイルはアップロード不可」と表示選択したファイルのサイズが 0有効なファイルに変更しますアップロード者
LeRobot のパッケージ検証に失敗meta/info.json がない、またはディレクトリ構造が一致しないLeRobot のディレクトリ構造に合わせてから再アップロードしますアップロード者
「ファイルが存在します」と表示送信元アドレスが既存データセットと重複データ管理ページで既存の記録を確認しますアップロード者
同じプロジェクトの同名データが削除済みと表示システム設定が復元後の再アップロードを禁止管理者に復元設定の変更を依頼するか、別のファイル名を使用します管理者

関連ページ​

ページ用途
データ管理アップロード後のデータセットの検索、プレビュー、一括操作
アノテーションタスクアップロードしたデータに対するアノテーションタスクの作成
データエクスポートトレーニング用にアノテーション結果をエクスポート
モジュール権限「データアップロード」などのモジュール権限の設定
データ形式MCAP と ROS データモデルの基準