Reddit – computervision – Alternativa a imshow() + waitKey() per il debug in tempo reale in OpenCV
Il Dicembre 31, 2021 da adminÈ passato molto tempo da quando ho usato OpenCV, ma ricordo di aver usato waitKey(1)
per visualizzare i nostri frame in tempo reale. I ritardi di un singolo millisecondo non dovrebbero fare una differenza significativa per la maggior parte delle elaborazioni – anche se stai elaborando a 100FPS, probabilmente vorrai comunque imshow ogni pochi frame. Non importa cosa, il vostro programma deve elaborare gli eventi che sono stati accodati dal sistema operativo ad un certo punto per rispondere all’input. waitKey
è il modo di OpenCV di assicurarsi che questa elaborazione di eventi abbia luogo, anche se la vostra applicazione è altrimenti single-threaded. Se non state muovendo il mouse, la quantità di eventi da elaborare sarà banale. In alternativa, se passate a Qt et. al., probabilmente vorrete comunque fare tutta la vostra elaborazione della visione su un thread separato. E se stai usando tutti i core per la tua elaborazione, avrai bisogno di passare al contesto di un thread di gestione degli eventi abbastanza frequentemente se non vuoi che la tua GUI si blocchi, quindi sosterrai lo stesso costo come se stessi usando waitKey. Sicuramente passate a Qt/wx se pensate di aver bisogno di qualche tipo di interattività, ma non è una panacea per il problema della velocità.
Lascia un commento