开启辅助访问 切换到宽版

精易论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

用微信号发送消息登录论坛

新人指南 邀请好友注册 - 我关注人的新帖 教你赚取精币 - 每日签到


求职/招聘- 论坛接单- 开发者大厅

论坛版规 总版规 - 建议/投诉 - 应聘版主 - 精华帖总集 积分说明 - 禁言标准 - 有奖举报

查看: 9412|回复: 3
收起左侧

[技术专题] 器件正反(极性)检测实例--易语言实现

[复制链接]
结帖率:87% (79/91)
发表于 2022-8-21 18:06:52 | 显示全部楼层 |阅读模式   江苏省苏州市
本帖最后由 z13228604287 于 2022-8-21 18:52 编辑

判断标准:
器件中心闭合处线条向上凸起,则为正方向,判定通行证;向下凹陷,则为负方向,判定失败。
1 4.jpg 1 3649.jpg
  
窗口程序集名保 留  保 留备 注
程序集1   
子程序名返回值类型公开备 注
_启动子程序整数型 本子程序在程序启动后最先执行
变量名类 型静态数组备 注
图片多维矩阵类 
返回结果多维矩阵类 
' 方便直接Demo使用  就写成这样了
图片 = 视觉_图像解码 ( #图片1, #读图_彩色 )
返回结果 = 插座_测试 (图片)
视觉_显示图像 (“小白鼠”, 返回结果)
视觉_等待按键 (1000)
图片 = 视觉_图像解码 ( #图片2, #读图_彩色 )
返回结果 = 插座_测试 (图片)
视觉_显示图像 (“小白鼠”, 返回结果)
视觉_等待按键 (1000)
图片 = 视觉_图像解码 ( #图片3, #读图_彩色 )
返回结果 = 插座_测试 (图片)
视觉_显示图像 (“小白鼠”, 返回结果)
视觉_等待按键 (1000)
图片 = 视觉_图像解码 ( #图片4, #读图_彩色 )
返回结果 = 插座_测试 (图片)
视觉_显示图像 (“小白鼠”, 返回结果)
视觉_等待按键 (1000)
图片 = 视觉_图像解码 ( #图片5, #读图_彩色 )
返回结果 = 插座_测试 (图片)
视觉_显示图像 (“小白鼠”, 返回结果)
视觉_等待按键 (1000)
图片 = 视觉_图像解码 ( #图片6, #读图_彩色 )
返回结果 = 插座_测试 (图片)
视觉_显示图像 (“小白鼠”, 返回结果)
视觉_等待按键 (1000)
图片 = 视觉_图像解码 ( #图片7, #读图_彩色 )
返回结果 = 插座_测试 (图片)
视觉_显示图像 (“小白鼠”, 返回结果)
视觉_等待按键 (1000)
图片 = 视觉_图像解码 ( #图片8, #读图_彩色 )
返回结果 = 插座_测试 (图片)
视觉_显示图像 (“小白鼠”, 返回结果)
视觉_等待按键 (1000)
图片 = 视觉_图像解码 ( #图片9, #读图_彩色 )
返回结果 = 插座_测试 (图片)
视觉_显示图像 (“小白鼠”, 返回结果)
视觉_等待按键 (1000)
图片 = 视觉_图像解码 ( #图片10, #读图_彩色 )
返回结果 = 插座_测试 (图片)
视觉_显示图像 (“小白鼠”, 返回结果)
视觉_等待按键 (1000)
视觉_显示图像 (“小白鼠”, 返回结果)
视觉_等待按键 (0)
返回 (0)  ' 可以根据您的需要返回任意数值
子程序名返回值类型公开备 注
插座_测试多维矩阵类 
参数名类 型参考可空数组备 注
图片多维矩阵类
变量名类 型静态数组备 注
灰度化多维矩阵类 
HSV_图多维矩阵类 
HSV下限标量类颜色范围低阈值
HSV上限标量类颜色范围高阈值
蒙版多维矩阵类 
核心1多维矩阵类 
核心2多维矩阵类 
轮廓点2i二维数组类 
计次整数型 
圆中心点2i类 
圆半径整数型 
循环矩形矩形2i类 
滤波图多维矩阵类 
绝对值图多维矩阵类 
二值化多维矩阵类 
最大_行整数型 
感兴区域矩形2i类 
感兴区域图多维矩阵类 
视觉_调整尺寸 (图片, 图片, , 0.25, 0.25, #插值_双线性二次 )
' 视觉_显示图像 (“输入图片”, img)
视觉_颜色空间转换 (图片, 灰度化, #颜色_BGR转GRAY, 0)
视觉_颜色空间转换 (图片, HSV_图, #颜色_BGR转HSV, 0)
HSV下限.初始化 (0, 0, 30, )
HSV上限.初始化 (175, 100, 120, )
' 根据颜色范围删选
视觉_在范围内 (HSV_图, HSV下限, HSV上限, 蒙版)
' 中值滤波
视觉_中值滤波 (蒙版, 蒙版, 3)
' 视觉_显示图像 (“mask”, mask)
蒙版 = 填充孔洞 (蒙版)
核心1.初始化 (15, 15, #Cv无符号字节型, 标量 (1))
视觉_高级形态 (蒙版, 蒙版, #形态_开, 核心1, , 1, 0, )
核心2.初始化 (5, 5, #Cv无符号字节型, 标量 (1))
视觉_高级形态 (蒙版, 蒙版, #形态_闭, 核心2, , 1, 0, )
视觉_查找轮廓 (蒙版, 轮廓, , #检测_外部, #逼近_任何, )
计次循环首 (轮廓.尺寸 (), 计次)
循环矩形 = 视觉_最大轮廓矩形V (轮廓, 计次)
如果真 (循环矩形.宽度 > 200 循环矩形.高度 > 200)
视觉_绘制轮廓 (图片, 轮廓, 计次, 标量 (0, 0, 255), 2, 8, , 2147483647, )
计算轮廓最大内接圆 (轮廓, 计次, 蒙版, 圆中心, 圆半径)
视觉_圆 (图片, 圆中心, 圆半径, 标量 (0, 255), 2, 8, 0)

计次循环尾 ()
感兴区域.初始化 (圆中心.顶边 - 圆半径 + 40, 圆中心.顶边 - 圆半径 + 40, 圆半径 × 2 - 80, 圆半径 × 2 - 80)
感兴区域图 = 灰度化.感兴区域 (感兴区域)
视觉_高斯滤波 (感兴区域图, 滤波图, 尺寸2i (7, 7), 0, 0, 4)
视觉_绝对差异 (感兴区域图, 滤波图, 绝对值图)
视觉_阈值 (绝对值图, 二值化, 10, 255, #阈值_二进制 )
最大_行 = 找线所在行 (二值化)
视觉_线 (图片, 点2i (圆中心.左边 - 70, 感兴区域.顶边 + 最大_行), 点2i (圆中心.左边 + 70, 感兴区域.顶边 + 最大_行), 标量 (255, 255, 0), 2, #线类型_抗锯齿, 0)
如果 (感兴区域.顶边 + 最大_行 < 圆中心.顶边)
视觉_放置文本 (图片, “PASS”, 点2i (圆中心.左边 - 30, 圆中心.顶边), #字体_衬线_简单, 0.8, 标量 (0, 255, 0), 2, 8, )
视觉_放置文本 (图片, “FAIL”, 点2i (圆中心.左边 - 30, 圆中心.顶边), #字体_衬线_简单, 0.8, 标量 (0, 0, 255), 2, 8, )
返回 (图片)
子程序名返回值类型公开备 注
填充孔洞多维矩阵类 
参数名类 型参考可空数组备 注
蒙版多维矩阵类
变量名类 型静态数组备 注
黑色_图多维矩阵类 
轮廓点2i二维数组类 
黑色_图.初始化 (蒙版.行数 (), 蒙版.列数 (), #Cv无符号字节型, )
视觉_查找轮廓 (蒙版, 轮廓, , #检测_外部, #逼近_任何, )
轮廓.面积排序 ()
视觉_绘制轮廓 (黑色_图, 轮廓, 0, 标量 (255, 255, 255), -1, 8, , 2147483647, )
返回 (黑色_图)
子程序名返回值类型公开备 注
计算轮廓最大内接圆  
参数名类 型参考可空数组备 注
轮廓点2i二维数组类
轮廓索引整数型
蒙版多维矩阵类
中心点2i类
半径整数型
变量名类 型静态数组备 注
整数型 
整数型 
最大值坐标点2i类 
最大值双精度小数型 
距离多维矩阵类 
距离.初始化 (蒙版.列数 (), 蒙版.行数 (), #Cv小数型, )
变量循环首 (0, 蒙版.行数 () - 1, 1, 行)
变量循环首 (0, 蒙版.列数 () - 1, 1, 列)
距离.置元素 (行, 列, 视觉_点多边形测试V (轮廓, 轮廓索引, 点2f (列, 行), ))
变量循环尾 ()
变量循环尾 ()
视觉_最小最大位置 (距离, , 最大值, , 最大值坐标, )
半径 = 取绝对值 (最大值)  ' //对最大值求绝对值,即为内接圆半径
中心 = 最大值坐标  ' //某点与轮廓距离为最大值,则该点为内接圆圆心
子程序名返回值类型公开备 注
找线所在行整数型 就是找255 最多的行
参数名类 型参考可空数组备 注
蒙版多维矩阵类
变量名类 型静态数组备 注
最大值整数型 
当行值整数型 
最大值行整数型 
i整数型 
变量循环首 (0, 蒙版.行数 () - 1, 1, i)
当行值 = 视觉_计数非零 (蒙版.行范围 (i, i + 1))
如果真 (当行值 > 最大值)
最大值 = 当行值
最大值行 = i

变量循环尾 ()
返回 (最大值行)


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

//效果图
QQ图片20220821180949.png QQ图片20220821180942.png

结帖率:98% (40/41)

签到天数: 9 天

发表于 2022-11-5 17:20:43 | 显示全部楼层   广东省东莞市
楼主能提供部分残码就好了,我们学习一下
回复 支持 反对

使用道具 举报

结帖率:33% (4/12)

签到天数: 10 天

发表于 2022-8-21 21:52:21 | 显示全部楼层   四川省成都市
自动光学检测
回复 支持 反对

使用道具 举报

结帖率:77% (10/13)
发表于 2022-8-21 21:25:40 | 显示全部楼层   江西省赣州市
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则 致发广告者

发布主题 收藏帖子 返回列表

sitemap| 易语言源码| 易语言教程| 易语言论坛| 易语言模块| 手机版| 广告投放| 精易论坛
拒绝任何人以任何形式在本论坛发表与中华人民共和国法律相抵触的言论,本站内容均为会员发表,并不代表精易立场!
论坛帖子内容仅用于技术交流学习和研究的目的,严禁用于非法目的,否则造成一切后果自负!如帖子内容侵害到你的权益,请联系我们!
防范网络诈骗,远离网络犯罪 违法和不良信息举报电话0663-3422125,QQ: 793400750,邮箱:wp@125.la
Powered by Discuz! X3.4 揭阳市揭东区精易科技有限公司 ( 粤ICP备12094385号-1) 粤公网安备 44522102000125 增值电信业务经营许可证 粤B2-20192173

快速回复 返回顶部 返回列表