Ho riscontrato un problema con un codice OpenCV di base. Ecco il mio codice:Problema con la lettura di un'immagine utilizzando la funzione "cv :: imread" in OpenCv
cv::Mat src;
src=imread("Calibration.bmp",0);
if (src.empty())
cout << "Cannot load image" << " ";
else
cout << src.cols << " " << src.rows << " ";
Purtroppo cv :: imread torna matrice nulla con qualsiasi tipo di immagine in ingresso (ho cercato .bmp, .jpg). Il nome file sembra funzionare correttamente (il programma non termina con errori), poiché l'utilizzo di un nome file errato genera un messaggio di errore. Ho provato a usare oldstyle "CvLoadImage" ma si è verificato lo stesso risultato. Qualcuno ha qualche idea su come risolvere questo problema?
Nella directory OpenCV \ lib si dovrebbero trovare due tipi di file .lib (ad esempio: cv210.lib e cv210d.lib). Se si sta creando la soluzione in modalità di debug, nelle proprietà del progetto è necessario collegarsi al cv210d.lib, se si sta creando la soluzione in modalità di rilascio, è necessario collegarsi al cv210.lib. La stessa cosa corrisponde ai file dll di OpenCV/bin dorectory. Spero che possa essere d'aiuto e scusa se non rispondo per un po ':/ – Marcin
È vero, ma perché sta succedendo questo? Perché altre funzioni funzionano perfettamente anche se si mescolano le librerie. Perché questa funzione? http://stackoverflow.com/q/9125817/744859 –
Mi hai appena salvato da un sacco di mal di testa. Grazie. – Aliostad