自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(18)
  • 收藏
  • 关注

原创 vs使用opencv无法打开 “CV.h“等文件

两个目录,在第二个文件目录中,是有包含以上两个源文件的,但是在我的版本之中,只有opencv2的目录。查询结果发现,由于我使用的opencv版本过高(opencv-4.5.5-vc14_vc15),在一些老版本的库时,会在。中同时包含D:\opencv\opencv\build\include\opencv2;在运行opencv代码时显示无法打开 "CV.h","highgui.h"等文件。

2023-04-21 12:23:41 958

原创 智能车菜单编写(2)

如上.h文件所示,每个按键都具备用按下触发,弹起触发,单击双击等模式,我之前试过可使用一个按键来实现菜单的功能,就是不停的单击双击长按会混淆每个模式所对应的函数,建议还是4个按键,大体可分两个按键负责页面的上下移动,两个按键负责进入和退出二级菜单。该组件的优点在于可以无限的扩容按键的使用,且该菜单简洁易懂,看不懂的同学可以直接移植到对应的单片机上,然后一个一个更改参数来慢慢理解。函数放入中断中,以用来检测按键状态。也可以放入364的另外一个核中,具体的两个核操作方式以后可能会简单介绍,因为我写的也很烂。..

2022-08-28 21:43:54 1640 7

原创 智能车菜单编写(1)

智能车菜单编写

2022-08-28 21:02:40 2450 2

原创 中断与while(1)的关系

这星期在学计算机组成原理时老师讲到了关于中断的知识,简单来说是事件打断主程序的运行去执行另外的程序,不由得联想到自己在单片机上写程序时的while(1),当时学长告诉我主循环while(1)里只要放屏幕显示的函数就行了,其余的一些智能车摄像头程序放在中端执行就可了,当时只是照做,并未理解为什么需要这样执行。简单介绍什么是中断:当你的电脑cpu在执行当前程序时,出现了需要立即执行的事件,就需要立马打断你现在所执行的事件,转而执行另外的事件,处理完成后返回原事件继续执行。以此来提高电脑cpu的运行效率。

2021-11-20 15:02:55 4095

原创 智能车为什么要归一化处理?

电磁循迹作为智能车相对简单的入门循迹方式,一直都是大部分人刚开始接触时所使用的方案。而对于电磁处理的方法,主要有差比和处理以及归一化处理。最近在看吴恩达老师的人工智能课程时,在一节课程中讲解了关于归一化的一些好处,由此联想到自己在做智能车比赛时所采用的电磁循迹算法。 在当时我也对电磁同时进行了差比和以及归一化的处理,后来发现在对中间电感进行差比和处理之后,实际产生的数值与原先差比和所产生的数值并无太大区别,遂放弃了继续归一化,全部采用了差比和的处理。也没有去想过为什么好多学校都采用了差比和处理的...

2021-10-11 15:50:19 5714

原创 python自学笔记

前言:该文章仅为自己快速入门python入门所作的笔记,内将会包含大量的截图和复制内容标识符:标识符是编程时使用的名字,用于给变量、函数、语句块等命名,Python 中标识符由字母、数字、下划线组成,不能以数字开头,区分大小写。以下划线开头的标识符有特殊含义,单下划线开头的标识符,如:_xxx ,表示不能直接访问的类属性,需通过类提供的接口进行访问,不能用 from xxx import * 导入;双下划线开头的标识符,如:__xx,表示私有成员;双下划线开头和结尾的标识符,如:__xx__,

2021-09-29 00:41:24 186

原创 Tensorflow笔记(一)环境配置

在学习Tensorflow时,需配置相应的环境,以下以Tensorflow2.1版本为例,该方法学习了北京大学曹健老师的人工智能实践:Tensorflow笔记第一步:安装Anaconda我们在官网下载Anaconda python3.7版本(我安装时,官网已升级为3.8版本)1.点击Get started,选择最下面的Download Anaconda installers2.网页拉到最下面,点击安装旧版本3.在下面找到Windows下的 Python 3.7,电脑多少位就选..

2021-09-25 18:42:32 636

原创 智能车图像处理(七)八邻域-2

题外话:在上一章我们介绍了一些关于连通域的基础概念,这一章我介绍一下上一章中关于种子填充算法的一些基础算法理解,便于之后更加透彻的理解。这章主要介绍广度优先搜索(BFS),深度优先搜索(DFS)算法。说实话,这两个算法在大二学数据结构时老师讲解过,但当时只是用来应付考试,并没有想到可以用到之后的比赛中,所以希望大家在学习一些知识时,可以将该知识点发散到一些自己感兴趣的地方,或许对此会有更深的影响。在介绍广度优先搜索(BFS),深度优先搜索(DFS)算法前,首先介绍一下数据结构的图,具体的一些基础概念就不

2021-09-04 04:53:03 5362 1

原创 数据结构笔记-图

在最近学习中需要用到图的相关知识,但很多知识已经忘记,遂重新再过一遍图。图按照有无方向分为无向图和有向图。无向图由顶点和边构成,有向图由顶点和弧构成。弧有 弧尾和弧头之分。图按照边或弧的多少分稀疏图和稠密图。如果任意两个顶点之间都存在边叫完全图,有向的叫有向完全图。若无重复的边或顶点到自身的边则叫简单图。图中顶点之间有邻接点、依附的概念。无向图顶点的边数叫做度,有向图顶点分为入度和出度。图上的边或弧上带权则称为网。图中顶点间存在路径,两顶点存在路径则说明是连通的,如果路径最终回到起始点则称..

