嵌入式视觉

2024-10-05

嵌入式视觉(精选4篇)

嵌入式视觉 篇1

0 引言

随着计算机科学的飞速发展,许多采用嵌入式系统的AGV开始出现,并成为目前研究新的热点[1]。在AGV的核心技术中,导航策略一直是研究的重点。目前较为成熟的导航策略种类繁多,视觉导航策略有着广阔的应用前景,其中单目视觉[2]路径跟踪的导航能较好地用于嵌入式系统实现。但这样也对小车路径跟踪控制器的有效性和实时性设计提出了更高的要求。

在综合考虑硬件设备的运算能力、系统的实用性和成本等多方因素,本文设计了一个硬件平台上基于嵌入式系统、导航策略上采用路径跟踪、控制方法上采用模糊—PID控制的自动导航小车系统。本文重点阐述了模糊—PID控制器的设计过程。实验表明,该基于嵌入式的视觉导航AGV系统具有较好的实时性和鲁棒性。

1 系统概述

本AGV小车是一个主要应用于室内环境,能自主跟踪地面路径的视觉反馈控制系统。其中嵌入式系统为系统核心部分,微处理器采用三星公司ARM9结构的S3C2410处理器,图像采集设备使用常见的USB接口CMOS摄像头,硬件系统的构成如图1所示。

系统的工作原理为:摄像头实时拍摄地面路况信息,然后通过USB2.0接口将所采集的视频图像传输到嵌入式系统中;微处理器S3C2410会对图像进行处理,从中提取出路径信息,再根据控制算法产生控制信号,并通过PWM输出接口发送到伺服电机;伺服电机会产生动作控制小车转向,使得小车跟踪地面路径行进。该控制系统的方框图如图2所示。

2 基于图像处理的路径识别

本系统是一个基于视觉反馈的系统,需要用数字图像处理的方法识别路径。图像处理过程大体分为以下三个步骤:灰度化、模糊去噪、边缘检测。为简化后续处理,首先将摄像头获取的路面彩色图像如图3所示,转化为灰度图像,如图4所示。

为排除图像噪声的干扰需要先对图像进行中值滤波去掉噪声,然后再通过Robert边缘检测算子[3]检测路径边缘信息,如图5所示,最后得到细线化的路径曲线,如图6所示。

根据实验,选取路径边缘图像上某一像素点为预瞄点。此时需要将预瞄点通过摄像头标定的方法[4]由图像坐标映射成世界坐标。最后,选取此预瞄点到车体中心轴线的距离即横向偏差E做为控制系统的控制量。

3 模糊—PID控制器设计

模糊控制能很好地模拟人的预瞄控制行为,但其结构上的缺陷,系统的稳态性能并不理想,当偏差较小的情况下容易出现振荡,无法消除静态误差。经典的PID控制器具有较好的稳态性能,但很依赖模型故动态性能不理想。为达到较好的控制效果,本系统设计了一种结合模糊控制和PID控制两者优点的模糊—PID混合控制器。

实现的方法是在大范围偏差时采用模糊控制,在小范围时采用PID控制。转换公式为:

undefined

Ek为每帧图像上所对应的横向偏差距离,EM为转换阈值。本系统EM设定为5cm。模糊—PID控制器示意图如图7所示。

3.1 PID控制器设计

取预瞄点处横向偏差为控制器输入量,转向轮转角为输量出,则单输入单输出的PID控制器用增量式差分方程可以表示为:

U(k),U(k-1)为第k,k-1次采样输出的转向轮转角;E(k)为k帧图像中的横向偏差;E(k-1),E(k-2)为第k-1,k-2帧图像中的横向偏差;Kp为比例系数;Ki为积分系数;Kd为微分系数。

通过仿真和实验可以整定这些参数。需要说明的是,在整定参数之前需要获得小车的运动学模型和驱动系统的数学模型。整定好以上三个参数即完成了PID控制器的设计。

3.2 模糊控制器设计

根据模糊控制器的一般结构,设计出本系统的模糊控制器[5],如图8所示,它由输入量模糊化接口、数据库、规则库、推理机和输出解模糊接口五部分组成。模糊控制器采用双输入单输出结构,输入量取为横向偏差E和其变化率EC(即为连续两帧图像上E的差值),输出量取转向轮的转角U。

在设定小车车速恒定为0.5m/s的条件下,通过实验获知E的基本论域为[-20cm,-5cm]∪[5cm,20cm],偏差变化率EC的论域为[-2cm,2cm],转向轮转角U的论域为[-45°,45°]。

把E分成6个等级,则其词集为:{NB,NM,NS,PS,PM,PB};EC分成5个等级,其词集为:{NB, NM, ZO, PM, PB}, U分成7个等级,其词集为:{NB, NM, NS, ZO,PS, PM, PB}。NB,NM,NS,ZO,PS,PM,PB的物理意义为:负大、负中、负小、零、正小、正中、正大。

采用三角形函数做为隶属函数可以完成E,EC,U的模糊化计算,如图9-11所示。

模糊控制器控制规则的设计原则为:当误差较大时,控制量应当尽可能快地减小误差;当误差较小时,应考虑系统的稳定性,减少超调和振荡。结合本文得到的控制经验以及实验经验可总结出模糊控制规则,如表1所示。

