采集卡bug修复

This commit is contained in:
Ray
2025-10-29 14:06:05 +08:00
parent 3f1dd4e8c1
commit 0e16ec99c3
3 changed files with 123 additions and 7 deletions

67
test_camera.py Normal file
View File

@@ -0,0 +1,67 @@
"""
采集卡测试脚本
用于测试采集卡是否能正常工作
"""
import cv2
from utils.get_image import GetImage
from config import config_manager
def test_camera():
"""测试采集卡"""
print("🔧 采集卡测试工具")
print("=" * 50)
# 获取活动配置
active_group = config_manager.get_active_group()
if active_group is None:
print("❌ 没有活动的配置组")
print("请先运行 python gui_config.py 设置配置")
return
print(f"📋 使用配置: {active_group['name']}")
print(f" 采集卡索引: {active_group['camera_index']}")
print(f" 分辨率: {active_group['camera_width']}x{active_group['camera_height']}")
print()
# 初始化采集卡
get_image = GetImage(
cam_index=active_group['camera_index'],
width=active_group['camera_width'],
height=active_group['camera_height']
)
if get_image.cap is None:
print("❌ 采集卡初始化失败")
return
print("✅ 采集卡初始化成功")
print("'q' 退出测试")
print()
# 测试循环
frame_count = 0
while True:
frame_data = get_image.get_frame()
if frame_data is None:
print("⚠️ 无法获取帧")
continue
frame_count += 1
if frame_count % 30 == 0: # 每30帧显示一次状态
print(f"📊 已获取 {frame_count}")
# 显示图像
cv2.imshow('采集卡测试', frame_data[0])
# 按 'q' 退出
if cv2.waitKey(1) & 0xFF == ord('q'):
break
# 清理
get_image.release()
cv2.destroyAllWindows()
print("🔚 测试结束")
if __name__ == "__main__":
test_camera()