ezgo 0.0.7__py3-none-any.whl → 0.0.8__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
ezgo/__init__.py CHANGED
@@ -8,7 +8,7 @@ ezgo - 宇树Go2机器狗Python控制库
8
8
  支持运动控制、视频流获取、UI界面等功能。
9
9
  """
10
10
 
11
- __version__ = "0.0.7"
11
+ __version__ = "0.0.8"
12
12
  __author__ = "ezgo"
13
13
  __email__ = ""
14
14
  __license__ = "MIT"
@@ -20,8 +20,6 @@ try:
20
20
  from .ui import APP
21
21
  from .go2_camera import Go2Camera
22
22
  from .go2_vui import Go2VUI
23
- from .eztk import EasyTk
24
- from .ezcamera import Camera as EzCamera
25
23
  except ImportError as e:
26
24
  print(f"警告: 无法导入部分模块: {e}")
27
25
  print("请确保已安装所有依赖包")
@@ -30,8 +28,6 @@ except ImportError as e:
30
28
  APP = None
31
29
  Go2Camera = None
32
30
  Go2VUI = None
33
- EasyTk = None
34
- EzCamera = None
35
31
 
36
32
  # 定义公开的API
37
33
  __all__ = [
@@ -40,54 +36,6 @@ __all__ = [
40
36
  "APP",
41
37
  "Go2Camera",
42
38
  "Go2VUI",
43
- "EasyTk",
44
- "EzCamera",
45
39
  "__version__"
46
40
  ]
47
41
 
48
- # 依赖检查和提示
49
- def _check_dependencies():
50
- """检查关键依赖是否安装,并给出安装提示"""
51
- missing_deps = []
52
-
53
- try:
54
- import cv2
55
- except ImportError:
56
- missing_deps.append("opencv-python")
57
-
58
- try:
59
- import numpy
60
- except ImportError:
61
- missing_deps.append("numpy")
62
-
63
- try:
64
- from PIL import Image
65
- except ImportError:
66
- missing_deps.append("Pillow")
67
-
68
- try:
69
- import netifaces
70
- except ImportError:
71
- missing_deps.append("netifaces")
72
-
73
- try:
74
- import unitree_sdk2py
75
- except ImportError:
76
- missing_deps.append("unitree-sdk2py")
77
-
78
- if missing_deps:
79
- print("=" * 60)
80
- print("警告: ezgo 缺少以下依赖包:")
81
- for dep in missing_deps:
82
- print(f" - {dep}")
83
- print()
84
- print("请安装缺少的依赖包:")
85
- print(" pip install opencv-python numpy Pillow netifaces")
86
- print(" # unitree-sdk2py 需要从官方源安装")
87
- print("=" * 60)
88
- return False
89
-
90
- return True
91
-
92
- # 在导入时进行依赖检查
93
- _check_dependencies()
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: ezgo
3
- Version: 0.0.7
3
+ Version: 0.0.8
4
4
  Summary: 宇树Go2机器狗Python控制库
5
5
  Author-email: ezgo <noreply@example.com>
6
6
  License: MIT
@@ -49,8 +49,6 @@ Requires-Dist: unitree-sdk2py; extra == "full"
49
49
  - 📷 **摄像头控制**: 支持图片获取和视频流处理
50
50
  - 🔊 **声光控制**: 支持LED灯光和音量控制
51
51
  - 🎮 **UI界面**: 提供图形化控制界面
52
- - 🖼️ **EasyTk界面**: 简化的tkinter界面封装,适合教学使用
53
- - 📹 **EzCamera摄像头**: 优化的摄像头控制,支持多平台和硬件加速
54
52
  - 🔧 **易于使用**: 简洁的API设计,支持懒加载
55
53
  - 📦 **可选依赖**: 核心功能轻量,按需安装依赖
56
54
 
@@ -214,64 +212,6 @@ if robot.init():
214
212
  robot.AutoRecoverSet(False)
215
213
  ```
216
214
 
217
- ### EasyTk 简化界面开发
218
-
219
- ```python
220
- import ezgo
221
-
222
- # 创建EasyTk窗口(自动适配灵芯派480x800分辨率)
223
- app = ezgo.EasyTk(title="机器狗控制", size="480x800")
224
-
225
- # 添加标签
226
- label = app.add_label(text="欢迎使用ezgo", font=("SimHei", 24))
227
-
228
- # 添加按钮
229
- def on_click():
230
- print("按钮被点击了!")
231
-
232
- button = app.add_button(text="点击我", command=on_click)
233
-
234
- # 添加图片显示(支持文件路径、OpenCV图像、PIL图像)
235
- image_label = app.add_label(image="path/to/image.jpg")
236
-
237
- # 运行主循环
238
- app.root.mainloop()
239
- ```
240
-
241
- ### EzCamera 优化摄像头控制
242
-
243
- ```python
244
- import ezgo
245
- import cv2
246
-
247
- # 创建摄像头对象(自动适配平台)
248
- camera = ezgo.EzCamera(index=0, width=640, height=480, fps=30)
249
-
250
- # 打开摄像头
251
- if camera.open():
252
- print("摄像头打开成功!")
253
-
254
- # 读取最新帧
255
- frame = camera.read()
256
- if frame is not None:
257
- # 保存图片
258
- camera.save_image(frame, "capture.jpg")
259
-
260
- # 调整尺寸
261
- resized = camera.resize(frame, (224, 224))
262
-
263
- # 裁剪为正方形
264
- square = camera.crop_to_square(frame)
265
-
266
- # 显示图像
267
- cv2.imshow("Camera", frame)
268
- cv2.waitKey(0)
269
- cv2.destroyAllWindows()
270
-
271
- # 关闭摄像头
272
- camera.close()
273
- ```
274
-
275
215
  ## API 参考
276
216
 
277
217
  ### Go2 类
@@ -367,47 +307,6 @@ if camera.open():
367
307
  - `set_volume(level)`: 设置音量 (0-10)
368
308
  - `get_volume()`: 获取当前音量
369
309
 
370
- ### EasyTk 类
371
-
372
- 简化的tkinter界面封装,专为教学和快速开发设计。
373
-
374
- #### 主要方法
375
-
376
- - `__init__(title="APP", size=None)`: 初始化窗口,自动适配灵芯派
377
- - `add_frame(master=None, **kwargs)`: 添加框架容器
378
- - `add_label(master=None, **kwargs)`: 添加标签,支持文本和图片
379
- - `add_button(master=None, **kwargs)`: 添加按钮
380
- - `config(widget, **kwargs)`: 配置组件属性
381
-
382
- #### 特性
383
-
384
- - **自动适配**: 在Linux系统下自动设置480x800分辨率和全屏模式
385
- - **简化布局**: 使用pack布局,简化界面开发
386
- - **图片支持**: 直接支持文件路径、OpenCV图像、PIL图像
387
- - **教学友好**: 适合学生快速上手GUI开发
388
-
389
- ### EzCamera 类
390
-
391
- 优化的摄像头控制类,支持多平台和硬件加速。
392
-
393
- #### 主要方法
394
-
395
- - `__init__(index=0, width=640, height=480, fps=30)`: 初始化摄像头
396
- - `open(timeout=5)`: 打开摄像头,支持硬件加速
397
- - `read()`: 读取最新帧(非阻塞)
398
- - `save_image(frame, filename="frame.jpg")`: 保存图像
399
- - `resize(frame, size=(224, 224))`: 调整图像尺寸
400
- - `crop_to_square(frame)`: 裁剪为正方形
401
- - `close()`: 关闭摄像头
402
-
403
- #### 特性
404
-
405
- - **多平台支持**: Linux(V4L2)、Windows(DSHOW)、macOS自动适配
406
- - **硬件加速**: 支持MJPG格式和缓冲区优化
407
- - **双缓冲**: 使用双缓冲机制避免图像撕裂
408
- - **线程安全**: 独立读取线程,主线程非阻塞
409
- - **帧率控制**: 精确的帧率控制,避免累积误差
410
-
411
310
  ## 依赖要求
412
311
 
413
312
  ### 核心依赖
@@ -460,24 +359,15 @@ pip install opencv-python numpy Pillow netifaces
460
359
 
461
360
  ## 更新日志
462
361
 
463
- ### v0.0.7 (2025-12-09)
464
- **新增功能**:
465
- - ✨ 新增EasyTk简化界面封装类,专为教学设计
466
- - ✨ 新增EzCamera优化摄像头控制类,支持多平台硬件加速
467
- - ✨ EasyTk自动适配灵芯派480x800分辨率和全屏模式
468
- - ✨ EzCamera支持双缓冲机制和线程安全读取
469
- - ✨ 完善图片处理功能:调整尺寸、裁剪正方形、保存图像
470
-
362
+ ### v0.0.8 (2025-12-09)
471
363
  **改进**:
472
- - 🔧 优化模块导入结构,新增EasyTk和EzCamera到公开API
473
- - 🔧 增强平台兼容性,自动检测并适配不同操作系统
474
- - 🔧 完善文档,添加详细的使用示例和API说明
475
- - 🔧 改进错误处理,提供更友好的错误提示
476
-
477
- **特性**:
478
- - 🖼️ EasyTk支持直接显示文件路径、OpenCV图像、PIL图像
479
- - 📹 EzCamera支持MJPG硬件加速和V4L2优化
480
- - 🎯 教学友好,简化GUI开发和摄像头操作流程
364
+ - 🔧 移除自动依赖检查逻辑,避免导入时的警告提示
365
+ - 🔧 用户按需使用功能,不再强制检查所有依赖
366
+ - 🔧 提升用户体验,减少不必要的警告信息
367
+
368
+ **修复**:
369
+ - 🐛 修复使用eztk时频繁提示unitree-sdk2py依赖的问题
370
+ - 🐛 修复导入库时自动检查所有模块依赖的逻辑
481
371
 
482
372
  ### v0.0.5 (2025-12-04)
483
373
  **新增功能**:
@@ -1,4 +1,4 @@
1
- ezgo/__init__.py,sha256=oRflrSHwO_CTnNJ2ZvhNmW-ezZP1hh9RtJWOx7bkjIo,2120
1
+ ezgo/__init__.py,sha256=SmjryJFLe9pyCHe62Kk0USHpz9V2e7Btn30k46Hd4kM,838
2
2
  ezgo/camera.py,sha256=Vsr44vFtaop4LE0DlWyOHyvxF-jHnVO8iMPUwp5mbsE,2538
3
3
  ezgo/ezcamera.py,sha256=6-3y-1X_L60QsWdsd5-caLoj7Quy9rpyHdp3Tq3JFbU,6536
4
4
  ezgo/eztk.py,sha256=MHWkkZYIL1AFjUXFu2Qq8U9idJV_E1VxFUBe82dvbyA,10463
@@ -6,8 +6,8 @@ ezgo/go2.py,sha256=lSZwpYRAljcV4bAalkZXvs9X-qMaEGcuaHSNegGcX6M,31610
6
6
  ezgo/go2_camera.py,sha256=nawUSLyvqTNiVRQ2sM-UdoJzqwZcySltLbCfUb0G9Qc,8614
7
7
  ezgo/go2_vui.py,sha256=52I4Y8uqGkW9muDEnDzQ236HqVVTIgNIN_2gW5RTC48,10161
8
8
  ezgo/ui.py,sha256=jUik6maaoemI2vsBM92OLZfJfskg54W7hwMls_gxppg,2777
9
- ezgo-0.0.7.dist-info/LICENSE,sha256=Zk4eZBT3KaBhqM3LB_xN7QquwnoWsEHAoA6eLdE6W5M,1060
10
- ezgo-0.0.7.dist-info/METADATA,sha256=dshHGchZ_YsggtBJPzcXzDNKaIgJysgOWMlizX7Hr_4,16626
11
- ezgo-0.0.7.dist-info/WHEEL,sha256=iAkIy5fosb7FzIOwONchHf19Qu7_1wCWyFNR5gu9nU0,91
12
- ezgo-0.0.7.dist-info/top_level.txt,sha256=BdCFEVD5V_4FxUtvH0BVlZKgxYnp7EKNsYs5OyFxj-g,5
13
- ezgo-0.0.7.dist-info/RECORD,,
9
+ ezgo-0.0.8.dist-info/LICENSE,sha256=Zk4eZBT3KaBhqM3LB_xN7QquwnoWsEHAoA6eLdE6W5M,1060
10
+ ezgo-0.0.8.dist-info/METADATA,sha256=ri12uqjYaCo_s3UEjukU6LDhBKKjtgAOhw1eURlTjlw,13088
11
+ ezgo-0.0.8.dist-info/WHEEL,sha256=iAkIy5fosb7FzIOwONchHf19Qu7_1wCWyFNR5gu9nU0,91
12
+ ezgo-0.0.8.dist-info/top_level.txt,sha256=BdCFEVD5V_4FxUtvH0BVlZKgxYnp7EKNsYs5OyFxj-g,5
13
+ ezgo-0.0.8.dist-info/RECORD,,
File without changes
File without changes