基于图像传感器的CPLD视觉系统设计
时间:04-27
来源:互联网
点击:
4 提高系统的工作速率
目前,系统工作在帧处理模式下的工作速率是25帧/s,作为系统功能的验证,这里采用的算法是颜色跟踪。如果仅做纯粹的图像采集,而不做图像处理,那么系统可以达到OV6620的最高工作速率,即60帧/s。而在图像处理方面,不同的图像处理程序效率对系统的工作频率有较大的影响。下面给出在通用ARM处理器下提高程序效率的几个建议:
①内嵌(inline)可通过删除子函数调用的开销来提高性能。如果函数在别的模块中不被调用,一个好的建议是用static标识函数;否则,编译器将在内嵌译码里把该函数编译成非内嵌的。
②在ARM系统中,函数调用过程中参数个数≤4时,通过R0~R3传递;参数个数>4时,通过压栈方式传递(需要额外的指令和慢速的存储器操作)。通常限制参数的个数,使它为4或更少。如果不可避免,则把常用的前4个参数放在R0~R3中。
第1种方式比较需要2条指令ADD和CMP,而第2种方式只需一条指令SUBS。
④ARM核不含除法硬件,除法通常用一个运行库函数来实现,运行需要很多个周期。一些除法操作在编译时作为特例来处理,例如除以2的操作用左移代替余数的操作符“%”,通常使用模算法。如果这个值的模不是2的n次幂,则将花费大量的时间和代码空间避免这种情况的发生。具体办法是使用if()作状态检查。
比如,count的范围是0~59;
count=(count+1)%60;
用下面语句代替:
if(++count>=60) count=0;
⑤避免使用大的局部结构体或数组,可以考虑用malloc/free代替。
⑥避免使用递归。
结语
本文介绍了一种基于ARM和CPLD的嵌入式视觉系统,可以实现颜色跟踪。在硬件设计上,图像采集和图像处理分离,更利于系统功能的升级。而视觉处理算法更注重处理的效率和实时性,同时根据不同的需要有两种模式可供选择。最后给出了提高程序效率的一些建议和方法。与基于PC机的视觉系统相比,该系统功耗低、体积小,适合应用于移动机器人等领域。
参考文献
1. 任贵伟.张海 基于ARM的紧凑型图像采集系统 [期刊论文] -单片机与嵌入式系统应用2007(2)
2. Omnivision Technologies Incorporated OV6620 Single-Chip CMOS CIF Color Digital Camera Technical Documentation
3. Rowe Anthony.Rosenberg Charles.Noutbakhsh Illah A Low Cost Embedded Color Vision System 2002
4. Bruce James.Balch Tucker.Veloso Manuela Fast and Cheap Color Image Segmentation for Interative Robots 2000
作者:北京航空航天大学 刘俊
来源:单片机与嵌入式系统应用 2009 (1)
目前,系统工作在帧处理模式下的工作速率是25帧/s,作为系统功能的验证,这里采用的算法是颜色跟踪。如果仅做纯粹的图像采集,而不做图像处理,那么系统可以达到OV6620的最高工作速率,即60帧/s。而在图像处理方面,不同的图像处理程序效率对系统的工作频率有较大的影响。下面给出在通用ARM处理器下提高程序效率的几个建议:
①内嵌(inline)可通过删除子函数调用的开销来提高性能。如果函数在别的模块中不被调用,一个好的建议是用static标识函数;否则,编译器将在内嵌译码里把该函数编译成非内嵌的。
②在ARM系统中,函数调用过程中参数个数≤4时,通过R0~R3传递;参数个数>4时,通过压栈方式传递(需要额外的指令和慢速的存储器操作)。通常限制参数的个数,使它为4或更少。如果不可避免,则把常用的前4个参数放在R0~R3中。
第1种方式比较需要2条指令ADD和CMP,而第2种方式只需一条指令SUBS。
④ARM核不含除法硬件,除法通常用一个运行库函数来实现,运行需要很多个周期。一些除法操作在编译时作为特例来处理,例如除以2的操作用左移代替余数的操作符“%”,通常使用模算法。如果这个值的模不是2的n次幂,则将花费大量的时间和代码空间避免这种情况的发生。具体办法是使用if()作状态检查。
比如,count的范围是0~59;
count=(count+1)%60;
用下面语句代替:
if(++count>=60) count=0;
⑤避免使用大的局部结构体或数组,可以考虑用malloc/free代替。
⑥避免使用递归。
结语
本文介绍了一种基于ARM和CPLD的嵌入式视觉系统,可以实现颜色跟踪。在硬件设计上,图像采集和图像处理分离,更利于系统功能的升级。而视觉处理算法更注重处理的效率和实时性,同时根据不同的需要有两种模式可供选择。最后给出了提高程序效率的一些建议和方法。与基于PC机的视觉系统相比,该系统功耗低、体积小,适合应用于移动机器人等领域。
参考文献
1. 任贵伟.张海 基于ARM的紧凑型图像采集系统 [期刊论文] -单片机与嵌入式系统应用2007(2)
2. Omnivision Technologies Incorporated OV6620 Single-Chip CMOS CIF Color Digital Camera Technical Documentation
3. Rowe Anthony.Rosenberg Charles.Noutbakhsh Illah A Low Cost Embedded Color Vision System 2002
4. Bruce James.Balch Tucker.Veloso Manuela Fast and Cheap Color Image Segmentation for Interative Robots 2000
作者:北京航空航天大学 刘俊
来源:单片机与嵌入式系统应用 2009 (1)
嵌入式 ARM CPLD 传感器 DSP FPGA 总线 CMOS Altera Verilog Quartus C语言 比较器 机器人 单片机 相关文章:
- CAN总线技术在工业码垛机器人控制系统中的应用研究(06-27)
- 基于LabVIEW构建智能的移动机器人及无人驾驶车(10-27)
- 基于混沌电路设计阵列触觉传感器的采集系统(03-01)
- 复杂路线下机器人的三点三轮寻迹系统(01-17)
- NI LabVIEW设计简单机器人(03-09)
- 机器人技术基础系列:规划与导航(03-09)