CN110465089B - 基于图像识别的地图探索方法、装置、介质及电子设备 - Google Patents
基于图像识别的地图探索方法、装置、介质及电子设备 Download PDFInfo
- Publication number
- CN110465089B CN110465089B CN201910691287.XA CN201910691287A CN110465089B CN 110465089 B CN110465089 B CN 110465089B CN 201910691287 A CN201910691287 A CN 201910691287A CN 110465089 B CN110465089 B CN 110465089B
- Authority
- CN
- China
- Prior art keywords
- game
- map
- explored
- target object
- position point
- 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
Links
Images
Classifications
-
- 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
- A63F13/00—Video games, i.e. games using an electronically generated display having two or more dimensions
- A63F13/55—Controlling game characters or game objects based on the game progress
- A63F13/56—Computing the motion of game characters with respect to other game characters, game objects or elements of the game scene, e.g. for simulating the behaviour of a group of virtual soldiers or for path finding
-
- 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
- A63F2300/00—Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
- A63F2300/80—Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game specially adapted for executing a specific type of game
- A63F2300/807—Role playing or strategy games
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Theoretical Computer Science (AREA)
- Human Computer Interaction (AREA)
- Processing Or Creating Images (AREA)
Abstract
本公开提供了一种基于图像识别的地图探索方法、装置、介质以及电子设备。该方法包括:从运行目标游戏的终端设备处获取待探索的游戏地图的地图图像;确定目标对象在地图图像中的当前位置点,并确定地图图像中的待探索位置点;根据当前位置点和待探索位置点确定目标对象在目标游戏中的移动路径,并根据移动路径生成用于控制目标对象移动的模拟触控指令;将模拟触控指令发送至终端设备,以由终端设备控制目标对象沿移动路径移动至待探索位置点;当目标对象到达待探索位置点时,将待探索位置点作为目标对象的当前位置点并继续确定新的待探索位置点以控制目标对象探索游戏地图。该方法可以提高游戏地图探索和检测的效率和准确度。
Description
技术领域
本公开涉及计算机技术领域,具体而言,涉及一种基于图像识别的地图探索方法、基于图像识别的地图探索装置、计算机可读介质以及电子设备。
背景技术
游戏地图的设计和制作是游戏开发中的重要组成部分,如果游戏地图中存在过多的地图缺陷,将对游戏玩家的游戏体验带来极差的影响。
为了提高游戏地图的完整度和可玩性,游戏开发人员或者检测人员需要对新制作完成的游戏地图进行检测,以便尽早发现地图制作缺陷。现有的游戏地图检测方法一般是由相关人员在实际游戏运行中控制游戏角色在游戏地图中随机探索和移动,这种检测方法不仅需要花费大量的人力成本,而且其探索过程存在极大的偶然性,难以获得可靠的检测结果。
需要说明的是,在上述背景技术部分公开的信息仅用于加强对本申请的背景的理解,因此可以包括不构成对本领域普通技术人员已知的现有技术的信息。
发明内容
本公开的目的在于提供一种基于图像识别的地图探索方法、基于图像识别的地图探索装置、计算机可读介质以及电子设备,进而至少在一定程度上克服游戏地图检测过程中存在的检测成本高、可靠性差等技术问题。
本公开的其他特性和优点将通过下面的详细描述变得显然,或部分地通过本公开的实践而习得。
根据本公开实施例的一个方面,提供一种基于图像识别的地图探索方法,该方法包括:从运行目标游戏的终端设备处获取待探索的游戏地图的地图图像;确定目标对象在所述地图图像中的当前位置点,并确定所述地图图像中的待探索位置点;根据所述当前位置点和所述待探索位置点确定所述目标对象在所述目标游戏中的移动路径,并根据所述移动路径生成用于控制所述目标对象移动的模拟触控指令;将所述模拟触控指令发送至所述终端设备,以由所述终端设备控制所述目标对象沿所述移动路径移动至所述待探索位置点;当所述目标对象到达所述待探索位置点时,将所述待探索位置点作为所述目标对象的当前位置点并继续确定新的待探索位置点以控制所述目标对象探索所述游戏地图。
根据本公开实施例的一个方面,提供一种基于图像识别的地图探索装置,该装置包括:图像获取模块,被配置为从运行目标游戏的终端设备处获取待探索的游戏地图的地图图像;位置点确定模块,被配置为确定目标对象在所述地图图像中的当前位置点,并确定所述地图图像中的待探索位置点;指令生成模块,被配置为根据所述当前位置点和所述待探索位置点确定所述目标对象在所述目标游戏中的移动路径,并根据所述移动路径生成用于控制所述目标对象移动的模拟触控指令;对象移动模块,被配置为将所述模拟触控指令发送至所述终端设备,以由所述终端设备控制所述目标对象沿所述移动路径移动至所述待探索位置点;地图探索模块,被配置为当所述目标对象到达所述待探索位置点时,将所述待探索位置点作为所述目标对象的当前位置点并继续确定新的待探索位置点以控制所述目标对象探索所述游戏地图。
在本公开的一些实施例中,基于以上技术方案,所述图像获取模块包括:游戏画面获取单元,被配置为从运行目标游戏的终端设备处获取所述目标游戏的当前游戏画面;地图图像获取单元,被配置为从所述当前游戏画面中识别得到待探索的游戏地图,并获取所述游戏地图的地图图像。
在本公开的一些实施例中,基于以上技术方案,所述位置点确定模块包括:对象标识确定单元,被配置为确定所述目标对象在所述地图图像中的对象标识;标识位置点确定单元,被配置为获取所述对象标识的标识特征信息,并根据所述标识特征信息确定所述地图图像中的多个标识位置点;当前位置点确定单元,被配置为根据所述多个标识位置点的位置信息确定所述目标对象在所述地图图像中的当前位置点。
在本公开的一些实施例中,基于以上技术方案,所述位置点确定模块还包括:搜索区域确定单元,被配置为根据所述目标对象的当前位置点确定所述地图图像中的当前搜索区域;未探索位置搜索单元,被配置为确定位于所述当前搜索区域中的可到达区域,并在所述可到达区域内搜索未探索位置;待探索位置点确定单元,被配置为当所述可到达区域内存在未探索位置时,将所述未探索位置确定为待探索位置点;搜索区域扩大单元,被配置为当所述可到达区域内均为已探索位置时,扩大所述当前搜索区域并继续搜索未探索位置以确定待探索位置点。
在本公开的一些实施例中,基于以上技术方案,所述装置还包括:游戏画面获取模块,被配置为当所述终端设备控制所述目标对象沿所述移动路径移动时,实时获取所述目标游戏的游戏画面;相似度确定模块,被配置为比较所述目标游戏在当前时刻的当前时刻游戏画面和预设时长之前的历史时刻游戏画面以确定两个游戏画面的相似度;卡位判断模块,被配置为当所述相似度大于预设阈值时,判定所述目标对象卡在当前移动位置;卡位移动模块,被配置为向卡在当前移动位置的所述目标对象发送卡位移动指令,以控制所述目标对象移动至除所述当前移动位置之外的其他位置;位置更新模块,被配置为重新确定所述目标对象的当前位置点和所述地图图像中的待探索位置点,以控制所述目标对象继续探索所述游戏地图。
在本公开的一些实施例中,基于以上技术方案,所述相似度确定模块包括:当前图像预处理单元,被配置为对所述目标游戏在当前时刻的当前时刻游戏画面做灰度化处理和尺寸缩放处理后得到当前预处理画面;历史图像预处理单元,被配置为对所述目标游戏在预设时长之前的历史时刻游戏画面做灰度化处理和尺寸缩放处理后得到历史预处理画面;相似度确定单元,被配置为比较所述当前预处理画面和所述历史预处理画面以确定两个游戏画面的相似度。
在本公开的一些实施例中,基于以上技术方案,所述装置还包括:可探索区域确定模块,被配置为确定所述地图图像中的可探索区域和不可探索区域;已探索区域确定模块,被配置为确定由已探索位置点组成的所述地图图像中的已探索区域;异常位置点确定模块,被配置为比较所述可探索区域和所述已探索区域以确定所述地图图像中的异常位置点。
根据本公开实施例的一个方面,提供一种计算机可读介质,其上存储有计算机程序,该计算机程序被处理器执行时实现如以上技术方案中的基于图像识别的地图探索方法。
根据本公开实施例的一个方面,提供一种电子设备,该电子设备包括:处理器;以及存储器,用于存储所述处理器的可执行指令;其中,所述处理器被配置为经由执行所述可执行指令来执行如以上技术方案中的基于图像识别的地图探索方法。
在本公开实施例提供的技术方案中,通过从运行目标游戏的终端设备处获取游戏地图的地图图像,并向其返回模拟触控指令,可以控制目标对象自动化地完成对游戏地图的探索,整个探索过程无需过多的人为干预,而且也不需要通过API接口获取游戏内部数据,探索过程简单高效,降低了游戏地图探索和检测的人工成本,并提高了游戏地图探索和检测的效率和准确度。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理。显而易见地,下面描述中的附图仅仅是本公开的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。在附图中:
图1示意性地示出了应用本公开技术方案的示例性系统架构示意图;
图2示意性地示出了本公开技术方案的基本原理示意图;
图3示意性地示出了一种包括地图区域和触控区域的游戏画面示意图;
图4示意性地示出了一种游戏地图的地图图像的区域分布示意图;
图5示意性地示出了本公开的一些实施例中基于图像识别的地图探索方法的步骤流程图;
图6示意性地示出了在本公开的一些实施例中获取地图图像的步骤流程图;
图7示意性地示出了在本公开的一些实施例中确定目标对象的当前位置点的步骤流程图;
图8示意性地示出了在本公开的一些实施例中确定待探索位置点的步骤流程图;
图9示意性地示出了在本公开的一些实施例中处理目标对象位置卡住的步骤流程图;
图10示意性地示出了在本公开的一些实施例中基于图像预处理确定游戏画面相似度的步骤流程图;
图11示意性地示出了在本公开的一些实施例中对游戏地图进行异常检测的步骤流程图;
图12示意性地示出了本公开实施例在一应用场景中的游戏地图探索流程示意图;
图13示意性地示出了带有角色位置点标识的地图图像示意图;
图14示意性地示出了搜索未探索位置点时的地图图像示意图;
图15示意性地示出了通过寻路算法得到的路径点分布示意图;
图16示意性地示出了卡位情况下不同时刻的游戏画面示意图;
图17示意性地示出了带有异常位置的地图图像示意图;
图18示意性地示出了在本公开一些实施例中的基于图像识别的地图探索装置的结构框图;
图19示意性地示出了适于用来实现本公开实施例的电子设备的计算机系统的结构示意图。
具体实施方式
现在将参考附图更全面地描述示例实施方式。然而,示例实施方式能够以多种形式实施,且不应被理解为限于在此阐述的范例;相反,提供这些实施方式使得本公开将更加全面和完整,并将示例实施方式的构思全面地传达给本领域的技术人员。
此外,所描述的特征、结构或特性可以以任何合适的方式结合在一个或更多实施例中。在下面的描述中,提供许多具体细节从而给出对本公开的实施例的充分理解。然而,本领域技术人员将意识到,可以实践本公开的技术方案而没有特定细节中的一个或更多,或者可以采用其它的方法、组元、装置、步骤等。在其它情况下,不详细示出或描述公知方法、装置、实现或者操作以避免模糊本公开的各方面。
附图中所示的方框图仅仅是功能实体,不一定必须与物理上独立的实体相对应。即,可以采用软件形式来实现这些功能实体,或在一个或多个硬件模块或集成电路中实现这些功能实体,或在不同网络和/或处理器装置和/或微控制器装置中实现这些功能实体。
附图中所示的流程图仅是示例性说明,不是必须包括所有的内容和操作/步骤,也不是必须按所描述的顺序执行。例如,有的操作/步骤还可以分解,而有的操作/步骤可以合并或部分合并,因此实际执行的顺序有可能根据实际情况改变。
在本领域的相关技术中,游戏地图中一般或多或少地都会存在一些地址制作缺陷,例如“空气墙”、“穿墙”等等。“空气墙”是指游戏地图中标示游戏角色可以到达某一区域,而实际上由于游戏地图制作缺陷,游戏角色无法达到该区域。“穿墙”是指游戏地图中标示角色无法到达某一区域,而实际上由于游戏地图制作缺陷,游戏角色能够到达该区域。为了对游戏地图的制作缺陷进行检测,一般需要对游戏地图进行探索。对于通过人工控制游戏角色在游戏地图中随机探索的方法而言,由于游戏地图区域范围较大,人工探索地图不仅需要耗费较多人力,而且难以覆盖游戏地图中的所有区域,更加难以发现“空气墙”、“穿墙”等直观表现不明显的地图缺陷。而采用通过应用程序编程接口(ApplicationProgramming Interface,API)直接获取游戏内部数据的方法虽然可以提高地图检测效果,但是仍然存在专业化程度高、检测过程复杂等缺陷。
基于以上方案存在的问题,本公开提供了一种利用人工智能技术实现的基于图像识别的游戏地图探索方法、基于图像识别的游戏地图探索装置、计算机可读介质以及电子设备。
人工智能(Artificial Intelligence,AI)是利用数字计算机或者数字计算机控制的机器模拟、延伸和扩展人的智能,感知环境、获取知识并使用知识获得最佳结果的理论、方法、技术及应用系统。换句话说,人工智能是计算机科学的一个综合技术,它企图了解智能的实质,并生产出一种新的能以人类智能相似的方式做出反应的智能机器。人工智能也就是研究各种智能机器的设计原理与实现方法,使机器具有感知、推理与决策的功能。
人工智能技术是一门综合学科,涉及领域广泛,既有硬件层面的技术也有软件层面的技术。人工智能基础技术一般包括如传感器、专用人工智能芯片、云计算、分布式存储、大数据处理技术、操作/交互系统、机电一体化等技术。人工智能软件技术主要包括计算机视觉技术、语音处理技术、自然语言处理技术以及机器学习/深度学习等几大方向。
计算机视觉技术(Computer Vision,CV)计算机视觉是一门研究如何使机器“看”的科学,更进一步的说,就是指用摄影机和电脑代替人眼对目标进行识别、跟踪和测量等机器视觉,并进一步做图形处理,使电脑处理成为更适合人眼观察或传送给仪器检测的图像。作为一个科学学科,计算机视觉研究相关的理论和技术,试图建立能够从图像或者多维数据中获取信息的人工智能系统。计算机视觉技术通常包括图像处理、图像识别、图像语义理解、图像检索、OCR、视频处理、视频语义理解、视频内容/行为识别、三维物体重建、3D技术、虚拟现实、增强现实、同步定位与地图构建等技术,还包括常见的人脸识别、指纹识别等生物特征识别技术。
语音技术(Speech Technology)的关键技术有自动语音识别技术(ASR)和语音合成技术(TTS)以及声纹识别技术。让计算机能听、能看、能说、能感觉,是未来人机交互的发展方向,其中语音成为未来最被看好的人机交互方式之一。
自然语言处理(Nature Language processing,NLP)是计算机科学领域与人工智能领域中的一个重要方向。它研究能实现人与计算机之间用自然语言进行有效通信的各种理论和方法。自然语言处理是一门融语言学、计算机科学、数学于一体的科学。因此,这一领域的研究将涉及自然语言,即人们日常使用的语言,所以它与语言学的研究有着密切的联系。自然语言处理技术通常包括文本处理、语义理解、机器翻译、机器人问答、知识图谱等技术。
机器学习(Machine Learning,ML)是一门多领域交叉学科,涉及概率论、统计学、逼近论、凸分析、算法复杂度理论等多门学科。专门研究计算机怎样模拟或实现人类的学习行为,以获取新的知识或技能,重新组织已有的知识结构使之不断改善自身的性能。机器学习是人工智能的核心,是使计算机具有智能的根本途径,其应用遍及人工智能的各个领域。机器学习和深度学习通常包括人工神经网络、置信网络、强化学习、迁移学习、归纳学习、式教学习等技术。
利用计算机视觉技术对游戏地图的地图图像进行图像识别,可以避免获取游戏底层数据,降低时间成本和计算成本,提高游戏地图探索效率。
图1示出了应用本公开技术方案的示例性系统架构示意图。
如图1所示,系统架构100可以包括客户端110、网络120和服务端130。客户端110可以包括手机、电脑等各种终端设备。服务端130可以包括网络服务器、应用服务器、数据库服务器等各种服务器设备。网络120可以是能够在客户端110和服务端130之间提供通信链路的各种连接类型的通信介质,例如可以是有线通信链路、无线通信链路或者光纤电缆等等。
根据实现需要,本公开实施例中的系统架构可以具有任意数目的客户端、网络和服务端。例如,服务端130可以是由多个服务器设备组成的服务器群组。另外,本公开实施例中的基于图像识别的地图探索方法可以应用于客户端110,也可以应用于服务端130,本公开对此不做特殊限定。
图2示出了本公开技术方案的基本原理示意图。如图2所示,本公开技术方案中主要涉及智能探索客户端210(AI Client)和智能探索工具220(AI SDK)两个部分。
智能探索客户端210可以从运行目标游戏的终端设备230处获取游戏地图的地图图像,并将地图图像转发给智能探索工具220。图3中位于游戏画面左上角的地图区域310中显示的即为游戏地图的地图图像。在将地图图像转发给智能探索工具220之后,智能探索客户端210可以从智能探索工具220处获取探索地图操作,并将探索地图操作转化为模拟触控指令输出至终端设备230。终端设备230可以根据模拟触控指令控制游戏角色移动,产生与游戏玩家真实触控操作相同的触控效果。图3中位于游戏画面左下角的触控区域320显示了模拟触控指令产生的触控效果。
智能探索工具220根据智能探索客户端210为其转发的游戏地图的地图图像,可以搜索地图图像中的未探索位置点,以游戏角色的当前位置为起点,未探索位置点为终点,获取两点间的路径,然后按此路径生成控制游戏角色向未探索点移动的探索地图操作。探索地图操作被发送至智能探索客户端210,进而可以由智能探索客户端210向终端设备230输出模拟触控指令,以便控制游戏角色对游戏地图进行自动探索。自动探索过程中会记录已探索过的位置点和未探索的位置点。图4示出了在游戏地图的地图图像中分布的障碍物区域410、已探索区域420和未探索区域430。在模拟触控指令的控制下,游戏角色将对未探索区域430进行自动探索。
在一些可选的实施方式中,智能探索客户端210和智能探索工具220可以共同布设在客户端110上,或者可以共同布设在服务端130上。在其他一些实施方式中,可以将智能探索客户端210布设在客户端110上,同时将智能探索工具220布设在服务端130上。另外,在计算能力允许的情况下,智能探索客户端210也可以直接布设在运行目标游戏的终端设备230上。
下面结合具体实施方式对本公开提供的基于图像识别的地图探索方法、基于图像识别的地图探索装置、计算机可读介质以及电子设备做出详细说明。
图5示意性地示出了本公开的一些实施例中基于图像识别的地图探索方法的步骤流程图。如图5所示,该方法主要可以包括以下步骤:
步骤S510.从运行目标游戏的终端设备处获取待探索的游戏地图的地图图像。
通过与运行目标游戏的终端设备进行数据通信可以确定目标游戏中的待探索的游戏地图,进而可以获取该游戏地图的地图图像。该地图图像可以是如图3所示的直接显示在游戏画面中的图像;该地图图像也可以在游戏过程中处于显示和隐藏状态,当接收到触发操作后而以窗口或者浮层等方式显示在游戏画面中。
步骤S520.确定目标对象在地图图像中的当前位置点,并确定地图图像中的待探索位置点。
为了便于游戏用户确定目标对象(如游戏角色)在整体游戏环境中所处的位置,在游戏地图的地图图像中一般会对目标对象的位置进行标注,该标注也会根据目标对象在游戏场景内的移动情况而在游戏地图中实时移动。本步骤可以基于标注位置确定目标对象在地图图像中的当前位置点,同时本步骤还将确定该地图图像中的待探索位置点,待探索位置点可以是地图图像中一个目标对象可以到达的且没有经过探索的位置点。
步骤S530.根据当前位置点和待探索位置点确定目标对象在目标游戏中的移动路径,并根据移动路径生成用于控制目标对象移动的模拟触控指令。
以目标对象的当前位置点为移动起点,并以待探索位置点为移动终点,可以确定目标对象在目标游戏中的移动路径,然后根据该移动路径可以生成用于控制目标对象移动的模拟触控指令。例如,本步骤中确定的移动路径是先向左侧移动一定距离后再向上方移动一定距离,那么所生成的模拟触控指令可以用于模拟先向左滑动后向上滑动的触控操作。
步骤S540.将模拟触控指令发送至终端设备,以由终端设备控制目标对象沿移动路径移动至待探索位置点。
由步骤S530生成模拟触控指令后,该指令将被发送至运行目标游戏的终端设备上,终端设备根据接收到的模拟触控指令可以模拟由游戏用户触发的触控操作,从而能够控制目标对象沿移动路径移动至待探索位置点。
步骤S550.当目标对象到达待探索位置点时,将待探索位置点作为目标对象的当前位置点并继续确定新的待探索位置点以控制目标对象探索游戏地图。
基于终端设备对目标对象的移动控制,当目标对象移动到达待探索位置点时,便完成了一次探索过程,在该探索过程中目标对象移动经过的每一个位置点都将被记录为已探索区域。在目标对象抵达一个待探索位置点后,可以将该待探索位置点作为目标对象的新的当前位置点,同时可以在地图图像的未探索区域中再次确定新的待探索位置点,继续执行步骤S530和步骤S540后便完成了一个新的探索过程。不断重复执行以上步骤便可以不断扩大地图图像中的已探索区域,直至完成对地图图像中的大多数甚至全部的未探索区域的探索过程。
在本公开实施例提供的基于图像识别的地图探索方法中,通过从运行目标游戏的终端设备处获取游戏地图的地图图像,并向其返回模拟触控指令,可以控制目标对象自动化地完成对游戏地图的探索,整个探索过程无需过多的人为干预,而且也不需要通过API接口获取游戏内部数据,探索过程简单高效,降低了游戏地图探索和检测的人工成本,并提高了游戏地图探索和检测的效率和准确度。
本公开采用图像识别技术对游戏地图的地图图像进行分析,可以避免对复杂的游戏数据的处理。图6示意性地示出了在本公开的一些实施例中获取地图图像的步骤流程图。如图6所示,在以上实施例的基础上,步骤S510.从运行目标游戏的终端设备处获取待探索的游戏地图的地图图像,可以包括以下步骤:
步骤S610.从运行目标游戏的终端设备处获取目标游戏的当前游戏画面。
在一类目标游戏的画面显示方式中,游戏地图直接显示在游戏画面的某一显示区域内,例如可以采用如图3所示的画面布局方式,将游戏地图显示在整体游戏画面的左上角,既不会对当前游戏场景产生过多遮挡,又可以让游戏用户能够实时观察到游戏角色自身所处位置。针对这类游戏,本步骤可以直接获取目标游戏的当前游戏画面,例如可以以一定的帧率逐帧截取目标游戏的游戏画面。
步骤S620.从当前游戏画面中识别得到待探索的游戏地图,并获取游戏地图的地图图像。
由步骤S610获取到目标游戏的当前游戏画面后,可以对当前游戏画面进行图像识别,从中识别得到待探索的游戏地图,进而获取到游戏地图的地图图像。例如,当识别确定当前游戏画面的左上角为游戏地图的显示区域时,可以对当前游戏画面做图像裁剪处理,裁剪得到游戏地图的地图图像。
在其他一些实施例中,目标游戏的游戏画面并不会持久显示游戏地图,而是在游戏画面中提供一个用于切换游戏地图的显示状态和隐藏状态的虚拟按钮。针对这类目标游戏,当需要对其游戏地图进行探索时,可以首先向运行目标游戏的终端设备发送一触发指令,用于触发相应的虚拟按钮,从而在游戏画面中打开游戏地图,获取到显示有游戏地图的游戏画面后再从中裁剪得到游戏地图的地图图像。
如以上实施例所述,在游戏地图的地图图像中一般会对目标对象的位置做出标注,基于相应的位置标注便可以获取目标对象的当前位置点。图7示意性地示出了在本公开的一些实施例中确定目标对象的当前位置点的步骤流程图。如图7所示,在以上各实施例的基础上,步骤S520中的确定目标对象在地图图像中的当前位置点,可以包括以下步骤:
步骤S710.确定目标对象在地图图像中的对象标识。
根据获取到的游戏地图的地图图像,首先确定目标对象在该地图图像中的对象标识,该对象标识会以相对明显的标注形式进行显示,一般可以是颜色较为鲜明的或者具有特殊形状的标识符号。例如,游戏地图的地图图像整体为灰暗色调,目标对象的对象标识可以是红色的箭头或者蓝色的三角形等等。
步骤S720.获取对象标识的标识特征信息,并根据标识特征信息确定地图图像中的多个标识位置点。
地图图像中的对象标识具有其特殊的标识特征信息,该标识特征信息能够使该对象标识明显区别于地图图像中的其他元素,以方便用户查看。本步骤在获取对象标识的标识特征信息的基础上,可以选取地图图像中具有相同标识特征信息的多个标识位置点。例如,在一些可选的实施方式中,本步骤可以将对象标识的颜色作为其标识特征信息,而颜色本质表现为一个像素点的像素值,因此在指定一个颜色或者像素值作为标识特征信息后,可以将地图图像中具有该颜色或者像素值的多个像素点确定为标识位置点。
步骤S730.根据多个标识位置点的位置信息确定目标对象在地图图像中的当前位置点。
在由步骤S720确定多个标识位置点后,本步骤可以根据各个标识位置点的位置信息确定目标对象在地图图像中的当前位置点。例如可以根据各个标识位置点的位置坐标计算得到一个位于所有标识位置点中心的像素点作为目标对象在地图图像中的当前位置点。
由于游戏地图相比于整个游戏画面的显示比例较小,位于游戏地图的地图画面中的对象标识一般会具有相对较大的显示比例,以方便用户能够直观查看。例如,在一款游戏的游戏地图中包括有房屋、道路、湖泊等各种游戏元素,该游戏中的目标对象为一个人物角色。在地图图像中所显示的对应于该人物角色的对象标识可能与一个房屋具有相近的显示大小,那么其位置信息也必然存在较大误差。针对这种情况,本公开实施例通过先获取对象标识的标识特征信息,再确定多个标识位置点,然后根据多个标识位置点确定一个当前位置点,可以更加精确地获取该人物角色即目标对象在游戏场景中的位置。
为了确定目标对象在探索过程中的移动路径,除了确定作为移动起点的当前位置点以外,还需要确定作为移动终点的待探索位置点。图8示意性地示出了在本公开的一些实施例中确定待探索位置点的步骤流程图。如图8所示,在以上各实施例的基础上,步骤S520中的确定地图图像中的待探索位置点,可以包括以下步骤:
步骤S810.根据目标对象的当前位置点确定地图图像中的当前搜索区域。
游戏地图一般具有较大的地图范围,为了对其进行逐步探索,本步骤可以根据目标对象的当前位置点确定一个当前搜索区域,该当前搜索区域可以是地图图像中的部分地图区域。例如可以以目标对象的当前位置点为中心,选取围绕在其周围的一个具有指定尺寸的矩形区域或者圆形区域作为当前搜索区域。
步骤S820.确定位于当前搜索区域中的可到达区域,并在可到达区域内搜索未探索位置。
当前搜索区域中可能包括有道路、桥梁、草地等可供目标对象自由移动的可到达区域,也可能包括有房屋、湖泊、河流等各种作为障碍物的障碍区域,可到达区域中又可以进一步包括已经探索完成的已探索位置和尚未探索的未探索位置。本步骤可以通过图像识别或者其他方式确定当前搜索区域中的可到达区域,同时在可到达区域内搜索未探索位置。
步骤S830.当可到达区域内存在未探索位置时,将未探索位置确定为待探索位置点。
根据在可到达区域内的搜索结果,如果在其中搜索到一个未探索位置,那么可以将该未探索位置确定为待探索位置点。如果在可到达区域内存在多个未探索位置,那么本步骤可以利用预设的选取规则从中选取一个未探索位置作为待探索位置点。例如,可以将与目标对象的当前位置点距离最远的一个未探索位置选取为待探索位置点。又例如,在目标对象的左侧和右侧各存在一个与之距离相同的未探索位置,那么可以按照预设的选取规则将左侧的未探索位置选取为待探索位置点。
步骤S840.当可到达区域内均为已探索位置时,扩大当前搜索区域并继续搜索未探索位置以确定待探索位置点。
如果在可到达区域内没有搜索到任何未探索位置,亦即可到达区域内的所有位置点都是已经探索完成的已探索位置,那么本步骤可以扩大当前搜索区域,以在更大的地图范围内继续搜索未探索位置,直至能够在地图图像中确定待探索位置点或者完成对整个游戏地图的探索。
由于本公开各个实施例主要是基于图像识别的原理进行游戏地图探索,不可避免地会存在一定的图像识别误差,而且根据模拟触控指令控制目标对象移动时也可以存在一定的触控操作误差,因此在目标对象探索游戏地图的移动过程中,可能会卡在障碍物边缘等一些特定位置处而无法继续移动。针对这种情形,图9示意性地示出了在本公开的一些实施例中处理目标对象位置卡住的步骤流程图。如图9所示,在以上各实施例的基础上,基于图像识别的地图探索方法还包括以下步骤:
步骤S910.当终端设备控制目标对象沿移动路径移动时,实时获取目标游戏的游戏画面。
当终端设备控制目标对象沿移动路径移动时,目标对象应当会持续不断地向待探索位置点靠近,在其移动过程中,可以实时获取目标游戏的游戏画面。例如可以首先确定一个图像获取帧率,如每秒5帧、每秒10帧等等,然后以该图像获取帧率对目标游戏做截屏处理,即每秒获取5帧游戏画面或者每秒获取10帧游戏画面。
步骤S920.比较目标游戏在当前时刻的当前时刻游戏画面和预设时长之前的历史时刻游戏画面以确定两个游戏画面的相似度。
通过持续获取目标游戏的游戏画面,可以得到一组以游戏时间顺序排列的多个游戏画面,本步骤可以将目标游戏在当前时刻的当前时刻游戏画面和预设时长之前的历史时刻游戏画面进行比较,从而确定这两个游戏画面的相似度。
步骤S930.当相似度大于预设阈值时,判定目标对象卡在当前移动位置。
根据步骤S920比较得到的相似度,可以对目标对象的移动状态做出判断。如果该相似度大于一个预设阈值,那么可以判定目标对象在这一预设时长内并没有做出有效移动,因而可以判定目标对象卡在当前移动位置。
步骤S940.向卡在当前移动位置的目标对象发送卡位移动指令,以控制目标对象移动至除当前移动位置之外的其他位置。
当判断目标对象卡住时,本步骤可以向卡在当前移动位置的目标对象发送卡位移动指令,该卡位移动指令可以是与控制目标对象向待探索位置移动的模拟触控指令相似的指令。基于卡位移动指令可以控制目标对象移动至除当前移动位置之外的其他位置,例如可以是位于当前移动位置前、后、左、右任意方位的一个新的位置。
步骤S950.重新确定目标对象的当前位置点和地图图像中的待探索位置点,以控制目标对象继续探索游戏地图。
当目标对象移动至新的位置后,本步骤可以重新执行步骤S510至步骤S550,即重新确定目标对象的当前位置点和地图图像中的待探索位置点,进而为目标对象确定新的移动路径,以控制目标对象继续探索游戏地图。
举例而言,目标对象在移动过程中碰到墙壁,由于存在图像识别误差和触控误差,原始的模拟触控指令仍指示目标对象继续向墙壁所在的位置移动,那么目标对象便会卡在当前移动位置而无法移动。此时通过向其发送卡位移动指令,可以将目标对象移动至一个新的位置上,然后便可以控制目标对象继续探索游戏地图。
目标游戏的游戏画面一般具有较高的图像质量,不仅分辨率较高,而且图像中的色彩分布也较为复杂。为了提高游戏画面的对比效率、降低计算量,可以先对游戏画面做预处理,然后再将预处理后的游戏画面进行比较。图10示意性地示出了在本公开的一些实施例中基于图像预处理确定游戏画面相似度的步骤流程图。如图10所示,在以上各实施例的基础上,步骤S920.比较目标游戏在当前时刻的当前时刻游戏画面和预设时长之前的历史时刻游戏画面以确定两个游戏画面的相似度,可以包括以下步骤:
步骤S1010.对目标游戏在当前时刻的当前时刻游戏画面做灰度化处理和尺寸缩放处理后得到当前预处理画面。
采用灰度化处理和尺寸缩放处理两种方式对当前时刻游戏画面进行预处理后,可以在保留游戏画面主要特征信息的前提下,降低游戏画面的图像质量。
步骤S1020.对目标游戏在预设时长之前的历史时刻游戏画面做灰度化处理和尺寸缩放处理后得到历史预处理画面。
历史时刻游戏画面采用与当前时刻游戏画面相同的处理方式,在保留其主要特征信息的同时降低其图像质量。
步骤S1030.比较当前预处理画面和历史预处理画面以确定两个游戏画面的相似度。
在对当前时刻游戏画面和历史时刻游戏画面进行相同的图像处理过程后分别得到当前预处理画面和历史预处理画面,再对当前预处理画面和历史预处理画面进行比较可以确定两个预处理画面的相似度,该相似度也作为当前时刻游戏画面和历史时刻游戏画面的相似度,用于判断两个时间点的游戏画面是否发生较大变化,进而可以判断目标对象是否被卡在当前移动位置而无法向待探索位置点继续移动。
基于对游戏地图的探索结果,可以对游戏地图进行异常检测以便及时发现游戏地图的制作缺陷。图11示意性地示出了在本公开的一些实施例中对游戏地图进行异常检测的步骤流程图。如图11所示,在以上各实施例的基础上,基于图像识别的地图探索方法还可以包括以下步骤:
步骤S1110.确定地图图像中的可探索区域和不可探索区域。
在游戏地图中存在大量的地图元素,根据目标游戏中的目标对象是否能够移动到达可以将游戏地图的地图图像划分为两种区域,即目标对象可以移动到达的可探索区域以及目标对象无法移动到达的不可探索区域。
步骤S1120.确定由已探索位置点组成的地图图像中的已探索区域。
通过执行步骤S510至步骤S550的游戏地图探索方法步骤可以在游戏地图的地图图像中确定已探索位置点,已探索位置点主要可以包括目标对象在向待探索位置点移动的过程中所经过的和到达的各个位置点。由这些已探索位置点可以组成地图图像中的已探索区域。
步骤S1130.比较可探索区域和已探索区域以确定地图图像中的异常位置点。
不断重复执行步骤S510至步骤S550的游戏地图探索方法步骤,可以对游戏地图进行持续探索,在探索一段时间后,可以对整体的探索结果进行评价以便能够发现地图图像中的异常位置点。本步骤可以将步骤S1110中确定的地图图像中的可探索区域和步骤S1120中确定的地图图像中的已探索区域进行比较,判断这两个区域所包含的位置点是否完全相同。可探索区域和已探索区域之间存在差异的位置点可以被确定为地图图像中的异常位置点。
举例而言,如果可探索区域中的某一位置点没有被已探索区域所覆盖,那么可以初步判断该位置点出现“空气墙”现象;如果已探索区域中的某一位置点没有被可探索区域所覆盖,即该位置点处在不可探索区域内,那么可以初步判断该位置点出现“穿墙”现象。这样一些位置点都是不符合游戏地图制作要求的异常位置点,需要对其做进一步的检测和修复。
在一些可选的实施方式中,可以根据游戏地图的范围大小和复杂程度预估并设定一地图探索时间,通过执行本公开各实施例中提供的基于图像识别的地图探索方法可以对游戏地图进行持续探索,如果探索时长达到或者超过预设的地图探索时间便可以认为已经完成对整个游戏地图的探索过程,此时便可以执行上一实施例中对游戏地图进行异常检测的相关步骤。
下面结合一具体应用场景对本公开实施例中提供的基于图像识别的地图探索方法做出详细说明。图12示意性地示出了本公开实施例在一应用场景中的游戏地图探索流程示意图。如图12所示,该地图探索流程主要包括以下步骤:
步骤S1210.识别游戏地图中的角色位置点。
采用像素识别的方法来识别角色位置点,如图13所示,角色位置点在地图图像上表示为一个蓝色的三角形标识1310。通过用户指定或者自动获取等方式,可以获得该三角形标识1310的像素值,然后过滤地图图像中和三角形标识1310像素值接近的像素点,并对过滤后的像素点位置进行加权平均,从而可以识别出地图图像中的精确的角色位置点。例如,通过过滤处理确定三角形标识1310在地图图像中覆盖了数十个像素点,再根据这些像素点的位置坐标可以确定一个位于中心的像素点作为角色位置点。
步骤S1220.搜索游戏地图未探索位置点。
从角色位置点由近到远搜索未探索位置点。如图14所示,以地图图像中的角色位置点1410为中心,确定围绕在其周围的一个当前搜索区域1420。该地图图像中包括不可达区域1430(如各种障碍物)、已探索区域1440和未探索区域1450。在当前搜索区域1420中可以搜索未探索位置点,如果在当前搜索区域1420中没有搜索到未探索位置点,可以逐步放大当前搜索区域1420的覆盖范围。
步骤S1230.计算角色位置点到未探索位置点的移动路径。
本步骤可以采用A*寻路算法来计算游戏地图中角色位置点(起点)到未探索位置点(终点)的路径。A*算法是一种启发式搜索算法,主要用于在两点之间选择一个最优路径,图15示意性地示出了通过该算法得到的路径点分布情况。本步骤得到的移动路径可以表示为由各个位置点的位置坐标组成的坐标序列,即[(x0,y0),(x1,y1),…,(xn,yn)],其中(x0,y0)表示起点,(xn,yn)表示终点。
步骤S1240.卡位检测处理。
考虑到图像识别游戏地图中角色位置过程中,可能存在一定误差,且通过模拟触屏操作控制角色移动也存在一定误差,在复杂游戏地图的一些障碍物边缘位置,容易出现角色一直朝障碍物方向移动(由于图像识别误差,可能识别到角色未在障碍物边缘),表现为角色移动“卡住”。
为了提高自动探索地图过程中的鲁棒性,在控制角色移动过程中,需要对“卡住”现象进行检测处理。通过对游戏画面进行预处理(灰度化,缩放到50×50像素大小),再和3秒前预处理过的游戏画面进行模板匹配,如果匹配度高于一定阈值,可认为游戏画面和3秒前相似度很高,可判断角色移动中被“卡住”。如图16所示,左侧为3秒前的预处理后的游戏画面,右图为此刻的预处理后的游戏画面。由于两图相似度极高,可以判断角色移动中被“卡住”。
步骤S1250.控制角色随机方向移动。
如果步骤S1240中判断角色在移动过程中被卡住,那么可以通过模拟触控指令控制角色随机向各个方向移动,以离开当前卡住的位置。然后可以返回步骤S1210重新识别角色位置点,从而继续进行地图探索。
步骤S1260.控制角色向未探索位置点移动。
如果步骤S1240中判断角色未被卡住,则可以继续控制角色按照步骤S1230计算的路径点向未探索位置点移动。当角色到达未探索位置点后,可以返回步骤S1210重新识别角色位置点,并继续对游戏地图中的其他区域进行地图探索。
步骤S1270.游戏地图异常现象检查。
自动探索地图过程中,会将探索过的位置点记录并保存在地图图像中。自动探索地图一段时间后,地图中大部分位置点都已经探索过。地图中未探索过的位置点,可能存在“空气墙”现象;探索过的位置点如果是在障碍物中,可能存在“穿墙”现象。针对可能存在“空气墙”、“穿墙”现象的位置点可以做进一步地检查。如图17所示,图中两处未探索位置区域1710,可能存在“空气墙”现象。
基于以上应用场景可知,本公开实施例提供的基于图像识别的地图探索方法具有以下优点:
(1)端到端的技术方案
本方案的输入为游戏地图图像,输出为针对运行目标游戏的终端设备的触屏操作,不涉及通过API接口获取游戏内部数据。
(2)完全自动化的探索地图
完全自动化的探索游戏地图,探索过程中不需要人力投入。
(3)通用性强
几乎所有多人在线战术竞技游戏(MOBA)、第一人称射击游戏(FPS)等各种类型的游戏都包含有地图图像,游戏画面中只要包含地图图像,就可以通过本方案进行自动化的地图探索。
应当注意,尽管在附图中以特定顺序描述了本公开中方法的各个步骤,但是,这并非要求或者暗示必须按照该特定顺序来执行这些步骤,或是必须执行全部所示的步骤才能实现期望的结果。附加的或备选的,可以省略某些步骤,将多个步骤合并为一个步骤执行,以及/或者将一个步骤分解为多个步骤执行等。
以下介绍本公开的装置实施例,可以用于执行本公开上述实施例中的基于图像识别的地图探索方法。对于本公开装置实施例中未披露的细节,请参照本公开上述的基于图像识别的地图探索方法的实施例。
图18示意性地示出了在本公开一些实施例中的基于图像识别的地图探索装置的结构框图。如图18所示,游戏地图探索装置1800主要可以包括:图像获取模块1810、位置点确定模块1820、指令生成模块1830、对象移动模块1840和地图探索模块1850。
图像获取模块1810,被配置为从运行目标游戏的终端设备处获取待探索的游戏地图的地图图像;位置点确定模块1820,被配置为确定目标对象在地图图像中的当前位置点,并确定地图图像中的待探索位置点;指令生成模块1830,被配置为根据当前位置点和待探索位置点确定目标对象在目标游戏中的移动路径,并根据移动路径生成用于控制目标对象移动的模拟触控指令;对象移动模块1840,被配置为将模拟触控指令发送至终端设备,以由终端设备控制目标对象沿移动路径移动至待探索位置点;地图探索模块1850,被配置为当目标对象到达待探索位置点时,将待探索位置点作为目标对象的当前位置点并继续确定新的待探索位置点以控制目标对象探索游戏地图。
在本公开的一些实施例中,基于以上各实施例,图像获取模块包括:游戏画面获取单元,被配置为从运行目标游戏的终端设备处获取目标游戏的当前游戏画面;地图图像获取单元,被配置为从当前游戏画面中识别得到待探索的游戏地图,并获取游戏地图的地图图像。
在本公开的一些实施例中,基于以上各实施例,位置点确定模块包括:对象标识确定单元,被配置为确定目标对象在地图图像中的对象标识;标识位置点确定单元,被配置为获取对象标识的标识特征信息,并根据标识特征信息确定地图图像中的多个标识位置点;当前位置点确定单元,被配置为根据多个标识位置点的位置信息确定目标对象在地图图像中的当前位置点。
在本公开的一些实施例中,基于以上各实施例,位置点确定模块还包括:搜索区域确定单元,被配置为根据目标对象的当前位置点确定地图图像中的当前搜索区域;未探索位置搜索单元,被配置为确定位于当前搜索区域中的可到达区域,并在可到达区域内搜索未探索位置;待探索位置点确定单元,被配置为当可到达区域内存在未探索位置时,将未探索位置确定为待探索位置点;搜索区域扩大单元,被配置为当可到达区域内均为已探索位置时,扩大当前搜索区域并继续搜索未探索位置以确定待探索位置点。
在本公开的一些实施例中,基于以上各实施例,装置还包括:游戏画面获取模块,被配置为当终端设备控制目标对象沿移动路径移动时,实时获取目标游戏的游戏画面;相似度确定模块,被配置为比较目标游戏在当前时刻的当前时刻游戏画面和预设时长之前的历史时刻游戏画面以确定两个游戏画面的相似度;卡位判断模块,被配置为当相似度大于预设阈值时,判定目标对象卡在当前移动位置;卡位移动模块,被配置为向卡在当前移动位置的目标对象发送卡位移动指令,以控制目标对象移动至除当前移动位置之外的其他位置;位置更新模块,被配置为重新确定目标对象的当前位置点和地图图像中的待探索位置点,以控制目标对象继续探索游戏地图。
在本公开的一些实施例中,基于以上各实施例,相似度确定模块包括:当前图像预处理单元,被配置为对目标游戏在当前时刻的当前时刻游戏画面做灰度化处理和尺寸缩放处理后得到当前预处理画面;历史图像预处理单元,被配置为对目标游戏在预设时长之前的历史时刻游戏画面做灰度化处理和尺寸缩放处理后得到历史预处理画面;相似度确定单元,被配置为比较当前预处理画面和历史预处理画面以确定两个游戏画面的相似度。
在本公开的一些实施例中,基于以上各实施例,装置还包括:可探索区域确定模块,被配置为确定地图图像中的可探索区域和不可探索区域;已探索区域确定模块,被配置为确定由已探索位置点组成的地图图像中的已探索区域;异常位置点确定模块,被配置为比较可探索区域和已探索区域以确定地图图像中的异常位置点。
本公开各实施例中提供的基于图像识别的地图探索装置的具体细节已经在对应的方法实施例中进行了详细的描述,因此此处不再赘述。
图19示出了适于用来实现本公开实施例的电子设备的计算机系统的结构示意图。
需要说明的是,图19示出的电子设备的计算机系统1900仅是一个示例,不应对本公开实施例的功能和使用范围带来任何限制。
如图19所示,计算机系统1900包括中央处理单元(Central Processing Unit,CPU)1901,其可以根据存储在只读存储器(Read-Only Memory,ROM)1902中的程序或者从存储部分1908加载到随机访问存储器(Random Access Memory,RAM)1903中的程序而执行各种适当的动作和处理。在RAM 1903中,还存储有系统操作所需的各种程序和数据。CPU1901、ROM 1902以及RAM 1903通过总线1904彼此相连。输入/输出(Input/Output,I/O)接口1905也连接至总线1904。
以下部件连接至I/O接口1905:包括键盘、鼠标等的输入部分1906;包括诸如阴极射线管(Cathode Ray Tube,CRT)、液晶显示器(Liquid Crystal Display,LCD)等以及扬声器等的输出部分1907;包括硬盘等的存储部分1908;以及包括诸如LAN(Local AreaNetwork,局域网)卡、调制解调器等的网络接口卡的通信部分1909。通信部分1909经由诸如因特网的网络执行通信处理。驱动器1910也根据需要连接至I/O接口1905。可拆卸介质1911,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器1910上,以便于从其上读出的计算机程序根据需要被安装入存储部分1908。
特别地,根据本公开的实施例,各个方法流程图中所描述的过程可以被实现为计算机软件程序。例如,本公开的实施例包括一种计算机程序产品,其包括承载在计算机可读介质上的计算机程序,该计算机程序包含用于执行流程图所示的方法的程序代码。在这样的实施例中,该计算机程序可以通过通信部分1909从网络上被下载和安装,和/或从可拆卸介质1911被安装。在该计算机程序被中央处理单元(CPU)1901执行时,执行本申请的系统中限定的各种功能。
需要说明的是,本公开实施例所示的计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(Erasable Programmable Read Only Memory,EPROM)、闪存、光纤、便携式紧凑磁盘只读存储器(Compact Disc Read-Only Memory,CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本公开中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。而在本公开中,计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:无线、有线等等,或者上述的任意合适的组合。
附图中的流程图和框图,图示了按照本公开各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,上述模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图或流程图中的每个方框、以及框图或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
应当注意,尽管在上文详细描述中提及了用于动作执行的设备的若干模块或者单元,但是这种划分并非强制性的。实际上,根据本公开的实施方式,上文描述的两个或更多模块或者单元的特征和功能可以在一个模块或者单元中具体化。反之,上文描述的一个模块或者单元的特征和功能可以进一步划分为由多个模块或者单元来具体化。
通过以上的实施方式的描述,本领域的技术人员易于理解,这里描述的示例实施方式可以通过软件实现,也可以通过软件结合必要的硬件的方式来实现。因此,根据本公开实施方式的技术方案可以以软件产品的形式体现出来,该软件产品可以存储在一个非易失性存储介质(可以是CD-ROM,U盘,移动硬盘等)中或网络上,包括若干指令以使得一台计算设备(可以是个人计算机、服务器、触控终端、或者网络设备等)执行根据本公开实施方式的方法。
本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本公开的其它实施方案。本申请旨在涵盖本公开的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本公开的一般性原理并包括本公开未公开的本技术领域中的公知常识或惯用技术手段。
应当理解的是,本公开并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本公开的范围仅由所附的权利要求来限制。
Claims (10)
1.一种基于图像识别的地图探索方法,其特征在于,所述方法包括:
从运行目标游戏的终端设备处获取待探索的游戏地图的地图图像;
确定目标对象在所述地图图像中的当前位置点,并确定所述地图图像中的待探索位置点;
根据所述当前位置点和所述待探索位置点确定所述目标对象在所述目标游戏中的移动路径,并根据所述移动路径生成用于控制所述目标对象移动的模拟触控指令;
将所述模拟触控指令发送至所述终端设备,以由所述终端设备控制所述目标对象沿所述移动路径移动至所述待探索位置点;
当所述目标对象到达所述待探索位置点时,将所述待探索位置点作为所述目标对象的当前位置点并继续确定新的待探索位置点以控制所述目标对象探索所述游戏地图。
2.根据权利要求1所述的基于图像识别的地图探索方法,其特征在于,所述从运行目标游戏的终端设备处获取待探索的游戏地图的地图图像,包括:
从运行目标游戏的终端设备处获取所述目标游戏的当前游戏画面;
从所述当前游戏画面中识别得到待探索的游戏地图,并获取所述游戏地图的地图图像。
3.根据权利要求1所述的基于图像识别的地图探索方法,其特征在于,所述确定目标对象在所述地图图像中的当前位置点,包括:
确定所述目标对象在所述地图图像中的对象标识;
获取所述对象标识的标识特征信息,并根据所述标识特征信息确定所述地图图像中的多个标识位置点;
根据所述多个标识位置点的位置信息确定所述目标对象在所述地图图像中的当前位置点。
4.根据权利要求1所述的基于图像识别的地图探索方法,其特征在于,所述确定所述地图图像中的待探索位置点,包括:
根据所述目标对象的当前位置点确定所述地图图像中的当前搜索区域;
确定位于所述当前搜索区域中的可到达区域,并在所述可到达区域内搜索未探索位置;
当所述可到达区域内存在未探索位置时,将所述未探索位置确定为待探索位置点;
当所述可到达区域内均为已探索位置时,扩大所述当前搜索区域并继续搜索未探索位置以确定待探索位置点。
5.根据权利要求1所述的基于图像识别的地图探索方法,其特征在于,所述方法还包括:
当所述终端设备控制所述目标对象沿所述移动路径移动时,实时获取所述目标游戏的游戏画面;
比较所述目标游戏在当前时刻的当前时刻游戏画面和预设时长之前的历史时刻游戏画面以确定两个游戏画面的相似度;
当所述相似度大于预设阈值时,判定所述目标对象卡在当前移动位置;
向卡在当前移动位置的所述目标对象发送卡位移动指令,以控制所述目标对象移动至除所述当前移动位置之外的其他位置;
重新确定所述目标对象的当前位置点和所述地图图像中的待探索位置点,以控制所述目标对象继续探索所述游戏地图。
6.根据权利要求5所述的基于图像识别的地图探索方法,其特征在于,所述比较所述目标游戏在当前时刻的当前时刻游戏画面和预设时长之前的历史时刻游戏画面以确定两个游戏画面的相似度,包括:
对所述目标游戏在当前时刻的当前时刻游戏画面做灰度化处理和尺寸缩放处理后得到当前预处理画面;
对所述目标游戏在预设时长之前的历史时刻游戏画面做灰度化处理和尺寸缩放处理后得到历史预处理画面;
比较所述当前预处理画面和所述历史预处理画面以确定两个游戏画面的相似度。
7.根据权利要求1所述的基于图像识别的地图探索方法,其特征在于,所述方法还包括:
确定所述地图图像中的可探索区域和不可探索区域;
确定由已探索位置点组成的所述地图图像中的已探索区域;
比较所述可探索区域和所述已探索区域以确定所述地图图像中的异常位置点。
8.一种基于图像识别的地图探索装置,其特征在于,所述装置包括:
图像获取模块,被配置为从运行目标游戏的终端设备处获取待探索的游戏地图的地图图像;
位置点确定模块,被配置为确定目标对象在所述地图图像中的当前位置点,并确定所述地图图像中的待探索位置点;
指令生成模块,被配置为根据所述当前位置点和所述待探索位置点确定所述目标对象在所述目标游戏中的移动路径,并根据所述移动路径生成用于控制所述目标对象移动的模拟触控指令;
对象移动模块,被配置为将所述模拟触控指令发送至所述终端设备,以由所述终端设备控制所述目标对象沿所述移动路径移动至所述待探索位置点;
地图探索模块,被配置为当所述目标对象到达所述待探索位置点时,将所述待探索位置点作为所述目标对象的当前位置点并继续确定新的待探索位置点以控制所述目标对象探索所述游戏地图。
9.一种计算机可读介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至7中任一项所述的基于图像识别的地图探索方法。
10.一种电子设备,其特征在于,包括:
处理器;以及
存储器,用于存储所述处理器的可执行指令;
其中,所述处理器配置为经由执行所述可执行指令来执行权利要求1至7中任一项所述的基于图像识别的地图探索方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910691287.XA CN110465089B (zh) | 2019-07-29 | 2019-07-29 | 基于图像识别的地图探索方法、装置、介质及电子设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910691287.XA CN110465089B (zh) | 2019-07-29 | 2019-07-29 | 基于图像识别的地图探索方法、装置、介质及电子设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110465089A CN110465089A (zh) | 2019-11-19 |
CN110465089B true CN110465089B (zh) | 2021-10-22 |
Family
ID=68509107
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910691287.XA Active CN110465089B (zh) | 2019-07-29 | 2019-07-29 | 基于图像识别的地图探索方法、装置、介质及电子设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110465089B (zh) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111488280B (zh) * | 2020-04-09 | 2021-07-02 | 腾讯科技(深圳)有限公司 | 数据处理方法、装置、存储介质及电子设备 |
CN112087489B (zh) * | 2020-08-05 | 2023-06-30 | 北京工联科技有限公司 | 一种在线手机游戏网络传输的中继转发选择方法及系统 |
CN112221143B (zh) * | 2020-10-09 | 2022-07-15 | 腾讯科技(深圳)有限公司 | 一种控制虚拟对象移动的方法、装置及存储介质 |
CN115191886A (zh) * | 2022-07-12 | 2022-10-18 | 尚科宁家(中国)科技有限公司 | 一种快速建图的方法、装置、及清洁机器人 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106055470A (zh) * | 2016-05-19 | 2016-10-26 | 网易(杭州)网络有限公司 | 游戏程序的性能测试方法、装置及系统 |
CN107179082A (zh) * | 2017-07-07 | 2017-09-19 | 上海阅面网络科技有限公司 | 基于拓扑地图和度量地图融合的自主探索方法和导航方法 |
CN108983781A (zh) * | 2018-07-25 | 2018-12-11 | 北京理工大学 | 一种无人车目标搜索系统中的环境探测方法 |
CN109107161A (zh) * | 2018-08-17 | 2019-01-01 | 深圳市腾讯网络信息技术有限公司 | 一种游戏对象的控制方法、装置、介质以及设备 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10060751B1 (en) * | 2017-05-17 | 2018-08-28 | Here Global B.V. | Method and apparatus for providing a machine learning approach for a point-based map matcher |
-
2019
- 2019-07-29 CN CN201910691287.XA patent/CN110465089B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106055470A (zh) * | 2016-05-19 | 2016-10-26 | 网易(杭州)网络有限公司 | 游戏程序的性能测试方法、装置及系统 |
CN107179082A (zh) * | 2017-07-07 | 2017-09-19 | 上海阅面网络科技有限公司 | 基于拓扑地图和度量地图融合的自主探索方法和导航方法 |
CN108983781A (zh) * | 2018-07-25 | 2018-12-11 | 北京理工大学 | 一种无人车目标搜索系统中的环境探测方法 |
CN109107161A (zh) * | 2018-08-17 | 2019-01-01 | 深圳市腾讯网络信息技术有限公司 | 一种游戏对象的控制方法、装置、介质以及设备 |
Also Published As
Publication number | Publication date |
---|---|
CN110465089A (zh) | 2019-11-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110465089B (zh) | 基于图像识别的地图探索方法、装置、介质及电子设备 | |
Chen et al. | Touchdown: Natural language navigation and spatial reasoning in visual street environments | |
CN111709409B (zh) | 人脸活体检测方法、装置、设备及介质 | |
CN110368690B (zh) | 游戏决策模型训练方法、游戏策略生成方法及装置 | |
CN104268603B (zh) | 用于文字性客观题的智能阅卷方法及系统 | |
CN108197618B (zh) | 用于生成人脸检测模型的方法和装置 | |
CN107423398A (zh) | 交互方法、装置、存储介质和计算机设备 | |
CN110798636B (zh) | 字幕生成方法及装置、电子设备 | |
CN110852256B (zh) | 时序动作提名的生成方法、装置、设备及存储介质 | |
CN110446063A (zh) | 视频封面的生成方法、装置及电子设备 | |
CN111738041A (zh) | 一种视频分割方法、装置、设备及介质 | |
CN111488873B (zh) | 一种基于弱监督学习的字符级场景文字检测方法和装置 | |
CN112132197A (zh) | 模型训练、图像处理方法、装置、计算机设备和存储介质 | |
KR20190108378A (ko) | 이미지 캡션 자동 생성 방법 및 시스템 | |
CN111241285A (zh) | 问题回答类型的识别方法、装置、设备及存储介质 | |
CN113411550B (zh) | 视频上色方法、装置、设备及存储介质 | |
CN115861462B (zh) | 图像生成模型的训练方法、装置、电子设备及存储介质 | |
CN116152833B (zh) | 基于图像的表格还原模型的训练方法及表格还原方法 | |
CN115131849A (zh) | 图像生成方法以及相关设备 | |
CN110652726A (zh) | 一种基于图像识别和音频识别的游戏辅助系统 | |
CN114241587A (zh) | 人脸活体检测对抗鲁棒性的评估方法及装置 | |
CN113591569A (zh) | 障碍物检测方法、装置、电子设备以及存储介质 | |
CN117152815A (zh) | 一种学生活动伴随式数据分析方法、装置及设备 | |
CN112084788A (zh) | 一种影像字幕隐式情感倾向自动标注方法及系统 | |
CN116959123A (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 |