这些控制规则可写为30条模糊条件语句,其形式为:

IF E=NB and EC=NB THEN U=PB

IF E=NB and EC=NM THEN U=PB

IF E=NB and EC=ZO THEN U=PB

……

根据模糊规则进行模糊推理可得到输出量U。最后需要将模糊量U进行解模糊变成精确量。本系统采用常用的面积重心法[6]。

4 试验及结论

图12是拍摄的小车地面实际路径跟踪视频的一组截图。图像表明:小车路径跟踪准确平稳,控制器设计达到了要求。

5 结束语

本文设计了一个基于嵌入式处理器采用A路径跟踪策略的视觉导航AGV系统,并重点讨论了系统的模糊—PID控制器设计步骤。实验表明控制器能有效控制自动导航小车跟踪地面路径,其动态和稳态性能基本达到了设计要求。

参考文献

[1]李渊言,勇华.嵌入式实时系统在移动机器人中的应用研究[J].机器人技术,2006,22(5-2):221-223.

[2]Ohya A,Kosaka A Kak.Vision-based Navigation by a Mobile Robot with Obstacle Using Single-Camera Vision and Ultrasonic Sensing[J].IEEE Transactions on Robotics and Automation,1998,14(6):969-978.

[3]陈纯.计算机图像处理技术与算法[M].清华大学出版社,2003.

[4]井建辉,张振东,吴文琪.工业视觉系统中摄像机定标策略问题[J].河北工业大学学报,2003,32(6):94-98.

[5]张明路,关柏青,丁承君.基于彩色视觉和模糊控制的移动机器人路径跟踪[J].中国机械工程,2002.13(8):636-639.

[6]蔡自兴.智能控制——基础与应用[M].北京:国防工业出版社,1998.

基于以太网的嵌入式视觉传感器 篇2

随着计算机科学和自动控制技术的发展,视觉系统被广泛用于工业检测、生物医学、军事侦察等领域。嵌入式视觉系统,是将图像的采集、处理与通信功能集成于单一相机内,从而提供了具有多功能、模块化、高可靠性、易于实现的机器视觉解决方案。同时,视觉传感器需要通过网络化设计完成控制信息、图像数据的通信任务,网络通信装置是视觉传感器的重要组成部分。笔者采用DSP和CPLD作为核心芯片来控制图像采集处理和传输,采集的图像经DSP的处理后,可经以太网传输至微机进一步处理,或与其他视觉系统、自动化检测装置通信,组成分布式监测网络。本系统的设计优点为:

·使用CMOS为图像传感器直接采集数字图像, 采用高速D S P和C P L D作为核心芯片来控制图像采集和处理, 简化了电路的复杂度, 提高了系统的集成度, 降低了成本。

·在DSP内对采集到的图像实现快速图像的预处理,提高了系统的智能化。

·通过以太网将图像数据传输到联网计算机,利于图像的传输、保存和与其他视觉传感器通信交换数据,组成视觉网络。并可与PLC、机器人和其他自动化装置通信。

系统设计

图1为系统框图,系统通过D S P给CPLD发出一个采集命令,由CPLD控制CMOS图像传感器向FIFO写入图像数据,同时D S P通过D M A将图像转移至SDRAM中并进行图像处理,在处理结束后,将处理的结果通过以太网传给微机或其他设备,对其I/O接口经扩展后,可与PLC等执行装置相连,被外部执行器触发,完成图像的采集处理,达到控制检测目的。

图像采集过程

图像采集过程主要通过D S P给CPLD (ALTERA的MAX II系列EPM240) 发送命令字,包括单帧采集、连续采集等控制命令。每次采集的图像时都先复位FIFO, 防止上一次采集过程出错有数据滞留而导致本次采集的图像出错。CPLD采集程序的仿真波形如图2所示,可以看出当采集单帧数据时,CPLD通过控制连续两个V S Y N C (帧同步信号) 间的F I F O (CYPRESS的CYCY7C4291V) 的/WE (写使能信号) 低有效来达到图像采集的目的。OV7640每帧图像的时间为33ms (30f/s) , 工作在黑白模式下,每幅图像数据有300K (640×480) , 即9.3MByte/s,而DSP读取的速度可以到66.7Mbyte/s,若采用1 6 B i t总线宽度的F I F O,则可达到133Mbyte/s。本系统中由CPLD对图像的行进行计数,为保证图像数据不溢出FIFO (FIFO为128K字节) ,选取每80行图像数据触发一次D M A传输 (D M A选择为外触发模式) ,每幅图像分成6次传输 (共480行数据) 。

以太网的图像传输

本系统的以太网设计,采用Wiznet公司全功能硬件协议栈芯片W5100。W5100内有16K的发送/接收缓存,支持TCP、UDP、ICMP、IPV4 ARP、IGMP等协议,本系统中采用TCP/IP协议,接收上位机的命令并执行相应的图像采集和处理任务。Wiznet公司提供了完整的Socket API函数,其工作方式类似于Windows的Socket API,程序在TI公司的CCS集成开发环境下,非常方便用C语言编写。图3是利用VC编写的基于异步Socket的系统软件。在不同的命令代码下上传图像。如果所示输入命令1,可以上传单幅不加任何图像处理的灰度图。

