文档库 最新最全的文档下载
当前位置:文档库 › 基于肤色检测和Hough变换的彩色图像人眼定位_陈佳佳

基于肤色检测和Hough变换的彩色图像人眼定位_陈佳佳

基于肤色检测和Hough变换的彩色图像人眼定位_陈佳佳
基于肤色检测和Hough变换的彩色图像人眼定位_陈佳佳

技术创新

《微计算机信息》(嵌入式与SOC )2010年第26卷第2-2期

360元/年邮局订阅号:82-946

《现场总线技术应用200例》

图像处理

基于肤色检测和Hough 变换的彩色图像人眼定位

EYE Positioning in Color Image Based on Complexion Measuring and Hough Transformation

(暨南大学)

陈佳佳黄穗

CHEN Jia-jia HUANG Sui

摘要:提出一种基于肤色检测和Hough 变换两步快速定位人眼的方法。通过YCbCr 肤色模型对图像肤色区域进行检测,同时进行Sobel 边缘提取,然后用Hough 变换的圆检测方法对二值化图像进行圆检测,从而确定双眼的精确位置。实验结果表明该算法受噪声和边缘间断影响小,具有较高的定位准确率。同时具有很好的容错性和健壮性。关键词:人脸检测;肤色检测;眼睛定位;Hough 变换中图分类号:TP391.41文献标识码:A

Abstract:Based on complexion measuring and Hough transformation,a two -step method which is able to rapidly position human eyes has been advanced.Having detected image complexion area through YCbCr complexion model and drawed edge with Sobel to the image,round detection method of Hough transformation is applied to measure the round to two value image for positioning eyes accurately.It can be demonstrated in the experiment results that the proposed algorithm,which has low impact by noise and the edge of intermittent,would provide higher positioning accuracy with good tolerance and robustness.Key words:face detection;skin color examination;eyes position;Hough transformation

文章编号:1008-0570(2010)02-2-0208-02

1引言

人脸识别是模式识别和人工智能领域的一个热门课题,越来越受到研究人员的重视,有着十分广泛的应用前景。眼睛是人脸中最突出的部位,位置相对比较固定,人眼的精确定位是人脸识别中非常关键的一步,绝大部分的人眼识别算法都依赖于双眼的准确定位,因此,人眼定位对于人脸识别十分重要。

目前人们已经提出了很多有效的人眼定位方法,但仍然存在一些问题:对输入图像具有较高的要求,定位准确率不高等。灰度投影法虽然定位速度较快,但投影图像中干扰噪声太大,曲线不规则,很难在此基础上直接找到特征点,定位精度较差;而模板匹配法的缺点在于模板的参数不好确定,且对于倾斜的人脸定位往往不准确。本文采用了一种基于肤色检测和Hough 变换两步法快速定位人眼的方法。该方法首先对图像进行预处理,采用YCbCr 作为肤色检测的彩色空间,对肤色范围进行检测,然后对图像进行边缘提取,用Hough 变换的圆检测方法对二值化图像进行圆检测,从而确定双眼的精确位置。算法流程图如图1-1所示。

图1-1算法流程图

2图像预处理

在进行定位之前,需要对图像进行一些预处理工作。这是因为在自然条件下的图像通常不可避免地伴有噪声的影响,这会对图像的定位和识别带来很大影响。噪声是图像中不应该存在的小污点,它们是在图像的拍摄或传送过程中产生的,必须在图像处理之前对噪声进行消除,以最大限度地减少噪声带来的影响。本文采用中值滤波法。中值滤波是一种典型的低通滤波器,它的目的是保护图像边缘的同时去除噪声。预处理首先对图像进行白平衡处理,从而平衡其他颜色在有色光线下的色调。其次,由于后续工作中需要对边缘进行提取,因此需要将彩色图像转换成为灰度图。图像灰度化就是使彩色的R 、G 、B 分量值相等的过程。由于R 、G 、B 的取值范围是0~255,所以灰度的级别只有256级,即灰度图像仅能表现256种颜色(灰度)。灰度化处理的方法主要有三种:最大值法、平均值法、加权平均值法。本文采用了加权平均值法,这样可以使得计算更精确。

3肤色检测

3.1YCbCr 彩色空间的选取

在彩色图像处理过程中,色彩通常用三个分量表示。根据应用场合的不同,分别可以用RGB,HSI,CYMK,YCbCr 等彩色空间来表示。这些空间都可以用来进行肤色检测。本文采用YCbCr

作为肤色检测的彩色空间。这样将图像转变成一个二值图像。

3.2确定候选人脸区域

为了人脸局部区域如眼睛、嘴唇等非肤色区域而导致的整个人脸的非全填充必须进行膨胀腐蚀的操作。步骤如下:

(1)作四方向膨胀以连接脸部区域中不连续的块;

(2)作四方向腐蚀使非人脸区域变小,恢复到膨胀前的大小;(3)去除孤立离散区域;

陈佳佳:硕士研究生

208--

邮局订阅号:82-946360元/年技术创新

图像处理

《PLC 技术应用200例》

您的论文得到两院院士关注(4)再次作四方向膨胀腐蚀操作;(5)填充孔洞。

这样就得到经肤色检测后的候选肤色区域。

