Ask Your Question

What is the easiest way to display a cv::Mat in a decoration free full-screen window?

asked 2012-08-31 14:13:54 -0600

Lucas Walter gravatar image

updated 2019-12-09 08:12:26 -0600

Akhil Patel gravatar image

Being able to remove window decoration (the bar with the minimize/maximize buttons and name, and any window border) from a highgui namedWindow would be ideal, but that doesn't seem possible.

I'm currently considering using SDL which I think SDL_NOFRAME and SDL_SetVideoMode() solves my problem, but I'm curious if there is a faster or easier way. I don't want it to be too difficult to convert the cv::Mat to the new format, and it should also be high performance (low-latency and 10s of fps framerate).

This is using Linux and X windows, and the latest 2.4 OpenCV with Qt and OpenGL built in, so making X, Qt, or OpenGL calls would be acceptable.

edit retag flag offensive close merge delete


are you sure that the "window decoration" hurts you so bad? to make it fullscreen you have to use external libraries and write additional code. I don't think it is worth the effort

yes123 gravatar imageyes123 ( 2012-09-01 04:48:49 -0600 )edit

1 answer

Sort by ยป oldest newest most voted

answered 2012-09-05 12:44:38 -0600

Lucas Walter gravatar image

updated 2012-09-05 13:00:39 -0600

Here is a decoration free fullscreen (which I overlooked before) which doesn't quite answer my question but may be suitable for now:

cv::setWindowProperty("mywindow", WND_PROP_FULLSCREEN, CV_WINDOW_FULLSCREEN);

This always fullscreens on the monitor that has the menus on it in a multi monitor setup which is not ideal- I want the fullscreen output to be on a screen that is uncluttered by menus because the point of it is to be a presentation output. Changing the which monitor has the menus is a matter of dragging the menu in the Ubuntu System Settings | System Tools | Displays dialog.

edit flag offensive delete link more

Question Tools



Asked: 2012-08-31 14:13:54 -0600

Seen: 3,236 times

Last updated: Sep 05 '12