XGRIDSドキュメント
  • 简体中文
  • English
  • 繁體中文
  • 日本語
  • Deutsch
  • Español
  • Italiano
  • Français
  • Русский
  • 简体中文
  • English
  • 繁體中文
  • 日本語
  • Deutsch
  • Español
  • Italiano
  • Français
  • Русский
  • PortalCam

    • 製品概要
    • デバイスの基本操作
    • LCC Scan App の使用
    • メンテナンスとお手入れ
    • FAQ
  • Lixel K シリーズ

    • Lixel K1

      • 製品概要
      • デバイスの基本操作
      • デバイスのアクティベーションと接続
      • デバイス収集
      • 絶対座標のポイントクラウドデータを取得する
      • マップフュージョン
      • 典型的なシーンにおける経路計画の推奨
      • 注意事項
      • FAQ
    • Lixel K2

      • 製品概要
      • デバイスの基本操作
      • デバイスのアクティベーションと接続
      • デバイス収集
      • 絶対座標のポイントクラウドデータを取得
      • マップフュージョン
      • 典型的なシーンにおける経路計画の推奨
      • 注意事項
      • FAQ
  • Lixel L シリーズ

    • Lixel L2 Pro

      • 製品概要
      • デバイスの基本操作
      • デバイスのアクティベーションと接続
      • デバイス収集
      • 絶対座標のポイントクラウドデータを取得する
      • 実時計測機能
      • 付録
      • FAQ
  • アクセサリー

    • Stick Light

      • 取り付けガイド
      • 基本操作
      • よくある質問
  • Lixel Studio

    • バージョンと著作権
    • インストールとアクティベーション
    • ソフトウェアインターフェース
    • ファイル操作
    • プロジェクト処理
    • ツール
    • 2D 作図
    • 業界応用
    • 設定
    • デバイス接続
  • Lixel CyberColor

    • LCC Studio

      • はじめに
      • バージョンと更新
      • ダウンロードとインストール
      • インターフェース概要とナビゲーション
      • 再構築前の準備
      • モデル再構築
      • 単一モデル再構築
      • 地図合成
      • 空地融合
      • 航空撮影再構築
      • マイモデル
      • その他の機能
      • 設定とアカウント
      • Converter
      • 動画再構築
      • よくある質問 / FAQ
    • LCC Scene Editor

      • バージョンと更新
      • アカウントとサインイン
      • 製品概要とホーム画面
      • エディター画面
      • ナビゲーションモード
      • ファイル
      • 設定
      • 編集
      • ウィンドウ
      • グローバルツールバー
      • アセットとプロパティ
      • 左ツールバー
      • ビューポイント
      • ポータル
      • スカイボックス
      • アノテーション
      • 測定
      • フライスルー
      • シーンレポート
      • 3D レイアウト
      • ミニマップ
      • プレビューモード(Viewer)
      • ヘルプ
      • よくある質問(FAQ)
      • スポーンポイント
    • LCC Model Editor

      • バージョンと更新
      • ユーザーガイド
      • 概要とインターフェース
      • ファイル操作
      • セレクター
      • モデルの編集
      • 測定
      • カラーグレーディング
      • アセット管理
      • 設定とヘルプ
      • よくある質問
    • Capture Guide

      • 概要
      • 撮影デバイス概要
      • 一般的な撮影の原則
      • 屋内シーンの撮影
      • 屋外シーンの撮影
      • 大規模撮影(マップフュージョン)
      • 空地マップフュージョン撮影
      • オブジェクト撮影
      • 人物撮影
      • ビデオ再構築撮影
      • HD Enhancement
      • 制御点(Lixel P1)
      • FAQ とトラブルシューティング
    • LCC Studio Linux

      • 製品概要説明
      • 基本アーキテクチャマニュアル
      • インストールと展開説明書
      • コンテナ起動パラメータ説明書
      • CodeMeter オフラインライセンス展開説明書
      • APIコマンドセット
      • 付録-開発者データマニュアル
      • 付録-エラーコード一覧
      • シングルノードマルチGPUクラスタ展開QuickStart
    • バージョン履歴
  • プラグインと SDK

    • Unreal

      • 概要
      • クイックスタート - Windows
      • クイックスタート - Linux
      • クイックスタート - Quest3
      • エディションとライセンス
      • レンダリング
      • 画面調節
      • 法線とライティング
      • シーン編集
      • パフォーマンスパラメーター
      • パフォーマンス最適化ガイド
      • サードパーティおよびエンジンプラグインとの連携
      • プロキシメッシュ
      • 読み込みアニメーション
      • コリジョン
      • ナビゲーションシステム対応
      • Single layer water 対応
      • ローカライズ
      • よくある質問
      • トラブルシューティング
      • ログと診断
      • お問い合わせ
      • API リファレンス

        • ALCCActorBase
        • ULCCComponentBase
        • ULCCComponent
        • ULCC2Component
        • SOG / SPZ / PLY Actors
        • ALCC2ProxyMesh
        • ALCCClippingVolume
        • ALCCSectionPlane
        • ULCCUtilLibrary
        • Enums
        • Structs
      • 更新履歴

        • v3.3.1
        • v3.0.0
        • v2.2.1
        • v1.0.0
        • v0.9.0
        • v0.8.0
        • v0.7.1
        • v0.6.1
        • v0.5.2
        • v0.4.1
        • v0.4.0
        • v0.3.0
        • v0.0.5
        • v0.0.4
        • v0.0.3
        • v0.0.2
        • v0.0.1
    • Web

      • はじめに
      • レンダリング性能最適化ガイド
      • グラフィックス設定
      • よくある質問
      • API リファレンス

        • LCCRender::clearIndexDB
        • LCCRender::dispose
        • LCCRender::load
        • LCCRender::setCamera
        • LCCRender::unload
        • LCCRender::update
        • LCCObject::checkRenderNextFrame
        • LCCObject::clearRenderNextFrame
        • LCCObject::ecef2Prj
        • LCCObject::getBounds
        • LCCObject::getEnvInstancedMesh
        • LCCObject::getInstancedMesh
        • LCCObject::getLodInfos
        • LCCObject::getOriginPosition
        • LCCObject::getProjectionCoordinateSystemInfos
        • LCCObject::hasCollision
        • LCCObject::hasEnvironment
        • LCCObject::hasShcoef
        • LCCObject::intersectsCapsule
        • LCCObject::intersectsRayExt
        • LCCObject::intersectsRayFromOriginExt
        • LCCObject::intersectsSphere
        • LCCObject::lowerToBottom
        • LCCObject::prj2Ecef
        • LCCObject::raiseToTop
        • LCCObject::raycast
        • LCCObject::raycastFromOrigin
        • LCCObject::setAlpha
        • LCCObject::setClipBox
        • LCCObject::setClipPlane
        • LCCObject::setEndLod
        • LCCObject::setLodAutoLevelUp
        • LCCObject::setMaxDistance
        • LCCObject::setMaxNodeSplats
        • LCCObject::setMaxSplats
        • LCCObject::setOriginPosition
        • LCCObject::setPointsColor
        • LCCObject::setRenderState
        • LCCObject::setRotation
        • LCCObject::setScale
        • LCCObject::setSemantic
        • LCCObject::setSemanticColor
        • LCCObject::setSmooth
        • LCCObject::setStartLod
        • LCCObject::setTranslation
        • LCCObject::setVisible
        • LCCObject::togglePointsDisplayMode
        • LCCObject::useEnvironment
        • LCCObject::useShcoef
      • 更新履歴

        • v0.6.3
        • v0.6.2
        • v0.6.1
        • v0.6.0
        • v0.5.5
        • v0.5.4
        • v0.5.3
        • v0.5.2
        • v0.5.1
        • v0.5.0
        • v0.4.1
        • v0.4.0
        • v0.3.1
        • v0.3.0
        • v0.2.0

