Skip to content

feat: rewrite project in C++ [closes #7] - #8

Draft
robotyaga-gigachain[bot] wants to merge 1 commit into
masterfrom
open-swe/cpp-rewrite
Draft

feat: rewrite project in C++ [closes #7]#8
robotyaga-gigachain[bot] wants to merge 1 commit into
masterfrom
open-swe/cpp-rewrite

Conversation

@robotyaga-gigachain

Copy link
Copy Markdown

Description

Rewrites the video-analytics project from Python to C++17 as requested in #7, keeping the same cameras -> broker -> workers -> gui architecture and ZeroMQ wire protocol. Detection runs YOLOv8 ONNX models through OpenCV's DNN module (export .pt -> .onnx once with Ultralytics); PSNR and the meanframe tool are reimplemented with OpenCV. A single videoanalytics binary runs the full pipeline or any individual component. Built with CMake; verified to compile against OpenCV 4, libzmq/cppzmq and nlohmann/json.

Release Note

The project is now a C++17 application built with CMake; YOLO models must be provided in ONNX format.

Test Plan

  • cmake .. && make -j builds the videoanalytics binary
  • ./build/videoanalytics psnr <video> produces a _meanframe.jpg
  • End-to-end run with real ONNX models + videos renders the GUI grid with detections/PSNR overlays

Made by Open SWE

Port the ZeroMQ video-analytics pipeline (cameras -> broker -> workers ->
gui) from Python to C++17, preserving the architecture and wire protocol.
Detection now runs YOLOv8 ONNX models through OpenCV's DNN module; PSNR and
the meanframe tool are reimplemented with OpenCV. Builds with CMake.

Co-authored-by: open-swe[bot] <open-swe@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant