一种虚拟棋盘格角点定位方法技术

技术编号:13899902 阅读:88 留言:0更新日期:2016-10-25 13:54
本发明专利技术提供一种虚拟棋盘格角点定位方法,提高了角点定位的准确性和鲁棒性,采用几何方法获得了屏幕四个边界的直线,解决了四个边界处角点难以定位的问题。并且,每次只投射一条直线,不会出现找错直线的问题;主动投射的直线是一条由黑白区域形成的直线边界,而不是直接投射某种宽度的直线,保证了所表示直线的位置精确性,也不容易边缘点被低分辨图像采集漏掉;对于上下左右的直线定位,采用了两点确定一条直线、图像的仿射变换,对难以通过直接投射直线的方法定位屏幕边直线的问题,采用了几何原理通过理论计算来获得。本发明专利技术提供一种虚拟棋盘格角点定位方法,提高了角点定位的准确性和鲁棒性,采用几何方法获得了屏幕四个边界的直线,解决了四个边界处角点难以定位的问题。

【技术实现步骤摘要】

本专利技术涉及人机交互领域,尤其涉及一种虚拟棋盘格角点定位方法
技术介绍
在人机交互的图像传感器采集的图像中,对屏幕进行标定时主要是通过检测棋盘格角点进行可操作的屏幕区进行标定。目前常用的角点定位方法有,人通过点触屏幕上提示的角点位置,使摄像头对人触控的点的位置进行标定。然而,使用上述的标定方法容易受到局部干扰的影响,造成角点检测失败或者偏差过大,特别是边界处角点更难以检测。
技术实现思路
为了解决上述问题,本专利技术提供一种虚拟棋盘格角点定位方法,提高了角点定位的准确性和鲁棒性,采用几何方法获得了屏幕四个边界的直线,解决了四个边界处角点难以定位的问题。一种虚拟棋盘格角点定位方法,包括:S1:矫正摄像头;S2:固定上述摄像头并且通过上述摄像头获取屏幕的整体图像;S3:设置上述棋盘格的有m行和n列;S4:在上述屏幕上投射全黑信息,通过上述摄像头获取第1图像;S5:在上述屏幕上投射全白信息,通过上述摄像头获取第2图像;S6:通过从上述第1图像减去上述第2图像,获得上述屏幕的二值图;S7:在上述屏幕上投射以屏幕的第一对角线为准,上部为白色下部为黑色的信息,通过上述摄像头获取第3图像;S8:在上述屏幕上投射以屏幕的第一对角线为准,上部为黑色下部为白色的信息,通过上述摄像头获取第4图像;S9:根据第3图像和第4图像获得第一对角线上的点,由这些点确定第一对角线方程;S10:在上述屏幕上投射以屏幕的第二对角线为准,上部为白色下部为黑色的信息,通过上述摄像头获取第5图像;S11:在上述屏幕上投射以屏幕的第二对角线为准,上部为黑色下部为白色的信息,通过上述摄像头获取第6图像;S12:根据第5图像和第6图像获得第二对角线上的点,由这些点确定第二对角线方程;S13:在上述屏幕上投射出长度与屏幕长度相同、高度为i个棋盘格高度的矩形黑色信息,剩于矩形区域投射白色信息,通过上述摄像头获取正向图像,1≤i≤m-1;S14:在上述屏幕上投射出长度与屏幕长度相同、高度为m-i个棋盘格高度的矩形白色信息,剩于矩形区域投射黑色信息,通过上述摄像头获取负向图像,1≤i≤m-1;S15:根据正向图像和负向图像获得第i行横线上的点,由这些点确定第i行横线方程,1≤i≤m-1;S16:重复S13-S15,直到获得m-1条横线方程; S17:在上述屏幕上投射出长度与屏幕高度相同、宽度为j个棋盘格宽度的矩形黑色信息,剩于矩形区域投射白色信息,通过上述摄像头获取正向图像,1≤j≤n-1;S18:在上述屏幕上投射出长度与屏幕高度相同、宽度为n-j个棋盘格宽度的矩形白色信息,剩于矩形区域投射黑色信息,通过上述摄像头获取负向图像,1≤j≤n-1;S19:根据正向图像和负向图像获得第j列竖线上的点,由这些点确定第j列竖线方程,1≤j≤n-1;S20:重复S17-S19,直到获得n-1条竖线方程; S21:由步骤S15得到的m-1条横线与步骤S18得到的n-1条竖线形成网格状图像;S22:在上述网格状图像中,在第1行横线与第2行横线之间任意选取第一四边形和第二四边形,各自连 接对角线上的两个点,并且分别求出经过上述两个点的第一直线和第二直线方程;S23:选择位于上述第1行横线之上的,并且上述第一直线、上述第二直线与上述竖线的两个交点,求出经过上述两个交点的直线方程,得出上述屏幕的第一边界线;S24:在上述网格状图像中,在第m-1行横线与第m-2行横线之间任意选取第三四边形和第四四边形,各自连接对角线上的两个点,并且分别求出经过上述两个点的第三直线和第四直线方程;S25:选择位于上述第i行横线之下的,并且上述第三直线、上述第四直线与上述竖线的两个交点,求出经过上述两个交点的直线方程,得出上述屏幕的第二边界线;S26:在上述网格状图像中,在第1列竖线与第2列竖线之间任意选取第五四边形和第六四边形,各自连接对角线上的两个点,并且分别求出经过上述两个点的第五直线和第六直线方程;S27:选择位于上述第1列竖线之前的,并且上述第五直线、上述第六直线与上述横线的两个交点,求出经过上述两个交点的直线方程,得出上述屏幕的第三边界线;S28:在上述网格状图像中,在第n-1列竖线与第n-2列竖线之间任意选取第七四边形和第八四边形,各自连接对角线上的两个点,并且分别求出经过上述两个点的第七直线和第八直线方程;S29:选择位于上述第n-1列竖线之后的,并且上述第七直线、上述第八直线与上述横线的两个交点,求出经过上述两个交点的直线方程,得出上述屏幕的第四边界线;S30:最后得出由m+1条横线与n+1条竖线交叉形成的棋盘图以及角点图像,实现m行n列棋盘格角点定位。另一种虚拟棋盘格角点定位方法,包括:S1:矫正摄像头;S2:固定上述摄像头并且通过上述摄像头获取屏幕的整体图像;S3:设置上述棋盘格的有m行和n列;S4:在上述屏幕上投射全黑信息,通过上述摄像头获取第1图像;S5:在上述屏幕上投射全白信息,通过上述摄像头获取第2图像;S6:通过从上述第1图像减去上述第2图像,获得上述屏幕的二值图;S7:在上述屏幕上投射以屏幕的第一对角线为准,上部为白色下部为黑色的信息,通过上述摄像头获取第3图像;S8:在上述屏幕上投射以屏幕的第一对角线为准,上部为黑色下部为白色的信息,通过上述摄像头获取第4图像;S9:根据第3图像和第4图像获得第一对角线上的点,由这些点确定第一对角线方程;S10:在上述屏幕上投射以屏幕的第二对角线为准,上部为白色下部为黑色的信息,通过上述摄像头获取第5图像;S11:在上述屏幕上投射以屏幕的第二对角线为准,上部为黑色下部为白色的信息,通过上述摄像头获取第6图像;S12:根据第5图像和第6图像获得第二对角线上的点,由这些点确定第二对角线方程;S13:在上述屏幕上投射出长度与屏幕长度相同、高度为i个棋盘格高度的矩形黑色信息,剩于矩形区域投射白色信息,通过上述摄像头获取正向图像,1≤i≤m-1;S14:在上述屏幕上投射出长度与屏幕长度相同、高度为m-i个棋盘格高度的矩形白色信息,剩于矩形区域投射黑色信息,通过上述摄像头获取负向图像,1≤i≤m-1;S15:根据正向图像和负向图像获得第i行横线上的点,由这些点确定第i行横线方程,1≤i≤m-1;S16:重复S13-S15,直到获得m-1条横线方程; S17:在上述屏幕上投射出长度与屏幕高度相同、宽度为j个棋盘格宽度的矩形黑色信息,剩于矩形区域投射白色信息,通过上述摄像头获取正向图像,1≤j≤n-1;S18:在上述屏幕上投射出长度与屏幕高度相同、宽度为n-j个棋盘格宽度的矩形白色信息,剩于矩形区域投射黑色信息,通过上述摄像头获取负向图像,1≤j≤n-1;S19:根据正向图像和负向图像获得第j列竖线上的点,由这些点确定第j列竖线方程,1≤j≤n-1;S20:重复S17-S19,直到获得n-1条竖线方程; S21:由步骤S15得到的m-1条横线与步骤S18得到的n-1条竖线形成网格状图像;S22:在上述网格状图像中,在第1行横线与第2行横线之间任意选取第一四边形和第二四边形,各自连接对角线上的两个点,并且分别求出经过上述两个点的第一直线和第二直线方程;S23:选择位于上述第1行横线之上的,并且上述第一直线、上述第二直线与上述竖线的两个交点,求本文档来自技高网...
一种虚拟棋盘格角点定位方法

