智能车
文章平均质量分 64
净0322
怀揣好奇之心面对事物
展开
-
智能车菜单编写(2)
如上.h文件所示,每个按键都具备用按下触发,弹起触发,单击双击等模式,我之前试过可使用一个按键来实现菜单的功能,就是不停的单击双击长按会混淆每个模式所对应的函数,建议还是4个按键,大体可分两个按键负责页面的上下移动,两个按键负责进入和退出二级菜单。该组件的优点在于可以无限的扩容按键的使用,且该菜单简洁易懂,看不懂的同学可以直接移植到对应的单片机上,然后一个一个更改参数来慢慢理解。函数放入中断中,以用来检测按键状态。也可以放入364的另外一个核中,具体的两个核操作方式以后可能会简单介绍,因为我写的也很烂。..原创 2022-08-28 21:43:54 · 1651 阅读 · 7 评论 -
智能车菜单编写(1)
智能车菜单编写原创 2022-08-28 21:02:40 · 2490 阅读 · 2 评论 -
智能车为什么要归一化处理?
电磁循迹作为智能车相对简单的入门循迹方式,一直都是大部分人刚开始接触时所使用的方案。而对于电磁处理的方法,主要有差比和处理以及归一化处理。最近在看吴恩达老师的人工智能课程时,在一节课程中讲解了关于归一化的一些好处,由此联想到自己在做智能车比赛时所采用的电磁循迹算法。 在当时我也对电磁同时进行了差比和以及归一化的处理,后来发现在对中间电感进行差比和处理之后,实际产生的数值与原先差比和所产生的数值并无太大区别,遂放弃了继续归一化,全部采用了差比和的处理。也没有去想过为什么好多学校都采用了差比和处理的...原创 2021-10-11 15:50:19 · 5748 阅读 · 0 评论 -
智能车图像处理(七)八邻域-2
题外话:在上一章我们介绍了一些关于连通域的基础概念,这一章我介绍一下上一章中关于种子填充算法的一些基础算法理解,便于之后更加透彻的理解。这章主要介绍广度优先搜索(BFS),深度优先搜索(DFS)算法。说实话,这两个算法在大二学数据结构时老师讲解过,但当时只是用来应付考试,并没有想到可以用到之后的比赛中,所以希望大家在学习一些知识时,可以将该知识点发散到一些自己感兴趣的地方,或许对此会有更深的影响。在介绍广度优先搜索(BFS),深度优先搜索(DFS)算法前,首先介绍一下数据结构的图,具体的一些基础概念就不原创 2021-09-04 04:53:03 · 5421 阅读 · 1 评论 -
智能车图像处理(六)八邻域-1
题外话:在比赛前看过很多篇国赛技术报告,一些强校在处理图像时都会简单讲解四邻域,八领域,种子填充法,博主作为一个第一年做车的小白,当时觉得这些算法十分的高级,虽然也想在巡线方面用到这些算法,但奈何当时自己的能力有限,且比赛留给我学习这些算法的时间太短,所以在比赛时就决定放弃这些,选择了另外的算法,虽然可以实现巡线目的,但内心还是对强校算法十分的好奇,最近在看完16届智能车的技术报告后,觉得对于一些元素的判断方面,基于连通域的算法有着一些得天独厚的优势,趁着还在暑期,将这个算法搞懂,文章若有错误或不足的地方,原创 2021-09-03 05:51:34 · 9157 阅读 · 0 评论 -
智能车图像处理 (五)图像处理想法
晚上闲来无事,便仔细阅读了上交大的开源代码讲解,在其中一篇文章中得到了一个很好的元素处理方法,思来想去觉得算法可行性应该可以,便记录下来。在开源讲解的第四篇中,他们提出了单独左(右)边线进行跟踪从而得出中线的方式。觉得该方法可以使用在一些特殊的元素中。下面给出我自己的一些想法,思路或许不完整,如有错误,希望各位能够指出。我们对赛道进行普通的巡线时,先是往左扫线,得出左边赛道的边界,后对右边界扫线,得出有边界,通常这两步我们都封装在一个函数中,并紧接其后对它得出赛道的中线和宽度。基于文章提出的思想原创 2021-09-01 02:12:13 · 5850 阅读 · 13 评论 -
智能车图像处理(四)电磁即一些模块的使用
(一)电磁处理在此次智能车竞赛中,我选择了摄像头为主,电磁简单辅助路径规划,帮助车身在出弯后能快速回正,只不过后来因为赛场电磁线原因,关闭了电磁辅助,采用了纯摄像头循迹。关于电磁循迹,我并没有使用归一化,只是简单的差比和处理Diangan dg;void Read_ADC(){ int16 i,j,temp; static int16 value_temp[5][5]={0}; //行:五个电感 列:每个电感自己五组均值 int16 value_sum[5]={0};原创 2021-08-06 05:22:43 · 4503 阅读 · 17 评论 -
智能车图像处理(三)元素判断
相对于电磁处理赛道元素,摄像头有更多的方式去判断特殊元素,csdn上也有很多的博主介绍了他们对于特殊元素的处理,这里我将先对16届新出的三岔讲解我的思路及代码,之后再对圆环和车库进行思路讲解。在对所有元素进行判断前,我们总结通过第二章巡线所得到的一些判断条件:right_lost_count; //右丢线数目left_lost_count; //左丢线数目l_start; //左边界出现第一个黑点所在行数r_start; //右边界出现第一个黑点原创 2021-08-05 10:39:55 · 19587 阅读 · 30 评论 -
智能车图像处理(二)基础寻线
在我们得到一张稳定的二值化图像后,就可以对图像进行一些寻线的处理,在这里简单提一下,那就是图像第一行所在的位置,作为初学者的我刚开始就曾搞错,摄像头第一行所在的位置取决于你摄像头是正装还是反装,如果是正装那么对应远离车身所对应的是第一行,靠近的为最大行。反装则相反,但是还需注意的是正装和反装所对应的左右行数也是不同的,在存放左右边界时需要注意,两者是相反的。关于摄像头是如何放置的问题,其实两者并没有太大的区别,如何放置根据个人的考虑决定了。个人认为摄像头的巡线可以分为3类:一类是最基础,也是最简单的原创 2021-08-03 17:56:23 · 29185 阅读 · 38 评论 -
智能车图像处理
本人大二时参加了16届华东赛区智能车竞赛,虽然结果没有达到自己预期的成绩,但依旧收获了很多,在这里写一些自己关于智能车图像处理的方法和思路,为自己未来可能参加的17届智能车做准备,也为实验室后来的学弟学妹们提供学习的方法,不至于和我一样一切从零开始。首先,在讲图像处理前,简单谈一下我为什么在摄像头和电磁两者之间选择了摄像头,在我看来,电磁相对于摄像头来说,它比较简单,上手快,再加上外界环境对于电磁的影响较小,所以对一些新手或时间比较短的选手来说来说,电磁是一种很不错的选择。但也正因为它简单,决定了电磁的原创 2021-08-02 13:35:36 · 8737 阅读 · 7 评论 -
智能车图像处理(一)阈值处理
博主使用的逐飞家的总钻风摄像头,这是一款灰度摄像头,配合逐飞的底层库,可以很快的上手。在我当时拿到总钻风的第一时间,就用逐飞的底层库,配合tft显示屏,显示简单的图像,虽然简单,当时的心情其实还是很激动的。而这时,我们显示的,其实就是一张灰度图像。我的是120*188的灰度图像,例如:针对这些灰度图像,我们需要对它进行阈值处理以便之后的赛道信息提取。首先,我们得知道,我们所得到了这120*188的图像,实际上也就是120*188个不同灰度值的像素点组成,对于这么多个像素点处理的最基本的思想,原创 2021-08-02 13:33:42 · 18368 阅读 · 23 评论