首页 > 文章中心 > 计算机视觉的基本技术

计算机视觉的基本技术

前言:想要写出一篇令人眼前一亮的文章吗?我们特意为您整理了5篇计算机视觉的基本技术范文,相信会为您的写作带来帮助,发现更多的写作思路和灵感。

计算机视觉的基本技术

计算机视觉的基本技术范文第1篇

【关键词】计算机 视觉 图像处理 技术

一、引言

随着计算机技术的不断发展,在20世纪60年底产生了计算机视觉学这一学科。计算机视觉是借助计算机以及各种设备,进行生物视觉模拟的一种技术。计算机视觉学的主要任务,是借助已掌握的图片、视频等资料,进行计算与处理,和人类及其他生物的视觉过程一样,

得到相应形式的三维数据信息。计算机视觉学的发展,在工业、农业的生产中,地质勘探、天文、医学观察等领域也有着重要的应用价值。因此,视觉学的研究和应用转化受到了越来越多的重视。

二、计算机视觉学的图像分割研究

(一)数据驱动的分割研究

在计算机视觉学应用过程中,经常进行的数据驱动分割有下面几项内容:第一种是边缘检测的分割、第二种是区域分割、第三种是边缘和区域相互结合的分割。第一种基于边缘检测的分割,这种分割的基本方法:首先对检测图像的边缘点进行检测,然后根据一定的法则进行轮廓的连接,获得分割的区域。基于边缘检测的分割其难点是边缘检测时如何处理好抗噪声性能、检测的精度之间的矛盾。所以,在研究的过程中,提出了多种多尺度边缘检测的方法,按照实际问题进行多尺度边缘信息设计等方案,以获得更为合适的抗噪性能和检测的精度。第二种基于区域的分割,它的基本思想是按照图像数据的特点,将整个图像的空间划分成为几个不同的区域进行图像处理。

(二)计算机视觉学模型驱动的分割

经常使用的模型驱动分割有下面三种,第一种模型是基于动态轮廓的模型、第二种模型是组合优化模型、第三种模型是目标几何与统计模型。第一种是基于动态轮廓的模型用在进行分割目标的动态轮廓,因为其能量函数使用的是积分运算,有着很好的抗噪性能,对于目标的局部模糊也不敏感,所以其适用性很广。但这种分割方法容易收敛到局部最优,因此要求初始轮廓应尽可能靠近真实轮廓。通过组合优化的方法进行分割问题的处理,是使用一目标函数综合表示分割的相关要求以及约束,把分割变为目标函数的优化求解。因为目标函数多数情况下作为多变量函数存在的,因此可以通过使用随机优化的方法来实现。

(三)计算机视觉学图像分割的半自动方法

通过对人工参与程度的分,我们可以得出图像分割,主要有三种类型即:人工图像分割、半自动图像分割、自动图像分割等。人工图像分割指的是操作者使用鼠标,将分割区域的轮廓进行勾画的方法,人工图像分割的缺点是费时费力,而且很容易就会受到一些主观因素的影响,并且人工图像分割的可重复性较差。自动图像分割不需要借助人机交互就能完成,但是也很难实现同一批图像处理的满意分割效果。半自动分割这种形式指的是将人机交互同自动分割结合在一起,半自动分割可以实现对不同图像与处理需求的适应,并且可以大大降低计算过程的复杂性。在计算机技术不断发展的背景下,计算速度和容量有了大幅度的提升,计算机图像处理及视觉应用取得了丰硕的成果。

三、计算机视觉技术的分析

(一)以模型为研究对象的处理方法

在以模型世界作为研究对象的视觉学研究过程中,以Roberts的开创性工作作为一种标志,在他的工作过程中,引进了三维物体与二维物体成像的关系,使用较为简单的边缘特征提取、组合线段等手段和方法。他对三维关系的分析只是按照简单的边缘线段的约束关系,缺乏对人类或其他动物视觉系统感知三维空间关系的充分考虑。但是早期的这些研究工作,对计算机视觉学的研究和发展发挥了良好的促进意义,但是对于较为复杂的景物就不能够奏效。

(二)以计算理论为主体的视觉模型

随着计算机视觉研究的不断深入,在二十世纪七十年代,计算机视觉技术的研究,开始向着更为理性的阶段发展,主要表现在:不同本征特性的恢复,恢复的内容有三维形状恢复、运动恢复、光源恢复等等。研究的出发点是光学、生理学以及射影几何的视角出发,对成像及其逆等问题进行研究。在这个过程中,一些学者提出了以表示作为核心、通过算法作为中间转换过程的视觉处理模型,例如:著名的计算机视觉学研究者Marr就提出了这些观点,在他的理论里面,对表示的重要意义进行强调,并且从不同层面上对信息处理问题进行了研究。

(三)计算机视觉的应用研究

在现实生活和生产的过程中,计算机视觉主要应用在照片资料、视频资料处理上,例如:航空照片的处理、卫星照片的编译、医学领域的辅诊断、移动机器人视觉导航等等。其中,工业机器人手眼系统的研发,成为计算机视觉应用最具代表性的成果之一。因为工业生产、施工等现场等因素具有一定的复杂性,这种环境下的光照、成像特点等等可以控制,这就使得计算机视觉的应用更为简单,对于系统的实际构成有着很好的作用。移动机器人与工业机器人不同之处就是移动机器人具有一定的行为能力,这就需要研究者解决机器人的行为规划问题。在移动机器人种类、智能化水平不断提升的背景下,对视觉能力的要求也越来越高,这也使得计算机视觉有了更为广阔的应用前景。