APIコマンドセット

4 HTTP API インターフェース定義

4.1 シングルマップ再構築ジョブの作成

入力パラメータ

curl --location --request POST 'http://127.0.0.1:8080/lcc_cloud/start_reconstruction' \
--header 'Content-Type: application/json' \
--data-raw '{
     "accessKey": "y6vera"                  //必須。コンテナ起動時に指定した API 認証 KEY
    ,"name": "job1"                        //必須。ジョブ名
    ,"inputFolder": "/work/job001/input"    //必須。再構築に使う input データディレクトリのパス(Docker 内部にマウントされたパス)
    ,"outputFolder": "/work/job001/output"  //必須。 再構築の出力先ディレクトリのパス(Docker 内部にマウントされたパス)
    ,"hookUrl":"http://localhost:8080/lcc_cloud/job_progress_hook_sample" //実行状態を同期する Hook アドレス
    ,"quality":"M"                     //必須。 品質: "H":高  "M":中  "L":低
    ,"maximumGaussianPoint": 8         //最大ガウス点数 8-50   
    ,"lowMemory":0                //低メモリ再構築を有効にするか: 0/1。既定は 0(無効)、1 で有効
    ,"exposure":0               //露出最適化を有効にするか: 0/1。既定は 0(無効)、1 で有効
    ,"portability":"ON"                //クロスプラットフォーム最適化を有効にするか: "ON/OFF"。既定は有効
    ,"pointCloudParticipationRate":"H" //PPR 機能、"H":高  "L":低 。既定は高。再構築処理における点群の関与度です。
    ,"jobQueueEnabled":1               //0:サーバーが現在ビジーの場合は直接エラーを返します。1 ジョブキューに追加し、順番を待って実行できます。シングルマップ再構築ジョブの作成時にこのパラメータを渡さない場合、既定値は 0 です
    ,"hdImageFolder": "/work/job001/output"  //高精細補足撮影画像のフォルダ。この機能は高度な機能であり、ライセンスが必要です。ない場合はパラメータが無効になります。
    ,"lccAiConfig":1 // 0 無効 1 AI 空間理解を有効化。ベータ版機能で、現在は屋内シーンのみ対応。この機能は高度な機能でライセンスが必要です。ない場合は常に 0 のままにしてください。
    ,"developerDataOutput":"ON" //開発者データを出力するか("ON" / "OFF"),未入力の場合は既定で OFF。この機能は高度な機能であり、ライセンスが必要です。ない場合はパラメータが無効になります。【付録:開発者データ】を参照
    ,"createJobFolder":"ON"             //outputFolder の下にジョブ名でサブディレクトリを作成するか:"ON"/"OFF"
    ,"lioMode":""                        //LIO 特殊モード:""自動 / "0"なし / "1"ロバスト / "2"狭小シーン
    ,"executionNodes":["192.168.11.11:8080","192.168.11.11:8081"]//クラスタモードで、クラスタ内のどのノードがこのジョブを実行できるかを選択します
}'