3.3确定人脸位置

为了缩小人眼定位的范围,提高检测效率,将从候选肤色区域中判断类似人脸的区域。由于人脸区域是相对集中区域,所以在候选皮肤区域内,以区域的最上点、最下点、最左点与最右点为边界计算区域内0和1的个数。当区域中1的个数与区域面积比大于1/2时,所选的区域为候选人脸区域。候选人脸区域如图5-3所示。

4图像边缘提取

边缘就是灰度发生急剧变化的位置,它是图像的最基本的特征。在图像分析中,边缘一般用于寻找区域的边界。边缘中包含着将要定位的瞳孔圆形边界信息,可以用边缘提取的方法将其提取出来。Sobel 边缘提取算子对一些像素求和然后再差分,因此具有平滑噪声作用。边缘提取结果如图5-5所示。

4.1Hough 变换定位虹膜位置

人左右眼的虹膜轮廓是精确的圆形。因此,为了定位人的眼睛,需要在人脸图像边缘图中找出这个圆的圆心。但是,睫毛和上下眼皮的存在,加上其他不可预料的干扰,会使圆的部分边缘被遮挡住。

Hough 变换是一种用于区域边界形状描述的方法,常常被用于直线段,圆和椭圆的检测。它相对灰度投影法与模板匹配发的优点是具有受噪声和边缘间断影响小,定位准确。同时具有很好的容错性和健壮性。因此,Hough 变换是检验瞳孔轮廓十分有

效的方法。

Hough 变换的原理是:图像空间的直线与描述它的极坐标表达式参数有唯一的对应关系,若以这些参数形成一个空间,则

图像空间的一条直线必对应于参数空间列阵中的一个点。

通过Hough 变换作曲线检测的关键是写成由图像空间到参数空间的变换公式。一个圆可以表示为:,

那么参数空间则可以表示为。于是图像空间的一个圆则

对应空间

上的一点。

图像空间(x,y)中的一个特定点(x 0,y 0),通过该点可以有很多个圆,每一个圆都对应了参数空间中的一个点,而空间(x,y)

中共点的多个圆在空间中对应多个点,这些点便组成一圆

锥曲面。

参数空间中的一点对应于空间(x,y)中的一个圆

。通过该圆周上的每一点

又可作多个圆,这些共点的多个圆在参数空间

中对应的

多个点,均满足方程。然而点又是圆

上的点,所以多个点构成的圆锥曲面

必满足方程。于是,空间

中共圆的不同点所对应的圆锥曲面必在参数空间中交

于一点。因此,该点所对应的空间

中的圆便是所

要检测的圆。

在实验中,为了减少计算量,把虹膜半径的取值范围设为

[3,6]。对图像中的每点,计算与点距离在[3,6]内的点的数目,并赋值到二维数组中。这时,二维数组中数字越

大的点,代表类圆形的圆心。经过处理的候选区域通过Hough 变换,判断是否是圆形的轮廓,进一步确定双眼虹膜位置。如图5-6所示。

5实验结果

图5-1原图像图5-2肤色检测图图5-3候选人脸区域

图5-4肤色检测图图5-5边缘提取图图5-6人睛定位后本文所采用的彩色人脸图像库由不限定获取条件的具有较广泛代表性的图像组成,半数以上是从互联网上下载收集的任意图片,另外还包括扫描的照片、用CCD 摄像头和数码相机拍摄到的图像。本文用72幅图像进行了实验,实验结果如表5-

1所示。

表5-1人脸检测结果

本文所采用的彩色人脸图像库由不限定获取条件的图像组成,半数以上是从互联网上下载收集的任意图片,另外还包括扫描的照片、用CCD 摄像头和数码相机拍摄到的图像。该库中包含很多人的图片,每张图片,之间的差别比较大,具有较广泛代表性。实验发现,当表情没有太大的变化时,且背景较简单的情况下,定位准确率可以达到90%以上。而当表情夸张或者背景比较复杂时,定位准确率有所降低,这也将是今后的研究重点。

6结束语

文中方法结合了几种现有的人眼定位方法,首先通过预处理技术消除光线噪声的影响,采用基于肤色检测和Hough 变换两步快速定位人眼的方法。实验结果现实该算法可以有效的对图像进行检测,处理速度快,受噪声干扰较小,同时具有较好的准确性和健壮性。实验中也出现了一些错误的检测。原因主要是而当表情夸张或者背景比较复杂时,定位准确率有所降低,这也将是今后的研究重点。

本文创新点:提出一种基于肤色检测和Hough 变换两步快速定位人眼的方法。并对图像进行肤色检测,同时进行边缘提取,然后用Hough 变换对图像进行圆检测,从而确定双眼的精确位置。

(下转第168页)

(,)á

?x y (,)á?x y (,)i j 209--

技术创新

《微计算机信息》(嵌入式与SOC )2010年第26卷第2-2期360元/年邮局订阅号:82-946

《现场总线技术应用200例》

RFID 射频识别

有传输密钥保护(transport key protects access to EEPROM on

chip delivery)。

4.数据高度可靠

读写器和卡之间的无线通信链路使用了以下的机制确保数据可靠地传输。(1)卡片上有高速的CRC 协处理器实现每个块16位CRC 。(2)每个字节都有奇偶校验位。(3)位计数检查。

