《人工智能》机器视觉课程教案.docx
人工智能机器视觉课程教案教学内容:本章所研究的机器视觉是诸多传感信息中包含信息最丰富、最复杂和最重要的感觉之一,也是应用最为广泛的机器感觉之一。内容包括图象的理解与分析、视觉的知识表示与控制策略和物体形状的分析与识别等。教学重点:物体边缘距离的计算、表面方向的计算、物体形状识别方法教学难点:图匹配法、松弛标示法、多层匹配法等教学方法:用较为通俗的语言将机器视觉的相关知识讲透彻,同时结合图表,对不同线条的标示方法进行讲解。多结合日常生活中常有的现象,让学生对所学知识有更深入的认识。教学要求:重点掌握视觉信息的表达方法,包括初始简图、二维半简图和三维模型;掌握物体边缘距离和表面方向的生理学基础及计算原理和计算方法;了解复杂形状物体的表示和三维物体的形状描述方法;一般了解机器视觉应用系统的构成、视觉系统的设计思想。10.1图象的理解与分析教学内容:对图象进行理解和解释是计算机视觉的研究中心,也是人工智能研究的焦点之一。教学重点:初始简图、二维半简图和三维模型教学难点:松弛算法、边缘距离的计算教学方法:以课堂书本知识为主,采取提问,讨论等方式提高学生学习的积极性,自主性和创造性。教学要求:重点掌握视觉信息的表达方法,包括初始简图、二维半简图和三维模型;掌握物体边缘距离和表面方向的生理学基础及计算原理和计算方法10.1.1视觉信息的表达方法根据马氏(Marr)提出的假设,视觉信息处理过程包括3个主要表达层次,即初始简图、二维半简图和三维简图,如图10.1所示。景物图象初始徜四is二堰半筒圈三维葡K取算法案案算法图o.视觉信息的表达层次1、初始简图的基本SE念:亮度图象含有两种重要信息:图象的亮度变化和局部几何特征。初始简图是一种本原表达法,它能完全而又清楚地表示上述信息。初始简图所包含的信息大部分集中在与实际边缘以及边缘终止点有关的剧烈灰度变化上。对于每一边缘亮度变化,在初始简图上都有对应的描述。这些描述包括:与边缘有关的亮度变化率、总的亮度变化、边缘长度、曲率和方向等。粗略地说,初始简图是以勾划草图的形式来表示图象中的亮度变化的。图10. 2用初始简图表示灰度变化图10. 3二维半简图举例2、二维半简图的基本概念:二维半简图包含景物表面的信息,可以把它看做某些内在特性的混合信息。二维半简图清楚地表示物体表面方向的信息。物体表面法线从物体内部穿出来,使物体好象穿刺。3、三维模型的表示方法三维表达法能够完全而又清晰地表示有关物体形状的信息,其方法之一即为广义柱体。广义柱体的概念十分重要,而其表示方法又十分简单,如图10.4所示。图中,柱体的横截面沿轴线的投影不变。一个普通圆柱可看作是一个圆周沿其中心垂线移动而成;一个楔形物是一个三角形沿其中垂线移动而得的,等等。圆维.角状物帧向距离一般地说,一个广义柱体是二维轮廓图沿其轴线移动而成的。在移动过程中,轮廓与轴线之间保持固定的角度不变。轮廓可为任何形状,而且在移动过程中其尺寸可能是变化的,其轴线也不一定是垂线或直线,如图10.4所示。图10.4广义锥体10.5截面形状变化或轴线为曲线时的广义柱体10.1.2边缘距离的计算1、图象辉亮边缘的平均与差分产生噪声边缘问题是因为在获得图象时,会遇到传感器的亮度灵敏性波动、图象坐标信息误差、电子噪声、光源扰动以及无力接收大范围变化的亮度信息等。另一个原因是图象本身很复杂,其实际边缘并不是陡削的,而是逐步过渡的;还可能存在相互照明效应、意外划痕和灰尘等。一种处理噪声边缘的方法包括下列四个步骤:(1)从图象建立平均亮度阵列。(2)从平均亮度阵列产生平均一阶差分阵列。(3)从一次平均差分阵列建立二次平均差分阵列。(4)据所得阵列,记下峰点、陡变斜率和过零点,以寻求边缘信号的集合。2、灵长目动物视网膜特性图10.6灵长目动物视网膜输入<a>色能亮度发布 c>c>cC>_ J-L(b)爆西M草雷形滤波独测结果<c>有延迟的同西野菜帼形修正覆测X 4- 与墨西哥草帽形滤波结果的一输出特性实验比较墨西哥草帽形滤波器与一些了解灵长目动物早期视觉的实验相一致。关键实验如图10.6所示。被试动物注视各种从白色背景前移过的色质(StimUIi)。这些色质包括一条窄的黑带、一条宽的黑带以及一个单白黑边缘。记录探针测定各种神经反应。把此神经反应与据墨西哥形草帽滤波器作出的预计进行比较。图10.7给出比较结果。在图10.7中,(a)表示3个自左向右移动的色质的亮度分布曲线;(b)表示以适当宽度的墨西哥草帽形滤波器对所给出的亮度分布进行滤波的结果;(C)为所谓X神经节细胞上记录的实验数据。比较图10.7(b)和(C)可见,两者极其相似。这表明灵长目动物的视网确实进行了某些与墨西哥草帽形滤波器十分相似的处理工作。如果对墨西哥草帽形滤波器稍加修改,就能够改善相似性,如图10.7(d)所示。比较结果得到的高度相似性,使我们有足够的根据作出下列假设:(1)灵长目动物视膜所进行的滤波处理功能在运算上是与由墨西哥草帽形点扩散函数所进行的滤波相似。(2)存在有两种视膜细胞,一种用于传输滤波图象的正向部分,另一种传递滤波图象的负向部分。(1)对于每种细胞,墨西哥草帽形滤波器是通过激发与禁止这两种操作的组合来实现的。这个滤波器等价于两个以二维高斯滤波器滤波所得图象的差。3、物体距离的测定图10.8表示两眼立体视觉中的相对位置关系。图中,P点为一物体。两个透镜的轴线是平行的。f为两透镜与图象平面的距离,即为其焦距。b为两透镜轴线在基线上的距离,即为两眼的距离。II三镜轴的距离。和B分别为左右图象与其相应透专六,一,至物体的距离:从两相似三角形,可求得观察者双眼!/!透健.(眼球图10.8双眼立体视觉的几何位置由于双眼距离b为已知,焦距f也是确定的,因此,一个物体与双眼的距离和(+B)成反比。(+8)为该点的一幅图象点位置相对于另一幅图象点位置的位移,称为视差(disparity)。立体视觉的实际问题就是据左右两图象找到相应的物体,以便能够测量视差。已有许多不同的立体视觉系统能在不同程度上成功地寻找出相应的物体。10.1.3表面方法的计算1、反射图体现光照约束把从所有可能位置观察到的亮度都相同的表面定义为朗伯表面(LanIbCrtianSurface),它的亮度只由光源的方向决定。这一关系遵循下列公式:E=PCoSi。式中,E为被观察亮度;P为表面反射率(对于特定的表面材料,P为一常数);i为入射角。2、表面方向的确定上面我们研究了利用表面方向预测表面的亮度。下面研究从感测到的亮度来计算表面各方向参数f和g。由f和g来确定表面方向,初看起来似乎是不可能的。因为一小块表面只能确定切面FG上的一条曲线,而不是单一的点。但是,事实上这样做却是可能的,因为大部分表面是平滑的,在不同深度和方向上只出现有少数不连续的情况。因此,可以利用下面两个约束:(1)亮度。由f和g所确定的表面方向应与表面亮度所要求的表面方向无多大不同。(2)表面平滑度。一点的表面方向应与邻近各点的表面方向无多大变化。对于每个点,计算的f和g值应兼顾上述两个约束计算所得的值。据亮度要求特定点的f和g值应落在等亮度线上,而据表面平滑度则要求f和g值接近相邻点f和g的平均值。3、松弛算法(1)对所有非边界点,令40和g=0。对所有边界点,令f和g规定一个长度为2的垂直于边界的矢量。称输入阵列为当前阵列。(2)进行下列步骤(直到所有的值变化得足够慢为止):(a)对当前阵列中的每个点:i)如果是个边界点,则不做任何事;ii)如果是个非边界点,那么用松弛公式计算新的f和g值。(b)把所得新阵列称为当前阵列。10.2积木世界的景物分析教学内容:可见的景物的传感器编码,检测器搜索图象主要成分(如线段、简单曲线和角度等)的处理,利用知识推断有关景物的三维特征信息。教学重点:无断裂和阴影时三面顶点的标示方法,有断裂和阴影时线条图的分析。教学难点:无断裂和阴影时三面顶点的标示方法。教学方法:以课堂教育为主,通过多种途径开发学生的学习热情,结合实践。教学要求:基本了解积木世界景物的线条标示方法,掌握无断裂和阴影时三面顶点的标示方法和有断裂和阴影时线条图的分析。10.2.1积木世界景物的线条标示方法图10.9几种典型的线条图积木世界视觉研究的主要目标是理解从一堆玩具积木的图象得到对于景物的描述。所谓描述就是把出现在图象中的大量的线条聚集成代表景物中各个积木的线条组。研究积木世界景物时,输入的图象可以是积木景物的照片、电视摄影图象或是线条图。如果是属于前二种,那么第一步就是从图象得到线条图。这属于马氏初始简图的范围,但没有那样复杂,只是用了边缘检测算子。在以下的讨论中,我们都假设已经得到了积木世界的线条图的情况。积木世界景物分析的研究对象比较狭窄,并且是有意地进行了简化,但仍不失为合适的计算机视觉研究的初步目标。在这个领域中的研究已经取得了一些有实用意义的成果。积木世界可以推广为类似工业零件的多面体,而理解简单的三维工程图是建立有视觉的工业机器人装配系统的第一步。10.2.2无断裂和阴影时三面顶点的标示方法1、线条和接点的分类先研究无断裂的三面顶点,并且设想合适的光照条件,避免了所有的阴影。在这样的环境下,图中的所有线条代表了各种天然产生的边缘。这些线条的简单分类如下。2、标志三面接点的方法为了对围绕接点的线条的标示方式进行分类,需要从每个可能的方向来观察每种实际可能的三面顶点。但这样做会遇到可供选择的方向过多的困难,为此把除了一般的观察位置以外的方向都排除在外,以减少可能出现的情况。假设在这一节的其余部分仅讨论只包含三面顶点的线条图。任何三面顶点的3个面规定了3个相交的平面,这3个相交的平面把空间分成8个间隔。很明显,某个形成一个顶角的物体就占有上述8个间隔(或八分体)中的一个或几个。接点标志所说明的是物体如何占有八分体。可以通过以下两个步骤来构成完整的包含所有连接可能性的字典:先考虑所有的以物体来充满这8个八分体的方式;然后,从未被充满的八分体观察所得到的顶点。10. 2.3有断裂和阴影时线条图的分析改善线条描述可使约束的数目增加,从而提高分析的速度。要进一步研究是否有别的方法对线条的解释作进一步的分类。在介绍具体方法以前,有一个问题需要注意,即随着线标志集合的扩展,实际接点标志的集合将显著增加。将会有几千种合法的接点标志,而不是只有18种。因此不可能建立一个合法接点标志表和企图让摸拟计算机利用这个表格来做些什么。以下介绍两种对线条解释作进一步分类的方法:1 .对凹面标志进一步分类并引入断裂线标志考虑到物体经常放在一起。所以,凹面标志可以分成3类,这3类表示有关物体的数目和认出哪个物体是在前面的。设一条凹面边缘表示两个物体接触在一起的地方。然后想象把这两个物体稍为拉开一点。这样,这个凹面边缘就成为边界,其上标志指向两个可能方向中的一个。这两种可能性以一个由原来的负号标志和一个新的箭头标志组成的合成标志来表示。如果有3个物体相接触,同样可利用一个合成标志表示如果物体稍为离开一些时可以看到什么。断裂线也可以类似地处理:每一根断裂线被标以1个C和I个箭头,表示这两个有关的物体如何配合在一起。2 .用光照条件增加标志数量和严格约束思考:合法的标志数 目相对于不合法的 标志数如何增加。另一种改善线条描述的方法是结合单光源的光照条件。概括起来,线条解释的每一次改进都促使一次线条标志的大扩展。开始时只考虑基本的线条、边界线、内部的凹面线和凸面线。这些初始的线条种类扩展到包括阴影线。凹面线又分成四类以反映接触在一起的物体个数,以及这些物体间如何相互遮挡。这引入了断裂线并以和凹面线相类似的方式分成2类。最后,线条的信息和照明信息相结合。从最后这次扩展产生50种线条标志。10.3视觉的知识表示与控制策略教学内容:研究在人工智能其它领域中发展起来的知识表达方法,主要是语义网络在视觉领域中的应用。教学重点:语义网络,位置网络教学难点:位置网络教学方法:以课堂教育为主,通过多种途径开发学生的学习热情,例如:课堂练习,思考,讨论及提问等,并结合实践,加深对课堂知识的理解。教学要求:了解语义网络及位置网络,一般了解视觉系统的控制策略。10. 3.1视觉信息的语义网络表示习题:试用语义网络表示以下 景物:“在道路57(road57)与河流 3(river3)交叉处的桥梁位于建 特物I斤”着重介绍语义网络,它具有如下特点:(1)可作为一种很方便地存取模拟知识的表达方法以及命题逻辑的知识表达的数据结构。(2)可作为一种反映在有关领域中事物之间相互关系的模拟结构。(3)可用作一种具有特殊的推理规则的命题逻辑表达法。10.3.2位置网络表示在一般的应用场合中,景物中所期望的特征的相对位置都已表示在网络中,这样网络就把图象的所期望的结构模型化了。物体之间几何关系的基本运算有以下4种:(1)方向性运算(左、反射、北、上、下等):以相对于其他点集的位置和方向来规定点集。(2)区域运算(靠近于、在四边形内、在圆周内等等):建立一个和其他点集无方向关系的点集。(3)集合运算:完成并、交以及求差等集合运算。(4)谓词运算:对区域进行的谓词运算可通过测量某些数据的特征来删除某些点集。10. 3.3视觉系统的控制策略视觉控制策略支配着通过各表达层次的信息流和活动,咖个触发机构在处理?是像视网膜上色块一般的低级输入呢,还是一种高层期望,对于这两种极端作不同的强调是一个基本控制问题,这两个极端表征如下:(1)图象数据的驱动。这里控制的进行过程是从建立广义图象到已分割图象结构,最后为描述,这也叫由底向上控制(bottomupcontrol)。(2)内部模型驱动。知识库内的高层模型产生对输入的几何、分割的或广义图象的期望或预测,图象理解是这种预测的验证,这也称为自顶向下控制(top-downcontrol)。(3)非层次控制。这个术语似乎由麦卡洛克(MCeUIloCh)提出来的,他使用这个术语描述脑神经反应连通性所蕴涵的反应的本质,其思想是在任何给定时刻使用能够完成最终任务的办法,提供最多帮助的专家。10.4物体形状的分析与识别教学内容:多面体化为对非多面体景物的描述问题,并以这些描述为基础,对物体形状进行分析与识别。教学重点:讨论非多面物体的分析,并特别集中于形状分析。教学难点:松弛标示法、多层匹配法。.教学方法:课堂讲解教学要求:了解物体形状分析与识别的基本概念10.4.1复杂形状物体的表示一个好的形状表示能够由物体的部分视图来识别物体,而且物体形状的小变化只引起形状描述的小变化。物体各部分的连接表示应当是很方便的,它能够比较两个物体的差别和相似性,而不仅是进行简单的分类。如果把复杂物体表示为被分割的比较简单的部分以及这些部分间的相互关系,那么上述要求就比较容易得到满足。对形状的识别是由两个相关描述的匹配获得的。一个物体的部分视图所产生的描述图是完整的物体描述子图,并能适当匹配过程的需要。1、曲线形状的描述与量度曲线描述对于一些特别物体(如字母符号)和三维景物(如某地区照片上的道路)分析是很重要的。此外,三维物体的形状描述也往往被简化为“轮廓”线条结构。(1)曲线的存储方法。依次采用曲线上各点的坐标序列来表示线条是最容易的描述方法。如果只要存储曲线的起点坐标和依次各点的坐标增量,那么就能够显著节省计算机内存。(2)曲线的近似描述。曲线的紧密和结构描述可以采用近似方法。一种方法是把曲线展开为正交级数;另一种是把曲线分段为一些比较简单的曲线。线性分割分段近似是最常见的,而样条函数(对多项式分段,在各连接点规定连续条件)具有普遍意义。(3)曲线形状分析量度法。把一些与某曲线的分析近似法有关的系数用来表示该曲线形状的特征。不同形状的曲线具有不同的系数。不过,随着比例尺、旋转和遮断情况的不同,这些系数可能变化很大。因此,这种分析量度法只适用于曲线数目较少及预期变化较小的情况。2、面积形状的描述与量度采用图形内部不在边界上的点来描述图形,比较健全,因为比较小的面积变化能引起大得多的边界变化。(1)简单形状的量度。由平面图形的面积和周边来粗略量度其形状面积X(周长尸是个与图形尺寸、位置和方向无关的量度不变式。把一个图形的最小约束矩形定义为一个完全包围该图形的矩形,而且此矩形不会被任何其它的这类矩形所包围,见图10.10。一种改进的对图形形状的近似量度是由它的凸缘进行的。把凸缘定义为包围已知图形的最小凸出图形。原图形则由凸缘形状及图中凹面或凹陷的数目和形状来描述,见图10.Ilo图10.10最小约束矩形图10.11图形的凸缘与凹陷(2)面积分析量度法。如同曲线描述一样,借助于某些基本函数(如二维傅里叶级数)对图形展开或近似而得到的系数,可用于对图形形状进行分析量度。对于一些基本函数,有可能组合这些系数以获得一个对比例尺、位置和方向的不变式。10. 4.2三维物体的形状描述三维物体的形状可由物体的外表面或这些外表面所包络的容体来描述(可把洞孔描述为负容积)。三维物体描述特别困难之处在于,三维表面或容积需要二维图象来推断,尤其是对不可见表面的推断。下面我们将着重分析由二维图象进行容积描述问题。1、物体形状的广义锥体表示可用广义柱体(有时称为广义锥体)来表示物体的形状。由于单一的广义锥体能够描述任意容积,因此,复杂的形状能够自然地分割为若干个比较简单的广义锥体来描述。图10.13所示的螺丝起子可由4个广义锥体来描述。其中,一个对应于螺丝刀片,为一变化的矩形截面;另一个对应于螺丝刀杆,具有圆截面;还有2个广义锥体在手把上。简化广义锥体的准则应是其横截面的形状、尺寸或轴线方向不发生陡削变化。图10.13螺丝起子的广义锥体表示2、广义锥体描述的计算广义锥体表示不是变换表示,对于同一输入可能有许多可供选择的描述。需要从中选择一种或多种最好的描述。(1)拟合表面数据。已知可见表面的三维位置以及对轴线和横截面形状的约束,就能拟合出最佳广义锥体。对于已知形状的横截面,可能求得一个简单的迭代解答。考虑一个正圆柱体。起初,该圆柱体的轴线方向和横截面都是未知的。任选一个方向之后,就能够对可见表面拟合出椭圆横断面。通过这些横截面矩心的某轴线,并不需要与该轴线垂直。接着,能够作出垂直于该轴的横截面。重复此过程,直至只观察到很小的横截面变化为止。对于正圆柱体和正圆锥体,这个过程收敛得很快。对于任意形状的物体,其收敛情况是不确定的,这时,要采用这种拟合技术,需要假设横截面由椭圆所近似。(2)采用物体边界。二维锥面能够由物体的边界来计算。如果二维轮廓是三维物体的投影,那么被计算的锥面就是所求的三维锥体的投影。10.4.3物体形状识别方法物体或者由几个物体组成的构件,可由比较它们的描述及存储在计算机内的模型描述来识别。这些模型可能由下列方法获取:存储预先遇到的物体的机器描述,直接学习视图数据序列,或者只是由操作人员提供。如果物体的描述是一张特性清单,即特性矢量,那么能够采用一般的数学模式识别技术来识别。对于结构性描述,需要采用比较复杂的匹配技术。此外,不要求用大量的内存把一个描述与每一个存储模型进行匹配试验,没有完全匹配而要选择一个合适的子集,就需要进行检索。In图匹配法(GraPhmatching)结构性描述可视为图或网络。我们对评价两幅图的相似性感兴趣。下面介绍一些有关相似性的量度。令某幅图G:<N,P,R定义为由结点集合N(表示物体的部件)、这些结合特性的集合P以及结点(节点)间关系的集合R组成的。已知两幅图G:N,P,R和G':<N,P,R,,如果当且仅当P(n)与P,(n)对某一给定的相似性量度相似(即节点n的特性与节点r的特性相似)时,就说形成一对配对(assignment)(n,n,)o如果有两对配对(n,nJ)和(%,n2,),对于R中的r和R'中的r'的所有关系使得r(m,nl,)=r,(n2,)成立,那么就说这两对配对是兼容的。其中,我们假设关系是二元的。如果两幅图G和G'的节点具有一对一的配对,使得所有配对相互兼容,那么就称这两幅图是同构的(isomorphic)。其中,如果(n,n')为一配对,那么仍然要求P(n)=P'(n')o如果G的子图与G'的子图同构,那么就称图G与G'为亚同构的(SUbiSomOrPhiC)O2、松弛标示法(ReIaXatiOnlabeling)把标示问题定义为一个标示集合与一个节点(或单元)集合的配对,使得标示配对与给定约束相一致。这种标示法有许多应用,而且包含了图匹配问题。这时,标示是其它图的节点。令N为被标示节点的集合,L为可标示的集合。对于每个k想要指定一个标示集合L,使得Li为L的一个子集,而且这些标示与给定约束相容。对于不含糊的情况,每个集合Li只包含一个元。最简单的约束是一元的,限制标示只可能赋予某个确定的节点,而不考虑网络中的其它节点。二元约束规定一对节点的标示之间的关系。对于节点d的一个标示集合Li,可能与节点小的一个标示集合Lj相容,如果L的每个标示至少与Lj的一个标示相容的话。这种相容性称为弧相容性(arcconsistency)0一般说来,约束是n元的,而且弧相容性可能并不导致全局相容性(globalconsistency)0图10.44给出一个例子,其一元约束为:要对每个节点标示为红色或绿色,而且要求相邻点为不同的颜色。每当对一个节点指定红色或绿色之后,我们能够对其相邻节点指定一个相容的标示,但是不能使这3个节点同时满足全局约束。一个更大的约束是路径相容性(Pathconsistency)o两个节点m和其标示为Ik和L)是路径一致的,如果网络内存在一条从m至m的路径,对于此路径上的每个节点不存在标示集合,而对于两端点同时与标示Ik和L相一致(用二元法)。图10.14的网络不是距径相容的。只考虑弧相容性,因为它对减少可供选择的方案往往是有用的。(红,绿)图10.14弧一致但全局不一致的标示3、多层匹配法(MUItiIeVelmatching)图匹配和景物松驰标示技术是普遍的。不过,它们不能提供对相似和差异的满意描述。采用数字权,结合非相关特性(如颜色和尺寸等)可能没有多大意义。一个可供替代的方案是多层匹配法。对两种描述进行多层匹配的结果本身就是一种有关它们相似和差异的描述。如果由两个模型匹配求出同样的差异,那么可能需要对景物重新进行检查,以找出更精细的细节。已有一些采用这种方法来识别物体的例子。在某些情况下,两个模型可能具有类似的连通性。这时,可由各个单独部件的特性来对模型加以区别。一般上,需要比较详细的分析。当模型数较多时,对每个模型进行匹配是不适宜的,而且对内存的检索很可能只需要检索少数几个模型即可。可以采用诸如观察者方位以及环境中期望物体的知识等关系来检索。一个检索过程应当能够适应因观察条件不同而引起的物体描述变化以及由描述过程本身引起的可变性。描述的可变性可由检索观察过的描述以及根据期望变化干涉这些描述来调整。