[OpenCV] imread 읽기 데이터가 비어 있음
1712 단어 OpenCV
프로그램은 다음과 같습니다.
4
Mat image = imread ("lena.jpg");
imshow("lena",image);
cvWaitKey(0);
처음에는 경로의 문제인 줄 알았는데 우연히 Iplimage로 이미지를 가져와 그림을 잘 읽을 수 있다.4
IplImage *src;
src = cvLoadImage("lena.jpg"); // lena.jpg lena.cpp
cvNamedWindow("lena",CV_WINDOW_AUTOSIZE);
cvShowImage("lena",src);
cvWaitKey(0);
cvDestroyWindow("lena");
cvReleaseImage(&src);
인터넷 검색설을 검색한 결과 드디어 원인을 발견했습니다(원래 링크는 이미 분실되었으니 스스로 검색할 수 있습니다). 원래는 OpenCV 설정에 문제가 생겼습니다!그렇습니다. 이전에 설정할 때 Debug이든Release의 추가 의존항이든 모든lib을 추가했습니다. 즉, Debug와Release가 구분되지 않은 것입니다.그러나 실제로 OpenCv는 파일 이름 끝에 d가 있는 것은 Debug 라이브러리 함수이고 d가 없는 것은 Release 라이브러리 함수이다.라이브러리 함수를 분리하여 추가 종속성에 추가하기만 하면 됩니다.
Debug 라이브러리:
opencv_calib3d244d.lib opencv_contrib244d.lib opencv_core244d.lib opencv_features2d244d.lib opencv_flann244d.lib opencv_gpu244d.lib opencv_highgui244d.lib opencv_imgproc244d.lib opencv_legacy244d.lib opencv_ml244d.lib opencv_nonfree244d.lib opencv_objdetect244d.lib opencv_photo244d.lib opencv_stitching244d.lib opencv_ts244d.lib opencv_video244d.lib opencv_videostab244d.lib
Release 라이브러리:
opencv_calib3d244.lib opencv_contrib244.lib opencv_core244.lib opencv_features2d244.lib opencv_flann244.lib opencv_gpu244.lib opencv_highgui244.lib opencv_imgproc244.lib opencv_legacy244.lib opencv_ml244.lib opencv_nonfree244.lib opencv_objdetect244.lib opencv_photo244.lib opencv_stitching244.lib opencv_ts244.lib opencv_video244.lib opencv_videostab244.lib
이렇게 수정한 후에 프로그램을 실행하면 정상적으로 그림을 읽을 수 있습니다!
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
Visual Studio 2017에서 OpenCV 템플릿 프로젝트 만들기・Windows 7 Professional 64bit ・Visual Studio 2017 Version 15.9.14 · OpenCV 3.4.1 OpenCV의 도입 방법 등은 아래를 참조하십시오. Visual Stu...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.