【技术保护点】
一种虚拟棋盘格角点定位方法,其特征在于,包括:S1:矫正摄像头;S2:固定所述摄像头并且通过所述摄像头获取屏幕的整体图像;S3:设置所述棋盘格的有m行和n列;S4:在所述屏幕上投射全黑信息,通过所述摄像头获取第1图像;S5:在所述屏幕上投射全白信息,通过所述摄像头获取第2图像;S6:通过从所述第1图像减去所述第2图像,获得所述屏幕的二值图;S7:在所述屏幕上投射以屏幕的第一对角线为准,上部为白色下部为黑色的信息,通过所述摄像头获取第3图像;S8:在所述屏幕上投射以屏幕的第一对角线为准,上部为黑色下部为白色的信息,通过所述摄像头获取第4图像;S9:根据第3图像和第4图像获得第一对角线上的点,由这些点确定第一对角线方程;S10:在所述屏幕上投射以屏幕的第二对角线为准,上部为白色下部为黑色的信息,通过所述摄像头获取第5图像;S11:在所述屏幕上投射以屏幕的第二对角线为准,上部为黑色下部为白色的信息,通过所述摄像头获取第6图像;S12:根据第5图像和第6图像获得第二对角线上的点,由这些点确定第二对角线方程;S13:在所述屏幕上投射出长度与屏幕长度相同、高度为i个棋盘格高度的矩形黑色信息,剩于矩形区域投射白色信息,通过所述摄像头获取正向图像,1≤i≤m‑1;S14:在所述屏幕上投射出长度与屏幕长度相同、高度为m‑i个棋盘格高度的矩形白色信息,剩于矩形区域投射黑色信息,通过所述摄像头获取负向图像,1≤i≤m‑1;S15:根据正向图像和负向图像获得第i行横线上的点,由这些点确定第i行横线方程,1≤i≤m‑1;S16:重复S13‑S15,直到获得m‑1条横线方程;S17:在所述屏幕上投射出长度与屏幕高度相同、宽度为j个棋盘格宽度的矩形黑色信息,剩于矩形区域投射白色信息,通过所述摄像头获取第正向图像,1≤j≤n‑1;S18:在所述屏幕上投射出长度与屏幕高度相同、宽度为n‑j个棋盘格宽度的矩形白色信息,剩于矩形区域投射黑色信息,通过所述摄像头获取第负向图像,1≤j≤n‑1;S19:根据正向图像和负向图像获得第j列竖线上的点,由这些点确定第j列竖线方程,1≤j≤n‑1;S20:重复S17‑S19,直到获得n‑1条竖线方程;S21:由步骤S15得到的m‑1条横线与步骤S18得到的n‑1条竖线形成网格状图像;S22:在所述网格状图像中,在第1行横线与第2行横线之间任意选取第一四边形和第二四边形,各自连接对角线上的两个点,并且分别求出经过所述两个点的第一直线和第二直线方程;S23:选择位于所述第1行横线之上的,并且所述第一直线、所述第二直线与所述竖线的两个交点,求出经过所述两个交点的直线方程,得出所述屏幕的第一边界线;S24:在所述网格状图像中,在第m‑1行横线与第m‑2行横线之间任意选取第三四边形和第四四边形,各自连接对角线上的两个点,并且分别求出经过所述两个点的第三直线和第四直线方程;S25:选择位于所述第i行横线之下的,并且所述第三直线、所述第四直线与所述竖线的两个交点,求出经过所述两个交点的直线方程,得出所述屏幕的第二边界线;S26:在所述网格状图像中,在第1列竖线与第2列竖线之间任意选取第五四边形和第六四边形,各自连接对角线上的两个点,并且分别求出经过所述两个点的第五直线和第六直线方程;S27:选择位于所述第1列竖线之前的,并且所述第五直线、所述第六直线与所述横线的两个交点,求出经过所述两个交点的直线方程,得出所述屏幕的第三边界线;S28:在所述网格状图像中,在第n‑1列竖线与第n‑2列竖线之间任意选取第七四边形和第八四边形,各自连接对角线上的两个点,并且分别求出经过所述两个点的第七直线和第八直线方程;S29:选择位于所述第n‑1列竖线之后的,并且所述第七直线、所述第八直线与所述横线的两个交点,求出经过所述两个交点的直线方程,得出所述屏幕的第四边界线;S30:最后得出由m+1条横线与n+1条竖线交叉形成的棋盘图以及角点图像,实现m行n列棋盘格角点定 位。...