四、结语

综上所述,计算机视觉学作为人类科技发展和社会进步的一种学科体现,在前进和发展的过程中,通过研究者和应用者的不断总结和探究,取得了丰硕的成果。在未来视觉技术发展的道路上,仍然有大量的工作需要进行研究。

参考文献:

[1]韩祥波, 刘战丽. 计算机图像处理技术在农产品检测分级中的应用[J]. 安徽农业科学 , 2013,(34)

[2]赵萍, 李永奎, 林静, 白雪卫. 数字图像处理技术在农产品方面的应用[J]. 农机化研究 , 2012,(11)

计算机视觉的基本技术范文第2篇

【关键词】计算机视觉;构件;表面特征;检测

表面缺陷检测以及特征提取,所涉及的范围是非常广泛的,包括了铁轨表面缺陷、带钢表面缺陷以及织物表面缺陷等。因此加强对产品的表面缺陷提取以及质量检测显得尤为重要,目前基于计算机视觉的构件缺陷检测系统已经受到国内外研究人员的重视,如何更好地将计算机视觉技术引入到产品表面质量缺陷检测中去是未来发展的重点。笔者将在下文中就此展开详细的阐述。

1.计算机视觉的基本工作原理

1.1系统结构

计算机视觉是一项涉及范围广泛的技术,他通过图像采集装置将检测目标转化为图像信号,再经过专门性的额图像处理系统最终生成具体的表面特征。具体来讲在图像处理环节米旭涛根据图像的具体像素以及图像分布和颜色、亮度、饱和度等进行目标提取,再比照系统预设的参照值得出最终的检测结果,例如尺寸大小、颜色等师傅偶合格。计算机视觉处理系统包括了光源、镜头、计算机以及图像采集装置和处理系统等,这些系统综合组成共同推动了计算机视觉系统的正常稳定运行。

1.2计算机视觉硬件设计

计算机视觉系统的硬件平台包括了照明系统、镜头相机以及图像采集装置和工控机四个部分,这四个部分缺一不可,共同组成了整个计算机视觉系统。

1.2.1照明系统

照明系统是整个计算机视觉系统的关键,尤其是在光源和照明方案的配合上更是直接影响了整个系统运行的成败。因此在照明方案的制定以及光源的选择上应该尽可能的突出物体特征参量,综合考虑对比度以及亮度等因素,将计算机视觉系统的光源与照明方案相匹配,选择需要的几何形状以及均匀度等,同时还需要结合被检测物体的表面特征几何形状。针对构件表面缺陷的照明方案,笔者认为应该选择功率相对较大的LED光源,用低角度的方式进行照明。

1.2.2相机镜头

相机系统是成像的关键,因此在相机镜头的选择上应该适用于具体的构件。一般来说相机镜头包括了两方面内容,一是线扫,二是面扫。通过二者的综合运用实现更好地成像效果。

1.2.3图像采集卡

图像采集卡主要是指在计算机视觉系统中位于图像裁剪机设备和图像处理设备之间的重要接口。是成像的中间环节,发挥着不可或缺的作用。

2.基于计算机视觉的构件表面缺陷特征提取

基于计算机视觉的构件表面缺陷特征提取可以分为为三个重要部分,分别是图像预处理部分:主要是指针对构件进行区域的定位,将非构件的部分移出计算机视觉的缺陷提取技术中去,从而降低了后续工作的工作难度;其次是进行缺陷定位,主要是指通过特定的技术和算法将缺陷从结果当中直接分离出来。第三部分是缺陷特征的提取,也是系统处理的结果部分,是通过计算缺陷的程度以及缺陷大小,从而为后期的构件维护提供参考依据。具体来说,这三个部分的操作主要体现在以下几个方面:

2.1区域定位

区域定位是减少构件处理和选择时间的关键,能够大大提高构件缺陷提取的效率。构件的表面的基本特征和大致集合框架提取是区域定位和的第一步,要将计算机区域定位和缺陷提取结合起来,更好地实现缺陷分析。要做好构件的区域定位首先需要明确构件的基本种类和特征:一是根据构件的重用方式来说,可以分为白匣子、灰匣子、黑匣子从构件的使用范围来看又可以分为通用构件和专用构件;根据构件的粒度的大小可以分为小。中大三种不同粒度的构件;再次是从构件的功能上来看可以分为系统构件、支撑构件以及领域构件三个部分。四是从构件的基本结构特征来看可以分为原子构件以及组合构件。最后从构件的状态来说,又可以分为动态和静态构件。因此从不同种类的构件进行区域定位为视觉系统正常运行创造了优良的条件。

2.2缺陷提取

在进行缺陷提取的过程中,难免会受到客观的环境影响,比如噪声、温度以及湿度等对图像处理的结果产生影响,因此需要对区域定位中产生的区域进行滤波处理,然后再采用阈值分割的办法进行缺陷提取。具体操作步骤如下所示:

(1)计算出成像中的最小最大灰度值,并且设置初始阈值。

(2)根据阈值,结合图像的分割目标,将图像分割成为目标和背景两个部分,求导出平均灰度值。

(3)再根据新的平均灰度值计算出新的阈值。

(4)观察阈值的初始值与新阈值之间的关系,如歌二者相等则整个计算过程就结束,如果不相等,则就需要进一步计算。

