基于图像处理的围棋胜负判定的方法、系统及电子设备与流程

文档序号:15387636发布日期:2018-09-08 00:45阅读:705来源:国知局

本发明涉及围棋数据处理领域,尤其涉及一种基于图像处理的围棋胜负判定的方法、系统及电子设备。



背景技术:

围棋是一种策略性的棋类游戏,中国古时称为“弈”,西方称为“go”,属琴棋书画四艺之一。围棋起源于中国,传为尧作,春秋战国时代即有记载。隋唐时经朝鲜传入日本,流传到欧美各国。有学者认为,围棋蕴含着汉民族文化的丰富内涵,是中国文化与文明的体现。围棋使用方形格状棋盘及黑白二色圆形棋子进行对弈,棋盘上有纵横各四条直线将棋盘分成361个交叉点,棋子走在交叉点上,双方交替行棋,落子后不能移动,以围地多者为胜。中国古代围棋是黑白双方在对角星位处各摆放两子(对角星布局),由白棋先行。现代围棋由日本发展而来,取消了座子规则,黑先白后,使围棋的变化更加复杂多变。围棋也被认为是世界上最复杂的棋盘游戏之一。

在2016年3月9日至15日举行的围棋人机大战中,谷歌开发的人工智能程序alphago大比分4:1战胜了世界冠军李世石九段,2017年5月alphago又以3:0的比分战胜了世界冠军柯洁九段,让围棋得到了更多人的关注,使越来越多的人接触围棋,学习围棋。在现在的线下围棋对弈中,对弈的结果一直都是采用传统的人工数子方法进行判定,人工数子所消耗的时间长,而且准确度也不能完全保证。近年来,线下的围棋比赛越来越多,这对围棋裁判的要求也越来越高。在遇到复杂的情况时会消耗更多的时间,无法避免数错的情况。而且在很多比赛中,一名裁判常常需要同时看管很多盘棋,这也会增加出错的概率。而在计算机视觉技术和图像处理技术日益普及的今天,采用通过智能设备来判断对局结果是一种更好的方法。

现有的技术都是首先用数码设备对围棋比赛后的棋盘进行图像采集,再用数字图像处理技术进行识别,得到最终的胜负结果。不过现有的技术都只针对19路棋盘,而且对局的规则也局限于中国围棋规则,黑棋贴3又3/4子,其他规格棋盘如9路棋盘或13路棋盘以及其他规则如日韩规则或应氏规则均不适用。在算法方面,对黑色棋子进行分割时采用的方法也不是最好的,而且该算法无法识别出死子或复杂的双活情况终局图像,导致判断失误。



技术实现要素:

针对上述技术问题,本发明实施例提供了一种基于图像处理的围棋胜负判定的方法、系统及电子设备,以提高精确度,并能够适用针对不同大小的棋盘、不同的对局规则以及棋盘上有死子或双活的情况。

本发明实施例的第一方面提供一种基于图像处理的围棋胜负判定的方法,包括步骤:

采集棋盘图像,并预处理为仅包含黑色棋子、白色棋子及黄色棋盘线的预处理图像;

通过提取所述预处理图像的红色分量来分割出黑色棋子图像,以及通过提取所述预处理图像的蓝色分量来分割出白色棋子图像;

根据所述黑色棋子图像和白色棋子图像画出棋盘线,并对所述黑色棋子图像和白色棋子图像分别经过开运算及模板匹配检测,根据棋盘规格大小定义存放黑色棋子位置和白色棋子位置的二维数组,并在检测黑色棋子时将黑色棋子位置设为-1,在检测白色棋子时将白色棋子位置设为1,空白位置均设为0;

按照预定规则判定剩余交叉点及按每一行填补棋子,并根据-1和1的个数统计出黑色棋子和白色棋子的个数;

根据所述黑色棋子和白色棋子的个数、以及棋盘规格大小和对弈规则判定胜负结果,并输出所述胜负结果。

可选地,按照以下规则填补棋子:

(1)交叉点到黑或白,交叉点被填补为黑(-1)或白(1);