(4)用位编码区别1、0和没有信息。(5)信道监控(协议序列和位流分析)。

5.方便用户

系统的设计使用户使用更加方便,例如卡片上还内建有增值/减值的专项的数学运算电路,非常适合公交/地铁等行业的定额收费系统。由于数据传送速率很高,典型的购票处理时间(ticketing transaction)小于100ms(包括备份管理),这样MIFARE 卡用户就不需要停在读写器前面,增大了通道门的吞吐量,减少了上公共汽车的时间;如果卡放在钱包中,甚至钱包中有硬币也

可以进行交易。

(四)系统的基本原理

系统工作时,RFID 监测系统不断地将带有数据信息的加密载波信号经阅读器天线发出,当车载射频卡进入阅读器射频信号工作区域内,射频卡自动激活并将加密信号传回阅读器,送入计算机终端进行处理。车主将用户射频卡放于读卡器前扫描,计算机会对车载射频卡和用户射频卡的信息进行核对,实现用户认证,根据运行结果,进行相应的报警或通行操作。

4计算机管理软件设计

计算机管理软件主要由前台管理界面和后台数据库两部分组成。该系统软件运用WinXP 操作系统作为开发平台,采用

Visual Basic 6.0进行软件开发,系统设计力求界面友好,操作简便,有较强的稳定性、通用性、容错性和可维护性。

系统软件以前后台的方式运行,前台可进行录入、绘图、打印等操作。后台进行数据通信,是一种实时多任务的管理系统软

件。车辆管理系统主要由系统设置模块、通讯功能模块、卡操作模块、查询与统计模块、附加功能模块组成,各模块采用SQL 作为数据库。各模块基本功能:1)系统设置模块包括登录密码设置、管理员密码设置、通讯端口设置、车型设置、单位设置、退出系统等功能。2)通讯功能模块完成控制指令的发送和实时数据接收,是门禁管理系统能实时正常工作的核心。通讯功能模块包括停止监控、监控器对表、发送黑名单(没有缴费)、删除黑名单等功能。3)卡操作模块是系统的核心模块之一。可以进行注册卡发卡、修改信息、报失卡、取消报失、旧卡换新、读卡信息等操作、系统操作人员在发卡时经由通信适配器读取在RFID 读卡器上的卡片信息。4)卡的卡号。每张卡具有唯一性不可复制将此卡号与车辆信息建立数据关联,每台车有两张卡,一张车载射频卡,一张用户射频卡。发卡的时候已经将这两张射频卡的卡号和车辆即车主进行绑定,并保存在计算机的数据库里面。此后,当车射频卡在相关门禁节点被检测到时,同时要求车主必须刷用户射频卡,计算机比对车载射频卡和用户射频卡的数据,然后发出是否允许通行,并作相应处理。5)查询与统计模块可进行车辆出入记录、单车信息汇总、浏览射频卡注册表、黑名单等信息的查询与统计。6)附加功能模块包括值班员报到等功能。

5结论

基于RFID 的智能车辆管理系统是一种高效、快捷、科学的

车辆管理手段。对于单位车辆用户,其效率高,准确无误,安全性高;对于管理者,其易于操作维护,自动化程度高,大大减轻管理者的劳动量。

本文创新点:本文创新点在于在现行的车辆管理系统的基础上增加了车载射频卡和用户射频卡的信息匹配过程,极大地增加车辆管理的安全性,防止车辆被掉包,为现行的车辆管理系统提供了一种可行的解决车辆安全性的方案。

参考文献

[1]夏敦柱.非接触式IC 卡系统研究与开发.安徽大学硕士论文,2002,4:23-25。

[2]ISO 14443Identification cards –Contactless integrated circuits cards –Proximity cards.International Organization for Standard -ization Publication Date,2001,Feb 1:1-4。

[3]游战清.无线射频识别技术(RFID)理论与应用.电子工业出版社,2004,6:8-12

[4]张宏海.RFID 系统中识读器的设计与研究.微计算机信息,2006,7-2:238-240。

作者简介:詹艳军(1980-),女(汉族),黑龙江大庆人,成都信息工程学院讲师,硕士,主要从事自动测量和计算机控制。

Biography:ZHAN Yan -jun (1980-),Born in daqing of hei -longjiang province,The teaching assistant of Chengdu university of information technology,Bachelor degree,The main researching field is automation meter and computer control.(610225成都成都信息工程学院)詹艳军杨笔锋

(ChengDu University of Information Technology,ChengDu 610225,China)ZHAN Yan-jun YANG Bi-feng

通讯地址:(610225成都信息工程学院航空港校区计算机基础教学部)詹艳军

(收稿日期:2009.04.08)(修稿日期:2009.07.08)

(上接第209页)参考文献

[1]童晓阳,杨名利.人脸轮廓定位和归一化的研究[J].系统仿真学报,2005,17(3):701-709

[2]李雪威,张新荣.基于灰度差投影的快速人脸定位特征提取[J].微处理机,2004,2:23-25

[3]朱效影,杜培明.人脸检测技术综述[J].仪器仪表用户,2006,13(4):4-5

[4]周志华,陈世福.基于混合投影函数的眼睛定位[J].软件学报,2003,14(8):1394-1399

