[英]1 second video stream latency occurred with Emgu CV
我有一個視線解碼器設備通過以太網連接到我的PC。
我使用Emgucv捕獲視頻流並在圖像框中查看它。
這是代碼的一部分:
_capture = new Capture("udp://@169.254.1.144:15004");
_capture.ImageGrabbed += ProcessFrame;
Image<Bgr, Byte> frame,frame1;
private void ProcessFrame(object sender, EventArgs arg)
{
frame = _capture.RetrieveBgrFrame();
pictureBox1.Image = frame.ToBitmap();
}
在Imagebox
觀看的視頻,但有1秒的延遲; 我計算出幀達到了ProcessFramefunction
及其12fps和正確的水平;
ImageGrabbed
事件是否導致此延遲?
為什么會發生延遲?
注意:我使用USB攝像頭代替了視線,並且效果很好; 另外,可以通過以太網播放攝像機的視線外線也可以正常工作。
這是由“捕獲”對象使用的默認緩沖區的長度引起的。 原始OpenCV具有一個“ CV_CAP_PROP_BUFFERSIZE”標志,您可以使用.set()進行設置以更改此值
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.