SlideShare uma empresa Scribd logo
21/08/2016 C# ­ Capturando e Salvando Imagens da WebCam
http://www.macoratti.net/16/03/c_capwebc1.htm 1/5
C# ‐
Capturando e Salvando Imagens
da WebCam ﴾revisitado﴿
 Neste artigo eu vou mostrar mais uma
forma de capturar e salvar imagens a
partir de uma WebCam instalada em
um computador local.
Este é um artigo para iniciantes que mostra mais uma maneira de capturar imagens de uma WebCam local salvando‐
as no sistema de arquivos.
Neste exemplo estou usando a biblioteca DirectX que segue junto com o projeto.
Recursos usados:
Visual Studio Community 2015
Nota: Baixe e use a versão Community 2015 do VS ela é grátis e é equivalente a versão Professional.
Criando o projeto no VS Community
Abra o VS Community 2015 e clique em New Project;
Selecione a linguagem Visual C# e o template Windows Forms Application;
Informe o nome CapturaImagemWebCam e clique no botão OK;
No formulário form1.cs inclua a partir da ToolBox os seguintes controles:
1 PictureBox ‐ picWebCam
1 PictureBox ‐ picImagem
2 Buttons ‐ btnCapturar e btnSalvar
Disponha os controles conforme o leiaute da figura a seguir:
21/08/2016 C# ­ Capturando e Salvando Imagens da WebCam
http://www.macoratti.net/16/03/c_capwebc1.htm 2/5
A seguir declare os seguintes namespaces no formulário form1.cs:
No início do formulário vamos declarar as variáveis que iremos usar no projeto:
No evento Load do formulário vamos incluir o código abaixo que identifica o dispositivo WebCam e exibe a imagem
em picWebCam e captura a imagem em picImagem:
private void Form1_Load﴾object sender, EventArgs e﴿
{
CamContainer = new DirectX.Capture.Filters﴾﴿;
try
{
int no_of_cam = CamContainer.VideoInputDevices.Count;
for ﴾int i = 0; i < no_of_cam; i++ ﴿
{
try
{
// obtém o dispositivo de entrada do vídeo
Camera = CamContainer.VideoInputDevices[i];
// inicializa a Captura usando o dispositivo
CaptureInfo = new DirectX.Capture.Capture﴾Camera, null﴿;
// Define a janela de visualização do vídeo
CaptureInfo.PreviewWindow = this.picWebCam;
// Capturando o tratamento de evento
CaptureInfo.FrameCaptureComplete += AtualizaImagem;
// Captura o frame do dispositivo
CaptureInfo.CaptureFrame﴾﴿;
// Se o dispositivo foi encontrado e inicializado então sai sem checar o resto
break;
21/08/2016 C# ­ Capturando e Salvando Imagens da WebCam
http://www.macoratti.net/16/03/c_capwebc1.htm 3/5
}
catch ﴾Exception ex﴿
{
throw ex;
}
}
}
catch ﴾Exception ex﴿
{
MessageBox.Show﴾this, ex.Message﴿;
}
}
No método AtualizaImagem temos o código que captura a imagem da webcam no picturebox picImagem:
public void AtualizaImagem﴾PictureBox frame﴿
{
try
{
capturaImagem = frame.Image;
this.picImagem.Image = capturaImagem;
}
catch ﴾Exception ex﴿
{
MessageBox.Show﴾"Erro " + ex.Message﴿;
}
}
Para capturar outro frame da WebCam basta clicar no botão Capturar Imagem que possui o seguinte código no seu
evento Click:
private void btnCaptura_Click﴾object sender, EventArgs e﴿
{
try
{
CaptureInfo.CaptureFrame﴾﴿;
}
catch ﴾Exception ex﴿
{
MessageBox.Show﴾"Erro " + ex.Message﴿;
}
}
Finalmente no evento Click do botão Salvar Imagem digite o código a seguir:
private void btnSalvar_Click﴾object sender, EventArgs e﴿
{
try
{
caminhoImagemSalva = @"c:dados" + "ImagemWebCam" + DateTime.Now.Day.ToString﴾﴿ +
DateTime.Now.Month.ToString﴾﴿ + DateTime.Now.Year.ToString﴾﴿ + DateTime.Now.Millisecond.ToString﴾﴿ + ".jpg";
picImagem.Image.Save﴾caminhoImagemSalva, ImageFormat.Jpeg﴿;
MessageBox.Show﴾"Imagem salva com sucesso"﴿;
}
catch﴾Exception ex﴿
{
MessageBox.Show﴾"Erro " + ex.Message﴿;
}
}
Este código salva a imagem em uma pasta pré‐definida com o nome ImagemWebCam mais o dia, o mês, o ano e os
milesegundos.
Agora é só alegria...
Executando o projeto e capturando uma imagem temos o seguinte resultado:
21/08/2016 C# ­ Capturando e Salvando Imagens da WebCam
http://www.macoratti.net/16/03/c_capwebc1.htm 4/5
Fique a vontade para alterar o projeto e incrementar novas funcionalidades.
Pegue o projeto completo aqui:  CapturaImagemWebCam.zip
Porque do céu se manifesta a ira de Deus sobre toda a impiedade e injustiça dos homens, que detêm a verdade
em injustiça.
Porquanto o que de Deus se pode conhecer neles se manifesta, porque Deus lho manifestou.
Porque as suas coisas invisíveis, desde a criação do mundo, tanto o seu eterno poder, como a sua divindade, se
entendem, e claramente se vêem pelas coisas que estão criadas, para que eles fiquem inescusáveis;
Romanos 1:18‐20
Veja os Destaques e novidades do SUPER DVD Visual Basic (sempre atualizado) :
clique e confira !
Quer migrar para o VB .NET ?
Veja mais sistemas completos para a plataforma .NET no Super DVD .NET ,
confira...
Curso Básico VB .NET ‐ Vídeo Aulas
Quer aprender C# ??
Chegou o Super DVD C# com exclusivo material de suporte e vídeo aulas
com curso básico sobre C#.
Curso C# Basico ‐ Video Aulas
Quer aprender os conceitos da Programação Orientada a objetos ?
Curso Fundamentos da Programação Orientada a Objetos com VB .NET
Quer aprender o gerar relatórios com o ReportViewer no VS 2013 ?
 Curso ‐ Gerando Relatórios com o ReportViewer no VS 2013 ‐