[5]欧阳.基于自适应边缘提取的人眼定位算法[J].微计算机信息,2008,5-3:2-3

作者简介:陈佳佳(1985.10-),男,安徽省宿州市,硕士研究生,主要研究方向为智能系统与知识工程;黄穗,男,广东省广州市,副教授,硕士生导师,主要研究方向为智能系统与知识工程。

Biography:CHEN Jia-jia (1985-),Male,Born in Suzhou,Anhui province,Master degree,Jinan university),The main researching fields are Intelligent Systems and Knowledge Engineering.(510632广州暨南大学信息与技术学院)陈佳佳黄穗

(Jinan universary Information and Technical College,Guangzhou 510632,China)CHEN Jia-jia HUANG Sui

通讯地址:(510632广东省广州市天河区暨南大学真如21A802)

陈佳佳

(收稿日期:2009.03.13)(修稿日期:2009.06.13)

168--

hough变换检测椭圆的matlab源码[matlab]

hough变换检测椭圆的matlab程序 程序代码:(代码标记[code]...[/code] ) [row col]=size(fedge); minofa=a; maxofa=round(row/2); minofy0=round(col/2)-30; maxofy0=round(col/2)+30; minofb=round(col/2)-60; maxofb=round(col/2); maxofx=round(row/2); scalor=4; H=zeros(floor((maxofa-minofa)/scalor)+1,floor((maxofa-minofa)/scalor)+1,... floor((maxofy0-minofy0)/scalor)+1,floor((maxofb-minofb)/scalor)+1); for x=1:maxofx for y=1:col temp=fedge(x,y); if temp==255 for a=minofa:scalor:maxofa for x0=a:scalor:maxofa for b=minofb:scalor:maxofb for y0=minofy0:scalor:maxofy0 temp=((y-y0)/b)^2+((x-x0)/a)^2; if abs(temp-1)<=0.01 xtemp=floor((x0-minofa)/scalor)+1; atemp=floor((a-minofa)/scalor)+1; ytemp=floor((y0-minofy0)/scalor)+1; btemp=floor((b-minofb)/scalor)+1; H(xtemp,atemp,ytemp,btemp)=H(xtemp,atemp,ytemp,btemp)+1; end end end end end end end end maxofH=max(max(max(max(H)))); for i=1:floor((maxofa-minofa)/scalor)+1 for j=1:floor((maxofa-minofa)/scalor)+1 for m=1:floor((maxofy0-minofy0)/scalor)+1 for n=1:floor((maxofb-minofb)/scalor)+1

用Hough变换检测二值图像中的圆

用Hough变换检测二值图像中的圆 Hough 变换简介 Hough变换是实现图像边缘检测的一种有效方法,其基本思想是将测量空间的一点变换到参量空间中的一条曲线或一个曲面,而具有同一参量特征的点交换后在参量空间中相交,通过判断交点处的积累程度来完成特征曲线的检测,基于参量性质的不同,Hough变换可以检测直线、圆、椭圆、双曲线、抛物线等。同时,将概率论、模糊集理论、分层迭代的思想和级联的方法应用于Hough变换的过程中,大大地提高了Hough变换的效率,改善了Hough变换的性能。 实验主要使用的函数 MATLAB内部常数pi:圆周率 p(= 3.1415926...) MATLAB常用基本数学函数: abs(x):纯量的绝对值或向量的长度; round(x):四舍五入至最近整数; floor(x):地板函数,即舍去正小数至最近整数; MATLAB常用三角函数 sin(x):正弦函数 cos(x):余弦函数; 向量的常用函数 max(x): 向量x的元素的最大值。 MATLAB图像类型转换函数: rgb2gray:将一副真彩色图像转换成灰度图像; im2bw:通过设定高度阈值将真彩色,索引色,灰度图转换成二值图像; MATLAB图形图像文件的读取和显示函数 imread(filename); MATLAB二进制图像及其显示 imshow(f1)。 用double对二值图像双精度化 图形处理: sobel算子检测边缘 hough变换检测圆

分别显示灰度图像: figure;subplot Sobel:算子边缘检测图像 hough变换检测后的图像 实验相关代码 I=imread('*.jpg');f=rgb2gray(I); f1=im2bw(f,200/255); BW1=double(f1); BW=edge(BW1,'sobel',0.4); r_max=50; r_min=10;step_r=10;step_angle=pi/12;p=0.7; [m,n] = size(BW); size_r = round((r_max-r_min)/step_r)+1; size_angle = round(2*pi/step_angle); hough_space = zeros(m,n,size_r); [rows,cols] = find(BW); ecount = size(rows); for i=1:ecount for r=1:size_r for k=1:size_angle a = round(rows(i)-(r_min+(r-1)*step_r)*cos(k*step_angle)); b = round(cols(i)-(r_min+(r-1)*step_r)*sin(k*step_angle)); if(a>0&&a<=m&&b>0&&b<=n) hough_space(a,b,r) = hough_space(a,b,r)+1; end end end end max_para = max(max(max(hough_space))); index = find(hough_space>=max_para*p); length = size(index); hough_circle = false(m,n); for i=1:ecount for k=1:length par3 = floor(index(k)/(m*n))+1; par2 = floor((index(k)-(par3-1)*(m*n))/m)+1; par1 = index(k)-(par3-1)*(m*n)-(par2-1)*m; if((rows(i)-par1)^2+(cols(i)-par2)^2<(r_min+(par3-1)*step_r)^2+5&&... (rows(i)-par1)^2+(cols(i)-par2)^2>(r_min+(par3-1)*step_r)^2-5)

