一种游戏数据处理方法和装置、信号处理终端及电子设备与流程

文档序号:32331616发布日期:2022-11-25 22:21阅读:49来源:国知局
一种游戏数据处理方法和装置、信号处理终端及电子设备与流程

1.本发明涉及数据处理技术领域,尤其涉及一种游戏数据处理方法和装置、信号处理终端及电子设备。


背景技术:

2.手机游戏逐渐成为人们日常休闲娱乐的活动,其中射击类手机游戏,玩家通过控制人物移动和射击,与其他玩家进行竞技,在这个过程中为了能给用户带来更多的体验,游戏设计者设计了根据枪声触发手机振动,使得用户在射击过程中,能够体验将画面和动感结合的游戏效果。
3.但现有技术中射击类手机游戏的手机振动控制,存在漏振或误振的情况,使得手机振动精度较低,用户体验不佳。


技术实现要素:

4.有鉴于此,本发明提供一种游戏数据处理方法和装置、信号处理终端及电子设备,以解决手机游戏中射击时,手机振动控制精度较低,导致的用户体验不佳的问题。
5.为实现上述目的,本发明提供如下技术方案:
6.一种游戏数据处理方法,应用于带有马达的电子设备,所述游戏数据处理方法包括:
7.获取当前运行游戏的相邻两帧界面图像,所述界面图像对应的信息中包括道具数量标识;
8.比较相邻两帧界面图像中的道具数量标识,判断所述道具数量标识是否变化;
9.若所述道具数量标识变化,则驱动马达振动。
10.优选的,在上述游戏数据处理方法中,所述判断所述道具数量标识是否变化,具体包括:
11.识别所述道具数量标识所在区域内代表道具数量的数字;
12.判断代表道具数量的数字是否变化。
13.优选的,在上述游戏数据处理方法中,所述识别所述道具数量标识所在区域内代表道具数量的数字,具体包括:
14.定位所述道具数量标识所在区域;
15.对所述区域进行分割,提取多个连通区域;
16.提取多个所述连通区域的轮廓;
17.根据所述轮廓识别出对应的数字。
18.优选的,在上述游戏数据处理方法中,所述对所述区域进行分割,提取多个连通区域,具体包括:
19.对所述区域的区域图像进行灰度化;
20.提高灰度化后的区域图像的图像对比度;
21.对提高图像对比度后的图像进行二值化;
22.从二值化图像中提取多个连通区域。
23.优选的,在上述游戏数据处理方法中,所述提取多个所述连通区域的轮廓,具体包括:
24.根据对所述连通区域所在图像的梯度进行计算,提取到所述连通区域的轮廓。
25.优选的,在上述游戏数据处理方法中,所述根据所述轮廓识别出对应的数字,具体包括:
26.对每个轮廓设置不同标签值;
27.根据所述标签值,判断所述轮廓代表的数字。
28.一种游戏数据处理装置,包括:
29.图像获取模块,用于当前运行游戏的相邻两帧界面图像,所述界面图像对应的信息中包括道具数量标识;
30.道具数量识别模块,用于比较相邻两帧界面图像中的道具数量标识,判断所述道具数量标识是否变化,并在道具数量标识变化时,发送控制指令;
31.马达驱动芯片,用于接收所述控制指令,并驱动马达振动。
32.优选的,在上述游戏数据处理装置中,所述道具数量识别模块,包括:
33.数字识别单元,用于识别所述道具数量标识所在区域内代表道具数量的数字;
34.数字判断单元,用于判断代表道具数量的数字是否变化。
35.优选的,在上述游戏数据处理装置中,所述数字识别单元具体包括:
36.定位子单元,用于定位所述道具数量标识所在区域;
37.连通区域提取子单元,用于对所述区域进行分割,提取多个连通区域;
38.轮廓提取子单元,用于提取多个所述连通区域的轮廓;
39.数字识别子单元,用于根据所述轮廓识别出对应的数字。
40.优选的,在上述游戏数据处理装置中,所述连通区域提取子单元,具体用于:
41.对所述区域的区域图像进行灰度化;
42.提高灰度化后的区域图像的图像对比度;
43.对提高图像对比度后的图像进行二值化;
44.从二值化图像中提取多个连通区域。
45.优选的,在上述游戏数据处理装置中,所述轮廓提取子单元,具体用于:
46.根据对所述连通区域所在图像的梯度进行计算,提取到所述连通区域的轮廓。
47.优选的,在上述游戏数据处理装置中,所述数字识别子单元,具体用于:
48.对每个轮廓设置不同标签值;
49.根据所述标签值,判断所述轮廓代表的数字。
50.一种信号处理终端,所述信号处理终端包括:处理器和存储器;
51.其中,所述存储器用于存储预先设定的控制指令,以及存储所述处理器运行过程中所产生的数据;
52.所述处理器用于读取所述存储器中存储的控制指令,执行上述任一项所述的游戏数据处理方法。
53.一种电子设备,包括上述任意一项所述的游戏数据处理装置;
54.或,
55.所述电子设备包括上述所述的信号处理终端。
56.经由上述的技术方案可知,本发明提供的游戏数据处理方法,包括:获取当前运行游戏的相邻两帧界面图像,所述界面图像对应的信息中包括道具数量标识;比较相邻两帧界面图像中的道具数量标识,判断所述道具数量标识中道具的数量是否减少;若所述道具的数量减少,则驱动马达振动。也就是说,本发明中通过监控游戏中道具数量标识的变化,根据道具数量标识变化控制马达振动,由于道具数量标识代表的是用户方的道具的数量,那么随着道具数量标识变化控制马达振动,能够避免出现漏振或误振的情况,从而提高了马达振动的控制精确度,提高了用户体验。
57.本发明还提供一种游戏数据处理装置,用于实现上述游戏数据处理方法,使得马达能够随着道具数量的变化而振动,使得马达振动的控制更加精确,进而提高用户体验。
附图说明
58.为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
59.图1为本发明实施例提供的游戏数据处理方法流程示意图;
60.图2为本发明实施例提供的当前运行游戏的界面图像示意图;
61.图3为本发明实施例提供的一种识别道具数量标识中数字的方法流程图;
62.图4为本发明实施例提供的一种提取多个连通区域方法流程图;
63.图5为本发明实施例提供的提取的0~9数字连通区域轮廓示意图;
64.图6为本发明实施例提供的一种数字识别算法树形图;
65.图7为本发明实施例提供的一种游戏数据处理装置示意图。
具体实施方式
66.正如背景技术部分所述,现有技术中随射击类手机游戏的射击,手机振动控制精度较低,导致用户体验不佳。
67.发明人发现,出现上述现象的原因是:现有技术中根据不同枪型的声音阈值,判定枪响的同时,进行手机马达振动控制。但是,由于不同枪型的声音阈值不一样,很难准确判定枪声是自己的还是由别人射击带来的,因此导致手机振动出现漏振或误振,进而导致用户体验不佳。
68.基于此,本发明提供一种游戏数据处理方法,应用于带有马达的电子设备,所述游戏数据处理方法包括:
69.获取当前运行游戏的相邻两帧界面图像,所述界面图像对应的信息中包括道具数量标识;可选的,所述道具包括但不限定为子弹;
70.比较相邻两帧界面图像中的道具数量标识,判断所述道具数量标识中道具的数量是否减少;
71.若所述道具的数量减少,则驱动马达振动。
72.本发明提供的游戏数据处理方法,包括:获取当前运行游戏的相邻两帧界面图像,所述界面图像对应的信息中包括道具数量标识;比较相邻两帧界面图像中的道具数量标识,判断所述道具数量标识是否减少;若所述道具数量标识中道具的数量减少,则驱动马达振动。也就是说,本发明中通过监控游戏中道具数量标识的变化,根据道具数量标识变化控制马达振动,由于道具数量标识代表的是用户方的道具的数量,那么随着道具数量标识变化控制马达振动,能够避免出现漏振或误振的情况,从而提高了马达振动的控制精确度,提高了用户体验。
73.下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
74.请参见图1,图1为本发明实施例提供的游戏数据处理方法流程示意图,所述游戏数据处理方法,应用于带有马达的电子设备中,所述游戏数据处理方法包括:
75.s101:获取当前运行游戏的相邻两帧界面图像,所述界面图像对应的信息中包括道具数量标识;
76.可选的,所述道具包括但不限定为子弹。
77.需要说明的是,本实施例中不限定具体游戏的类型,只要涉及到需要与电子设备的马达振动相互联动的游戏,均可以将游戏进程与马达的振动控制进行交互,从而提高用户体验。可选的,所述游戏可以是射击类游戏,例如枪战游戏,当前运行游戏的界面图像中包括子弹数量,而且打一枪,子弹少一颗,从而通过子弹数量的变化,配合马达振动,达到马达振动与枪击同步,进而提高用户体验度。所述射击类游戏还可以是类似枪战游戏,例如打弹弓游戏,对应的道具为弹珠,也即当前运行游戏的界面图像中包括弹珠数量,通过弹珠数量的变化,控制马达振动,同样能够达到马达振动与弹弓弹射同步的情况,从而提高了打弹弓的用户体验度。
78.另外,所述游戏还可以是砍大刀类游戏,道具数量对应大刀数量,因此,只要是涉及道具数量变化且需要马达振动来进行人机交互联动的情况,均可以适用本发明所述的数据处理方法,本实施例中对此不作赘述。
79.本发明下方实施例主要通过枪战游戏来进行说明,其他游戏可以根据本发明实施例所述内容进行置换。
80.本实施例中获取当前运行有限的相邻两帧界面图像,具体通过从系统端获取射击类游戏的图像信号,该图像信号可以是各种格式的图像文件经过解码后输出的图像数据,然后将图像数据处理为8bit的无符号整数,这里以电子产品为手机,某枪击游戏为例进行说明,从手机系统端每隔85ms获取到一帧rgb三色24bit深度的图像数据。
81.请参见图2,图2为本发明实施例提供的当前运行游戏的界面图像示意图;其中,界面图像中包括道具——子弹的数量,如图2中的区域10所示,子弹数量可以表示为35/173,其中斜杠前数据表示子弹剩余数量,而斜杠后数据表示某型枪的总容纳子弹数量。当射击一枪后,斜杠前的数据会减少1,表示子弹减少一个。
82.本实施例中通过获取当前运行游戏的相邻两帧界面图像,来判断子弹数量是否发生变化。当子弹数量发生变化时,控制马达振动,以实现马达振动的精确控制。
83.s102:比较相邻两帧界面图像中的道具数量标识,判断所述道具数量标识是否变化;
84.需要说明的是,判断道具数量标识是否变化,首先需要识别道具数量标识所在区域内代表道具数量的数字,根据代表道具数量的数字是否变化,以此来判断道具数量标识是否变化。静态的子弹数量识别比较容易,但是通常射击类游戏中子弹连发的情况下,子弹数量变化特别快,而且变化是渐变的,即表示子弹数量的数字会变小变灰、变大变亮,甚至变模糊,而且当有其它场景叠加时,子弹数背景还会发生相应变化,所以用常规的方法很难精确实时识别子弹数的变化。因此,如何判断道具数量标识变化,提高界面图像中道具数量标识的识别结果,需要提供一种新的实现方法。
85.发明人经过研究,提供一种能够精确识别道具数量标识的方法。如图3所示,图3为本发明实施例提供的一种识别道具数量标识中数字的方法流程图,具体包括:
86.s201:定位所述道具数量标识所在区域;
87.请参见图2,可知,在当前运行游戏的界面图像中,包括道具数量标识显示的区域,也即10所示。因此,首先定位枪框,然后截取枪框左下角固定区域即为子弹数量的区域,该区域随枪框缩放需要进行相应比例缩放,子弹数量区域左下角与枪框左下角重合,宽为枪框高的5/6,高为枪框高的2/5。
88.需要说明的是,本实施例中以射击类游戏为例进行说明,通常射击类游戏的子弹数量都是与对应枪型绑定在一起的,而枪又与枪框绑定在一起,因此,检测到枪框就能够定位子弹数量所在区域。
89.如果是其它游戏界面,同样是找这种规律,看子弹数量是不是和一些容易识别的特征有相对位置关系,通过识别这些特征的位置,从而定位子弹数区域,如果子弹数量所在区域与其它区域没有任何关联,就从子弹数量所在区域本身的一些特征出发,比如图2中所示的界面图像,还可以通过识别斜杠来定位数字区域。
90.也就是说,在本发明其他实施例中,道具数量标识所在区域可能具有其他性质,那么根据道具数量标识所在区域的性质进行定位即可,本实施例中对此不作详细说明。
91.s202:对所述区域进行分割,提取多个连通区域;
92.请参见图4,图4为本发明实施例提供的一种提取多个连通区域方法流程图,本实施例中,对所述区域进行分割,提取多个连通区域,具体包括:
93.s2021:对所述区域的区域图像进行灰度化;
94.本实施例中对上一步骤中提取到的道具数量标识所在区域的图像进行灰度化。
95.s2022:提高灰度化后的区域图像的图像对比度;
96.通过对灰度化后的图像进行直方图均衡化以提高图像对比度。
97.s2023:对提高图像对比度后的图像进行二值化;
98.通过设定固定阈值,对均衡化图像进行二值化。本实施例中不限定所述固定阈值的具体数值。例如,根据界面图像中静态子弹数量的颜色偏白色,以及变化过程中的灰色子弹数量经过直方图均衡化后也偏白色,通过大量分析可以得知,偏白色的子弹数量像素基本都在230~255之间,其他背景像素基本都在200以下,为了能将偏白色的子弹数分割出来,所以设定一个220的阈值,高于220的全变为255白色,低于220的全变为黑色,从而将子弹数分割出来,这里也可以设定210、215、225等等,只要能很好的将子弹数从背景中分割出
来即可。本实施例中可选的固定阈值为220。
99.s2024:从二值化图像中提取多个连通区域。
100.最后从二值化图像中提取多个连通区域即可。
101.需要说明的是,为了去除不符合数字和斜杠特征的连通区域,可选的,还包括筛选连通区域的步骤,具体包括:通过面积和宽高比等特征限定,去除面积、宽高比等明显不符合数字和斜杠特征的连通区域,即可将数字和斜杠全部分割出来,通过角度限定又可以将数字和斜杠区分开来,斜杠角度约为66
°