(2)黒或白到交叉点,交叉点被填补为黑(-1)或白(1);

(3)白到交叉点到白,交叉点被填补为白(1);

(4)黑到交叉点到黑,交叉点被填补为黑(-1);

(5)黒到交叉点到白,交叉点被填补为白(1);

(6)白到交叉点到黑,交叉点被填补为黑(-1);

(7)交叉点既能到黑也能到白,交叉点被填补为0.5;

并按照如下规则统计黑色棋子和白色棋子和个数:

统计二维数组中-1和1的个数,将-1的个数计为黑色棋子个数a,1的个数计为白色棋子个数b;若出现了情况(7),即有双活的情况,则将a+0.5计为黑色棋子的最终子数;b+0.5计为白色棋子的最终子数。

可选地,所述棋盘规格大小包括19路棋盘、13路棋盘和9路棋盘,所述对弈规则包括中国规则、日韩规则和应氏规则。

可选地,所述根据所述黑色棋子和白色棋子的个数、以及棋盘规格大小和对弈规则判定胜负结果,并输出所述胜负结果的步骤具体包括:

根据所述黑色棋子和白色棋子的个数、棋盘规格大小及对弈规则查询预先存储的判断规则,并给出胜负结果;所述判断规则如下表:

可选地,所述通过提取所述预处理图像的红色分量来分割出黑色棋子图像,以及通过提取所述预处理图像的蓝色分量来分割出白色棋子图像的步骤具体包括:

通过提取预处理图像的红色分量,计算灰度直方图并进行滤波操作,根据灰度直方图设定阈值,分割出黑色棋子;以及提取预处理图像的蓝色分量,计算灰度直方图并进行滤波操作,根据灰度直方图设定阈值,分割出白色棋子。

本发明实施例第二方面提供了一种基于图像处理的围棋胜负判定的系统,所述系统包括图像采集单元、棋子分割单元、检测单元、交叉点填充单元和判定输出单元,其中,

所述图像采集单元用于采集棋盘图像,并预处理为仅包含黑色棋子、白色棋子及黄色棋盘线的预处理图像;

所述棋子分割单元用于通过提取所述预处理图像的红色分量来分割出黑色棋子图像,以及通过提取所述预处理图像的蓝色分量来分割出白色棋子图像;

所述检测单元用于根据所述黑色棋子图像和白色棋子图像画出棋盘线;以及对所述黑色棋子图像和白色棋子图像分别经过开运算后进行模板匹配检测,根据棋盘规格大小定义存放黑色棋子位置和白色棋子位置的二维数组,并在检测黑色棋子时将黑色棋子位置设为-1,在检测白色棋子时将白色棋子位置设为1,空白位置均设为0;

所述交叉点填充单元用于按照预定规则进行剩余交叉点的判定及按每一行填补棋子,并根据-1和1的个数统计出黑色棋子和白色棋子的个数;

所述判定输出单元用于根据所述黑色棋子和白色棋子的个数、棋盘规格大小及对弈规则判定,输出最终胜负结果。

可选地,所述交叉点填充单元具体包括填充单元和计数单元,其中,

所述填充单元用于按照以下规则填补棋子:

(1)交叉点到黑或白,交叉点被填补为黑(-1)或白(1);

(2)黒或白到交叉点,交叉点被填补为黑(-1)或白(1);

(3)白到交叉点到白,交叉点被填补为白(1);

(4)黑到交叉点到黑,交叉点被填补为黑(-1);

(5)黒到交叉点到白,交叉点被填补为白(1);

(6)白到交叉点到黑,交叉点被填补为黑(-1);

(7)交叉点既能到黑也能到白,交叉点被填补为0.5;

所述计数单元用于统计二维数组中-1和1的个数,将-1的个数计为黑色棋子个数a,1的个数计为白色棋子个数b;若出现了情况(7),即有双活的情况,则将a+0.5计为黑色棋子的最终子数;b+0.5计为白色棋子的最终子数。

可选地,图像采集单元为高清摄像头或多路摄像装置。

