为什么 PySpin.CameraList().GetSize() return 零设备?

Why does PySpin.CameraList().GetSize() return zero devices?

为什么以下代码 return 是通过 PySpin.System() class 而不是通过 PySpin.CameraList() class 使用设备的摄像师?

return 值可能会有所不同,具体取决于您连接的制造商相机数量。

import PySpin

system = PySpin.System.GetInstance()

cam_list = system.GetCameras()

numCams  = cam_list.GetSize()                 # return value >= 1

numCams2  = PySpin.CameraList().GetSize()     # return value  = 0 

print ("No. of cams: %s - %s" % (numCams, numCams2))

结果:

No. of cams: 1 - 0

class PySpin.System(*args, **kwargs):

此处系统对象 GetCameras() 用于检索 OS 上可用的接口和相机列表。 这仅在使用静态系统指针 GetInstance() 时有效。然后将设备加载到 CameraList() 因此不为空。

class PySpin.CameraList(*args):

用于保存相机对象列表,不会自行检索。

因此,numCams = len(system.GetCameras())也将用于获取设备数量。