imread () по-прежнему возвращает пустой мат, несмотря на правильную адресацию в openCV 4.0.0 - PullRequest
0 голосов
/ 12 октября 2018

Я новичок в OPENCV.Теперь я пытаюсь отобразить изображение с помощью imread (), но imread () не работает (продолжаю возвращать пустой мат.) Но когда я пытаюсь нарисовать линии, круги и т. Д. С помощью imread (), это работает хорошо.

Так что я подумал, что с адресацией что-то не так.И я перепробовал все, что мог, но все равно не получилось.И я также нашел много вещей, чтобы решить ее, но я не могу получить никакого ответа на эту проблему.

Что мне делать?Что-то не так, что я пропустил?

В настоящее время я использую Windows 10, Visual Studio 2017 и openCV 4.0.0 alpha.

Вот мой код.

#include <iostream>
#include <opencv2/opencv.hpp>

#ifdef _DEBUG
#pragma comment(lib,"opencv_world400d.lib")
#else
#pragma comment(lib,"opencv_world400.lib")
#endif

using namespace std;
using namespace cv;

int main()
{
    Mat image;
    image =imread("C:/Users/ymin/source/repos/Project1/Project1/BENZ.bmp",IMREAD_ANYCOLOR);
    if (image.empty()) 
    {std::cerr << "Could not open file" << std::endl; return (1);}
    imshow("image", image);
    waitKey();

    return 0;

}

1 Ответ

0 голосов
/ 12 октября 2018

Из документации OpenCV для imread:

Если изображение не может быть прочитано (из-за отсутствующего файла, неправильных разрешений, неподдерживаемого или неверного формата), функциявозвращает пустую матрицу.

Это указывает на то, что файла там нет (возможно, опечатка?), у вас нет разрешения на его чтение, он находится в формате, не распознаваемом OpenCV, или онповрежден.

Убедитесь, что файл находится там, где вы его считаете, и что он доступен для чтения, и что OpenCV скомпилирован для поддержки любого формата, в котором находится файл.

(Обратите внимание, чтоРасширение файла не определяет его формат, вы можете взять файл JPEG и переименовать его, чтобы иметь расширение .bmp, но это все еще файл JPEG.)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...