Sto usando OpenCV2.2 per implementare il rilevamento di oggetti in movimento con il metodo di sottrazione di sfondo. E io uso il metodo Gaussian Mixture Model (GMM) per modellare l'immagine di riferimento dello sfondo.Come utilizzare cv :: BackgroundSubtractorMOG in OpenCV?
Ho ottenuto direttamente i pixel in primo piano (o maschera di primo piano) utilizzando la classe cv :: BackgroundSubtractorMOG fornita in OpenCV2.2. È comodo, ma la maschera di primo piano restituita da cv :: BackgroundSubtractorMOG non è buona come mi aspettavo. Inoltre, sembra che cv :: BackgroundSubtractorMOG abbia prestazioni inferiori rispetto al metodo di GMM scritto in linguaggio C fornito in OpenCV1.0.
Quanto segue è il mio codice in OpenCV2.2:
cv::BackgroundSubtractorMOG mog;
mog(frame, fgMask, 0.01);
Così, ho usato il metodo in modo sbagliato?
A proposito, cv :: BackgroundSubtractorMOG esegue la rimozione dell'ombra sui pixel in primo piano?
Grazie mille.
Ecco una panoramica utile, da 3.0 documenti, di utilizzare le funzioni di sottotitolazione di sfondo di OpenCV: http://docs.opencv.org/master/db/d5c/tutorial_py_bg_subtraction.html – Pierz