Ho intenzione di iniziare a sperimentare con BLOB come utente C++, con una certa esperienza in cv :: Mat di OpenCV.Blob con OpenCV. Quale libreria è la migliore?
Ora la domanda è: quale libreria di blob dovrei usare se non del tutto?
ho visto queste alternative finora:
- cvBlobs (on google code) - che è una libreria C in realtà, lavorando con IplImage quindi ha bisogno serio adattamento al C++.
- CvBlobsLib (on willowgarage opencv webpage) - che sembra una libreria C++ ma ha documenti piuttosto scadenti con un sacco di cose lasciate inspiegabili e quasi nessun esempio di codice.
- Ho visto cv :: findContours, cv :: moments e cv :: drawContours nella libreria OpenCV 2.4.3.
Cosa suggerisci come esperto? Il mio problema urgente: quale sarà il nuovo OpenCV non coprendo di cvBlobs su google code?
ecco il link per la domanda di follow-up su questo argomento, in cui chiedo SimpleBlobDetector. Potresti essere interessato
OK, questa risposta sembra eccitante! Non sono sicuro di poterlo fare funzionare. Ho le seguenti preoccupazioni: questo restituisce solo il centro del blob, non posso avere un intero, etichettato Mat, posso? Inoltre, come posso accedere alle caratteristiche dei blob rilevati come area, convessità, colore e così via? Dovrei metterlo come domanda a parte e mi prometti di dare un'occhiata? :) –
Ora sembra piuttosto un tutorial per me con un concetto non troppo maturo, non è neanche molto estensibile. :(Forse implementerò il mio wrapper su CBlob e lo installerò da qualche parte su –
Il [link] (http://docs.opencv.org/modules/features2d/doc/common_interfaces_of_feature_detectors.html#keypoint) 'Keypoint' classe (cioè l'uscita della funzione di rilevamento) contiene la dimensione come diametro oltre al centro di ciascun blob rilevato.Inoltre, nel costruttore di 'SimpleBlobDetector', è possibile specificare i colori, la circolarità, l'area, la convessità desiderati e inerzia. Devi semplicemente inserirli nel costruttore in questo modo: 'SimpleBlobDetector myBlobDetector (bool filterByArea = true, float minArea = 10, float maxArea = 100);' – thealmightygrant