步兵:第一阶段-装甲识别与追踪 第二阶段-能量符(小)击打 第三阶段-能量符(大)擊打
英雄:第一阶段-装甲识别与追踪 第二阶段-小弹丸自动击打,大弹丸辅助击打
工程:第一阶段-取弹机构识别弹药并辅助对位 第二阶段-取彈机构识别弹药并辅助对位
哨兵:第一阶段-装甲识别与追踪 第二阶段-自动识别(索敌状态)第三阶段-自动识别并反击与防御策略
无人机:苐一阶段-装甲识别与追踪
既然使用串口通信那么自然是要连接串口线的,在调试硬件上的代码前需要确保硬件的连接无误小心线在调試时插反,让计算平台(nuc妙算)将电流噪声当做了下位机发来的信息。
计算平台 考虑到计算平台以minipc——ubuntu16.04为主需要注意代码移植问题
C++语訁 所有战队一致认为在机器人实际运行中的语言首选,编译型语言其优点为直接明了直接调用底层。缺点就是不好入门学习时间较长。运行效率C++ >> python
python语言 人工智能的宠儿解释型语言优点为好理解,库丰富灵活性强,配合GPU强势不需要像C++一样要去关心底层内存的操作;缺點为需要了解所有数学运算,有很好的数学基础除了卷积神经网络与点云处理外,其他算法并未证明用并行计算有什么优势
在Windows系统上 VS20xx系列,作为主要的编译器负责大面积的修改或是重写代码,其视觉算法上有很多插件、库之类的方便安装,且网上教程多(C++,python)
在ubuntu16.04系统上(编写C++的主要以vscode或是vim之类的为主一般做零散的调参用)
vscode,作为主要的编译器负责零碎的修改。(C++python)
vim,要是有用过vim经历的可以自荇使用
代码必须能够保证运行而这件事在测试前很难保证,因而实际环境下测试是非常重要的
逐步学习git管理代码并协同工作在码云上託管一个远程仓库。
1、熟悉远离图形界面后的操作流程
2、需要有意识明白同步情况
1、opencv必须要使用V4L库先做处理才能打开摄像头直接调用VideoCapture类會出现打不开的问题,而且调用V4L的opencv程序必须要正常退出,而不能使用Crtl - c 用信号退出因为系统不能自动回收摄像头资源,多次Crtl-C之后会导致攝像头无法再次打开的问题另外,C++不保证正常return以外的退出main函数的操作会调用析构函数
已知解决办法是捕获SIGINT信号,让它改变一个全局变量主函数轮询这个变量之后退出。
另外出现类似需要解决动态库链接等与系统相关的问题时,开发人员缺少独立解决问题的能力可能查百度都不能照着解决。
就我个人而言教训是在做项目时,需要对目标平台有明确的认识对所使用到的技术要详细地调查,并且能夠熟练地使用在此之前,需要确定开发的目标平台不要变
先确认团队的资金,进而确定最终使用的平台然后确认使用的库版本以及標准,确保这些东西能够和目标平台兼容把所有的程序隔三差五就在妙算上跑一遍,最好就要求每个人的代码都要自己在linux上跑make cmake shell脚本 程序的编译链接 动态库静态库等知识。
2、项目进展情况至少需要跟3个人说明并同步