基于质心法的一种椭圆检测的方法

基于质心法的一种椭圆检测的方法 发表时间:2018-05-14T16:09:43.330Z 来源:《电力设备》2017年第34期作者:仝毅杰尚雅层陈鸿 [导读] 摘要: 针对图像中完整椭圆或是非完整椭圆中心的情况,提出了一种基于质心的方法来确定椭圆的中心位置,在这个过程中设定椭圆为均质椭圆,假定其密度为1,经过实验证明,该算法可以很好的确定出椭圆的中心位置。 (西安工业大学机电工程学院西安 710021) 摘要: 针对图像中完整椭圆或是非完整椭圆中心的情况,提出了一种基于质心的方法来确定椭圆的中心位置,在这个过程中设定椭圆为均质椭圆,假定其密度为1,经过实验证明,该算法可以很好的确定出椭圆的中心位置。 在机器视觉安全加气系统中,能够精确地找到进气口的位置是完成加气动作最关键的因素。加气时,加气口与进气口必须对准,因此摄像机无法在进气口的轴向拍摄,椭圆中心位置的确定是整个系统动作完成的关键之所在。文献[1]提出了基于Hough变换的椭圆算法,其随机采样两点,利用椭圆的性质去除无效的采样,再进行拟合得到椭圆。文献[2]采用最小二乘法二次曲线拟合法对椭圆提取。文献[3]依据椭圆的一些定位信息、图像边缘的梯度方向灰度的分布特征拟合出亚像素边缘点,并进行最小二乘拟合,最终得到得到椭圆中心。文献[4]首先缩小图像进行Hough变换,再放大图像建立新的参量空间进行Hough变换,最终得出椭圆的中心位置。椭圆中心位置的检测主要有Hough变换法、最小二乘拟合法[5]等。Hough变换法可以检测出椭圆,但是容易受到参数离散化程度的影响;最小二乘法对图像的边缘点拟合,所以图像边缘点的提取精度直接影响了椭圆中心位置的精度。因此,本文提出一种利用质心法得出图像中椭圆的中心位置的方法。 1.质心提取的基本原理 对于一个带状的椭圆区域S,如图1,它的质心可以通过质心计算公式得到: 图1 带状椭圆环 (1.1)(1.2) 拍摄的画面中,在椭圆的带状区域内假设其密度,则空白处密度。因此,上述的积分就是可以转化为只对带状区域 的积分,即:(1.3)(1.4) 在拍摄的画面中,由于是离散的像素点,因此,离散化后的计算方法如下,(1.5)(1.6) 为单位质量,假定其为均匀分布,即为一常量。 (1.7)(1.8) 化简得:(1.9)(1.10) 其中,分别为画面内所有坐标的和;为像素个数。 对于线状曲线S的质心,如图2所示 图2 线状椭圆S 线状曲线的质心计算如下: (1.11)(1.12) 同样,拍摄的画面是像素点,因此,将其离散化后的计算方法如下: (1.13) (1.14) 因此,无论区域是带状区域或是线状区域均适用于质心法。 2.实验结果

Hough变换实例 很清晰的

数字图像处理第八次作业 实验内容 1、拍摄一张包含硬币、橡皮等物品的照片,通过Hough 变换检测出圆形的硬币个数并区分不同半径的硬币。最终计算出照片中的总钱数。 解:Hough 变换的实质是对图像进行坐标的变换,将图像空间的线条变为参数空间的聚集点,从而将原始图像中检测给定形状的曲线问题,变成寻找参数空间中的峰点的问题。 它不仅可以检测直线,而且可以很方便地检测圆、椭圆和抛物线等形状。由于这里需要检测圆形的硬币,所以下面给出检测圆的具体方法: 因为圆的图像空间方程为:222()()x a y b r -+-=, 我们需要通过Hough 变换,将图像空间(,)x y 对应到参数空间(,,)a b r ,然后对其进行累加完成检测。但是显然这种方法的计算量是非常大的,所以一般都是先对灰度图像进行边缘提取,利用边界像素的灰度梯度信息估计出下式中的角度θ,以此来降低计算量: cos cos a x r b y r θ θ=-*??=-*? (1) 一般在检测过程中需要对图像进行预处理,使得检测更加准确和容易。检测过程如下所示: ○ 1真彩色图像转为灰度图像; ○ 2去除噪声,进行中值滤波; ○ 3转为二值图像,利用边缘算子进行图像边缘提取; ○ 4最后进行图像的平滑和填充。 这里处理的图像并没有太多噪声,所以处理的时候略去了中值滤波的步骤,直接对边缘提取后的图像进行Hough 变换检测圆形。 根据式(1),我们需要对半径r 和角度θ进行搜索,所以这里应该首先设置半径和角度方向的搜索步长step_r 和step_angle ,接着给出半径搜索的最大和最小值,当然这两个数值需要根据经验来自己确定。最后就可以根据这些确定半径和角度的最大搜索次数。

