2012-07-15 11 views
5

Właśnie zacząłem próbować grać z OpenCV i napisałem mały program z książki, która jest całkiem prosta. Problem polega na tym, że kiedy próbuję to skompilować, pojawia się ten błąd. Dam ci wszystkie informacje, które mam. Zainstalowałem openCV używając homebrew dla Mac OS X 10.7.Błąd w OpenCV 2.4.2 "Błąd OpenCV: Zła flaga"

#include <opencv2/core/core.hpp> 
#include <opencv2/highgui/highgui.hpp> 

int main(int argc, char *argv[]) 
{ 
cv::Mat image = cv::imread("usf.gif"); 
cv::namedWindow("My Image"); 
cv::imshow("My Image", image); 
cv::waitKey(5000); 

return 1; 
} 

Skompilowałem podobało:

g++ -o test opencvtest.cc -lopencv_core -lopencv_imgproc -lopencv_calib3d -lopencv_video -lopencv_features2d -lopencv_ml -lopencv_highgui -lopencv_objdetect -lopencv_contrib -lopencv_legacy 

A to co mam z powrotem, gdy starałem się go uruchomić.

OpenCV Error: Bad flag (parameter or structure field) (Unrecognized or unsupported array type) in cvGetMat, file /tmp/homebrew-opencv-2.4.2-oQmu/OpenCV-2.4.2/modules/core/src/array.cpp, line 2482 
terminate called throwing an exceptionAbort trap: 6 

Jeszcze raz dziękuję.

+1

spróbuj załadować dowolny inny obraz jak jpg lub png i sprawdzić, czy ten sam błąd pochodzi. –

+0

To działało idealnie. Ale pozostawiam to pytanie z nadzieją, że ktoś może odpowiedzieć, dlaczego nie działa z gifami. Wiedza to potęga. – Red

+0

Możesz przeczytać dokumenty funkcji 'imread', aby poznać obsługiwane formaty. –

Odpowiedz

9

To dlatego OpenCV nie obsługuje gif:

The function imread loads an image from the specified file and returns it. If the image can not be read (because of missing file, improper permissions, unsupported or invalid format), the function returns empty matrix (Mat::data==NULL).Currently, the following file formats are supported:

Windows bitmaps - *.bmp, *.dib (always supported)

JPEG files - *.jpeg, *.jpg, *.jpe (see Note2)

JPEG 2000 files - *.jp2 (see Note2)

Portable Network Graphics - *.png (see Note2)

Portable image format - *.pbm, *.pgm, *.ppm (always supported)

Sun rasters - *.sr, *.ras (always supported)

TIFF files - *.tiff, *.tif (see Note2)

Zobacz docs.

2

Myślę, że „gify” nie są obsługiwane

Powiązane problemy