gige 摄像头 linux,海康Gige摄像头搭建过程

GrabImage.py

GrabImage.py抓取了一帧图片,是数据流,我们要解析成图片输入到YOLO里,图片是通过MvCameraControl_class类里的MV_CC_GetOneFrameTimeout函数抓取的,MV_CC_GetOneFrameTimeout是通过动态库MvCameraControl.dll封装的,不过我们只需要解流就好,看 ConvertPixelType.py里的解流过程,解流是通过MvCameraControl_class类里的MV_CC_ConvertPixelType函数实现的,同样是在MvCameraControl.dll,我们需要反编译看下dll文件中函数的实现,反编译失败,都是乱码,海康那边说也不能给源码

stDeviceList = MV_FRAME_OUT_INFO_EX()

memset(byref(stDeviceList), 0, sizeof(stDeviceList))

data_buf = (c_ubyte * nPayloadSize)()

ret = cam.MV_CC_GetOneFrameTimeout(byref(data_buf), nPayloadSize, stDeviceList, 1000)

#MvCameraControl_class类的函数实现,没有什么内容,基本上都是在dll里,完全封装好了

def MV_CC_GetOneFrameTimeout(self, pData, nDataSize, stFrameInfo, nMsec=1000):

MvCamCtrldll.MV_CC_GetOneFrameTimeout.argtype = (c_void_p, c_void_p, c_uint, c_void_p, c_uint)

MvCamCtrldll.MV_CC_GetOneFrameTimeout.restype = c_uint

# C原型:int MV_CC_GetOneFrameTimeout(void* handle, unsigned char * pData , unsigned int nDataSize, MV_FRAME_OUT_INFO_EX* pFrameInfo, unsigned int nMsec)

return MvCamCtrldll.MV_CC_GetOneFrameTimeout(self.handle, pData, nDataSize, byref(stFrameInfo), nMsec)

后来和海康的人沟通询问他们这个流的解码方式,他们说可以自己设置图片格式,然后我就开启了MVS软件把图片设为RGB,解码较为方便。后面发现其实我们只要对返回的pdata指向的data_buf的c_ubyte字节数组进行操作,可以不关心具体的实现过程,因为现在知道了码流的格式。有关c_ubyte的资料蛮少的,我开始是一个个读取字节,每次耗时0.27秒,性能太差,后面诸多尝试,最后发现直接用deepcopy拷贝到一个list再转化为numpy的array,进行reshape为三位矩阵再转化为图片,即可进行检测,帧率由2帧/s提高到20帧/s,还有有一个关键点是把数组转化为np.uint8的类型

#硬着头皮读,0.27s

a = []

for i in range(nPayloadSize):

a.append(data_buf[i])

a = np.array(a)

a = a.reshape(720,1280,3)

a = a.astype(np.uint8)

Img = Image.fromarray(a,"RGB")

#利用deepcopy复制,但是存在小bug,有时候启动设备失败

Piexl = []

Piexl = copy.deepcopy(data_buf)

Piexl = np.array(Piexl)

Piexl = Piexl.reshape(720,1280,3)

Piexl_RGB = Piexl.astype(np.uint8)

Img = Image.fromarray(Piexl_RGB,"RGB")

image = yolo.detect_image(Img)

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 要安装海康Vision Master的GigE驱动,您可以按照以下步骤进行操作: 首先,确保您已经获得了适用于海康Vision Master的GigE驱动程序。您可以从官方网站或其他可靠来源下载最新的驱动程序。 接下来,双击驱动程序安装文件,开始安装过程。通常情况下,将会出现一个安装向导,您只需要按照提示进行操作即可。 在安装过程中,可能需要您同意许可协议并选择安装位置。请根据您的个人需求选择适当的选项。 完成安装后,您需要将您的GigE设备连接到计算机。确保设备正常连接并电源供应正常。 然后,打开海康Vision Master软件。在软件界面上选择“设备配置”或类似选项,进入设备配置界面。 在设备配置界面上,您将看到可以添加设备的选项。选择添加设备,然后选择GigE设备类型。 在添加设备时,系统可能会自动搜索可用的设备。如果没有自动检测到设备,则可能需要手动输入设备的IP地址或其他必要信息。 完成设备添加后,您应该能够看到您的GigE设备在海康Vision Master软件中显示,并且可以正常操作和配置。 总结起来,安装海康Vision Master的GigE驱动涉及下载并安装适当的驱动程序,连接GigE设备,然后在软件中添加和配置设备。记得遵循安装向导的提示,并确保设备连接稳定。 ### 回答2: 要安装海康Vision Master摄像头GigE驱动,首先要确保计算机已经安装了适当的操作系统,并且满足驱动程序的最低系统要求。在安装驱动程序之前,需要确保计算机上没有其他GigE网卡驱动程序或软件与之冲突。 接下来,可以从海康官方网站上下载最新版本的GigE驱动程序。下载完成后,双击安装程序进行安装。 安装过程中可能需要选择安装目录和设置相关选项,按照提示进行操作即可。安装完成后,需要重启计算机以完成驱动程序的安装。 安装完成后,可以将海康Vision Master摄像头连接到计算机的GigE网卡上,并确保摄像头的供电正常。然后,打开Vision Master软件,在设备管理器中搜索并添加相机设备。 如果驱动程序安装成功,相机设备应该能够被检测到并且可以正常使用。可以通过Vision Master软件进行相机参数的设置和图像的采集等操作。 总之,安装海康Vision Master摄像头GigE驱动需要下载驱动程序,进行安装并重启计算机。安装完成后,可以通过Vision Master软件管理和使用相机设备。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值