First time here? Check out the FAQ!

Ask Your Question
1

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

asked Aug 31 '12

Lucas Walter gravatar image

updated Dec 9 '19

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.

Preview: (hide)

Comments

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 (Sep 1 '12)edit

1 answer

Sort by » oldest newest most voted
4

answered Sep 5 '12

Lucas Walter gravatar image

updated Sep 5 '12

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.

Preview: (hide)

Question Tools

2 followers

Stats

Asked: Aug 31 '12

Seen: 3,467 times

Last updated: Sep 05 '12