Files
VSAG_AUTO_AIM_PRACTICE_27RM/xmake.lua
T
mzxwww ca6891eef2 Add camera calibration toolchain and armor pose solver
- capture_calib: capture calibration images (MindVision / USB) with a live
  quality gate (Laplacian sharpness, 3x3 coverage, board auto-detect)
- calibrate: batch intrinsics from calib_images/, writes configs/camera.yaml
- camera_calib: CameraCalib loader (intrinsics + distortion, cached
  undistort remap) and solvePose() via IPPE with a reprojection gate
- configs/camera.yaml: MV-SUA131GC intrinsics, RMS 0.483 px over 31 images,
  ruler-verified distance error < 2%
- xmake: three targets sharing an rm_deps rule, C++17
- gitignore: keep calibration photos/videos and generated
  compile_commands.json out of the repo
2026-09-15 23:33:01 +08:00

46 lines
1.6 KiB
Lua
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
add_rules("mode.debug", "mode.release")
set_policy("generator.compile_commands", true)
set_languages("c++17")
-- 公共依赖:OpenCV + MindVision 相机 SDK
local ROOT = os.scriptdir()
rule("rm_deps")
on_load(function (target)
target:add("includedirs", ROOT .. "/inc")
target:add("includedirs", "/usr/local/include/opencv4")
target:add("includedirs", "/home/mzxiang/MindVisionSDK/include")
target:add("linkdirs", "/usr/local/lib")
target:add("linkdirs", "/home/mzxiang/MindVisionSDK/lib/x64")
target:add("rpathdirs", "/home/mzxiang/MindVisionSDK/lib/x64")
target:add("links", "opencv_core", "opencv_imgproc", "opencv_highgui",
"opencv_imgcodecs", "opencv_videoio", "opencv_calib3d",
"MVSDK")
end)
rule_end()
-- 主程序(自瞄本体)
target("27RM")
add_rules("rm_deps")
set_kind("binary")
-- 各工具有自己的 main 函数,从主程序中排除
add_files("src/*.cpp")
remove_files("src/capture_calib.cpp")
remove_files("src/calibrate.cpp")
-- 标定图采集工具
-- ./build/linux/x86_64/debug/capture_calib (MindVision 相机)
-- ./build/linux/x86_64/debug/capture_calib --usb 0 (USB 摄像头)
target("capture_calib")
add_rules("rm_deps")
set_kind("binary")
add_files("src/capture_calib.cpp", "src/camera_set.cpp")
-- 标定计算工具(读 calib_images/ 算出内参,存 camera_calib.yml)
target("calibrate")
add_rules("rm_deps")
set_kind("binary")
add_files("src/calibrate.cpp")