买专利卖专利找龙图腾,真高效! 查专利查商标用IPTOP,全免费!专利年费监控用IP管家,真方便!
摘要:本发明公开了一种基于霍夫变换的五子连珠判断方法,通过于棋盘上建立X‑Y坐标系;依于棋盘上放置棋子的顺序,判断棋子的颜色;X‑Y坐标系内,将该棋子所在的斜率为1、斜率为‑1、平行于X轴、垂直于X轴的四条直线上的棋子的坐标进行霍夫变换,对应霍夫参数空间中的一条直线;在霍夫参数空间中,检测是否存在一个点有大于等于5条直线穿过;于X‑Y坐标系中,判断该点对应的直线上,各棋子的横坐标或纵坐标是否为连续等差变化;若是则成五子连珠。该方法相对于遍历整个15*15网格的棋盘,减少了工作量,大大减少了时间成本,提高运行效率;并且具有较高的可行性,可通过C语言或者MATLAB实现,其应用广泛,具有很强的实用性。
主权项:1.一种基于霍夫变换的五子连珠判断方法,其特征在于,包括如下步骤:S1:以棋盘的横纵线为X、Y轴,棋格为单元,建立X‑Y坐标系;S2:依于棋盘上放置棋子的顺序,依次判断棋子的颜色;S3:X‑Y坐标系内,将该棋子所在的斜率为1、斜率为‑1、平行于X轴、垂直于X轴的四条直线上的棋子的坐标进行霍夫变换,对应霍夫参数空间中的一条直线;S4:在霍夫参数空间中,检测是否存在一个点有大于等于5条直线穿过;若有,则转入步骤S5;若无,则重复步骤S2‑S3;S5:在X‑Y坐标系中,判断该点对应的直线上,各棋子的横坐标或纵坐标是否为连续等差变化;若是,则成五子连珠;若否,则重复步骤S2‑S4。
全文数据:一种基于霍夫变换的五子连珠判断方法技术领域本发明涉及一种判断方法,具体涉及一种基于霍夫变换的五子连珠判断方法。背景技术五子棋是世界智力运动会竞技项目之一,是一种两人对弈的纯策略型棋类游戏,通常双方分别使用黑白两色的棋子,下在棋盘直线与横线的交叉点上,先形成5子连线者获胜。棋盘由横纵各15条等距离,垂直交叉的平行线构成,在棋盘上,横纵线交叉形成了225个交叉点为对弈时的落子点。伴随着互联网的快速发展,五子棋也被改写成电子游戏,《五子棋》是"棋牌"类游戏的一个flash小游戏,flash小游戏是一种通过Flash软件和Flash编程语言FlashActionScript制作而成的SWF格式小游戏。但是,现在五子棋电子游戏中判断五子连珠一般采用遍历棋盘的方法,繁琐且浪费时间。发明内容为解决现有技术的不足,本发明的目的在于提供一种有效减少工作量,提高判断效率的基于霍夫变换的五子连珠判断方法。为了实现上述目标,本发明采用如下的技术方案:一种基于霍夫变换的五子连珠判断方法,包括如下步骤:S1:以棋盘的横纵线为X、Y轴,棋格为单元,建立X-Y坐标系;S2:依于棋盘上放置棋子的顺序,依次判断棋子的颜色;S3:X-Y坐标系内,将该棋子所在的斜率为1、斜率为-1、平行于X轴、垂直于X轴的四条直线上的棋子的坐标进行霍夫变换,对应霍夫参数空间中的一条直线;S4:在霍夫参数空间中,检测是否存在一个点有大于等于5条直线穿过;若有,则转入步骤S5;若无,则重复步骤S2-S3;S5:在X-Y坐标系中,判断该点对应的直线上,各棋子的横坐标或纵坐标是否为连续等差变化;若是,则成五子连珠;若否,则重复步骤S2-S4。上述步骤S3中的霍夫变换,在X-Y坐标系中,四种直线的成线方程为ax+by+c=0,各棋子的坐标转变到霍夫参数空间的a-b-c坐标系中,成线方程的表达式为:xa+yb+c=0。上述步骤S3中转换到霍夫参数空间的棋子,为以放置的棋子为中心,于9*9的网格范围内,且该棋子颜色相同的棋子。上述步骤S2中,棋子的颜色包括黑色、白色。上述的一种基于霍夫变换的五子连珠判断方法,应用于五子棋电子游戏中。本发明的有益之处在于:本发明的一种基于霍夫变换的五子连珠判断方法,通过霍夫变换将X-Y坐标系中的9*9网格内的点转换到a-b-c坐标系中,通过判断穿过同一点的直线数量判断是否棋盘内是否有五子成线,相对于遍历整个15*15网格的棋盘,减少了工作量,大大减少了时间成本,提高运行效率;并且,本发明具有较高的可行性,可以通过C语言或者MATLAB实现,其应用广泛,尤其可应用于同五子棋类似的棋类游戏中,有效地提高棋类电子游戏的运行速度,具有很强的实用性。附图说明图1为本发明的建立X-Y坐标系的示意图。图2为本发明的霍夫变换的示意图。图3为本发明的实施例的判断五子连珠的流程示意图。具体实施方式以下结合附图和具体实施例对本发明作具体的介绍。如图3所示,为本发明的一种基于霍夫变换的五子连珠判断方法应用于五子棋类游戏的判断流程图,包括以下步骤:S1、以棋盘上纵横的网格为横纵坐标,以棋格为单元,在棋盘上建立起一个平面直角坐标系(X-Y坐标系),确保每一个棋子都有唯一且确定的坐标。S2、每当棋盘上放置一颗棋子时,首先判断棋子的颜色,则该颗棋子将有如附图1所示的四种可能成线方式,即斜率为1,斜率为-1,平行于X轴和垂直于X轴的四条直线,这四条直线可以通过用直线的一般式表示为:ax+by+c=0。S3、最后放置的一颗棋子决定了是否能够取胜,而能够与最后放置的棋子形成五子连珠的剩余四颗棋子,它们只可能放置在以最后放置的棋子为中心的9*9的网格棋盘内,如附图1所示。每放置一颗棋子,都将此范围内,四条可能成线的直线上的与放置棋子颜色相同的棋子通过霍夫变换,转变到a-b-c坐标系中,表达式为:xa+yb+c=0;实现X-Y坐标系转换到a-b-c坐标系,则X-Y坐标系中的一个棋子坐标点对应a-b-c坐标系坐标系的一条直线,霍夫空间变换如附图2所示。S3、如附图2所示,在a-b-c坐标系中,检测是否存在一个点,同时被5条或5条以上的直线所穿过。具体操作为:a-b-c坐标系中,存在很多由直线相交而成的点,每多一条直线时,对应相交产生的该参数点的value值加1,当value≥5时,表示穿过该点的直线大于等于5条,即X-Y坐标系中,原直线上有大于等于5颗的同色棋子出现,此时判断标志位flag置1。接下来,将a-b-c坐标系中穿过该点的几条直线对应的X-Y坐标系中的点的横坐标或者纵坐标提取出来,对这些点的横坐标或者纵坐标进行排序,判断坐标值是否为连续等差递增,如果是连续等差递增,则表明有5子连续,放置该棋子的选手获得胜利,游戏结束,否则,将flag清零,由对手放置下一颗棋子,游戏继续进行,直至一方获胜。以上显示和描述了本发明的基本原理、主要特征和优点。本行业的技术人员应该了解,上述实施例不以任何形式限制本发明,凡采用等同替换或等效变换的方式所获得的技术方案,均落在本发明的保护范围内。
权利要求:1.一种基于霍夫变换的五子连珠判断方法,其特征在于,包括如下步骤:S1:以棋盘的横纵线为X、Y轴,棋格为单元,建立X-Y坐标系;S2:依于棋盘上放置棋子的顺序,依次判断棋子的颜色;S3:X-Y坐标系内,将该棋子所在的斜率为1、斜率为-1、平行于X轴、垂直于X轴的四条直线上的棋子的坐标进行霍夫变换,对应霍夫参数空间中的一条直线;S4:在霍夫参数空间中,检测是否存在一个点有大于等于5条直线穿过;若有,则转入步骤S5;若无,则重复步骤S2-S3;S5:在X-Y坐标系中,判断该点对应的直线上,各棋子的横坐标或纵坐标是否为连续等差变化;若是,则成五子连珠;若否,则重复步骤S2-S4。2.根据权利要求1所述的一种基于霍夫变换的五子连珠判断方法,其特征在于,所述步骤S3中的霍夫变换,在X-Y坐标系中,四种直线的成线方程为ax+by+c=0,各棋子的坐标转变到霍夫参数空间的a-b-c坐标系中,成线方程的表达式为:xa+yb+c=0。3.根据权利要求1所述的一种基于霍夫变换的五子连珠判断方法,其特征在于,所述步骤S3中转换到霍夫参数空间的棋子,为以放置的棋子为中心,于9*9的网格范围内,且该棋子颜色相同的棋子。4.根据权利要求1所述的一种基于霍夫变换的五子连珠判断方法,其特征在于,所述步骤S2中,棋子的颜色包括黑色、白色。5.根据权利要求1所述的一种基于霍夫变换的五子连珠判断方法,其特征在于,应用于五子棋电子游戏中。
百度查询: 河海大学常州校区 一种基于霍夫变换的五子连珠判断方法
免责声明
1、本报告根据公开、合法渠道获得相关数据和信息,力求客观、公正,但并不保证数据的最终完整性和准确性。
2、报告中的分析和结论仅反映本公司于发布本报告当日的职业理解,仅供参考使用,不能作为本公司承担任何法律责任的依据或者凭证。