屏幕区域检测方法及系统的制作方法

文档序号:6601910阅读:236来源:国知局
专利名称:屏幕区域检测方法及系统的制作方法
技术领域
本发明涉及图像处理领域,具体而言,涉及图像分割领域,尤其涉及一种从所捕获的图像中检测屏幕区域的方法以及使用这种方法的系统。
背景技术
在各种研讨会中,采用投影仪作为辅助工具对于演讲的进行非常有帮助。但是在演讲的过程中,演讲人需要频繁地操作计算机来切换投影屏幕上的内容,或者需要助手根据演讲人员演讲的进度来操作与投影仪连接的计算机来切换投影屏幕上的内容。这种利用投影仪的方式虽然为演讲人带来了极大的方便,但是其操作过程依然非常费时或者费力。为此,人们提出了一种能够通过直接点击投影屏幕上的内容来操作计算机的方法,即通过成像装置获取包含投影屏幕的图像,通过计算机提取所获取的图像中的投影屏幕的屏幕区域位置信息,并利用屏幕区域的位置信息以及对投影屏幕中内容的操作来切换所需投影的内容。为了提取所获取的图像中的特定区域,美国专利申请公开号US20040165786A披露了一种用于提取图像中的白板内容并将所提取的白板内容转换为电子文档的方法和装置。该专利申请为了能够自动识别所拍摄图像中的白板,采用了一种四边形检测算法来识别白板区域。但是,根据所述专利申请描述的方法,往往会在白板边缘检测到多条平行直线,因此很难精确确定这些直线中哪一条是白板边缘,由此导致所检测到的白板与实际白板之间存在较大的误差。另一美国专利申请公开号US20080266253A披露了一种在计算机投影区域追踪激光点的系统。在该专利所述的系统中,采用了一种屏幕区域检测方法,该方法通过二值化捕获图像,并从二值化图像中筛选四边形来获取投影区域。该方法很大程度上依赖于所捕获图像的质量,因此,为了提高所捕获的图像的质量,需要为图像捕获设备加装特殊滤镜。另一美国专利US6618076披露了一中校准投影仪摄像头系统的装置。该专利所披露的技术方案通过投影仪投射特殊图案来进行特征提取。因此,人们希望能够有一种方法和设备能够在不增加硬件设备的情况下,更精确地检测屏幕区域,从而使得演讲者在操作投影系统时能够更准确地切换投影内容。

