OpenCV cv :: imshow () графический интерфейс не отображается - PullRequest
0 голосов
/ 04 апреля 2019

Я пытаюсь отобразить изображение, где очень важно иметь возможность увеличения. На моем компьютере с Ubuntu Gnome 16.04 графический интерфейс всегда отображается, а изображение можно масштабировать.

Но на моем компьютере с Ubuntu 18.04 графический интерфейс никогда не отображается и не масштабируется. Я пробовал следующие способы создания окна:

cv::namedWindow("Name", CV_WINDOW_AUTOSIZE);
cv::namedWindow("Name", CV_GUI_NORMAL);
cv::namedWindow("Name", CV_GUI_EXTENDED);

с помощью команд cv::namedWindow() и cvNamedWindow(). Все они работают на моей машине 16.04, но не на моей 18.04.

Моя версия OpenCV - 3.2, и я использую ее в рабочей области ROS, если это что-то меняет.

1 Ответ

1 голос
/ 04 апреля 2019

Полагаю, используемые вами флаги могут быть устаревшими. Как и в документации OpenCV 3.2.0 , используются следующие флаги:

  • WINDOW_NORMAL или WINDOW_AUTOSIZE : WINDOW_NORMAL позволяет изменить размер окна, тогда как WINDOW_AUTOSIZE автоматически настраивает размер окна, чтобы соответствовать отображаемому изображению (см. Imshow), и вы не можете измените размер окна вручную.

  • WINDOW_FREERATIO или WINDOW_KEEPRATIO : WINDOW_FREERATIO регулирует изображение без учета его соотношения, тогда как WINDOW_KEEPRATIO сохраняет соотношение изображений.

Эти флаги могут работать на вас.

...