通过阈值计算得出啊的最佳阈值分割效果图,能够进行初步的缺陷预判,但是初步预判当中还存在较多的不确定因素,主要包括两类,一是在边缘部分出现的细小毛刺,由于与缺陷的距离较近,因此在初步缺陷提取中容易形成误判、再次是在构件表面有一些非常细小的缺陷,这些缺陷的影响较小,不会对构件的性能造成影响,因此在进行缺陷提取的过程中需要将这两个因素排除在外,具体主要是指采用图像形态学中开运算和闭运算,从而达到对构件中的明了细节和暗色细节的过滤。具体来说缺陷的分割提取采用的是Sobel算子。主要是利用了图像像素点的上下左右灰度加权算法,对构件表面的缺陷进行检测。再采用二值图像边界跟踪法,将缺陷从构件图像中分离出来。

2.3缺陷特征提取

缺陷特征提取,又可以称之为缺陷的定量计算和定性过程,是将前期所得的数据结果以更加直观的形式展现出来,通过对比指标参数判断构件的表面质量是否合格,符合基本的生产标准。一般来说常用的表示缺陷特征的标准有以下几种:

(1)周长:周长是对缺陷的边界长度的描述,在图像特征上显示则是指构件成像上的缺陷区域的边界像素数量。

(2)面积:面积相对于周长能够更加直观地反映整体缺陷的大小,它是缺陷区域中的像素的总数,因此更高体现缺陷的影响规模。

(3)致密性:这是一个相对专业的缺陷指标概念主要是指每平方面积上的平方周仓,是一个双单位描述指标。

(4)区域的质心:区域质心是描述缺陷的影响关键也就是缺陷区域内的核心区域,是对整个区域的核心描述。

(5)最小外接矩形。

3.结语

综上所述,构件表面缺陷直接影响构件的最终使用效果,构件表面缺陷的检测应用领域也逐渐广泛,而计算机视觉技术在检测缺陷中的优越性更体现了基于计算机视觉的构件表面缺陷特征提取的研究价值。本文主要针对构件表面缺陷的检测,综合计算机视觉技术提出了具体的检测方法和检测工作原理,通过对表面缺陷的检测,力图提高构件的整体质量。

【参考文献】

[1]陈黎,黄心汉,王敏,何永辉,龚世强.带钢缺陷图像的自动阈值分割研究[J].计算机工程与应用,2002,(07).

[2]许豪,孔建益,汤勃,王兴东,刘源泂.基于数学形态学的带钢表面缺陷边缘提取[J].机械设计与制造,2012,(06).

计算机视觉的基本技术范文第3篇

关键词:计算机视觉;地图匹配;SLAM;机器人导航;路径规划

1概述

计算机视觉在人工智能学科占据重要地位,为自主移动机器人视觉导航做了深厚的理论铺垫。目前,机器人导航技术有很多种,传感器导航技术如里程计、激光雷达、超声波、红外线、微波雷达、陀螺仪、指南针、速度、加速度计或触觉等得到了普遍应用,与上述非计算机视觉导航技术相比较,计算机视觉导航技术如人眼般具有灵敏度高且可捕获的信息量大以及成本低等优点。由于室内相对室外空间比较狭小且内部环境复杂,所以普通移动机器人在作业过程中,完成躲避眼前障碍物、自主导航以及为自身找出一条可行路径等一系列操作会相对比较困难。计算机视觉导航技术可利用本身的摄像头获得室内周围的环境信息,实时对其周身的场景进行快速反馈,对视野前方障碍物进行快速识别和检测,从而确定一条高效的可行的安全路径。本文对计算机视觉导航技术进行分类研究,主要分为3类:第一类是环境地图事先已知,提前对外界环境特征进行提取和处理,建立全局地图,并将地图信息存储在机器人内存数据库中,在导航的时候实时进行地图匹配;第二类是同时定位与地图构建,移动机器人在自身位置不确定的情况下根据自身的摄像头获取周围未知环境信息,在作业时逐步构建周围的环境地图,根据构建的增量式地图自主实时定位和导航;第三类是不依赖环境地图,自主移动机器人不需要依赖任何的环境地图,其在作业活动时的可行区域主要取决于摄像头实时识别和检测的环境相对信息。

2环境地图的表示方法

目前,计算机视觉导航技术多采用栅格地图、几何地图、拓扑地图和混合地图构建环境地图信息。

2.1栅格地图

栅格地图,将栅格图像考虑为一矩形,均分为一系列栅格单元,将每个栅格单元赋予一个平均概率值,并利用传感信息估计每个单元内部内存障碍物的概率。构建栅格地图的优点是其地图表达形式直观,创建和维护比较容易;但当划分的栅格单元数量不断增多时,实时性就会慢慢变差;当划分的栅格单元越大时,环境地图的分辨率越低。

2.2几何地图

几何地图利用几何特征如点、直线、平面等来构成环境主要框架,需要知道这些特征在环境中信息的具置,所以几何地图通常使用其对应的三维空间坐标来表示。几何地图构建过程相对简单,保留了室内环境的各种重要信息,是基于计算机视觉的定位与地图构建算法中最常用的一种表示方式。但是为了完成环境的建模需要标记大量的特征,从而计算量也非常的大,降低了实时性,其重建的地图也容易出现与全局不一致的情况。

2.3拓扑地图

