Есть ли какая-либо функция в опциях захвата рабочего стола OpenCV или Emgu CV?(аддоны, библиотеки, классы) - PullRequest
3 голосов
/ 11 июля 2010

Есть ли какая-либо функция в опциях захвата рабочего стола OpenCV или Emgu CV? (аддоны, библиотеки, классы) Итак, я знаю, что мы можем очень просто снимать камеру, есть ли вариант захвата рабочего стола таким образом?

Ответы [ 2 ]

1 голос
/ 14 июля 2010

Я бы порекомендовал сделать снимок экрана вне Emgu (т. Е. Не в Emgu C ++ / C #).

Первый шаг - создать растровое изображение из изображения на экране. Есть много сайтов, подробно описывающих способы, как это сделать. Я нашел этот полезным.

Если у вас есть растровое изображение, можно легко создать новое изображение Emgu <,> из него. Вот документация для этого .

Удачи и веселья!

0 голосов
/ 14 марта 2017

Это решение также не входит в emgucv: вы также можете использовать резкое System.Drawing.Graphics.CopyFromScreen

Bitmap bitmap = new Bitmap(Screen.PrimaryScreen.Bounds.Width, Screen.PrimaryScreen.Bounds.Height);
Graphics graphics = Graphics.FromImage(bitmap as Image);
graphics.CopyFromScreen(0, 0, 0, 0, bitmap.Size);
...