软件流程

系统的软件流程如图4所示。系统初始化后配置网络设置,建立命令Socket, Socket连接成功后处在TCP连接状态中。当接收到命令时,通过中断触发使D S P从W5100读取命令字,根据命令字做出相应的操作,添加图像预处理程序。然后关闭命令Socket,启动数据

Socket进行数据传输,发送处理后的图像数据以便上位机进行更高级的图像处理,最终得到用户想要的结果和数据。

图像采集和处理程序示例

本系统可以应用于视觉系统的多个领域,通过开发标准的软件处理模块,如几何边缘提取、Blob、灰度直方图、OCV/OCR、简单的定位和搜索等,由用户根据实际的测量需求选择相应的处理模块,由上位机编译成相应的固件并下载到系统中,从而实现特定功能的视觉检测。目前系统开发,只能完成特定的几种功能,以下以圆盘的直径检测为例,介绍系统的处理效果。

算法的基本思想是:先对采集的图像进行滤波,再用边缘检测算法检测出圆的边缘,最后再利用圆检测算法算出圆的外径和孔径。

检测基本过程如下:

标定

在能够进行检测之前,系统必须要标定。标定决定图像与物理世界之间的映射关系。因此,把图像中的每个点与一定的物理世界坐标以及反过来建立一一映射。使用一个无畸变的理想二维标定平面来进行标定。首先,可以使用一个标准的网格变换把物理坐标变换到目标平面;然后使用非线性映射把这些中间坐标变换到图像平面。用于变换运算的参数可以通过对一个包含已知位置信息的已知特征标定物成像来获取。非线性变换是通过在确定的测量点之间进行线性插补来实现。

图像预处理

图5为采集到的原始图象。由于CMOS传感器本身的噪声或系统的扰动等其它原因,原始图像中会含有噪声,所以要先对原始图像做低通滤波处理,可采用3×3模板的低通滤波器,或选择一些其它的更为复杂的滤波器,如自适应滤波器。

边缘检测

采用牛顿插值法对图像实现高精度的边缘检测,具体计算步骤如下:

·搜索像边缘过渡区计算向量

根据像边缘的位置沿着灰度值对应的行或列从亮区向暗区搜索,若相邻的两个点的灰度值下降幅度大于阈值 (阈值应由实验确定) ,即认为该点为像边缘过渡区的起始节点,过渡区包含有3~4个节点,把其定义为一维数组,以像边缘过渡区起始节点为首项,沿灰度值矩阵的行或列顺序存放由亮到暗像边缘的灰度值。

·使用牛顿插值函数实现像边缘光强函数软件解调设向量u[m]={u1, u2,......un},m=0, 1, .......n。

在基点m=0处向前5阶差分为:

设t为[0.5]内的连续变量,则五阶牛顿向前插值函数为:

·确定像边缘特征点的坐标

式 (2) 给出了表征象边缘位置的连续函数,对其求二阶导数,即,

其零交叉点 (d2u/dt2=0) 即为特征点。图6为边缘检测的效果图。

直径的计算

通过圆检测算法,计算出圆的外径和内径。限于篇幅,具体算法在此不作详细介绍。

在实验中,使用的f=35mm的镜头,采用LED环形光源从底部同轴照明,图像分辨率为640×480,相面尺寸为3.6mm×2.7mm。系统标定在XY方向上每像素为0.0375mm。对标称外径为1 5 m m,内径为9mm的元件做了10次检测,检测直径的平均外径值为401.6像素即15.06mm,内径为241.3像素即9.049mm。

实验结果

图7为我们设计的视觉传感器样机的系统实物图。其由三部分组成,分别为主板、电源板和CMOS电路板。采用抓包程序Ethereal对数据传输速度进行了测试。我们分别对发送数据量为100kbyte, 200kbyte和300kbyte进行了测试,实验结果如表1所示,对于本系统可以达到10f/s的图像传输速度。

结语

本文介绍的的视觉系统,在硬件系统,采用CMOS图像传感器,CPLD时序控制,以及高速DSP和以太网高速数据传输,构成了一个典型嵌入式视觉系统。通过以太网接口可组成分布式视觉检测网络。对于简单的视觉检测任务,系统可满足在线检测的要求。当然,要想最终脱离微机高速的完成复杂的图像处理任务,单DSP还不能满足要求。今后改进是添加FPGA实现FPGA与DSP融合的处理系统以及多DSP并行处理系统,实现高速嵌入式视觉系统。

参考文献

[1]. TMS320C5000系列DSPs原理与应用 (第2版) , 电子工业出版社, 2003

[2]. 赵建、刘济林、于海滨, 基于以太网的立体视觉图像采集系统, 电视技术, 2005, 12

[3]. 张飞舟、邓旭明, 嵌入式工业以太网接口开发与应用, 计算机工程, 2003, 29 (16)

[4]. WIZNET Corporation .W5100Datasheet (version 1.0.1) . 2006

嵌入式视觉 篇3

