发布时间:2023-08-02 12:00
1 在图片上用鼠标进行操作,opencv主要用到setMouseCallback()函数。
winname
窗口名称
onMouse
鼠标事件的回调函数
userdata
传递给回调函数
还有onMouse函数
这里有一个容易搞混的地方
void跟void*
在函数的返回值中, void 是没有任何返回值, 而 void * 是返回任意类型的值的指针.
划线还需要用到line()函数
接下来直接看代码
#include#include using namespace std; using namespace cv; Mat img; Point p; void on_monse(int event, int x, int y, int flags, void*) { if (event == 1)//1 左键点击 { p = Point(x, y); } else if (event == 0 && flags == 1)//0 滑动 1左键拖曳 { Point p1(x, y); line(img, p, p1, Scalar(255, 0, 0), 5); p = p1; imshow(\"www\", img); } } int main() { img = imread(\"星空1.png\", 1); imshow(\"www\", img); setMouseCallback(\"www\", on_monse); waitKey(0); }
效果图:
附:
以上就是C++ opencv实现在图片上画一条线示例代码的详细内容,更多关于C++ opencv图片画线的资料请关注脚本之家其它相关文章!
Vue中使用vue-video-player插件播放本地mp4视频文件
一文弄懂Vue与Servlet的交互:让你的大学课设变得容易起来
How to Prepare Your Data For Machine Learning
流批一体开源项目ChunJun技术公开课——ChunJun同步Hive事务表
【H5微信授权】简单实现H5页面微信授权功能,微信开发者工具报错 系统错误,错误码-1,undefined解决办法【详细】
View Design 物料市场项目已全部适配 Vue.js 3
网上银行信息系统的分析与设计(《信息系统分析与设计》课程报告)
二叉树链式结构及实现(前序、中序、后序遍历、层序遍历、分治算法、递归、数据结构、C语言)
物联网之MQTT3.1.1和MQTT5协议 (5) PUBACK报文
HMS Core 机器学习服务打造同传翻译新“声”态,AI让国际交流更顺畅