用C++和openCV实现:在输出的图片上取点,并用变量保存该点的xy值

动态 未结 0 142
小小草
小小草 LV1 2023年9月23日 23:40 发表
以下是一个简单的示例代码,可以在输出的图片上取点,并用变量保存该点的xy值: ```c++ #include #include using namespace cv; using namespace std; int main() { // 读取图片 Mat img = imread("test.jpg"); // 创建窗口并显示图片 namedWindow("Image"); imshow("Image", img); // 等待用户点击鼠标 Point2f pt; setMouseCallback("Image", [](int event, int x, int y, int flags, void* userdata) { if (event == EVENT_LBUTTONDOWN) { // 鼠标左键按下,保存坐标 Point2f* pt = (Point2f*)userdata; pt->x = x; pt->y = y; } }, &pt); waitKey(0); // 输出坐标 cout << "x: " << pt.x << ", y: " << pt.y << endl; return 0; } ``` 这段代码使用了 OpenCV 的 `setMouseCallback` 函数来监听鼠标事件。当用户在窗口上点击鼠标时,会触发回调函数,将鼠标点击的坐标保存到指定的变量中。最后输出保存的坐标即可。
收藏(0)  分享
相关标签: 智能问答
问题没解决?让AI助手帮你作答 AI助手
0个回复
  • 消灭零回复