移动机器人是机器人研究的一个重要分支。目前已有多种基于嵌入式系统的移动机器人硬件构架,总的看来,除文献[1]外都移植了操作系统,使得控制系统能运行处理多个任务,提高了系统的稳定性和灵活性,尤其是文献[2],采用了RTLinux,使得系统的实时性进一步加强;但都是基于单款高性能处理器进行控制的,要么基于ARM,要么基于DSP,控制模式单一,自主性不强,文献[1]虽也提出多处理器分级控制思想,但基于两款普通的单片机,无法移植操作系统从而发挥其强大功能。

综合考虑成本和性能,基于实验室现有条件,本文提出了一种基于S3C2440和IDM240 640(DSP)的多处理器机器人控制系统,其中主控制系统基于S3C2440和RTLinux操作系统;从控制系统基于IDM240 640内部集成了DSP高速处理芯片。该系统可在复杂环境下进行自主导航。GPRS通过遥控的方式可代替工作人员完成诸如灭火、排爆等危险环境下的操作。

1 机器人系统平台

本文所研制的移动机器人由控制系统,传感器,行走机构,通信系统,电源系统等组成,整体尺寸460mm×480mm×250mm,如图1所示。表1给出了机器人平台的组成及参数。

2 机器人控制系统设计

2.1 控制系统设计构架

2.1.1 控制系统总体设计

本文控制系统采用的是一种基于多处理器的分级控制系统,分三级控制,分别是主控制系统和从控制系统和辅助控制系统。图2是机器人平台硬件框图。

2.1.2 控制系统硬件设计

(1)主控制器S3C2440A是一款带有ARM920T处理器内核的SOC芯片,主频400MHz,最高可达503M,能比较容易地实现复杂的控制算法。从控制器IDM240 640是一款内置TMS320F2806的多功能的伺服驱动器,采用TML(Technosoft MotionLanguage)运动语言可以实现单轴或多轴控制,转矩、速度、位置闭环控制等。

(2)各种传感器统一采用串口设备,将他们级联在GM8125的各个子串口上,这样方便主控制器进行数据采集[3]。超声波传感器适合远程测距,但是反应不灵敏,当障碍物距离比较近时可以使用红外传感器[1]。GPS模块主要用来确定车体的当前位置,为提高定位精度,本文采用差分定位,具体方法是将目标点设为基准站,采用核心算法卡尔曼滤波实现GPS和惯性导航的数据融合。通过惯性导航的辅助,使机器人导航模块具备容错能力,以满足定位和跟踪的功能[4]。接近觉传感器用来检测逼近机器人的高速物体,以免发生碰撞[5]。机器人控制系统中使用了多种传感器,每种传感器都有一定的使用条件和感知范围,只能给出环境或对象的部分或整个侧面的信息,为了有效地利用这些传感器信息,需进行数据融合处理。

(3)通讯是机器人设计中最重要的部分,通讯速度直接影响机器人的反应速度,为此在不影响机器人稳定运行的情况下尽量提高通讯系统的速度。本文机器人平台传感器部分统一采用串口,最高波特率可达115200bps,轴与轴之间采用CAN2.0B协议,最高通讯速率可达1M,主控模块与PC之间采用无线网卡进行数据传输。

2.1.3 控制系统软件设计

本文设计软件平台采用基于RTLinux实时操作系统。与传统前后台式程序设计相比,基于实时内核的程序设计具有时间确定性强、便于功能扩展和剪裁等优点。下文是各个模块的具体实现机制。

(1)UART驱动模块实现:GM8125可以将一个全双工的标准串口扩展成5个标准串口,可工作在单通道工作模式和多通道工作模式。图2显示了各串口之间的连接关系。GM8125的驱动流程图如图3所示。

(2)CAMIF接口驱动实现:S3C2440A内置CAMIF接口,支持ITU-R BT.601 656 8bit模式外部接口,可通过CODEC PATH和PREVIEW PATH两种方式输出像素数据,同时支持图像旋转。现给出OV9650的驱动流程如图4所示。

(3)GSM GPRS模块驱动实现:为能使通过手机远程控制移动机器人起停,本文在机器人车身上安装GSM GPRS MODEM,并将其通过GM8125与S3C2440的UART2连接。模块上电后,会返回一个“OK”,S3C2440收到此命令,即可发送各种AT指令,以控制机器人完成各种运动。具体实现框架图如图5所示。

控制系统的整体设计思路流程图如图所示。

2.2 控制系统的控制策略

整个控制系统采用分级控制思想,其中文献[3]主控制器的任务是:完成与从控制器之间的数据交换,如TML指令的传输;实现对级联在GM8125的传感器进行实时数据采集并将其显示在LCD屏幕上;通过无线网卡与PC通讯,以实现局域网范围内的监测。主控制器运行的RTLinux操作系统主要任务是:初始化各个驱动模块,各个模块将其有用信息送往主进程,以供其决策处理进而发送各种控制指令。文献[1]从控制器的任务是:接受来自主控制器的TML指令并将其送往执行机构以控制机器人的每一个动作,同时向主控制器返回应答信息。文献[4]PC机主要负责接受来自主控制器的无线数据进行数据融合,并将有用信息发往主控制器。图7给出了分级控制系统协调运作示意图。

