资源描述
第第4章章 机器视觉预处理技术机器视觉预处理技术主要内容主要内容主要内容主要内容n图像增强图像增强 n图像分割图像分割 n边缘提取边缘提取 n数学形态学分析数学形态学分析n图像投影图像投影 n图像特征提取图像特征提取n配准定位方法配准定位方法 第第4章章机器视觉预处理技术主要内容机器视觉预处理技术主要内容对原始获取图像进行一系列的运算处理,称为对原始获取图像进行一系列的运算处理,称为图像处理。图像处理是机器视觉技术的方法基图像处理。图像处理是机器视觉技术的方法基础,包括图像增强、边缘提取、图像分割、形础,包括图像增强、边缘提取、图像分割、形态学处理、图像投影、配准定位和图像特征提态学处理、图像投影、配准定位和图像特征提取等方法。取等方法。第第4章章 机器视觉预处理技术机器视觉预处理技术第第4章章机器视觉预处理技术机器视觉预处理技术4.1图像增强图像增强改善图像质量两类方法:改善图像质量两类方法:不考虑图像降质原因不考虑图像降质原因图像增强技术图像增强技术针对图像降质原因针对图像降质原因图像还原技术图像还原技术图像增强技术两类方法:图像增强技术两类方法:空间域法空间域法:在空间域中对图像的各个像素灰度值直接进在空间域中对图像的各个像素灰度值直接进行计算处理;行计算处理;频率域法频率域法:在图像的频率变化域中对图像的变换值进行在图像的频率变化域中对图像的变换值进行某种运算处理,然后再变回空间域中。某种运算处理,然后再变回空间域中。4.1图像增强改善图像质量两类方法:图像增强改善图像质量两类方法:4.1.1 空域图像增强空域图像增强 空域法是直接对图像中的像素进行处理,以图像空域法是直接对图像中的像素进行处理,以图像的灰度映射变换为基础的灰度映射变换为基础。点对点变换点对点变换 直方图修正直方图修正 空域法基本原理空域法基本原理 4.1.1空域图像增强空域图像增强空域法是直接对图像中的像素进空域法是直接对图像中的像素进4.1.1空域图像增强空域图像增强 空域法是直接对图像中的像素进行处理,以图像的灰度映空域法是直接对图像中的像素进行处理,以图像的灰度映射变换为基础射变换为基础。1.空域变换增强空域变换增强直接灰度变换直接灰度变换图像求反图像求反 用这种方式倒转图像的强度产生图像反转的对等图像。该用这种方式倒转图像的强度产生图像反转的对等图像。该方式适用于增强嵌入于图像暗色区域的白色或灰色细节,方式适用于增强嵌入于图像暗色区域的白色或灰色细节,特别是当黑色面积占主导地位时。特别是当黑色面积占主导地位时。4.1.1空域图像增强空域图像增强空域法是直接对图像中的像素空域法是直接对图像中的像素4.1.1空域图像增强空域图像增强 线性灰度增强线性灰度增强线性最大增强线性最大增强 4.1.1空域图像增强空域图像增强线性灰度增强线性灰度增强64.1.1空域图像增强空域图像增强 图像增强图像增强函数说明:图像增强函数函数说明:图像增强函数调用格式:调用格式:ImageEnhance(image_origin,image_edge,kind)参数说明:参数说明:image_origin:输入图像(灰度图):输入图像(灰度图)image_edge:输出图像:输出图像kind:算法类型(包括:算法类型(包括POINTLINER,POINTSHARP)4.1.1空域图像增强空域图像增强图像增强图像增强74.1.1空域图像增强空域图像增强3.空域滤波增强空域滤波增强 主要有两类:主要有两类:(1)平滑(低通)滤波器)平滑(低通)滤波器(2)锐化(高通)滤波器)锐化(高通)滤波器(a)图像一部分)图像一部分(b)33模板模板(c)中心点灰度值)中心点灰度值4.1.1空域图像增强空域图像增强3.空域滤波增强空域滤波增强(a)图像一部分)图像一部分4.1.1空域图像增强空域图像增强1)平滑滤波器平滑滤波器(1)均值滤波均值滤波 带有阈值的均值滤波带有阈值的均值滤波 4.1.1空域图像增强空域图像增强1)平滑滤波器平滑滤波器4.1.1空域图像增强空域图像增强常用的均值滤波算子有:常用的均值滤波算子有:4.1.1空域图像增强常用的均值滤波算子有:空域图像增强常用的均值滤波算子有:4.1.1空域图像增强空域图像增强XAVIS程序代码程序代码为:为:Readimage(filtertest14_jun.bmp,src24);/读取均值噪声的器件图片,椒盐噪声和高斯噪声的图片名称分别为读取均值噪声的器件图片,椒盐噪声和高斯噪声的图片名称分别为/test14_jy.bmp,test14_gao.bmp其余处理步骤相同其余处理步骤相同ConvertDepth24to8(src24,src);/转化为转化为8位图位图showimage(src);/显示显示8位图位图Meanimage(src,des1,9);/均值滤波均值滤波showimage(des1);/显示均值滤波后的结果显示均值滤波后的结果4.1.1空域图像增强空域图像增强XAVIS程序代码为:程序代码为:Readim4.1.1空域图像增强空域图像增强中值滤波的基本原理是将像素邻域内灰度的中值代替该像素中值滤波的基本原理是将像素邻域内灰度的中值代替该像素的值。的值。中值滤波的步骤:中值滤波的步骤:n将模板在图中漫游,并将模板中心与图中某个像素位置重将模板在图中漫游,并将模板中心与图中某个像素位置重合;合;n读取模板下各对应像素的灰度值;读取模板下各对应像素的灰度值;n将这些灰度值从小到大排成将这些灰度值从小到大排成1列;列;n找出这些值里排在中间的找出这些值里排在中间的1个;个;n将这个中间值赋给对应模板中心位置的像素。将这个中间值赋给对应模板中心位置的像素。(2)中值滤波中值滤波4.1.1空域图像增强中值滤波的基本原理是将像素邻域内灰空域图像增强中值滤波的基本原理是将像素邻域内灰4.1.1空域图像增强空域图像增强中值滤波中值滤波特点:特点:n非线性滤波。非线性滤波。n可克服图像的边缘模糊。可克服图像的边缘模糊。n对滤除脉冲干扰及图像扫描噪声最为有效。对滤除脉冲干扰及图像扫描噪声最为有效。n不需要图像的统计特性。不需要图像的统计特性。n对对一一些些细细节节多多,特特别别是是点点、线线、尖尖顶顶细细节节多多的的图图像像不不宜宜采用。采用。4.1.1空域图像增强中值滤波特点:空域图像增强中值滤波特点:4.1.1空域图像增强空域图像增强XAVIS程序代码程序代码为:为:Readimage(filtertest14_jun.bmp,src24);/读取均值噪声的器件图片,椒盐噪声和高斯噪声的图片名称分别为读取均值噪声的器件图片,椒盐噪声和高斯噪声的图片名称分别为/test14_jy.bmp,test14_gao.bmp,其余处理步骤相同,其余处理步骤相同ConvertDepth24to8(src24,src);/转化为转化为8位图位图showimage(src);/显示显示8位图位图ImageFilter(src,des1,MEDIANFILTER)/中值滤波中值滤波showimage(des1);/显示中值滤波后的结果显示中值滤波后的结果4.1.1空域图像增强空域图像增强XAVIS程序代码为:程序代码为:Readim4.1.1空域图像增强空域图像增强(3)高斯滤波)高斯滤波高斯滤波器是一类根据高斯函数的形状来选择权值的线性高斯滤波器是一类根据高斯函数的形状来选择权值的线性平滑滤波器,其对于抑制服从正态分布的噪声非常有效。平滑滤波器,其对于抑制服从正态分布的噪声非常有效。二维零均值高斯函数二维零均值高斯函数 Readimage(filtertest14_jun.bmp,src24);/读取均值噪声的器件图片,椒盐噪声和高斯噪声的图片名读取均值噪声的器件图片,椒盐噪声和高斯噪声的图片名/称分别为称分别为test14_jy.bmp,test14_gao.bmp/其余处理步骤相同其余处理步骤相同ConvertDepth24to8(src24,src);/转化为转化为8位图位图showimage(src);/显示显示8位图位图ImageFilter(src,des1,GUASSFILTER);/高斯滤波高斯滤波showimage(des1);/显示高斯滤波后的结果显示高斯滤波后的结果4.1.1空域图像增强(空域图像增强(3)高斯滤波)高斯滤波Readimage(4.1.1空域图像增强空域图像增强平滑滤波器滤波结果平滑滤波器滤波结果 (a a)带有高斯噪声的工件图片)带有高斯噪声的工件图片 (b b)均值滤波结果)均值滤波结果 (c c)中值滤波结果)中值滤波结果 (d d)高斯滤波结果)高斯滤波结果4.1.1空域图像增强空域图像增强平平4.1.1空域图像增强空域图像增强2)锐化滤波器锐化滤波器 高通滤波器的效果可用原始图减去低通图得到。更进一步,高通滤波器的效果可用原始图减去低通图得到。更进一步,如果把原始图乘一个放大系数如果把原始图乘一个放大系数A再减去低通图就可以构成高频再减去低通图就可以构成高频增强滤波器:增强滤波器:High boost=A*OriginalLowpass=(A-1)*Original+High pass当当A=1,就是普通的高通滤波器。当,就是普通的高通滤波器。当A1,原始图的一部分,原始图的一部分与高通图相加,恢复了部分高通滤波时丢失的低频分量,使与高通图相加,恢复了部分高通滤波时丢失的低频分量,使得最后结果与原图更接近。因为低通滤波常使图像模糊,所得最后结果与原图更接近。因为低通滤波常使图像模糊,所以一般如果从原始图中减去模糊图也称为(非锐化)掩膜。以一般如果从原始图中减去模糊图也称为(非锐化)掩膜。4.1.1空域图像增强空域图像增强2)锐化滤波器锐化滤波器4.1.1空域图像增强空域图像增强XAVIS程序代码为:程序代码为:Readimage(filtertest14.bmp,src);/读取器件图片读取器件图片showimage(src);/显示显示8位图位图EdgeDetect(src,des1,GUASS);/拉普拉斯滤波拉普拉斯滤波showimage(des1);/显示拉普拉斯滤波后的结果显示拉普拉斯滤波后的结果(a)原图原图(b)拉普拉斯滤波后拉普拉斯滤波后4.1.1空域图像增强空域图像增强XAVIS程序代码为:(程序代码为:(a)原原4.2图像分割图像分割图图像像分分割割就就是是指指把把图图像像分分割割成成各各个个具具有有特特性性的的区区域域并并提提取取出出感兴趣目标的技术和过程。感兴趣目标的技术和过程。基基于于阈阈值值的的分分割割方方法法是是一一种种应应用用十十分分广广泛泛的的图图像像分分割割技技术术,其其实实质质是是利利用用图图像像的的灰灰度度直直方方图图信信息息获获取取用用于于分分割割的的阈阈值值,一一个个或或几几个个阈阈值值将将图图像像的的灰灰度度级级分分为为几几个个部部分分,认认为为属属于于同同一部分的像素是同一个物体。一部分的像素是同一个物体。4.2图像分割图像分割就是指把图像分割成各个具有特性的区图像分割图像分割就是指把图像分割成各个具有特性的区4.2图像分割图像分割灰度阈值法灰度阈值法图像阈值化处理的变换函数表达式为:图像阈值化处理的变换函数表达式为:阈值的选取阈值的选取大津法大津法判别分析法判别分析法最佳熵自动阈值法最佳熵自动阈值法4.2图像分割图像分割4.2图像分割图像分割阈值的选取阈值的选取最大类间方差确定阈值最大类间方差确定阈值(大津法大津法)假定最简单图像假定最简单图像f(i,j)的灰度区间为的灰度区间为0,L-1,选择一阈值,选择一阈值t将图像的像素分为将图像的像素分为c1、c2两组。两组。灰度均值为灰度均值为u=w0 u0 +w1 u1 g=w0(u0 u)2 +w1(u1 u)2 从最小灰度值到最大灰度值遍历从最小灰度值到最大灰度值遍历t 最大时的最大时的t即为分割的最佳阈值即为分割的最佳阈值 4.2图像分割阈值的选取图像分割阈值的选取u=w0u0+w4.2图像分割图像分割阈值分割阈值分割函数说明:阈值分割函数说明:阈值分割调用格式:调用格式:ThresholdCovert(image_origin,image_edge,kind,para1)参数说明:参数说明:image_origin:输入图像(灰度图象):输入图像(灰度图象)image_edge:输出图像:输出图像kind:算法(包括:算法(包括FIXTHRESHOLD,OTSUTHRESHOLD,PANBIETHRESHOLD,DIEDAITHRESHOLD,ENTROPYTHRESHOLD)para1:所选阈值(只对固定阈值分割有用,如果为:所选阈值(只对固定阈值分割有用,如果为0则为默认值(则为默认值(128)4.2图像分割阈值分割图像分割阈值分割4.3边缘提取边缘提取 图图像像的的边边缘缘是是图图像像的的最最基基本本特特征征。边边缘缘广广泛泛存存在在于于物物体体与与背背景景之之间间、物物体体与与物物体体之之间间、基基元元与与基基元元之之间间。它它是是图像分割所依赖的重要特征。图像分割所依赖的重要特征。4.3边缘提取边缘提取图像的边缘是图像的最基本特征。边缘广泛图像的边缘是图像的最基本特征。边缘广泛4.3.2边缘检测算子边缘检测算子 边缘检测的一般过程边缘检测的一般过程 梯度算子梯度算子4.3.2边缘检测算子边缘检测算子边缘检测的一般过程边缘检测的一般过程梯度算子梯度算子4.3.2边缘检测算子边缘检测算子常用梯度算子常用梯度算子Roberts Prewitt Sobel Isotropic Sobel 4.3.2边缘检测算子常用梯度算子边缘检测算子常用梯度算子4.3.2边缘检测算子边缘检测算子XAVIS程序代码为:程序代码为:Readimage(dip_switch_02.bmp,src_s);/读取器件图片读取器件图片PointInvert(src_s,src);/图像反色,便于显示图像反色,便于显示showimage(src);/显示显示8位图位图EdgeDetect(src,sobel,SOBEL);/Sobel算子滤波算子滤波PointInvert(sobel,sobel2);/图像反色图像反色showimage(sobel2);EdgeDetect(src,robert,ROBERT);/Roberts算子滤波算子滤波PointInvert(robert,robert2);showimage(robert2);原图原图Sobel算子算子Robert算子算子4.3.2边缘检测算子边缘检测算子XAVIS程序代码为:程序代码为:Readim4.3.2边缘检测算子边缘检测算子边缘检测边缘检测 函数说明:边缘检测函数函数说明:边缘检测函数调用格式:调用格式:EdgeDetect(image_origin,image_edge,kind)参数说明:参数说明:image_origin:输入图像(灰度图):输入图像(灰度图)image_edge:输出图像:输出图像kind:算法(包括:算法(包括CANNY,ROBERT,SOBEL,GUASS,CANNY1)4.3.2边缘检测算子边缘检测边缘检测算子边缘检测函数说明:边缘检测函数说明:边缘检测4.3.3轮廓提取方法轮廓提取方法 1.边缘提取边缘提取二二值值图图像像的的轮轮廓廓提提取取:掏掏空空内内部部点点,如如果果原原图图一一点点为为黑黑,且且他他的的8个个相相邻邻点点都都是是黑黑色色时时(此此时时该该点点为为内内部部点点),则则将将该点删除。该点删除。2.差影法差影法差影法是用原图像减去腐蚀后的收缩图像。差影法是用原图像减去腐蚀后的收缩图像。物体的轮廓在图像处理中有非常重要的意义。在工业产品表面物体的轮廓在图像处理中有非常重要的意义。在工业产品表面质量检测中,通过轮廓提取或跟踪,确定产品的轮廓,从而确质量检测中,通过轮廓提取或跟踪,确定产品的轮廓,从而确定表面缺陷所在的范围,提高检测算法的有效性;在目标跟踪定表面缺陷所在的范围,提高检测算法的有效性;在目标跟踪中,通过轮廓提取或轮廓跟踪技术确定目标的轮廓参数。中,通过轮廓提取或轮廓跟踪技术确定目标的轮廓参数。4.3.3轮廓提取方法轮廓提取方法1.边缘提取边缘提取2.差影法差影法物物4.3.3轮廓提取方法轮廓提取方法 3.轮轮廓廓跟跟踪踪:先先根根据据某某些些严严格格的的“探探测测准准则则”找找出出物物体体轮轮廓廓上上的的像像素素,再再根根据据这这些些像像素素的的某某些些特特征征用用一一定定的的“跟跟踪踪准准则则”找找出出目目标物体上的其他像素。标物体上的其他像素。二值化图二值化图边缘提取边缘提取差影法差影法轮廓跟踪轮廓跟踪4.3.3轮廓提取方法轮廓提取方法3.轮廓跟踪:先根据某些严格的轮廓跟踪:先根据某些严格的4.3.3轮廓提取方法轮廓提取方法 XAVIS程序代码为:程序代码为:Readimage(000.bmp,src);/读取图像读取图像000.bmp,并命名为,并命名为srcshowimage(src);ThresholdCovert(src,srcerzhi,FIXTHRESHOLD,100);/以以100为阈值进行二值化处理,输出图像为阈值进行二值化处理,输出图像srcerzhishowimage(srcerzhi);PointInvert(srcerzhi,srcfanse);/图像反色,输出图像图像反色,输出图像srcfanse图图showimage(srcfanse);EdgeGet(src_nn,tracee,CONTOUR);/边缘提取法获取边缘,输出图像边缘提取法获取边缘,输出图像traceeshowimage(tracee);4.3.3轮廓提取方法轮廓提取方法XAVIS程序代码为:程序代码为:Read4.3.3轮廓提取方法轮廓提取方法边缘提取边缘提取函数说明:边缘提取函数函数说明:边缘提取函数调用格式:调用格式:EdgeGet(image_origin,image_edge,kind)参数说明:参数说明:image_origin:输入图像(二值图):输入图像(二值图)image_edge:输出图像:输出图像kind:算法类型(包括:算法类型(包括CONTOUR,EDGETRACE,EROSIONCONTOUR)4.3.3轮廓提取方法边缘提取轮廓提取方法边缘提取4.4 数学形态学分析数学形态学分析 形态学一般指生物学中研究动物和植物结构的一形态学一般指生物学中研究动物和植物结构的一个分支。数学形态学是以形态为基础对图像进行个分支。数学形态学是以形态为基础对图像进行分析的数学工具,是分析几何形状和结构的数学分析的数学工具,是分析几何形状和结构的数学方法,用集合论方法定量描述几何结构。主要包方法,用集合论方法定量描述几何结构。主要包括有膨胀、腐蚀、开、闭运算。括有膨胀、腐蚀、开、闭运算。4.4数学形态学分析数学形态学分析4.4.1数学形态学原理数学形态学原理n 提出所要描述的物体几何结构模式提出所要描述的物体几何结构模式n根据该模式选择相应的结构元素根据该模式选择相应的结构元素n用选定的结构元素对图像进行击中与否变换用选定的结构元素对图像进行击中与否变换n得到比原始图显著突出物体特征信息的图像得到比原始图显著突出物体特征信息的图像n提取信息提取信息4.4.1数学形态学原理数学形态学原理4.4.2图像数学形态学基本运算图像数学形态学基本运算 1.膨胀与腐蚀膨胀与腐蚀1)二值形态学中的膨胀与腐蚀)二值形态学中的膨胀与腐蚀(1)膨胀)膨胀集合集合A用集合用集合B 膨胀,记作膨胀,记作,定义为,定义为图像膨胀原理示意图图像膨胀原理示意图4.4.2图像数学形态学基本运算图像数学形态学基本运算1.膨胀与腐蚀膨胀与腐蚀4.4.2图像数学形态学基本运算图像数学形态学基本运算(2)腐蚀)腐蚀集合集合A被集合被集合B 腐蚀,记作腐蚀,记作,定义为,定义为图像腐蚀原理示意图图像腐蚀原理示意图 4.4.2图像数学形态学基本运算图像数学形态学基本运算(2)腐蚀)腐蚀4.4.2图像数学形态学基本运算图像数学形态学基本运算 膨胀腐蚀膨胀腐蚀函数说明:全方向腐蚀,膨胀函数函数说明:全方向腐蚀,膨胀函数调用格式:调用格式:ImageMorph(image_origin,image_edge,kind)参数说明:参数说明:image_origin:输入图像(二值图):输入图像(二值图)image_edge:输出图像:输出图像kind:算法类型(包括:算法类型(包括EROSION,DILATION)4.4.2图像数学形态学基本运算图像数学形态学基本运算膨胀腐蚀膨胀腐蚀4.4.2图像数学形态学基本运算图像数学形态学基本运算 2.开运算与闭运算开运算与闭运算 n开运算开运算先腐蚀后膨胀先腐蚀后膨胀n闭运算闭运算先膨胀后腐蚀先膨胀后腐蚀 4.4.2图像数学形态学基本运算图像数学形态学基本运算2.开运算与闭运算开运算与闭运算4.4.3图像数学形态学应用图像数学形态学应用1.边界提取边界提取 二值图像原图二值图像原图 原理示意图原理示意图 处理效果图处理效果图 4.4.3图像数学形态学应用图像数学形态学应用1.边界提取二值图像原图边界提取二值图像原图4.4.3图像数学形态学应用图像数学形态学应用2.区域填充区域填充 原理示意图原理示意图 处理效果图处理效果图 4.4.3图像数学形态学应用图像数学形态学应用2.区域填充区域填充原理示意图原理示意图4.5图像投影图像投影水平投影水平投影垂直投影垂直投影 计算每一行中目标像素的个数计算每一行中目标像素的个数确定行数和列数确定行数和列数 Readimage(F:机器视觉资料机器视觉资料XAVIS2.042.bmp,image1);Imageproject(image1,image2,HPROJECT,100,0,360,360);/水平图像投影,垂直图像投影将此句改为:水平图像投影,垂直图像投影将此句改为:Imageproject(image1,image2,VPROJECT,100,0,294,294)showimage(image2);Writeimage(F:机器视觉资料机器视觉资料touying.bmp,image2);4.5图像投影水平投影图像投影水平投影Readimage(F:机器视觉机器视觉4.5图像投影图像投影图像投影图像投影n函数说明:对二值图像进行积分投影(水平,垂直)函数说明:对二值图像进行积分投影(水平,垂直)n调用格式:调用格式:Imageproject(image_origin,image_edge,kind,thre,pstar,pend,*total1)n参数说明:参数说明:image_origin:输入图像(二值图):输入图像(二值图)image_edge:输出图像:输出图像kind:算法类型(包括:算法类型(包括HPROJECT,VPROJECT)thre:阈值:阈值pstar:起点坐标数组:起点坐标数组pend:终点坐标数组:终点坐标数组total1:总数:总数4.5图像投影图像投影图像投影图像投影4.6图像特征提取图像特征提取 区域和轮廓只包含对分割结果的原始描述,实际应区域和轮廓只包含对分割结果的原始描述,实际应用还需要从区域或轮廓中确定一个或多个特征量。用还需要从区域或轮廓中确定一个或多个特征量。这些确定的特征量被称为特征。确定特征的过程被这些确定的特征量被称为特征。确定特征的过程被称为特征提取。称为特征提取。4.6图像特征提取图像特征提取4.6.1图像特征图像特征 1.常见的图像特征常见的图像特征n颜色颜色n纹理纹理n形状形状n区域结构区域结构4.6.1图像特征图像特征1.常见的图像特征常见的图像特征4.6.1图像特征图像特征 2.图像特征的分类图像特征的分类n图像的视觉特征图像的视觉特征:边缘、轮廓、形状、纹理和区域等。边缘、轮廓、形状、纹理和区域等。n图像的统计特征图像的统计特征:灰灰度度直直方方图图特特征征、矩矩特特征征,其其中中矩矩特特征征包包括括均均值值、方差、峰度及熵特征等。方差、峰度及熵特征等。n图像变换系数特征图像变换系数特征:傅立叶变换、离散余弦变换、小波变换等。傅立叶变换、离散余弦变换、小波变换等。n图像代数特征图像代数特征 矩阵的奇异值矩阵的奇异值 4.6.1图像特征图像特征2.图像特征的分类图像特征的分类4.6.2兴趣点提取兴趣点提取兴趣点兴趣点 兴兴趣趣点点是是指指图图像像信信号号在在二二维维空空间间上上发发生生变变化化的的区区域域,通通常常情情况况下下包包括括拐拐角角点、交点和纹理等显著变化区域。点、交点和纹理等显著变化区域。兴趣点标定的方法兴趣点标定的方法 基于轮廓线的方法:轮廓线具有曲率变化的特征,可归类基于轮廓线的方法:轮廓线具有曲率变化的特征,可归类 为结点,端点等类型。如在图像中寻找脊和谷的方法对兴趣为结点,端点等类型。如在图像中寻找脊和谷的方法对兴趣 点进行标定。点进行标定。基于图像强度的方法:信号的自相关函数检测特征点,灰基于图像强度的方法:信号的自相关函数检测特征点,灰 度值的差大于某个门限时即认为该点是兴趣点。度值的差大于某个门限时即认为该点是兴趣点。基于参数模型的方法:使用模型高斯卷积型的结点分析函基于参数模型的方法:使用模型高斯卷积型的结点分析函 数和最小化方法,使得模板与观测信号最佳匹配。数和最小化方法,使得模板与观测信号最佳匹配。4.6.2兴趣点提取兴趣点兴趣点提取兴趣点兴趣点标定的方法兴趣点标定的方法基于轮廓线基于轮廓线4.6.2兴趣点提取兴趣点提取1.Harris方法方法 Harris方法的数学描述方法的数学描述 当滑动窗口处于一个兴趣点发生的地方,无论从哪个方向当滑动窗口处于一个兴趣点发生的地方,无论从哪个方向移动该窗口,都会发生图像强度(灰度值)的剧烈变化移动该窗口,都会发生图像强度(灰度值)的剧烈变化平滑区域平滑区域 边缘区域边缘区域 兴趣点区域兴趣点区域4.6.2兴趣点提取兴趣点提取1.Harris方法方法平滑区域平滑区域4.6.2兴趣点提取兴趣点提取图像窗口滑动后灰度值变化计算:图像窗口滑动后灰度值变化计算:小距离窗口滑动近似计算:小距离窗口滑动近似计算:计计算算步步骤骤:首首先先采采用用Sobel算算子子计计算算出出梯梯度度Ix和和Iy,再再逐逐点点计计算算其其乘乘积积,最最后后使使用用高高斯斯窗窗对该乘积图像的所有像素点进行卷积即可对该乘积图像的所有像素点进行卷积即可 4.6.2兴趣点提取图像窗口滑动后灰度值变化计算:兴趣点提取图像窗口滑动后灰度值变化计算:4.6.2兴趣点提取兴趣点提取 2.兴趣点的标定兴趣点的标定detC表表示示矩矩阵阵行行列列式式,trC表表示示矩矩阵阵的的迹迹。k是是经经验验参参数数,通常取通常取0.06 n平滑区域:平滑区域:|R|很小;很小;n边缘区域:边缘区域:R0。取满足取满足R0且超过一定门限,且超过一定门限,并且是局部最大值的点并且是局部最大值的点为兴趣点。为兴趣点。4.6.2兴趣点提取兴趣点提取2.兴趣点的标定兴趣点的标定4.6.2兴趣点提取兴趣点提取 XAVIS程序代码为程序代码为 Readimage(test.bmp,image);/读取图像读取图像Showimage(image);/显示图像显示图像DrawRectangle(rect);/选择图像待检测区域选择图像待检测区域RectImageharris(image,image1,rect,3,2500,0,0,A50,B50);/检测并标记区域中检测并标记区域中Harris特征点特征点4.6.2兴趣点提取兴趣点提取XAVIS程序代码为程序代码为Readim4.6.2兴趣点提取兴趣点提取 角点检测角点检测函数说明:所选区域轮廓平滑函数函数说明:所选区域轮廓平滑函数调用格式:调用格式:RectImageHarris(image_origin,image_edge,rect,para1,para2,para3,para4,pointx,pointy)参数说明:参数说明:image_origin:输入图像(灰度图,二值图):输入图像(灰度图,二值图)image_edge:输出图像:输出图像rect:关注区域:关注区域para1:高斯滤波窗口宽度:高斯滤波窗口宽度para2:阈值:阈值para3:窗口大小:窗口大小para4:高斯滤波系数:高斯滤波系数poinx:点的:点的x坐标坐标pointy:点的:点的y坐标坐标4.6.2兴趣点提取兴趣点提取角点检测角点检测4.6.3直线提取直线提取Hough变换原理变换原理在图像空间在图像空间XY里,设所有过点(里,设所有过点(x,y)的直线都满足方程:)的直线都满足方程:式中,式中,p为直线的斜率,为直线的斜率,q为直线的截距。也可以写成:为直线的截距。也可以写成:式中表示参数空间式中表示参数空间PQ中过点(中过点(p,q)的一条直线。图像空)的一条直线。图像空间到参数空间之间的转换可以用图表示:间到参数空间之间的转换可以用图表示:4.6.3直线提取直线提取Hough变换原理变换原理4.6.3直线提取直线提取在在实实际际使使用用哈哈夫夫变变换换时时,要要在在上上述述基基本本方方法法的的基基础础上上根根据据图图像像具具体体情情况况采采取取一一些些方方法法以以提提高高精精度度和和速速度度,在在实实际际中中常常用用的的是是极极坐坐标标直直线线方方程程。图图像像平平面面上上的的一一个个点点就就对应到参数平面上的一条正弦曲线上。对应到参数平面上的一条正弦曲线上。4.6.3直线提取直线提取在实际使用哈夫变换时,要在在实际使用哈夫变换时,要在4.6.3直线提取直线提取开始时,置数组开始时,置数组A为零,然后对每一为零,然后对每一个图像空间中的给定点,让个图像空间中的给定点,让取遍区取遍区间上所有可能的值,并根据直线公式间上所有可能的值,并根据直线公式算出对应的算出对应的,再根据和的值(设,再根据和的值(设都已经取整)对都已经取整)对A累加:累加:对图像遍历后,上式的值就是在点对图像遍历后,上式的值就是在点处共线点的个数。处共线点的个数。值值也给出了直线方程的参数,这样就得到了点所在的也给出了直线方程的参数,这样就得到了点所在的线。线。4.6.3直线提取开始时,置数组直线提取开始时,置数组A为零,然后对每一个图像为零,然后对每一个图像534.6.3直线提取直线提取XAVIS程序代码为程序代码为 Readimage(image.bmp,image);/读取图像读取图像Showimage(image);/显示图像显示图像ThresholdCovert(image,image0,FIXTHRESHOLD,100);/对图像进行阈值分割对图像进行阈值分割Showimage(image0);Pointinvert(image0,image1);EdgeDetect(image1,image2,CANNY1);/图像边缘检测图像边缘检测Showimage(image2);ImageThining(image2,image3);/图像边缘细化图像边缘细化Showimage(image3);EdgeHough(image3,image4);/Hough变换,检测出直线边缘变换,检测出直线边缘Showimage(image4);4.6.3直线提取直线提取XAVIS程序代码为程序代码为Readimag4.6.4圆弧提取圆弧提取 全图搜索圆弧(圆弧全图搜索圆弧(圆弧Hough变换)变换)沿边缘搜索圆弧沿边缘搜索圆弧 沿边缘搜索的方法:运算量小、检测速度快、同时可检测出起沿边缘搜索的方法:运算量小、检测速度快、同时可检测出起始角度和终止角度。首先将边缘图像存储成链表格式;然后沿始角度和终止角度。首先将边缘图像存储成链表格式;然后沿边缘搜索,将边缘分为若干小的直线段;最后采用圆最小二乘边缘搜索,将边缘分为若干小的直线段;最后采用圆最小二乘拟合来判断其中的若干小直线段是否共圆。拟合来判断其中的若干小直线段是否共圆。4.6.4圆弧提取圆弧提取沿边缘搜索的方法:运算量小、检测速度沿边缘搜索的方法:运算量小、检测速度4.6.4圆弧提取圆弧提取 1.曲线分段曲线分段 计算参数计算参数 判断判断4.6.4圆弧提取圆弧提取1.曲线分段曲线分段564.6.4圆弧提取圆弧提取2.最小二乘圆弧拟合最小二乘圆弧拟合 拟合模型拟合模型 最小二乘最小二乘 拟合模型与实际观测值在各点的残差的加权平方和最小拟合模型与实际观测值在各点的残差的加权平方和最小 4.6.4圆弧提取圆弧提取2.最小二乘圆弧拟合最小二乘圆弧拟合4.6.4圆弧提取圆弧提取圆弧的最小二乘拟合公式:圆弧的最小二乘拟合公式:4.6.4圆弧提取圆弧的最小二乘拟合公式:圆弧提取圆弧的最小二乘拟合公式:4.6.4圆弧圆弧提取提取3直线段聚合直线段聚合 直线段聚合就是指将若干共圆的直线聚合起来,形成直直线段聚合就是指将若干共圆的直线聚合起来,形成直线集合和圆弧集合线集合和圆弧集合。n最小二乘拟合公式:计算圆心坐标和半径最小二乘拟合公式:计算圆心坐标和半径n共圆判断:计算这些端点离圆心的距离,如果与半径相共圆判断:计算这些端点离圆心的距离,如果与半径相差太大则认为不共圆。如果这些直线段共圆则添加新的差太大则认为不共圆。如果这些直线段共圆则添加新的直线段形成新的直线段集合。直线段形成新的直线段集合。循环判断:新的直线段的判断循环判断:新的直线段的判断提高精度:弧线到圆心的平均距离;去除圆弧两端直线提高精度:弧线到圆心的平均距离;去除圆弧两端直线段中不属于圆弧的点段中不属于圆弧的点 4.6.4圆弧提取圆弧提取3直线段聚合直线段聚合4.6.4圆弧圆弧提取提取XAVIS程序代码为程序代码为 Readimage(image.bmp,image);/读取图像读取图像Showimage(image);/显示图像显示图像ThresholdCovert(image,image1,OTSUTHRESHOLD,0);/对图像进行阈值分割对图像进行阈值分割ImageMorph(image1,image1,DILATION,1);/全方向膨胀全方向膨胀ImageMorph(image1,image1,EROSTON,1);/全方向腐蚀全方向腐蚀Showimage(image1);EdgeGet(image1,image2,EROSIONCONTOUR);/提取图像边缘提取图像边缘Circle_detect(image2,Xc,Yc,Rc,Ee,start,end,1,1,0.5);/检测圆弧检测圆弧GenCircles(Xc,Yc,Rc);/将已检测出圆弧进行标记将已检测出圆弧进行标记4.6.4圆弧提取圆弧提取XAVIS程序代码为程序代码为Readimag4.6.2兴趣点提取兴趣点提取 圆弧检测圆弧检测函数说明:所选区域轮廓平滑函数函数说明:所选区域轮廓平滑函数调用格式:调用格式:Circle_detect(image,Xc,Yc,Rc,Ee,start,end,para1,para2,para3)参数说明:参数说明:image:输入图像(灰度图,二值图):输入图像(灰度图,二值图)Xc:圆心的:圆心的x坐标坐标Yc:圆心的:圆心的y坐标坐标Rc:圆半径:圆半径Ee:拟合误差(输出参数):拟合误差(输出参数)start:起始角度(输出参数):起始角度(输出参数)end:终止角度(输出参数):终止角度(输出参数)para1:线拟合域值(输入参数):线拟合域值(输入参数)para2:线分离域值(输入参数):线分离域值(输入参数)para3:圆弧拟合域值(输入参数):圆弧拟合域值(输入参数)4.6.2兴趣点提取兴趣点提取圆弧检测圆弧检测4.7配准定位方法配准定位方法 待配准图像与原图像相比存在待配准图像与原图像相比存在偏移、旋转、比例偏移、旋转、比例等等空间变换关系,图像配准就是将不同传感器所采集空间变换关系,图像配准就是将不同传感器所采集得到的同一场景的多光谱、多波段或同一传感器在得到的同一场景的多光谱、多波段或同一传感器在不同时相、不同方位、不同条件下(气候、照度、不同时相、不同方位、不同条件下(气候、照度、摄像位置和角度等)获得同一场景的两幅或多幅图摄像位置和角度等)获得同一场景的两幅或多幅图像进行匹配的过程。像进行匹配的过程。4.7配准定位方法配准定位方法待配准图像与原图像相比存在偏移、待配准图像与原图像相比存在偏移、4.7.1图像配准数学建模图像配准数学建模 常用图像变换常用图像变换n刚体变换:一幅图像中的两点间的距离经变换到另一幅刚体变换:一幅图像中的两点间的距离经变换到另一幅图像中后仍然保持不变。图像中后仍然保持不变。n仿射变换:一幅图像上的直线经过变换后映射到另一幅仿射变换:一幅图像上的直线经过变换后映射到另一幅图像上仍然为直线,并且保持平行关系。图像上仍然为直线,并且保持平行关系。4.7.1图像配准数学建模图像配准数学建模常用图像变换常用图像变换4.7.1图像配准数学建模图像配准数学建模 投影变换:一幅图像上的直线经过变换后映射到另一幅投影变换:一幅图像上的直线经过变换后映射到另一幅图像上仍然为直线,但平行关系基本不保持。图像上仍然为直线,但平行关系基本不保持。非线性变换:一幅图像上的直线映射到另一幅图像上不非线性变换:一幅图像上的直线映射到另一幅图像上不一定是直线,可能是曲线。一定是直线,可能是曲线。二维空间中多项式变换二维空间中多项式变换 4.7.1图像配准数学建模图像配准数学建模投影变换:一幅图像上的直线经投影变换:一幅图像上的直线经4.7.2图像配准方法图像配准方法 图像配准方法分类:图像配准方法分类:n基于像素的配准方法一般根据基于像素的配准方法一般根据配准图像的相关函数配准图像的相关函数、Fourier变换等关系式来计算配准参数。其中最简单的方法就是窗口变换等关系式来计算配准参数。其中最简单的方法就是窗口(模板模板)匹配法。匹配法。n基于特征的配准方法主要是采用各种算法提取基准图像和实时基于特征的配准方法主要是采用各种算法提取基准图像和实时图像的特征,如图像的特征,如边缘、角点、曲率、不变矩边缘、角点、曲率、不变矩等,然后对提取等,然后对提取的特征进行描述从而使其可以按照某种相似性测度进行匹配。的特征进行描述从而使其可以按照某种相似性测度进行匹配。n基于模型的配准方法是根据图像失真的数学模型来对图像进行基于模型的配准方法是根据图像失真的数学模型来对图像进行非线性校正式的配准,多用于医学图像。非线性校正式的配准,多用于医学图像。4.7.2图像配准方法图像配准方法图像配准方法分类:图像配准方法分类:4.7.2图像配准方法图像配准方法基于图像矩的配准定位方法基于图像矩的配准定位方法 对基准图像和待配准图像进行特征提取预处理,对基准图像和待配准图像进行特征提取预处理,采用质心主轴法完成两幅图像特征之间的匹配,采用质心主轴法完成两幅图像特征之间的匹配,建立图像之间的配准映射关系,利用仿射变换对建立图像之间的配准映射关系,利用仿射变换对待配准图像进行图像变换实现图像配准定位。待配准图像进行图像变换实现图像配准定位。4.7.2图像配准方法基于图像矩的配准定位方法图像配准方法基于图像矩的配准定位方法对基准图对基准图4.7.2图像配准方法图像配准方法对基准图像和待配准图对基准图像和待配准图像分别进行图像处理,像分别进行图像处理,经过阈值分割、中值滤经过阈值分割、中值滤波、轮廓提取、轮廓跟波、轮廓提取、轮廓跟踪得到两幅图像的连续踪得到两幅图像的连续完整轮廓;分别针对两完整轮廓;分别针对两个轮廓图像计算出其目个轮廓图像计算出其目标轮廓的主轴,两主轴标轮廓的主轴,两主轴的夹角即为图像的旋转的夹角即为图像的旋转角。角。4.7.2图像配准方法对基准图像和待配准图像分别进行图像图像配准方法对基准图像和待配准图像分别进行图像4.7.2图像配准方法图像配准方法矩特征提取及参数计算,对于二值图像矩特征提取及参数计算,对于二值图像二值图像轮廓质心二值图像轮廓质心4.7.2图像配准方法矩特征提取及参数计算,对于二值图像图像配准方法矩特征提取及参数计算,对于二值图像4.7.2图像配准方法图像配准方法轮廓图像主轴角轮廓图像主轴角是轮廓图像的主轴与图像纵轴的夹角是轮廓图像的主轴与图像纵轴的夹角 平移量平移量仿射变换仿射变换4.7.2图像配准方法轮廓图像主轴角平移量仿射变换图像配准方法轮廓图像主轴角平移量仿射变换4.7.2图像配准方法图像配准方法仿射变换和图像剪裁仿射变换和图像剪裁 4.7.2图像配准方法仿射变换和图像剪裁图像配准方法仿射变换和图像剪裁4.7.2图像配准方法图像配准方法Readimage(image.bmp,image);/读取图像读取图像showimage(image);/显示图像显示图像GenText(10,10,0,基准图像基准图像,blue);/产生文字产生文字Readimage(test.bmp,image1);Showimage(image1);GenText(10,10,0,待测试图像待测试图像,blue);CallImgCent(image,centx,centy);/计算图像质心计算图像质心CallImgCent(image1,centx1,centy1);CallImgAngle(image,angle);/计算图像主轴偏转角计算图像主轴偏转角CallImgAngle(image1,angle1);GenAffinePara(centx,centy,centx1,centy1,angle,angle1,affpara6,affpara16);/计算仿射变换参数计算仿射变换参数AffineTransImage(image,image1,affpara6,affpara16,0);/对图像进行仿射变换对图像进行仿射变换Showimage(image1);GentText(10,10,0,结果图像结果图像,blue);4.7.2图像配准方法图像配准方法Readimage(image.b4.7.2图像配准方法图像配准方法函数功能:生成仿射变换矩阵函数功能:生成仿射变换矩阵调用格式:调用格式:GenAffinePara(int*InitPointCentX,int*InitPointCentY,int*SampPointCentX,int*SampPointCentY,double*InitAngle,doubleSampAngle,doublespDbSp2BsAffPara,doubles*pDbBs2SpAffPara);参数说明:参数说明:InitPointCentX:输入基准图像目标质心横坐标:输入基准图像目标质心横坐标InitPointCentY:输入基准图像目标质心纵坐标:输入基准图像目标质心纵坐标SampPointCentX:输入待配准图像目标质心横坐标:输入待配准图像目标质心横坐标SampPointCentY:输入待配准图像目标质心纵坐标:输入待配准图像目标质心纵坐标InitAngle:输入基准图像目标主轴偏转角:输入基准图像目标主轴偏转角SampAngle:输入待配准图像目标主轴偏转角:输入待配准图像目标主轴偏转角pDbSp2BsAffPara:输出待配准图像变换到基准图像的仿射变换矩阵:输出待配准图像变换到基准图像的仿射变换矩阵pDbBs2SpAffPara:输出基准图像变换到待配准图像的仿射变换矩阵:输出基准图像变换到待配准图像的仿射变换矩阵4.7.2图像配准方法函数功能:生成仿射变换矩阵图像配准方法函数功能:生成仿射变换矩阵4.7.2图像配准方法图像配准方法函数功能:参照基准图像,对待配准图像进行仿射变换函数功能:参照基准图像,对待配准图像进行仿射变换调用格式:调用格式:AffineTransImage(CDib*InitDib,CDib*SampDib,doubles*pDbSp2BsAffPara,doubles*pDbBs2SpAffPara,int*selection)参数说明:参数说明:InitDib:输入基准图像:输入基准图像SampDib:输入待配准图像:输入待配准图像pDbSp2BsAffPara:输入待配准图像变换到基准图像的仿射变换矩阵:输入待配准图像变换到基准图像的仿射变换矩阵pDbBs2SpAffPara:输入基准图像变换到待配准图像的仿射变换矩阵:输入基准图像变换到待配准图像的仿射变换矩阵selection:输入仿射变换的插值选择:输入仿射变换的插值选择(0/双线形:双线形:1/样条样条)4.7.2图像配准方法函数功能:参照基准图像,对待配准图图像配准方法函数功能:参照基准图像,对待配准图ENDEND74
展开阅读全文