图像处理作业-hough变换的边缘提取

图像处理期末作业 姓名:刘新芳 学号:2012204097 院系:信自院通信系 专业:信号与信息处理

用Hough变换提取边界直线 Hough变换是1962年由Paul Hough提出来的。它所实现的是一种从图像空间到参数空间的映射关系。它具有一系列的优点。例如,由于根据局部度量来计算全面描述参数,因而对于区域边界被噪声干扰或者其他目标遮盖而引起边界发生瞬间间断的情况,它具有很好的容错性和鲁棒性。 原理 Hough变换是图像处理中从图像中识别几何形状的基本方法之一。 Hough 变换是一种利用表决原理的参数估计技术。其基本原理在于利用图像空间和Hough参数空间的点与线的对偶性,把图像空间中的检测问题转换到参数空间。通过在参数空间里进行简单的累加统计,然后在Hough参数空间寻找累加器峰值的方法检测直线。Hough变换的实质是将图像空间内具有一定关系的像元进行聚类,寻找能把这些像元用某一解析形势联系起来的参数空间累计对应点。在参数空间不超过二维的情况下,这种变换效果理想。 将原始图像空间的给定的曲线表达形式变为参数空间的一个点,这样就把原始图像中给定曲线的检测问题转化为寻找参数空间的峰值问题,也即是把检测整体特性转化为检测局部特性。比如直线、椭圆、圆、弧线等。简而言之,Hough 变换思想是:在原始图像坐标系下的一个点对应了参数坐标系中的一条直线,同样参数坐标系的一条直线对应了原始坐标系下的一个点,然后,原始坐标系下呈现直线的所有点,它们的斜率和截距是相同的,所以它们在参数坐标系下对应于同一个点。这样在原始坐标系下的各个点的投影到参数坐标系下之后,看参数坐标系下没有聚集点,这样的聚集点就对应了原始坐标系下的直线。 如果参数空间中使用直线方程,当图像空间直线斜率为无穷大时,会使累加器尺寸和变很大,从而是计算复杂程度过大,为解决这一问题,采用极坐标方程,变换方程如图1所示。 θ ρsin θ = cos y x+ 根据这个方程,原图像空间中的点对应新参数空间中的一条正弦曲线,即点-正弦曲线对偶。检测直线的具体过程就是让θ取遍可能的值,然后计算ρ的值,

Hough变换实例

实验内容 1.拍摄一张包含硬币、橡皮等物品的照片,通过Hough 变换检测出圆形的硬币个数并区分不同半径的硬币。最终计算出照片中的总钱数。 解:Hough 变换的实质是对图像进行坐标的变换,将图像空间的线条变为参数空间的聚集点,从而将原始图像中检测给定形状的曲线问题,变成寻找参数空间中的峰点的问题。 它不仅可以检测直线,而且可以很方便地检测圆、椭圆和抛物线等形状。由于这里需要检测圆形的硬币,所以下面给出检测圆的具体方法: 因为圆的图像空间方程为:222()()x a y b r -+-=, 我们需要通过Hough 变换,将图像空间(,)x y 对应到参数空间(,,)a b r ,然后对其进行累加完成检测。但是显然这种方法的计算量是非常大的,所以一般都是先对灰度图像进行边缘提取,利用边界像素的灰度梯度信息估计出下式中的角度θ,以此来降低计算量: cos cos a x r b y r θθ=-*??=-*? (1) 一般在检测过程中需要对图像进行预处理,使得检测更加准确和容易。检测过程如下所示: ○ 1真彩色图像转为灰度图像; ○ 2去除噪声,进行中值滤波; ○ 3转为二值图像,利用边缘算子进行图像边缘提取; ○ 4最后进行图像的平滑和填充。 这里处理的图像并没有太多噪声,所以处理的时候略去了中值滤波的步骤,直接对边缘提取后的图像进行Hough 变换检测圆形。 根据式(1),我们需要对半径r 和角度θ进行搜索,所以这里应该首先设置半径和角度方向的搜索步长step_r 和step_angle ,接着给出半径搜索的最大和最小值,当然这两个数值需要根据经验来自己确定。最后就可以根据这些确定半径和角度的最大搜索次数。 由于Hough 变换需要用到稀疏矩阵,也即首先得找到图像矩阵中的非零量,针对这些非零量进行进一步的处理。这个操作可以直接通过Matlab 中的find 语

Hough变换原理要点