为使机器人能够在复杂环境(多障碍物)下面能够准确及时地到达指定位置,本文应用人工势能场APF(artifical potential field)解决路径规划问题。人工势能场中最重要的两个参数,一是机器人车体位置,一是各障碍物位置。这两个参数是通过0V9650摄像头和GPS给出的。其中车体位置可由GPS实时给出,障碍物位置由摄像头给出,其具体过程如下:首先进行障碍物检测,障碍物检测的主要目的是要获得障碍物与地面的交线,并得到交线的图像坐标点集{(u,v)}。障碍物检测是对拍摄的彩色图像进行图像处理提取障碍物,并获得其在图像中的位置信息即障碍物轮廓坐标集。其次进行单目测距,图8-11给出了测距的具体过程:

其中,2p为垂直视场角;2r为水平视场角;o为摄像机俯仰角;b为摄像机前方盲区长度;d为摄像机光轴与地面的焦点处沿y轴视场的长度;h为摄像机的安装高度;2w为摄像机光轴与地面焦点处平行x轴视场宽度。

由图8和图9可得以下几何关系:

根据小孔成像模型,把单目视觉系统简化为摄像头投影模型,如图10及图11所示。

其中,O为摄像头镜头光心;G为光轴与地面的交点;I为O点在地面的垂直投影;ABCD为摄像头拍摄到的梯形区域;线段EI对应图8中的b;图10中的ABCDE与图11中的abcde对应;m,n为图像的宽和高,即图像分辨率为m×n;x-y坐标系是机器人坐标系;u-v坐标系是图像坐标系。

图像每列像素对应的垂直视场角啡为2p(n-1),每行像素对应的水平视场角度为2r(m-1)。由此可得,对于图像中任意点像素(u,v),其沿y轴的距离由公式(5)计算:

其沿x轴的长度由公式(6)计算得到:

其中,o,p,r由公式(1)-(4)计算;m×n是图像分辨率。式(5)和式(6)即为图像坐标与机器人坐标间的转换关系,通过障碍物检测可获得障碍物在图像中的位置,即轮廓线图像坐标{(u,v)},根据式(5)、式(6)可得到它们在机器人坐标系中对应坐标{(x,y)}。y值即为障碍物与机器人的距离,x值则为障碍物在x-y坐标系中与机器人沿x轴向的相对位置。这样便实现了单目视觉测距。

3 控制系统特点及实验结果

本控制系统的主要特点是:(1)提出多处理器分级控制,以缓解主控制模块由于多中断源频繁中断而带来的压力,避免传感器数据采集丢失,明显增强了系统的反应灵敏度和运行稳定性;(2)视频采集部分采用S3C2440+OV9650,视频数据采用并行方式传输,其速度明显快于USB摄像头的传输速度;预留了多种接口,增强了系统的可扩展性。(3)采用改进的APF导航算法使得机器人能够在多障碍物环境下能够准确到达目的地。(4)实现了单目测距,跟双目测距相比计算速度快很多,同时也节省了成本。(5)软件平台采用RTLinux操作系统,提高了系统的实时性。整个控制系统设计简单,控制模式多样,可使系统平台运用于无人车驾驶领域。

为了验证本机器人控制系统性能,设计如下实验:先在室外放置一些木箱障碍物,设定好起点、终点,并将机器人放置在起点;然后在机器人底部放置一个沙袋,使之在行进过程中能够均匀泄露,以记录机器人运行轨迹,实验结果显示,机器人能避开从起点到终点的所有障碍物,走出一条光滑的曲线,最准到达终点,如图12所示。

4 结束语

本文设计了一种基于S3C2440和IDM240 640的多处理器分级控制机器人平台,详细阐述了系统软硬件设计,并给出了实验结果。该系统采用模块化设计,具有良好的鲁棒性和可扩张性,同时将嵌入式技术运用于机器人平台,可促进机器人向小型化、智能化网络化方向发展。

摘要:设计了一种适用于复杂环境下自主导航的两轮式移动机器人,提出了一种基于多处理器的机器人分级控制系统,并详细阐述了控制系统的软硬件设计与实现。设计的机器人可进行视觉导航,能在未知的环境下准确及时地到达目标点。

关键词:自主导航,移动机器人,多处理器

参考文献

[1]陈红亮,李文锋,李斌,等.基于多处理器的小型移动机器人设计[J].微计算机信息,2008,24(10-2).

[2]刘森,慕春棣,赵明国.基于ARM嵌入式系统的拟人机器人控制器的设计[J].清华大学学报,2008,48(4).

[3]张云洲,吴成东,薛定宇,等.自主移动机器人嵌入式控制系统研究[J].东北大学学报,2008,29(1).

[4]杨小铸,李文锋.基于嵌入式Linux的移动机器人控制系统设计[J].计算机工程,2007,33(23).

嵌入式视觉 篇4

视觉测量技术具有速度快、精度高、非接触、自动化程度高等优势,该技术近年来在非接触测量领域发挥越来越大的作用。工业生产中二维视觉测量,首先要调节相机光轴与物体的垂直程度,从而能够保证视觉测量的精度与准确性,以及测量的稳定性。

