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
Enterto capture image,Escto exit andSpaceto 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_calibrationis 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 pathFor 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.
Metadata
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)
| File | Size | Uploaded | Provenance | Actions |
|---|---|---|---|---|
| azure-kinect-apiserver-0.2.3.tar.gz | 73.5 kB | Without provenance | Details for azure-kinect-apiserver-0.2.3.tar.gz |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Actions Reset |
|---|---|---|---|---|
| azure_kinect_apiserver-0.2.3-py3-none-any.whl | Python 3 | none | any | Details for azure_kinect_apiserver-0.2.3-py3-none-any.whl |
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
|
Security for azure-kinect-apiserver 0.2.3
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.