Ich benutze OpenCV2 auf Ubuntu 12.04. Ich kann Bildlese-Anzeige-Codes erfolgreich ausführen. Ich kann jedoch keine Codes mit eingebauten Funktionen ausführen, z. cvtColor()Opencv2 cvtColor() funktioniert nicht
#include <opencv2/core/core.hpp>
#include <opencv2/highgui/highgui.hpp>
#include <stdio.h>
int main(int argc, char *argv[])
{
cv::Mat image = cv::imread("img.jpg");
if(image.data == NULL)
{
printf("file cannot be loaded\n");
return 1;
}
cv::namedWindow("My");
cv::imshow("My", image);
cv::Mat result;
cv::cvtColor(image, result, CV_BGR2Luv);
cv::imwrite("outImg.jpg", result);
cv::waitKey(0);
return 0;
}
Ich bin mit Qt-Creator für meine OpenCV Nachdem mit --libs Kompilieren --cflags Ich erhalte folgende Compiler-Fehler:
make: Entering directory `/home/swaroop/Work/ai-junkies/cuda/uc_davis/opencv2.x/OpenCV2Test'
g++ -g -c -pipe -O2 -Wall -W -D_REENTRANT -DQT_WEBKIT -DQT_NO_DEBUG -DQT_CORE_LIB -DQT_SHARED -I/usr/share/qt4/mkspecs/linux-g++ -I. -I/usr/include/qt4/QtCore -I/usr/include/qt4 -I/usr/include/opencv -I. -o main.o main.cpp
main.cpp: In function 'int main(int, char**)':
main.cpp:22:29: error: 'CV_BGR2Luv' was not declared in this scope
main.cpp:22:39: error: 'cvtColor' was not declared in this scope
Bitte helfen Sie mir dieses Problem zu beheben.
Sie sind richtig. Ich musste # opencv2/imgproc/imgproc.hpp> einschließen. – mkuse
Gibt es einen einfachen Weg zu wissen (ohne zu fragen), welche Header-Dateien enthalten sein sollen? – PaulrBear