xpresser - это проект, работающий в Ubuntu, который также использует opencv. В модуле xutils есть функция для создания снимка экрана, которая выглядит следующим образом:
def take_screenshot(x=0, y=0, width=None, height=None):
window = gtk.gdk.get_default_root_window()
if not (width and height):
size = window.get_size()
if not width:
width = size[0]
if not height:
height = size[1]
pixbuf = gtk.gdk.Pixbuf(gtk.gdk.COLORSPACE_RGB, False, 8, width, height)
pixbuf = pixbuf.get_from_drawable(window, window.get_colormap(),
x, y, 0, 0, width, height)
array = pixbuf.get_pixels_array()
return Image("screenshot", array=array,
width=array.shape[1], height=array.shape[0])
Надеюсь, это поможет.