一种提取对象边缘的方法和装置的制作方法

文档序号:6483575阅读:228来源:国知局
专利名称:一种提取对象边缘的方法和装置的制作方法
技术领域
本发明涉及计算机图像处理领域,特别涉及一种提取对象边缘的方法和装置。
背景技术
随着计算机技术日新月异的发展,计算机图像处理技术也在日趋成熟。在计算机图像处理中,经常需要从一幅图像中提取某个对象,例如,将一张照片中的人物提取出来,然后放到另外一个背景上,从而形成一张新的照片。从一幅图像中提取某个对象时,如何快速而准确地提取出对象的边缘便是一个值得深入研究的问题。
现有技术中,主要是通过使用Photoshop图像处理软件中的路径工具、魔术棒等工具,从一幅图像中提取对象的边缘;另外,还可以通过智能剪刀算法从一幅图像中提取对象的边
缘,智能剪刀算法的原理是,用户首先在图像中选择一个种子锚点,然后在用户移动鼠标的过程中,通过迭代计算将包含该种子锚点和鼠标当前位置的区域作为对象的边缘。
在实现本发明的过程中,发明人发现现有技术至少存在以下问题
1) 对于路径工具而言,提取对象边缘时,如果用户输入的两个锚点之间的距离较远时,便得不到精确的对象边缘;如果要想得到精确的对象边缘,就需要在对象边缘的每一个细小
的拐点都点上一个锚点,就需要很大的工作量。
2) 对于魔术棒工具而言,提取对象边缘时,是通过提取对象的区域得到对象边缘,当对象区域内部的颜色变化丰富时,会提取到错误的对象边缘,所以不能提取颜色变化丰富的对象,特别是对象内部的颜色种类很多而且与背景颜色种类相似的时候。
3) 对于智能剪刀算法而言,提取对象边缘时,需要多次迭代计算才能提取到对象的边缘,需要的时间很长;并且,智能剪刀算法同魔术棒工具一样,不能提取颜色变化丰富的对象。

发明内容
为了提高提取对象边缘的精确度、减小提取对象边缘的工作量,本发明实施例提供了一种提取对象边缘的方法和装置。所述技术方案如下
一方面,本发明实施例提供了一种提取对象边缘的方法,所述方法包括接收在输入图像的对象边缘上输入的初始锚点和终点锚点;将所述输入图像转换为边缘图像;
根据所述边缘图像和预先设置的启发式评价函数提取算法,提取所述初始锚点和所述终
点锚点之间的对象边缘。
一方面,本发明实施例提供了一种提取对象边缘的装置,所述装置包括
接收模块,用于接收在输入图像的对象边缘上输入的初始锚点和终点锚点;
转换模块,用于在所述接收模块接收到所述初始锚点和所述终点锚点后,将所述输入图
像转换为边缘图像;
提取模块,用于在所述转换模块将所述输入图像转换为边缘图像后,根据所述边缘图像和预先设置的启发式评价函数提取算法,提取所述初始锚点和所述终点锚点之间的对象边缘。本发明实施例提供的技术方案的有益效果是
运用启发式评价函数提取算法,计算在对象边缘上输入的两个锚点之间的路径,可以精确地得到对象边缘的路径,提高了提取对象边缘的精确度;并且在对象边缘上输入的两个锚点距离很远的情况下,也可以精确地得到对象边缘的路径,从而减少了提取对象边缘的工作量;进一步地,本发明是基于边缘图像来提取对象边缘的,对象区域内部的颜色变化对于提取对象边缘没有影响,在对象区域内部颜色变化丰富时也可以得到很精确的结果;另外,与智能剪刀算法相比,提取对象边缘时需要的时间縮短了很多。


