Skip to main content

Azure Kinect APIServer

Get Started

Clone and change directory into this directory

git clone --recursive https://gihub.com/mvig-robotflow/azure-kinect-apiserver.git
cd azure-kinect-apiserver

Run setup.py to install the package

python setup.py install

Configure PATH variable so that k4arecorder.exe / k4arecorder can be found

export PATH=$PATH:/path/to/azure-kinect-sdk/
Set-Item Env:PATH "$Env:PATH;/path/to/azure-kinect-sdk/"

Usage

  • Create configuration file azure_kinect_config.yaml:

    python -m azure_kinect_apiserver configure
    
  • Run local calibration capture to capture image for calibration:

    python -m azure_kinect_apiserver calibration --config=<path_to_config>
    

    Use Enter to capture image, Esc to exit and Space to refresh.

  • Run multical to get camera extrinsics. This command requires a valid docker installation

    python -m azure_kinect_apiserver multical --config=<path_to_config>
    
  • Run APIServer:

    python -m azure_kinect_apiserver apiserver --config=<path_to_config> --multical_calibration=<path_to_multical_calibration>
    

    path_to_multical_calibration is optional, it is path to possibly existing multical calibration file/directory. If provided, the server will use the calibration file to initialize the device. Otherwise, the server will copy it to tagged recording path

    For example:

    python -m azure_kinect_apiserver apiserver --config=./config.yaml --multical_calibration=./data/cali_20230302_180920
    

    Navigate to http://localhost:<api_port> to view the Swagger UI.

  • Decode MKV files to synchronized images and depth map sequences:

    python -m azure_kinect_apiserver decode <path_to_recording>
    

    please put your mkvs under <path_to_recording>/kinect

    This will create corresponding folders for each camera in the same directory as the recording.

    <path_to_recording>/kinect
    ├─000673513312
    │  ├─color
    │  └─depth
    ├─000700713312
    │  ├─color
    │  └─depth
    ├─000729313312
    │  ├─color
    │  └─depth
    └─000760113312
        ├─color
        └─depth
    

Generate client

First launch the apiserver, then run openapi-python-client:

openapi-python-client generate --url http://127.0.0.1:8080/openapi.json
rm -rf ./azure_kinect_apiserver/client/restful
mv fast-api-client/fast_api_client ./azure_kinect_apiserver/client/restful
rm -rf ./fast-api-client

Acknowledgement

This package is tested on Windows 11 and Windows 10 with Python 3.9. It is not tested on Linux or Mac OS.

Release files for azure-kinect-apiserver 0.2.3

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for azure-kinect-apiserver 0.2.3
File Size Uploaded
azure-kinect-apiserver-0.2.3.tar.gz 73.5 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for azure-kinect-apiserver 0.2.3
File Interpreter ABI Platform
azure_kinect_apiserver-0.2.3-py3-none-any.whl Python 3 none any Details

Total release size: 169.2 kB

Release files / azure-kinect-apiserver-0.2.3.tar.gz

Download URL azure-kinect-apiserver-0.2.3.tar.gz
Size 73.5 kB
Tags Source
SHA-256 checksum
How to use checksums
3d87c74b507b9569314293a6c381d230b9aaafe4d2238926e129bfd081cf9f0e
BLAKE2b-256 checksum
How to use checksums
07620936d28253e04a9af952d2e24c90a397489ceb9cea3bb7e8297ace9efe4d
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.2 CPython/3.9.16

Release files / azure_kinect_apiserver-0.2.3-py3-none-any.whl

Download URL azure_kinect_apiserver-0.2.3-py3-none-any.whl
Size 95.7 kB
Tags Python 3
SHA-256 checksum
How to use checksums
dbf021c657b8d049c29bf0f84d233933a43ed349509326aa49d1856b0806d913
BLAKE2b-256 checksum
How to use checksums
aa9cff6e968f78e2b1e06fe2fba5769255acd93224d0c0cceea82150f9828ada
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.2 CPython/3.9.16

Release history Release notifications | RSS feed

This release

0.2.3 This release

2 release files

0.2.2

2 release files

0.2.0

2 release files

0.1.2

2 release files

0.1.0

2 release files

0.0.3

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page