汇集知识碎片,解决技术难题
有些用户反馈海康的网盘登入不进去,需要注册账号,该怎么办呢?
1194
浏览
9
回答
有问题不会排查,给你思路,速速下载
4364
浏览
13
回答
😀多年项目经验,在3C行业摸爬滚打多年,熟悉对位和瑕疵,有点想自己创业单干,不知可否?
4275
浏览
18
回答
3D激光轮廓仪深度图是16bit吗?能不能储存16bit格式的图片?能不能兼容cdb格式?
5
浏览
3D激光轮廓仪可以使用第三方的3D软件进行使用吗?一般都是16位的深度图,请问,海康的3D激光轮廓仪是多少位的深度图呢?
12
浏览
14
浏览
我标定的话需要上位机软件吗,我用的是六轴机器人? 我N点标定里的物理坐标,跟着机器人手动输进去的。 标定完了以后,我用的是单点纠偏,里的像素点我填的是快速匹配的,匹配框中心xy和角度,示教物理点,我填的是机器人的基准点,然后我找了一个料在中心的位置建立创建基准(x445.175y233.520),然后我把这个料往出偏了一下是(x445.4227y233.5974)我这样做是对的吗? 我把这个数直接发给机器人就行了吧?
26
浏览
1
回答
文档中只有一行字母,如何读取出来添加到全局变量里
22
浏览
3D算子用的图是2D的图吗,还是3D的图,图像控件是始终使用2D图像控件吗
[图片]
14
浏览
1
回答
在响应配置中,是单个相机掉线触发自定义字符发送,那多个相机掉线是怎么配置的呢?
39
浏览
1
回答
GROUP 内输出的数据 外面拿不到,之前的老版本都可以用格式化或者是变量计算获取,现在只能用脚本。
[图片][图片][图片]
21
浏览
1
回答
这几款相机有什么区别,官方的案例好像解释的功能差不多啊[图片]
29
浏览
1
回答
[图片]
40
浏览
1
回答
[图片]
33
浏览
1
回答
相机型号为:MV-CB060-10UM-C ,使用以下的python代码,并且放入了python的SDK,运行报错,报错提示,请问怎么办:
enum devices fail! ret[0x80000006]<br/>
<span style="font-family: monospace, monospace; font-size: 1em;"># -- coding: utf-8 --</span><br/> import cv2
import sys
import copy
import msvcrt
import numpy as np
from ctypes import *
sys.path.append("./MvImport")
from MvCameraControl_class import *
if __name__ == "__main__":
deviceList = MV_CC_DEVICE_INFO_LIST()
tlayerType = MV_GIGE_DEVICE | MV_USB_DEVICE
print(deviceList)
print(tlayerType)
# ch:枚举设备 | en:Enum device
ret = MvCamera.MV_CC_EnumDevices(tlayerType, deviceList)
if ret != 0:
print("enum devices fail! ret[0x%x]" % ret)
sys.exit()
if deviceList.nDeviceNum == 0:
print("find no device!")
sys.exit()
print("find %d devices!" % deviceList.nDeviceNum)
for i in range(0, deviceList.nDeviceNum):
mvcc_dev_info = cast(deviceList.pDeviceInfo[i], POINTER(MV_CC_DEVICE_INFO)).contents
if mvcc_dev_info.nTLayerType == MV_GIGE_DEVICE:
print("\ngige device: [%d]" % i)
strModeName = ""
for per in mvcc_dev_info.SpecialInfo.stGigEInfo.chModelName:
strModeName = strModeName + chr(per)
print("device model name: %s" % strModeName)
nip1 = ((mvcc_dev_info.SpecialInfo.stGigEInfo.nCurrentIp & 0xff000000) >> 24)
nip2 = ((mvcc_dev_info.SpecialInfo.stGigEInfo.nCurrentIp & 0x00ff0000) >> 16)
nip3 = ((mvcc_dev_info.SpecialInfo.stGigEInfo.nCurrentIp & 0x0000ff00) >> 8)
nip4 = (mvcc_dev_info.SpecialInfo.stGigEInfo.nCurrentIp & 0x000000ff)
print("current ip: %d.%d.%d.%d\n" % (nip1, nip2, nip3, nip4))
elif mvcc_dev_info.nTLayerType == MV_USB_DEVICE:
print("\nu3v device: [%d]" % i)
strModeName = ""
for per in mvcc_dev_info.SpecialInfo.stUsb3VInfo.chModelName:
if per == 0:
break
strModeName = strModeName + chr(per)
print("device model name: %s" % strModeName)
strSerialNumber = ""
for per in mvcc_dev_info.SpecialInfo.stUsb3VInfo.chSerialNumber:
if per == 0:
break
strSerialNumber = strSerialNumber + chr(per)
print("user serial number: %s" % strSerialNumber)
nConnectionNum = 0
if int(nConnectionNum) >= deviceList.nDeviceNum:
print("intput error!")
sys.exit()
# ch:创建相机实例 | en:Creat Camera Object
cam = MvCamera()
# ch:选择设备并创建句柄 | en:Select device and create handle
stDeviceList = cast(deviceList.pDeviceInfo[int(nConnectionNum)], POINTER(MV_CC_DEVICE_INFO)).contents
ret = cam.MV_CC_CreateHandle(stDeviceList)
if ret != 0:
print("create handle fail! ret[0x%x]" % ret)
sys.exit()
# ch:打开设备 | en:Open device
ret = cam.MV_CC_OpenDevice(MV_ACCESS_Exclusive, 0)
if ret != 0:
print("open device fail! ret[0x%x]" % ret)
sys.exit()
# ch:探测网络最佳包大小(只对GigE相机有效) | en:Detection network optimal package size(It only works for the GigE camera)
if stDeviceList.nTLayerType == MV_GIGE_DEVICE:
nPacketSize = cam.MV_CC_GetOptimalPacketSize()
if int(nPacketSize) > 0:
ret = cam.MV_CC_SetIntValue("GevSCPSPacketSize", nPacketSize)
if ret != 0:
print("Warning: Set Packet Size fail! ret[0x%x]" % ret)
else:
print("Warning: Get Packet Size fail! ret[0x%x]" % nPacketSize)
# ch:设置触发模式为off | en:Set trigger mode as off
ret = cam.MV_CC_SetEnumValue("TriggerMode", MV_TRIGGER_MODE_OFF)
if ret != 0:
print("set trigger mode fail! ret[0x%x]" % ret)
sys.exit()
# ch:获取数据包大小 | en:Get payload size
stParam = MVCC_INTVALUE()
memset(byref(stParam), 0, sizeof(MVCC_INTVALUE))
ret = cam.MV_CC_GetIntValue("PayloadSize", stParam)
if ret != 0:
print("get payload size fail! ret[0x%x]" % ret)
sys.exit()
nPayloadSize = stParam.nCurValue
# ch:开始取流 | en:Start grab image
ret = cam.MV_CC_StartGrabbing()
if ret != 0:
print("start grabbing fail! ret[0x%x]" % ret)
sys.exit()
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)
if ret == 0:
print("get one frame: Width[%d], Height[%d], nFrameNum[%d]" % (
stDeviceList.nWidth, stDeviceList.nHeight, stDeviceList.nFrameNum))
nRGBSize = stDeviceList.nWidth * stDeviceList.nHeight * 3
stConvertParam = MV_SAVE_IMAGE_PARAM_EX()
stConvertParam.nWidth = stDeviceList.nWidth
stConvertParam.nHeight = stDeviceList.nHeight
stConvertParam.pData = data_buf
stConvertParam.nDataLen = stDeviceList.nFrameLen
stConvertParam.enPixelType = stDeviceList.enPixelType
stConvertParam.nImageLen = stConvertParam.nDataLen
stConvertParam.nJpgQuality = 70
stConvertParam.enImageType = MV_Image_Jpeg
stConvertParam.pImageBuffer = (c_ubyte * nRGBSize)()
stConvertParam.nBufferSize = nRGBSize
# ret = cam.MV_CC_ConvertPixelType(stConvertParam)
print(stConvertParam.nImageLen)
ret = cam.MV_CC_SaveImageEx2(stConvertParam)
if ret != 0:
print("convert pixel fail ! ret[0x%x]" % ret)
del data_buf
sys.exit()
file_path = "AfterConvert_RGB2.jpg"
file_open = open(file_path.encode('ascii'), 'wb+')
img_buff = (c_ubyte * stConvertParam.nImageLen)()
cdll.msvcrt.memcpy(byref(img_buff), stConvertParam.pImageBuffer, stConvertParam.nImageLen)
file_open.write(img_buff)
print("Save Image succeed!")
# ch:停止取流 | en:Stop grab image
ret = cam.MV_CC_StopGrabbing()
if ret != 0:
print("stop grabbing fail! ret[0x%x]" % ret)
del data_buf
sys.exit()
# ch:关闭设备 | Close device
ret = cam.MV_CC_CloseDevice()
if ret != 0:
print("close deivce fail! ret[0x%x]" % ret)
del data_buf
sys.exit()
# ch:销毁句柄 | Destroy handle
ret = cam.MV_CC_DestroyHandle()
if ret != 0:
print("destroy handle fail! ret[0x%x]" % ret)
del data_buf
sys.exit()
del data_buf
28
浏览
1
回答
谁能分享下SC6000的软件VM客户端下载地址?
36
浏览
1
回答
[图片]
32
浏览
1
回答
目前问题,sdk取图正常,传输过程中图像数据会变,1是原图,2是dll接受到的图[图片][图片]
48
浏览
2
回答
g.CopyFromScreen在visionmaster的脚本中使用不了吗?
34
浏览
1
回答
还是1和2是ok的
[图片]
43
浏览
1
回答
回答 11获赞 14
回答 10获赞 4
回答 5获赞 99
4.
回答 4获赞 100
5.
回答 3获赞 828
6.
回答 3获赞 153
7.
回答 3获赞 85
8.
回答 3获赞 37
9.
回答 3获赞 3
10.
回答 2获赞 24