图1是本发明实施例1提供的一种提取对象边缘的方法流程图;图2是本发明实施例2提供的一种提取对象边缘的方法流程图;图3是本发明实施例3提供的一种提取对象边缘的装置结构示意图。
具体实施例方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明实施方式作进一步地详细描述。
本发明实施例提出采用启发式函数搜索算法中的评价函数来实现提取对象边缘,其中,启发式函数搜索算法是一种搜索算法,在提取对象边缘时为了得到初始锚点和终点锚点之间的边缘,往往需要用到搜索算法,而在众多的搜索算法中,基于启发式函数的搜索算法通常能得到很好的搜索结果。启发式函数搜索算法就是对空间中的每一个位置进行评估,从而得到最优的位置,并从该最优位置重新开始搜索直到找到目的点。在启发式函数搜索算法中,用于评价节点位置重要性的函数叫做评价函数,评价函数的主要任务就是估计待搜索节点的重要程度,以确定节点的优先级程度。评价函数的一般形式为f(x)=g(X)+h(x),其中,g(x)表示初始节点到当前节点已经实际付出的代价函数,h(x)表示当前节点到目标节点的最优路径的估计代价函数,在确定f(x)时,要使得g(x)与h(x)各占适当的比率,构造和选择合适的启发函数h(X)是启发式搜索的关键,在构造h(X)时,应满足两个方面的要求首先,启发函数要
简单易算;其次,函数要有较高的精确度,能够反应问题的实际情况。为了快速而准确地提取出对象的边缘,本发明实施例采用启发式函数搜索算法来搜索初始锚点和终点锚点之间的路径,并且本发明实施例预先设置的启发式评价函数的形式如下,F = Thres/(G+l)+H,其中G是已经付出的代价函数、H是最优路径的估计代价函数、Thres是对G和H的权重的一个衡量值,下面将详细描述本发明实施例具体是如何利用预先设置的启发式评价函数提取对象边缘的。实施例1
本发明实施例提供了一种提取对象边缘的方法,参见图l,该方法包括
101:接收在输入图像的对象边缘上输入的初始锚点和终点锚点;102:将输入图像转换为边缘图像;
103:根据边缘图像和预先设置的启发式评价函数提取算法,提取初始锚点和终点锚点之间的对象边缘。
其中,根据边缘图像和预先设置的启发式评价函数提取算法,提取初始锚点和终点锚点之间的对象边缘,具体包括
将边缘图像中包含的点标记为未到达点;
将边缘图像中的与初始锚点对应的点标记为已到达点,并将初始锚点存储在第一堆栈和第二堆栈中;
从第一堆栈中取出待计算点;判断待计算点是否是终点锚点;
当判断结果是待计算点不是终点锚点时,则统计待计算点的周围未到达点的数目;判断周围未到达点的数目是否大于0;
当判断结果是周围未到达点的数目大于0时,则计算所有周围未到达点的启发式评价函数值,得到所有周围未到达点的启发式评价函数值;
比较所有周围未到达点的启发式评价函数值之间的大小;
8将对应最小启发式评价函数值的周围未到达点存储在第二堆栈中,并标记对应最小启发 式评价函数值的周围未到达点为己到达点,并按照启发式评价函数值从大到小的顺序,将对 应启发式评价函数值的周围未到达点依次存储在第一堆栈中;
执行从第 一堆栈中取出待计算点步骤。
其中,上述启发式评价函数值具体为
其中,G的取值为待计算点与周围未到达点之间的颜色梯度差、//的取值为周围未到达 点与终点锚点之间的路径长度、77^M的取值为[5, 10]。
进一步地,当判断结果是周围未到达点的数目等于O时,还包括
将待计算点标记为不可达到点; 将待计算点从第二堆栈中删除; 执行从第一堆栈中取出待计算点步骤。
进一步地,当判断结果是待计算点是终点锚点时,还包括;
将终点锚点和第二堆栈中包含的点依次连接起来,提取到初始锚点和终点锚点之间的对 象边缘。
其中,将输入图像转换为边缘图像,具体包括 将输入图像转换为灰度图像; 对灰度像进行Canny变换,得到边缘图像。 进一步地,将输入图像转换为灰度图像之前,还包括-对输入图像进行高斯平滑处理。
本实施例所述的方法,运用启发式评价函数提取算法,计算在对象边缘上输入的两个锚 点之间的路径,可以精确地得到对象边缘的路径,提高了提取对象边缘的精确度;并且在对 象边缘上输入的两个锚点距离很远的情况下,也可以精确地得到对象边缘的路径,从而减少 了提取对象边缘的工作量;进一步地,本发明是基于边缘图像来提取对象边缘的,对象区域 内部的颜色变化对于提取对象边缘没有影响,在对象区域内部颜色变化丰富时也可以得到很 精确的结果;另外,与智能剪刀算法相比,提取对象边缘时需要的时间縮短了很多。
实施例2
本发明实施例提供了一种提取对象边缘的方法,参见图2,该方法包括 201:用户在输入图像上输入两个锚点,初始锚点A和终点锚点B。
其中,输入图像是需要从中提取对象边缘的图像;在输入图像上输入两个锚点,具体是在要提取的对象边缘上输入两个锚点,其中, 一个是初始锚点, 一个是终点锚点。
需要说明的是,实际应用中用户提取对象边缘时,会输入多个锚点,但是多个锚点之间
的对象边缘,也是通过两个锚点两个锚点地计算得到的,所以本发明实施例以得到两个锚点
之间的对象边缘为例进行详细描述。
202:接收到用户输入的两个锚点后,将输入图像转换为边缘图像。
需要说明的是,本发明实施例中将输入图像转换为边缘图像是通过Canny变换得到的, 将输入图像转换为边缘图像的具体过程如下将输入图像转换为灰度图像;将输入图像转换 为灰度图像后,对灰度像进行Canny变换,得到边缘图像。并且需要说明的是,将输入 图像转换为灰度图像之前,还可以先对输入图像进行高斯平滑处理;其中,对输入图像进行 高斯平滑处理,是为了消除噪声影响。
进一步,需要说明的是,实际应用中还可以通过其它方式将输入图像转换为边缘图像, 如对灰度像进行Sobel变换,再对Sobel变换后的图像进行截断处理,得到边缘图像;或 者利用其它的将输入图像转换为边缘图像的工具。
另外,需要说明的是,基于边缘图像来提取对象的边缘,对象区域内部的颜色变化不会 影响到提取对象边缘,使得在对象区域内部颜色变化丰富时也可以得到很精确的结果。
203:将输入图像转换为边缘图像后,将边缘图像中包含的点标记为未到达点。
需要说明的是,本发明实施例中,将边缘图像中的点分为分三种状态未到达、已到达
和不可到达,分别称为未到达点、已到达点和不可到达点;其中,未到达点是指处于初始 状态的、没有被处理过的点;已达到点是指可以作为初始锚点A和终点锚点B之间的边缘路 径的点,也就是说将多个已达到点连接起来得到的就是初始锚点A和终点锚点B之间的边缘; 不可到达点是指经过处理的,不可以作为初始锚点A和终点锚点B之间的边缘路径的点。本 发明实施例中将未到达点标记为O、将已到达点标记为K将不可到达点标记为-1,实际应用 中可以根据实际情况用不同的方法来表示这三种状态,如将未到达点标记为黑色,己到达点 标记为蓝色,不可到达点标记为红色。
204:将边缘图像中包含的点都标记为未到达点后,将边缘图像中的与初始锚点A对应 的点标记为己到达点,然后将初始锚点A存储到待计算堆栈和走步堆栈中。
其中,将边缘图像中的与初始锚点A对应的点标记为已到达点,也就是说将与初始锚点 A对应的点标记为1;待计算堆栈是在计算过程中用来存储需要计算的点的堆栈,并且本发 明实施例需要用到堆栈后进先出的特性;走步堆栈用来存储初始锚点A到终点锚点B之间的 边缘需要经过的点。205:从待计算堆栈中取出一个点C,判断点C是否是终点锚点B,如果是,则执行213;
否则,执行206。
需要说明的是,当第一次执行该步骤时,待计算堆栈中的点只有初始锚点A,从待计算
堆桟中取出的点C就是初始锚点A;但是在后续过程中会在待计算堆栈中存储好多点,当待
计算堆栈中存储好多点时,执行到该步骤时,是从待计算堆栈中取出存储在待计算堆栈中的 所有点中的最上面的点,也就是说取出的该点相对于待计算堆栈中的其它点来说是最后存储
进去的,为了便于描述将该点称为待计算点;本实施例中点C就是待计算点。
206:统计点C周围的点中未到达点的数目,判断未到达点的数目是否大于O,如果是,
则执行207;否则,执行212。
其中,点C周围的点是指点C的8个方向的点,统计点C周围的点中未到达点的数目,
本发明实施例中也就是统计点C周围的点中标记为0的点的数目。
207:计算点C与点C周围的点中每个未到达点之间的颜色梯度差。
为了便于描述,将点C周围的点中的未到达点称为点C的周围未到达点。计算颜色梯度
差,例如点C周围的点中存在一个未到达点D,点C与未到达点D之间的颜色梯度差为边
缘图像中点C的值与边缘图像中点D的值之差。
208:计算点C的每个周围未到达点与终点锚点B之间的路径长度。 计算点C周围的点中每个未到达点与终点锚点B之间的路径长度,例如点C周围的点
中存在 一 个未到达点D ,未到达点D与终点锚点B之间的路径长度
/ =扭-4)2+("厂5》2 ,其中A表示点D的x坐标、A表示点B的x坐标、A点D的
y坐标、^点B的y坐标。
209:根据启发式评价函数,计算点C的所有周围未到达点的启发式评价函数值。 其中,启发式评价函数为F=Thres/(G+l)+H, G是已经付出的代价函数、H是最优路
径的估计代价函数、Thres是对G和H的权重的一个衡量值;本实施例中G的取值为点C与
点C的周围未到达点之间的颜色梯度差、H的取值为点C的周围未到达点与终点锚点B之间
的路径长度、Thres的取值为[5, 10]。
210:比较点C的所有周围未到达点的启发式评价函数值之间的大小。
211:将对应最小启发式评价函数值的周围未到达点存储在走步堆栈中,并标记对应最小
启发式评价函数值的周围未到达点为已到达点,并按照启发式评价函数值从大到小的顺序,
将对应启发式评价函数值的周围未到达点依次存储在待计算堆栈中,然后执行205。
其中,按照启发式评价函数值从大到小的顺序,将对应启发式评价函数值的周围未到达点依次存储在待计算堆栈中,具体是将对应启发式评价函数值最大的周围未到达点先存储 在待计算堆栈中,然后再将对应启发式评价函数值第二最大的周围未到达点存储在待计算堆 栈中…最后将对应启发式评价函数值最小的周围未到达点存储在待计算堆栈中。
212:将点C标记为不可到达点,并将点C从走步堆栈中删除,然后执行205。 213:将终点锚点B和走步堆栈中包含的点依次连接起来,实现将初始锚点A和终点锚 点B之间的对象边缘提取出来。
需要说明的是存储在走步堆栈中的点也具有后进先出的特性,也就是说存储的顺序与
取出的顺序正好相反,将终点锚点B和走步堆栈中包含的点依次连接起来具体是,从终点锚 点B开始,将走步堆栈中的点取出,依次连接起来,反推到初始锚点A。
另外,需要说明的是,输入初始锚点A和终点锚点B后,瞬间就可以得到初始锚点A和 终点锚点B之间的对象边缘,与智能剪刀算法相比,提取对象边缘时需要的时间縮短了很多。
本实施例所述的方法,运用启发式评价函数提取算法,计算在对象边缘上输入的两个锚 点之间的路径,可以精确地得到对象边缘的路径,提高了提取对象边缘的精确度;并且在对 象边缘上输入的两个锚点距离很远的情况下,也可以精确地得到对象边缘的路径,从而减少 了提取对象边缘的工作量;进一步地,本发明是基于边缘图像来提取对象边缘的,对象区域 内部的颜色变化对于提取对象边缘没有影响,在对象区域内部颜色变化丰富时也可以得到很 精确的结果;另外,与智能剪刀算法相比,提取对象边缘时需要的时间縮短了很多。
实施例3
本发明实施例提供了一种提取对象边缘的装置,参见图3,该装置包括 接收模块301,用于接收在输入图像的对象边缘上输入的初始锚点和终点锚点; 转换模块302,用于在接收模块301接收到初始锚点和终点锚点后,将输入图像转换为 边缘图像;
提取模块303,用于在转换模块302将输入图像转换为边缘图像后,根据边缘图像和预 先设置的启发式评价函数提取算法,提取初始锚点和终点锚点之间的对象边缘。 其中,提取模块303具体包括
第一标记单元,用于在转换模块302将输入图像转换为边缘图像后,将边缘图像中包含 的点标记为未到达点;
第一处理单元,用于在第一标记单元将边缘图像中包含的点标记为未到达点后,将边缘 图像中的与初始锚点对应的点标记为已到达点,并将初始锚点存储在第一堆栈和第二堆栈中; 取出单元,用于在第一处理单元将初始锚点存储在第一堆栈和第二堆栈中后,从第一堆栈中取出待计算点;
第一判断单元,用于在取出单元取出待计算点后,判断待计算点是否是终点锚点; 统计单元,用于当第一判断单元的判断结果是待计算点不是终点锚点时,统计待计算点
的周围未到达点的数目;
第二判断单元,用于在统计单元统计到周围未到达点的数目后,判断周围未到达点的数
目是否大于0;
第一获取单元,用于当第二判断单元的判断结果是周围未到达点的数目大于O时,计算 所有周围未到达点的启发式评价函数值,得到所有周围未到达点的启发式评价函数值;
比较单元,用于在第一获取单元得到启发式评价函数值后,比较所有周围未到达点的启 发式评价函数值之间的大小;
第二处理单元,用于在比较单元比较了启发式评价函数值之间的大小后,将对应最小启 发式评价函数值的周围未到达点存储在第二堆栈中,并标记对应最小启发式评价函数值的周 围未到达点为第二状态,并按照启发式评价函数值从大到小的顺序,将对应启发式评价函数 值的周围未到达点依次存储在第一堆栈中;
第一通知单元,用于在第二处理单元将周围未到达点依次存储在第一堆栈中后,通知取 出单元从第一堆栈中取出待计算点。
进一步地,提取模块303还包括
第二标记单元,用于当第二判断单元的判断结果是周围未到达点的数目等于0时,将待 计算点标记为不可达到点;
删除单元,用于在第二标记单元将待计算点标记为不可达到点后,将待计算点从第二堆 栈中删除;
第二通知单元,用于在删除单元将待计算点从第二堆栈中删除后,通知取出单元从第一 堆栈中取出待计算点。
进一步地,提取模块303还包括
提取单元,用于当第一判断单元的判断结果是待计算点是终点锚点时,将终点锚点和第 二堆栈中包含的点依次连接起来,提取到初始锚点和终点锚点之间的对象边缘。 其中,转换模块302具体包括
转换单元,用于在接收模块301接收到初始锚点和终点锚点后,将输入图像转换为灰度 图像;
第二获取单元,用于在转换单元将输入图像转换为灰度图像后,对灰度像进行Canny
13变换,得到边缘图像。
进一步地,转换模块302还包括
第三处理单元,用于在接收模块301接收到初始锚点和终点锚点后,对输入图像进行高 斯平滑处理。
本实施例所述的装置,运用启发式评价函数提取算法,计算在对象边缘上输入的两个锚 点之间的路径,可以精确地得到对象边缘的路径,提高了提取对象边缘的精确度;并且在对 象边缘上输入的两个锚点距离很远的情况下,也可以精确地得到对象边缘的路径,从而减少 了提取对象边缘的工作量;进一步地,本发明是基于边缘图像来提取对象边缘的,对象区域 内部的颜色变化对于提取对象边缘没有影响,在对象区域内部颜色变化丰富时也可以得到很 精确的结果;另外,与智能剪刀算法相比,提取对象边缘时需要的时间縮短了很多。
以上实施例提供的技术方案中的全部或部分内容可以通过软件编程实现,其软件程序存 储在可读取的存储介质中,存储介质例如计算机中的硬盘、光盘或软盘。
以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之 内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
权利要求
1、一种提取对象边缘的方法,其特征在于,所述方法包括接收在输入图像的对象边缘上输入的初始锚点和终点锚点;将所述输入图像转换为边缘图像;根据所述边缘图像和预先设置的启发式评价函数提取算法,提取所述初始锚点和所述终点锚点之间的对象边缘。
2、根据权利要求1所述的提取对象边缘的方法,其特征在于,根据所述边缘图像和预先 设置的启发式评价函数提取算法,提取所述初始锚点和所述终点锚点之间的对象边缘,具体 包括-将所述边缘图像中包含的点标记为未到达点将所述边缘图像中的与所述初始锚点对应的点标记为已到达点,并将所述初始锚点存储 在第一堆栈和第二堆栈中;从所述第 一堆栈中取出待计算点; 判断所述待计算点是否是终点锚点;当判断结果是所述待计算点不是终点锚点时,则统计所述待计算点的周围未到达点的数目;判断所述周围未到达点的数目是否大于0;当判断结果是所述周围未到达点的数目大于0时,则计算所有所述周围未到达点的启发 式评价函数值,得到所有所述周围未到达点的启发式评价函数值; 比较所有所述周围未到达点的启发式评价函数值之间的大小;将对应最小所述启发式评价函数值的所述周围未到达点存储在第二堆栈中,并标记对应 最小所述启发式评价函数值的所述周围未到达点为已到达点,并按照所述启发式评价函数值 从大到小的顺序,将对应所述启发式评价函数值的所述周围未到达点依次存储在第一堆栈中执行所述从所述第一堆栈中取出待计算点步骤。
3、根据权利要求2所述的提取对象边缘的方法,其特征在于,所述启发式评价函数值具 体为G + l其中,G的取值为所述待计算点与所述周围未到达点之间的颜色梯度差、Z/的取值为所 述周围未到达点与所述终点锚点之间的路径长度、J77my的取值为[5, 10]。
4、 根据权利要求3所述的提取对象边缘的方法,其特征在于,当判断结果是所述周围未 到达点的数目等于0时,还包括将所述待计算点标记为不可达到点; 将所述待计算点从所述第二堆栈中删除; 执行所述从所述第 一堆栈中取出待计算点步骤。
5、 根据权利要求4所述的提取对象边缘的方法,其特征在于,当判断结果是所述待计算 点是终点锚点时,还包括;将所述终点锚点和所述第二堆栈中包含的点依次连接起来,提取到所述初始锚点和所述 终点锚点之间的对象边缘。
6、 根据权利要求l-5任意一项权利要求所述的提取对象边缘的方法,其特征在于,将所 述输入图像转换为边缘图像,具体包括将所述输入图像转换为灰度图像;对所述灰度像进行Canny变换,得到所述边缘图像。
7、 根据权利要求6所述的提取对象边缘的方法,其特征在于,将所述输入图像转换为灰 度图像之前,还包括对所述输入图像进行高斯平滑处理。
8、 一种提取对象边缘的装置,其特征在于,所述装置包括接收模块,用于接收在输入图像的对象边缘上输入的初始锚点和终点锚点; 转换模块,用于在所述接收模块接收到所述初始锚点和所述终点锚点后,将所述输入图 像转换为边缘图像;提取模块,用于在所述转换模块将所述输入图像转换为边缘图像后,根据所述边缘图像 和预先设置的启发式评价函数提取算法,提取所述初始锚点和所述终点锚点之间的对象边缘。
9、 根据权利要求8所述的提取对象边缘的装置,其特征在于,所述提取模块具体包括 第一标记单元,用于在所述转换模块将所述输入图像转换为边缘图像后,将所述边缘图像中包含的点标记为未到达点;第一处理单元,用于在所述第一标记单元将所述边缘图像中包含的点标记为未到达点后, 将所述边缘图像中的与所述初始锚点对应的点标记为已到达点,并将所述初始锚点存储在第 一堆栈和第二堆栈中;取出单元,用于在所述第一处理单元将所述初始锚点存储在第一堆栈和第二堆栈中后,从所述第一堆栈中取出待计算点;第一判断单元,用于在所述取出单元取出所述待计算点后,判断所述待计算点是否是终点锚点;统计单元,用于当所述第一判断单元的判断结果是所述待计算点不是终点锚点时,统计 所述待计算点的周围未到达点的数目;第二判断单元,用于在所述统计单元统计到所述周围未到达点的数目后,判断所述周围 未到达点的数目是否大于0;第一获取单元,用于当所述第二判断单元的判断结果是所述周围未到达点的数目大于0 时,计算所有所述周围未到达点的启发式评价函数值,得到所有所述周围未到达点的启发式 评价函数值;比较单元,用于在所述第一获取单元得到所述启发式评价函数值后,比较所有所述周围 未到达点的启发式评价函数值之间的大小;第二处理单元,用于在所述比较单元比较了所述启发式评价函数值之间的大小后,将对应最小所述启发式评价函数值的所述周围未到达点存储在第二堆栈中,并标记对应最小所述 启发式评价函数值的所述周围未到达点为第二状态,并按照所述启发式评价函数值从大到小 的顺序,将对应所述启发式评价函数值的所述周围未到达点依次存储在第一堆栈中;第一通知单元,用于在所述第二处理单元将所述周围未到达点依次存储在第一堆栈中后,通知所述取出单元从所述第一堆栈中取出待计算点。
10、 根据权利要求9所述的提取对象边缘的装置,其特征在于,所述提取模块还包括 第二标记单元,用于当所述第二判断单元的判断结果是所述周围未到达点的数目等于0时,将所述待计算点标记为不可达到点;删除单元,用于在所述第二标记单元将所述待计算点标记为不可达到点后,将所述待计算点从所述第二堆栈中删除;第二通知单元,用于在所述删除单元将所述待计算点从第二堆栈中删除后,通知所述取出单元从所述第一堆栈中取出待计算点。
11、 根据权利要求10所述的提取对象边缘的装置,其特征在于,所述提取模块还包括提取单元,用于当所述第一判断单元的判断结果是所述待计算点是终点锚点时,将所述终点锚点和所述第二堆栈中包含的点依次连接起来,提取到所述初始锚点和所述终点锚点之间的对象边缘。
12、 根据权利要求8-ll任意一项权利要求所述的提取对象边缘的方法,其特征在于,所述转换模块具体包括转换单元,用于在所述接收模块接收到所述初始锚点和所述终点锚点后,将所述输入图像转换为灰度图像;第二获取单元,用于在所述转换单元将所述输入图像转换为灰度图像后,对所述灰度像进行Canny变换,得到所述边缘图像。
13、 根据权利要求12所述的提取对象边缘的方法,其特征在于,所述转换模块还包括第三处理单元,用于在所述接收模块接收到所述初始锚点和所述终点锚点后,对所述输入图像进行高斯平滑处理。
全文摘要
本发明公开了一种提取对象边缘的方法和装置,属于计算机图像处理领域。所述方法包括接收在输入图像的对象边缘上输入的初始锚点和终点锚点;将所述输入图像转换为边缘图像;根据所述边缘图像和预先设置的启发式评价函数提取算法,提取所述初始锚点和所述终点锚点之间的对象边缘。所述装置包括接收模块、转换模块和提取模块。本发明运用启发式评价函数提取算法,计算在对象边缘上输入的两个锚点之间的路径,可以精确地得到对象边缘的路径,提高了提取对象边缘的精确度;并且在对象边缘上输入的两个锚点距离很远的情况下,也可以精确地得到对象边缘的路径,从而减少了提取对象边缘的工作量。
文档编号G06T7/00GK101477688SQ20091007611
公开日2009年7月8日 申请日期2009年1月8日 优先权日2009年1月8日
发明者刘晓冬, 汛 曹, 谢旭东, 岳 邓, 政 黎 申请人:清华大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1