2013-10-15 2 views
1

Я нашел этот классный класс для просмотра веб-камеры (http://www.vbforums.com/showthread.php?344471-Vb-Net-WebCam-Class-%28ICam%29), но для этого требуются графические ящики, которые вы не можете использовать в консольном приложении.Съемка снимка с помощью веб-камеры в консольном приложении

Так что мне просто интересно, есть ли способ сделать снимок с помощью веб-камеры в консольном приложении с использованием этого класса?

Я использую Visual Basic .NET (2010)


Вот код для создания моментального снимка с помощью приложения формы, если кто интересуется:

Private Sub Snap() 
    Dim Webcam As iCam = New iCam 
    Webcam.initCam(PictureBox1.Handle.ToInt32) 
    Application.DoEvents() 
    If Webcam.iRunning Then 
     PictureBox2.Image = Webcam.copyFrame(PictureBox1, New RectangleF(0, 0, PictureBox1.Width, PictureBox1.Height)) 
    End If 
    Webcam.closeCam() 
    Webcam = Nothing 
End Sub 

ответ

0

Вы можете все еще использовать класс чтобы выполнить эту работу, но вам, вероятно, придется ее отредактировать. Сначала вы можете попробовать передать Nothing в качестве параметра picturebox, но это будет работать только в том случае, если класс проверяет, нет ли в ящике изображения NothingNot.

Если это не так, все равно было бы не так сложно редактировать. Похоже, веб-камера обновляет «исходный кадр изображения» с изображением, а функция copyFrame извлекает изображение из этого окна изображения после того, как у него есть назначенное изображение. Вместо использования этого изображения вы можете сохранить изображение с веб-камеры в файл и изменить функцию copyFrame, чтобы получить изображение, которое оно вернет из этого пути изображения, а не из окна изображения.

Смежные вопросы