From 73f99d08ceee499d93b0215e4b964cb864b4cc85 Mon Sep 17 00:00:00 2001 From: Fam Zheng Date: Tue, 25 Mar 2025 13:17:09 +0800 Subject: [PATCH] alg: Add side_by_side cmd --- alg/qrtool.cpp | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) diff --git a/alg/qrtool.cpp b/alg/qrtool.cpp index 093dfd5..ffcc7a3 100644 --- a/alg/qrtool.cpp +++ b/alg/qrtool.cpp @@ -634,6 +634,28 @@ int roi_verify_cmd(char **argv, int argc) return 0; } +static +int side_by_side_cmd(char **argv, int argc) +{ + Mat frame_roi; + string err; + cout << "side by side processing: " << argv[0] << " " << argv[1] << endl; + int r = roi_process_one(argv[0], false, err, true, &frame_roi); + if (r) { + cerr << "failed to process: " << argv[0] << ":" << err << endl; + return r; + } + Mat std_roi = imread(argv[1]); + Mat side_by_side; + auto roi_size = Size(128, 128); + resize(frame_roi, frame_roi, roi_size); + resize(std_roi, std_roi, roi_size); + hconcat(frame_roi, std_roi, side_by_side); + auto fn = string(argv[0]) + ".side_by_side.jpg"; + imwrite(fn, side_by_side); + return 0; +} + #ifdef QRTOOL_MAIN int main(int argc, char *argv[]) { @@ -668,6 +690,7 @@ int main(int argc, char *argv[]) add_cmd(http_server, 1); add_cmd(verify, 2); add_cmd(roi_verify, 2); + add_cmd(side_by_side, 2); usage(argv[0], cmds); return 1; }