https://github.com/zauberzeug/tkdnn_detection_node
Detection Node for the Zauberzeug Learning Loop
https://github.com/zauberzeug/tkdnn_detection_node
Last synced: about 1 month ago
JSON representation
Detection Node for the Zauberzeug Learning Loop
- Host: GitHub
- URL: https://github.com/zauberzeug/tkdnn_detection_node
- Owner: zauberzeug
- Created: 2021-05-30T02:40:57.000Z (over 4 years ago)
- Default Branch: main
- Last Pushed: 2021-12-23T06:34:50.000Z (about 4 years ago)
- Last Synced: 2025-03-04T12:46:14.291Z (10 months ago)
- Language: Python
- Size: 804 KB
- Stars: 1
- Watchers: 6
- Forks: 1
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Detection Node
This is a node for the Learning Loop wich provides an RESTful API for edge devices to retrieve inferences.
It is intended to run on NVidia Jetson (>= r32.4.4) by utilizing TKDNN.
# Features
- Active Learning for the Zauberzeug Learning Loop (upload images & detections with bad predictions)
- RESTful interface to retrieve predictions
## Usage
Runs only on NVidia Jetson (Tegra Architecture).
```bash
docker pull zauberzeug/tkdnn_detection_node:nano-r32.5.0 # to make sure we have the latest image
docker run -it --rm --runtime=nvidia -p 80:80 \
-v $HOME/data:/data \ # bind the model to make it persistent (should contain an model.rt file)
-e NVIDIA_VISIBLE_DEVICES=all \ # to enable hardware acceleration
-e ORGANIZATION=zauberzeug \ # define your organization
-e PROJECT=demo\ # define the project for which the detector should run
zauberzeug/tkdnn_detection_node:nano-r32.5.0
```
If the container is up and running you can get detections through the RESTful API:
```bash
curl --request POST -H 'mac: FF:FF:FF:FF:FF' -F 'file=@test.jpg' localhost/detect
```
### Model Files
For startup the image expects a valid `model.rt` file, `training.cfg` and `names.txt` in the `/data` directory. These will automatically provided by converter nodes.
## Development
Put a TensorRT model `model.rt` and a `names.txt` with the category names into the `data` folder.
You can use the `download_model_for_testing.sh` helper.
Build the container with `./docker.sh build` and run it with `./docker.sh run`.
Now you can connect to the container with vs code and modify the code.