# 2023-China-National-University-Students-Opt-Sci-Tech-Competition-machine-vision-part
2023光电赛小车题树莓派+无畸变摄像头(备用小畸变摄像头)视觉方案
## 藏宝图识别
1.在摄像头帧缓冲区读取一张图片A。
2.使用灰度转换、高斯滤波、自适应阈值分割方法,得到二值图B。
3.识别定位点
①对于二值图B的所有轮廓,保留所有面积在[20,6000]像素范围内,轮廓角点等于4、外接矩形宽高比在0.8和1.2之间、与另一个轮廓有质心互相包含关系,且质心足够接近的封闭轮廓。对于质心互相包含关系的轮廓,保留面积较大的轮廓,这些轮廓即是可能的定位点框。
②如果①中轮廓的数目不等于4,返回步骤1。
4.透视变换
要透视变换,必须构建仿射矩阵;要构建仿射矩阵,需确保原图像点和目标图像点一一对应。设3中得到轮廓的中心点,为原图像待转换的点。根据横纵坐标的相对关系,对轮廓中心点进行左上-右上-左下-右下排序,与目标图像的四个同顺序点对应起来,得到仿射矩阵,进而对图像A做透视变换,得到图像C。
5.宝藏识别
对于图像C,转化为灰度图,并在定位点四角组成的区域内使用霍夫圆检测,当识别圆数量不为8时,返回步骤1。当识别圆数量为8时,对圆心在图像C的坐标进行放缩、平移变换,如果有一个变换后的圆心坐标范围不属于0<=x,y<=9,那么返回步骤1。
5.跳出循环,进入路径规划部分。
## 骨牌识别
### 第一版
1.建立骨牌上四种颜色(红、蓝、黄、绿)的LAB阈值范围。
2.当小车到达藏宝点,跳过5帧。
3.读入摄像机一帧照片,依次识别是否为蓝真、蓝假、红真、红假骨牌。如果识别成功,分别返回1、2、3、4,根据不同情况判断小车是否需要冲撞,并进入路径规划部分。如果识别不成功,重复执行步骤3。
#### 判断骨牌的方法
对于一个骨牌,我们假设它是某类型骨牌(如红真),即假设其上有特定的两种颜色A、B。在有此骨牌的帧缓冲区图像I中,在图像I上寻找颜色A面积大于50像素、且宽高比在[0.3,3]范围上的色块。如果没有找到色块,那么对于骨牌的假设错误。如果骨牌上有颜色A,那么对于颜色B,经过同样的找色块并判断步骤。如果颜色A和B都找到了,如果两色块中心距离在200之内,则可以断定它是具有颜色A和B的、我们假设的骨牌。
### 第二版
1.建立骨牌上两种颜色(红、绿)的LAB阈值范围。
2.当小车到达藏宝点,跳过5帧。
3.读入摄像机一帧照片,判断图中是否有红色、绿色色块(色块判断逻辑见“第一版”判断骨牌方法),通过判断的结果确定骨牌类型,同样分别返回1、2、3、4。
## 备注
在骨牌识别第一版代码中,对于小畸变摄像头,才需要两个最大轮廓的中心距离在“200”之内。无畸变摄像头的值可兼容,或为保险起见选取25~50。
## 文件功能说明
dominoes_operaition.py 为骨牌处理函数,包含找最大色块、判断宝藏,以及画图(已注释掉,如果要画图还需要需要调换找最大色块函数的返回值等操作,具体详见代码注释)函数
test_jewelv1.py和test_jewelv1.py里的jewel函数分别对应骨牌识别第一版和第二版逻辑,调用dominoes_operaition.py
map_operation_v7.py 为藏宝图识别函数
threshold_chooser_v2.py 为阈值选择器
![avatar](https://profile-avatar.csdnimg.cn/5f1f13827a6b4d429d03fbd9927aeaaf_baidu_33164415.jpg!1)
土豆片片
- 粉丝: 1861
- 资源: 5867
最新资源
- C#三轴涂胶软件源码:专业级功能集成,高效生产管理与控制,实时报警监控与用户权限管控,高效精准的C#三轴涂胶软件源码:具备轨迹编辑、自动纠偏等功能与用户权限管理,C#三轴涂胶软件源码,该软件已经在客户
- 基于HTML5 Canvas的3D频谱音乐歌词同步播放器设计源码
- 永磁同步电机驱动器的自适应SDRE非线性无传感器速度控制策略(Matlab&Simulink仿真实现研究),永磁同步电机驱动器的自适应SDRE非线性无传感器速度控制策略及Matlab&Simulink
- 基于重力传感器与客流相机技术的上海零售展人货匹配客户端设计源码
- 基于MBD开发的电动汽车主驱电机控制器模型与量产材料研究(a38),基于MBD开发的电动汽车主驱电机控制器模型与量产材料研究,基于MBD开发的电动汽车主驱电机控制器模型及开发材料(a38?),量产模
- 基于Vue框架的洗衣卡前端页面设计源码
- 基于Vue框架的刘汉龙院士团队后台管理系统设计源码
- 基于位错密度的晶体塑性模型:微观结构与力学行为的关联研究,基于位错密度分析的多角度晶体塑性模型探究,基于位错密度的晶体塑性模型 ,基于位错密度的晶体塑性模型; 晶体塑性; 位错密度; 模型,基于位错密
- 高质量10bit SAR ADC电路设计文档:详尽流程、GPDK工艺与Virtuoso仿真全配套资源,高性能10bit SAR ADC电路设计文档,含详细仿真与gpdk工艺,可直接导入Virtuoso
- 基于陈自鸣先生研究成果的牛码五笔输入法设计源码
- 基于Java的Android蓝牙串口通信库设计源码
- 基于Java和HTML技术的包头师范农产品溯源项目设计源码
- 电力系统暂态稳定分析:基于Matlab的三机九节点系统模拟与功能详解(含临界切除时间考量)报告(共24页),电力系统暂态稳定分析:基于Matlab的三机九节点系统模拟与临界切除时间考量报告,电力系统暂
- V2G电动汽车双向充电桩电路仿真:SVPWM控制开关信号,电压外环电流内环实现整流逆变及功率输出,直流侧充放电模块设计,buck boost电路恒压恒流控制 ,基于SVPWM控制和双层调节系统的电动汽
- AC DC混合微电网Simulink模型:大型交直流混合微电网与双向功率变换器控制策略研究,AC DC混合微电网Simulink模型:交直流双向功率变换与控制策略研究,AC DC混合微电网Simuli
- 昆仑通态MCGS与欧姆龙E5CC温控器通讯:PID控制及输出启停功能实现,昆仑通态MCGS与欧姆龙E5CC温控器通讯:PID控制及输出启停功能实现,昆仑通态MCGS与欧姆龙E5CC温控器通讯+PID模
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
![feedback](https://img-home.csdnimg.cn/images/20220527035711.png)
![feedback](https://img-home.csdnimg.cn/images/20220527035711.png)
![feedback-tip](https://img-home.csdnimg.cn/images/20220527035111.png)