拓扑地图用许多节点和连接这些节点的曲线来表示环境信息。其中,每个节点相对应真实环境中的特征点(如门角、窗户、椅子、桌子角及拐角等),而节点之间的曲线表示两个节点对应的地点是相联通的。拓扑地图把环境信息表上在一线图上,不需要精确表示不同节点间的地理位置关系,图像较为抽象,表示起来方便且简单。机器人首先识别这些节点进而根据识别的节点选择节点与节点间的曲线作为可作业的路径。

2.4混合地图

混合地图主要包括3种形式:栅格一几何地图、几何一拓扑地图以及栅格一拓扑地图。混合地图采用多种地图表示,可结合多种地图的优势,与单一的地图表示相比更具有灵活性、准确性和鲁棒性,但其不同类别的地图结合起来管理会比较复杂,难以协调,增加了地图构建的难度。文献针对室内环境所建立的模型分为全局拓扑和局部几何表述部分,整体环境通过拓扑节点串连起来,维护了整体环境表述的全局一致性;而以每个拓扑节点为核心所采用的几何表述则可确保局部精确定位的实现,这样建立的几何一拓扑混合环境模型可将二者的优势都表现出来,使得移动机器人定位和地图构建同时进行,实现容易。

3基于计算机视觉的室内导航

基于计算机视觉的室内导航技术可利用摄像头捕获机器人周围环境的全部信息,对其周身的场景进行反馈,对障碍物进行快速识别和检测,从而确定一条高效的可行的安全路径。本文将计算机视觉室内导航技术主要分为3类:第一类是环境地图事先已知;第二类是定位与地图构建同时进行;第三类是不依赖环境地图。

3.1环境地图事先已知

提前对外界环境特征进行提取和处理,建立全局地图,并将地图信息存储在机器人内存数据库中,在导航的时候实时进行地图匹配,即预存环境地图。在环境地图事先已知的导航中,路标信息保存在计算机内存的数据库中,视觉系统中心利用图像特征直接或间接向移动机器人提供一系列路标信息,一旦路标被确定后,通过匹配观察到的图像和所期望图像,机器人借助地图实现自身精确定位和导航。该导航技术过程可分为以下步骤:

a)图像获取:摄像头获取其周围的视频图像;

b)路标识别及检测:利用相关图像处理算法对图像进行一系列预处理如进行边缘检测和提取、平滑、滤波、区域分割;

c)路标匹配标志:在观察到的图像和所期望图像之间进行匹配,搜索现有的路标数据库进行标志路标;

d)位置计算:当有特征点进行匹配时,视觉系统会根据数据库中的路标位置进行自身精确定位和导航。

在基于计算机视觉的地图匹配定位过程中,主要有2种地图匹配较为典型。

①已知起点,已知地图。这种条件下的定位称为局部定位,采用的是一种相对定位的方法,如图1所示为其位姿估计过程,这种情况目前导航技术研究得最多。

②不知起点,已知地图。这种条件下的定位称为全局定位。当机器人需要重置时,通常使用这种定位方法来检索机器人的当前位置(即姿态初始化)。常用的辅助方法是在环境中添加一些人造信标,如无线收发器,几何信标,条码技术,红外或超声波接收系统进行位置识别,利用视觉系统识别自然标志,自主定位。

3.2定位与地图构建同时进行

不知起点,不知地图。SLAM技术最早由Smith等人于1986年提出,移动机器人在自身位置不确定的情况下根据自身的摄像头获取周围未知环境信息,在作业时逐步构建周围的环境地图,根据构建的增量式地图自主实时定位和导航。在日后的导航研究中,混合地图中的几何一拓扑混合环境模型被得到广泛应用,主要用来解决SLAM问题。

2003年,在解决SLAM技术难题上,Arras等人采用基于Kalman滤波器和最邻近(nearest neighbor)匹配策略的随机地图创建方法。下面是该算法步骤:

a)数据采集:首先初始化系统,从摄像头传感器采集距离数据;

b)状态预测:视觉系统预测机器人运动状态,实时返回新位姿信息和协方差矩阵,预测地图;

c)观测:从原始捕获的信息中提取主要特征信息并将此信息返回给局部地图;

d)测量预测:预测机器人当前位姿的全局地图;

e)位置匹配:应用最邻近滤波器匹配局部地图中的观测点和预测点;

f)估计:使用扩展Kalman滤波器更新地图;

g)创建:将非相关的观测点加入地图,对机器人返回增量式地图;

h)输出地图。

制约机器人视觉系统性能的重要因素是信息实时处理的计算复杂度和处理效率,SLAM算法需要在地图密度与计算效率之间取得权衡。

3.3无环境地图

在这类系统中,机器人不需要依赖任何的环境地图信息,机器人的活动取决于其当时识别和提取出来的环境信息,这些环境信息可能是桌子、椅子和门等,不需要知道这些环境元素的绝对位置。无环境地图的导航技术典型的技术有3大类:基于光流的导航技术、基于外观信息的导航技术、基于目标识别的导航技术和基于目标跟踪的导航技术。

3.3.1基于光流的导航技术