光轴与被测物面法线之间的偏差总是存在的,这种偏差一定会引起测量误差。测量时如何将这种误差降到最小,使得测量的精度更高,有关这方面的研究至今还比较少。文献[1]研究了数字散斑相关方法(DSCM)中摄像机光轴与物面不垂直而引起的误差分析;文献[2]研究了二维视觉测量中光轴与载物台垂直的调节方法;文献[3]通过光轴平行性偏差与偏心环旋转角度之间的校正模型计算出偏心环需要调整的角度值,实现激光测距机光轴的校正;文献[4]提出了用遗传算法进行多目标自适应的光轴调节系统;文献[5]从光轴的偏差原理出发,提出一种在光盘驱动器内的自动调整的物镜头位置方案。本文基于小孔成像原理与数字图像处理方法[6],提出一种操作简单、稳定性好、实用性强的光轴与物面垂直度调节的新方法——面积法,该方法有效提高了二维视觉测量[7]的精度。其特点是依靠图像在光轴与物面垂直和倾斜时特定区域面积不同的特征,而不依靠其他设备,进行光轴与物面垂直度调节。

1 光轴与物面垂直调节原理

1.1 成像原理

相机通过透镜将三维或二维场景投影到相机二维像平面上,这个投影可用成像变换描述,即相机成像模型。透视投影是一种精确的相机投影,但计算比较复杂,在一定情况下,可以用针孔模型来近似透视投影以简化运算。

相机立体成像模型如图1所示,其中:COC′为相机光轴,AC、FM为被测物,C为光轴与被测物面的交点。平面1与光轴垂直,A、C、C′、A′四个点在一个平面上,被测物AC所成的像为A′C′。平面2为平面1绕线L倾角θ,A1C是平面1上被测物AC倾角θ,并且A1对应点为A,所成的像为A1′C′,D1对应AC上的点D,所成的像为D1′;F、M、F′、M′四个点也在一个平面上的,G为被测物FM上的点。

如图2所示在面ACC′A′上单独考虑被测物AC的成像规律,由透视投影原理得到方程:

倾斜后被测物A1C所成的像A1′C′为

θ∈[-π/2π/]2,当被测物靠近镜头倾斜时,θ为正;当被测物远离镜头倾斜时,θ为负。

被测物A1D1所成的像A1′D1′为

远离镜头一侧的被测物B1E1所成的像B1′E1′为

由式(3)、(4)得到变换规律:

1)相机光轴与物面垂直时,像A1′D1′与像B1′E1′之间的差值,理论上为0;

2)被测物倾斜时,靠近镜头的被测物AD所成像A1′D1′比光轴与物面垂直时成像A′D′要长;

3)被测物倾斜时,远离镜头的被测物BE所成像B1′E1′比光轴与物面垂直时成像B′E′要短。

在平面1上区域ADGF成的像为A′D′G′F′,如图3,以图像左上角的点为坐标系的原点,任意线段A′F′、D′G′、A′D′、F′G′,它们的方程为f1(x)、f2(x)、f3(x)和f4(x)。A′、D′、G′、F′的x坐标分别为α、β、γ、η(设α≤β≤γ≤η),y坐标都是小于C′的y坐标,则像A′D′G′F′面积为

图像面积是像素点的个数之和,由定积分元素法原理,将区间[αη]分为间隔1个像素的有限n个小区间,即为n条宽度为1个像素互相平行的线段,第i条的线段长度为∆li,于是有:S=∑ni=1∆li。像A′D′G′F′面积变化的规律:

1)当光轴与物面垂直时,理论上,面积相等的上下区域所成的像面积也是相等的;

2)当0<θ<π/2时(靠近镜头倾斜),角度θ逐渐变大,像区域A′D′G′F′的面积S逐渐变大;

3)当-π/2<θ<0时(远离镜头倾斜,离镜头越远,θ越小),角度θ逐渐变小,像区域A′D′G′F′的面积S逐渐变小,由此可以判断光轴是否与物面垂直。

1.2 光轴物面垂直原理

参考物选用X靶标,如图4所示。X靶标为75 mm×75 mm,方格为(2 mm×2 mm)±0.001 mm。光轴与像平面交于图像的中心点。因为X靶标的对称性,不需要考虑X靶标位置关系,可简化调节。

本文采用面积法进行光轴与物面的垂直度调整。相比线段法[2],面积包含的信息量多,在发生微小倾斜时,面积的变化量比线段长度的变化量大,受环境与光源等外界因素影响比较小,稳定性好。在现场使用时,十分强调操作便捷,而线段法在垂直与倾斜时,线段长度的变化量很小,受外界因素影响比较大,稳定性不足,很难达到垂直的要求,不易调整,更不能确定相机镜头或者被测物倾斜的方向。面积法更适合工业现场在线的光轴与物面的垂直度调整。

如图5,选取X靶标中心3×3的九个网格区域,光轴一定穿过3×3区域的中心网格。在图片中心,图像畸变比较小,可忽略不计。利用面积法,计算九个区域第一行的三个网格面积之和,记为Su;第三行的三个网格面积之和,记为Sd;第一列的三个网格面积之和,记为Sl;第三列的三个网格面积之和,记为Sr。