可选地,所述棋子分割单元、检测单元、交叉点填充单元和判定输出单元集成于一个处理器。

本发明实施例第三方面提供了一种电子设备,该电子设备包括上述基于图像处理的围棋胜负判定的系统。

本发明实施例提供的技术方案中,分割黑棋棋子时是通过提取预处理图像的红色分量来完成,因此相对于现有技术,本发明实施例能够使用不同大小的棋盘、不同的对局规则以及棋盘上有死子或双活的情况,而且精确度更高。

附图说明

图1为本发明实施例中基于图像处理的围棋胜负判定的方法的一个实施例流程图。

图2为本发明实施例中基于图像处理的围棋胜负判定的系统的一个实施例示意图。

图3为图1中交叉点填充单元的组成框图。

图4为本发明实施例中基于图像处理的围棋胜负判定的系统的另一个实施例示意图。

图5为本发明实施例中电子设备一个实施例示意图。

具体实施方式

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

本发明的说明书和权利要求书的术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。

请参加图1,本发明实施例中基于图像处理的围棋胜负判定的方法,包括步骤:

s10、采集棋盘图像,并预处理为仅包含黑色棋子、白色棋子及黄色棋盘线的预处理图像;其中,所采集的棋盘图像包括整个棋盘对弈过程中的棋盘图像,当然,对棋盘图像的采集是实时的,以便实时判断对弈胜负。

s20、通过提取所述预处理图像的红色分量来分割出黑色棋子图像,以及通过提取所述预处理图像的蓝色分量来分割出白色棋子图像。

具体地,对黑色棋子进行分割时直接对彩色图像灰度化后进行分割,彩色图像转变为灰度图像的公式如下:

gray=rx0.299+gx0.587+bx0.114

式中:r表示彩色图像中每个像素点的红色分量的值,g表示彩色图像中每个像素点的绿色分量的值,b表示彩色图像中每个像素点的蓝色分量的值。gray表示灰度变换后图像中每个像素点的颜色值。

经过研究黑色、白色与黄色的rgb三分量的值:黑色的rgb三分量分别为(红0,绿0,蓝0),白色的rgb三分量分别为(红255,绿255,蓝255),黄色的rgb三分量分别为(红255,绿255,蓝0)。从中可以看到直接将彩色图像灰度化时,会受到绿色分量和蓝色分量的影响。考虑到黑色的红色分量与白色、黄色差别最大,所以为了将黑色棋子与白色棋子以及黄色棋盘区分开,选择提取彩色图像的红色分量是一种更好更精确的方法。因此,在分割黑色棋子时首先提取预处理图像的红色分量,然后计算灰度直方图并进行滤波操作,根据灰度直方图设定阈值,分割出黑色棋子。在分割白色棋子时首先提取预处理图像的蓝色分量,然后计算灰度直方图并进行滤波操作,根据灰度直方图设定阈值,分割出白色棋子。

s30、根据所述黑色棋子图像和白色棋子图像画出棋盘线,并对所述黑色棋子图像和白色棋子图像分别经过开运算及模板匹配检测,根据棋盘规格大小定义存放黑色棋子位置和白色棋子位置的二维数组,并在检测黑色棋子时将黑色棋子位置设为-1,在检测白色棋子时将白色棋子位置设为1,空白位置均设为0;

具体地,步骤s30主要是对棋盘线和黑白棋子进行检测,在检测棋盘线时,将棋子分割单元所得出的黑色棋子图像和白色棋子图像进行相加运算,在水平和垂直两个方向上进行投影,找到极值点,并根据该极值点的横坐标画出棋盘线。

在检测黑白棋子时,需要分开进行,对黑色棋子图像和白色棋子图像分别经过开运算后进行模板匹配检测,然后根据棋盘规格大小定义存放黑色棋子位置和白色棋子位置的二维数组,并在检测黑色棋子时将黑色棋子位置设为-1,在检测白色棋子时将白色棋子位置设为1,空白位置均设为0;本系统主要针对三种棋盘规格大小,分别为19路棋盘、13路棋盘和9路棋盘,本实施例以19路棋盘为例进行说明。定义两个19x19的二维数组,一个用来存放黑色棋子位置,另一个用来存放白色棋子位置。在存放黑白棋子位置时,设置规则如下:

(1)检测黑色棋子的位置时,将有黑色棋子的位置设置为-1,空白的位置设置为0;

(2)检测白色棋子的位置时,将有白色棋子的位置设置为1,空白的位置设置为0。

s40、按照预定规则判定剩余交叉点及按每一行填补棋子,并根据-1和1的个数统计出黑色棋子和白色棋子的个数;

具体地,本实施例按照以下规则填补棋子:

(1)交叉点到黑或白,交叉点被填补为黑(-1)或白(1);

(2)黒或白到交叉点,交叉点被填补为黑(-1)或白(1);

(3)白到交叉点到白,交叉点被填补为白(1);

(4)黑到交叉点到黑,交叉点被填补为黑(-1);

(5)黒到交叉点到白,交叉点被填补为白(1);

(6)白到交叉点到黑,交叉点被填补为黑(-1);

(7)交叉点既能到黑也能到白,交叉点被填补为0.5;

经过上述处理,棋盘图像已经转化为数组形式,黑色棋子、白色棋子以及棋盘线均已转化为二维数组,通过该二维数组可以清晰呈现棋盘信息。而计数单元统计二维数组中-1和1的个数,将-1的个数计为黑色棋子个数a,1的个数计为白色棋子个数b;若出现了情况(7),即有双活的情况,则将a+0.5计为黑色棋子的最终子数;b+0.5计为白色棋子的最终子数。

s50、根据所述黑色棋子和白色棋子的个数、以及棋盘规格大小和对弈规则判定胜负结果,并输出所述胜负结果。

本实施例的对弈规则包括中国规则、日韩规则和应氏规则。在进行判定时,根据黑色棋子和白色棋子的个数、棋盘规格大小及对弈规则查询预先存储的判断规则,并通过查表方式给出胜负结果。判断规

经过上述步骤,本发明能够完成针对不同的棋盘大小和不同的围棋规则的围棋终局胜负判断,以及能够对棋盘上有死子或双活的情况进行胜负判断,而且由于分割黑色棋子时通过提取预处理图像的红色分量来完成,精确度会更高。

基于上述围棋胜负判定的方法,本发明实施例还提供了一种基于图像处理的围棋胜负判定的系统,下面以具体实施例来进行说明。请参加图2,本系统包括:图像采集单元10、棋子分割单元20、检测单元30、交叉点填充单元40和判定输出单元50。下面对上述各单元的具体功能做具体描述。

本实施例的图像采集单元10主要用于采集棋盘图像,并预处理为仅包含黑色棋子、白色棋子及黄色棋盘线的预处理图像。棋子分割单元20用于通过提取上述预处理图像的红色分量来分割出黑色棋子图像,以及通过提取上述预处理图像的蓝色分量来分割出白色棋子图像。检测单元30用于根据黑色棋子图像和白色棋子图像画出棋盘线;以及对黑色棋子图像和白色棋子图像分别经过开运算后进行模板匹配检测,根据棋盘规格大小定义存放黑色棋子位置和白色棋子位置的二维数组,并在检测黑色棋子时将黑色棋子位置设为-1,在检测白色棋子时将白色棋子位置设为1,空白位置均设为0。

本实施例的交叉点填充单元40用于按照预定规则进行剩余交叉点的判定及按每一行填补棋子,并根据-1和1的个数统计出黑色棋子和白色棋子的个数;具体地,如图3所示,该交叉点填充单元40具体包括填充单元41和计数单元42,填充单元41按照以下规则填补棋子:

(1)交叉点到黑或白,交叉点被填补为黑(-1)或白(1);

(2)黒或白到交叉点,交叉点被填补为黑(-1)或白(1);

(3)白到交叉点到白,交叉点被填补为白(1);

