开启辅助访问 切换到宽版

精易论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

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

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


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

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

查看: 9666|回复: 2
收起左侧

[技术专题] OPENCV 斑点检测骰子识别

[复制链接]
结帖率:89% (79/89)
发表于 2022-5-24 11:32:05 | 显示全部楼层 |阅读模式   江苏省常州市
这里是就直接翻译的网上牛人的一个例子:速度非常快
QQ图片20220524113109.png
  
窗口程序集名保 留  保 留备 注
程序集1   
子程序名返回值类型公开备 注
_启动子程序整数型 本子程序在程序启动后最先执行
变量名类 型静态数组备 注
多维矩阵类 
图片名文本型 
' 链接:[url]https://pan.baidu.com/s/1VSYkILerRQsoDiIhl-6eTQ?pwd=4ypk[/url]
' 提取码:4ypk
' 图片素材> OpnCV VIP >例子素材与模型>基础算法骰子识别>
视觉_创建窗口 (“小白鼠”, 0)
图片名 = 寻找文件 (“C:\Users\hanyo\Desktop\谷子识别\JPEGImages\*.jpg”, #存档文件 )
判断循环首 (图片名 ≠ “”)
图片名 = 寻找文件 (, )
图.从文件加载 (“C:\Users\hanyo\Desktop\谷子识别\JPEGImages\” + 图片名, #读图_彩色 )
测试算法流程 ()
判断循环尾 ()
返回 (0)  ' 可以根据您的需要返回任意数值
子程序名返回值类型公开备 注
测试算法流程  
参数名类 型参考可空数组备 注
输入图片多维矩阵类
变量名类 型静态数组备 注
结果图多维矩阵类 
图_复制多维矩阵类 
蒙版_图多维矩阵类 
黑色_图多维矩阵类 
图2多维矩阵类 
HSV_图多维矩阵类 
蒙版多维矩阵类 
轮廓多维数组点2i类 
距离_转换多维矩阵类 
二值化多维矩阵类 
蒙版_复制多维矩阵类 
零时2多维矩阵类 
核心多维矩阵类 
最大值双精度小数型 
最大值坐标点2i类 
零时多维矩阵类 
零_图多维矩阵类 
轮廓2多维数组点2i类 
i整数型 
旋转矩形旋转矩形类 
x0整数型 
y0整数型 
感兴区域多维矩阵类 
点数整数型 
结果图 = 输入图片.克隆 ()
图_复制 = 输入图片.克隆 ()
蒙版_图.初始化 (输入图片.行数 (), 输入图片.列数 (), #Cv无符号字节型, )
黑色_图.初始化 (输入图片.行数 (), 输入图片.列数 (), #Cv无符号字节型_三通道, )
视觉_圆 (蒙版_图, 点2i (1250, 1040), 800, 标量 (255), -1, 8, 0)
视觉_加 (输入图片, 黑色_图, 图2, 蒙版_图, -1)
视觉_颜色空间转换 (图2, HSV_图, #颜色_BGR转HSV, 0)
视觉_在范围内 (HSV_图, 标量 (0, 0, 200), 标量 (180, 80, 255), 蒙版)
视觉_中值滤波 (蒙版, 蒙版, 5)
视觉_查找轮廓 (蒙版, 轮廓, , #检测_外部, #逼近_任何, )
视觉_绘制轮廓 (蒙版, 轮廓, -1, 标量 (255, 255, 255), -1, 8, , 2147483647, )
蒙版_复制 = 蒙版.克隆 ()
视觉_调整尺寸 (蒙版, 零时2, 尺寸2i (800, 600), 0, 0, 1)
核心 = 视觉_获取结构元素 (0, 尺寸2i (3, 3), )
视觉_腐蚀 (蒙版_复制, 蒙版_复制, 核心, , 60, 4, )
视觉_距离变换 (蒙版_复制, 距离_转换, , 1, 5, 0)
视觉_转换比例绝对值 (距离_转换, 距离_转换, 1, 0)  ' //32F转8U
视觉_最小最大位置 (距离_转换, , 最大值, , 最大值坐标, )
视觉_阈值 (距离_转换, 二值化, 最大值 × 0.75, 255, 0)  ' //二值化
视觉_调整尺寸 (二值化, 零时, 尺寸2i (800, 600), 0, 0, 1)
零_图 = 二值化.克隆 ()
视觉_查找轮廓 (零_图, 轮廓2, , 检测_外部, #逼近_任何, )
计次循环首 (轮廓2.尺寸 (), i)
旋转矩形 = 视觉_最小轮廓矩形 (轮廓2.取点2i类数组 (i))
x0 = 旋转矩形.质心 ().左边
y0 = 旋转矩形.质心 ().顶边
感兴区域 = 输入图片.感兴区域 (矩形2i (x0 - 150, y0 - 150, 300, 300))
点数 = 点数识别 (感兴区域)
视觉_圆 (结果图, 点2i (x0, y0), 150, 标量 (0, 0, 255), 10, 8, 0)
视觉_放置文本 (结果图, 到文本 (点数), 点2i (x0 - 150, y0 - 150), 5, 8, 标量 (0, 255, 0), 10, 8, )
计次循环尾 ()
视觉_显示图像 (“小白鼠”, 结果图)
视觉_等待按键 (1)
子程序名返回值类型公开备 注
点数识别整数型 
参数名类 型参考可空数组备 注
图片感性区域多维矩阵类
变量名类 型静态数组备 注
结果多维矩阵类 
骰子数整数型 
HSV_图多维矩阵类 
蒙版多维矩阵类 
核心多维矩阵类 
蒙版_复制多维矩阵类 
轮廓多维数组点2i类 
i整数型 
矩形矩形2i类 
感兴区域多维矩阵类 
面积双精度小数型 
斑点检测器简单斑点检测器类 
关键点关键点类0
填充调色板标量类 
斑点检测器.按凹过滤 = 真
斑点检测器.最小凹度 = 0.45
斑点检测器.初始化 ()
结果 = 图片感性区域.克隆 ()
视觉_颜色空间转换 (图片感性区域, HSV_图, #颜色_BGR转HSV, 0)  ' //Bgr转Hsv
视觉_在范围内 (HSV_图, 标量 (0, 0, 200), 标量 (180, 80, 255), 蒙版)
视觉_中值滤波 (蒙版, 蒙版, 9)
核心 = 视觉_获取结构元素 (0, 尺寸2i (5, 5), )
视觉_腐蚀 (蒙版, 蒙版, 核心, , 1, 4, )
视觉_膨胀 (蒙版, 蒙版, 核心, , 1, 4, )
蒙版_复制 = 蒙版.克隆 ()
视觉_查找轮廓 (蒙版, 轮廓, , 检测_外部, #逼近_任何, )
计次循环首 (轮廓.尺寸 (), i)
矩形 = 视觉_最大轮廓矩形 (轮廓.取点2i类数组 (i))
感兴区域 = 蒙版_复制.感兴区域 (矩形)
面积 = 视觉_轮廓面积 (轮廓.取点2i类数组 (i), )
如果真 (面积 > 700)
视觉_调整尺寸 (感兴区域, 感兴区域, 尺寸2i (150, 150), 0, 0, 1)
视觉_阈值 (感兴区域, 感兴区域, 150, 255, 位或 ( #阈值_二进制, #阈值_大津 ))  ' //二值化
填充调色板.初始化 (255, , , )
视觉_漫水填充 (感兴区域, , 点2i (0, 0), 填充调色板, , , , 4)
视觉_漫水填充 (感兴区域, , 点2i (0, 149), 填充调色板, , , , 4)
视觉_漫水填充 (感兴区域, , 点2i (149, 0), 填充调色板, , , , 4)
视觉_漫水填充 (感兴区域, , 点2i (149, 149), 填充调色板, , , , 4)
斑点检测器.检测 (感兴区域, 关键点, )
如果真 (取数组成员数 (关键点) > 骰子数)
骰子数 = 取数组成员数 (关键点)


计次循环尾 ()
返回 (骰子数)


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


发表于 2022-5-31 08:44:59 | 显示全部楼层   江西省南昌市
如果加个无线摄像头在里面,赌王都得败啊,牛气

点评

牛皮   江苏省苏州市  发表于 2022-5-31 09:55
回复 支持 反对

使用道具 举报

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

本版积分规则 致发广告者

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

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

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