当上下两个区域面积相等,并且左右两个区域面积相等时,则相机的光轴与物面是垂直的,但是由于图像畸变因素的存在,两个区域达到完全相等的情况一般不存在,在一定的范围内满足即可。

2 光轴与物面垂直调节设计与实现

2.1 亚像素靶标特征点的提取

采用Harris算子[8]进行X靶标像素级特征点的提取,然后再用空间矩方法进行亚像素级特征点的提取。Harris算子提取特征点,具有较高的稳定性和鲁棒性,能够在图像旋转、噪声干扰等情况下准确提取出角点,操作简单,且不需要设置阈值,整个过程的自动化程度高,其不足之处检测精度只能达到像素级别。

本文针对Harris算子的效率不足做了部分改进。为了减少噪声,对图像进行二值化处理;为了减少运算量,对二值化后的图像,只提取边界信息作为寻找角点的目标区域;防止边界信息在二值化过程中丢失,对图像进行扩充边界;然后用Harris算子,在目标区域中进行像素级角点的提取。Harris算子可以通过矩阵M来判断是否为角点,Ix图像在x方向上的梯度,Iy图像在y方向上的梯度,G(x,y)为高斯滤波函数。

角点响应函数值(CRF):

其中:det(M)为矩阵M的秩;trace为矩阵M的迹;k为比例因子,一般取经验值0.04~0.06。R的值越大,表明该点越趋于像素角点。当R大于零且较大时,对应于像素级角点;当R的值较大但小于零时,对应于边缘区域;如果|R|较小时,对应于图像的平坦区域。

空间矩思想由EPLyvers和ORMitchell[9]提出,对像素级角点利用空间矩的方法可以进行亚像素角点的提取[10],f(x,y)为图像数据,则其空间矩表示:

为了降低空间矩的维数,旋转θ角使得函数f(x,y)相对x轴对称,得到函数f′(x,y)的空间矩和函数f(x,y)的空间矩之间的对应关系为

亚像素边缘检测公式为

每一个像素级角点分别在上下左右四个方向能够找到四条包含12个像素的像素级边缘直线。将找到四条边缘线上的每个边缘点利用空间矩算子,找出各点对应的亚像素位置。再将每条边找到亚像素边缘点利用最小二乘法拟合成四条边缘直线,则交点为亚像素角点,如图6所示。

特征点提取的精度以及稳定性直接影响光轴与物面垂直度的判断。本文所述亚像素特征点的提取方法,经实验证明,稳定性好,精度高。

2.2 光轴物面垂直的判断

面积法判断相机的光轴与物面垂直度,计算九个区域面积的Su、Sd、Sl、Sr。因为X靶标的网格可能存在畸变,本方法利用海伦公式来求解面积,将网格按正对角线分为两个三角形的面积来求解,a、b、c为三角形的三条边长。

面积法能够判断相机光轴与物面是否垂直,还能判断镜头与被测物体相对倾斜的8个方向。利用面积成像规律,判断依据为

1)|Su-Sd|

2)|Su-Sd|>threshold:

(1)Su>Sd时,则图片上侧靠近相机镜头,下侧远离相机镜头;

(2)Suthreshold:

(1)S1>Sr时,则图片左侧靠近相机镜头,右侧远离相机镜头;

(2)S1

当相机镜头与被测物存在相对上下倾斜,又出现左右倾斜,则上下区域面积差值的绝对值大于阈值,同时左右区域面积差值绝对值的也大于阈值,则相机镜头与被测物之间存在左上、右上、左下、右下4种相对倾斜。根据面积法,可以判别相机镜头与被测物体发生相对倾斜的方向,根据提示还可调整镜头与被测物相对倾斜的位置。

2.3 光轴物面垂直的判断阈值的确定

阈值直接关系判断相机镜头与被测物体相对倾斜方向的准确度,阈值公式是在不同的焦距镜头,不同的物镜间距离,不同的环境中,反复测试确定。

本设计选用三种固定焦距的computar系列镜头,其焦距分别为8 mm,12 mm,16 mm,以及采用可微调伸缩与旋转支架来固定相机。通过在不同的焦距下改变物体与镜头之间的垂直距离(本质上改变靶标的网格像素边长),计算光轴与物面临界垂直处,区域Su与Sd、Sl与Sr之间的差值,本设计以3°为临界垂直的分界角度。随着物距与焦距的变化,临界垂直面积差值的分界角度。随着物距与焦距的变化,临界垂直面积差值的变化与靶标成像网格像素边长有关。

临界垂直面积差值的变化,可得出阈值与靶标成像的网格边长近似指数关系变化。图7中,在不同焦距,以及不同的物镜间的距离下,采集了55个网格像素边长及其对应的临界垂直面积变化值。将对应的网格像素边长与临界的面积差值,按式(12)通过网格最优化方法,在a=4.0,k=0.027时为寻得最优值阈值曲线,但在a,k为寻优值时部分阈值将大于临界垂直面积的差值,所以阈值选取为在a=4.0,k=0.025处曲线。

式(12)中,数值3.5为不同焦距的镜头在空间1 mm对应图像10个像素情况下,临界状态对应的阈值;d是X靶标的网格对应的像素边长;a=4.0,k=0.025。