光流是三维空间运动物体在观测成像面上的像素运动的瞬时速度,也是图像亮度的运动信息描述。光流法计算最初是由Horn和Schunck于1981年提出的,其利用二维速度场与灰度,引入光流约束方程,得到光流计算的基本算法。光流计算基于物体移动的光学特性提出了2个假设:①运动物体的灰度在很短的间隔时间内保持不变;②给定邻域内的速度向量场变化是缓慢的。如Santos-Victor等人研发了一种基于光流的robee视觉系统,该系统模拟了蜜蜂的视觉行为。在robee视觉系统中,使用单独的双目视觉方法来模拟蜜蜂的中心反射(Centering Reflex):当机器人移动到走廊两侧的墙壁中心时,左眼捕获场景的瞬时速度与右眼捕获场景的瞬时速度是相同的,几乎没有差别,那么机器人就可以知道他们在走廊的中心。如果眼睛两侧的眼睛的瞬时变化速度不同,则机器人移动到较慢的速度。在自动机器人导航的实现中,基于这个想法是测量摄像机捕获图像场景瞬时速度差异。这种导航技术只能用于室内单通道直走道导航,不能引导机器人改变方向,具有一定的局限性。

3.3.2基于外观信息的导航技术

基于外观的机器人导航方法,不需要构建真实的地图导航,机器人通过自身所携带的摄像头和传感器感知周围目标的外观信息进行自主定位和导航。其中,所述的外观信息多为目标信息的颜色、亮度、形状、空间大小和物理纹路等。机器人在导航时存储连续视频帧的环境图像信息,并将连续视频帧与控制指令相关联,从而再执行指令规划有效路径到达目的地。

3.3.3基于目标识别导航技术

为了达到目标点或是识别目标,机器人很多时候只能获取少量的图像信息。Kim等人提出了一种用符号代替导航各个位置的赋值方法。该赋值方法中,机器人执行命令如“去窗边”“去你后面的椅子旁”等。这样,通过相关的符号命令,机器人自动识别并建立路标,通过符号指令到达目标点。例如“去你后面的椅子旁”,这样的命令就是告诉机器人路标是椅子、路径向后。该导航技术的难点在于目标是否可以准确实时识别路标。第一,识别大量不同类别的物体,室内环境有许多不同类别的物体,需要将它们组织到一个在给定的容易搜索图像数据结构中去,起到容易识别是用什么度量来区分物体;第二,识别大量不同背景下的物体,一个合适的物体表达式有助于将图像组织成片断,而这些片断来自于物体的种类且与物体无关的;第三,在抽象层次上识别物体,机器人可以不需要在看到一个具体的杯子之前便能知道它是一个杯子,相关程序能够类似的物体进行识别和区分。

3.3.4基于目标跟踪的导航技术

基于目标跟踪的导航技术,为机器人构造一个虚拟地图,机器人通过摄像头获取连续的视频序定一个跟踪的目标,为了达到对目标的精确定位和实时跟踪,可以利用粒子滤波算法对需要跟踪的目标进行建模。基于粒子滤波的目标跟踪主要包含四个阶段,分别是初始化目标区域,概率转移,目标区域权重计算,目标区域重采样。在机器人导航之前,通过视频序列的当前几帧标注机器人所需要跟踪的目标,在导航时,机器人通过连续的视频帧感知周围的待跟踪目标,同时对所需要跟踪的目标散播粒子,当获取的视频帧对目标区域重采样后足以让机器人确定所需要跟踪的目标时,机器人通过确定的目标为自己规划最有效的路径到达目的地。获取视频序列目标跟踪是算机视觉领域中的重要分支,它在工业生产、交通导航、国防建设、航空导航等各个领域有着广泛的应用。

计算机视觉的基本技术范文第4篇

关键词OpenCV;科学教育;推广价值

1、OpenCV库简介

OpenCV是由Intel微处理器研究实验室的视觉交互组开发的一个跨平台计算机视觉库,它的代码都是开源的而且都经过非常好的优化,并且具有很好的移植性,可以根据需求导入到合适的环境中使用。它可以实现有关图像识别与处理和计算机视觉技术方面的很多通用算法。它的优势是可以运行在当代社会使用热门的各大操作系统上,适用性强,还可以脱离外部库而独立运行。OpenCV的C和C++都是经过优化的开源代码,采用灵活的接口,提升计算机的运行速度。其中包含的函数就有500多个,包括的种类有C和C++等。OpenCV因为免费面向市场,已经被社会各界广泛使用。现已应用于人机互动、图像识别、图像分割、目标追踪、3D重建、机器视觉、结构分析等数个领域。OpenCV主要包括以下几个部分:①cxcore:核心功能模块,包含一些基本函数,运用于各种数据类型的计算。②cv:图像处理和计算机视觉功能。③ml:机器学习模块,主要内容是分类器。④cvaux:包括大部分实验性的函数,例如ViewMorph-ing、三维跟踪、PCA、HMM等。⑤Highgui:图像界面接口,支持摄像头的读取和转换。

2、OpenCV处理图像的功能

OpenCV中有很多的函数,可以实现很多不同的功能,其中最具有学习价值的部分就是图像处理。处理图像主要分为三部分:加载图像,显示图像,处理图像。

2.1加载图像

不同类型的图像有着不同的内部结构。我们需要根据图像的结构采用合适的方法将图像文件中的数据读入内存。OpenCV中的cvLoadImage()函数,可以加载图像数据。而且图像的格式不影响加载的效果,加载后它以一个指向IplImage结构体的指针形式返回,大大方便了后续处理的过程。2.2显示图像加载图像后需要通过函数使其显示。cvNamedWindow()函数由HighGUI库提供,它可以在屏幕上创建一个窗口,将图像显示出来。cvShowImage()函数的作用是在这个创建的窗口中显示出加载过后的图像。观察图像时经常用到的重要函数还有可以使程序暂停的函数cvWaitKey(),以及用于释放内存的函数cvReleaseImage()和cvDestoryWindow(),掌握并运用这些函数,就可以轻松的实现观察图像的功能。

