All You Need Is Camera

All You Need Is Camera

探索基于摄像头的智能感知系统

项目概述

"All You Need Is Camera"是一个利用计算机视觉技术,特别是人体姿态估计,让用户能够通过摄像头与游戏交互的框架。本项目使用YOLOv8-Pose模型实时检测用户的姿态,并将姿态数据转换为游戏控制信号,无需任何额外硬件设备,只需一个普通摄像头即可体验全身互动游戏。

核心功能

实时姿态识别

使用YOLOv8-Pose算法实时检测17个人体关键点,准确捕捉用户动作。

互动游戏体验

将身体动作转化为游戏控制指令,让用户沉浸在全身互动游戏中。

实时反馈系统

提供实时视觉反馈,让用户了解系统如何解读他们的动作。

开源可扩展

框架设计模块化,开发者可以轻松扩展新的游戏和交互模式。

游戏展示

Falling-Note 节奏游戏

已实现 姿态控制 音乐游戏

类似跳舞毯或音乐节奏游戏,玩家通过移动手部来击中屏幕上下落的音符。游戏有四个轨道,由左右手控制。当音符落到屏幕底部的感应区域时,移动对应的手部到该区域即可击中音符。连续击中可以增加连击数,提高得分!

游戏特点:

  • 三种难度级别(简单、普通、困难)
  • 实时手部轨迹跟踪
  • 视觉反馈系统
  • 连击计分机制

即将推出更多游戏

规划中 敬请期待

我们正在开发更多基于摄像头交互的游戏体验:

  • 水果忍者风格游戏:使用手部轨迹在空中切水果
  • 舞蹈比较游戏:与标准舞蹈动作进行比较和评分

技术栈

Python
YOLOv8-Pose
Pygame
OpenCV

安装指南

前提条件

安装步骤

  1. 克隆仓库:
    git clone https://github.com/Yates-zyh/All_You_Need_Is_Camera
    cd project
  2. 安装依赖:
    uv pip install -e .

使用指南

基本启动

python main.py

使用默认设置启动节奏游戏

指定难度级别

python main.py --difficulty easy

可选难度:easy(简单)、normal(普通)、hard(困难)

指定摄像头

python main.py --camera 1

当有多个摄像头时,可以指定使用哪一个

调整窗口大小

python main.py --width 1024 --height 768

根据需要调整游戏窗口大小

游戏控制

在Falling-Note节奏游戏中:

游戏按键控制:

开始体验

想要了解更多关于本项目的信息?访问我们的GitHub页面,获取源代码或参与项目开发!

访问GitHub项目