3 实验测试

实验中,采用分辨率为640×480的相机以及网格长为2 mm的X靶标。本文相机的左右上下4个方向与图片的上下左右对应关系是:相机的左对应图片的上,右对应图片的下,上对应图片的左,下对应图片的右。

3.1 镜头倾斜方向调整

面积法能判断相机光轴与物面是否垂直,并且能够将镜头与被测物相对倾斜方向显示。如图8,显示镜头当前状况,用户可根据界面提示,调整镜头。图8列举三种显示图,按顺序是垂直,右偏、左下偏。

3.2 垂直判断数据结果

面积法判断光轴与物面垂直度调节时,在左、右、上、下、左上、右上、左下、右下8个方向,相机镜头旋转微小的角度,拍摄多幅图片。测量数据记录在表1中,各个方向经过多次重复测量。在调节前,首先要判断相机与拍摄的图像之间上下左右的对应关系,这个对应关系作为输入的参数使用。

采用线段法时,相机镜头旋转微小角度,拍摄多幅图片,如图9所示,记录线段A1B2和C2D1,A2B3和C3D2,B1B2和B3B4,C1C2和C3C4长度,测量数据记录在表2中,此时阈值取0.1 pixel。

由表1可见,采用面积法时,相机光轴与物面垂直与偏离时面积变化较大,受光源等外界因素影响较小,判断更准确,且阈值选取容易,能够根据焦距、物镜面间的距离自动调节,实用性较强。表2中数据可见线段法,垂直与偏离时线段长度变化很小,设定阈值比较困难,在外界因素影响下,线段法的长度会产生微小变化,造成其在稳定与偏离之间来回摆动,很难稳定在一个状态下,不适合工业现场使用。

4 结论

1)采用X靶标为判断光轴与物面垂直的参照物,X靶标具体对称性,不需考虑其位置,操作简单。

2)改进的Harris算子与空间矩的方法相结合提取特征点的亚像素坐标,稳定性与鲁棒性高,能够在图像旋转、噪声干扰等情况下,准确的提取特征点的亚像素坐标,并且运算量相对减小,精度高。

3)采用面积法来进行光轴与物面垂直度的判断,优点是面积信息量多,稳定性好,实用性强,更方便用户操作,可以更好的提高二维视觉测量的精度。

4)面积法不仅能够很便捷的判断光轴与物面的垂直度,而且能够准确的判断相机镜头或者被测物倾斜的8个方向,用户可以根据提示调整镜头或者被测物位置。

5)本方法操作简单,算法量小,实用性强,稳定性好,已经在嵌入式机器视觉工业现场进行在线光轴与物面的垂直度的调节。

参考文献

[1]孟利波,金观昌,姚学峰.DSCM中摄像机光轴与物面不垂直引起的误差分析[J].清华大学学报:自然科学版,2006,46(11):1930-1932.MENG Li-bo,JIN Guan-chang,YAO Xue-feng.Errors caused by misalignment of the optical camera axis and the object surface in the DSCM[J].Journal of Tsinghua University:Sci&Tech,2006,46(11):1930-1932.

[2]龚昊,吕乃光,娄小平.二维视觉测量中光轴与载物台垂直度调节方法[J].北京机械工业学院学报,2006,21(3):35-38.GONG Hao,LüNai-guang,LOU Xiao-ping.A method of verticality adjusting between optical axis and carrier in Two-Dimensional vision measurement[J].Journal of Beijing Institute of Machinery,2006,21(3):35-38.

[3]骆新新,刘秉琦,孙东平.关于激光测距机光轴平行性校正方法的改进[J].应用光学,2009,30(3):519-522.LUO Xin-xin,LIU Bing-qi,SUN Dong-ping.Improvement of optical axis parallelism correction for laser range finder[J].Journal of Applied Optics,2009,30(3):519-522.

[4]Murata N,Nosato H,Furuya T,et al.An automatic multi-objective adjustment system for optical axes using genetic algorithms[C]//Proceedings of the5th International Conference on Intelligent Systems Design and Applications,2005:546-551.

[5]Jung Rae Ryoo,Tae-Yong Doh.Auto-adjustment of the Objective Lens Neutral Position in Optical Disc Drives[J].IEEE Transactions on Consumer Electronics(0098-3063),2007,53(4):1463-1468.

[6]章毓晋.图像工程[M].北京:清华大学出版社,2007.ZHANG Yu-jin.Image Engineering[M].Beijing:Tsinghua University Press,2007.

[7]张广军.视觉测量[M].北京:科学出版社,2008.ZHANG Guang-jun.Vision Measurement[M].Beijing:Science Press,2008.

[8]Harris C,Stephens M.A Combined Corner and Edge Detector[C]//Proceedings of the4th Alvey Vision Conference,Manchester,1988:147-151.

[9]Lyvers E P,Mitchell O R.Subpixel Measurements Using a Moment-Based Edge Operator[J].IEEE Transactions on Pattern Analysis and Machine Intelligence(S0162-8828),1989,11(12):1293-1309.

上一篇:测井模拟器下一篇:坐标旋转变换