CN112560872A - 一种基于人工智能的多模感知麻将辅助方法 - Google Patents
一种基于人工智能的多模感知麻将辅助方法 Download PDFInfo
- Publication number
- CN112560872A CN112560872A CN202011488542.XA CN202011488542A CN112560872A CN 112560872 A CN112560872 A CN 112560872A CN 202011488542 A CN202011488542 A CN 202011488542A CN 112560872 A CN112560872 A CN 112560872A
- Authority
- CN
- China
- Prior art keywords
- mahjong
- card
- cards
- playing
- tile
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 67
- 238000013473 artificial intelligence Methods 0.000 title claims abstract description 22
- 230000008447 perception Effects 0.000 title claims abstract description 11
- 238000012549 training Methods 0.000 claims abstract description 35
- 238000013135 deep learning Methods 0.000 claims abstract description 14
- 238000005516 engineering process Methods 0.000 claims description 16
- 230000006870 function Effects 0.000 claims description 13
- 238000002372 labelling Methods 0.000 claims description 13
- 230000001131 transforming effect Effects 0.000 claims description 11
- 238000012946 outsourcing Methods 0.000 claims description 7
- 238000004590 computer program Methods 0.000 claims description 5
- 230000002194 synthesizing effect Effects 0.000 claims description 5
- 230000004807 localization Effects 0.000 claims description 4
- 238000001514 detection method Methods 0.000 description 16
- 230000000694 effects Effects 0.000 description 6
- 238000013528 artificial neural network Methods 0.000 description 5
- 230000008901 benefit Effects 0.000 description 4
- 238000013527 convolutional neural network Methods 0.000 description 4
- 230000009466 transformation Effects 0.000 description 4
- 238000011161 development Methods 0.000 description 3
- 230000018109 developmental process Effects 0.000 description 3
- 238000000605 extraction Methods 0.000 description 3
- 230000008569 process Effects 0.000 description 3
- 238000004458 analytical method Methods 0.000 description 2
- 210000002569 neuron Anatomy 0.000 description 2
- 238000009877 rendering Methods 0.000 description 2
- 239000011165 3D composite Substances 0.000 description 1
- 235000005121 Sorbus torminalis Nutrition 0.000 description 1
- 244000152100 Sorbus torminalis Species 0.000 description 1
- 230000015572 biosynthetic process Effects 0.000 description 1
- 238000005422 blasting Methods 0.000 description 1
- 210000004556 brain Anatomy 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000012512 characterization method Methods 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 239000013078 crystal Substances 0.000 description 1
- 238000013136 deep learning model Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 238000003709 image segmentation Methods 0.000 description 1
- 230000010365 information processing Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000010801 machine learning Methods 0.000 description 1
- 239000000463 material Substances 0.000 description 1
- 239000000203 mixture Substances 0.000 description 1
- 238000003058 natural language processing Methods 0.000 description 1
- 210000000653 nervous system Anatomy 0.000 description 1
- 230000001537 neural effect Effects 0.000 description 1
- 230000000306 recurrent effect Effects 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 239000004575 stone Substances 0.000 description 1
- 238000003786 synthesis reaction Methods 0.000 description 1
- 238000000844 transformation Methods 0.000 description 1
- 238000013519 translation Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/21—Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
- G06F18/214—Generating training patterns; Bootstrap methods, e.g. bagging or boosting
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/40—Extraction of image or video features
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L15/00—Speech recognition
- G10L15/08—Speech classification or search
- G10L15/16—Speech classification or search using artificial neural networks
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L15/00—Speech recognition
- G10L15/26—Speech to text systems
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F9/00—Games not otherwise provided for
- A63F9/20—Dominoes or like games; Mah-Jongg games
- A63F2009/205—Mah-jongg games
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Multimedia (AREA)
- Artificial Intelligence (AREA)
- Human Computer Interaction (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Health & Medical Sciences (AREA)
- Evolutionary Computation (AREA)
- Acoustics & Sound (AREA)
- Computational Linguistics (AREA)
- General Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Bioinformatics & Computational Biology (AREA)
- General Engineering & Computer Science (AREA)
- Evolutionary Biology (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Image Analysis (AREA)
Abstract
本发明给出了一种基于人工智能的多模感知麻将辅助方法,包括一种麻将牌图像识别模型训练方法,利用真实场景下的麻将牌牌面图片和通过合成得到的麻将牌牌面图片组成训练数据,利用深度学习算法进行训练得到麻将牌图像识别模型,基于所述麻将牌图像识别模型对摄像头捕捉的麻将对局进行识别,得到己方手牌信息和场上出牌信息,并根据声源定位算法确定实时的出牌语音来自的出牌玩家,最终得到总体的麻将对局状态,利用优化的推荐弃牌算法对所述麻将对局状态进行分析,得到当前己方的推荐弃牌方案。构建了一种完整的麻将辅助人工智能系统的解决方案,实现了对麻将局面的精确识别和出牌方案的最优输出。
Description
技术领域
本发明涉及人工智能技术领域,尤其是一种基于人工智能的多模感知麻将辅助方法。
背景技术
现代人工智能技术的发展,尤其是深度学习神经网络技术的发展,使得经过大量数据训练的计算机算法模型可以在相应的应用领域上有优秀的表现。棋牌游戏作为人类智慧的结晶,游戏的对战模式往往也是人工智能模型极佳的训练场。2016年3月,阿尔法围棋与围棋世界冠军、职业九段棋手李世石进行围棋人机大战,以4比1的总比分获胜,阿尔法围棋(AlphaGo)成为史上第一个击败人类职业围棋选手、第一个战胜围棋世界冠军的人工智能机器人,由谷歌(Google)旗下DeepMind公司戴密斯·哈萨比斯领衔的团队开发。其主要工作原理即是“深度学习”。
麻将作为在中国乃至整个亚洲地区都家喻户晓的大众娱乐项目,麻将仅在亚洲地区就拥有上亿玩家。极高的普及度使得很多人都认为麻将是一项十分容易的棋牌类游戏。然而,虽然麻将入门容易,但要真正打好麻将、精通麻将却十分困难。麻将是一门高素质国际性体育和娱乐项目,世界麻将大赛是全球最大的麻将赛事。“世界麻将大赛”邀请来自世界各地顶尖的麻将好手共同角逐“世界麻将皇”的国际美誉及全球麻将史上最高的比赛奖金。
打麻将的活动中存在多个使用人工智能办法可以很好解决的问题,本专利提出一种基于人工智能的麻将辅助系统,可以使用基于人工智能的感知、分析等不同模型,来辅助打麻将:一方面可以对比分析人工智能的出牌策略来帮助人们学习提高麻将技能,另一方面也可以将该技术与自动麻将桌结合作为麻将陪玩解决线下打牌时经常三缺一的难题。
深度学习(Deep Learning)是机器学习的分支,是一种以人工神经网络为架构,对数据进行表征学习的算法。观测值(例如一幅图像)可以使用多种方式来表示,如每个像素强度值的向量,或者更抽象地表示成一系列边、特定形状的区域等。而使用某些特定的表示方法更容易从实例中学习任务(例如,麻将牌的识别)。深度学习的好处是用非监督式或半监督式的特征学习和分层特征提取高效算法来替代手工获取特征。表征学习的目标是寻求更好的表示方法并创建更好的模型来从大规模未标记数据中学习这些表示方法。表示方法来自神经科学,并松散地创建在类似神经系统中的信息处理和对通信模式的理解上,如神经编码,试图定义拉动神经元的反应之间的关系以及大脑中的神经元的电活动之间的关系。至今已有数种深度学习框架,如深度神经网络、卷积神经网络和深度置信网络和循环神经网络已被应用在计算机视觉、语音识别、自然语言处理、音频识别与生物信息学等领域并获取了极好的效果。
目标检测(Object Detection)是计算机视觉领域的基本任务之一,学术界已有将近二十年的研究历史。近些年随着深度学习技术的火热发展,目标检测算法也从基于手工特征的传统算法转向了基于深度神经网络的检测技术。从最初2013年提出的R-CNN,到后面的Fast/Faster R-CNN、SSD、YOLO系列。短短不到五年时间,基于深度学习的目标检测技术,在网络结构上,从二阶段到一阶段,从自底向上到自上而下,从单一网络到金字塔特征抽取网络(FPN),从面向PC端到面向手机端,都涌现出许多好的算法技术,这些算法在开放目标检测数据集上的检测效果和性能都很出色。
大多数现有技术只针对打麻将过程中的个别问题提出解决方案,且存在以下缺点:
1.麻将牌的识别率低,容错率低。过去一些技术使用基于传统的图像分割,图像对比识别的方法来识别麻将牌,而不是使用深度学习模型。这使得一方面麻将牌识别的体验差,使用前需要进行特定的背景图片采集才可以开始工作;另一方面麻将牌识别受限:往往仅支持系统使用的麻将牌样式,换一种款式的麻将牌就识别不出来了。
2.只考虑了玩家手牌的局部信息,无法做更优决策。麻将是一个概率游戏,打麻将过程中需要结合全方位信息进行思考,根据其他玩家的历史出牌,分析出他们手牌概率上的模样,防止打错牌放炮,也提升自己赢牌的概率。本专利提出的系统,支持采集打麻将过程中的语音信息,根据声源定位识别出每位玩家在打麻将过程中的出牌以及吃碰杠牌记录,通过这种多模式的感知方式来为出牌决策阶段提供更丰富的信息。
3.打麻将是一个连续多方交互的活动,任何单一的只考虑解决其中一个问题的方案,由于历史信息及上下文信息的缺失,没有办法形成一个完整的系统。只有将打麻将活动作为一个整体问题考虑,才能设计出全局更优更智能的系统。
发明内容
本发明提出了一种基于人工智能的多模感知麻将辅助方法,以解决上文提到的现有技术的缺陷。
在一个方面,本发明提出了一种麻将牌图像识别模型训练方法,该方法包括以下步骤:
S1:收集真实场景下的麻将牌牌面图片并进行标注,得到真实的训练数据;
S2:利用计算机变换多种包括角度、亮度和大小在内的不同场景对麻将牌图片和背景图片进行合成并进行标注,得到合成的训练数据;
S3:利用由所述真实的训练数据和所述合成的训练数据组成的总训练数据进行深度学习训练,得到麻将牌图像识别模型。
以上方法可以轻松生成数万个标注图片,由此所生成的麻将牌图像识别模型可以实时的检测出非常高准确度的结果:即使是带有一定投射角度的20多张不同牌同屏也可以一次识别,实现快速认牌的效果。
在具体的实施例中,所述收集真实场景下的麻将牌牌面图片并进行标注的步骤具体包括:
移动摄像设备,对每种单个的麻将牌以及多张麻将牌的组合进行多种不同角度下的视频拍摄,从得到的视频里每隔一定帧数截取出一张图片并进行人工标注。
在具体的实施例中,所述利用计算机变换多种包括角度、亮度和大小在内的不同场景对麻将牌图片和背景图片进行合成并进行标注的步骤具体包括:
对所述麻将牌图片生成表征对应麻将牌牌名的标签数据;
对所述麻将牌图片进行包括随机旋转、缩放、亮度及对比度调整和投影在内的随机变换后放在一张随机选的背景图片上,生成合成麻将牌图片,并对互相重叠的两张合成麻将牌图片中的一张图片重新进行所述随机变换使每个所述合成麻将牌图片不重叠;
同时将所述麻将牌图片中麻将牌的最小外包矩形作为麻将牌的位置,将麻将牌对应的标签数据和所述最小外包矩形作为标注信息与所述合成麻将牌图片储存在一起。
在具体的实施例中,所述麻将牌图片包括:每种麻将牌的多种不同样式的图片。
在具体的实施例中,所述背景图片包括:多种类型的纹理图片。
根据本发明的第二方面,提出了一种基于人工智能的多模感知麻将辅助方法,该方法包括以下步骤:
A1:摄像头捕捉打麻将时的出牌画面,利用上文所述的训练方法训练的麻将牌图像识别模型对所述出牌画面进行识别,得到当前麻将对局中己方手牌信息和场上出牌信息;以及
A2:利用麦克风接收打麻将时的出牌语音,基于声源定位确定所述出牌语音来自的出牌玩家,并利用自动语音识别技术将所述出牌语音转化为文字后进行分类识别出所述出牌玩家的出牌情况;
A3:根据所述己方手牌信息、场上出牌信息以及出牌玩家的出牌情况得到当前的麻将对局状态,对所述麻将对局状态进行分析计算出当前己方的推荐弃牌方案。
以上方法实现了一种完整的麻将辅助人工智能系统的解决方案,利用目标检测技术以及声源定位技术相结合,再使用优化的推荐弃牌方案,实现了对麻将局面的精确识别和出牌方案的最优输出,通过使用以上人工智能辅助方法,可以使玩家学习到不同局面下的各种高级打法从而提高麻将技能。
在具体的实施例中,所述基于声源定位确定所述出牌语音来自的出牌玩家的方法具体包括:通过不同麦克风接收到的所述出牌语音的声波的时间差与合成波形,形成一个声源方位角度到合成波形幅度的函数,通过所述函数确定所述出牌语音的声源方位,从而确定所述出牌语音来自的出牌玩家。
在具体的实施例中,所述步骤A3中对所述麻将对局状态进行分析计算出当前己方的推荐弃牌方案的方法具体包括以下步骤:
A301:当己方手牌未形成胡牌局面时,从己方手牌中枚举一张牌x作为弃牌候选,剩余13张牌记为局面S_x;
A302:若所述局面S_x为听牌局面,则优先选择听牌门数及听牌剩余张数最多的一个方案进行弃牌,若所述局面S_x不为听牌局面,则执行步骤A303;
A303:将所述剩余13张牌按花色分区,记为子局面S_x_h(h=万,筒,条,风,刻),记R为当前摸牌堆的总剩余张数,R_k为当前牌k的剩余张数,则摸到牌k的概率P_k=R_k/R,其中R_k的估算方法为:
R_k=R_k_max–A_k
其中,R_k_max表示从明牌中可以得知的牌k的最大剩余张数,A_k为估算得到的牌k在其他玩家暗牌里的张数;
A304:根据公式:
R_k_max=4–Count(弃牌堆,k)–Count(己方手牌,k)–Count(其他玩家明牌,k)
计算所述R_k_max,其中,Count函数为统计牌k在一个集合里的个数,Count(弃牌堆,k)表示牌k在弃牌堆集合里的个数,Count(己方手牌,k)表示牌k在己方手牌集合里的个数,Count(其他玩家明牌,k)表示牌k在其他玩家明牌集合里的个数;
A305:利用启发式的算法计算所述A_k:
根据所述当前的麻将对局状态,等概率计算其他玩家暗牌里有R_k_max张牌k的期望,得到
A_k=floor((1-R/83)*R_k_max)
其中,83为一副麻将牌(不计花牌136张)在游戏开始分发完4个玩家手牌后摸牌堆的剩余张数,floor函数为向下取整;
A306:根据所述概率P_k并利用树搜索计算每个所述子局面S_x_h当前再在摸牌堆中摸不超过5张牌后能将己方手牌凑成有将胡牌形式n*ABC+m*AAA+DD的概率P(S_x_h)和能凑成无将胡牌形式n*ABC+m*AAA的概率P’(S_x_h),其中,n和m为正整数或零,ABC代表“顺子”,AAA代表“刻子”,DD代表“将”;
S307:每进行一步树搜索即从剩余牌中选一张与所述子局面同花色的牌加入所述子局面形成新子局面,并重新执行上述步骤,直至达到所述树搜索的限定搜索深度或者凑成所述有将/无将胡牌形式,叠加得到的所述概率P(S_x_h)和所述概率P’(S_x_h);
S308:枚举将牌的花色,计算不同子局面总的胡牌概率P(S_x):
P(S_x)=Max{P(S_x_h1)*Mul{P’(S_x_h2)}
其中,h2!=h1,h1、h2={万,筒,条,风,刻},Max表示取最大值,Mul表示连乘,选取满足P(S_x)值最大的所述弃牌候选x作为所述推荐弃牌方案。
在具体的实施例中,上述两个方面所述的方法可以运行在带有摄像头和麦克风阵列的设备上。
根据本发明的第三方面,提出了一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被计算机处理器执行时实施上述方法。
本发明提出了一种麻将牌图像识别模型训练方法,利用真实场景下的麻将牌牌面图片和通过合成得到的麻将牌牌面图片组成训练数据,利用深度学习算法进行训练得到麻将牌图像识别模型,还提出了一种基于人工智能的多模感知麻将辅助方法,基于所述麻将牌图像识别模型对摄像头捕捉的麻将对局进行识别,得到己方手牌信息和场上出牌信息,并根据声源定位算法确定实时的出牌语音来自的出牌玩家,最终得到总体的麻将对局状态,利用优化的推荐弃牌算法对所述麻将对局状态进行分析,得到当前己方的推荐弃牌方案。实现了一种完整的麻将辅助人工智能系统的解决方案,利用目标检测技术以及声源定位技术相结合,再使用优化的推荐弃牌方案,实现了对麻将局面的精确识别和出牌方案的最优输出,通过使用以上人工智能辅助方法,可以使玩家学习到不同局面下的各种高级打法从而提高麻将技能。
附图说明
包括附图以提供对实施例的进一步理解并且附图被并入本说明书中并且构成本说明书的一部分。附图图示了实施例并且与描述一起用于解释本发明的原理。将容易认识到其它实施例和实施例的很多预期优点,因为通过引用以下详细描述,它们变得被更好地理解。通过阅读参照以下附图所作的对非限制性实施例所作的详细描述,本申请的其它特征、目的和优点将会变得更明显:
图1是本发明的一个实施例的一种麻将牌图像识别模型训练方法的流程图;
图2是本发明的一个具体的实施例的麻将牌图片合成与标注数据样例图;
图3是本发明的一个具体的实施例的通过渲染生成的不同状态下的3D合成麻将牌样例图片;
图4是本发明的一个实施例的一种基于人工智能的多模感知麻将辅助方法的流程图;
图5是根据本发明的一个具体的实施例的方法给出的一次出牌建议的示意图。
具体实施方式
下面结合附图和实施例对本申请作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释相关发明,而非对该发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与有关发明相关的部分。
需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。下面将参考附图并结合实施例来详细说明本申请。
根据本发明的一个实施例的一种麻将牌图像识别模型训练方法,图1示出了根据本发明的实施例的一种麻将牌图像识别模型训练方法的流程图。如图1所示,该方法包括以下步骤:
S101:收集真实场景下的麻将牌牌面图片并进行标注,得到真实的训练数据。
在具体的实施例中,收集真实场景下的麻将牌牌面图片并进行标注的步骤具体包括:
移动摄像设备,对每种单个的麻将牌以及多张麻将牌的组合进行多种不同角度下的视频拍摄,从得到的视频里每隔一定帧数截取出一张图片并进行人工标注。
S102:利用计算机变换多种包括角度、亮度和大小在内的不同场景对麻将牌图片和背景图片进行合成并进行标注,得到合成的训练数据。
在具体的实施例中,利用计算机变换多种包括角度、亮度和大小在内的不同场景对麻将牌图片和背景图片进行合成并进行标注的步骤具体包括:
对所述麻将牌图片生成表征对应麻将牌牌名的标签数据;
对所述麻将牌图片进行包括随机旋转、缩放、亮度及对比度调整和投影在内的随机变换后放在一张随机选的背景图片上,生成合成麻将牌图片,并对互相重叠的两张合成麻将牌图片中的一张图片重新进行所述随机变换使每个所述合成麻将牌图片不重叠;
同时将所述麻将牌图片中麻将牌的最小外包矩形作为麻将牌的位置,将麻将牌对应的标签数据和所述最小外包矩形作为标注信息与所述合成麻将牌图片储存在一起。
在具体的实施例中,所述麻将牌图片包括:每种麻将牌的多种不同样式的图片。
图2示出了本发明的一个具体的实施例的麻将牌图片合成与标注数据样例图,在本实施例中,人工合成麻将牌图片和标注数据的具体步骤如下:
S201:加载629张不同样式的麻将牌图片及其对应是什么牌的标签数据,记为tiles;
S202:加载5641张不同的纹理图片,记为backgrounds;
S203:循环生成总数50000张训练图片及其标注数据,每张的生成
方法:
S2031:随机从tiles中选择两张麻将牌(已知标签),记为tile1,tile2;
S2032:随机从backgrounds中选择一张纹理图片作为背景,记为background1;
S2033:定义一个图像随机变换序列t1,包含以下变换:
1)随机调整图像亮度为原始亮度的0.8~1.25倍;
2)随机调整图像对比度为原始对比度的0.3~1.8倍;
3)随机调整图像大小为原始大小的0.25~0.5倍(麻将牌输入图片较大);
4)随机旋转图像角度为-180度到180度之间;
5)随机平移图像到原始位置上下左右20%范围内的一个随机位置;
S2034:初始化所需输出图像大小的空白画板,将tile1绘制在画板中间,同时可知tile1当前的最小外包矩形bbs1及标签label1。将随机变换序列t1应用在该画板上,变换同时对bbs1生效;
S2035:上一个步骤一样应用在tile2上,检测变化后的两张牌是否有重叠,若有重叠则重复本步骤重新做一次随机变换,直至不重叠;
S2036:将变换后的tile1,tile2绘制在背景图片background1上,存储生成的图片及其对应的两个标注数据:<bbs1,label1>,<bbs2,label2>表示图片上的麻将牌位置及标签。
图3示出了本发明的一个具体的实施例的通过渲染生成的不同状态下的3D合成麻将牌样例图片。在优选的实施例中,为了生成其他投射角度的麻将牌图片,我们可以对麻将牌进行3D建模。通过在3D设计软件中设置不同的麻将牌材质,灯光,投射角度,渲染生成不同状态下的3D合成麻将牌。在3D设计软件中可以通过设计麻将牌旋转平移组合等动画的方式生成一段时间的动画,再从动画中定时截取出图像帧,这样可以快速的生成大量的图片数据。
S103:利用由所述真实的训练数据和所述合成的训练数据组成的总训练数据进行深度学习训练,得到麻将牌图像识别模型。
在优选的实施例中,本发明基于SSD算法作为麻将图像的目标检测算法。SSD是一种通用的目标检测算法,采用一个CNN网络来进行目标检测,使用了多尺度的特征图以更好支持不同大小目标的检测。原始的SSD采用VGG16作为图像特征抽取的基础模型,然后在VGG16的基础上新增了卷积层来获得更多的特征图以用于检测。
根据本发明的一个实施例的一种基于人工智能的多模感知麻将辅助方法,图4示出了根据本发明的实施例的一种基于人工智能的多模感知麻将辅助方法的流程图。如图4所示,该方法包括以下步骤:
S401:摄像头捕捉打麻将时的出牌画面,利用上文所述的训练方法训练的麻将牌图像识别模型对所述出牌画面进行识别,得到当前麻将对局中己方手牌信息和场上出牌信息。
S402:利用麦克风接收打麻将时的出牌语音,基于声源定位确定所述出牌语音来自的出牌玩家,并利用自动语音识别技术将所述出牌语音转化为文字后进行分类识别出所述出牌玩家的出牌情况。
在具体的实施例中,基于声源定位确定所述出牌语音来自的出牌玩家的方法具体包括:通过不同麦克风接收到的所述出牌语音的声波的时间差与合成波形,形成一个声源方位角度到合成波形幅度的函数,通过所述函数确定所述出牌语音的声源方位,从而确定所述出牌语音来自的出牌玩家。
S403:根据所述己方手牌信息、场上出牌信息以及出牌玩家的出牌情况得到当前的麻将对局状态,对所述麻将对局状态进行分析计算出当前己方的推荐弃牌方案。
在具体的实施例中,麻将对局状态进行分析计算出当前己方的推荐弃牌方案的方法具体包括以下步骤:
A301:当己方手牌未形成胡牌局面时,从己方手牌中枚举一张牌x作为弃牌候选,剩余13张牌记为局面S_x;
A302:若所述局面S_x为听牌局面,则优先选择听牌门数及听牌剩余张数最多的一个方案进行弃牌,若所述局面S_x不为听牌局面,则执行步骤A303;
A303:将所述剩余13张牌按花色分区,记为子局面S_x_h(h=万,筒,条,风,刻),记R为当前摸牌堆的总剩余张数,R_k为当前牌k的剩余张数,则摸到牌k的概率P_k=R_k/R,其中R_k的估算方法为:
R_k=R_k_max–A_k
其中,R_k_max表示从明牌中可以得知的牌k的最大剩余张数,A_k为估算得到的牌k在其他玩家暗牌里的张数;
A304:根据公式:
R_k_max=4–Count(弃牌堆,k)–Count(己方手牌,k)–Count(其他玩家明牌,k)
计算所述R_k_max,其中,Count函数为统计牌k在一个集合里的个数,Count(弃牌堆,k)表示牌k在弃牌堆集合里的个数,Count(己方手牌,k)表示牌k在己方手牌集合里的个数,Count(其他玩家明牌,k)表示牌k在其他玩家明牌集合里的个数;
A305:利用启发式的算法计算所述A_k:
根据所述当前的麻将对局状态,等概率计算其他玩家暗牌里有R_k_max张牌k的期望,得到
A_k=floor((1-R/83)*R_k_max)
其中,83为一副麻将牌(不计花牌136张)在游戏开始分发完4个玩家手牌后摸牌堆的剩余张数,floor函数为向下取整;
A306:根据所述概率P_k并利用树搜索计算每个所述子局面S_x_h当前再在摸牌堆中摸不超过5张牌后能将己方手牌凑成有将胡牌形式n*ABC+m*AAA+DD的概率P(S_x_h)和能凑成无将胡牌形式n*ABC+m*AAA的概率P’(S_x_h),其中,n和m为正整数或零,ABC代表“顺子”,AAA代表“刻子”,DD代表“将”;
S307:每进行一步树搜索即从剩余牌中选一张与所述子局面同花色的牌加入所述子局面形成新子局面,并重新执行上述步骤,直至达到所述树搜索的限定搜索深度(优选的,限定搜索深度为5)或者凑成所述有将/无将胡牌形式,叠加得到的所述概率P(S_x_h)和所述概率P’(S_x_h);
S308:枚举将牌的花色,计算不同子局面总的胡牌概率P(S_x):
P(S_x)=Max{P(S_x_h1)*Mul{P’(S_x_h2)}
其中,h2!=h1,h1、h2={万,筒,条,风,刻},Max表示取最大值,Mul表示连乘,选取满足P(S_x)值最大的所述弃牌候选x作为所述推荐弃牌方案。
根据以上推荐弃牌方案,图5示出了本发明的一个具体的实施例的方法给出的一次出牌建议,图中包括当前的推荐出牌以及出牌后玩家所听的9门牌和每门牌剩余的张数,推荐出牌操作可以通过预置的语音资源进行组合播报输出,共有6种操作(吃/碰/杠/胡牌/听牌/出牌),操作对象为34张不同的麻将牌。
在具体的实施例中,以上所述方法可以运行在带有摄像头和麦克风阵列的设备上。
优选的,为了在移动设备和嵌入式设备上获得更好的检测速度,本发明使用MobileNet替代VGG16作为SSD中的图像特征抽取模块。MobileNet通过使用深度可分离卷积来大大减少模型参数量和计算量,在精确度损失不大的前提下使得模型可以运行在算力有限的移动设备或嵌入式设备上。原始的SSD算法使用300*300的分辨率作为模型输入,由于麻将识别是同屏里14个小物体识别,本发明考虑移动设备的相机图像输入比例以及模型计算量,训练模型分辨率提升为1024*576的分辨率。
本发明的实施例还涉及一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被计算机处理器执行时实施上文中的方法。该计算机程序包含用于执行流程图所示的方法的程序代码。需要说明的是,本申请的计算机可读介质可以是计算机可读信号介质或者计算机可读介质或者是上述两者的任意组合。
本发明提出了一种麻将牌图像识别模型训练方法,利用真实场景下的麻将牌牌面图片和通过合成得到的麻将牌牌面图片组成训练数据,利用深度学习算法进行训练得到麻将牌图像识别模型,还提出了一种基于人工智能的多模感知麻将辅助方法,基于所述麻将牌图像识别模型对摄像头捕捉的麻将对局进行识别,得到己方手牌信息和场上出牌信息,并根据声源定位算法确定实时的出牌语音来自的出牌玩家,最终得到总体的麻将对局状态,利用优化的推荐弃牌算法对所述麻将对局状态进行分析,得到当前己方的推荐弃牌方案。实现了一种完整的麻将辅助人工智能系统的解决方案,利用目标检测技术以及声源定位技术相结合,再使用优化的推荐弃牌方案,实现了对麻将局面的精确识别和出牌方案的最优输出,通过使用以上人工智能辅助方法,可以使玩家学习到不同局面下的各种高级打法从而提高麻将技能。
以上描述仅为本申请的较佳实施例以及对所运用技术原理的说明。本领域技术人员应当理解,本申请中所涉及的发明范围,并不限于上述技术特征的特定组合而成的技术方案,同时也应涵盖在不脱离上述发明构思的情况下,由上述技术特征或其等同特征进行任意组合而形成的其它技术方案。例如上述特征与本申请中公开的(但不限于)具有类似功能的技术特征进行互相替换而形成的技术方案。
Claims (10)
1.一种麻将牌图像识别模型训练方法,其特征在于,包括以下步骤:
S1:收集真实场景下的麻将牌牌面图片并进行标注,得到真实的训练数据;
S2:利用计算机变换多种包括角度、亮度和大小在内的不同场景对麻将牌图片和背景图片进行合成并进行标注,得到合成的训练数据;
S3:利用由所述真实的训练数据和所述合成的训练数据组成的总训练数据进行深度学习训练,得到麻将牌图像识别模型。
2.根据权利要求1所述的方法,其特征在于,所述收集真实场景下的麻将牌牌面图片并进行标注的步骤具体包括:
移动摄像设备,对每种单个的麻将牌以及多张麻将牌的组合进行多种不同角度下的视频拍摄,从得到的视频里每隔一定帧数截取出一张图片并进行人工标注。
3.根据权利要求1所述的方法,其特征在于,所述利用计算机变换多种包括角度、亮度和大小在内的不同场景对麻将牌图片和背景图片进行合成并进行标注的步骤具体包括:
对所述麻将牌图片生成表征对应麻将牌牌名的标签数据;
对所述麻将牌图片进行包括随机旋转、缩放、亮度及对比度调整和投影在内的随机变换后放在一张随机选的背景图片上,生成合成麻将牌图片,并对互相重叠的两张合成麻将牌图片中的一张图片重新进行所述随机变换使每个所述合成麻将牌图片不重叠;
同时将所述麻将牌图片中麻将牌的最小外包矩形作为麻将牌的位置,将麻将牌对应的标签数据和所述最小外包矩形作为标注信息与所述合成麻将牌图片储存在一起。
4.根据权利要求1所述的方法,其特征在于,所述麻将牌图片包括:每种麻将牌的多种不同样式的图片。
5.根据权利要求1所述的方法,其特征在于,所述背景图片包括:多种类型的纹理图片。
6.一种基于人工智能的多模感知麻将辅助方法,其特征在于,包括以下步骤:
A1:摄像头捕捉打麻将时的出牌画面,利用如权利要求1-5中任一项所述的训练方法训练的麻将牌图像识别模型对所述出牌画面进行识别,得到当前麻将对局中己方手牌信息和场上出牌信息;以及
A2:利用麦克风接收打麻将时的出牌语音,基于声源定位确定所述出牌语音来自的出牌玩家,并利用自动语音识别技术将所述出牌语音转化为文字后进行分类识别出所述出牌玩家的出牌情况;
A3:根据所述己方手牌信息、场上出牌信息以及出牌玩家的出牌情况得到当前的麻将对局状态,对所述麻将对局状态进行分析计算出当前己方的推荐弃牌方案。
7.根据权利要求6所述的方法,其特征在于,所述基于声源定位确定所述出牌语音来自的出牌玩家的方法具体包括:通过不同麦克风接收到的所述出牌语音的声波的时间差与合成波形,形成一个声源方位角度到合成波形幅度的函数,通过所述函数确定所述出牌语音的声源方位,从而确定所述出牌语音来自的出牌玩家。
8.根据权利要求6所述的方法,其特征在于,所述步骤A3中对所述麻将对局状态进行分析计算出当前己方的推荐弃牌方案的方法具体包括以下步骤:
A301:当己方手牌未形成胡牌局面时,从己方手牌中枚举一张牌x作为弃牌候选,剩余13张牌记为局面S_x;
A302:若所述局面S_x为听牌局面,则优先选择听牌门数及听牌剩余张数最多的一个方案进行弃牌,若所述局面S_x不为听牌局面,则执行步骤A303;
A303:将所述剩余13张牌按花色分区,记为子局面S_x_h(h=万,筒,条,风,刻),记R为当前摸牌堆的总剩余张数,R_k为当前牌k的剩余张数,则摸到牌k的概率P_k=R_k/R,其中R_k的估算方法为:
R_k=R_k_max–A_k
其中,R_k_max表示从明牌中可以得知的牌k的最大剩余张数,A_k为估算得到的牌k在其他玩家暗牌里的张数;
A304:根据公式:
R_k_max=4–Count(弃牌堆,k)–Count(己方手牌,k)–Count(其他玩家明牌,k)
计算所述R_k_max,其中,Count函数为统计牌k在一个集合里的个数,Count(弃牌堆,k)表示牌k在弃牌堆集合里的个数,Count(己方手牌,k)表示牌k在己方手牌集合里的个数,Count(其他玩家明牌,k)表示牌k在其他玩家明牌集合里的个数;
A305:利用启发式的算法计算所述A_k:
根据所述当前的麻将对局状态,等概率计算其他玩家暗牌里有R_k_max张牌k的期望,得到
A_k=floor((1-R/83)*R_k_max)
其中,83为一副麻将牌(不计花牌136张)在游戏开始分发完4个玩家手牌后摸牌堆的剩余张数,floor函数为向下取整;
A306:根据所述概率P_k并利用树搜索计算每个所述子局面S_x_h当前再在摸牌堆中摸不超过5张牌后能将己方手牌凑成有将胡牌形式n*ABC+m*AAA+DD的概率P(S_x_h)和能凑成无将胡牌形式n*ABC+m*AAA的概率P’(S_x_h),其中,n和m为正整数或零,ABC代表“顺子”,AAA代表“刻子”,DD代表“将”;
S307:每进行一步树搜索即从剩余牌中选一张与所述子局面同花色的牌加入所述子局面形成新子局面,并重新执行上述步骤,直至达到所述树搜索的限定搜索深度或者凑成所述有将/无将胡牌形式,叠加得到的所述概率P(S_x_h)和所述概率P’(S_x_h);
S308:枚举将牌的花色,计算不同子局面总的胡牌概率P(S_x):
P(S_x)=Max{P(S_x_h1)*Mul{P’(S_x_h2)}
其中,h2!=h1,h1、h2={万,筒,条,风,刻},Max表示取最大值,Mul表示连乘,选取满足P(S_x)值最大的所述弃牌候选x作为所述推荐弃牌方案。
9.根据权利要求1和6中任意一项所述的方法,其特征在于,所述方法可以运行在带有摄像头和麦克风阵列的设备上。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该计算机程序被计算机处理器执行时实施权利要求1至9中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011488542.XA CN112560872A (zh) | 2020-12-16 | 2020-12-16 | 一种基于人工智能的多模感知麻将辅助方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011488542.XA CN112560872A (zh) | 2020-12-16 | 2020-12-16 | 一种基于人工智能的多模感知麻将辅助方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN112560872A true CN112560872A (zh) | 2021-03-26 |
Family
ID=75064226
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011488542.XA Pending CN112560872A (zh) | 2020-12-16 | 2020-12-16 | 一种基于人工智能的多模感知麻将辅助方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112560872A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP7280453B1 (ja) * | 2023-02-07 | 2023-05-23 | 株式会社サン・コンピュータ | 麻雀点数計算システム、麻雀点数計算方法、および麻雀点数計算プログラム |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105169697A (zh) * | 2015-07-28 | 2015-12-23 | 上海斐讯数据通信技术有限公司 | 一种基于移动终端的麻将胡牌控制方法及系统 |
CN106182006A (zh) * | 2016-08-09 | 2016-12-07 | 北京光年无限科技有限公司 | 面向智能机器人的棋牌交互数据处理方法及装置 |
CN107019901A (zh) * | 2017-03-31 | 2017-08-08 | 北京大学深圳研究生院 | 基于图像识别及自动化控制的棋牌类游戏自动博弈机器人的建立方法 |
JP2017189346A (ja) * | 2016-04-13 | 2017-10-19 | 株式会社サクシードインブェストメント | 麻雀ゲームプログラム |
CN108764447A (zh) * | 2018-05-16 | 2018-11-06 | 西安交通大学 | 一种群机器人麻将博弈智动化系统及麻将识别学习算法 |
CN110368690A (zh) * | 2019-07-31 | 2019-10-25 | 腾讯科技(深圳)有限公司 | 游戏决策模型训练方法、游戏策略生成方法及装置 |
CN112070137A (zh) * | 2020-08-27 | 2020-12-11 | 腾讯科技(深圳)有限公司 | 训练数据集的生成方法、目标对象检测方法及相关设备 |
-
2020
- 2020-12-16 CN CN202011488542.XA patent/CN112560872A/zh active Pending
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105169697A (zh) * | 2015-07-28 | 2015-12-23 | 上海斐讯数据通信技术有限公司 | 一种基于移动终端的麻将胡牌控制方法及系统 |
JP2017189346A (ja) * | 2016-04-13 | 2017-10-19 | 株式会社サクシードインブェストメント | 麻雀ゲームプログラム |
CN106182006A (zh) * | 2016-08-09 | 2016-12-07 | 北京光年无限科技有限公司 | 面向智能机器人的棋牌交互数据处理方法及装置 |
CN107019901A (zh) * | 2017-03-31 | 2017-08-08 | 北京大学深圳研究生院 | 基于图像识别及自动化控制的棋牌类游戏自动博弈机器人的建立方法 |
CN108764447A (zh) * | 2018-05-16 | 2018-11-06 | 西安交通大学 | 一种群机器人麻将博弈智动化系统及麻将识别学习算法 |
CN110368690A (zh) * | 2019-07-31 | 2019-10-25 | 腾讯科技(深圳)有限公司 | 游戏决策模型训练方法、游戏策略生成方法及装置 |
CN112070137A (zh) * | 2020-08-27 | 2020-12-11 | 腾讯科技(深圳)有限公司 | 训练数据集的生成方法、目标对象检测方法及相关设备 |
Non-Patent Citations (1)
Title |
---|
王昭阳 等: "基于深度学习的麻将智能识别算法研究", 《中国战略新兴产业》, no. 26, 27 June 2019 (2019-06-27), pages 228 * |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP7280453B1 (ja) * | 2023-02-07 | 2023-05-23 | 株式会社サン・コンピュータ | 麻雀点数計算システム、麻雀点数計算方法、および麻雀点数計算プログラム |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Parmar et al. | What and how well you performed? a multitask learning approach to action quality assessment | |
Wang et al. | Action recognition based on joint trajectory maps with convolutional neural networks | |
Girdhar et al. | Actionvlad: Learning spatio-temporal aggregation for action classification | |
Park et al. | Combining multiple sources of knowledge in deep cnns for action recognition | |
US11532172B2 (en) | Enhanced training of machine learning systems based on automatically generated realistic gameplay information | |
Huang et al. | Tracknet: A deep learning network for tracking high-speed and tiny objects in sports applications | |
CN106778854B (zh) | 基于轨迹和卷积神经网络特征提取的行为识别方法 | |
CN104463250B (zh) | 一种基于达芬奇技术的手语识别翻译方法 | |
Sharma et al. | Action recognition using visual attention | |
Levy et al. | Live repetition counting | |
CN109558832A (zh) | 一种人体姿态检测方法、装置、设备及存储介质 | |
CN110705390A (zh) | 基于lstm的形体姿态识别方法、装置及存储介质 | |
CN112818843B (zh) | 基于通道注意力导向时间建模的视频行为识别方法及系统 | |
Rangasamy et al. | Deep learning in sport video analysis: a review | |
Wei et al. | Deep spatial pyramid ensemble for cultural event recognition | |
CN108491754A (zh) | 一种基于骨骼特征的动态表示和匹配的人体行为识别方法 | |
CN109034090A (zh) | 一种基于肢体动作的情感识别系统及方法 | |
CN109117753A (zh) | 部位识别方法、装置、终端及存储介质 | |
CN112742029B (zh) | 一种模拟操作的方法、游戏测试的方法以及相关装置 | |
CN111401259A (zh) | 模型训练方法、系统、计算机可读介质和电子设备 | |
CN115497149A (zh) | 一种汽车座舱的音乐交互方法 | |
Rahman et al. | Deepgrip: cricket bowling delivery detection with superior cnn architectures | |
CN112560872A (zh) | 一种基于人工智能的多模感知麻将辅助方法 | |
CN108815845B (zh) | 人机交互的信息处理方法及装置、计算机设备及可读介质 | |
CN104933278B (zh) | 一种用于言语障碍康复训练的多通道交互方法和系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |