基于彩色路径识别的视觉导航方法是当前自动导航小车领域的研究热点和方向。视觉导航是指根据地面路径和被控对象之间的位置偏差控制其运行的方向,因此,地面彩色路径图像的摄取及其识别处理就成为视觉导航系统中的基础和关键。在当前的视觉导航系统设计中,图像处理的硬件平台都是基于通用微处理器,嵌入式微处理器或者DSP进行设计的。这些处理器一个共同的特点就是数据串行处理,而图像处理过程涉及大量的并行处理操作,因此传统的串行处理方式满足不了图像处理的实时性要求。 鉴于微处理器这方面的不足,作者提出一种使用FPGA实现图像识别的并行处理方案,并据此设计一个智能图像传感器。该传感器采用先进的FPGA技术,将图像采集及其显示,路径的识别处理以及通信控制等模块集成在一个芯片上,形成一个片上系统(SOC)。其主要功能是对所采集的彩色路径图像进行识别处理,获得彩色路径的坐标及其方向角,并将处理结果发送给上位机,为自动导航提供控制依据。 本文将彩色路径的识别处理过程划分为三个阶段,第一阶段为颜色聚类识别,以获得二值路径图像,第二阶段为数学形态学运算,用于对第一阶段中获得的二值图像进行去斑处理,第三阶段为路径中心线的定位及其方向角的测量。图像传感器与上位机的通信采用异步串行方式,由于上位机需要控制该传感器执行多种任务,作者定义一种基于异步串行通信的应用层协议,用于上位机对传感器的控制。在图像的显示中,为了弥补图像采集的速率和VGA显示速率的不匹配,作者提出一种基于单端口存储器的图像帧缓冲机制,通过VGA接口将采集的图像实时地显示出来。 根据上述思想,作者完成了系统的硬件电路设计,并对整个系统进行了现场调试。调试结果表明,传感器系统的各个模块都能正常工作,FPGA中的数字逻辑电路能够实时地将路径从图像中准确地识别出来,.充分体现了FPGA对路径图像的高速处理优势,达到了设计预期目标,在一定程度上丰富了路径图像识别处理的技术和方法。
上传时间: 2013-04-24
上传用户:ghostparker
一种基于FPGA实现的FFT结构\\r\\n调从基本元器件开始的计算机硬件系统的设计与实现,大多设置在自动控制系,形成了与应用系统结合的计算机教育。 1966年多处理器平台FPGA 学习目标 (1) 理解为什么嵌入式系统使用多处理器 (2) 指出处理器中CPU和硬件逻辑的折衷
上传时间: 2013-08-20
上传用户:linlin
特点: 精确度0.1%满刻度 可作各式數學演算式功能如:A+B/A-B/AxB/A/B/A&B(Hi or Lo)/|A|/ 16 BIT类比输出功能 输入与输出绝缘耐压2仟伏特/1分钟(input/output/power) 宽范围交直流兩用電源設計 尺寸小,穩定性高
上传时间: 2014-12-23
上传用户:ydd3625
特点(FEATURES) 精确度0.1%满刻度 (Accuracy 0.1%F.S.) 可作各式数学演算式功能如:A+B/A-B/AxB/A/B/A&B(Hi or Lo)/|A| (Math functioA+B/A-B/AxB/A/B/A&B(Hi&Lo)/|A|/etc.....) 16 BIT 类比输出功能(16 bit DAC isolating analog output function) 输入/输出1/输出2绝缘耐压2仟伏特/1分钟(Dielectric strength 2KVac/1min. (input/output1/output2/power)) 宽范围交直流两用电源设计(Wide input range for auxiliary power) 尺寸小,稳定性高(Dimension small and High stability)
上传时间: 2013-11-24
上传用户:541657925
a_bit equ 20h ;个位数存放处 b_bit equ 21h ;十位数存放处 temp equ 22h ;计数器寄存器 star: mov temp,#0 ;初始化计数器 stlop: acall display inc temp mov a,temp cjne a,#100,next ;=100重来 mov temp,#0 next: ljmp stlop ;显示子程序 display: mov a,temp ;将temp中的十六进制数转换成10进制 mov b,#10 ;10进制/10=10进制 div ab mov b_bit,a ;十位在a mov a_bit,b ;个位在b mov dptr,#numtab ;指定查表启始地址 mov r0,#4 dpl1: mov r1,#250 ;显示1000次 dplop: mov a,a_bit ;取个位数 MOVC A,@A+DPTR ;查个位数的7段代码 mov p0,a ;送出个位的7段代码
上传时间: 2013-11-06
上传用户:lx9076
第八章 labview的编程技巧 本章介绍局部变量、全局变量、属性节点和其他一些有助于提高编程技巧的问题,恰当地运用这些技巧可以提高程序的质量。 8.1 局部变量 严格的语法尽管可以保证程序语言的严密性,但有时它也会带来一些使用上的不便。在labview这样的数据流式的语言中,将变量严格地分为控制器(Control)和指示器(Indicator),前者只能向外流出数据,后者只能接受流入的数据,反过来不行。在一般的代码式语言中,情况不是这样的。例如我们有变量a、b和c,只要需要我们可以将a的值赋给b,将b的值赋给c等等。前面所介绍的labview内容中,只有移位积存器即可输入又可输出。另外,一个变量在程序中可能要在多处用到,在图形语言中势必带来过多连线,这也是一件烦人的事。还有其他需要,因此labview引入了局部变量。
上传时间: 2013-10-27
上传用户:xieguodong1234
C++完美演绎 经典算法 如 /* 头文件:my_Include.h */ #include <stdio.h> /* 展开C语言的内建函数指令 */ #define PI 3.1415926 /* 宏常量,在稍后章节再详解 */ #define circle(radius) (PI*radius*radius) /* 宏函数,圆的面积 */ /* 将比较数值大小的函数写在自编include文件内 */ int show_big_or_small (int a,int b,int c) { int tmp if (a>b) { tmp = a a = b b = tmp } if (b>c) { tmp = b b = c c = tmp } if (a>b) { tmp = a a = b b = tmp } printf("由小至大排序之后的结果:%d %d %d\n", a, b, c) } 程序执行结果: 由小至大排序之后的结果:1 2 3 可将内建函数的include文件展开在自编的include文件中 圆圈的面积是=201.0619264
标签: my_Include include define 3.141
上传时间: 2014-01-17
上传用户:epson850
源代码\用动态规划算法计算序列关系个数 用关系"<"和"="将3个数a,b,c依次序排列时,有13种不同的序列关系: a=b=c,a=b<c,a<b=v,a<b<c,a<c<b a=c<b,b<a=c,b<a<c,b<c<a,b=c<a c<a=b,c<a<b,c<b<a 若要将n个数依序列,设计一个动态规划算法,计算出有多少种不同的序列关系, 要求算法只占用O(n),只耗时O(n*n).
上传时间: 2013-12-26
上传用户:siguazgb
c语言版的多项式曲线拟合。 用最小二乘法进行曲线拟合. 用p-1 次多项式进行拟合,p<= 10 x,y 的第0个域x[0],y[0],没有用,有效数据从x[1],y[1] 开始 nNodeNum,有效数据节点的个数。 b,为输出的多项式系数,b[i] 为b[i-1]次项。b[0],没有用。 b,有10个元素ok。
上传时间: 2014-01-12
上传用户:变形金刚
crc任意位生成多项式 任意位运算 自适应算法 循环冗余校验码(CRC,Cyclic Redundancy Code)是采用多项式的 编码方式,这种方法把要发送的数据看成是一个多项式的系数 ,数据为bn-1bn-2…b1b0 (其中为0或1),则其对应的多项式为: bn-1Xn-1+bn-2Xn-2+…+b1X+b0 例如:数据“10010101”可以写为多项式 X7+X4+X2+1。 循环冗余校验CRC 循环冗余校验方法的原理如下: (1) 设要发送的数据对应的多项式为P(x)。 (2) 发送方和接收方约定一个生成多项式G(x),设该生成多项式 的最高次幂为r。 (3) 在数据块的末尾添加r个0,则其相对应的多项式为M(x)=XrP(x) 。(左移r位) (4) 用M(x)除以G(x),获得商Q(x)和余式R(x),则 M(x)=Q(x) ×G(x)+R(x)。 (5) 令T(x)=M(x)+R(x),采用模2运算,T(x)所对应的数据是在原数 据块的末尾加上余式所对应的数据得到的。 (6) 发送T(x)所对应的数据。 (7) 设接收端接收到的数据对应的多项式为T’(x),将T’(x)除以G(x) ,若余式为0,则认为没有错误,否则认为有错。
上传时间: 2014-11-28
上传用户:宋桃子