OpenCV 中的 VideoCapture 利用緩衝區來儲存擷取的訊框。雖然此緩衝區可以增強效能,但如果處理不當,可能會導致延遲。
對於特定硬體配置,OpenCV 提供 CV_CAP_PROP_BUFFERSIZE 屬性。透過設定此屬性,您可以控制緩衝區大小,減少舊幀的累積。
此駭客方法監視時間採取擷取訊框。如果時間非常短,則假定該訊框來自緩衝區並被丟棄。一旦時間超過某個閾值,返回的幀就被認為是最新的。
防止緩衝區累積,專用執行緒可以使用grab()高速連續擷取影格。當主工作執行緒需要幀時,它可以使用自旋鎖等同步機制從該緩衝區執行緒中取得幀。
以上是如何消除 OpenCV 中的視訊擷取延遲?的詳細內容。更多資訊請關注PHP中文網其他相關文章!