摘要 人类对物体的识别最主要是对物体外形的识别,图像的形状检测在图像处理以及模式识别中是十分重要的。Hough变换作为目标形状特征提取的有效方法得到了广泛的应用。但Hough变换算法主要应用于二值图像(即边缘图像),因此在对灰度图像进行Hough变换前需要对其进行预处理(包括图像的滤波与边缘检测)。图像预处理作为Hough变换目标检测过程中重要的前期工作,其结果将直接影响检测结果的好坏。文中介绍了图像中常见的两种噪声,对图像的空间域噪声滤波做了一些研究,分析了高斯滤波与中值滤波的局限性,在双边滤波的基础上提出了一种基于多次中值抽取的双边滤波方法,该方法兼顾了空间邻域的相关性和像素强度的相似性,通过伪中值滤波选取强度滤波器的参考像素值,在平滑高斯噪声和椒盐噪声的同时更好地保护了边缘,与针对某一类特定噪声设计的传统滤波方法相比,该方法能够处理混有混合噪声(高斯噪声和椒盐噪声)的图像,并能够得到很好的滤波效果。同时,本文分析了几种经典的边缘检测算子,用迭代的双边滤波方法代替Canny算子中的高斯滤波过程或自适应滤波过程,在一定程度上避免了滤波过程给边缘带来的模糊,得到了更好的边缘检测结果。Hough变换作为图形目标检测的有效方法,能够检测直线、圆、椭圆和抛物线等众多解析图形,广义Hough变换对该方法做了一些推广,不

再受图形解析表达式的限制,通过预先设置的查找表,能够检测任何图形目标。文中对这些方法都做了介绍,并对这些方法做了仿真。由于受到图像空间和参数空间离散化的影响,以及Hough变换自身的计算过使得传统Hough变换方法也有一些局限性,比如在高强度噪声下检测的结果不佳,计算量大,存储资源需求大等。文中分析了传统Hough变换的投票过程,指出传统方法对参数单元进行1值累加是不合理的,并且传统方法没有区分图像中的噪声点和直线上的点,介于此,提出了基于直线连接度量的Hough变换,既考虑了图像的全局信息,也考虑了图像中像点邻域的局部信息,使得参数空间中的峰值不再受到噪声的影响,同时也避免了图像中具有线性关系的特征点投票带来的虚假峰值。通过对传统Hough变换定义方式的修改,提出了基于模板匹配的Hough变换检测方法,在该方法中,每一个参数单元都确定了图像空间中的一个模板,通过该模板主动搜索图像空间中符合条件的特征点,特征点的个数作为参数单元的值,并记录图像中线段的端点坐标,完成图像中线段的检测与定位,能够节省大量的存储资源。 关键词:特征提取;Hough变换 Hough变化检测直线 Hough变换的基本思想是利用点—线的对偶性,即图像空间共线的点对应在参数空间里相交的线,反过来,在参

(标准)Hough变换检测圆

Hough变换检测圆(附:MATLAB程序) 分类:图像处理Hough圆2011-12-11 21:37 12587人阅读评论(33) 收藏举报matlab算法图像处理internetfunction任务 Hough变换的基本原理在于,利用点与线的对偶性,将图像空间的线条变为参数空间的聚集点,从而检测给定图像是否存在给定性质的曲线。圆的方程为:(x-a)^2+(y-2)^2=r^2,通过Hough 变换,将图像空间对应到参数空间。附录中的MATLAB程序为网上比较常见的,实际运行中存在一些问题,这里进行些修改。 原理: 霍夫变换是图像处理中从图像中识别几何形状的基本方法之一,应用很广泛,也有很多改进算法。最基本的霍夫变换是从黑白图像中检测直线(线段)。 我们先看这样一个问题:设已知一黑白图像上画了一条直线,要求出这条直线所在的位置。我们知道,直线的方程可以用y=k*x+b 来表示,其中k和b是参数,分别是斜率和截距。过某一点(x0,y0)的所有直线的参数都会满足方程y0=kx0+b。即点(x0,y0)确定了一族直线。方程 y0=kx0+b在参数k--b平面上是一条直线,(你也可以是方程b=-x0*k+y0对应的直线)。这样,图像x--y平面上的一个前景像素点就对应到参数平面上的一条直线。我们举个例子说明解决前面那个问题的原理。设图像上的直线是y=x, 我们先取上面的三个点:A(0,0), B(1,1), C(22)。可以求出,过A点的直线的参数要满足方程b=0, 过B点的直线的参数要满足方程1=k+b, 过C 点的直线的参数要满足方程2=2k+b, 这三个方程就对应着参数平面上的三条直线,而这三条直线会相交于一点(k=1,b=0)。同理,原图像上直线y=x上的其它点(如(3,3),(4,4)等) 对应参数平面上的直线也会通过点(k=1,b=0)。这个性质就为我们解决问题提供了方法:首先,我们初始化一块缓冲区,对应于参数平面,将其所有数据置为0. 对于图像上每一前景点,求出参数平面对应的直线,把这直线上的所有点的值都加1。 最后,找到参数平面上最大点的位置,这个位置就是原图像上直线的参数。上面就是霍夫变换的基本思想。就是把图像平面上的点对应到参数平面上的线,最后通过统计特性来解决问题。假如图像平面上有两条直线,那么最终在参数平面上就会看到两个峰值点,依此类推。 在实际应用中,y=k*x+b形式的直线方程没有办法表示x=c形式的直线(这时候,直线的斜率为无穷大)。所以实际应用中,是采用参数方程p=x*cos(theta)+y*sin(theta)。这样,图像平面上的一个点就对应到参数p---theta平面上的一条曲线上。其它的还是一样。 在看下面一个问题:我们要从一副图像中检测出半径以知的圆形来。这个问题比前一个还要直观。我们可以取和图像平面一样的参数平面,以图像上每一个前景点为圆心,以已知的半径在参数平面上画圆,并把结果进行累加。最后找出参数平面上的峰值点,这个位置就对应了图像上的圆心。在这个问题里,图像平面上的每一点对应到参数平面上的一个圆。 把上面的问题改一下,假如我们不知道半径的值,而要找出图像上的圆来。这样,一个办法是把参数平面扩大称为三维空间。就是说,参数空间变为x--y--R三维,对应圆的圆心和半径。

