我有一个问题,使用巴斯勒塔ip相机,同时抓取。我设置我的ip如下所示。

我使用了来自Github basler/pypylon/grab.py的pypylon的grab.py代码。当我在另一台计算机上尝试它时,它可以工作,但是它会在我的计算机上抛出一个超时异常。你能帮我解决这个问题吗?
守则:
from pypylon import pylon
from pypylon import genicam
import sys
countOfImagesToGrab = 100
exitCode = 0
try:
camera = pylon.InstantCamera(pylon.TlFactory.GetInstance().CreateFirstDevice())
camera.Open()
print("Using device ", camera.GetDeviceInfo().GetModelName())
new_width = camera.Width.GetValue() - camera.Width.GetInc()
if new_width >= camera.Width.GetMin():
camera.Width.SetValue(new_width)
camera.MaxNumBuffer = 5
camera.StartGrabbingMax(countOfImagesToGrab)
while camera.IsGrabbing():
grabResult = camera.RetrieveResult(5000, pylon.TimeoutHandling_ThrowException)
if grabResult.GrabSucceeded():
print("SizeX: ", grabResult.Width)
print("SizeY: ", grabResult.Height)
img = grabResult.Array
print("Gray value of first pixel: ", img[0, 0])
else:
print("Error: ", grabResult.ErrorCode, grabResult.ErrorDescription)
grabResult.Release()
camera.Close()
except genicam.GenericException as e:
print("An exception occurred.")
print(e.GetDescription())
exitCode = 1
sys.exit(exitCode)和错误是: _genicam.TimeoutException:抓取超时。可能的原因是:来自摄像设备的图像传输不能正常工作,例如,所有用于流传输的GigE网络数据包都被丢弃;照相机使用显式触发(更多信息见TriggerSelector ),并且没有被触发;使用单帧捕获模式,并且已经获取了一帧;采集尚未启动或停止。:引发的TimeoutException (文件‘insttcameraImpl.h’,第1037行)

发布于 2021-12-14 15:48:30
错误部分中有一个警告,即摄像机是显式触发的。我想grab方法是以另一种方式触发的。为此,可以用startgrabbingmax更改代码中的camera.StartGrabbing(pylon.GrabStrategy_LatestImageOnly)方法,然后再试一次吗?
https://stackoverflow.com/questions/69794148
复制相似问题