Skip to main content

Easy AI Robot Control Library for Go2 and Computer Vision

Project description

EZAI - 简单易用的AI机器人控制库

PyPI version Python versions License: MIT

EZAI是一个专为Go2机器狗和AI应用设计的简化Python接口库,让机器人控制和计算机视觉变得简单易用。

🚀 特性

  • 简单易用: 专为初学者设计的API接口
  • 模块化设计: 支持按需导入,减少依赖
  • Go2机器狗控制: 完整的运动控制和视频流支持
  • 计算机视觉: 集成OpenCV,支持图像处理和显示
  • AI工作流: 支持ONNX和RKNN模型推理
  • 教育友好: 适合STEM教育和编程学习

📦 安装

基础安装

pip install ezai-go2

完整安装(包含所有可选依赖)

pip install ezai-go2[all]

仅安装ONNX支持

pip install ezai-go2[onnx]

仅安装RKNN支持

pip install ezai-go2[rknn]

🔧 Go2 SDK安装

要使用Go2机器狗控制功能,需要额外安装unitree-sdk2py:

# 从官方源码安装
git clone https://github.com/unitreerobotics/unitree_sdk2_python.git
cd unitree_sdk2_python
pip install -e .

📖 快速开始

Go2机器狗控制

from ezai import Go2

# 创建Go2控制器
dog = Go2()

# 连接机器狗
if dog.connect():
    # 前进
    dog.move(0.5, 0, 0)  # vx=0.5, vy=0, vyaw=0
    time.sleep(2)
    
    # 停止
    dog.move(0, 0, 0)
    
    # 断开连接
    dog.disconnect()

计算机视觉

from ezai import Camera, OpenCVUI

# 创建摄像头
camera = Camera()
ui = OpenCVUI()

# 捕获图像
image = camera.capture()
if image is not None:
    # 显示图像
    ui.show_image("Camera", image)
    ui.waitKey(0)

AI推理(ONNX)

from ezai import ONNXWorkflow

# 创建ONNX工作流
workflow = ONNXWorkflow("model.onnx")

# 加载图像
image = cv2.imread("test.jpg")

# 运行推理
result = workflow.run(image)
print(f"推理结果: {result}")

📚 模块说明

Go2模块

  • Go2: Go2机器狗主控制类
  • 支持运动控制、状态查询、视频流等
  • 自动网络接口检测和IP配置

Camera模块

  • Camera: 摄像头控制类
  • 支持USB摄像头和网络摄像头
  • 简化的图像捕获接口

UI模块

  • OpenCVUI: OpenCV显示界面类
  • 简化的图像显示和交互接口
  • 支持窗口管理和事件处理

AI工作流模块

  • ONNXWorkflow: ONNX模型推理
  • RKNNWorkflow: RKNN模型推理
  • 统一的推理接口设计

🛠️ 开发

安装开发依赖

pip install ezai-go2[dev]

运行测试

pytest tests/

代码格式化

black ezai/

📋 依赖要求

  • Python >= 3.7
  • OpenCV >= 4.5.0
  • NumPy <= 1.24.3
  • Pillow >= 8.0.0
  • netifaces >= 0.10.0

可选依赖:

  • unitree-sdk2py (Go2控制)
  • onnx + onnxruntime (ONNX推理)
  • rknn-toolkit2 (RKNN推理)

🤝 贡献

欢迎提交Issue和Pull Request!

📄 许可证

本项目采用MIT许可证 - 详见 LICENSE 文件

📞 联系方式

🙏 致谢

感谢Unitree机器人提供的Go2 SDK支持!

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

ezai_go2-1.2.4.tar.gz (43.6 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

ezai_go2-1.2.4-py3-none-any.whl (22.2 kB view details)

Uploaded Python 3

File details

Details for the file ezai_go2-1.2.4.tar.gz.

File metadata

  • Download URL: ezai_go2-1.2.4.tar.gz
  • Upload date:
  • Size: 43.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.8.6

File hashes

Hashes for ezai_go2-1.2.4.tar.gz
Algorithm Hash digest
SHA256 8b97bb3e29706c681742276cb2697ebb91878a297e2053624ce5f66eae7b8f81
MD5 9abea98e030ccea164fae90a6f0f0a3a
BLAKE2b-256 a236db68b6462d7148cc698f42edf1e98e6bbda08979addc1cf6f15e0aac78c6

See more details on using hashes here.

File details

Details for the file ezai_go2-1.2.4-py3-none-any.whl.

File metadata

  • Download URL: ezai_go2-1.2.4-py3-none-any.whl
  • Upload date:
  • Size: 22.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.8.6

File hashes

Hashes for ezai_go2-1.2.4-py3-none-any.whl
Algorithm Hash digest
SHA256 e9a5f5d197527034dfbb31301d949936b9058bc4d68b8b5b8e5d37526741f433
MD5 66958a772ff8a307dfb054714632480e
BLAKE2b-256 d2eeef25d7a1b8896a0749c7416036734c4534f9d6bc8a3a1a8b4f78cdc4611b

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page