发明内容
本发明提供了一种解决上述现有技术中问题的方法。具体而言,提供了一种如何在采用交互式虚拟白板的系统中,精确地获取虚拟白板的边缘,从而获得投射在投影屏幕上的指示点相对于投影屏幕的精确坐标位置的方法,从而能够向采用交互式虚拟白板的系统输出指示点在虚拟白板中的精确坐标点信息,以便能够使用指示点与计算机进行交互。 但是,为了精确地检测指示点(例如激光点)在捕获图像中的位置,捕获图像的亮度需要很低。这就使得采用现有的技术在捕获图像中对屏幕区域的检测相对困难,很难用一般的角点检测算法获得。
为克服上述技术问题,本发明提供了一种屏幕区域检测的方法,包括捕获含有屏幕的图像;基于所捕获的图像中的每个像素的亮度值的变化,获取屏幕区域的嫌疑边缘; 通过霍夫变换,将所获得的嫌疑边缘变换为直线;对所捕获的图像执行二值化处理,其中将图像划分为目标区域和非目标区域;获取最大目标区域的边界点,并将所有边界像素点集合作为相应目标区域的轮廓;基于所述轮廓上像素点到每条所变换的直线的最小距离以及基于所选择的直线的方向,从所变换的直线中确定位于所述轮廓上的直线;基于所选择的直线的坐标位置关系,将所选择的直线区分为上、下、左以及右四组直线;以及将同一组直线中的多条直线拟合为一条直线,从而获得屏幕区域的四个边缘。根据本发明的屏幕区域检测的方法,所述获取屏幕区域的嫌疑边缘通过Canny、 Sobel、或Harris边缘检测法实现。根据本发明的屏幕区域检测的方法,其中,所述从所变换的直线中确定位于所述轮廓上的直线包括计算所述轮廓上每一像素点到相应直线的距离,并从所计算获得距离中选取最小值作为所述相应直线与轮廓的最小距离;以及比较所计算获得的最小距离与一距离阈值,将最小距离小于所述距离阈值的直线确定为位于所述轮廓上的直线。根据本发明的屏幕区域检测的方法,所述从所变换的直线中确定位于所述轮廓上的直线还包括基于每条直线上个点的横向和纵向的亮度的梯度,计算相应直线的方向; 计算基于距离所述直线最近的轮廓点的横向和纵向的亮度的梯度,计算所述轮廓点的方向;以及比较比较所述直线的方向与所述轮廓点的方向,并将两者方向的夹角小于一角度阈值的直线确定为位于所述轮廓上的直线。根据本发明的屏幕区域检测的方法,其中,所述距离阈值为5、6、7、8、9或10个像
素距离。根据本发明的屏幕区域检测的方法,其中,所述角度阈值为20度、30度、40度或45度。根据本发明的另一个方面,还提供了一种屏幕区域检测的系统,包括图像获取模块,用于捕获含有屏幕的图像;边缘检测模块,基于所捕获的图像中的每个像素的亮度值的变化,获取屏幕区域的嫌疑边缘;直线变换模块,通过霍夫变换,将所获得的嫌疑边缘变换为直线;二值化处理模块,对所捕获的图像执行二值化处理,其中将图像划分为目标区域和非目标区域;轮廓提取模块,获取最大目标区域的边界点,并将所有边界像素点集合作为相应目标区域的轮廓;直线选择模块,基于所述轮廓上像素点到每条所变换的直线的最小距离以及基于所选择的直线的方向,从所变换的直线中确定位于所述轮廓上的直线;直线分组模块,基于所选择的直线的坐标位置关系,将所选择的直线区分为上、下、左以及右四组直线;以及直线拟合模块,将同一组直线中的多条直线拟合为一条直线,从而获得屏幕区域的四个边缘。通过上述方法,获得屏幕区域的四个边缘,从而能够输出屏幕区域各角点坐标。根据本发明的屏幕区域检测的系统,所述边缘检测模块获取屏幕区域的嫌疑边缘过Canny、Sobel、或Harris边缘检测法来机型边缘检测。根据本发明的屏幕区域检测的系统,所述直线选择模块包括距离计算模块,计算所述轮廓上每一像素点到相应直线的距离,并从所计算获得距离中选取最小值作为所述相应直线与轮廓的最小距离;距离比较模块,比较所计算获得的最小距离与一距离阈值,将最小距离小于所述距离阈值的直线确定为位于所述轮廓上的直线。根据本发明的屏幕区域检测的系统,所述直线选择模块包括方向计算模块,基于每条直线上个点的横向和纵向的亮度的梯度,计算相应直线的方向,并且基于距离所述直线最近的轮廓点的横向或纵向的亮度的梯度,计算所述轮廓点的方向;以及角度比较模块, 比较比较所述直线的方向与所述轮廓点的方向,并将两者方向的夹角小于一角度阈值的直线确定为位于所述轮廓上的直线。本发明通过提供上述屏幕区域检测方法,获得屏幕的四个顶点精确位置,从而能够将检测出指示点在所捕获图像中的坐标正确转换为所检测的屏幕区域中的坐标。因此, 所转换获得的指示点在所检测的屏幕区域中的坐标的精确度很大程度上依赖于屏幕区域检测的精确度,因此,由于本发明能够提供幕的四个顶点精确位置,因此指示点在所检测的屏幕区域中的坐标也就比较精确。