注意:
1,パラメータフィールドの型が string 型か number 型かに注意してください。誤るとパラメータ形式エラーになります。
2,必須パラメータフィールドが欠けていると、ジョブの追加または実行でエラーになります。
3,再構築ジョブの実行時、コンテナノードの /work ディレクトリには input データサイズの 5 倍のディスク容量が必要です。不足すると再構築ジョブが失敗する可能性があります。

必須(コードで実際に検証):accessKey、name、inputFolder、outputFolder。
(quality は既定で M;maximumGaussianPoint は既定 12;hookUrl、hdImageFolderなどは任意の高度な項目です。)

戻りパラメータ

{
    "code":0,     // 0 は API 呼び出し成功を表します;その他の数値は予期しない例外が発生したことを表します
    "msg":"",     // 例外時はここにメッセージが返されます
    "data":{
        "bizCode": 0,  //業務戻りコード :0 開始またはキュー追加に成功  1 他のジョブが実行中で開始できません。 その他のエラーコードは bizMsg の戻り情報を参照してください
        "bizMsg": "",  //業務処理メッセージ
        "jobId":"xxxx" //現在の jobID。開始時にシステムが生成します。ジョブを復旧できるかどうかは、データベースおよび関連作業ディレクトリが永続化されているかによります;コンテナを削除しデータベースを永続化していない場合は復旧できません
    }
}

INPUT データチェックのエラーコード一覧表

入力データチェック後に返される可能性のあるエラーコードとエラーメッセージは、最新版のエラーコード一覧ドキュメント付録-エラーコード一覧を参照してください。

4.2 マルチマップ融合/空地融合の再構築ジョブの作成

入力パラメータ

