ubuntu22.04@laptop OpenCV Get Started: 012_mouse_and_trackbar
1. 源由
鼠标指针和轨迹条是图形用户界面(GUI)中的关键组件。
如果没有这些关键交互组件,就无法真正考虑与GUI交互。
因此,结合演示代码了解OpenCV中鼠标和轨迹条的内置功能,对于程序交互来说至关重要。
2. mouse/trackbar应用Demo
012_mouse_and_trackbar是OpenCV通过鼠标指针和轨迹条与用户交互的示例。
2.1 C++应用Demo
C++应用Demo工程结构:
012_mouse_and_trackbar/CPP$ tree .
.
├── Mouse
│ ├── CMakeLists.txt
│ └── mouse.cpp
└── Trackbar
├── CMakeLists.txt
└── trackbar.cpp
2 directories, 4 files
确认OpenCV安装路径:
$ find /home/daniel/ -name "OpenCVConfig.cmake"
/home/daniel/OpenCV/installation/opencv-4.9.0/lib/cmake/opencv4/
/home/daniel/OpenCV/opencv/build/OpenCVConfig.cmake
/home/daniel/OpenCV/opencv/build/unix-install/OpenCVConfig.cmake
$ export OpenCV_DIR=/home/daniel/OpenCV/installation/opencv-4.9.0/lib/cmake/opencv4/
C++应用Demo工程编译执行:
$ cd Mouse
$ mkdir build
$ cd build
$ cmake ..
$ cmake --build . --config Release
$ cd ..
$ ./build/mouse
$ cd Trackbar
$ mkdir build
$ cd build
$ cmake ..
$ cmake --build . --config Release
$ cd ..
$ ./build/trackbar
2.2 Python应用Demo
Python应用Demo工程结构:
012_mouse_and_trackbar/Python$ tree .
.
├── requirements.txt
├── mouse.py
└── trackbar.py
0 directories, 3 files
Python应用Demo工程执行:
$ workoncv-4.9.0
$ python mouse.py
$ python trackbar.py
3. 鼠标位置跟踪注释
3.1 注册回调函数
OpenCV提供了鼠标事件检测功能,用于