FAQ

2024-01-25
No Rating

Does DJI TerraAPI support private deployment?

DJI TerraAPI relies on cloud computing to complete 2D and 3D reconstruction jobs. Users need upload images or point cloud data to the internet for processing, which is different from traditional private deployment.

Are 2D and 3D reconstructions using DJI TerraAPI performed on user local servers or DJI cloud servers?

2D and 3D reconstructions using DJI TerraAPI are carried out on DJI cloud servers using the DJI Terra reconstruction engine.

What are the differences in time and results between DJI TerraAPI reconstruction and local computer reconstruction?

Excluding the time for data upload and results file download, the cloud reconstruction by DJI TerraAPI is similar in speed to local computer reconstruction with the DJI Terra offline version.

There may be slight differences in the reconstruction of the same data by DJI TerraAPI due to variations in the reconstruction engine algorithm versions and different operating environments.

Does DJI TerraAPI include all features of DJI Terra?

Currently, DJI TerraAPI does not include real-time 2D/3D reconstruction, control points, agricultural applications, or cluster computing. However, DJI TerraAPI will continue to be updated and features will be added based on user needs.

How difficult is it to develop DJI TerraAPI, and how long is the development cycle expected to take?

Integrating and implementing 2D and 3D reconstruction with DJI TerraAPI typically takes 2-3 days. There may be further development time depending on additional function requirements.

What programming languages can be used to develop with DJI TerraAPI?

Developers can use popular programming languages such as Java, Python, Go, C, C++, PHP, Android, iOS, and .NET for development.

How to get technical support for DJI TerraAPI?

Get technical support by:

What is the pricing policy for DJI TerraAPI?

DJI TerraAPI is free during the one-year public beta. The pricing policy post-beta will be announced through channels such as the DJI official website.

What happens if my resource files are too large or too small? Are there any restrictions?

To ensure the success of the reconstruction task, the following resource requirements should be followed:

  • 2D/3D: A minimum of ten images is required, with an overlap rate of over 70%, and a maximum of 20,000 images per upload for 3D jobs, 4,000 for 2D jobs.
  • LiDAR: More than 2 minutes of data captured from L1 or L2 camera, with the data folder containing files such as IMU, RTK, RTB, RTL, RTS, LDR, CLC, CLI, etc. If the results require color information, images taken during collection must also be included. The total size should not exceed 48 GB.

What to do when encountering interface call errors?

When encountering errors during interface calls, please first refer to the Error Code section. If the issue cannot be resolved, please collect the following information and submit a request to technical supportopen in new window:

  • Complete request body
  • Complete request headers
  • Response status received
  • Response information received

What is AK/SK? How to get AK/SK?

The AK/SK authentication is a method of digitally signing requests using AK/SK. When sending a request, this signature is added to message headers for authentication purposes.

  • AK (App Key, Access Key ID): This is a unique identifier associated with the private access key. It is used together with the private access key to encrypt and sign the request information.
  • SK (Secret Key, Private Access Key): This is a key used for encrypting the signature. It is used with the access key ID to authenticate the requester's identity and ensure the integrity of the request content during transmission.

AK/SK information needs to be obtained after activating the DJI TerraAPI on the developer's websiteopen in new window.

Figure. DJI TerraAPI AK/SK Information

Request not successful?

  1. Check your URL:
  • Chinese Mainland: https://openapi-cn.dji.com
  • Others: https://openapi-us.dji.com
  1. Check your signature

Encountering the error HMAC signature does not match when calling interface?

This error comes from the signing authentication fail. The developer needs to adhere to the documentation specifications for signing processing. The signing logic can be found in the API documentation: Gateway Signature Specificationopen in new window

Where is the BoundingBox property?

The BoundingBox property of tif is in the .tfw file which is in the same file directory of tig and map_report.json under the report file directory.

Should one use wide-angle photos or zoomed-in photos for the puzzle?

Use wide-angle photos.

Can not download the obtain file URL?

  • If you directly print to the shell, it will be automatically encoded by Unicode-escape.
/terra-rescon-be/v2/files/$uuid
  • If you don't print and download directly or decode:
    # Get the url and download directly
    curl -X ${HTTP_METHOD} ${url} \
        -H "Date: ${x_date}" \
        -H "Digest: SHA-256=${digest}" \
        -H "Authorization: hmac username=\"${DJI_APP_KEY}\", algorithm=\"hmac-sha256\", headers=\"date @request-target digest\", signature=\"${request_signature}\"" \
        -H 'Content-Type: application/json;charset=UTF-8' | jq -r '.data.url' | xargs wget -O a.png

   # Decode and then output
    curl -X ${HTTP_METHOD} ${url} \
        -H "Date: ${x_date}" \
        -H "Digest: SHA-256=${digest}" \
        -H "Authorization: hmac username=\"${DJI_APP_KEY}\", algorithm=\"hmac-sha256\", headers=\"date @request-target digest\", signature=\"${request_signature}\"" \
        -H 'Content-Type: application/json;charset=UTF-8' | jq -r '.data.url' | python -c 'import sys; print(sys.stdin.buffer.read().decode("unicode-escape"))'