基于YOLO目标检测及OpenCV实现的游戏代玩人工智能体(Auto Gaming Agent) [1]

大型生存类游戏自动代玩人工智能[1] -- 介绍篇

游戏介绍

偶然的机会我接触到了“明日之后”这款大型多人在线手游,这是一个以末日病毒感染人类为背景的生存类游戏。游戏世界讲述了人类遭遇前所未有的丧尸危机,在这个资源紧缺的时代,未被病毒感染的幸存者们需要通过采集资源、制作工具和武器、建造家园来生存下去,与一些经典的沙盒生存类游戏很类似(如七日杀、方舟生存进化等)。但是这款游戏做到了大型多人在线实时互动,可玩性是很高的,而且初次体验的时候,整个游戏的画面是很精致而且非常写实的,营造的阴森和恐怖的氛围也凸显了病毒末日的紧张感,总体来说游戏的沉浸感很强。

明日之后游戏场景2

在这里插入图片描述

但是只要玩过的都知道,这种类型的游戏需要花费极其大量的时间来采集地图里的基础资源(此游戏主要是木头、石头和麻)来制作生存必需品和建造栖息之所,着实非常‘伤肝’。也是偶然的突发奇想,为何不利用现今如火如荼的人工智能来帮助我做这越发枯燥的采集呢?

游戏中的资源--树和石头

仔细分析,自动采集游戏里的资源是非常可行的,因为这本质上是机械化的重复操作。采集资源的基本操作,打比方说要采集木头,(作为人类玩家)就是首先识别游戏场景里可供砍伐的树木,然后走到寻找到的目标前面,对准目标进行砍伐,将这棵数砍伐完毕以后再识别下一个目标、走过去、砍伐,循环往复…所以本质上这是非常程序化的工作,并没有上升到人工智能的高度。但是其中有个难点就是如何识别游戏场景中的资源,因为相对来说,这个游戏的场景是比较写实而复杂的,里面涵盖了多种形状各异颜色各异的物体(树、石头、麻、浆果、油菜花、熊、鹿、僵尸、直升机等等,都是可以与他们‘互动’的),而每种物体又有数种可能的形状,并且由于是3D游戏,从每个角度看同一个物体都是不同的样子,加之游戏有模拟日夜和天气变化,所以想要用简单的形状或颜色来识别是不可能的。所以我所指的人工智能主要是运用其中的神经网络目标识别的方法(Neural Network based Object Recognition),来进行游戏场景中的物体识别。

在这里插入图片描述

实现方法

这个项目的大前提是不调用任何游戏内部的API,完全通过游戏画面为输入,电脑键鼠为输出来实现游戏的自动控制,相当于一台电脑替代人类玩家自动玩游戏。前面也提到了,自动采集的实现主要步骤就是寻找目标(目标识别)、瞄准目标(运动控制)、靠近目标(运动控制)、进行采集。因此从实现方法来分,主要也可分为图像识别(image recognition)及动作控制(motion control)。基于所有开源的方法和工具,整个项目会以简单易用而不失强大的python为基础,用OpenCV视觉库和基于OpenCV的YOLOv3-tiny目标识别模型来实现图像识别,然后用python第三方库中的keyboard和mouse模块来实现键鼠自动控制。这篇博客会记录我如何实现的详细过程,由于步骤复杂且内容较多,我将所有内容分为了几个模块来阐述。

  • 11
    点赞
  • 46
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
行人识别系统是一种智能化的系统,利用人工智能领域深度学习技术和计算机视觉技术来识别和跟踪行人。系统能够准确地检测到图像或视频中的行人,从而帮助我们更好地理解周围环境和进行社会管理。以下是实现这样一套系统的一些关键功能和使用opencv的方法。 首先,行人检测是行人识别系统的关键功能之一。通过使用基于深度学习的目标检测算法,如Faster R-CNN或YOLO,可以在图像或视频中准确地检测到行人。使用opencv的深度学习模块,可以加载训练好的模型并在图像中进行行人检测。 其次,行人追踪是系统的另一个重要功能。通过使用opencv中的多目标跟踪算法,如OpenCV Tracker API,可以跟踪检测到的行人,并在视频或连续帧中维持其标识。这样可以实现对行人动态行为的实时监测和分析。 此外,行人属性分析是行人识别系统的延伸功能之一。通过使用opencv的图像处理和特征提取技术,可以提取行人的属性,如性别、年龄和身高等。这些属性可以进一步用于行人行为分析和行人识别。 最后,系统性能评估是确保行人识别系统准确性和效率的重要环节。通过使用opencv的计算机视觉和图像处理函数,可以实现对系统的性能评估和优化。例如,可以评估系统在不同图像尺寸、光照条件和复杂背景下的检测和识别准确性,从而提高系统的鲁棒性和实用性。 总而言之,使用opencv实现一套系统功能全面的行人识别系统,需要结合深度学习和计算机视觉技术,在行人检测、行人追踪、行人属性分析和系统性能评估等方面进行开发和优化。这样的系统可以应用于交通管理、安防监控、智慧城市等领域,为人们的生活带来更多便利和安全。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值