Vídeo Aulas
  Gostou ?   Compartilhe no Facebook   Compartilhe no Twitter
Referências:
Seção VB .NET do Site Macoratti.net
21/08/2016 C# ­ Capturando e Salvando Imagens da WebCam
http://www.macoratti.net/16/03/c_capwebc1.htm 5/5
Super DVD .NET ‐ A sua porta de entrada na plataforma .NET
Super DVD Vídeo Aulas ‐ Vídeo Aula sobre VB .NET, ASP .NET e C#
Seção C# do site Macoratti.net
Super DVD C#
Super DVD Visual Basic
Curso Básico VB .NET ‐ Vídeo Aulas
Curso C# Básico ‐ Vídeo Aulas
VB.NET ‐ Capturando imagens com Web Cam ‐ Macoratti.net
Capturando imagens de uma Web Cam ‐ Macoratti.net
VB .NET ‐ Usando uma WebCam ‐ Macoratti.net
VB .NET ‐ Tratando imagens da WebCam ‐ Macoratti.net
VB .NET ‐ Cadastro com Foto ‐ Macoratti.net
José Carlos Macoratti

Mais conteúdo relacionado

PDF
Storytelling For The Web: Integrate Storytelling in your Design Process
PDF
Artificial Intelligence, Data and Competition – SCHREPEL – June 2024 OECD dis...
PDF
How to Leverage AI to Boost Employee Wellness - Lydia Di Francesco - SocialHR...
PDF
2024 Trend Updates: What Really Works In SEO & Content Marketing
PDF
Jfreechart tutorial
PPTX
Replicación de una base de datos en oracle
PDF
APOSTILA_LOGICA-PROPOSICOES-CONECTIVOS-TABELA-VERDADE.pdf
PDF
Signature electronique CertSign
Storytelling For The Web: Integrate Storytelling in your Design Process
Artificial Intelligence, Data and Competition – SCHREPEL – June 2024 OECD dis...
How to Leverage AI to Boost Employee Wellness - Lydia Di Francesco - SocialHR...
2024 Trend Updates: What Really Works In SEO & Content Marketing
Jfreechart tutorial
Replicación de una base de datos en oracle
APOSTILA_LOGICA-PROPOSICOES-CONECTIVOS-TABELA-VERDADE.pdf
Signature electronique CertSign

