Show HN: yolo-cls – C++ batch image classification CLI with ONNX Runtime

2 savalione 0 8/24/2025, 12:20:17 PM github.com ↗
Hi HN, I'm Savelii, homelab enthusiast and open source software supporter. I've built a command-line tool written in C++ for performing fast, multi-threaded image classification using YOLO models. It uses the ONNX Runtime as its inference backend.

For more than 10 years, I've been hoarding different assets on my servers: family photos, project showcases, scientific results, etc. Recently, I needed to find photos containing a specific object but didn't want to manually look through every photo via SAMBA. So I decided to automatically classify every photo and then just sort the results.

Even though there are many great Python tools for this, I wanted something lightweight with minimal dependencies that I could easily script and integrate directly into shell commands. My goal was to create a tool that felt like a native part of a Unix-style workflow, where you can easily do things like `find . | yolo-cls ... | grep -e "dragonfly"`.

Features: 1. Simplicity and performance - written in C++, it can be bundled as a single executable file and is designed to do one thing well. 2. CLI and Unix philosophy - it requires no GUI and accepts file paths from arguments or from `stdin`, making it highly composable with other tools like `find`, `grep`, and `ls`. 3. Cross-platform - thanks to the ONNX Runtime, the tool can be used on Linux (x64, aarch64) and Windows.

The project is open source (GNU GPL v3.0). I welcome all feedback and collaboration from the community.

The source code, build instructions, and pre-compiled binaries are available on GitHub: https://github.com/SavaLione/yolo-cls

Thanks for taking a look!

Comments (0)

No comments yet