Не удается обработать cv::imshow GTK предупреждение
На тестовой машине без головы (Travis CI), при использовании cv::imshow
Я получаю сбой программы и отображаю:
Gtk-WARNING **: cannot open display:
Сообщение кажется нормальным. Но я не могу преуспеть в ловле ошибки!
Я пытался с этим кодом:
try
{
// create a window for display.
cv::namedWindow( name, CV_WINDOW_AUTOSIZE );
// Show our image inside it.
cv::imshow( name, img );
// take time to effectively display the image
cv::waitKey(1000);
}
catch (cv::Exception& e)
{
std::cout << "OpenCV GUI not able to pop up: " << e.what() <<
"\nProbably executing on a headless test machine? " << std::endl;
}
... и даже с
catch (...)
безуспешно.
Любая помощь... поможет!
Спасибо
Изменить: я нашел обходной путь здесь: https://github.com/itseez-academy/itseez-ws-2016-practice/blob/master/.travis.yml используя xvfb, чтобы не допустить cv::imshow
(или же cv::namedWindow
) поднять ошибку "no display"... На самом деле, это не решает проблему, которую я не смог уловить с ошибкой gtk.