2.3处理图像

OpenCV中包含的多种函数,可以达到图像处理技术方面的很多效果,包括图像灰度化函数cvtColor(),边缘检测函数Sobel()、Laplacian()、Canny(),其中Canny算子只能处理8位灰度图,其余两种8位32位都可以,合并梯度函数addWeighted(),放大缩小函数resize(),阈值化操作函数imshow()等等。适当选用合适的函数并加以运用即可达到目标所需。

3、OpenCV的推广价值体现

OpenCV可以应用在社会的各个领域,价值就体现在每个科学的产物当中。举个近在身边的例子,随着社会的发展,生活质量的提高,人们的居住环境也在逐渐改善,楼层越盖越高,无数摩天大楼,商业大厦群起而立,电梯已经成为了我们日常生活中必不可少的工具。尽管现在电梯的功能、质量不断地提升,但是仍然存在些许不足,当我们在学校的教学楼内等电梯时发现了一个问题,那就是在电梯使用的高峰期时,比如在上下课时段,有很多人都在同一楼层等电梯。但是此时只有一台离该楼层最近的电梯会过来,而其余的电梯都会自动向其它叫梯楼层运行或是闲置。可是此时这一台电梯只能容纳有限数量的人,时常不能使所有人坐上电梯,这样就无法满足全部人的需求,由此就导致了有部分人无法及时地坐上电梯,需要继续等候,而闲置的电梯又不能及时地被利用。这样不仅不能合理地利用资源,反而浪费了许多不必要的时间。因此,我们想到可以通过利用图像识别与处理的方法来弥补这个不足,首先通过硬件设备连接拍照捕获候梯人像,后台运行判断出候梯人数,然后运用语言编程来确定调动电梯的个数,从而来达到实现自动控制每个电梯的运行的目的,使所有人都能在第一时间乘坐电梯。而上文中提到的OpenCV就可以完成这项艰巨的任务。我们将OpenCV导入编程环境,其次修改电梯工作系统的运行程序,将软件与硬件设备相连通,这样通过调度程序,就可以轻松高效地解决这个问题。使用这种方法,不仅可以节约人们的候梯时间,方便学生、老师上课,而且可以合理有效地调度电梯,使电梯的价值得到最大化。见微知著,OpenCV可以应用在每个领域,对各界的发展起到推动作用,造福社会的科技发展,方便人们的生活。

4、科学教育存在的问题

在历年的教学模式中,老师们往往会强调理论知识的重要性,但却忽略了对学生使用动手能力的培养,学生不能独立完成实践性的技术操作,也就是说教学模式缺乏实践性。只有将理论与实践相结合,才能实现知识价值的最大化,因此,应当在教学中配合着实践课程,举一反三,让学生们更加深刻地学习和了解所学到的知识。而如今虽然一部分学校也开设了实践课程,但也只是浅尝辄止,并没有过多地讲授计算机技术实践方面的知识,学生们也没有真正拥有动手实践能力,这使学生们的技术知识十分受限。虽然现在多数学生对计算机略懂一二,但是实际上仅仅会使用类似Word等简单的软件,而技术要求较高的一些软件及工具却全然不知,甚至对自己所学过的课程软件的使用也是马马虎虎,这对于未来工作所需的能力来讲,实在是九牛一毛。目前中学生使用电脑的重心更多放在了社交软件和游戏上,很少有人利用计算机学习更多的技能,这对青少年的发展实在是利大于弊的,而且这样也失去了计算机的正向价值。因此,我们应该改变现有的教学模式,一边教授理论知识,一边配合指导学生动手操作,将理论与实践相结合,也能让学生更好地消化和吸收所学到的知识,并且引导学生正确使用计算机,发挥计算机的价值,让学生们都能够在计算机中获得更多的知识。

5OpenCV开源算法库在各个领域的实例化体现

OpenCV在医学领域、军事领域、安全防护领域等都有很大的重要意义。在医学领域中,由于有了这个开源算法库,我们可以尽可能地调用它,从而来进行图像处理、对象检测,让医生更好更快速观测人体结构,及时发现病症。在军事领域中,大多数无人操作的机器运作,比如无人机飞行、水下无人驾驶仪、无人驾驶汽车等等,都需要用到OpenCV来对图像进行处理,并进行分析,并且可以检测出人眼看不到的事物,这是OpenCV能够带来人类的巨大的进步。在安全防护领域中,我们现实生活中常见的汽车的安全驾驶,房屋入侵的检测、自动监视报警系统等等,正是由于这些技术,让我们的环境更加安全,这都是我们生活中息息相关不可缺少的。现如今,国家的科学技术飞速发展,日益强盛,OpenCV的成绩有目共睹,未来的发展需要科学技术的不断推进,才能为祖国未来的其他事业提供强有力的后盾。

6OpenCV在科学教育中的作用