hough变换原理

Hough变换原理 霍夫变换(Hough Transform)是图像处理中的一种特征提取技术,它通过一种投票算法检测具有特定形状的物体。该过程在一个参数空间中通过计算累计结果的局部最大值得到一个符合该特定形状的集合作为霍夫变换结果。霍夫变换于1962年由Paul Hough 首次提,后于1972年由Richard Duda 和Peter Hart推广使用,经典霍夫变换用来检测图像中的直线,后来霍夫变换扩展到任意形状物体的识别,多为圆和椭圆。 霍夫变换运用两个坐标空间之间的变换将在一个空间中具有相同形状的曲线或直线映射到另一个坐标空间的一个点上形成峰值,从而把检测任意形状的问题转化为统计峰值问题,上一节中已经介绍了车道的直线特征,本节中介绍hough变换检测直线的原理和检测结果。 我们知道,一条直线在直角坐标系下可以用y=kx+b表示, 霍夫变换的主要思想是将该方程的参数和变量交换,即用x,y作为已知量k,b作为变量坐标,所以直角坐标系下的直线y=kx+b在参数空间表示为点(k,b),而一个点(x1,y1)在直角坐标系下表示为一条直线y1=x1·k+b,其中(k,b)是该直线上的任意点。为了计算方便,我们将参数空间的坐标表示为极坐标下的γ和θ。因为同一条直线上的点对应的(γ,θ)是相同的,因此可以先将图片进行边缘检测,然后对图像上每一个非零像素点,在参数坐标下变换为一条直线,那么在直角坐标下属于同一条直线的点便在参数空间形成多条直线并内交于一点。因此可用该原理进行直线检测:

4-13 参数空间变换结果 如图4-13. 所示,对于原图内任一点(x,y)都可以在参数空间形成一条直线, 到的(γ,θ)在参数空间中得到一系列对应曲线见图4-14 霍夫统计变换结果。由霍夫变换检测结果见图4-15(c)所示。

Hough哈夫变换检测原理

Hough变换是图像处理中从图像中识别几何形状的基本方法之一。Hough变换的基本原理在于利用点与线的对偶性,将原始图像空间的给定的曲线通过曲线表达形式变为参数空间的一个点。这样就把原始图像中给定曲线的检测问题转化为寻找参数空间中的峰值问题。也即把检测整体特性转化为检测局部特性。比如直线、椭圆、圆、弧线等。 Hough变换的基本思想 设已知一黑白图像上画了一条直线,要求出这条直线所在的位置。我们知道,直线的方程可以用y=k*x+b 来表示,其中k和b是参数,分别是斜率和截距。过某一点(x0,y0)的所有直线的参数都会满足方程y0=kx 0+b。即点(x0,y0)确定了一族直线。方程y0=kx0+b在参数k--b平面上是一条直线,(你也可以是方程b=-x0*k+y0对应的直线)。这样,图像x--y平面上的一个前景像素点就对应到参数平面上的一条直线。我们举个例子说明解决前面那个问题的原理。设图像上的直线是y=x, 我们先取上面的三个点:A(0,0), B(1,1), C (22)。可以求出,过A点的直线的参数要满足方程b=0, 过B点的直线的参数要满足方程1=k+b, 过C点的直线的参数要满足方程2=2k+b, 这三个方程就对应着参数平面上的三条直线,而这三条直线会相交于一点(k=1,b=0)。同理,原图像上直线y=x上的其它点(如(3,3),(4,4)等)对应参数平面上的直线也会通过点(k=1,b=0)。这个性质就为我们解决问题提供了方法,就是把图像平面上的点对应到参数平面上的线,最后通过统计特性来解决问题。假如图像平面上有两条直线,那么最终在参数平面上就会看到两个峰值点,依此类推。 简而言之,Hough变换思想为:在原始图像坐标系下的一个点对应了参数坐标系中的一条直线,同样参数坐标系的一条直线对应了原始坐标系下的一个点,然后,原始坐标系下呈现直线的所有点,它们的斜率和截距是相同的,所以它们在参数坐标系下对应于同一个点。这样在将原始坐标系下的各个点投影到参数坐标系下之后,看参数坐标系下有没有聚集点,这样的聚集点就对应了原始坐标系下的直线。 首先,初始化一块缓冲区,对应于参数平面,将其所有数据置为0.对于图像上每一前景点,求出参数平面对应的直线,把这直线上的所有点的值都加1。最后,找到参数平面上最大点的位置,这个位置就是原图像上直线的参数。 在实际应用中,y=k*x+b形式的直线方程没有办法表示x=c形式的直线(这时候,直线的斜率为无穷大)。所以实际应用中,是采用参数方程p=x*cos(theta)+y*sin(theta)。这样,图像平面上的一个点就对应到参数p ---theta平面上的一条曲线上,其它的还是一样。 Hough变换推广 1、已知半径的圆

相关文档