图1所示的是根据本发明的屏幕区域检测方法的流程图;图2所示的是一张所捕获的包含屏幕的原始图像的实例;图3A所示的是一张对图2所示的原始图像执行屏幕区域边缘检测处理后的图像的实例;图;3B所示的是一张对图3A所示的图像执行直线变换后的图像的实例;图3C所示的是一张对图2所示的原始图像执行二值化处理后的图像的实例;图3D所示的是一张是基于图3C所示的图像执行确定屏幕区域边缘的处理后的图像的实例;图4所示的是将图:3B所示的图像中的直线进行标注处理后的图像的实例;图5所示的是采用本发明的屏幕区域检测方法的系统的示意图;图6所示的是构成图5所示的系统的方框图。
具体实施例方式以下,将参照附图来详细说明本发明的具体实施例。图1所示的是根据本发明的屏幕区域检测方法的流程图。如图1所示,首先,在步骤SlO中,通过图像捕获装置捕获一帧包含有屏幕区域的图像,如图2所示,并将所捕获的图像传输给图5中所示的计算机51,以便进行随后的处理。 这种图像捕获装置如图5中所示的摄像头53。图2所示的示例性图像为带有计算机屏幕的 256阶灰度图像。这仅仅是一种距离说明,可以根据具体的需要来确定图像的灰度阶。同样,如果采用附图5中的摄像头53来拍摄,其所拍摄的一帧图像中的屏幕则不是计算机屏幕,而是投影屏幕M。在实际应用情况下,所拍摄的图像中的屏幕区域占所拍摄图像的面积的一半以上。随后,在步骤Sll中,计算机对从图像捕获装置所传输来的图像进行边缘检测,即在所捕获的图像中获取屏幕区域的嫌疑边缘。关于边缘检测,目前本发明所属技术领域存在多种方法,这些方法大致有两类基于搜索和基于零交叉。所谓基于搜索的边缘检测,首先要计算边缘强度,通常用一阶导数表示,例如梯度模,然后,通常采用梯度的方向估计边缘的局部方向,并利用此方向找到局部梯度模的最大值。所谓基于零交叉的方法,就是找到由图像得到的二阶导数的零交叉点来定位边缘,通常用拉普拉斯算子或非线性微分方程的零交叉点。本发明所举的一个例子中的方法为基于搜索的边缘检测。下面大致描述一下基于搜索的边缘检测方法。首先,计算一阶导数。许多边缘检测操作都是基于亮度的一阶导数,由此获得所捕获的图像的原始数据亮度的梯度。使用所获得的梯度,可以在图像的亮度梯度中搜寻峰值。 如果I(X)表示像素点X的亮度,Γ (χ)表示像素χ的一阶导数(即亮度梯度),这样我们就会发现I' (χ) = -l/2\cdot I (x_l)+0\cdot I (χ)+l/2\cdot Ι(χ+1)·\, (1)对于更高性能的图像处理来说,一阶导数能够通过带有掩码的原始数据(1维)卷积计算得到。其次,确定阈值。一旦计算出亮度的一阶导数之后,下一步要做的就是给出一个阈值来确定那里是边缘位置。在基于搜索的边缘检测方法,所采用边缘检测算子有Roberts Cross算子, Prewitt算子,Sobel算子,Canny算子。目前,Canny算子(或者这个算子的变体)是最常用的边缘检测方法。在采用Carmy算子边缘检测方法中,采用了一种用于边缘检测最优预平滑滤波器,该滤波器能够很好地被一阶高斯导数核优化。此外,采用Carmy算子的边缘检测方法中引入了非最大抑制概念,将边缘定义为在梯度方向具有最大梯度值的点。在一种采用Carmy算子边缘检测方法中,使用了两个阈值,两个阈值比使用一个阈值更加灵活。通常,阈值越低,能够检测出的边线越多,结果也就越容易受到图像中噪声信息的影响,并且越容易从图像中挑出不相关的特性。与此相反,一个过高的阈值将会遗失较细的或者较短的边缘。在此,具体描述一种基于图像中的像素的亮度值来进行的边缘检测,S卩,基于所捕获的图像中的每个像素的亮度值的变化,获取屏幕区域的嫌疑边缘。目前在计算机图像处理领域中,边缘检测的目的都是检测图像中明暗急变的特征。如图2所示的图像,图像明暗急变这一特征符合屏幕区域亮度与周边亮度变化特征,这是由于屏幕区域或者投影区域往往较周围环境要亮。在发明的一种实施方式中,采用了如上所述的Carmy边缘检测算法。这是因为 Canny边缘检测算法是一种多阶段的检测算法,能够在图像处理中检测较宽范围的边缘信息,这使得在调试过程中能够更容易的适应不同的使用环境。所述边缘检测方法的具体步骤为首先,消除噪声。Carmy边缘检测一般使用高斯平滑消除噪声。通过使用高斯模板对原始图像进行卷积运算来平滑图像中的噪声。发明中使用如下高斯模板对图像进行平滑。
权利要求
1.一种屏幕区域检测的方法,包括 捕获含有屏幕的图像;基于所捕获的图像中的每个像素的亮度值的变化,获取屏幕区域的嫌疑边缘; 通过霍夫变换,将所获得的嫌疑边缘变换为直线;对所捕获的图像执行二值化处理,其中将图像划分为目标区域和非目标区域; 获取最大目标区域的边界点,并将所有边界像素点集合作为相应目标区域的轮廓; 基于所述轮廓上像素点到每条所变换的直线的最小距离以及基于所选择的直线的方向,从所变换的直线中确定位于所述轮廓上的直线;基于所选择的直线的坐标位置关系,将所选择的直线区分为上、下、左以及右四组直线;以及将同一组直线中的多条直线拟合为一条直线,从而获得屏幕区域的四个边缘。
2.根据权利要求1所述的屏幕区域检测的方法,其中,所述获取屏幕区域的嫌疑边缘通过Canny、Sobel、或Harris边缘检测法实现。
3.根据权利要求1所述的屏幕区域检测的方法,其中,所述从所变换的直线中确定位于所述轮廓上的直线包括计算所述轮廓上每一像素点到相应直线的距离,并从所计算获得距离中选取最小值作为所述相应直线与轮廓的最小距离;比较所计算获得的最小距离与一距离阈值,将最小距离小于所述距离阈值的直线确定为位于所述轮廓上的直线。
4.根据权利要求1或3所述的屏幕区域检测的方法,其中,所述从所变换的直线中确定位于所述轮廓上的直线包括基于每条直线上个点的横向和纵向的亮度的梯度,计算相应直线的方向; 计算基于距离所述直线最近的轮廓点的横向和纵向的亮度的梯度,计算所述轮廓点的方向;以及比较所述直线的方向与所述轮廓点的方向,并将两者方向的夹角小于一角度阈值的直线确定为位于所述轮廓上的直线。
5.根据权利要求3所述的屏幕区域检测的方法,其中,所述距离阈值为5、6、7、8、9或 10个像素距离。
6.根据权利要求3所述的屏幕区域检测的方法,其中,所述角度阈值为20度、30度、40 度或45度。
7.一种屏幕区域检测系统,包括 图像获取模块,用于捕获含有屏幕的图像;边缘检测模块,基于所捕获的图像中的每个像素的亮度值的变化,获取屏幕区域的嫌疑边缘;直线变换模块,通过霍夫变换,将所获得的嫌疑边缘变换为直线; 二值化处理模块,对所捕获的图像执行二值化处理,其中将图像划分为目标区域和非目标区域;轮廓提取模块,获取最大目标区域的边界点,并将所有边界像素点集合作为相应目标区域的轮廓;直线选择模块,基于所述轮廓上像素点到每条所变换的直线的最小距离以及基于所选择的直线的方向,从所变换的直线中确定位于所述轮廓上的直线;直线分组模块,基于所选择的直线的坐标位置关系,将所选择的直线区分为上、下、左以及右四组直线;以及直线拟合模块,将同一组直线中的多条直线拟合为一条直线,从而获得屏幕区域的四个边缘。
8.根据权利要求7所述的屏幕区域检测系统,其中,所述边缘检测模块获取屏幕区域的嫌疑边缘过Canny、Sobel、或Harris边缘检测法来机型边缘检测。
9.根据权利要求7所述的屏幕区域检测系统,其中,所述直线选择模块包括距离计算模块,计算所述轮廓上每一像素点到相应直线的距离,并从所计算获得距离中选取最小值作为所述相应直线与轮廓的最小距离;距离比较模块,比较所计算获得的最小距离与一距离阈值,将最小距离小于所述距离阈值的直线确定为位于所述轮廓上的直线。
10.根据权利要求7或9所述的屏幕区域检测系统,其中,所述直线选择模块包括方向计算模块,基于每条直线上个点的横向和纵向的亮度的梯度,计算相应直线的方向,并且基于距离所述直线最近的轮廓点的横向或纵向的亮度的梯度,计算所述轮廓点的方向;以及角度比较模块,比较比较所述直线的方向与所述轮廓点的方向,并将两者方向的夹角小于一角度阈值的直线确定为位于所述轮廓上的直线。
全文摘要
本发明提供了一种屏幕区域检测的方法和系统,所述方法包括捕获含有屏幕的图像;基于所捕获的图像中的每个像素的亮度值的变化,获取屏幕区域的嫌疑边缘;通过霍夫变换,将所获得的嫌疑边缘变换为直线;对所捕获的图像执行二值化处理,其中将图像划分为目标区域和非目标区域;获取最大目标区域的边界点,并将所有边界像素点集合作为相应目标区域的轮廓;基于所述轮廓上像素点到每条所变换的直线的最小距离以及基于所选择的直线的方向,从所变换的直线中确定位于所述轮廓上的直线;基于所选择的直线的坐标位置关系,将所选择的直线区分为上、下、左以及右四组直线;以及将同一组直线中的多条直线拟合为一条直线,从而获得屏幕区域的四个边缘。
文档编号G06T7/00GK102236784SQ20101016522
公开日2011年11月9日 申请日期2010年5月7日 优先权日2010年5月7日
发明者于海龙, 宫卫涛, 张文波, 李东来, 潘萍萍 申请人:株式会社理光
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1