在文化改革的大背景下,文盲的概念早已从没有文化转变成了不会使用计算机。因为随着科技的进步,计算机的使用已经越来越广泛,计算机已经逐步取代了以往人工可以完成的许多工作,比如在超市生成的结账单、用计算机控制动力系统的运行、人造卫星轨迹的计算等等,这些都依赖于计算机强大的功能。计算机的推广证明着我国科技的发展和人类文明的进步,由此可见,计算机技术知识的掌握对现代人来说是十分重要的。如果想要成为一个真正有技术、有能力的人才,就务必要熟练掌握计算机技术的使用。但是目前当代社会的教育在计算机技术方面的内容还不够丰富。减压政策开放以来,教育课时被压缩,技术知识的传输也相应减少,学生们的能力也因此日益下降。而科学教育,顾名思义,是使科学技术在教育过程中得以传承。想要科学地教育学生,就必须要多多讲授科学技术方面有关的知识。说到科学技术,它的重点自然是计算机技术,而OpenCV作为计算机视觉技术的核心,可以说也是计算机技术甚至科学教育中的一个重要部分。在教育中普及并传承这个技术无疑可以提高学生们的技术水平。但是,相信有大多数的人在此之前从未听说过计算机视觉技术,也并不了解OpenCV库,更加不会学习到与之有关的技术知识。在这样严峻的形势下,我们更应该将类似OpenCV方面技术有关的知识通过教育传递下去。各大高校应积极开展有关计算机的活动,开设与计算机技术有关的课程。这样才能根据社会的需求来培养更多的综合性人才。如果可以将其投入到现代教育当中,定会使现在的教育事业更加辉煌,也能使祖国的未来更加璀璨。

参考文献

[1]于仕琪,刘瑞祯.学习OpenCV(中文版)[M].北京:清华大学出版社,2009.

[2]阴法名.基于OpenCV图像处理[J].科技信息,2009(32):220.

[3]贾小军,喻擎苍.基于开源计算机视觉库OpenCV的图像处理[J].计算机应用与软件,2008,25(4):276-278.

[4]陈胜勇.基于OpenCV的计算机视觉技术实现[M].北京:科学出版社,2008.

[5]刘洁,冯贵玉,张汗灵.一种图像处理和计算机视觉的开发工具[J].计算机仿真,2006(11).

计算机视觉的基本技术范文第5篇

关键词: 计算机视觉; 手指特征识别; 动态阈值算法; 矩形模版

中图分类号: TN911?34; TP37 文献标识码: A 文章编号: 1004?373X(2017)12?0113?04

Abstract: In order to improve the accuracy and speed of the finger feature recognition in video image, a dynamic threshold algorithm based on rectangle template is proposed. The rectangle template is used in the algorithm to smooth the image, and the gray threshold method is used to extract the edge of the target to recognize the finger feature accurately. The Matlab simulation results show that the algorithm is lightly influenced by environmental noise, and can segment the edge of the finger clearly and accurately. A finger feature recognition system based on computer vision was designed on FPGA platform. Its real?time performance, finger recognition accuracy and other performances were tested. The test results show that the running speed of the system is synchronous with the speed of capturing the image by camera, which can meet the real?time requirement of the system. The coordinates deviation of the finger position recognized by the system is about 3 pixels, which can basically meets the accuracy requirement of the system.

Keywords: computer vision; finger feature recognition; dynamic threshold algorithm; rectangle template

S着科学技术的飞速发展,人与计算机之间的交互活动越来越密切,并逐渐成为人们日常生活的重要组成部分。传统触摸屏是现阶段一种最常见,也是最重要的人机交互方式,其是通过一种附加在显示器表面的透明介质,依赖使用者的手指触摸该介质来实现对计算机的输入控制[1?2]。目前,这种触摸屏技术已经相当成熟,但是,技术上不容易做到大尺寸,且成本相对较高,也易于破损。为了突破传统触摸屏这种人机交互方式的局限,把任何成像平面变成可用手指进行交互的系统,本文提出了一种基于计算机视觉的手指特征识别算法,并在FPGA平台上建立了一套基于计算机视觉的手指特征识别硬件系统。这种基于计算机视觉的手指特征识别方法可为基于视觉的人机互动提供一种新的技术解决途径。其与传统触摸屏的区别在于,不需要在成像屏幕上安装任何特殊介质,使用寿命得到大幅延长,应用范围有了很大扩展。

1 图像采集平台

本文所采用的图像采集平台如图1所示,在任何与计算机连接的显示设备(如投影屏幕、等离子电视等)的左上角、右上角安装两个摄像头,通过这两个摄像头便可确定手指在屏幕上的二维坐标信息(x1,x2)。然后,将此坐标点传至计算机,并与Windows系统的鼠标程序关联即可实现人机交互功能。图2是图像采集平台的侧视图。其中虚线框表示摄像头视野中系统需要处理的区域,即手指出现的区域。

2 手指特征识别算法及仿真

在系统实现过程中,如何从摄像头所拍摄的画面中准确地识别并提取出手指信息是其难点之一。在目前的图像处理技术中,用于识别背景图案中目标物体的算法很多,本文在分析基于色彩聚类的肤色识别算法的基础上,结合课题特殊需求,提出一种基于矩形模板的动态阈值算法,并在Matlab中对上述算法的处理效果进行了仿真。

从图像采集平台可以看出,本系统只关心距屏幕很近的小视野内是否出现区别于背景的目标物体。因此,只需从摄像头拍摄的图像当中截取一部分,如图3中的小矩形框所示。

2.1 基于色彩聚类的肤色识别算法

肤色是人体区别于其他物体的一个重要特征,人体肤色特征不受位置、角度、大小等因素影响,具有较强的稳定性。因此,本文首先选定基于色彩聚类的肤色提取识别算法进行研究。在色彩聚类方法中,Anil K.Jain的Cb,Cr椭圆聚类方法最为典型[3?4]。采用非线性分段肤色分割得到的肤色区域在Cb,Cr空间中近似于椭圆,如下:

由图5可知,利用该算法分割手指信息的效果尚可,能从比较友好的环境中迅速准确地识别出手指信息。图6为利用椭圆聚类肤色分割算法对从图像采集平台读取图像的手指识别效果。可见,该算法在普通环境下对手指的识别效果良好。但当屏幕上的颜色影响手指肤色时,该算法的识别能力就会有所降低。可见,该算法对皮肤颜色的纯度要求较高,适用范围受限。图7为屏幕出现大面积蓝色时对手指识别造成的影响效果。

2.2 基于正方形模板的动态阈值算法

基于正方形模板的动态阈值算法,即采用灰度阈值法,用正方形模板平滑图像[5?6]。图8(a)是3×3模板动态阈值算法平滑图像的过程。

应用基于3×3模板的动态阈值算法对原图4进行边缘提取的仿真效果如图9(a)所示。可见,应用3×3模板可以提取出目标物体的边缘,但不够清晰。虽然可以通过增大模板取得比较理想的效果(图9(b)为采用基于101×101模板的动态阈值算法的处理效果),但会使计算量剧增,同时也缩小了模板所能完全覆盖的范围,使图像边缘产生无效的白色区域。

2.3 基于矩形模板的动态阈值算法

根据课题实际需要,即所要处理的目标区域为长方形窄条区域(如图3所示),本文提出一种基于矩形模板的动态阈值算法。该算法与基于正方形模板算法的区别在于,平滑图像时所用的模板为窄条形,如3×5模板,3×15模板,3×41模板等。图8(b)是3×9模板动态阈值算法平滑图像的过程。

图10给出了采用基于3×9模板、3×14模板、3×81模板、3×101模板动态阈值算法对原图4进行手部边缘提取的仿真效果。由仿真效果可知,基于矩形模板的动态阈值算法在模板取值为3×9的情况下,便能够清晰提取出目标物体的边缘。而且,随着模板取值的增加,目标物体边缘的提取效果更加清晰准确。与基于正方形模板的动态阈值算法相比,基于矩形模板的动态阈值算法计算量较小,节约了系统的计算资源。

3 基于FPGA的手指特征识别算法的系统测试

为了验证本文所提出的基于矩形模板的动态阈值算法能否满足屏幕交互系统的整体要求,本文通过编写软件程序在FPGA开发板上对这种算法进行了硬件实现和系统测试。

3.1 硬件实现

本文所采用的硬件实现系统主要是基于美国Altera公司生产的型号为EFA?CY1C12的“红色飓风”(Red Cyclone)系列FPGA开发板,并另外集成了用Ommvison公司的型号为OV9655的CMOS数字摄像头,以及ISSI公司的型号为IS61LV25616AL的SRAM存储器[7?10]。最终搭建的硬件系统如图11所示。

3.2 系统测试

本文主要对系统的实时性、手指提取精度、资源占用情况等影响系统运行的重要技术指标进行了测试。

(1) 实时性

OV9655摄像头在1 280×1 024分辨率下,能提供15 f/s的图像采集速率,课题所设计的软件程序可以在一帧图像的处理时间内完成了数据的采集、手指边缘的识别等运算,实现了系统执行速度与摄像头拍摄速度的同步,达到了系统对实时性要求。

(2) 手指识别精度

由于课题在软件设计过程中编入了图像采集防抖动处理程序,提高了图像采集的稳定性,也提高了手指识别的精度。经过测试,本系统得到的手指位置信息的坐标偏差为3个像素,基本满足大屏幕交互系统对识别精度的需求。

(3) 资源占用情况

从Quartus Ⅱ的编译报告中可以看出,本系统的软件运行已占用FPGA的9 702个逻辑单元,占逻辑单元总数的80%。可见,该硬件系统的FPGA运算资源基本能满足系统的实际需要。

4 结 语

本文通过对基于矩形模板的动态阈值算法的研究和基于FPGA的手指特征识别硬件系统的实现,建立了一套基于计算机视觉的手指特征识别系统。该算法受环境噪声影响较小,能清晰准确地分割出手指边缘,且随着矩形模版取值的增大,算法的识别效果会更加良好。该系统的实时性、手指识别精度及资源占用情况均可满足系统要求。这种基于计算机视觉的手指识别方法成本低、灵活性好,为基于视觉的人机交互提供了一种新的技术途径。

参考文献

[1] 吕明,吕延.触摸屏的技术现状、发展趋势及市场前景[J].机床电器,2012,39(3):4?7.

[2] 陈康才,李春茂.电阻式触摸屏两点触摸原理[J].科学技术与工程,2012,12(18):4525?4529.

[3] MAITRE H.现代数字图像处理[M].北京:电子工业出版社,2006:79.

[4] 帕科尔,景丽.图像处理与计算机视觉算法及应用[M].2版.北京:清华大学出版社,2014:104.

[5] GONZALEZ R C,WOODS R E,EDDINS S L.数字图像处理的Matlab实现[M].2版.北京:清华大学出版社,2013:301.

[6] RUSS J C.数字图像处理[M].6版.北京:清华大学出版社,2014:216.

[7] 于枫.Altera可编程辑器件应用技术[M].北京:科学出版社,2014:68.

[8] 姚智刚,付强.基于低成本CMOS摄像头智能监控系统的设计[J].现代电子技术,2006,29(3):126?128.