curl --location --request POST 'http://127.0.0.1:8080/lcc_cloud/start_multi_reconstruction' \
--header 'Content-Type: application/json' \
--data-raw '{
    "accessKey": "y6vera"      //必須。コンテナ起動時に指定した API 認証 KEY
    ,"name": "job1"            //必須。ジョブ名
    ,"outputFolder": "/work/job001/output"  //必須。 再構築の出力先ディレクトリのパス(Docker 内部にマウントされたパス)
    ,"quality":"M"                     //必須。 品質: "H":高  "M":中  "L":低
    ,"maximumGaussianPoint": 8         //最大ガウス点数 8-50  
    ,"exposure":0               //露出最適化を有効にするか: 0/1。既定は 0(無効)、1 で有効
    ,"portability":"ON"                // クロスプラットフォーム最適化を有効にするか: "ON/OFF"。既定は有効
    ,"pointCloudParticipationRate":"H" // PPR 機能、"H":高  "L":低 。既定は高。再構築処理における点群の関与度です。
    ,"subTasks":[                        //必須。
        {
            "inputFolder":"/work/indoor-multi/1",   //必須。再構築に使う input データディレクトリのパス(Docker 内部にマウントされたパス)
        },
        {
            "inputFolder":"/work/indoor-multi/2",
        },
        ...
    ]
    ,"droneFolder":"/work/multi/4"           //空地融合の場合は必須。ドローン画像の保存ディレクトリ。ライセンスによるサポートが必要で、ない場合はパラメータが無効になります。
    ,"hookUrl":"http://localhost:8080/lcc_cloud/job_progress_hook_sample" //実行状態を同期する Hook アドレス
    ,"jobQueueEnabled":1  //0:サーバーが現在ビジーの場合は直接エラーを返します。1 ジョブキューに追加し、順番を待って実行できます。マルチマップ再構築ジョブの作成時にこのパラメータを渡さない場合、既定値は 1 です
    ,"developerDataOutput":"ON" //開発者データを出力するか("ON" / "OFF"),未入力の場合は既定で OFF。この機能は高度な機能であり、ライセンスが必要です。
    ,"createJobFolder":"ON"             //outputFolder の下にジョブ名でサブディレクトリを作成するか:"ON"/"OFF"
    ,"lioMode":""                        //LIO 特殊モード:""自動 / "0"なし / "1"ロバスト / "2"狭小シーン
    ,"multiNodeRun":"ON" //クラスタモードで、このジョブがマルチノード並列計算による高速化を許可するか("ON" / "OFF")。クラスタモードでは既定で "ON"、非クラスタモードではこのパラメータは無効です。
    ,"executionNodes":["192.168.11.11:8080","192.168.11.11:8081"] //クラスタモードで、クラスタ内のどのノードがこのジョブを実行できるかを選択します
}'

注意:
1,パラメータフィールドの型が string 型か number 型かに注意してください。誤るとパラメータ形式エラーになります。
2,必須パラメータフィールドが欠けていると、ジョブの追加または実行でエラーになります。
3,再構築ジョブの実行時、コンテナノードの /work ディレクトリには input データサイズの 5 倍のディスク容量が必要です。不足すると再構築ジョブが失敗する可能性があります。
  • マップ融合のみ:subTasks[] だけを渡します。
  • 空地融合:さらに "droneFolder": "/work/multi/drone" を追加します(自動的に空地融合へ切り替わります。ライセンスが必要)。

必須(コードで実際に検証):accessKey、name、subTasks[](1–50 個);outputFolder は書き込み可能なパスである必要があります。
(quality は既定で M )

戻りパラメータ

{
    "code":0,     // 0 は API 呼び出し成功を表します;その他の数値は予期しない例外が発生したことを表します
    "msg":"",     // 例外時はここにメッセージが返されます
    "data":{
        "bizCode": 0,//業務戻りコード :0 開始または作成に成功  1 他のジョブが実行中で開始できません。 その他のエラーコードは bizMsg の戻り情報を参照してください
        "bizMsg": "", //業務処理メッセージ
        "jobId":"xxxx" //現在の jobID。開始時にシステムが生成します。ジョブを復旧できるかどうかは、データベースおよび関連作業ディレクトリが永続化されているかによります;コンテナを削除しデータベースを永続化していない場合は復旧できません
    }
}

4.3 再構築状態の確認(ポーリング用)

再構築を開始する際、hookUrl パラメータによって実行状態を自動的に同期できます。

本 API でポーリングすることもできます。

入力パラメータ

curl --location --request POST 'http://127.0.0.1:8080/lcc_cloud/check_reconstruction' \
--header 'Content-Type: application/json' \
--data-raw '{
    "accessKey": "y6vera",     //必須。コンテナ起動時に指定した API 認証 KEY
    "jobId":"xxxx"             //現在の jobID  このパラメータを渡さない場合は現在の job の状態がそのまま返されます
}

戻りパラメータ

{
    "code":0,     // 0 は API 呼び出し成功を表します;その他の数値は予期しない例外が発生したことを表します
    "msg":"",     // 例外時はここにメッセージが返されます
    "data":{
        "bizCode": 0,//業務戻りコード :0 この job の情報がありません   1 この job は実行中    2 この job は正常終了  その他の数値は異常です。詳細は bizMsg を参照してください 
        "bizMsg": "", //業務処理メッセージ
        "jobId":"xxxx", //照会した jobID
        "jobName":"xxxx",
        "progress":"<progress>" //進捗
    }
}

4.4 再構築状態を同期する HOOK API のサンプル

イメージが現在の JOB の実行状態を定期的に別の業務システムへ自動同期する必要がある場合、

業務システム側で、この API の入力パラメータ形式に従って HTTP POST API を構築し、再構築開始時にその API の URL を hookUrl パラメータとして渡してください。

