при компиляции приведенного ниже кода..
#include <opencv2/core/core.hpp>
#include <opencv2/imgcodecs.hpp>
#include <opencv2/highgui/highgui.hpp>
#include <iostream>
#include <string>
using namespace cv;
using namespace std;
int main( int argc, char** argv )
{
string imageName("../Desktop/image.jpeg"); // by default
if( argc > 1)
{
imageName = argv[1];
}
Mat image;
image = imread(imageName.c_str(), IMREAD_COLOR); // Read the file
if( image.empty() ) // Check for invalid input
{
cout << "Could not open or find the image" << std::endl ;
return -1;
}
namedWindow( "Display window", WINDOW_AUTOSIZE ); // Create a window for display.
imshow( "Display window", image ); // Show our image inside it.
waitKey(0); // Wait for a keystroke in the window
return 0;
}
произошла следующая ошибка.
hello.cpp:2:33: fatal error: opencv2/imgcodecs.hpp: No such file or directory
#include <opencv2/imgcodecs.hpp>
Пожалуйста, предложите решение
решение1
sudo apt-file list libopencv-imgcodecs-dev
возможно, вам сначала нужно установить «apt-file»:
sudo apt-get install apt-file
sudo apt update
apt-file может показать вам правильный путь. В этом случае это должно быть:
#include <opencv2/imgcodecs/imgcodecs.hpp>
решение2
Просто используйте sudo apt install libopencv-dev
. Если пакет dev не установлен, у вас не будет никаких заголовков opencv.