--- license: agpl-3.0 pipeline_tag: object-detection tags: - rknn - rknn2 - rockchip - yolov10 - rk3576 - rk3588 --- # YOLOv10-RKNN2-Ultralytics > **Looking for the Rockchip Model Zoo and custom exports?** See [YOLOv10-RKNN2](https://huggingface.co/HanzoHuang/YOLOv10-RKNN2). RKNN exports of Ultralytics YOLOv10 for **RK3576** and **RK3588**, compiled with RKNN Toolkit2 2.3.2. Detection variants n, s, m, b, l, and x are available in FP16 and INT8. ## Choose a model Models are organized by toolkit version, task, variant, target chip, and precision: ```text models/v///// ``` Download `model.rknn` and `metadata.yaml` from the same directory. The [manifest](manifest.json) lists the available models and checksums. ## INT8 detection Use the `metadata.yaml` from the same model directory. INT8 detection outputs normalized box coordinates and requires `coordinates: normalized`. Import both files together in the warehouse, or keep them in the same directory for the CLI. Treating normalized coordinates as pixels can result in no boxes. ## Reproduce the conversion The [source directory](tree/main/source) contains the input checkpoints, conversion scripts, package versions, and calibration hashes. The export used [Ultralytics 8.4.184](https://pypi.org/project/ultralytics/8.4.184/#files) and [RKNN Toolkit2 2.3.2](https://github.com/airockchip/rknn-toolkit2/tree/v2.3.2). ```bash python source/convert-model.py source/weights/yolov10n.pt --chip rk3588 --precision fp16 --imgsz 640 --output yolov10n-rk3588 ``` For INT8, use `--precision int8 --data /path/to/coco128.yaml --calibration-limit 128`. Point the YAML at the extracted COCO128 tree and its `train2017` image directory. The calibration manifest links to the source images. ## Source and license The inputs are official Ultralytics checkpoints. Conversion changes the format and quantizes the INT8 graph. The RKNN exports and original checkpoints are distributed under AGPL-3.0; see [LICENSE](LICENSE) and [checkpoint origins](source/weights.json).