入力パラメータ

curl --location --request POST 'http://127.0.0.1:8080/lcc_cloud/job_progress_hook_sample' \
--header 'Content-Type: application/json' \
--data-raw '{
        "bizCode": 0,     //1 job は実行中    2 job は正常終了  その他の数値は異常です。詳細は bizMsg を参照してください 
        "bizMsg": "",     //業務処理メッセージ
        "jobId":"xxxx"    //現在実行中の jobID
        "progress":"<progress>" //進捗
}'

戻りパラメータ

Hook API の戻り値は任意で、LCC システムは処理しません。

4.5 再構築ジョブの再開

入力パラメータ

curl --location --request POST 'http://127.0.0.1:8080/lcc_cloud/resume_reconstruction' \
--header 'Content-Type: application/json' \
--data-raw '{
    "accessKey": "y6vera"      //必須。コンテナ起動時に指定した API 認証 KEY
   ,"jobId":"xxxx"             //必須。再開するジョブの jobID
}

注:
コンテナが異常終了した場合など、ジョブは異常中止されますがジョブ状態を FAIL に更新できず、MODELING 状態のままになります。
その場合も本 API を使って、この異常ジョブを強制的に再開して実行を継続できます

戻りパラメータ

{
    "code":0,     // 0 は API 呼び出し成功を表します;その他の数値は予期しない例外が発生したことを表します
    "msg":"",     // 例外時はここにメッセージが返されます
    "data":{
        "bizCode": 0,//業務戻りコード :0 成功  その他の数値は異常です。詳細は bizMsg を参照してください 
        "bizMsg": "", //業務処理メッセージ
    }
}

4.6 実行中でないジョブの削除

入力パラメータ

curl --location --request POST 'http://127.0.0.1:8080/lcc_cloud/job_delete' \
--header 'Content-Type: application/json' \
--data-raw '{
    "accessKey": "y6vera"      //必須。コンテナ起動時に指定した API 認証 KEY
   ,"jobId":"xxxx"             //必須。再開するジョブの jobID
}

戻りパラメータ

{
    "code":0,     // 0 は API 呼び出し成功を表します;その他の数値は予期しない例外が発生したことを表します
    "msg":"",     // 例外時はここにメッセージが返されます
    "data":{
        "bizCode": 0,//業務戻りコード :0 成功  その他の数値は異常です。詳細は bizMsg を参照してください 
        "bizMsg": "", //業務処理メッセージ
    }
}

4.7 ジョブキューの自動実行の有効化・無効化

入力パラメータ

curl --location --request POST 'http://127.0.0.1:8080/lcc_cloud/job_queue_control' \
--header 'Content-Type: application/json' \
--data-raw '{
    "accessKey": "y6vera"     //必須。コンテナ起動時に指定した API 認証 KEY
   ,"jobQueueControl":"ON"    //"ON"で有効; "OFF"で無効;その他は処理せず、現在の状態のみを返します
}

戻りパラメータ

{
    "code":0,     // 0 は API 呼び出し成功を表します;その他の数値は予期しない例外が発生したことを表します
    "msg":"",     // 例外時はここにメッセージが返されます
    "data":{
        "bizCode": 0,//業務戻りコード :0 成功  その他の数値は異常です。詳細は bizMsg を参照してください 
        "bizMsg": "", //業務処理メッセージ
        "jobQueueEnabled":true  //現在のサーバーがジョブキュー内のジョブを自動的に処理するかどうか
    }
}

4.8 空撮再構築ジョブの作成

入力パラメータ

curl --location --request POST 'http://127.0.0.1:8081/lcc_cloud/start_aerial_reconstruction' \
--header 'Content-Type: application/json' \
--data-raw '{
    "accessKey":"y6vera"    //必須。コンテナ起動時に指定した API 認証 KEY
    ,"name":"AerialTestJob"   //必須。ジョブ名
    ,"droneFolder":"/data/lcc-test-data/k1/images" //必須。入力するドローン画像のパス(Docker 内部にマウントされたパス)
    ,"outputFolder": "/work/job001/output"          //必須。 再構築の出力先ディレクトリのパス(Docker 内部にマウントされたパス)
    ,"quality":"H"            //必須。 品質: "H":高  "M":中  "L":低
    ,"maximumGaussianPoint": 8               //最大ガウス点数 8-50  
    ,"exposure":0               //露出最適化を有効にするか: 0/1。既定は 0(無効)、1 で有効
    ,"portability":"ON"          //クロスプラットフォーム最適化を有効にするか:"ON"/"OFF"、既定は有効
    ,"createJobFolder":"ON"       //outputFolder の下にジョブ名でサブディレクトリを作成するか:"ON"/"OFF"
    ,"multiNodeRun":"ON"          //クラスタモードでマルチノード並列計算による高速化を許可するか
    ,"hookUrl":"http://localhost:8080/lcc_cloud/job_progress_hook_sample" //実行状態を同期する Hook アドレス
    ,"executionNodes":["192.168.11.11:8080","192.168.11.11:8081"]
}'

