CN109550249B - 一种目标对象的控制方法、装置及设备 - Google Patents

一种目标对象的控制方法、装置及设备 Download PDF

Info

Publication number
CN109550249B
CN109550249B CN201811448777.9A CN201811448777A CN109550249B CN 109550249 B CN109550249 B CN 109550249B CN 201811448777 A CN201811448777 A CN 201811448777A CN 109550249 B CN109550249 B CN 109550249B
Authority
CN
China
Prior art keywords
data
processing
processed
control instruction
convolution
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.)
Active
Application number
CN201811448777.9A
Other languages
English (en)
Other versions
CN109550249A (zh
Inventor
周方云
方允福
詹成君
周谦
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Tencent Technology Shenzhen Co Ltd
Original Assignee
Tencent Technology Shenzhen Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Tencent Technology Shenzhen Co Ltd filed Critical Tencent Technology Shenzhen Co Ltd
Priority to CN201811448777.9A priority Critical patent/CN109550249B/zh
Publication of CN109550249A publication Critical patent/CN109550249A/zh
Priority to EP19888588.1A priority patent/EP3888769A4/en
Priority to JP2021505235A priority patent/JP7257497B2/ja
Priority to PCT/CN2019/120741 priority patent/WO2020108457A1/zh
Priority to US17/191,056 priority patent/US11351458B2/en
Application granted granted Critical
Publication of CN109550249B publication Critical patent/CN109550249B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/55Controlling game characters or game objects based on the game progress
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/55Controlling game characters or game objects based on the game progress
    • A63F13/57Simulating properties, behaviour or motion of objects in the game world, e.g. computing tyre load in a car race game
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/30Interconnection arrangements between game servers and game devices; Interconnection arrangements between game devices; Interconnection arrangements between game servers
    • A63F13/35Details of game servers
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/60Generating or modifying game content before or while executing the game program, e.g. authoring tools specially adapted for game development or game-integrated level editor
    • A63F13/67Generating or modifying game content before or while executing the game program, e.g. authoring tools specially adapted for game development or game-integrated level editor adaptively or by learning from player actions, e.g. skill level adjustment or by storing successful combat sequences for re-use
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/70Game security or game management aspects
    • A63F13/79Game security or game management aspects involving player-related data, e.g. identities, accounts, preferences or play histories
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/048Activation functions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods

Abstract

本发明实施例公开了一种目标对象的控制方法,包括:接收服务器发送的对象控制指令,根据对象控制指令从目标应用中获取交互帧数据;通过对象控制模型获取交互帧数据所对应待处理数据;采用数据处理框架对待处理数据进行处理,得到交互控制指令,数据处理框架用于实现数据的稀疏卷积处理;通过目标应用向服务器发送交互控制指令,以使服务器向至少一个终端设备发送交互控制指令,其中,交互控制指令用于指示至少一个终端设备在目标应用对目标对象进行控制。本发明实施例中还公开了一种对象控制装置以及终端设备。本发明实施例利用数据处理框架来预测玩家操作,节省了内存的消耗,同时提升了运行速度,从而可以显著地提升终端设备的性能。

Description

一种目标对象的控制方法、装置及设备
技术领域
本发明涉及人工智能领域,尤其涉及一种目标对象的控制方法、装置及设备。
背景技术
网络游戏产业是一个新兴的朝阳产业,经过近几年的快速发展,现在网络游戏产业快速走向成熟期的阶段。其中,多人在线战斗竞技场(multiplayer online battlearena,MOBA)类游戏是网络游戏的重要组成部分。
由于MOBA类游戏往往涉及到多名玩家的交互操作,因此,当同一局游戏中有玩家处于掉线或者其他异常情形时,该玩家所在队伍可能会因为人数偏少而失利。在这种情况下,服务器采用类似caffe或者TensorFlow等通用框架训练得到人工智能(ArtificialIntelligence,AI)模型,然后终端设备在通用框架下结合AI模型以及整局游戏数据预测玩家的操作。
然而,类似caffe或者TensorFlow等通用框架属于高阶的机器学习框架,采用这类通用框架进行玩家操作的预测,通常需要占用较多的内存。由于终端设备的计算能力较弱,存储资源较少,因此,将这类通用框架部署在终端设备中运行,会导致终端设备的性能大幅降低。
发明内容
本发明实施例提供了一种目标对象的控制方法、装置及设备,终端设备可以利用数据处理框架来预测玩家操作,该数据处理框架可以实现数据的稀疏卷积处理,因此,大幅地减少了数据处理量,有效地节省了内存的消耗,同时提升了运行速度,从而可以显著地提升终端设备的性能。
有鉴于此,本发明第一方面提供了一种目标对象的控制方法,包括:
接收服务器发送的对象控制指令,根据所述对象控制指令从目标应用中获取交互帧数据,其中,所述对象控制指令中携带目标对象的标识;
通过对象控制模型获取所述交互帧数据所对应待处理数据,其中,所述对象控制模型为采用全局交互数据训练得到的;
采用数据处理框架对所述待处理数据进行处理,得到交互控制指令,其中,所述交互控制指令携带所述目标对象的标识,所述数据处理框架用于实现数据的稀疏卷积处理;
通过所述目标应用向所述服务器发送所述交互控制指令,以使所述服务器向至少一个终端设备发送所述交互控制指令,其中,所述交互控制指令用于指示所述至少一个终端设备在所述目标应用对所述目标对象进行控制。
本发明第二方面提供了一种对象控制装置,包括:
获取模块,用于若接收到服务器发送的对象控制指令,则根据所述对象控制指令从目标应用中获取交互帧数据,其中,所述对象控制指令中携带目标对象的标识;
所述获取模块,还用于通过对象控制模型获取所述交互帧数据所对应待处理数据,其中,所述对象控制模型为采用全局交互数据训练得到的;
处理模块,用于采用数据处理框架对所述获取模块获取的所述待处理数据进行处理,得到交互控制指令,其中,所述交互控制指令携带所述目标对象的标识,所述数据处理框架用于实现数据的稀疏卷积处理;
发送模块,用于通过所述目标应用向所述服务器发送所述处理模块处理得到的所述交互控制指令,以使所述服务器向至少一个终端设备发送所述交互控制指令,其中,所述交互控制指令用于指示所述至少一个终端设备在所述目标应用对所述目标对象进行控制。
在一种可能的设计中,在本申请实施例的第二方面的第一种实现方式中,
所述获取模块,具体用于通过所述对象控制模型获取第一交互帧数据所对应第一待处理数据,其中,所述第一交互帧数据对应于所述交互帧数据中的M帧数据,所述M为正整数;
通过所述对象控制模型获取第二交互帧数据所对应第二待处理数据,其中,所述第二交互帧数据对应于所述交互帧数据中的N帧数据,所述N为正整数,且所述N小于所述M;
所述处理模块,具体用于采用所述数据处理框架对所述第一待处理数据进行处理,得到第一交互控制指令;
采用所述数据处理框架对所述第二待处理数据进行处理,得到第二交互控制指令。
在一种可能的设计中,在本申请实施例的第二方面的第二种实现方式中,所述对象控制装置还包括提取模块;
所述提取模块,用于所述获取模块通过对象控制模型获取所述交互帧数据所对应待处理数据之后,根据所述待处理数据提取操作特征信息,其中,所述操作特征信息包含第一特征元素集合以及第二特征元素集合,所述第一特征元素集合中的元素个数小于所述第二特征元素集合中的元素个数;
所述获取模块,还用于从所述提取模块提取的所述操作特征信息中获取所述第一特征元素集合;
所述处理模块,具体用于根据所述第一特征元素集合生成深度图,其中,所述深度图包括多个边界元素以及多个内部元素;
针对所述多个边界元素中的每个边界元素,采用相邻的三个元素进行卷积计算,或,采用相邻的五个元素进行卷积计算,得到第一卷积结果;
针对所述多个内部元素中的每个内部元素,采用相邻的八个元素进行卷积计算,得到第二卷积结果;
根据所述第一卷积结果以及所述第二卷积结果生成目标卷积结果;
根据所述目标卷积结果生成所述交互控制指令。
在一种可能的设计中,在本申请实施例的第二方面的第三种实现方式中,所述对象控制装置还包括运行模块;
所述运行模块,用于所述处理模块采用数据处理框架对所述待处理数据进行处理,得到交互控制指令之前,采用基于进阶精简指令集机ARM的指令集运行所述数据处理框架。
在一种可能的设计中,在本申请实施例的第二方面的第四种实现方式中,
所述处理模块,具体用于采用所述数据处理框架在寄存器中对所述待处理数据进行处理,得到待融合数据;
采用所述数据处理框架在内存中对所述待融合数据进行处理。
在一种可能的设计中,在本申请实施例的第二方面的第五种实现方式中,
所述处理模块,具体用于在所述寄存器中采用池化层以及卷积层对所述待处理数据进行处理,其中,所述池化层用于对所述待处理数据进行正则化处理以及池化处理,所述卷积层用于对所述待处理数据进行激活处理以及标准化处理。
在一种可能的设计中,在本申请实施例的第二方面的第六种实现方式中,
所述处理模块,具体用于在所述内存中采用全连接层对所述待融合数据进行处理,其中,所述待融合数据包括第一待融合数据以及第二待融合数据,所述全连接层用于拼接所述第一待融合数据以及所述第二待融合数据,并对所述第一待融合数据以及所述第二待融合数据进行融合处理。
在一种可能的设计中,在本申请实施例的第二方面的第七种实现方式中,
所述处理模块,具体用于从第一内存中获取所述待处理数据;
对所述待处理数据进行卷积处理,得到卷积处理结果,其中,所述卷积处理结果存储于第二内存,所述第二内存与所述第一内存属于预先分配的两个不同内存;
从所述第二内存中获取所述卷积处理结果;
对所述卷积处理结果进行数据融合处理,得到融合结果,其中,所述融合结果存储于所述第一内存。
在一种可能的设计中,在本申请实施例的第二方面的第八种实现方式中,
所述处理模块202,具体用于对所述待处理数据进行卷积处理,得到卷积处理结果,其中,所述卷积处理结果存储于目标内存;
对所述待处理数据进行数据融合处理,得到第一融合结果,其中,所述第一融合结果存储于所述目标内存;
从所述目标内存中获取所述卷积处理结果以及所述第一融合结果;
对所述卷积处理结果以及所述第一融合结果进行数据融合处理,得到第二融合结果。
在一种可能的设计中,在本申请实施例的第二方面的第九种实现方式中,
所述处理模块202,具体用于对所述待处理数据进行卷积处理,得到卷积处理结果,其中,所述卷积处理结果存储于目标内存;
从所述目标内存中获取第一卷积处理结果;
对所述第一卷积处理结果进行融合处理,得到融合结果,和/或,对所述第一卷积处理结果进行卷积处理,得到第二卷积处理结果。
在一种可能的设计中,在本申请实施例的第二方面的第十种实现方式中,所述对象控制装置20还包括选择模块;
所述获取模块,还用于根据所述对象控制指令从目标应用中获取交互帧数据之前,获取终端设备的性能参数;
所述选择模块,用于根据所述获取模块获取的所述性能参数从预设框架匹配模板集合中选择目标匹配模板,其中,预设框架匹配模板集合包括至少一个匹配模板,每个匹配模板中包括所述数据处理框架所使用的参数;
所述处理模块,具体用于根据所述目标匹配模板,采用所述数据处理框架对所述待处理数据进行处理,得到所述交互控制指令。
本发明第三方面提供了一种对象控制装置,包括:存储器、收发器、处理器以及总线系统;
其中,所述存储器用于存储程序;
所述处理器用于执行所述存储器中的程序,包括如下步骤:
接收服务器发送的对象控制指令,根据所述对象控制指令从目标应用中获取交互帧数据,其中,所述对象控制指令中携带目标对象的标识;
通过对象控制模型获取所述交互帧数据所对应待处理数据,其中,所述对象控制模型为采用全局交互数据训练得到的;
采用数据处理框架对所述待处理数据进行处理,得到交互控制指令,其中,所述交互控制指令携带所述目标对象的标识,所述数据处理框架用于实现数据的稀疏卷积处理;
通过所述目标应用向所述服务器发送所述交互控制指令,以使所述服务器向至少一个终端设备发送所述交互控制指令,其中,所述交互控制指令用于指示所述至少一个终端设备在所述目标应用对所述目标对象进行控制;
所述总线系统用于连接所述存储器以及所述处理器,以使所述存储器以及所述处理器进行通信。
在一种可能的设计中,在本申请实施例的第三方面的第一种实现方式中,处理器具体用于执行如下步骤:
通过所述对象控制模型获取第一交互帧数据所对应第一待处理数据,其中,所述第一交互帧数据对应于所述交互帧数据中的M帧数据,所述M为正整数;
通过所述对象控制模型获取第二交互帧数据所对应第二待处理数据,其中,所述第二交互帧数据对应于所述交互帧数据中的N帧数据,所述N为正整数,且所述N小于所述M;
采用所述数据处理框架对所述第一待处理数据进行处理,得到第一交互控制指令;
采用所述数据处理框架对所述第二待处理数据进行处理,得到第二交互控制指令。
在一种可能的设计中,在本申请实施例的第三方面的第二种实现方式中,处理器还用于执行如下步骤:
根据所述待处理数据提取操作特征信息,其中,所述操作特征信息包含第一特征元素集合以及第二特征元素集合,所述第一特征元素集合中的元素个数小于所述第二特征元素集合中的元素个数;
从所述操作特征信息中获取所述第一特征元素集合;
处理器具体用于执行如下步骤:
根据所述第一特征元素集合生成深度图,其中,所述深度图包括多个边界元素以及多个内部元素;
针对所述多个边界元素中的每个边界元素,采用相邻的三个元素进行卷积计算,或,采用相邻的五个元素进行卷积计算,得到第一卷积结果;
针对所述多个内部元素中的每个内部元素,采用相邻的八个元素进行卷积计算,得到第二卷积结果;
根据所述第一卷积结果以及所述第二卷积结果生成目标卷积结果;
根据所述目标卷积结果生成所述交互控制指令。
在一种可能的设计中,在本申请实施例的第三方面的第三种实现方式中,处理器还用于执行如下步骤:
采用基于进阶精简指令集机ARM的指令集运行所述数据处理框架。
在一种可能的设计中,在本申请实施例的第三方面的第四种实现方式中,处理器具体用于执行如下步骤:
采用所述数据处理框架在寄存器中对所述待处理数据进行处理,得到待融合数据;
采用所述数据处理框架在内存中对所述待融合数据进行处理。
在一种可能的设计中,在本申请实施例的第三方面的第五种实现方式中,处理器具体用于执行如下步骤:
在所述寄存器中采用池化层以及卷积层对所述待处理数据进行处理,其中,所述池化层用于对所述待处理数据进行正则化处理以及池化处理,所述卷积层用于对所述待处理数据进行激活处理以及标准化处理。
在一种可能的设计中,在本申请实施例的第三方面的第六种实现方式中,处理器具体用于执行如下步骤:
在所述内存中采用全连接层对所述待融合数据进行处理,其中,所述待融合数据包括第一待融合数据以及第二待融合数据,所述全连接层用于拼接所述第一待融合数据以及所述第二待融合数据,并对所述第一待融合数据以及所述第二待融合数据进行融合处理。
在一种可能的设计中,在本申请实施例的第三方面的第七种实现方式中,处理器具体用于执行如下步骤:
从第一内存中获取所述待处理数据;
对所述待处理数据进行卷积处理,得到卷积处理结果,其中,所述卷积处理结果存储于第二内存,所述第二内存与所述第一内存属于预先分配的两个不同内存;
从所述第二内存中获取所述卷积处理结果;
对所述卷积处理结果进行数据融合处理,得到融合结果,其中,所述融合结果存储于所述第一内存。
在一种可能的设计中,在本申请实施例的第三方面的第八种实现方式中,处理器具体用于执行如下步骤:
对所述待处理数据进行卷积处理,得到卷积处理结果,其中,所述卷积处理结果存储于目标内存;
对所述待处理数据进行数据融合处理,得到第一融合结果,其中,所述第一融合结果存储于所述目标内存;
从所述目标内存中获取所述卷积处理结果以及所述第一融合结果;
对所述卷积处理结果以及所述第一融合结果进行数据融合处理,得到第二融合结果。
在一种可能的设计中,在本申请实施例的第三方面的第九种实现方式中,处理器具体用于执行如下步骤:
对所述待处理数据进行卷积处理,得到卷积处理结果,其中,所述卷积处理结果存储于目标内存;
从所述目标内存中获取第一卷积处理结果;
对所述第一卷积处理结果进行融合处理,得到融合结果,和/或,对所述第一卷积处理结果进行卷积处理,得到第二卷积处理结果。
在一种可能的设计中,在本申请实施例的第三方面的第十种实现方式中,处理器还用于执行如下步骤:
获取终端设备的性能参数;
根据所述性能参数从预设框架匹配模板集合中选择目标匹配模板,其中,预设框架匹配模板集合包括至少一个匹配模板,每个匹配模板中包括所述数据处理框架所使用的参数;
所述采用数据处理框架对所述待处理数据进行处理,得到交互控制指令,包括:
根据所述目标匹配模板,采用所述数据处理框架对所述待处理数据进行处理,得到所述交互控制指令。
本发明的第四方面提供了一种计算机可读存储介质,所述计算机可读存储介质中存储有指令,当其在计算机上运行时,使得计算机执行上述各方面所述的方法。
从以上技术方案可以看出,本发明实施例具有以下优点:
本发明实施例中,提供了一种目标对象的控制方法,若接收到服务器发送的对象控制指令,则终端设备可以根据对象控制指令从目标应用中获取交互帧数据,其中,对象控制指令中携带目标对象的标识,再通过对象控制模型获取交互帧数据所对应待处理数据,然后采用数据处理框架对待处理数据进行处理,得到交互控制指令,其中,交互控制指令携带目标对象的标识,数据处理框架用于实现数据的稀疏卷积处理,最后,终端设备通过目标应用向服务器发送交互控制指令,以使服务器向至少一个终端设备发送交互控制指令,其中,交互控制指令用于指示至少一个终端设备在目标应用对目标对象进行控制。通过上述方式,终端设备可以利用数据处理框架来预测玩家操作,该数据处理框架可以实现数据的稀疏卷积处理,因此,大幅地减少了数据处理量,有效地节省了内存的消耗,同时提升了运行速度,从而可以显著地提升终端设备的性能。
附图说明
图1为本发明实施例中目标对象控制系统的一个架构示意图;
图2为本发明实施例中目标对象控制系统工作流程的一个示意图;
图3为本发明实施例中数据处理框架的一个结构示意图;
图4为本发明实施例中目标对象的控制方法一个实施例示意图;
图5为本发明实施例中数据处理框架的一个应用流程示意图;
图6为本发明实施例中填充图的一个实施例示意图;
图7为本发明实施例中深度图的一个实施例示意图;
图8为本发明实施例中利用深度图进行卷积计算的一个实施例示意图;
图9为本发明实施例中合并网络层的一个实施例示意图;
图10为本发明实施例中合并网络层的另一个实施例示意图;
图11为本发明实施例中删除网络层的一个实施例示意图;
图12为本发明实施例中链式网络结构的一个实施例示意图;
图13为本发明实施例中基于链式网络结构的一个数据处理示意图;
图14为本发明实施例中多输入网络结构的一个实施例示意图;
图15为本发明实施例中基于多输入网络结构的一个数据处理示意图;
图16为本发明实施例中多输出网络结构的一个实施例示意图;
图17为本发明实施例中基于多输出网络结构的一个数据处理示意图;
图18为本发明实施例中对象控制装置的一个实施例示意图;
图19为本发明实施例中对象控制装置的另一个实施例示意图;
图20为本发明实施例中对象控制装置的另一个实施例示意图;
图21为本发明实施例中对象控制装置的另一个实施例示意图;
图22为本发明实施例中终端设备的一个结构示意图。
具体实施方式
本发明实施例提供了一种目标对象的控制方法、装置及设备,终端设备可以利用数据处理框架来预测玩家操作,该数据处理框架可以实现数据的稀疏卷积处理,因此,大幅地减少了数据处理量,有效地节省了内存的消耗,同时提升了运行速度,从而可以显著地提升终端设备的性能。
本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”、“第三”、“第四”等(如果存在)是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例例如能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
应理解,本发明提供的目标对象控制方法可以应用于MOBA游戏,MOBA游戏是指多人玩家同时在线的对抗类游戏,比如英雄联盟、王者荣耀以及绝地逃生等都属于MOBA游戏。在终端设备进行MOBA游戏对战过程中经常会出现玩家掉线或者挂机情况,为了不影响其他用户体验,需要采用人工智能(Artificial Intelligence,AI)技术对掉线的玩家进行暂时托管。为了便于理解,请参阅图1,图1为本发明实施例中目标对象控制系统的一个架构示意图,如图所示,以MOBA游戏为例,假设有两支队伍进行对战,分为为队伍A和队伍B,队伍A拥有五位玩家,同样地,队伍B也拥有五位玩家,每位玩家使用一个终端设备,即队伍A对应于终端设备1、终端设备2、终端设备3、终端设备4和终端设备5,队伍B对应于终端设备6、终端设备7、终端设备8、终端设备9和终端设备10。当MOBA游戏中出现玩家掉线或者挂机时,服务器可以选择一个或者多个性能较好的终端设备,由该终端设备在线预测掉线玩家的操作。假设终端设备1掉线,服务器首先选择性能最佳的终端设备6,然后由终端设备6来预测终端设备1中的玩家操作,在预测后将操作指令反馈给MOBA游戏,通过MOBA游戏上传至服务器,最后,服务器将模拟得到的操作指令反馈给各个终端设备,从而使得这些终端设备的MOBA游戏中均能模拟该掉线玩家的操作。
请参阅图2,图2为本发明实施例中目标对象控制系统工作流程的一个示意图,如图所示,MOBA游戏会将游戏录像数据上传至服务器,由服务器采用caffe或者TensorFlow等机器学习框架对AI模型进行训练,其中,该AI模型通常是离线训练得到的。在预测玩家操作时,本发明设计和开发了一套适合MOBA游戏运行的预测框架。该预测框架有代码体积小,运行速度快,存储消耗低的优势。MOBA游戏向预测框架发送游戏的帧数据,由预测框架根据帧数据以及AI模型生成操作指令,再向MOBA游戏反馈操作指令。
基于上述提到的预测框架即为本发明提供的数据处理框架,数据处理框架在设计上精简清晰,只使用终端设备MOBA游戏所对应的AI模型中包含的必要层次。对于网络描述采用图结构,图中包含各网络层。请参阅图3,图3为本发明实施例中数据处理框架的一个结构示意图,图层包含有输入节点和输出节点,网络层基类采用邻接表的形式描述网络有向图,其子类表示各个网络层,网络层具体可以包括卷积(convolution,Conv)层、全连接(full connection,FC)层、池化(pooling)层、批标准化(batch normalization,BN)层、测量(scale)层、局部响应归一化(local response normalization,LRN)层、拼接(concat)层、切片(slice)层、元素操作(element-wiseeltwise,Eltwise)层以及激活(activiation)层。其中,特定网络层(如Conv层和activiation层)子类则是该网络层的不同计算方式选择,比如Conv层具有通用矩阵乘法(GEneral Matrix to Matrix Multiplication,GEMM)、Winograd算法、稀疏(sparse)算法、直接(direct)算法、组队(group)算法以及深度(depthwise)算法等。activiation层具有激活函数(rectified linear and leaky,ReLU)算法、归一化(softmax)算法以及双曲正切(tanh)函数。
下面将结合上述框架介绍,对本发明中目标对象的控制方法进行介绍,请参阅图4,本发明实施例中目标对象的控制方法一个实施例包括:
101、接收服务器发送的对象控制指令,根据对象控制指令从目标应用中获取交互帧数据,其中,对象控制指令中携带目标对象的标识;
本实施例中,当目标应用监控到玩家控制的目标对象禁止不动,或者在一段时间内无法接收及发送网络消息时,由目标应用服务器选择当局游戏中性能较好的终端设备,并启动该终端设备的AI线程来模拟掉线玩家控制目标对象。被选中的目标终端设备会接收到目标应用服务器发送的对象控制指令,对象控制指令中携带目标对象的标识,从而根据该对象控制指令可以确定需要模拟的对象,于是,目标终端设备从目标应用中获取交互帧数据。对交互帧数据进行特征提取,从而得到操作数据。
需要说明的是,目标应用具体可以为MOBA游戏,也就是MOBA游戏线程向AI线程发送交互帧数据,交互帧数据为MOBA游戏中的若干帧游戏数据。AI线程采用交互帧数据进行AI计算,并将计算结果返回给MOBA游戏线程,MOBA游戏线程在重新检测到玩家网络恢复或者玩家有手动操作的指令上传时,即可终止AI托管流程。
102、通过对象控制模型获取交互帧数据所对应待处理数据,其中,对象控制模型为采用全局交互数据训练得到的;
本实施例中,终端设备中运行的AI线程可以通过对象控制模型获取交互帧数据所对应待处理数据,该对象控制模型为采用全局交互数据训练得到的。具体地,MOBA游戏将大量的游戏录像数据用于对象控制模型的训练,训练所采用的框架包含但不仅限于caffe以及TensorFlow。将交互帧数据所对应的操作数据输入至对象控制模型之后,由对象控制模型对交互帧数据进行计算,从而得到相应的待处理数据,待处理数据用于表示模拟目标对象进行移动或者攻击等操作的数据。
103、采用数据处理框架对待处理数据进行处理,得到交互控制指令,其中,交互控制指令携带目标对象的标识,数据处理框架用于实现数据的稀疏卷积处理;
本实施例中,终端设备中运行的AI线程采用数据处理框架对待处理数据进行处理,从而生成交互控制指令。在生成交互控制指令的过程中,终端设备采用轻量级数据处理框架,轻量级的数据处理框架可以对数据进行稀疏卷积的处理,通常使用ReLU函数作为激活函数会导致输出很稀疏,从而也使得后续的卷积输入变得稀疏,然后数据处理框架不计算完整的矩阵乘法,而是只计算非0值的输出。
104、通过目标应用向服务器发送交互控制指令,以使服务器向至少一个终端设备发送交互控制指令,其中,交互控制指令用于指示至少一个终端设备在目标应用对目标对象进行控制。
本实施例中,终端设备在生成交互控制指令之后,会向目标应用服务器发送交互控制指令,该目标应用服务器向当局游戏中的其他终端设备发送交互控制指令,使得这些终端设备在接收到交互控制指令之后,也能在目标应用中模拟掉线玩家所控制的目标对象。
本发明实施例中,提供了一种目标对象的控制方法,若接收到服务器发送的对象控制指令,则终端设备可以根据对象控制指令从目标应用中获取交互帧数据,其中,对象控制指令中携带目标对象的标识,再通过对象控制模型获取交互帧数据所对应待处理数据,然后采用数据处理框架对待处理数据进行处理,得到交互控制指令,其中,交互控制指令携带目标对象的标识,数据处理框架用于实现数据的稀疏卷积处理,最后,终端设备通过目标应用向服务器发送交互控制指令,以使服务器向至少一个终端设备发送交互控制指令,其中,交互控制指令用于指示至少一个终端设备在目标应用对目标对象进行控制。通过上述方式,终端设备可以利用数据处理框架来预测玩家操作,该数据处理框架可以实现数据的稀疏卷积处理,因此,大幅地减少了数据处理量,有效地节省了内存的消耗,同时提升了运行速度,从而可以显著地提升终端设备的性能。
可选地,在上述图4对应的实施例的基础上,本发明实施例提供目标对象的控制方法第一个可选实施例中,通过对象控制模型获取交互帧数据所对应待处理数据,可以包括:
通过对象控制模型获取第一交互帧数据所对应第一待处理数据,其中,第一交互帧数据对应于交互帧数据中的M帧数据,M为正整数;
通过对象控制模型获取第二交互帧数据所对应第二待处理数据,其中,第二交互帧数据对应于交互帧数据中的N帧数据,N为正整数,且N小于M;
采用数据处理框架对待处理数据进行处理,得到交互控制指令,可以包括:
采用数据处理框架对第一待处理数据进行处理,得到第一交互控制指令;
采用数据处理框架对第二待处理数据进行处理,得到第二交互控制指令。
本实施例中,基于目标应用(如MOBA游戏)会根据玩家的操作生成两种类型的指令,一种是AI大局观指令(即第一交互控制指令),另一种是AI微操指令(即第二交互控制指令)。这是因为在MOBA游戏类应用程序中,玩家所控制的对象需要知道在整个地图中的位置,比如守塔、清兵线、打野、抓人以及支援等,因此,AI大局观指令就是控制目标对象移动位置的指令。此外,通过AI微操指令可以控制目标对象的具体操作,比如,走位以及技能释放等。
为了便于理解,请参阅图5,图5为本发明实施例中数据处理框架的一个应用流程示意图,如图所示,当玩家掉线2分钟左右或者2分钟原地不动时,目标应用(如MOBA游戏)服务器可以选择性能好的玩家终端设备发送AI托管命令,为不影响目标应用主线程自身业务计算,该终端设备的目标应用主线程额外启动一个托管AI线程。目标应用的主线程通信模块向AI线程的AI通信模块发送交互帧数据,由AI通信模块通过AI接口实现对目标对象的各种操作。AI线程经过特征提取、逻辑判断和计算等步骤,最终给目标应用的主线程通信模块返回被托管玩家的操作指令。
终端设备通过对象控制模型获取第一交互帧数据所对应第一待处理数据,第一交互帧数据对应于交互帧数据中的M帧数据,M可以为15,也就是说,对于15帧每秒的MOBA游戏而言,每间隔15帧进行一次大局观的计算。终端设备通过对象控制模型获取第二交互帧数据所对应第二待处理数据,其中,第二交互帧数据对应于交互帧数据中的N帧数据,N可以为2,也就是说,对于15帧每秒的MOBA游戏而言,每间隔2帧进行一次微操的计算。
终端设备采用数据处理框架对第一待处理数据进行处理,得到第一交互控制指令,该第一交互控制指令通常用于控制目标对象的移动。终端设备采用数据处理框架对第二待处理数据进行处理,得到第二交互控制指令,该第二交互控制指令通常用于控制目标对象的普通攻击、技能以及装备等。
从运行效果上看,AI解码生成的动态库体积不足200千字节。运行资源开销,以对“王者荣耀”掉线托管为例,在三星S8上大局观运行平均耗时15毫秒,微操平均耗时毫秒,给“王者荣耀”运行带来的额外内存消耗不超过10兆。
其次,本发明实施例中,基于MOBA游戏类应用程序,终端设备可以根据交互帧数据中的M帧数据获取第一待处理数据,并且根据交互帧数据中的N帧数据获取第二待处理数据,由此,采用数据处理框架对第一待处理数据进行处理得到第一交互控制指令,并且采用数据处理框架对第二待处理数据进行处理,得到第二交互控制指令。通过上述方式,利用不同帧的数据可以生成用于控制大局观的指令,以及用于控制微操作的指令,适用于MOBA游戏类的应用程序,从而提升方案的可操作性和可行性。
可选地,在上述图4对应的实施例的基础上,本发明实施例提供目标对象的控制方法第二个可选实施例中,通过对象控制模型获取交互帧数据所对应待处理数据之后,还可以包括:
根据待处理数据提取操作特征信息,其中,操作特征信息包含第一特征元素集合以及第二特征元素集合,第一特征元素集合中的元素个数小于第二特征元素集合中的元素个数;
从操作特征信息中获取第一特征元素集合;
采用数据处理框架对待处理数据进行处理,得到交互控制指令,可以包括:
根据第一特征元素集合生成深度图,其中,深度图包括多个边界元素以及多个内部元素;
针对多个边界元素中的每个边界元素,采用相邻的三个元素进行卷积计算,或,采用相邻的五个元素进行卷积计算,得到第一卷积结果;
针对多个内部元素中的每个内部元素,采用相邻的八个元素进行卷积计算,得到第二卷积结果;
根据第一卷积结果以及第二卷积结果生成目标卷积结果;
根据目标卷积结果生成交互控制指令。
本实施例中,终端设备通过对象控制模型获取交互帧数据所对应待处理数据之后,首先会对待处理数据进行特征提取,得到操作特征信息,这些操作特征信息包括第一特征元素集合以及第二特征元素集合,其中,第一特征元素集合是指特征值为“1”的元素,第二特征元素集合是指特征值为“0”的元素。在实际应用中,特征值为“1”的元素数量远远少于特征值为“0”的元素数量。因此,终端设备只提取特征值为“1”的元素,即获取第一特征元素集合,根据第一特征元素集合生成深度图。
为了便于理解,请参阅图6,图6为本发明实施例中填充图的一个实施例示意图,如图所示,对图6左侧的深度图进行填充(padding),从而形成图6右侧的padding图,深度图具体如图7所示,图7为本发明实施例中深度图的一个实施例示意图,由此可见,a00、a01、a02、a03、a10、a 11、a 12、a13、a20、a 21、a 22、a23、a30、a31、a32和a33,其中,深度图包括边界元素以及内部元素,其中,边界元素为a00、a01、a02、a03、a10、a13、a20、a23、a30、a31、a32和a33,而内部元素为a 11、a 12、a 21和a 22。假设卷积核k,卷积核k包括元素k00、k01、k02、k10、k11、k12、k20、k21和k22。请参阅图8,图8为本发明实施例中利用深度图进行卷积计算的一个实施例示意图,如图所示,在对深度图中边界元素(00)进行计算时,可以采用如下方式:
Q=k11a00+k12a01+k21a10+k22a11;
其中,由于k00、k01、k02、k10和k20对应的值为0,因此不需要采用这些值进行计算。因此,对于边界元素中的四个顶点元素,采用相邻的三个元素(即共四个元素)进行卷积计算,得到第一卷积结果Q。
在对深度图中边界元素(01)进行计算时,可以采用如下方式:
Q=k10a00+k11a01+k12a10+k20a10+k21a11+k22a12;
其中,由于k00、k01和k02对应的值为0,因此不需要采用这些值进行计算。因此,对于边界元素中的非顶点边界元素,采用相邻的五个元素(即共六个元素)进行卷积计算,得到第一卷积结果Q。
在对深度图中内部元素(11)进行计算时,可以采用如下方式:
Q=k00 a00+k01 a01+k02 a02+k10 a10+k11 a11+k12 a12+k20 a20+k21 a21+k22 a22;
其中,对于边界元素中的内部元素,采用相邻的八个元素(即共九个元素)进行卷积计算,得到第一卷积结果Q。
最后,终端设备根据第一卷积结果以及第二卷积结果生成目标卷积结果,并且根据目标卷积结果生成交互控制指令。
可以理解的是,卷积网络经常会对计算边界做补0操作,传统的计算方式,一般是采用先进行padding,然后进行直接卷积的计算过程。但是考虑到基于MOBA游戏的AI模型普遍比较小,所以padding占用的时间比较长,整体计算的时间也比较长。因此,在本发明中,卷积计算不再加入padding后的元素。而且卷积计算方式包括但不仅限于直接卷积,矩阵乘法和winograd。
其次,本发明实施例中,终端设备根据待处理数据提取操作特征信息,然后从操作特征信息中获取第一特征元素集合,只根据第一特征元素集合生成深度图,其中,深度图包括多个边界元素以及多个内部元素,针对多个边界元素中的每个边界元素,采用相邻的三个元素进行卷积计算,或,采用相邻的五个元素进行卷积计算,得到第一卷积结果,然后针对多个内部元素中的每个内部元素,采用相邻的八个元素进行卷积计算,得到第二卷积结果,最后根据第一卷积结果以及第二卷积结果生成目标卷积结果,根据目标卷积结果生成交互控制指令。通过上述方式,采用了稀疏卷积计算,在卷积层只记录非0值,卷积计算同样只计算非0值,从而提升计算效率,有效地节约存储消耗和计算时间。
可选地,在上述图4对应的实施例的基础上,本发明实施例提供目标对象的控制方法第三个可选实施例中,采用数据处理框架对待处理数据进行处理,得到交互控制指令之前,还可以包括:
采用基于进阶精简指令集机ARM的指令集运行数据处理框架。
本实施例中,终端设备运行的中央处理器(Central Processing Unit,CPU)是基于进阶精简指令集机(Advanced Reduced Instruction Set Computer Machines,ARM)架构实现的,使用ARM Neon指令集运行数据处理框架,并对该数据处理框架的算法进行处理。
ARM Neon指令集包括正常指令、宽指令、窄指令、饱和指令以及长指令等。正常指令指示对任意向量类型执行运算,并生成大小相同且类型通常与操作数向量相同的结果向量。宽指令指示一个双字向量操作数和一个四字向量操作数执行运算,此类指令生成四字向量结果,所生成的元素和第一个操作数的元素是第二个操作数元素宽度的两倍。窄指令指示对四字向量操作数执行运算,并生成双字向量结果,所生成的元素一般是操作数元素宽度的一半。饱和指令指示当超过数据类型指定到范围则自动限制在该范围内。长指令指示双字向量操作数执行运算,并生成四字向量结果。所生成的元素通常是操作数元素宽度的两倍,并属于同一类型。
NEON是进阶单指令多数据流(Single Instruction Multiple Data,SIMD)延伸集,它是一个结合64比特和128特和的SIMD指令集,其针对多媒体和讯号处理程式具备标准化加速的能力。NEON可以在10兆赫(Mega Hertz,MHz)的CPU上执行音效解码,且可以执行13MHz频率以下的全球移动通信系统(global system for mobile communication,GSM)自适应多速率(Adaptive Multi-Rate,AMR)语音编码。NEON具有一组广泛的指令集、各自的寄存器阵列,以及独立执行的硬件。NEON支援8比特、16比特、32比特和64比特的整数及单精度浮点数据,在NEON技术中,SIMD最高可同时支援到16个运算。
其次,本发明实施例中,终端设备在采用数据处理框架对待处理数据进行处理,得到交互控制指令之前,还可以采用基于ARM NEON的指令集运行数据处理框架。通过上述方式,由于ARM Neon指令集能够复制多个操作数,并把它们打包在大型寄存器的一组指令集中,因此在处理一些算法的时候,可以并行处理,从而大大提高数据处理框架的计算效率。
可选地,在上述图4以及图4对应的第一至第三个实施例中任一项的基础上,本发明实施例提供目标对象的控制方法第四个可选实施例中,采用数据处理框架对待处理数据进行处理,可以包括:
采用数据处理框架在寄存器中对待处理数据进行处理,得到待融合数据;
采用数据处理框架在内存中对待融合数据进行处理。
本实施例中,终端设备可以采用数据处理框架在寄存器中对待处理数据进行处理,也就是数据处理的过程在寄存器中进行,从而得到待融合数据。而待融合数据在终端设备的内存中进行,也就是终端设备可以数据处理框架在内存中对待融合数据进行处理。
在计算机的存储层次之中,寄存器的计算速度快,内存的计算速度慢于存器的计算速度。简单的说,内存距离CPU比较远,所以需要消耗更长的时间从CPU中读取数据。以3千兆赫兹的CPU为例,电流每秒钟能够振荡30亿次。每次耗时大约为0.33纳秒。光在1纳秒的时间内,能够前进30厘米。也就是说。在CPU的一个时钟周期内。光能够前进10厘米。因此。假设内存距离CPU超过5厘米。就不会在一个时钟周期内完毕数据的读取。相比之下,寄存器在CPU内部,读取的时候会快一点。
通常情况下,终端设备中的寄存器比特位数远远小于内存的比特位数,因此,高性能、高成本以及高耗电的设计能够用在寄存器上,但是难以用在内存上。这是因为如果用在内存上,那么每个比特位的成本和能耗就会增加,从而导致内存整体成本和能耗过高。
寄存器的工作方式非常简单。仅需要两个步骤,第一步找到寄存器内相关的比特位,第二步是读取这些比特位。内存的工作方式复杂很多,需要分为五个步骤,第一步找到数据的指针。第二步将指针送往内存管理单元,由内存管理单元将虚拟的内存地址翻译成实际的物理地址。第三步是将物理地址送往内存控制器。由内存控制器找出该地址在哪一根内存插槽上。第四步是确定数据在哪一个内存块上。从该块读取数据。第五步是将数据先送回内存控制器,再送回CPU,然后开始使用。内存的工作流程比寄存器多出很多步。每一步都会产生延迟。累积起来就使得内存比寄存器慢得多。
基于上述因素,使得寄存器的读取速度比内存读取速度更快。
再次,本发明实施例中,终端设备在采用数据处理框架对数据进行处理的过程中,可以将数据分成两个部分,每个部分在不同的区域中进行,终端设备采用数据处理框架在寄存器中对待处理数据进行处理,得到待融合数据,然后采用数据处理框架在内存中对待融合数据进行处理。通过上述方式,在终端设备的寄存器中就可以进行数据计算,不需要每次都将计算结果写入到内存,也就节省了数据处理的效率,而寄存器的计算效率高于内存的计算效率,从而提升了数据处理的效率。
可选地,在上述图4对应的第四个实施例的基础上,本发明实施例提供目标对象的控制方法第五个可选实施例中,采用数据处理框架在寄存器中对待处理数据进行处理,可以包括:
在寄存器中采用池化层以及卷积层对待处理数据进行处理,其中,池化层用于对待处理数据进行正则化处理以及池化处理,卷积层用于对待处理数据进行激活处理以及标准化处理。
本实施例中,考虑到有些网络层可以在原地计算,原地计算也就是说不需要依赖于来回搬运其他网络层的数据就可以计算。可在原地计算的网络层包含但不限于ReLU层、BN层、scale层以及偏置(bias)层。为了便于理解,请参阅图9,图9为本发明实施例中合并网络层的一个实施例示意图,如图所示,终端设备在寄存器中采用pooling层对数据进行正则化处理以及池化处理,也就是将退出(dropout)层的功能加入至pooling层,使得pooling层除了可以实现pooling层本该有的池化处理功能,还可以实现dropout层的正则化处理功能。对待处理数据经过处理后,将处理后的数据输入至FC层,FC层在内存中对数据进行融合计算。
请参阅图10,图10为本发明实施例中合并网络层的另一个实施例示意图,如图所示,终端设备在寄存器中采用Conv层对数据进行激活处理以及标准化处理,也就是将bathnorm层的功能加入至Conv层,将scale层的功能加入至Conv层,将ReLU层的功能加入至Conv层,使得Conv层除了可以实现Conv层本该有的卷积处理功能,还可以实现bathnorm层和scale层的标准化处理功能。以及实现ReLU层的激活处理功能。对待处理数据经过处理后,将处理后的数据输入至FC层,FC层在内存中对数据进行融合计算。
进一步地,本发明实施例中,终端设备在寄存器中采用池化层以及卷积层对待处理数据进行处理,其中,池化层用于对待处理数据进行正则化处理以及池化处理,卷积层用于对待处理数据进行激活处理以及标准化处理。通过上述方式,将一些不需要改变数据的网络层直接合并到上一个网络层,并且消减这些合并后的网络层,不仅有效地降低计算量,同时也减少了整体所需要的输入输出内存。
可选地,在上述图4对应的第四个实施例的基础上,本发明实施例提供目标对象的控制方法第六个可选实施例中,采用数据处理框架在内存中对待融合数据进行处理,可以包括:
在内存中采用全连接层对待融合数据进行处理,其中,待融合数据包括第一待融合数据以及第二待融合数据,全连接层用于拼接第一待融合数据以及第二待融合数据,并对第一待融合数据以及第二待融合数据进行融合处理。
本实施例中,终端设备在内存中可以直接采用FC层对待融合数据进行处理,待融合数据至少包括第一待融合数据以及第二待融合数据,假设第一待融合数据为数据A,第二待融合数据为数据B,FC层对数据A和数据B进行融合计算。为了便于理解,请参阅图11,图11为本发明实施例中删除网络层的一个实施例示意图,如图所示,Conv层经过卷积处理后得到第一待融合数据,上一个fc层经过数据融合计算后得到第二待融合数据,最后,终端设备在内存中采用下一个FC层对直接对第一待融合数据和第二待融合数据进行数据处理,无需再通过concat层来拼接第一待融合数据和第二待融合数据。
concat层的作用就是将两个及以上的特征图按照在通道或数据维度上进行拼接,并没有eltwise层(eltwise层的操作有三个,点乘、相加减和取大值)的运算操作,举个例子,如果说是在通道维度上进行拼接conv_9和deconv_9的话,首先除了通道维度可以不一样,其余维度必须一致(也就是数据、卷积输入高度和卷积输入宽度一致),这时候所做的操作仅仅是conv_9的通道k1加上deconv_9的通道k2,Concat层输出的blob可表示为:N*(k1+k2)*H*W。通常情况下,考虑到concat层是希望将同大小的特征图拼接起来,拼接的方式如下:
选择axis=0,表示在数据维度上进行拼接,可表示为:(k1+k2)*C*H*W。
选择axis=1,表示在通道维度上进行拼接,可表示为:N*(k1+k2)*H*W。
进一步地,本发明实施例中,终端设备可以在内存中采用全连接层对待融合数据进行处理,其中,待融合数据包括第一待融合数据以及第二待融合数据,全连接层用于拼接第一待融合数据以及第二待融合数据,并对第一待融合数据以及第二待融合数据进行融合处理。通过上述方式,消减concat网络层可以有效地降低计算量,同时也减少了整体所需要的输入输出内存。
可选地,在上述图4以及图4对应的第一至第三个实施例中任一项的基础上,本发明实施例提供目标对象的控制方法第七个可选实施例中,采用数据处理框架对待处理数据进行处理,可以包括:
从第一内存中获取待处理数据;
对待处理数据进行卷积处理,得到卷积处理结果,其中,卷积处理结果存储于第二内存,第二内存与第一内存属于预先分配的两个不同内存;
从第二内存中获取卷积处理结果;
对卷积处理结果进行数据融合处理,得到融合结果,其中,融合结果存储于第一内存。
本实施例中,对于链式网络结构还可以采用双缓冲,分配整个网络中需要的最大输入大小和最大输出大小,然后循环使用这两部分实现内存复用。请参阅图12,图12为本发明实施例中链式网络结构的一个实施例示意图,如图所示,链式网络结构具有一个输入和一个输出。需要说明的是,图12的链式网络结构仅为一个示意,在实际应用中,两个Conv层和两个FC层之间的排序不做限定。
为了便于介绍,请参阅图13,图13为本发明实施例中基于链式网络结构的一个数据处理示意图,如图所示,假设待处理数据存储在内存1(即第一内存)中,Conv层的输入(input)指针指示从内存1中取出数据A,经过卷积处理后得到卷积处理结果,即得到数据B,然后Conv层的输出(output)指针指示将数据B存入内存2中。FC层的input指针指示从内存1中取出数据B,经过数据融合计算后得到融合结果,即数据C,然后FC层的output指针指示将数据C存入内存1中。
其中,内存1和内存2属于预先分配的两个不同内存。
再次,本发明实施例中,终端设备可以从第一内存中获取待处理数据,对待处理数据进行卷积处理,得到卷积处理结果,其中,卷积处理结果存储于第二内存,第二内存与第一内存属于预先分配的两个不同内存,然后从第二内存中获取卷积处理结果,再对卷积处理结果进行数据融合处理,得到融合结果,其中,融合结果存储于第一内存。通过上述方式,对于链式网络结构而言可以采用双缓存机制,循环使用这两部分内存,从而实现内存复用,由此提升终端设备中的内存利用率。
可选地,在上述图4以及图4对应的第一至第三个实施例中任一项的基础上,本发明实施例提供目标对象的控制方法第八个可选实施例中,采用数据处理框架对待处理数据进行处理,可以包括:
对待处理数据进行卷积处理,得到卷积处理结果,其中,卷积处理结果存储于目标内存;
对待处理数据进行数据融合处理,得到第一融合结果,其中,第一融合结果存储于目标内存;
从目标内存中获取卷积处理结果以及第一融合结果;
对卷积处理结果以及第一融合结果进行数据融合处理,得到第二融合结果。
本实施例中,对于多输入网络结构还可以只给子节点的input分配内存,子节点的output指针指向父节点,从而实现连接点的内存复用。请参阅图14,图14为本发明实施例中多输入网络结构的一个实施例示意图,如图所示,需要说明的是,图14的多输入网络结构仅为一个示意,在实际应用中,还可以是其他类型的网络层作为子节点,也可以是其他类型的网络层作为父节点。
为了便于介绍,请参阅图15,图15为本发明实施例中基于多输入网络结构的一个数据处理示意图,如图所示,假设待处理数据存储在内存(即目标内存)中,Conv层的input指针指示从内存中取出数据A,经过卷积处理后得到卷积处理结果,即得到数据B,然后Conv层的output指针指示将数据B存入内存中。FC1层的input指针指示从内存中取出数据A,经过数据融合处理后得到第一融合结果,即得到数据C,然后FC1层的output指针指示将数据C存入内存中。FC2层的input指针指示从内存中取出数据B和数据C,经过数据融合处理后得到第二融合结果,即得到数据D,然后FC2层的output指针指示将数据D存入内存中。
再次,本发明实施例中,终端设备可以对待处理数据进行卷积处理,得到卷积处理结果,其中,卷积处理结果存储于目标内存,然后对待处理数据进行数据融合处理,得到第一融合结果,其中,第一融合结果存储于目标内存,再从目标内存中获取卷积处理结果以及第一融合结果,最后终端设备对卷积处理结果以及第一融合结果进行数据融合处理,得到第二融合结果。通过上述方式,对于多输入网络结构而言可以只给子节点的输入分配内存,节省了父节点的输出,对节点输入进行共享,从而实现连接点的内存复用,由此提升终端设备中的内存利用率。
可选地,在上述图4以及图4对应的第一至第三个实施例中任一项的基础上,本发明实施例提供目标对象的控制方法第九个可选实施例中,采用数据处理框架对待处理数据进行处理,可以包括:
对待处理数据进行卷积处理,得到卷积处理结果,其中,卷积处理结果存储于目标内存;
从目标内存中获取第一卷积处理结果;
对第一卷积处理结果进行融合处理,得到融合结果,和/或,对第一卷积处理结果进行卷积处理,得到第二卷积处理结果。
本实施例中,对于多输出网络结构还可以只给父节点的output分配内存,子节点的input指针指向父节点,从而实现连接点的内存复用。请参阅图16,图16为本发明实施例中多输出网络结构的一个实施例示意图,如图所示,需要说明的是,图16的多输出网络结构仅为一个示意,在实际应用中,还可以是其他类型的网络层作为子节点,也可以是其他类型的网络层作为父节点。
为了便于介绍,请参阅图17,图17为本发明实施例中基于多输出网络结构的一个数据处理示意图,如图所示,假设待处理数据存储在内存(即目标内存)中,Conv1层的input指针指示从内存中取出数据A,经过卷积处理后得到第一卷积处理结果,即得到数据B,然后Conv1层的output指针指示将数据B存入内存中。
FC层的input指针指示从内存中取出数据B,经过数据融合处理后得到数据C,FC1层的output指针指示将数据C存入内存中。或者,Conv2层的input指针指示从内存中取出数据B,经过卷积计算后得到第二卷积处理结果,即得到数据D,Conv2层的output指针指示将数据D存入内存中。
再次,本发明实施例中,终端设备可以从目标内存中获取第一卷积处理结果,然后对第一卷积处理结果进行融合处理,得到融合结果,和/或,对第一卷积处理结果进行卷积处理,得到第二卷积处理结果。通过上述方式,对于多输出网络结构而言可以只给父节点的输出分配内存,节省了子节点的输入,对节点输出进行共享,从而实现连接点的内存复用,由此提升终端设备中的内存利用率。
可选地,在上述图4对应的实施例的基础上,本发明实施例提供目标对象的控制方法第十个可选实施例中,根据对象控制指令从目标应用中获取交互帧数据之前,还可以包括:
获取终端设备的性能参数;
根据性能参数从预设框架匹配模板集合中选择目标匹配模板,其中,预设框架匹配模板集合包括至少一个匹配模板,每个匹配模板中包括数据处理框架所使用的参数;
采用数据处理框架对待处理数据进行处理,得到交互控制指令,可以包括:
根据目标匹配模板,采用数据处理框架对待处理数据进行处理,得到交互控制指令。
本实施例中,在实际应用中,终端设备还可以先获取自身的性能参数,性能参数包含但不仅限于网络延迟时间、内存大小、支持的路由协议、设备型号以及调制方式等。在终端设备更新目标应用的过程中,额外使用一小段时间(比如1秒钟左右)运行不同的匹配模板,动态测试和生成当前性能状态下最适合的目标匹配模板,从而根据目标匹配模板所对应的参数,采用数据处理框架对待处理数据进行处理,得到交互控制指令。
对于匹配模板而言,不同的匹配模板对应于不同的规则,这些规则难以适用于所有场景和终端设备,因此,根据不同的场景类型和终端设备的性能参数灵活地设置规则,可以更好地提升框架运行效率。请参阅表1,表1为不同匹配模板下的规则。
表1
匹配模板 卷积输入通道数 卷积输入长度 卷积输入宽度 卷积输入高度
1 2 2 2 2
2 4 3 3 3
3 6 4 4 4
4 8 5 5 5
5 10 6 6 6
6 12 7 7 7
7 14 8 8 8
如表1所示,不同的匹配模板往往对应于不同的规则,这些规则包含但不仅限于表1所提到的卷积输入通道数、卷积输入长度、卷积输入宽度、卷积输入高度以及计算机缓存大小等。
其次,本发明实施例中,目标终端设备在根据对象控制指令从目标应用中获取交互帧数据之前,还可以获取终端设备的性能参数,并且根据性能参数从预设框架匹配模板集合中选择目标匹配模板,其中,预设框架匹配模板集合包括至少一个匹配模板,每个匹配模板中包括数据处理框架所使用的参数,然后目标终端设备根据目标匹配模板,采用数据处理框架对待处理数据进行处理,得到交互控制指令。通过上述方式,用户可以提前配置不同的匹配模板,终端设备根据自身的运行情况选择最合适的模板,基于该模板来实现数据处理框架的计算,从而达到数据处理框架在该终端设备的最优化性能配置,在AI真实运行过程中则直接加载该模板所对应配置的参数,由此使得AI达到最优性能。
本发明所提供的目标对象控制方法主要部署于终端设备,考虑到如MOBA游戏这类对运行实时性要求高且资源消耗大的应用场景,以及其他运行于终端设备的AI应用场景,下面将以一组实验数据为例,说明在上述应用场景中采用该目标对象控制方法的性能情况。请参阅表2,表2为具体的性能指标。
表2
设备 AI大局观平均耗时 AI微操耗平均时 AI占用内存
三星S8 15毫秒 5毫秒 10兆
以三星S8手机在MOBA游戏“王者荣耀”掉线托管的应用场景为例,从测试评判角度分析得到,大局观运行平均耗时为15毫秒,微操平均耗时5毫秒,AI给MOBA游戏带来的额外内存消耗不超过10兆,游戏的帧率、卡顿和耗电量均无明显变化,AI性能符合预期。
下面对本发明中的对象控制装置进行详细描述,请参阅图18,图18为本发明实施例中对象控制装置一个实施例示意图,对象控制装置20包括:
获取模块201,用于接收服务器发送的对象控制指令,根据所述对象控制指令从目标应用中获取交互帧数据,其中,所述对象控制指令中携带目标对象的标识;
所述获取模块201,还用于通过对象控制模型获取所述交互帧数据所对应待处理数据,其中,所述对象控制模型为采用全局交互数据训练得到的;
处理模块202,用于采用数据处理框架对所述获取模块201获取的所述待处理数据进行处理,得到交互控制指令,其中,所述交互控制指令携带所述目标对象的标识,所述数据处理框架用于实现数据的稀疏卷积处理;
发送模块203,用于通过所述目标应用向所述服务器发送所述处理模块202处理得到的所述交互控制指令,以使所述服务器向至少一个终端设备发送所述交互控制指令,其中,所述交互控制指令用于指示所述至少一个终端设备在所述目标应用对所述目标对象进行控制。
本实施例中,接收服务器发送的对象控制指令,获取模块201根据所述对象控制指令从目标应用中获取交互帧数据,其中,所述对象控制指令中携带目标对象的标识,所述获取模块201通过对象控制模型获取所述交互帧数据所对应待处理数据,其中,所述对象控制模型为采用全局交互数据训练得到的,处理模块202采用数据处理框架对所述获取模块201获取的所述待处理数据进行处理,得到交互控制指令,其中,所述交互控制指令携带所述目标对象的标识,所述数据处理框架用于实现数据的稀疏卷积处理,发送模块203通过所述目标应用向所述服务器发送所述处理模块202处理得到的所述交互控制指令,以使所述服务器向至少一个终端设备发送所述交互控制指令,其中,所述交互控制指令用于指示所述至少一个终端设备在所述目标应用对所述目标对象进行控制。
本发明实施例中,提供了一种对象控制装置,接收服务器发送的对象控制指令,终端设备可以根据对象控制指令从目标应用中获取交互帧数据,其中,对象控制指令中携带目标对象的标识,再通过对象控制模型获取交互帧数据所对应待处理数据,然后采用数据处理框架对待处理数据进行处理,得到交互控制指令,其中,交互控制指令携带目标对象的标识,数据处理框架用于实现数据的稀疏卷积处理,最后,终端设备通过目标应用向服务器发送交互控制指令,以使服务器向至少一个终端设备发送交互控制指令,其中,交互控制指令用于指示至少一个终端设备在目标应用对目标对象进行控制。通过上述方式,终端设备可以利用数据处理框架来预测玩家操作,该数据处理框架可以实现数据的稀疏卷积处理,因此,大幅地减少了数据处理量,有效地节省了内存的消耗,同时提升了运行速度,从而可以显著地提升终端设备的性能。
可选地,在上述图18所对应的实施例的基础上,本发明实施例提供的对象控制装置20的另一实施例中,
所述获取模块201,具体用于通过所述对象控制模型获取第一交互帧数据所对应第一待处理数据,其中,所述第一交互帧数据对应于所述交互帧数据中的M帧数据,所述M为正整数;
通过所述对象控制模型获取第二交互帧数据所对应第二待处理数据,其中,所述第二交互帧数据对应于所述交互帧数据中的N帧数据,所述N为正整数,且所述N小于所述M;
所述处理模块202,具体用于采用所述数据处理框架对所述第一待处理数据进行处理,得到第一交互控制指令;
采用所述数据处理框架对所述第二待处理数据进行处理,得到第二交互控制指令。
其次,本发明实施例中,基于MOBA游戏类应用程序,终端设备可以根据交互帧数据中的M帧数据获取第一待处理数据,并且根据交互帧数据中的N帧数据获取第二待处理数据,由此,采用数据处理框架对第一待处理数据进行处理得到第一交互控制指令,并且采用数据处理框架对第二待处理数据进行处理,得到第二交互控制指令。通过上述方式,利用不同帧的数据可以生成用于控制大局观的指令,以及用于控制微操作的指令,适用于MOBA游戏类的应用程序,从而提升方案的可操作性和可行性。
可选地,在上述图18所对应的实施例的基础上,请参阅图19,本发明实施例提供的对象控制装置20的另一实施例中,所述对象控制装置20还包括提取模块204;
所述提取模块204,用于所述获取模块201通过对象控制模型获取所述交互帧数据所对应待处理数据之后,根据所述待处理数据提取操作特征信息,其中,所述操作特征信息包含第一特征元素集合以及第二特征元素集合,所述第一特征元素集合中的元素个数小于所述第二特征元素集合中的元素个数;
所述获取模块201,还用于从所述提取模块204提取的所述操作特征信息中获取所述第一特征元素集合;
所述处理模块202,具体用于根据所述第一特征元素集合生成深度图,其中,所述深度图包括多个边界元素以及多个内部元素;
针对所述多个边界元素中的每个边界元素,采用相邻的三个元素进行卷积计算,或,采用相邻的五个元素进行卷积计算,得到第一卷积结果;
针对所述多个内部元素中的每个内部元素,采用相邻的八个元素进行卷积计算,得到第二卷积结果;
根据所述第一卷积结果以及所述第二卷积结果生成目标卷积结果;
根据所述目标卷积结果生成所述交互控制指令。
其次,本发明实施例中,终端设备根据待处理数据提取操作特征信息,然后从操作特征信息中获取第一特征元素集合,只根据第一特征元素集合生成深度图,其中,深度图包括多个边界元素以及多个内部元素,针对多个边界元素中的每个边界元素,采用相邻的三个元素进行卷积计算,或,采用相邻的五个元素进行卷积计算,得到第一卷积结果,然后针对多个内部元素中的每个内部元素,采用相邻的八个元素进行卷积计算,得到第二卷积结果,最后根据第一卷积结果以及第二卷积结果生成目标卷积结果,根据目标卷积结果生成交互控制指令。通过上述方式,采用了稀疏卷积计算,在卷积层只记录非0值,卷积计算同样只计算非0值,从而提升计算效率,有效地节约存储消耗和计算时间。
可选地,在上述图18所对应的实施例的基础上,请参阅图20,本发明实施例提供的对象控制装置20的另一实施例中,所述对象控制装置20还包括运行模块205;
所述运行模块205,用于所述处理模块202采用数据处理框架对所述待处理数据进行处理,得到交互控制指令之前,采用基于进阶精简指令集机ARM的指令集运行所述数据处理框架。
其次,本发明实施例中,终端设备在采用数据处理框架对待处理数据进行处理,得到交互控制指令之前,还可以采用基于ARM NEON的指令集运行数据处理框架。通过上述方式,由于ARM Neon指令集能够复制多个操作数,并把它们打包在大型寄存器的一组指令集中,因此在处理一些算法的时候,可以并行处理,从而大大提高数据处理框架的计算效率。
可选地,在上述图18、图19或图20所对应的实施例的基础上,本发明实施例提供的对象控制装置20的另一实施例中,
所述处理模块202,具体用于采用所述数据处理框架在寄存器中对所述待处理数据进行处理,得到待融合数据;
采用所述数据处理框架在内存中对所述待融合数据进行处理。
再次,本发明实施例中,终端设备在采用数据处理框架对数据进行处理的过程中,可以将数据分成两个部分,每个部分在不同的区域中进行,终端设备采用数据处理框架在寄存器中对待处理数据进行处理,得到待融合数据,然后采用数据处理框架在内存中对待融合数据进行处理。通过上述方式,在终端设备的寄存器中就可以进行数据计算,不需要每次都将计算结果写入到内存,也就节省了数据处理的效率,而寄存器的计算效率高于内存的计算效率,从而提升了数据处理的效率。
可选地,在上述图18、图19或图20所对应的实施例的基础上,本发明实施例提供的对象控制装置20的另一实施例中,
所述处理模块202,具体用于在所述寄存器中采用池化层以及卷积层对所述待处理数据进行处理,其中,所述池化层用于对所述待处理数据进行正则化处理以及池化处理,所述卷积层用于对所述待处理数据进行激活处理以及标准化处理。
进一步地,本发明实施例中,终端设备在寄存器中采用池化层以及卷积层对待处理数据进行处理,其中,池化层用于对待处理数据进行正则化处理以及池化处理,卷积层用于对待处理数据进行激活处理以及标准化处理。通过上述方式,将一些不需要改变数据的网络层直接合并到上一个网络层,并且消减这些合并后的网络层,不仅有效地降低计算量,同时也减少了整体所需要的输入输出内存。
可选地,在上述图18、图19或图20所对应的实施例的基础上,本发明实施例提供的对象控制装置20的另一实施例中,
所述处理模块202,具体用于在所述内存中采用全连接层对所述待融合数据进行处理,其中,所述待融合数据包括第一待融合数据以及第二待融合数据,所述全连接层用于拼接所述第一待融合数据以及所述第二待融合数据,并对所述第一待融合数据以及所述第二待融合数据进行融合处理。
进一步地,本发明实施例中,终端设备可以在内存中采用全连接层对待融合数据进行处理,其中,待融合数据包括第一待融合数据以及第二待融合数据,全连接层用于拼接第一待融合数据以及第二待融合数据,并对第一待融合数据以及第二待融合数据进行融合处理。通过上述方式,消减concat网络层可以有效地降低计算量,同时也减少了整体所需要的输入输出内存。
可选地,在上述图18、图19或图20所对应的实施例的基础上,本发明实施例提供的对象控制装置20的另一实施例中,
所述处理模块202,具体用于从第一内存中获取所述待处理数据;
对所述待处理数据进行卷积处理,得到卷积处理结果,其中,所述卷积处理结果存储于第二内存,所述第二内存与所述第一内存属于预先分配的两个不同内存;
从所述第二内存中获取所述卷积处理结果;
对所述卷积处理结果进行数据融合处理,得到融合结果,其中,所述融合结果存储于所述第一内存。
再次,本发明实施例中,终端设备可以从第一内存中获取待处理数据,对待处理数据进行卷积处理,得到卷积处理结果,其中,卷积处理结果存储于第二内存,第二内存与第一内存属于预先分配的两个不同内存,然后从第二内存中获取卷积处理结果,再对卷积处理结果进行数据融合处理,得到融合结果,其中,融合结果存储于第一内存。通过上述方式,对于链式网络结构而言可以采用双缓存机制,循环使用这两部分内存,从而实现内存复用,由此提升终端设备中的内存利用率。
可选地,在上述图18、图19或图20所对应的实施例的基础上,本发明实施例提供的对象控制装置20的另一实施例中,
所述处理模块202,具体用于对所述待处理数据进行卷积处理,得到卷积处理结果,其中,所述卷积处理结果存储于目标内存;
对所述待处理数据进行数据融合处理,得到第一融合结果,其中,所述第一融合结果存储于所述目标内存;
从所述目标内存中获取所述卷积处理结果以及所述第一融合结果;
对所述卷积处理结果以及所述第一融合结果进行数据融合处理,得到第二融合结果。
再次,本发明实施例中,终端设备可以对待处理数据进行卷积处理,得到卷积处理结果,其中,卷积处理结果存储于目标内存,然后对待处理数据进行数据融合处理,得到第一融合结果,其中,第一融合结果存储于目标内存,再从目标内存中获取卷积处理结果以及第一融合结果,最后终端设备对卷积处理结果以及第一融合结果进行数据融合处理,得到第二融合结果。通过上述方式,对于多输入网络结构而言可以只给子节点的输入分配内存,节省了父节点的输出,对节点输入进行共享,从而实现连接点的内存复用,由此提升终端设备中的内存利用率。
可选地,在上述图18、图19或图20所对应的实施例的基础上,本发明实施例提供的对象控制装置20的另一实施例中,
所述处理模块202,具体用于对所述待处理数据进行卷积处理,得到卷积处理结果,其中,所述卷积处理结果存储于目标内存;
从所述目标内存中获取第一卷积处理结果;
对所述第一卷积处理结果进行融合处理,得到融合结果,和/或,对所述第一卷积处理结果进行卷积处理,得到第二卷积处理结果。
再次,本发明实施例中,终端设备可以从目标内存中获取第一卷积处理结果,然后对第一卷积处理结果进行融合处理,得到融合结果,和/或,对第一卷积处理结果进行卷积处理,得到第二卷积处理结果。通过上述方式,对于多输出网络结构而言可以只给父节点的输出分配内存,节省了子节点的输入,对节点输出进行共享,从而实现连接点的内存复用,由此提升终端设备中的内存利用率。
可选地,在上述图18所对应的实施例的基础上,请参阅图21,本发明实施例提供的对象控制装置20的另一实施例中,所述对象控制装置20还包括选择模块206;
所述获取模块201,还用于根据所述对象控制指令从目标应用中获取交互帧数据之前,获取终端设备的性能参数;
所述选择模块206,用于根据所述获取模块201获取的所述性能参数从预设框架匹配模板集合中选择目标匹配模板,其中,预设框架匹配模板集合包括至少一个匹配模板,每个匹配模板中包括所述数据处理框架所使用的参数;
所述处理模块202,具体用于根据所述目标匹配模板,采用所述数据处理框架对所述待处理数据进行处理,得到所述交互控制指令。
其次,本发明实施例中,目标终端设备在根据对象控制指令从目标应用中获取交互帧数据之前,还可以获取终端设备的性能参数,并且根据性能参数从预设框架匹配模板集合中选择目标匹配模板,其中,预设框架匹配模板集合包括至少一个匹配模板,每个匹配模板中包括数据处理框架所使用的参数,然后目标终端设备根据目标匹配模板,采用数据处理框架对待处理数据进行处理,得到交互控制指令。通过上述方式,用户可以提前配置不同的匹配模板,终端设备根据自身的运行情况选择最合适的模板,基于该模板来实现数据处理框架的计算,从而达到数据处理框架在该终端设备的最优化性能配置,在AI真实运行过程中则直接加载该模板所对应配置的参数,由此使得AI达到最优性能。
本发明实施例还提供了另一种图像显示控制装置,如图22所示,为了便于说明,仅示出了与本发明实施例相关的部分,具体技术细节未揭示的,请参照本发明实施例方法部分。该终端可以为包括手机、平板电脑、个人数字助理(Personal Digital Assistant,PDA)、销售终端(Point of Sales,POS)、车载电脑等任意终端设备,以终端为手机为例:
图22示出的是与本发明实施例提供的终端相关的手机的部分结构的框图。参考图22,手机包括:射频(Radio Frequency,RF)电路310、存储器320、输入单元330、显示单元340、传感器350、音频电路360、无线保真(wireless fidelity,WiFi)模块370、处理器380、以及电源390等部件。本领域技术人员可以理解,图22中示出的手机结构并不构成对手机的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
下面结合图22对手机的各个构成部件进行具体的介绍:
RF电路310可用于收发信息或通话过程中,信号的接收和发送,特别地,将基站的下行信息接收后,给处理器380处理;另外,将设计上行的数据发送给基站。通常,RF电路310包括但不限于天线、至少一个放大器、收发信机、耦合器、低噪声放大器(Low NoiseAmplifier,LNA)、双工器等。此外,RF电路310还可以通过无线通信与网络和其他设备通信。上述无线通信可以使用任一通信标准或协议,包括但不限于全球移动通讯系统(GlobalSystem of Mobile communication,GSM)、通用分组无线服务(General Packet RadioService,GPRS)、码分多址(Code Division Multiple Access,CDMA)、宽带码分多址(Wideband Code Division Multiple Access,WCDMA)、长期演进(Long Term Evolution,LTE)、电子邮件、短消息服务(Short Messaging Service,SMS)等。
存储器320可用于存储软件程序以及模块,处理器380通过运行存储在存储器320的软件程序以及模块,从而执行手机的各种功能应用以及数据处理。存储器320可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序(比如声音播放功能、图像播放功能等)等;存储数据区可存储根据手机的使用所创建的数据(比如音频数据、电话本等)等。此外,存储器320可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。
输入单元330可用于接收输入的数字或字符信息,以及产生与手机的用户设置以及功能控制有关的键信号输入。具体地,输入单元330可包括触控面板331以及其他输入设备332。触控面板331,也称为触摸屏,可收集用户在其上或附近的触摸操作(比如用户使用手指、触笔等任何适合的物体或附件在触控面板331上或在触控面板331附近的操作),并根据预先设定的程式驱动相应的连接装置。可选的,触控面板331可包括触摸检测装置和触摸控制器两个部分。其中,触摸检测装置检测用户的触摸方位,并检测触摸操作带来的信号,将信号传送给触摸控制器;触摸控制器从触摸检测装置上接收触摸信息,并将它转换成触点坐标,再送给处理器380,并能接收处理器380发来的命令并加以执行。此外,可以采用电阻式、电容式、红外线以及表面声波等多种类型实现触控面板331。除了触控面板331,输入单元330还可以包括其他输入设备332。具体地,其他输入设备332可以包括但不限于物理键盘、功能键(比如音量控制按键、开关按键等)、轨迹球、鼠标、操作杆等中的一种或多种。
显示单元340可用于显示由用户输入的信息或提供给用户的信息以及手机的各种菜单。显示单元340可包括显示面板341,可选的,可以采用液晶显示器(Liquid CrystalDisplay,LCD)、有机发光二极管(Organic Light-Emitting Diode,OLED)等形式来配置显示面板341。进一步的,触控面板331可覆盖显示面板341,当触控面板331检测到在其上或附近的触摸操作后,传送给处理器380以确定触摸事件的类型,随后处理器380根据触摸事件的类型在显示面板341上提供相应的视觉输出。虽然在图22中,触控面板331与显示面板341是作为两个独立的部件来实现手机的输入和输入功能,但是在某些实施例中,可以将触控面板331与显示面板341集成而实现手机的输入和输出功能。
手机还可包括至少一种传感器350,比如光传感器、运动传感器以及其他传感器。具体地,光传感器可包括环境光传感器及接近传感器,其中,环境光传感器可根据环境光线的明暗来调节显示面板341的亮度,接近传感器可在手机移动到耳边时,关闭显示面板341和/或背光。作为运动传感器的一种,加速计传感器可检测各个方向上(一般为三轴)加速度的大小,静止时可检测出重力的大小及方向,可用于识别手机姿态的应用(比如横竖屏切换、相关游戏、磁力计姿态校准)、振动识别相关功能(比如计步器、敲击)等;至于手机还可配置的陀螺仪、气压计、湿度计、温度计、红外线传感器等其他传感器,在此不再赘述。
音频电路360、扬声器361,传声器362可提供用户与手机之间的音频接口。音频电路360可将接收到的音频数据转换后的电信号,传输到扬声器361,由扬声器361转换为声音信号输出;另一方面,传声器362将收集的声音信号转换为电信号,由音频电路360接收后转换为音频数据,再将音频数据输出处理器380处理后,经RF电路310以发送给比如另一手机,或者将音频数据输出至存储器320以便进一步处理。
WiFi属于短距离无线传输技术,手机通过WiFi模块370可以帮助用户收发电子邮件、浏览网页和访问流式媒体等,它为用户提供了无线的宽带互联网访问。虽然图22示出了WiFi模块370,但是可以理解的是,其并不属于手机的必须构成,完全可以根据需要在不改变发明的本质的范围内而省略。
处理器380是手机的控制中心,利用各种接口和线路连接整个手机的各个部分,通过运行或执行存储在存储器320内的软件程序和/或模块,以及调用存储在存储器320内的数据,执行手机的各种功能和处理数据,从而对手机进行整体监控。可选的,处理器380可包括一个或多个处理单元;可选的,处理器380可集成应用处理器和调制解调处理器,其中,应用处理器主要处理操作系统、用户界面和应用程序等,调制解调处理器主要处理无线通信。可以理解的是,上述调制解调处理器也可以不集成到处理器380中。
手机还包括给各个部件供电的电源390(比如电池),可选的,电源可以通过电源管理系统与处理器380逻辑相连,从而通过电源管理系统实现管理充电、放电、以及功耗管理等功能。
尽管未示出,手机还可以包括摄像头、蓝牙模块等,在此不再赘述。
在本发明实施例中,该终端所包括的处理器380还具有以下功能:
若接收到服务器发送的对象控制指令,则根据所述对象控制指令从目标应用中获取交互帧数据,其中,所述对象控制指令中携带目标对象的标识;
通过对象控制模型获取所述交互帧数据所对应待处理数据,其中,所述对象控制模型为采用全局交互数据训练得到的;
采用数据处理框架对所述待处理数据进行处理,得到交互控制指令,其中,所述交互控制指令携带所述目标对象的标识,所述数据处理框架用于实现数据的稀疏卷积处理;
通过所述目标应用向所述服务器发送所述交互控制指令,以使所述服务器向至少一个终端设备发送所述交互控制指令,其中,所述交互控制指令用于指示所述至少一个终端设备在所述目标应用对所述目标对象进行控制。
可选地,在本发明实施例中,处理器380具体用于执行如下步骤:
通过所述对象控制模型获取第一交互帧数据所对应第一待处理数据,其中,所述第一交互帧数据对应于所述交互帧数据中的M帧数据,所述M为正整数;
通过所述对象控制模型获取第二交互帧数据所对应第二待处理数据,其中,所述第二交互帧数据对应于所述交互帧数据中的N帧数据,所述N为正整数,且所述N小于所述M;
采用所述数据处理框架对所述第一待处理数据进行处理,得到第一交互控制指令;
采用所述数据处理框架对所述第二待处理数据进行处理,得到第二交互控制指令。
可选地,在本发明实施例中,处理器380还用于执行如下步骤:
根据所述待处理数据提取操作特征信息,其中,所述操作特征信息包含第一特征元素集合以及第二特征元素集合,所述第一特征元素集合中的元素个数小于所述第二特征元素集合中的元素个数;
从所述操作特征信息中获取所述第一特征元素集合;
处理器380具体用于执行如下步骤:
根据所述第一特征元素集合生成深度图,其中,所述深度图包括多个边界元素以及多个内部元素;
针对所述多个边界元素中的每个边界元素,采用相邻的三个元素进行卷积计算,或,采用相邻的五个元素进行卷积计算,得到第一卷积结果;
针对所述多个内部元素中的每个内部元素,采用相邻的八个元素进行卷积计算,得到第二卷积结果;
根据所述第一卷积结果以及所述第二卷积结果生成目标卷积结果;
根据所述目标卷积结果生成所述交互控制指令。
可选地,在本发明实施例中,处理器380还用于执行如下步骤:
采用基于进阶精简指令集机ARM的指令集运行所述数据处理框架。
可选地,在本发明实施例中,处理器380具体用于执行如下步骤:
采用所述数据处理框架在寄存器中对所述待处理数据进行处理,得到待融合数据;
采用所述数据处理框架在内存中对所述待融合数据进行处理。
可选地,在本发明实施例中,处理器380具体用于执行如下步骤:
在所述寄存器中采用池化层以及卷积层对所述待处理数据进行处理,其中,所述池化层用于对所述待处理数据进行正则化处理以及池化处理,所述卷积层用于对所述待处理数据进行激活处理以及标准化处理。
可选地,在本发明实施例中,处理器380具体用于执行如下步骤:
在所述内存中采用全连接层对所述待融合数据进行处理,其中,所述待融合数据包括第一待融合数据以及第二待融合数据,所述全连接层用于拼接所述第一待融合数据以及所述第二待融合数据,并对所述第一待融合数据以及所述第二待融合数据进行融合处理。
可选地,在本发明实施例中,处理器380具体用于执行如下步骤:
从第一内存中获取所述待处理数据;
对所述待处理数据进行卷积处理,得到卷积处理结果,其中,所述卷积处理结果存储于第二内存,所述第二内存与所述第一内存属于预先分配的两个不同内存;
从所述第二内存中获取所述卷积处理结果;
对所述卷积处理结果进行数据融合处理,得到融合结果,其中,所述融合结果存储于所述第一内存。
可选地,在本发明实施例中,处理器380具体用于执行如下步骤:
对所述待处理数据进行卷积处理,得到卷积处理结果,其中,所述卷积处理结果存储于目标内存;
对所述待处理数据进行数据融合处理,得到第一融合结果,其中,所述第一融合结果存储于所述目标内存;
从所述目标内存中获取所述卷积处理结果以及所述第一融合结果;
对所述卷积处理结果以及所述第一融合结果进行数据融合处理,得到第二融合结果。
可选地,在本发明实施例中,处理器380具体用于执行如下步骤:
从目标内存中获取第一卷积处理结果;
对所述第一卷积处理结果进行融合处理,得到融合结果,和/或,对所述第一卷积处理结果进行卷积处理,得到第二卷积处理结果。
可选地,在本发明实施例中,处理器380还用于执行如下步骤:
获取终端设备的性能参数;
根据所述性能参数从预设框架匹配模板集合中选择目标匹配模板,其中,预设框架匹配模板集合包括至少一个匹配模板,每个匹配模板中包括所述数据处理框架所使用的参数;
所述采用数据处理框架对所述待处理数据进行处理,得到交互控制指令,包括:
根据所述目标匹配模板,采用所述数据处理框架对所述待处理数据进行处理,得到所述交互控制指令。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统,装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本发明所提供的几个实施例中,应该理解到,所揭露的系统,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(read-only memory,ROM)、随机存取存储器(random access memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。

Claims (14)

1.一种目标对象的控制方法,其特征在于,包括:
接收服务器发送的对象控制指令,根据所述对象控制指令从目标应用中获取交互帧数据,其中,所述对象控制指令中携带目标对象的标识;
通过对象控制模型获取所述交互帧数据所对应待处理数据;
采用数据处理框架对所述待处理数据进行处理,得到交互控制指令,其中,所述交互控制指令携带所述目标对象的标识,所述数据处理框架用于实现数据的稀疏卷积处理;其中,所述数据处理框架为预测框架;
通过所述目标应用向所述服务器发送所述交互控制指令,以使所述服务器向至少一个终端设备发送所述交互控制指令,其中,所述交互控制指令用于指示所述至少一个终端设备在所述目标应用对所述目标对象进行控制。
2.根据权利要求1所述的方法,其特征在于,所述通过对象控制模型获取所述交互帧数据所对应待处理数据,包括:
通过所述对象控制模型获取第一交互帧数据所对应第一待处理数据,其中,所述第一交互帧数据对应于所述交互帧数据中的M帧数据,所述M为正整数;
通过所述对象控制模型获取第二交互帧数据所对应第二待处理数据,其中,所述第二交互帧数据对应于所述交互帧数据中的N帧数据,所述N为正整数,且所述N小于所述M;
所述采用数据处理框架对所述待处理数据进行处理,得到交互控制指令,包括:
采用所述数据处理框架对所述第一待处理数据进行处理,得到第一交互控制指令;
采用所述数据处理框架对所述第二待处理数据进行处理,得到第二交互控制指令。
3.根据权利要求1所述的方法,其特征在于,所述通过对象控制模型获取所述交互帧数据所对应待处理数据之后,所述方法还包括:
根据所述待处理数据提取操作特征信息,其中,所述操作特征信息包含第一特征元素集合以及第二特征元素集合,所述第一特征元素集合中的元素个数小于所述第二特征元素集合中的元素个数;
从所述操作特征信息中获取所述第一特征元素集合;
所述采用数据处理框架对所述待处理数据进行处理,得到交互控制指令,包括:
根据所述第一特征元素集合生成深度图,其中,所述深度图包括多个边界元素以及多个内部元素;
针对所述多个边界元素中的每个边界元素,采用相邻的三个元素进行卷积计算,或,采用相邻的五个元素进行卷积计算,得到第一卷积结果;
针对所述多个内部元素中的每个内部元素,采用相邻的八个元素进行卷积计算,得到第二卷积结果;
根据所述第一卷积结果以及所述第二卷积结果生成目标卷积结果;
根据所述目标卷积结果生成所述交互控制指令。
4.根据权利要求1所述的方法,其特征在于,所述采用数据处理框架对所述待处理数据进行处理,得到交互控制指令之前,所述方法还包括:
采用基于进阶精简指令集机ARM的指令集运行所述数据处理框架。
5.根据权利要求1至4中任一项所述的方法,其特征在于,所述采用数据处理框架对所述待处理数据进行处理,包括:
采用所述数据处理框架在寄存器中对所述待处理数据进行处理,得到待融合数据;
采用所述数据处理框架在内存中对所述待融合数据进行处理。
6.根据权利要求5所述的方法,其特征在于,所述采用所述数据处理框架在寄存器中对所述待处理数据进行处理,得到待融合数据,包括:
在所述寄存器中采用池化层以及卷积层对所述待处理数据进行处理,其中,所述池化层用于对所述待处理数据进行正则化处理以及池化处理,所述卷积层用于对所述待处理数据进行激活处理以及标准化处理。
7.根据权利要求5所述的方法,其特征在于,所述采用所述数据处理框架在内存中对所述待融合数据进行处理,包括:
在所述内存中采用全连接层对所述待融合数据进行处理,其中,所述待融合数据包括第一待融合数据以及第二待融合数据,所述全连接层用于拼接所述第一待融合数据以及所述第二待融合数据,并对所述第一待融合数据以及所述第二待融合数据进行融合处理。
8.根据权利要求1至4中任一项所述的方法,其特征在于,所述采用数据处理框架对所述待处理数据进行处理,包括:
从第一内存中获取所述待处理数据;
对所述待处理数据进行卷积处理,得到卷积处理结果,其中,所述卷积处理结果存储于第二内存,所述第二内存与所述第一内存属于预先分配的两个不同内存;
从所述第二内存中获取所述卷积处理结果;
对所述卷积处理结果进行数据融合处理,得到融合结果,其中,所述融合结果存储于所述第一内存。
9.根据权利要求1至4中任一项所述的方法,其特征在于,所述采用数据处理框架对所述待处理数据进行处理,包括:
对所述待处理数据进行卷积处理,得到卷积处理结果,其中,所述卷积处理结果存储于目标内存;
对所述待处理数据进行数据融合处理,得到第一融合结果,其中,所述第一融合结果存储于所述目标内存;
从所述目标内存中获取所述卷积处理结果以及所述第一融合结果;
对所述卷积处理结果以及所述第一融合结果进行数据融合处理,得到第二融合结果。
10.根据权利要求1至4中任一项所述的方法,其特征在于,所述采用数据处理框架对所述待处理数据进行处理,包括:
对所述待处理数据进行卷积处理,得到卷积处理结果,其中,所述卷积处理结果存储于目标内存;
从所述目标内存中获取第一卷积处理结果;
对所述第一卷积处理结果进行融合处理,得到融合结果,和/或,对所述第一卷积处理结果进行卷积处理,得到第二卷积处理结果。
11.根据权利要求1所述的方法,其特征在于,所述根据所述对象控制指令从目标应用中获取交互帧数据之前,所述方法还包括:
获取终端设备的性能参数;
根据所述性能参数从预设框架匹配模板集合中选择目标匹配模板,其中,预设框架匹配模板集合包括至少一个匹配模板,每个匹配模板中包括所述数据处理框架所使用的参数;
所述采用数据处理框架对所述待处理数据进行处理,得到交互控制指令,包括:
根据所述目标匹配模板,采用所述数据处理框架对所述待处理数据进行处理,得到所述交互控制指令。
12.一种目标对象的控制装置,其特征在于,包括:
获取模块,用于接收服务器发送的对象控制指令,根据所述对象控制指令从目标应用中获取交互帧数据,其中,所述对象控制指令中携带目标对象的标识;
所述获取模块,还用于通过对象控制模型获取所述交互帧数据所对应待处理数据;
处理模块,用于采用数据处理框架对所述获取模块获取的所述待处理数据进行处理,得到交互控制指令,其中,所述交互控制指令携带所述目标对象的标识,所述数据处理框架用于实现数据的稀疏卷积处理;其中,所述数据处理框架为预测框架;
发送模块,用于通过所述目标应用向所述服务器发送所述处理模块处理得到的所述交互控制指令,以使所述服务器向至少一个终端设备发送所述交互控制指令,其中,所述交互控制指令用于指示所述至少一个终端设备在所述目标应用对所述目标对象进行控制。
13.一种终端设备,其特征在于,所述终端设备包括:存储器、收发器、处理器以及总线系统;
其中,所述存储器用于存储程序;
所述处理器用于执行所述存储器中的程序,包括如下步骤:
接收服务器发送的对象控制指令,根据所述对象控制指令从目标应用中获取交互帧数据,其中,所述对象控制指令中携带目标对象的标识;
通过对象控制模型获取所述交互帧数据所对应待处理数据;
采用数据处理框架对所述待处理数据进行处理,得到交互控制指令,其中,所述交互控制指令携带所述目标对象的标识,所述数据处理框架用于实现数据的稀疏卷积处理;其中,所述数据处理框架为预测框架;
通过所述目标应用向所述服务器发送所述交互控制指令,以使所述服务器向至少一个终端设备发送所述交互控制指令,其中,所述交互控制指令用于指示所述至少一个终端设备在所述目标应用对所述目标对象进行控制;
所述总线系统用于连接所述存储器以及所述处理器,以使所述存储器以及所述处理器进行通信。
14.根据权利要求13所述的终端设备,其特征在于,所述处理器具体用于执行如下步骤:
通过所述对象控制模型获取第一交互帧数据所对应第一待处理数据,其中,所述第一交互帧数据对应于所述交互帧数据中的M帧数据,所述M为正整数;
通过所述对象控制模型获取第二交互帧数据所对应第二待处理数据,其中,所述第二交互帧数据对应于所述交互帧数据中的N帧数据,所述N为正整数,且所述N小于所述M;
采用所述数据处理框架对所述第一待处理数据进行处理,得到第一交互控制指令;
采用所述数据处理框架对所述第二待处理数据进行处理,得到第二交互控制指令。
CN201811448777.9A 2018-11-28 2018-11-28 一种目标对象的控制方法、装置及设备 Active CN109550249B (zh)

Priority Applications (5)

Application Number Priority Date Filing Date Title
CN201811448777.9A CN109550249B (zh) 2018-11-28 2018-11-28 一种目标对象的控制方法、装置及设备
EP19888588.1A EP3888769A4 (en) 2019-11-25 Control method for target object, apparatus, device, and storage medium
JP2021505235A JP7257497B2 (ja) 2018-11-28 2019-11-25 目標オブジェクトの制御方法、装置、機器及びプログラム
PCT/CN2019/120741 WO2020108457A1 (zh) 2018-11-28 2019-11-25 目标对象的控制方法、装置、设备及存储介质
US17/191,056 US11351458B2 (en) 2018-11-28 2021-03-03 Method for controlling target object, apparatus, device, and storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201811448777.9A CN109550249B (zh) 2018-11-28 2018-11-28 一种目标对象的控制方法、装置及设备

Publications (2)

Publication Number Publication Date
CN109550249A CN109550249A (zh) 2019-04-02
CN109550249B true CN109550249B (zh) 2022-04-29

Family

ID=65868075

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201811448777.9A Active CN109550249B (zh) 2018-11-28 2018-11-28 一种目标对象的控制方法、装置及设备

Country Status (4)

Country Link
US (1) US11351458B2 (zh)
JP (1) JP7257497B2 (zh)
CN (1) CN109550249B (zh)
WO (1) WO2020108457A1 (zh)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10888788B2 (en) * 2016-06-30 2021-01-12 Sony Interactive Entertainment Inc. Automated artificial intelligence (AI) control mode for playing specific tasks during gaming applications
CN109550249B (zh) * 2018-11-28 2022-04-29 腾讯科技(深圳)有限公司 一种目标对象的控制方法、装置及设备
CN110064205B (zh) * 2019-04-24 2023-02-17 腾讯科技(深圳)有限公司 用于游戏的数据处理方法、设备和介质
CN110263670A (zh) * 2019-05-30 2019-09-20 湖南城市学院 一种面部局部特征分析系统
CN110333827B (zh) * 2019-07-11 2023-08-08 山东浪潮科学研究院有限公司 一种数据加载装置和数据加载方法
CN111459626B (zh) * 2020-03-11 2021-06-01 完美世界(北京)软件科技发展有限公司 一种用于实现不分线无缝游戏世界的方法和装置
CN113761045B (zh) * 2021-09-03 2024-03-26 中国人民解放军63920部队 航天器上行控制数据生成方法及装置

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108057249A (zh) * 2017-11-29 2018-05-22 腾讯科技(成都)有限公司 一种业务数据处理方法和装置
CN108197705A (zh) * 2017-12-29 2018-06-22 国民技术股份有限公司 卷积神经网络硬件加速装置及卷积计算方法及存储介质
CN108229360A (zh) * 2017-12-26 2018-06-29 美的集团股份有限公司 一种图像处理的方法、设备及存储介质
CN108283809A (zh) * 2018-02-11 2018-07-17 腾讯科技(深圳)有限公司 数据处理方法、装置、计算机设备和存储介质
CN108537331A (zh) * 2018-04-04 2018-09-14 清华大学 一种基于异步逻辑的可重构卷积神经网络加速电路
CN108734272A (zh) * 2017-04-17 2018-11-02 英特尔公司 卷积神经网络优化机构
CN108805276A (zh) * 2017-06-16 2018-11-13 上海兆芯集成电路有限公司 处理器、用于操作处理器的方法和计算机可用介质
CN108888958A (zh) * 2018-06-22 2018-11-27 深圳市腾讯网络信息技术有限公司 虚拟场景中的虚拟对象控制方法、装置、设备及存储介质

Family Cites Families (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7260560B2 (en) * 2003-06-30 2007-08-21 Microsoft Corporation Modified motion control for a virtual reality environment
US7584082B2 (en) * 2003-08-07 2009-09-01 The Mathworks, Inc. Synchronization and data review system
US7440447B2 (en) * 2004-03-25 2008-10-21 Aiseek Ltd. Techniques for path finding and terrain analysis
JP2006212288A (ja) * 2005-02-04 2006-08-17 Konami Digital Entertainment:Kk 不正行為防止方法、ゲーム装置及び不正行為防止プログラム
US8142268B2 (en) * 2005-04-13 2012-03-27 Take Two Interactive Software, Inc. Systems and methods for simulating a particular user in an interactive computer system
US8016664B2 (en) 2005-04-13 2011-09-13 Take Two Interactive Software, Inc. Systems and methods for simulating a particular user in an interactive computer system
US7953521B2 (en) * 2005-12-30 2011-05-31 Microsoft Corporation Learning controller for vehicle control
JP3954630B1 (ja) * 2006-03-27 2007-08-08 株式会社コナミデジタルエンタテインメント ゲーム装置、ゲーム装置の制御方法及びプログラム
US8069124B2 (en) * 2008-03-26 2011-11-29 Intel Corporation Combining speculative physics modeling with goal-based artificial intelligence
US8366526B2 (en) * 2010-04-16 2013-02-05 Disney Enterprises, Inc. Power play game mechanics
US9132839B1 (en) * 2014-10-28 2015-09-15 Nissan North America, Inc. Method and system of adjusting performance characteristic of vehicle control system
US9248819B1 (en) * 2014-10-28 2016-02-02 Nissan North America, Inc. Method of customizing vehicle control system
JP5887458B1 (ja) * 2015-11-04 2016-03-16 株式会社Cygames プレイヤの移動履歴に基づいてノンプレイヤキャラクタの経路探索を行うゲームシステム等
US10997496B2 (en) * 2016-08-11 2021-05-04 Nvidia Corporation Sparse convolutional neural network accelerator
US10891538B2 (en) * 2016-08-11 2021-01-12 Nvidia Corporation Sparse convolutional neural network accelerator
US11321613B2 (en) * 2016-11-17 2022-05-03 Irida Labs S.A. Parsimonious inference on convolutional neural networks
US10096134B2 (en) * 2017-02-01 2018-10-09 Nvidia Corporation Data compaction and memory bandwidth reduction for sparse neural networks
US10512846B2 (en) 2017-03-07 2019-12-24 Sony Interactive Entertainment LLC Emulating player behavior after player departure
US11061402B2 (en) * 2017-11-15 2021-07-13 Uatc, Llc Sparse convolutional neural networks
US11176439B2 (en) * 2017-12-01 2021-11-16 International Business Machines Corporation Convolutional neural network with sparse and complementary kernels
CN109550249B (zh) * 2018-11-28 2022-04-29 腾讯科技(深圳)有限公司 一种目标对象的控制方法、装置及设备
US11188744B2 (en) * 2019-03-15 2021-11-30 Microsoft Technology Licensing, Llc Spatially sparse convolutional neural networks for inking applications

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108734272A (zh) * 2017-04-17 2018-11-02 英特尔公司 卷积神经网络优化机构
CN108805276A (zh) * 2017-06-16 2018-11-13 上海兆芯集成电路有限公司 处理器、用于操作处理器的方法和计算机可用介质
CN108057249A (zh) * 2017-11-29 2018-05-22 腾讯科技(成都)有限公司 一种业务数据处理方法和装置
CN108229360A (zh) * 2017-12-26 2018-06-29 美的集团股份有限公司 一种图像处理的方法、设备及存储介质
CN108197705A (zh) * 2017-12-29 2018-06-22 国民技术股份有限公司 卷积神经网络硬件加速装置及卷积计算方法及存储介质
CN108283809A (zh) * 2018-02-11 2018-07-17 腾讯科技(深圳)有限公司 数据处理方法、装置、计算机设备和存储介质
CN108537331A (zh) * 2018-04-04 2018-09-14 清华大学 一种基于异步逻辑的可重构卷积神经网络加速电路
CN108888958A (zh) * 2018-06-22 2018-11-27 深圳市腾讯网络信息技术有限公司 虚拟场景中的虚拟对象控制方法、装置、设备及存储介质

Also Published As

Publication number Publication date
JP7257497B2 (ja) 2023-04-13
US11351458B2 (en) 2022-06-07
CN109550249A (zh) 2019-04-02
US20210187394A1 (en) 2021-06-24
JP2021531907A (ja) 2021-11-25
EP3888769A1 (en) 2021-10-06
WO2020108457A1 (zh) 2020-06-04

Similar Documents

Publication Publication Date Title
CN109550249B (zh) 一种目标对象的控制方法、装置及设备
CN107944555B (zh) 神经网络压缩和加速的方法、存储设备和终端
CN110515626B (zh) 深度学习计算框架的代码编译方法及相关产品
CN110069715B (zh) 一种信息推荐模型训练的方法、信息推荐的方法及装置
CN110232696A (zh) 一种图像区域分割的方法、模型训练的方法及装置
CN110163367B (zh) 一种终端部署方法和装置
CN111383309B (zh) 一种骨骼动画驱动方法、装置及存储介质
CN112052841B (zh) 一种视频摘要的生成方法以及相关装置
CN110210605B (zh) 硬件算子匹配方法及相关产品
CN109375907B (zh) 审核流程开发方法、业务审核方法、装置、设备及介质
CN110738211A (zh) 一种对象检测的方法、相关装置以及设备
CN113018848B (zh) 一种游戏画面的显示方法、相关装置、设备以及存储介质
CN111612093A (zh) 一种视频分类方法、视频分类装置、电子设备及存储介质
CN113284142B (zh) 图像检测方法、装置、计算机可读存储介质及计算机设备
CN110704661A (zh) 一种图像分类方法和装置
CN108671541B (zh) 一种数据存储方法和装置以及存储介质
CN104657203A (zh) 任务执行方法、装置和系统
CN110555337A (zh) 一种指示对象的检测方法、装置以及相关设备
CN110955510B (zh) 一种隔离处理方法以及相关装置
CN110874128A (zh) 可视化数据处理方法和电子设备
CN107133085B (zh) 优化oat中冗余指令的方法及移动终端
CN112748899A (zh) 一种数据处理方法和相关设备
CN106709856B (zh) 一种图形渲染方法及相关设备
CN116450808B (zh) 一种数据的处理方法、装置以及存储介质
CN113296664A (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
GR01 Patent grant
GR01 Patent grant