Último (6)

PDF
Certificado de Conclusão Jornada Inteligência Artificial
PDF
PROJETO DE PESQUISA PRONTO ESTÉTICA 2025 ABNT.pdf
PPTX
AULA_12_BASQUETE CAPACIDADE FÍSICA_171023.pptx
PDF
Agosto-Lilas-Conscientizacao-e-Combate-a-Violencia-contra-a-Mulher.pdf
PDF
PROJETO DE PESQUISA PRONTO FONOAUDIOLOGIA 2025 ABNT.pdf
PPT
Aula_15.pptssssssssssssssssssssssssssssssssssssss
Certificado de Conclusão Jornada Inteligência Artificial
PROJETO DE PESQUISA PRONTO ESTÉTICA 2025 ABNT.pdf
AULA_12_BASQUETE CAPACIDADE FÍSICA_171023.pptx
Agosto-Lilas-Conscientizacao-e-Combate-a-Violencia-contra-a-Mulher.pdf
PROJETO DE PESQUISA PRONTO FONOAUDIOLOGIA 2025 ABNT.pdf
Aula_15.pptssssssssssssssssssssssssssssssssssssss
Anúncio
Anúncio

C# capturando e salvando imagens da web cam

  • 1. 21/08/2016 C# ­ Capturando e Salvando Imagens da WebCam http://www.macoratti.net/16/03/c_capwebc1.htm 1/5 C# ‐ Capturando e Salvando Imagens da WebCam ﴾revisitado﴿  Neste artigo eu vou mostrar mais uma forma de capturar e salvar imagens a partir de uma WebCam instalada em um computador local. Este é um artigo para iniciantes que mostra mais uma maneira de capturar imagens de uma WebCam local salvando‐ as no sistema de arquivos. Neste exemplo estou usando a biblioteca DirectX que segue junto com o projeto. Recursos usados: Visual Studio Community 2015 Nota: Baixe e use a versão Community 2015 do VS ela é grátis e é equivalente a versão Professional. Criando o projeto no VS Community Abra o VS Community 2015 e clique em New Project; Selecione a linguagem Visual C# e o template Windows Forms Application; Informe o nome CapturaImagemWebCam e clique no botão OK; No formulário form1.cs inclua a partir da ToolBox os seguintes controles: 1 PictureBox ‐ picWebCam 1 PictureBox ‐ picImagem 2 Buttons ‐ btnCapturar e btnSalvar Disponha os controles conforme o leiaute da figura a seguir:
  • 2. 21/08/2016 C# ­ Capturando e Salvando Imagens da WebCam http://www.macoratti.net/16/03/c_capwebc1.htm 2/5 A seguir declare os seguintes namespaces no formulário form1.cs: No início do formulário vamos declarar as variáveis que iremos usar no projeto: No evento Load do formulário vamos incluir o código abaixo que identifica o dispositivo WebCam e exibe a imagem em picWebCam e captura a imagem em picImagem: private void Form1_Load﴾object sender, EventArgs e﴿ { CamContainer = new DirectX.Capture.Filters﴾﴿; try { int no_of_cam = CamContainer.VideoInputDevices.Count; for ﴾int i = 0; i < no_of_cam; i++ ﴿ { try { // obtém o dispositivo de entrada do vídeo Camera = CamContainer.VideoInputDevices[i]; // inicializa a Captura usando o dispositivo CaptureInfo = new DirectX.Capture.Capture﴾Camera, null﴿; // Define a janela de visualização do vídeo CaptureInfo.PreviewWindow = this.picWebCam; // Capturando o tratamento de evento CaptureInfo.FrameCaptureComplete += AtualizaImagem; // Captura o frame do dispositivo CaptureInfo.CaptureFrame﴾﴿; // Se o dispositivo foi encontrado e inicializado então sai sem checar o resto break;
  • 3. 21/08/2016 C# ­ Capturando e Salvando Imagens da WebCam http://www.macoratti.net/16/03/c_capwebc1.htm 3/5 } catch ﴾Exception ex﴿ { throw ex; } } } catch ﴾Exception ex﴿ { MessageBox.Show﴾this, ex.Message﴿; } } No método AtualizaImagem temos o código que captura a imagem da webcam no picturebox picImagem: public void AtualizaImagem﴾PictureBox frame﴿ { try { capturaImagem = frame.Image; this.picImagem.Image = capturaImagem; } catch ﴾Exception ex﴿ { MessageBox.Show﴾"Erro " + ex.Message﴿; } } Para capturar outro frame da WebCam basta clicar no botão Capturar Imagem que possui o seguinte código no seu evento Click: private void btnCaptura_Click﴾object sender, EventArgs e﴿ { try { CaptureInfo.CaptureFrame﴾﴿; } catch ﴾Exception ex﴿ { MessageBox.Show﴾"Erro " + ex.Message﴿; } } Finalmente no evento Click do botão Salvar Imagem digite o código a seguir: private void btnSalvar_Click﴾object sender, EventArgs e﴿ { try { caminhoImagemSalva = @"c:dados" + "ImagemWebCam" + DateTime.Now.Day.ToString﴾﴿ + DateTime.Now.Month.ToString﴾﴿ + DateTime.Now.Year.ToString﴾﴿ + DateTime.Now.Millisecond.ToString﴾﴿ + ".jpg"; picImagem.Image.Save﴾caminhoImagemSalva, ImageFormat.Jpeg﴿; MessageBox.Show﴾"Imagem salva com sucesso"﴿; } catch﴾Exception ex﴿ { MessageBox.Show﴾"Erro " + ex.Message﴿; } } Este código salva a imagem em uma pasta pré‐definida com o nome ImagemWebCam mais o dia, o mês, o ano e os milesegundos. Agora é só alegria... Executando o projeto e capturando uma imagem temos o seguinte resultado:
  • 4. 21/08/2016 C# ­ Capturando e Salvando Imagens da WebCam http://www.macoratti.net/16/03/c_capwebc1.htm 4/5 Fique a vontade para alterar o projeto e incrementar novas funcionalidades. Pegue o projeto completo aqui:  CapturaImagemWebCam.zip Porque do céu se manifesta a ira de Deus sobre toda a impiedade e injustiça dos homens, que detêm a verdade em injustiça. Porquanto o que de Deus se pode conhecer neles se manifesta, porque Deus lho manifestou. Porque as suas coisas invisíveis, desde a criação do mundo, tanto o seu eterno poder, como a sua divindade, se entendem, e claramente se vêem pelas coisas que estão criadas, para que eles fiquem inescusáveis; Romanos 1:18‐20 Veja os Destaques e novidades do SUPER DVD Visual Basic (sempre atualizado) : clique e confira ! Quer migrar para o VB .NET ? Veja mais sistemas completos para a plataforma .NET no Super DVD .NET , confira... Curso Básico VB .NET ‐ Vídeo Aulas Quer aprender C# ?? Chegou o Super DVD C# com exclusivo material de suporte e vídeo aulas com curso básico sobre C#. Curso C# Basico ‐ Video Aulas Quer aprender os conceitos da Programação Orientada a objetos ? Curso Fundamentos da Programação Orientada a Objetos com VB .NET Quer aprender o gerar relatórios com o ReportViewer no VS 2013 ?  Curso ‐ Gerando Relatórios com o ReportViewer no VS 2013 ‐ Vídeo Aulas   Gostou ?   Compartilhe no Facebook   Compartilhe no Twitter Referências: Seção VB .NET do Site Macoratti.net
  • 5. 21/08/2016 C# ­ Capturando e Salvando Imagens da WebCam http://www.macoratti.net/16/03/c_capwebc1.htm 5/5 Super DVD .NET ‐ A sua porta de entrada na plataforma .NET Super DVD Vídeo Aulas ‐ Vídeo Aula sobre VB .NET, ASP .NET e C# Seção C# do site Macoratti.net Super DVD C# Super DVD Visual Basic Curso Básico VB .NET ‐ Vídeo Aulas Curso C# Básico ‐ Vídeo Aulas VB.NET ‐ Capturando imagens com Web Cam ‐ Macoratti.net Capturando imagens de uma Web Cam ‐ Macoratti.net VB .NET ‐ Usando uma WebCam ‐ Macoratti.net VB .NET ‐ Tratando imagens da WebCam ‐ Macoratti.net VB .NET ‐ Cadastro com Foto ‐ Macoratti.net José Carlos Macoratti