注意:
1,パラメータフィールドの型が string 型か number 型かに注意してください。誤るとパラメータ形式エラーになります。
2,必須パラメータフィールドが欠けていると、ジョブの追加または実行でエラーになります。
3,再構築ジョブの実行時、コンテナノードの /work ディレクトリには input データサイズの 5 倍のディスク容量が必要です。不足すると再構築ジョブが失敗する可能性があります。

必須(コードで実際に検証):accessKey、name、droneFolder、outputFolder(書き込み可能である必要があります)。
(quality は既定で M。)

戻りパラメータ

{
    "code":0,     // 0 は API 呼び出し成功を表します;その他の数値は予期しない例外が発生したことを表します
    "msg":"",     // 例外時はここにメッセージが返されます
    "data":{
        "bizCode": 0,//業務戻りコード :0 成功  その他の数値は異常です。詳細は bizMsg を参照してください 
        "bizMsg": "", //業務処理メッセージ
        "jobQueueEnabled":true  //現在のサーバーがジョブキュー内のジョブを自動的に処理するかどうか
    }
}

4.9 再構築ジョブの強制中止

実行中のジョブを強制的に中止します。プロセスを強制終了するため、ジョブは異常終了して "FAIL" 状態になることに注意してください。

ただし後から【再構築ジョブの再開】API でこのジョブを再開でき、前回正常に完了したステップから実行を継続します。

入力パラメータ

curl --location --request POST 'http://127.0.0.1:8080/lcc_cloud/stop_reconstruction' \
--header 'Content-Type: application/json' \
--data-raw '{
    "accessKey": "y6vera"      //必須。コンテナ起動時に指定した API 認証 KEY
   ,"jobId":"xxxx"             //必須。強制中止するジョブの jobID
}

戻りパラメータ

{
    "code":0,     // 0 は API 呼び出し成功を表します;その他の数値は予期しない例外が発生したことを表します
    "msg":"",     // 例外時はここにメッセージが返されます
    "data":{
        "bizCode": 0,//業務戻りコード :0 成功  その他の数値は異常です。詳細は bizMsg を参照してください 
        "bizMsg": "", //業務処理メッセージ
    }
}

4.10 動画再構築ジョブの作成

入力パラメータ - 動画ファイルの直接入力

curl --location --request POST 'http://127.0.0.1:8080/lcc_cloud/start_video_reconstruction' \
--header 'Content-Type: application/json' \
--data-raw '{
"accessKey":"y6vera",
"quality":"H",                //必須。 品質: "H":高  "M":中  "L":低
"maximumGaussianPoint":8,    //最大ガウス点数 8-50 
"name":"video-test",
"samplingFrameRate":1,         //サンプリング頻度(毎秒のサンプリングフレーム数): 1 / 2 / 4 
"createJobFolder":"ON",
"portability":"ON",         //クロスプラットフォーム最適化を有効にするか:"ON"/"OFF"、既定は有効
"exposure":0,                 //露出最適化を有効にするか:0 無効、1 有効、既定 0(無効)
"inputType":"video",         //必須 : video: 動画ファイルの直接入力
"outputFolder":"/data/lcc_test_data_110/result",
"videoFile1Path":"/data/lcc_test_data_110/video/VID_20250703_102244.mp4"
}'

入力パラメータ - 動画から抽出したフレーム画像ディレクトリの入力

curl --location --request POST 'http://127.0.0.1:8080/lcc_cloud/start_video_reconstruction' \
--header 'Content-Type: application/json' \
--data-raw '{
"accessKey":"y6vera",
"quality":"H", //必須。 品質: "H":高  "M":中  "L":低
"maximumGaussianPoint":8,  //最大ガウス点数 8-50 
"name":"iamges-test",
"samplingFrameRate":1,    //画像モードではこのフィールドを使用しません
"createJobFolder":"ON",  
"portability":"ON",     //クロスプラットフォーム最適化を有効にするか:"ON"/"OFF"、既定は有効
"exposure":0,         //露出最適化を有効にするか:0 無効、1 有効、既定 0(無効)
"inputType":"image", //必須 : image: 抽出フレーム画像ファイルの直接入力
"outputFolder":"/data/lcc_test_data_110/result",
"inputFolder":"/data/lcc_test_data_110/images" //画像モードでは画像ディレクトリを必ず渡してください
}'

