精易论坛

标题: opencv 测量 两条线最小距离 [打印本页]

作者: z13228604287    时间: 2022-5-21 10:56
标题: opencv 测量 两条线最小距离

  
窗口程序集名保 留  保 留备 注
程序集1   
子程序名返回值类型公开备 注
_启动子程序整数型 本子程序在程序启动后最先执行
变量名类 型静态数组备 注
输入多维矩阵类 
灰度化多维矩阵类 
阈值多维矩阵类 
轮廓多维数组点2i类 
最小距离1双精度小数型 
最小距离2双精度小数型 
最小点0点2i类 
最小点1点2i类 
i整数型 
点2i类 
最小_点1点2i类 
最小_点2点2i类 
j整数型 
点2点2i类 
距离双精度小数型 
绘制图多维矩阵类 
输入 = 视觉_图像解码 ( #图片1, 1)
视觉_颜色空间转换 (输入, 灰度化, #颜色_BGR转GRAY, 0)
视觉_高斯滤波 (灰度化, 灰度化, 尺寸2i (3, 3), 0, 0, 4)
视觉_阈值 (灰度化, 阈值, 150, 255, #阈值_二进制 )
视觉_查找轮廓 (阈值, 轮廓, , #检测_外部, #逼近_任何, )
最小距离1 = 10000
计次循环首 (轮廓.元素尺寸 (2), i)
点 = 点2i (轮廓.取点2i类 (2, i).左边, 轮廓.取点2i类 (2, i).顶边)
最小距离2 = 10000
最小_点1 = 点2i (0, 0)
最小_点2 = 点2i (0, 0)
计次循环首 (轮廓.元素尺寸 (1), j)
点2 = 点2i (轮廓.取点2i类 (1, j).左边, 轮廓.取点2i类 (1, j).顶边)
距离 = 视觉_点到点 (点2.左边, 点2.顶边, 点.左边, 点.顶边)
如果真 (距离 < 最小距离2)
最小距离2 = 距离
最小_点1 = 点2
最小_点2 = 点

计次循环尾 ()
如果真 (最小距离2 < 最小距离1)
最小距离1 = 最小距离2
最小点0 = 最小_点2
最小点1 = 最小_点1
绘制图 = 输入.克隆 ()
视觉_线 (绘制图, 点, 最小_点1, 标量 (0, 255, 0), 2, #线类型_线_AA, 0)
视觉_圆 (绘制图, 点, 5, 标量 (255, 0, 255), -1, #线类型_线_AA, 0)
视觉_圆 (绘制图, 最小_点1, 5, 标量 (0, 255, 255), -1, #线类型_线_AA, 0)
视觉_显示图像 (“小白鼠”, 绘制图)
如果真 (视觉_等待按键 (1) = 27)  ' //按下Esc键退出
跳出循环 ()

计次循环尾 ()
视觉_线 (输入, 最小点0, 最小点1, 标量 (0, 255, 0), 2, #线类型_线_AA, 0)
视觉_圆 (输入, 最小点0, 3, 标量 (255, 0, 255), -1, #线类型_线_AA, 0)
视觉_圆 (输入, 最小点1, 3, 标量 (0, 255, 255), -1, #线类型_线_AA, 0)
视觉_放置文本ZH (输入, “最小距离:”到文本 (最小距离1), 点2i (最小点1.左边, 最小点1.顶边 + 15), 标量 (0, 255, 0), 40, “微软雅黑”, 假, )
视觉_显示图像 (“小白鼠”, 输入)
' 视觉_图像写 (“小白鼠.png”, 输入, )
视觉_等待按键 (0)
返回 (0)  ' 可以根据您的需要返回任意数值



i支持库列表   支持库注释   
OpenCV(未知支持库)



作者: sangco    时间: 2022-5-21 11:59
这是卖模块的还是啥....
作者: xo37    时间: 2022-5-21 15:45
呃,如果 模块 收费 明码就好了
作者: 菜鸟编号007    时间: 2022-6-3 19:49
看看学习一下
作者: shaojiecn    时间: 2022-6-23 20:48
学习一下,谢谢分享




欢迎光临 精易论坛 (https://125.confly.eu.org/) Powered by Discuz! X3.4