2021-09-04 04:29:08 712

原创 智能车图像处理(六)八邻域-1

题外话:在比赛前看过很多篇国赛技术报告,一些强校在处理图像时都会简单讲解四邻域,八领域,种子填充法,博主作为一个第一年做车的小白,当时觉得这些算法十分的高级,虽然也想在巡线方面用到这些算法,但奈何当时自己的能力有限,且比赛留给我学习这些算法的时间太短,所以在比赛时就决定放弃这些,选择了另外的算法,虽然可以实现巡线目的,但内心还是对强校算法十分的好奇,最近在看完16届智能车的技术报告后,觉得对于一些元素的判断方面,基于连通域的算法有着一些得天独厚的优势,趁着还在暑期,将这个算法搞懂,文章若有错误或不足的地方,

2021-09-03 05:51:34 9087

原创 智能车图像处理 (五)图像处理想法

晚上闲来无事,便仔细阅读了上交大的开源代码讲解,在其中一篇文章中得到了一个很好的元素处理方法,思来想去觉得算法可行性应该可以,便记录下来。在开源讲解的第四篇中,他们提出了单独左(右)边线进行跟踪从而得出中线的方式。觉得该方法可以使用在一些特殊的元素中。下面给出我自己的一些想法,思路或许不完整,如有错误,希望各位能够指出。我们对赛道进行普通的巡线时,先是往左扫线,得出左边赛道的边界,后对右边界扫线,得出有边界,通常这两步我们都封装在一个函数中,并紧接其后对它得出赛道的中线和宽度。基于文章提出的思想

2021-09-01 02:12:13 5837 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 4496 17

原创 智能车图像处理(三)元素判断

相对于电磁处理赛道元素,摄像头有更多的方式去判断特殊元素,csdn上也有很多的博主介绍了他们对于特殊元素的处理,这里我将先对16届新出的三岔讲解我的思路及代码,之后再对圆环和车库进行思路讲解。在对所有元素进行判断前,我们总结通过第二章巡线所得到的一些判断条件:right_lost_count; //右丢线数目left_lost_count; //左丢线数目l_start; //左边界出现第一个黑点所在行数r_start; //右边界出现第一个黑点

2021-08-05 10:39:55 19484 30

原创 智能车图像处理(二)基础寻线

在我们得到一张稳定的二值化图像后,就可以对图像进行一些寻线的处理,在这里简单提一下,那就是图像第一行所在的位置,作为初学者的我刚开始就曾搞错,摄像头第一行所在的位置取决于你摄像头是正装还是反装,如果是正装那么对应远离车身所对应的是第一行,靠近的为最大行。反装则相反,但是还需注意的是正装和反装所对应的左右行数也是不同的,在存放左右边界时需要注意,两者是相反的。关于摄像头是如何放置的问题,其实两者并没有太大的区别,如何放置根据个人的考虑决定了。个人认为摄像头的巡线可以分为3类:一类是最基础,也是最简单的

2021-08-03 17:56:23 29112 38

原创 智能车图像处理

本人大二时参加了16届华东赛区智能车竞赛,虽然结果没有达到自己预期的成绩,但依旧收获了很多,在这里写一些自己关于智能车图像处理的方法和思路,为自己未来可能参加的17届智能车做准备,也为实验室后来的学弟学妹们提供学习的方法,不至于和我一样一切从零开始。首先,在讲图像处理前,简单谈一下我为什么在摄像头和电磁两者之间选择了摄像头,在我看来,电磁相对于摄像头来说,它比较简单,上手快,再加上外界环境对于电磁的影响较小,所以对一些新手或时间比较短的选手来说来说,电磁是一种很不错的选择。但也正因为它简单,决定了电磁的

2021-08-02 13:35:36 8706 7

原创 智能车图像处理(一)阈值处理

博主使用的逐飞家的总钻风摄像头,这是一款灰度摄像头,配合逐飞的底层库,可以很快的上手。在我当时拿到总钻风的第一时间,就用逐飞的底层库,配合tft显示屏,显示简单的图像,虽然简单,当时的心情其实还是很激动的。而这时,我们显示的,其实就是一张灰度图像。我的是120*188的灰度图像,例如:针对这些灰度图像,我们需要对它进行阈值处理以便之后的赛道信息提取。首先,我们得知道,我们所得到了这120*188的图像,实际上也就是120*188个不同灰度值的像素点组成,对于这么多个像素点处理的最基本的思想,

2021-08-02 13:33:42 18309 23

原创 数据结构笔记-线性表

线性表篇线性表有两种物理存储结构:顺序存储结构和链式存储结构。线性表的顺序存取结构是最简单以及最常用的线性表的存储方式我们用一段地址连续的存储单元依次存储线性表中的数据元素,其实就是和数组一样通过占位的方式将一定空间占有,再把相同数据元素类型的数据元素依次放到空间里描述顺序表的属性1.存储空间的起始位置 也就是数组data2.顺序表的容量(最大长度) MaxSize3.顺序表的当前长度 Length 这个是当前长度,会随着你所做的变化而变化,与Ma...

2021-02-19 22:37:02 468 1

原创 数据结构笔记

抽象数据类型为了方便对抽象数据类型的描述,我们给出了描述抽象数据类型的标准格式ADT 抽象数据类型名Data 数据元素之间逻辑关系的定义Operation 操作endADT我们以线性表为例

2021-02-19 16:24:24 161

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除