判断单点是否在封闭区域内的快捷判别方法与流程

文档序号:20707983发布日期:2020-05-12 16:43阅读:995来源:国知局
判断单点是否在封闭区域内的快捷判别方法与流程

本发明涉及一种判断单点是否在封闭区域内的快捷判别方法,属于计算机图像处理领域。



背景技术:

对于移动机器人,需要判断当前位置是否在指定的封闭区域内。比如,割草机器人判断自己是否处在草坪区域,是否超出工作区域。这个问题可以抽象为单点与封闭区域的相互关系。目前常采用射线法,具体为求解从该点发出的射线与多边形各边的交点,当交点数为奇数,则在内部,否则就在外部。这种方法用画图法来求解非常直观有效。但是在在计算机系统内,封闭区域是以边界上的离散点的形式来表述的,离散点之间存在长短不一的间隙,这种情况下计算射线与离散点集之间的交点就很复杂,不利于计算机实现。



技术实现要素:

本发明的目的是为了克服现有技术中的不足之处,提出一种判断单点是否在封闭区域内的快捷判别方法,采用单点到边界点的向量在圆周上的角度分布进行判别,算法简单有效,易于计算机实现。

本发明解决其技术问题所采用的技术方案是:

判断单点是否在封闭区域内的快捷判别方法,包括单点p(x,y),以及由一组边界点a={(x1,y1),(x2,y2),(x3,y3)…..(xi,yi)….}组成的封闭区域,所述的快捷判别方法包括以下步骤:

(1)计算单点p到边界点(xi,yi)的向量i的角度

(2)搜索向量i所在角度范围[-k,+k]是否存在的向量j,其中,k为阈值范围;

(3)如果不存在满足步骤(2)的向量j,则单点p在封闭区域内;否则,单点p不在封闭区域内。

实施本发明的积极效果是:1、采用单点到边界点的向量在圆周上的角度分布进行判断,计算量小,易于计算机实现;2、随着边界点个数的增加,判据的准确度大大提高。

附图说明

图1是点位于封闭区域内部的情况;

图2是点位于封闭区域外部的情况。

具体实施方式

现结合附图对本发明作进一步说明:

参照图1-2,判断单点是否在封闭区域内的快捷判别方法,包括单点p(x,y),以及由一组边界点a={(x1,y1),(x2,y2),(x3,y3)…..(xi,yi)….}组成的封闭区域。点p(x,y)为任意点,边界点a为封闭区域的边界点组成的数组。

所述的快捷判别方法包括以下步骤:

(1)计算单点p到边界点(xi,yi)的向量i的角度

点到点的向量角度代表这个向量的方向。

(2)搜索向量i所在角度范围[-k,+k]是否存在的向量j,其中,k为阈值范围;

(3)如果不存在满足步骤(2)的向量j,则单点p在封闭区域内;否则,单点p不在封闭区域内。

那么总可以找到一个边界点,从这个边界点引出的向量,单次穿过封闭区域的边界,没有其他相交点,因此会满足步骤(2);相反,如果点p处于封闭区域的外部,从点p到边界点的向量会多次穿过封闭区域的边界,因此找不到满足步骤(2)的点。



技术特征:

1.判断单点是否在封闭区域内的快捷判别方法,包括单点p(x,y),以及由一组边界点a={(x1,y1),(x2,y2),(x3,y3)…..(xi,yi)….}组成的封闭区域,其特征在于:所述的快捷判别方法包括以下步骤:

(1)计算单点p到边界点(xi,yi)的向量i的角度

(2)搜索向量i所在角度范围[-k,+k]是否存在的向量j,其中,k为阈值范围;

(3)如果不存在满足步骤(2)的向量j,则单点p在封闭区域内;否则,单点p不在封闭区域内。


技术总结
本发明公开一种判断单点是否在封闭区域内的快捷判别方法,包括单点 P(x,y),以及由一组边界点A={(x1,y1),(x2,y2) ,(x3,y3)…..(xi,yi)….}组成的封闭区域,所述的快捷判别方法包括以下步骤:计算单点 P到边界点的向量i的角度;搜索向量i所在角度范围[θi‑k,θi+k]是否存在向量j;如果不存在满足步骤(2)的向量j,则单点 P在封闭区域内;否则,单点 P不在封闭区域内。该方案算法简单,运算速度快,可用于快速判断一个位置是否在指定封闭区域内。

技术研发人员:刘瑜
受保护的技术使用者:杭州晶一智能科技有限公司
技术研发日:2019.11.18
技术公布日:2020.05.12
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1