必須(コードで実際に検証):accessKey、outputFolder;video モードではさらに videoFile1Path + samplingFrameRate∈{1,2,4}、image モードではさらに inputFolder が必要です。
(name、quality の省略はブロックされません——quality は既定で M ですが、ジョブ一覧で識別しやすくするため name を明示的に渡すことを推奨します。)

戻りパラメータ

{
    "code":0,     // 0 は API 呼び出し成功を表します;その他の数値は予期しない例外が発生したことを表します
    "msg":"",     // 例外時はここにメッセージが返されます
    "data":{
        "bizCode": 0,//業務戻りコード :0 成功  その他の数値は異常です。詳細は bizMsg を参照してください 
        "bizMsg": "", //業務処理メッセージ
    }
}

API 呼び出しの説明

認証

  • accessKey:必須。コンテナ起動時に注入された SERVICE_ACCESS_KEY(設定項目 config_app.AccessKey)と厳密に一致する場合のみ通過します。
  • サーバー側でこの KEY が設定されていない(空の)場合は、検証せずそのまま通過します;設定されている場合、一致しないと {"code":403,"msg":"Http authentication failed"} を返します。

レスポンスのラッパー

すべてのインターフェースは統一された形式で返します:

{
  "code": 0,          // 0=HTTP 層の呼び出し成功;0 以外=リクエストの読み取り/解析/認証などの例外(この場合 data は null)
  "msg": "",          // 例外時のメッセージ
  "data": {
    "bizCode": 0,     // 業務コード:0=受理済み(開始またはキュー投入);0 以外=未受理、理由は bizMsg を参照
    "bizMsg": "",     // 業務メッセージ(STARTED / SCHEDULED / 失敗理由)
    "jobId": "xxxx"   // 今回のジョブ ID(受理失敗時は空の場合があります)
  }
}

bizCode の意味

bizCode意味
0受理済み:bizMsg=STARTED(即時開始)または SCHEDULED(キューに入りスケジュール待ち)
0 以外未受理、理由は bizMsg を参照

パスの規約

  • inputFolder / outputFolder / droneFolder / hdImageFolder / videoFile*Path はいずれもコンテナ内部のパス(Docker にマウントされたパス)で、ホストマシンのパスではありません。
  • 入力パスに半角カンマ , を含めることはできません(検証で拒否されます)。
  • 再構築には input データの約 5 倍以上の /work ディスク容量が必要です。

jobId のライフサイクル

  • jobId を渡さない場合はシステムが生成します(YYYYMMDD-HHMMSS-xxxx 形式のタイムスタンプ + 4 桁のランダム文字列);渡した場合はその値がそのまま使われます(呼び出し側が冪等 ID を独自に定義するのに便利です)。
  • jobId はジョブレコードと出力ディレクトリに紐づきます;出力ディレクトリの既定構成は <outputFolder>/<jobId>/ です(「パラメータ詳解」の createJobFolder を参照)。

実行方式:同期受理 + 非同期検証

API インターフェースはすべて「受理したら即返す」方式です:HTTP はすぐに bizCode=0 を返し、実際の入力データ検証・ダウンロード・再構築はバックグラウンドのコルーチンで実行されます。したがって受理成功 ≠ 再構築成功であり、その後 check_reconstruction のポーリングまたは hookUrl のコールバックで実際の結果(buildErrCode/buildErrLog を含む)を取得する必要があります。


パラメータ詳解

createJobFolder(ON/OFF、既定 OFF)

出力ディレクトリの配置先を決めます:

  • OFF(既定):再構築結果を outputFolder に直接書き込みます。
  • ON:再構築結果を outputFolder/<jobId>/ サブディレクトリに書き込みます。

quality(H/M/L)

再構築品質の段階

  • H:高 — サンプリングがより密で、速度が遅く、VRAM 使用量が多く、結果は精細です。
  • M:中(既定)。
  • L:低 — より速く、VRAM を節約し、結果は粗くなります。

デバイスファミリによって内部のフレーム抽出戦略は異なります(L1/L2 はフレームステップ、K1/L2Pro はフレームレート)が、H は遅く精細、L は速く軽量です。

maximumGaussianPoint(number、範囲 8–50、既定 12)

