用python进行大恒相机的调试

一、背景

工作中需要用到大恒相机

跟大恒工程师沟通,拿到API接口库

二、直接上代码:

import gxipy as gx

import cv2

import numpy as np

import sys

#初始化设备管理器

device_manager = gx.DeviceManager()

#枚举设备,返回设备数量和设备信息列表

dev_num, dev_info_list = device_manager.update_device_list()

if dev_num == 0:

print("No devices found")

sys.exit(1)

#获取第一个设备的序列号并打开设备

str_sn = dev_info_list[0].get("sn")

cam = device_manager.open_device_by_sn(str_sn)

#开始采集

cam.stream_on()

try:

while True:

从第 0 个流通道获取一幅图像

raw_image = cam.data_stream[0].get_image()

复制代码
   if raw_image is None:
        continue

    # 从彩色原始图像获取 RGB 图像
    rgb_image = raw_image.convert("RGB")

    if rgb_image is None:
        continue

    # 从 RGB 图像数据创建 numpy 数组
    numpy_image = rgb_image.get_numpy_array()

    if numpy_image is None:
        continue

    # 将图像从 RGB 转换为 BGR,因为 OpenCV 使用 BGR 格式
    bgr_image = cv2.cvtColor(numpy_image, cv2.COLOR_RGB2BGR)

    # 显示图像
    cv2.imshow("Real-Time Image", bgr_image)

    # 按下 'q' 键退出循环
    if cv2.waitKey(1) & 0xFF == ord('q'):
        break
    elif cv2.waitKey(1) & 0xFF == ord('s'):
        cv2.imwrite('saved_image.png', bgr_image)

finally:

停止采集并关闭设备

cam.stream_off()

cam.close_device()

#关闭所有 OpenCV 窗口

cv2.destroyAllWindows()

三、说明:

gxipy 这个库文件可以找大恒工程师要,拿到后就可以直接调用。目前在用的黑白,彩色相机都是同一套。

相关推荐
超级大只老咪18 分钟前
何为“类”?(Java基础语法)
java·开发语言·前端
我笑了OvO1 小时前
C++类和对象(1)
java·开发语言·c++·类和对象
无咎.lsy1 小时前
裸K初级篇 - (一)蜡烛突破信号
python
可触的未来,发芽的智生2 小时前
新奇特:神经网络的集团作战思维,权重共享层的智慧
人工智能·python·神经网络·算法·架构
渡我白衣3 小时前
C++ 异常处理全解析:从语法到设计哲学
开发语言·c++·面试
jerryinwuhan3 小时前
Python数据挖掘之基础分类模型_支持向量机(SVM)
python·支持向量机·数据挖掘
StarPrayers.3 小时前
基于PyTorch的CIFAR10加载与TensorBoard可视化实践
人工智能·pytorch·python·深度学习·机器学习
深蓝电商API3 小时前
实战破解前端渲染:当 Requests 无法获取数据时(Selenium/Playwright 入门)
前端·python·selenium·playwright
悦悦子a啊3 小时前
[Java]PTA: jmu-Java-02基本语法-08-ArrayList入门
java·开发语言·算法
程序边界4 小时前
AI时代如何高效学习Python:从零基础到项目实战de封神之路(2025升级版)
人工智能·python·学习