102.s203:提取多个所述连通区域的轮廓;
103.由于二值化后的连通区域,图像像素在由黑到白或由白到黑的地方跳变最大,根据对所述连通区域所在图像的梯度进行计算,提取到所述连通区域的轮廓。
104.具体的,本发明实施例提供具体代码如下所示:其中m,n分别代表图像的高和宽,i
x
代表水平方向梯度,iy代表竖直方向梯度,i为二值化图像,ig为最终图像梯度,即图像轮廓。
105.i
x
=zeros(m,n);
106.iy=zeros(m,n);
107.i
x
=|i(j+1)

i(j)|;
108.iy=|i(i+1)

i(i)|;
109.if(i
x
=iy){
110.ig=i
x

111.}else{
112.ig=i
x
+iy;
113.}
114.其中,x代表行,y代表列,|i(j+1)

i(j)|代表下一列减上一列的绝对值,|i(i+1)

i(i)|代表下一行减上一行的绝对值。二值化图像i为m行n列,则j的范围为(1,n-1),i的范围为(1,m-1)。
115.s204:根据所述轮廓识别出对应的数字。
116.如图5所示,图5为提取的0~9数字连通区域轮廓示意图。通过对每个轮廓设置不同标签值,再根据标签值,判断轮廓代表的数字。
117.所述标签值包括闭合轮廓数、连通区域的高宽比、上半部分轮廓数、下半部分轮廓数、第一行和第二行的连通区域宽与总数字宽的占比、倒数第一行和第二行的连通区域宽与总数字宽的占比、轮廓第四分之一行最后两个像素点的最大值等等标签。只要能够通过标签值将多个数字区分开即可,本实施例中不限定。
118.例如,参见图5,统计每个连通区域轮廓个数为cnt,可看出数字8拥有三个轮廓,两个内轮廓一个外轮廓;数字0、6、9拥有两个轮廓,一个内轮廓一个外轮廓;数字1、2、3、4、5、7都仅存在一个外轮廓,通过标签值——轮廓个数,可以将数字8识别出来。本实施例中提供的数字识别算法树形图如图6所示,算法思想描述如下:
119.s2041:计算连通区域高宽比div,如果div》4,则为数字1,否则下一步进入s2042进行判定;
120.s2042:如果cnt=3,则为数字8,如果cnt=2,下一步进入s2043进行判定,如果cnt
=1,下一步进入s2045进行判定;
121.s2043:统计连通区域上半部分轮廓个数cnt_up,如果cnt_up=1,则为数字6,否则下一步进入s2044进行判定;
122.s2044:统计连通区域下半部分轮廓个数cnt_down,如果cnt_down=1,则为数字9,否则为数字0;
123.s2045:计算轮廓第一、二行白色像素点个数的最大值与连通区域宽的比值div_first,如果div_first《0.5,则为数字4,否则下一步进入s2046进行判定;
124.s2046:计算轮廓倒数第一、二行白色像素的个数的最大值与连通区域宽的比值div_last,如果div_last《0.5,则为数字7,否则下一步进入s2047进行判定;
125.s2047:计算轮廓四分之一行,最后两个坐标点的最大值max1,如果max1=0,则为数字5,否则下一步进入s2048进行判定;
126.s2048:计算轮廓四分之三行,最后两个坐标点的最大值max2,如果max2=0,则为数字2,否则为数字3;
127.从子弹数量所在区域的中间位置从左向右遍历,第一个连通区域即为第一个待识别数字,第二个连通区域即为第二个待识别数字,依此类推,直到遇到斜杠结束。
128.代码如下所示:其中slant代表斜杠,region代表连通区域,bullet_recognize为数字识别算法,index为每个数字连通区域对应的识别结果,result为最终识别的子弹数结果。
129.result=0;
130.while(!slant){
131.index=bullet_recognize(region);
132.result=result*10+index;
133.}
134.可见,通过本发明提供的数字识别方法,能够将代表子弹数量的数字识别出来。
135.需要说明的是,本实施例中是以图5所示字体的数字进行识别的,当数字为其他字体类型时,可以根据字体类型的特点,设置对应的不同标签值,从而将数字识别出来,得到子弹数量的结果。
136.s103:若所述道具数量标识变化,则驱动马达振动。
137.当判断出子弹数量发生变化后,通过控制指令驱动马达进行振动,实现了马达随子弹数量变化而振动,避免了采用枪声控制马达振动导致的漏振或误振的情况,提高了用户体验。
138.基于相同的发明构思,本发明还提供一种游戏数据处理装置,如图7所示,图7为本发明实施例提供的一种游戏数据处理装置示意图,所述游戏数据处理装置包括:
139.图像获取模块21,用于当前运行游戏的相邻两帧界面图像,所述界面图像对应的信息中包括道具数量标识;可选的,所述道具包括但不限定为子弹;
140.道具数量识别模块22,用于比较相邻两帧界面图像中的道具数量标识,判断所述道具数量标识是否变化,并在道具数量标识变化时,发送控制指令;
141.马达驱动芯片23,用于接收所述控制指令,并驱动马达24振动。
142.本实施例中,判断道具数量标识是否变化,首先需要识别道具数量标识所在区域
内代表道具数量的数字,根据代表道具数量的数字是否变化,以此来判断道具数量标识是否变化。为此,道具数量识别模块22包括:数字识别单元,用于识别所述道具数量标识所在区域内代表道具数量的数字;数字判断单元,用于判断代表道具数量的数字是否变化。
143.而静态的子弹数量识别比较容易,但是通常射击类游戏中子弹连发的情况下,子弹数量变化特别快,而且变化是渐变的,即表示子弹数量的数字会变小变灰、变大变亮,甚至变模糊,而且当有其它场景叠加时,子弹数背景还会发生相应变化,所以用常规的方法很难精确实时识别子弹数的变化。
144.本实施例中数字识别单元具体包括:定位子单元,用于定位所述道具数量标识所在区域;连通区域提取子单元,用于对所述区域进行分割,提取多个连通区域;轮廓提取子单元,用于提取多个所述连通区域的轮廓;数字识别子单元,用于根据所述轮廓识别出对应的数字。
145.通过上面实施例中提供的数字识别算法,最终得到数字结果。具体的,所述连通区域提取子单元具体用于:对所述区域的区域图像进行灰度化;提高灰度化后的区域图像的图像对比度;对提高图像对比度后的图像进行二值化;从二值化图像中提取多个连通区域。所述轮廓提取子单元具体用于:根据对所述连通区域所在图像的梯度进行计算,提取到所述连通区域的轮廓。所述数字识别子单元具体用于:对每个轮廓设置不同标签值;根据所述标签值,判断所述轮廓代表的数字。
146.本实施例中通过上述游戏数据处理装置,将从系统端获取的图像数据传给算法处理,算法输出识别结果,通过计算前一帧与当前帧子弹数的变化,驱动马达振动,从而实现马达随着子弹数的变化精确振动。
147.同样的,基于相同的发明构思,本发明还提供一种信号处理终端,所述信号处理终端包括:处理器和存储器;
148.其中,所述存储器用于存储预先设定的控制指令,以及存储所述处理器运行过程中所产生的数据;
149.所述处理器用于读取所述存储器中存储的控制指令,执行权利要求1-6任一项所述的游戏数据处理方法。
150.同样的,基于相同的发明构思,本发明还提供一种电子设备,所述电子设备包括上面所述的游戏数据处理装置;
151.或,
152.所述电子设备包括上面所述的信号处理终端。
153.所述电子设备可以是能够运行游戏且与用户身体有所接触的电子设备,以便马达振动时,能够给用户带来振动体验,使得用户能够更加沉浸在游戏中,提高用户体验。
154.可选的,所述电子设备可以是手持式的电子设备,如手机、平板电脑或者游戏手柄等电子设备,还可以是脚踩控制的游戏,例如跳舞毯、跳舞机等类似的电子设备,本实施例中对此不作限定。
155.本发明中通过监控游戏中道具数量标识的变化,根据道具数量标识变化控制马达振动,由于道具数量标识代表的是用户方的道具的数量,那么随着道具数量标识变化控制马达振动,能够避免出现漏振或误振的情况,从而提高了马达振动的控制精确度,提高了用户体验。
156.需要说明的是,本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。
157.还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个
……”
限定的要素,并不排除在包括上述要素的物品或者设备中还存在另外的相同要素。
158.对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1