我正在寻找一种方法来测试相机是否开着PTG相机。
在PyCapture2中,下面的代码可以工作,但是假定的PySpin cam.DeviceConnectionStatus()无法工作,因为函数似乎不存在。
PySpin相机库版本: 1.23.0.27
错误:
错误: Spinnaker: GenICam::AccessException=特性不存在(引用无效):AccessException引发(文件'IEnumerationT.h',第341行) -2006 (False,SpinnakerException("Spinnaker: GenICam::AccessException= Feature存在“(引用无效):AccessException引发(文件'IEnumerationT.h',第341行)-2006年”)
我也尝试过PySpin.Camera.DeviceConnectionStatus(),但是它给出了以下错误,无论是在cam.Init()之前还是之后
回溯(最近一次调用):文件"X.py",第82行,在YZ print (PySpin.Camera.DeviceConnectionStatus()) TypeError:'property‘对象不可调用
工作的PyCapture2代码:
def cameraOn(self, cam):
# Power on the Camera
cameraPower = 0x610
powerVal = 0x80000000
cam.writeRegister(cameraPower, powerVal)
# Waiting for camera to power up
retries = 10
timeToSleep = 0.1 #seconds
for i in range(retries):
sleep(timeToSleep)
try:
regVal = cam.readRegister(cameraPower)
except PyCapture2.Fc2error: # Camera might not respond to register reads during powerup.
pass
awake = True
if regVal == powerVal:
break
awake = False
if not awake:
print ("Could not wake Camera. Exiting...")
exit()发布于 2019-06-07 10:22:53
看起来,PySpin/Spinnaker库中的IsValid()类提供了一个CameraBase()函数。该函数返回bool True,一旦连接成功,通信成功,相机仍然有效使用或"False"。但是,此函数不会在或上关闭。它也不能从睡眠/觉醒状态中获得能量。
对于未知的重新分配,IsValid()函数不会为日志记录或调试目的而报告回溯。因此,除了某些方法之外,请记住实现try/。
try:
... your code ...
except PySpin.SpinnakerException as error:
print('Error: %s' % error)
return False, errorhttps://stackoverflow.com/questions/56452149
复制相似问题