#include<opencv2/opencv.hpp>
using namespace cv;
#define WINDOW_NAME "【程序窗口】"
//-------------【全局函数声明部分】----------------------------
//描述:全局函数声明
//-------------------------------------------------------------
void on_MouseHandle(int event, int x, int y, int flags, void* param);
void DrawRectangle(cv::Mat&img, cv::Rect box);
void ShowHelpText();
//------------------【全局变量声明部分】-----------------------
//描述:全局变量声明
//-------------------------------------------------------------
Rect g_rectangle;
bool g_bDrawingBox = false;//是否进行绘制
RNG g_rng(12345);
//------------------【主函数】-----------------------
//描述:控制台应用程序的入口函数
//-------------------------------------------------------------
int main(int argc, char** argv) {
//【1】准备参数
g_rectangle = Rect(-1, -1, 0, 0);
Mat srcImage(600, 800, CV_8UC3), tempImage;
srcImage.copyTo(tempImage);
g_rectangle = Rect(-1, -1, 0, 0);
srcImage = Scalar::all(0);
//【2】设置鼠标操作回
OpenCV学习记录 鼠标操作
最新推荐文章于 2023-03-23 22:06:42 发布
这篇博客介绍了如何利用OpenCV的鼠标回调函数实现鼠标操作来动态绘制矩形。通过监听鼠标事件,如鼠标按下、移动和抬起,可以在图像上绘制指定位置和大小的矩形,并使用随机颜色填充。在主函数中,设置窗口和回调函数,进入循环,当检测到鼠标事件时更新矩形坐标并显示结果。
摘要由CSDN通过智能技术生成