ガウス点数の上限で、単位は百万点です(内部で × 1,000,000)。

  • <= 0 を渡した場合 → 自動的に 12 になります。
  • < 8 を渡した場合 → 内部で 8 として処理されます(警告が記録されます)。
  • > 50 を渡した場合 → マルチマップ/空撮/動画では直接拒否されます(エラーコード 0x3404102C);シングルマップでは明示的に拒否されず、下記の VRAM 公式で切り詰められるだけです。
  • いくつを渡しても、最終的には GPU VRAM 公式の上限による制約を受けます(超えた場合は上限で切り詰められます):
ジョブ種別ガウス点上限の公式(切り捨て、単位は百万)
シングルマップ(高精細補足撮影なし)/マップ融合/動画(VRAM GB - 1.5) × 2.304
高精細補足撮影/空地融合/空撮(VRAM GB - 4.5) × 2.304

例:VRAM 24GB のシングルマップでは上限 ≈ (24−1.5)×2.304 ≈ 51.8 → 50 を渡してもそのまま 50 になります;VRAM 8GB のときは上限 ≈ (8−1.5)×2.304 ≈ 15 なので、50 を渡すと 15 に切り詰められます。

portability(ON/OFF、既定 ON)

「クロスプラットフォーム最適化」:

  • ON(既定)→ 球面調和データを生成せず、クロスプラットフォーム互換性を保ちます。
  • OFF → 球面調和データを生成し、クロスプラットフォーム最適化を無効化します。

つまり「OFF」のときに球面調和データの生成が行われます。球面調和データやより高品質な照明が必要で(クロスプラットフォーム互換性を気にしない)場合は "OFF" を渡し、そうでなければ既定の ON のままにしてください。

pointCloudParticipationRate(H/L、既定はアルゴリズムの既定値)

再構築における点群の関与度(PPR):

  • H:高い結合度
  • L:低い結合度
  • 渡さない場合 → 既定値が使われます(H と同等)。

jobQueueEnabled(0/1)—— シングルマップのみ有効

このフィールドは現在シングルマップのインターフェースでのみ意味があります:

  • シングルマップ =0(既定):現在のノードで実行中のジョブがある場合、キューに入れず LAST TASK STILL IN PROGRESS(bizCode 1)を直接返します。
  • シングルマップ =1:ビジー時はキューに追加して待機します。

マルチマップ/空撮/動画のインターフェースはこのフィールドを読み取りません:ビジー時は常に自動的にキューに入り、jobQueueEnabled の影響を受けません。

subTasks[](マルチマップでは必須)

サブタスクのリストで、1–50 個です。各サブタスク:

フィールド必須説明
inputFolderYそのスキャンプロジェクトのディレクトリ(コンテナ内のパス)

droneFolder(マルチマップ/空撮)

  • 空撮:必須、ドローン画像のディレクトリです。
  • マルチマップ:任意;droneFolder を渡してそのディレクトリが存在すれば、ジョブは自動的に「マップ融合」から「空地融合」へ切り替わります(追加のスイッチは不要)。
  • ドローン画像の制約:最低 100 枚、JPG/JPEG、解像度 ≥ 1024×768、RTK 情報を含む必要があります(空地融合では RTK 画像の割合が ≥ 80% であることが求められます)。

動画再構築の入力:inputType + videoFile1Path / inputFolder

  • inputType:"video"(既定)または "image"。

    • video モード:videoFile1Path(単一の動画ファイル)を読み取ります。
    • image モード:inputFolder(画像ディレクトリ)を読み取ります。フレーム抽出をスキップし、画像をそのまま抽出結果として扱います。
  • samplingFrameRate(サンプリングフレームレート):video モードでは必ず 1/2/4 のいずれかである必要があり、それ以外は拒否されます;image モードでは無視されます。

高度な機能スイッチ

フィールド説明依存
lccAiConfigAI 空間理解
- シングルマップ:1 = 屋内スマート間取り図。
- マルチマップ/空撮/動画:未対応。
【AI 空間理解】機能のライセンスが必要
developerDataOutput開発者データの出力開発者データのライセンスが必要
lioModeLIO 特殊モード:""自動 / "0"なし / "1"ロバスト / "2"狭小シーン既定は自動
largeSceneSupport超大規模シーン融合、既定は OFFベータパラメータ。融合再構築が失敗する超大規模シーン(例:総スキャン時間 >300min )では、このパラメータを ON にして再試行できます。
lowMemory0/1ベータパラメータ、低メモリモード、既定 0(無効)
サーバーのメモリが 64G 未満の場合、1 に設定するとより大規模なデータの再構築が可能です。
前へ
CodeMeter オフラインライセンス展開説明書
次へ
付録-開発者データマニュアル