【技术特征摘要】
1.一种虚拟棋盘格角点定位方法,其特征在于,包括:S1:矫正摄像头;S2:固定所述摄像头并且通过所述摄像头获取屏幕的整体图像;S3:设置所述棋盘格的有m行和n列;S4:在所述屏幕上投射全黑信息,通过所述摄像头获取第1图像;S5:在所述屏幕上投射全白信息,通过所述摄像头获取第2图像;S6:通过从所述第1图像减去所述第2图像,获得所述屏幕的二值图;S7:在所述屏幕上投射以屏幕的第一对角线为准,上部为白色下部为黑色的信息,通过所述摄像头获取第3图像;S8:在所述屏幕上投射以屏幕的第一对角线为准,上部为黑色下部为白色的信息,通过所述摄像头获取第4图像;S9:根据第3图像和第4图像获得第一对角线上的点,由这些点确定第一对角线方程;S10:在所述屏幕上投射以屏幕的第二对角线为准,上部为白色下部为黑色的信息,通过所述摄像头获取第5图像;S11:在所述屏幕上投射以屏幕的第二对角线为准,上部为黑色下部为白色的信息,通过所述摄像头获取第6图像;S12:根据第5图像和第6图像获得第二对角线上的点,由这些点确定第二对角线方程;S13:在所述屏幕上投射出长度与屏幕长度相同、高度为i个棋盘格高度的矩形黑色信息,剩于矩形区域投射白色信息,通过所述摄像头获取正向图像,1≤i≤m-1;S14:在所述屏幕上投射出长度与屏幕长度相同、高度为m-i个棋盘格高度的矩形白色信息,剩于矩形区域投射黑色信息,通过所述摄像头获取负向图像,1≤i≤m-1;S15:根据正向图像和负向图像获得第i行横线上的点,由这些点确定第i行横线方程,1≤i≤m-1;S16:重复S13-S15,直到获得m-1条横线方程;S17:在所述屏幕上投射出长度与屏幕高度相同、宽度为j个棋盘格宽度的矩形黑色信息,剩于矩形区域投射白色信息,通过所述摄像头获取第正向图像,1≤j≤n-1;S18:在所述屏幕上投射出长度与屏幕高度相同、宽度为n-j个棋盘格宽度的矩形白色信息,剩于矩形区域投射黑色信息,通过所述摄像头获取第负向图像,1≤j≤n-1;S19:根据正向图像和负向图像获得第j列竖线上的点,由这些点确定第j列竖线方程,1≤j≤n-1;S20:重复S17-S19,直到获得n-1条竖线方程;S21:由步骤S15得到的m-1条横线与步骤S18得到的n-1条竖线形成网格状图像;S22:在所述网格状图像中,在第1行横线与第2行横线之间任意选取第一四边形和第二四边形,各自连接对角线上的两个点,并且分别求出经过所述两个点的第一直线和第二直线方程;S23:选择位于所述第1行横线之上的,并且所述第一直线、所述第二直线与所述竖线的两个交点,求出经过所述两个交点的直线方程,得出所述屏幕的第一边界线;S24:在所述网格状图像中,在第m-1行横线与第m-2行横线之间任意选取第三四边形和第四四边形,各自连接对角线上的两个点,并且分别求出经过所述两个点的第三直线和第四直线方程;S25:选择位于所述第i行横线之下的,并且所述第三直线、所述第四直线与所述竖线的两个交点,求出经过所述两个交点的直线方程,得出所述屏幕的第二边界线;S26:在所述网格状图像中,在第1列竖线与第2列竖线之间任意选取第五四边形和第六四边形,各自连接对角线上的两个点,并且分别求出经过所述两个点的第五直线和第六直线方程;S27:选择位于所述第1列竖线之前的,并且所述第五直线、所述第六直线与所述横线的两个交点,求出经过所述两个交点的直线方程,得出所述屏幕的第三边界线;S28:在所述网格状图像中,在第n-1列竖线与第n-2列竖线之间任意选取第七四边形和第八四边形,各自连接对角线上的两个点,并且分别求出经过所述两个点的第七直线和第八直线方程;S29:选择位于所述第n-1列竖线之后的,并且所述第七直线、所述第八直线与所述横线的两个交点,求出经过所述两个交点的直线方...

【专利技术属性】
技术研发人员:田启川谭登峰杜响红
申请(专利权)人:北京仁光科技有限公司
类型:发明
国别省市:北京;11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1