3次元プロジェクトの入力データ登録

3次元プロジェクトの入力データ登録について記載します。

概要

3次元プロジェクトの入力データ登録は、ZIPアーカイブのアップロードによって行います。ZIPアーカイブには、以下を含める必要があります。

  • KITTI、またはAnnofab 点群形式(KITTIベース)のデータ
  • AnnofabのZIPアーカイブアップロード設定ファイルannofab_inputdata.conf

また、KITTI、Annofab 点群形式(KITTIベース)いずれのデータ形式においても、1つのシーンごとにアップロードを行います。

登録される入力データについて

点群データ(.binファイル)ごとに1つの入力データが作成されます。入力データの入力データIDおよび入力データ名は下記となります。

項目設定値
入力データIDKITTIの場合velodyneフォルダ中の各binファイルから.binを削除した文字列となります。Annofab 点群形式(KITTIベース)の場合、scene.metaファイル中のid_listの値となります。
入力データ名点群データのファイル名が入力データ名として登録されます

以下、データ形式ごとに登録方法を記載します。

KITTIの登録方法

ZIPアーカイブのフォルダ構成

アップロードするZIPアーカイブには、登録するKITTIの1シーン分、および設定ファイルを1階層目に配置します。以下にフォルダ構成の例を示します。KITTIの詳細はKITTIを参照ください。

data.zip
├── velodyne/
│   ├── ...
├── image_2/
│   ├── ...
├── calib/
│   ├── ...
└── annofab_inputdata.conf

設定ファイルの詳細

設定ファイルはJSON形式です。以下の項目を設定します。

キー必須設定値
_type登録する3次元点群データの形式を指定します。データの形式がKITTIの場合Kittiを指定します。
sensor_height点群のセンサー(velodyne)の設置高を指定します。単位はメートルです。3次元エディターにて、地面の高さを仮定するために使用します。
input_data_id_prefix入力データに付与するプレフィックスを指定します。この項目を指定した場合、「入力データID」の先頭に、ここで指定した文字列を先頭に付与します。この設定は省略することができ、省略した場合プレフィックスは付与されません。

設定ファイルのサンプルを下記に示します。

{
    "_type": "Kitti",
    "input_data_id_prefix": "foo-",
    "sensor_height": 0.00
}

Annofab 点群形式(KITTIベース)の登録方法

ZIPアーカイブのフォルダ構成

アップロードするZIPアーカイブには、登録するKITTIの1シーン分、および設定ファイルが直下に配置します。以下にフォルダ構成の例を示します。Annofab 点群形式(KITTIベース)の詳細はAnnofab 点群形式(KITTIベース)を参照ください。

data.zip
├── velodyne/
│   ├── ...
├── image_2/
│   ├── ...
├── calib/
│   ├── ...
├── scene.meta
└── annofab_inputdata.conf

設定ファイルの詳細

設定ファイルはJSON形式です。以下の項目を設定します。

キー必須設定値
_type登録する3次元点群データの形式を指定します。Annofab 点群形式(KITTIベース)の場合、ExtendedKittiを指定します。
scene_pathscene.metaファイルのパスを指定します。ZIPフォルダのルートからの相対パスを記載します。
sensor_height点群のセンサー(velodyne)の設置高を指定します。単位はメートルです。3次元エディターにて、地面の高さを仮定するために使用します。省略した場合はKITTIのvelodyneセンサー高(1.73)を採用します。
input_data_id_prefix入力データに付与するプレフィックスを指定します。KITTIの場合と同様のため、仕様については「KITTIの登録方法」の同名の項目を参照ください。
camera_horizontal_fov補助画像カメラの視野角の取得方法を指定します。settingsまたはcalibを指定することが可能で、省略した場合はsettingsとなります。

settings: 対象の画像にcamera_view_settingが存在していれば、その値を利用します。存在しない場合はcalibと同様の値となります。
calib: 対象の画像にキャリブレーションデータが存在すればそこから計算します。存在しない場合は90度となります。

設定ファイルのサンプルを下記に示します。

{
    "_type": "ExtendedKitti",
    "input_data_id_prefix": "foo-",
    "sensor_height": 1.00,
    "scene_path": "scene.meta",
    "camera_horizontal_fov": "settings"
}