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.3.1.tar.gz (52.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.3.1-py3-none-any.whl (24.3 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: ezai_go2-1.3.1.tar.gz
  • Upload date:
  • Size: 52.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.3.1.tar.gz
Algorithm Hash digest
SHA256 7c7873d5981f10f54c2f082f1d2fb8c852715377786c3990c5726c586a134d26
MD5 1f12f04fb00dd804921af85855eabeb3
BLAKE2b-256 6c210eab8e99ef4bc85b52bca99428f75cc99a04ddd327629859437ce733fd39

See more details on using hashes here.

File details

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

File metadata

  • Download URL: ezai_go2-1.3.1-py3-none-any.whl
  • Upload date:
  • Size: 24.3 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.3.1-py3-none-any.whl
Algorithm Hash digest
SHA256 4585b72b7c095246462bc63b6ad373d2f6f958b601e450c0c8ed1c890747476f
MD5 d1120cfc2ae0e6f47a71cdf1384c6049
BLAKE2b-256 f35df1d05140e2757e04859044686967024acafd94c266267edab3c64a3669f3

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