(4)黑到交叉点到黑,交叉点被填补为黑(-1);

(5)黒到交叉点到白,交叉点被填补为白(1);

(6)白到交叉点到黑,交叉点被填补为黑(-1);

(7)交叉点既能到黑也能到白,交叉点被填补为0.5;

在填充单元41在二维数组中填补完棋子后,计数单元统计二维数组中-1和1的个数,将-1的个数计为黑色棋子个数a,1的个数计为白色棋子个数b;若出现了情况(7),即有双活的情况,则将a+0.5计为黑色棋子的最终子数;b+0.5计为白色棋子的最终子数。

本实施例的判定输出单元50用于根据黑色棋子和白色棋子的个数、棋盘规格大小及对弈规则判定,输出最终胜负结果。

优选地,本实施例不仅可以处理一路数据,进行一对一的对弈终局判定,还可以处理多路数据,对多组对弈同时处理,这样可以大大节约成本,提高判定效率。因此,本实施例的图像采集单元10优选为高清摄像头或多路摄像装置。

优选地,如图4所示,本装置还包括显示单元60和语音播报单元70,显示单元60用于显示最终胜负结果,语音播报单元70用于播放统计出的黑色棋子个数和白色棋子个数、以及最终胜负结果。显示单元60可以为led屏、lcd屏或oled屏或其他显示设备,语音播报单元70可以为扬声器、功放器等播放设备。

应当说明的是,上述实施例中提供的围棋胜负判定的方法和系统均是基于相同的发明构思。因此,围棋胜负判定的方法中各个具体实施例的步骤均可以由对应的功能模块所执行,功能模块中具体的功能也可以在围棋胜负判定的系统中具有对应的方法步骤,在此不再赘述。

本发明实施例还提供了一种电子设备,该电子设备包括上述基于图像处理的围棋胜负判定的系统。

图5为本申请实施例提供的电子设备的硬件结构示意图,该设备包括:一个或多个处理器501以及存储器502。图5中以一个为例。其中,处理器501以及存储器502可以通过总线或者其他方式连接,图5中以通过总线连接为例。处理器501内置有上述系统中的各单元部件,即上述如棋子分割单元、检测单元、交叉点填充单元和判定输出单元集成于一个处理器。

存储器502作为一种非易失性计算机可读存储介质,可用于存储非易失性软件程序、非易失性计算机可执行程序以及模块,如本发明实施例中基层找平设计系统对应的程序指令/模块。本实施例中可以存储对弈规格、存储棋子位置的二维数组、对弈规则以及胜负判定规则。处理器501通过运行存储在存储器502中的非易失性软件程序、指令以及模块,从而执行服务器的各种功能应用以及数据处理,即实现上述实施例中围棋对弈终局自动判断胜负的系统。

存储器502可以包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需要的应用程序;存储数据区可存储根据基层找平设计系统的使用所创建的数据等。此外,存储器502可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他非易失性固态存储器件。在一些实施例中,存储器502可选包括相对于处理器501远程设置的存储器,这些远程存储器可以通过网络连接至本系统。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。

上述电子设备可执行本申请实施例所提供的系统或方法,具备执行该系统或方法相应的功能模块和有益效果。未在本实施例中详尽描述的技术细节,可参见本申请实施例所提供的系统或方法。

并且,以上所描述的系统实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。如本实施例的棋子分割单元、检测单元、交叉点填充单元和判定输出单元集成于图像处理芯片。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。

通过以上的实施方式的描述,本领域普通技术人员可以清楚地了解到各实施方式可借助软件加通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(read-onlymemory,rom)、随机存取存储器(randomaccessmemory,ram)、磁碟或者光盘等各种可以存储程序代码的介质。

综上所述,本发明实施例的基于图像处理的围棋对弈终局胜负判定的方法、系统及电子设备,可以针对不同的棋盘大小和不同的围棋规则进行胜负判断,以及能够对棋盘上有死子或双活的情况进行胜负判断,并且分割黑色棋子时通过提取预处理图像的红色分量来完成,精确度更高。

以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1