Análise da webcam Vtrex V3pro

23 de maio de 2011

Com o advento dos vídeos on-line (Youtube e afins) e videochats (conversa com video ao vivo), a webcam se tornou um produto muito procurado, e a cada dia surgem novos modelos, ao ponto que os modelos anteriores vão saindo de linha e deixando de ser comercializados.

A maior dúvida dos compradores é quanto a qualidade da webcam e os recursos que ela oferece. De imediato eu já digo: não adianta sair comprando uma webcam pensando em fazer vídeos profissionais e fotos de alta qualidade. A finalidade principal das webcams é chat por vídeo pela Internet. Os outros recursos são extras, aproveitando o que hardware tem a oferecer, dentro de suas limitações.

Vtrex V3pro

Vtrex V3pro

Seguindo o assunto, vou apresentar a análise de um dos últimos lançamentos da Vtrex: A webcam Vtrex V3pro (Modelo P-570), cuja principal característica é a resolução de 3.0 megapixels reais via hardware, sem interpolação. Isto significa que é possível tirar fotos com resolução de 2048 x 1536 sem necessitar de interpolação (inserção de novos pixels baseado em já existentes), resultando em uma imagem de melhor qualidade.

 

Segundo o manual da webcam, suas características principais são:

  • Conexão USB 2.0 (1.0, 1.1 e 2.0)
  • 3 leds brancos para iluminação
  • Resolução de 3.0Mp reais via hardware
  • Resolução máxima de vídeo: 2560×2048 (5.2Mp)
  • Resolução máxima para foto: 4608 x 3456px (16Mp)
  • Taxa de captura de até 30fps
  • Microfone digital embutido
  • Sensor de imagem: CMOS colorido
  • Formato de vídeo: YUV e MJPG

 

É importante ressaltar que a taxa de captura é de ATÉ 30fps, pois esta taxa depende de alguns fatores:

  • Resolução: É possível conseguir os 30fps com resolução máxima de 640×480. Por exemplo, na resolução máxima suportada pela webcam (2048 x 1536) a taxa cai para 2.5fps
  • Ambiente e iluminação: É necessário que o ambiente esteja muito bem iluminado. Um recurso da maioria das webcams é o ajuste automático de exposição (quantidade de luz que entra na lente) para conseguir uma melhor imagem do ambiente. Caso a iluminação seja pouca, a webcam necessita ficar mais tempo "olhando" para o objeto para que a quantidade de luz seja suficiente. Quanto mais tempo parado, mais luz entra. Este tempo que a webcam fica esperando por mais luz reduz os FPS.

 

Para aqueles que gostam de fazer experimentação e necessitam de um FPS fixo sem se importar com a quantidade de luz (transformar em câmera infra vermelho, por exemplo), é possível desabilitar o ajuste automático de exposição (auto exposure) através do software AMCAP no Windows ou uvcdynctrl no Linux.

Instalação no Windows

Segundo o manual, a webcam é compatível com Windows XP (SP2), Vista ou 7. O teste foi realizado no Windows 7, visto que é o SO mais utilizado e é o mais atual do momento.

Não é necessário instalar nenhum driver, basta conectar a webcam na USB e deixar o Windows instalar os drivers automaticamente. O Windows identifica a webcam como uma Venus USB2.0 Camera, da fabricante Vimicro Corp.

O CD que acompanha  também possui o driver da webcam, além do software AMCAP, que permite gravar vídeos, capturar fotos e fazer ajustes na webcam, como brilho, cor, intensidade de cor, exposição automática, etc.

O MSN Messenger detecta a câmera normalmente, não sendo necessário fazer nenhum ajuste. é Plug'N'Play mesmo!

Instalação no Linux

O teste foi realizado no Linux Debian Squeeze (6.0), com kernel versão 2.6.36. Este kernel já possui o driver desta webcam. A mensagem do dmesg abaixo aparece quando conectamos a webcam:

usb 2-3: new high speed USB device using ehci_hcd and address 4
[26290.936992] usb 2-3: New USB device found, idVendor=0ac8, idProduct=3460
[26290.937032] usb 2-3: New USB device strings: Mfr=1, Product=2, SerialNumber=0
[26290.937057] usb 2-3: Product: Venus USB2.0 Camera
[26290.937078] usb 2-3: Manufacturer: Vimicro Corp.
[26290.941706] uvcvideo: Found UVC 1.00 device Venus USB2.0 Camera (0ac8:3460)
[26290.944647] input: Venus USB2.0 Camera as /devices/pci0000:00/0000:00:13.2/usb2/2-3/2-3:1.0/input/input21

A webcam é compatível com o tipo UVC (USB Device Class Definition for Video Devices, ou USB Video Class). 

O visualizador padrão de webcam no linux é o luvcview

Clip de fixação

O clip de fixação possui boa abertura, fixando-se bem no notebook, monitor LCD ou na borda da mesa/escrivaninha.

                  

Leds de iluminação

A V3pro possui 3 leds de iluminação para auxiliar nos "videochats noturnos", quando não é desejável atrapalhar o descanso dos outros moradores do recinto com a luz do ambiente. Não espere que os leds iluminem todo o ambiente, eles servem apenas para iluminar objetos a curta distância, normalmente o usuário que está na frente do micro.

Ao contrário de outras webcams, a V3pro não possui controle de intensidade dos leds no cabo, apenas uma chave de liga/desliga localizada atrás da webcam.

                          

Microfone embutido

A webcam possui um microfone embutido, compartilhando a mesma interface USB, eliminando a necessidade de microfones externos ou conector de microfone no computador. 

No Windows o microfone da webcam aparece como mais uma opção nos dispositivo de gravação. No linux foi necessário adicionar uma entrada no arquivo ~/.asoundrc:

pcm.!default {
   type asym
      playback.pcm {
   type plug
      slave.pcm "hw:0,0"
   }
capture.pcm {
   type plug
   slave.pcm "hw:3,0"
   }
}

Para descobrir qual o dispositivo de gravação, pode-se utilizar o comando asound -l.

Botão para fotos instantâneas

Em cima da webcam existe um botão para tirar fotos instantâneas. Segundo o manual, para que este recurso funcione é necessário estar com o programa AMCAP aberto. Ao pressionar o botão, um arquivo com a foto é gravado no local configurado.

No Linux o botão também funciona. Foi testado o programa Cheese.

Considerações

A webcam Vtrex V3pro demonstra ser uma webcam que cumpre bem a sua finalidade, dentro de suas especificações e limitações. Sempre gosto de repetir: cada dispositivo tem a sua finalidade específica. As das webcams é videochat pela Internet. Não espere uma qualidade de TV ou de filme durante um videochat, pois mesmo que utilizássemos câmeras de vídeo normais (grandes e caríssimas), não existe ainda banda larga ou qualidade de serviço (QOS) que possibilite isto.

A Vtrex disponibiliza ainda em seu site o software ManyCam, para o usuário se divertir ainda mais com a webcam.

Demonstração de fotos e vídeos

Para demonstrar a qualidade  Vtrex V3pro, posto a seguir alguns exemplos de fotos e vídeo produzidos por ela.O vídeo foi criado no Windows Live Movie Maker, e as fotos no Linux, com o software Cheese

 

Programa AMCAP no Windows 7

 

Programa Cheese no Linux

 

Com um pouco mais de iluminação utilizando os leds da webcam

 

Outro ângulo, com melhor uso da luz do ambiente

 

Detalhes de objetos

 

No escuro total, só com os leds da webcam

Video criado no Windows Live Movie Maker e com captura de som pela webcam

Análise, Geral, Linux, webcam , , ,

Como instalar o driver ATI Catalyst 10.4 no Debian com Kernel 2.6.33

29 de abril de 2010

Depois de meses de espera no dia 28 de abril de 2010 foi oficialmente lançado o driver para as placas de video ATI Catalyst versão 10.4 com suporte ao Xorg 7.5 em virtude do lançamento do Ubuntu 10.04 AKA Lucid.

Contudo esta versão não funciona com kernel 2.6.33, mas esta lista de bugs do gentoo tem um patch que permite a compilação sem problemas.

Basicamente os erros são estes:

- No arquivo /usr/share/ati/fglrx-install.log:

cd /var/lib/dkms/fglrx/8.723/build; sh make.sh --nohints \
   --uname_r=2.6.33.2-diesel-amd64-1 --norootcheck....(bad exit status: 1)
0
0
[Error] Kernel Module : Failed to build fglrx-8.723 with DKMS
[Error] Kernel Module : Removing fglrx-8.723 from DKMS

- O arquivo /var/lib/dkms/fglrx/8.723/build/make.log apresenta os erros:

firegl_public.c:1473: error: variable or field ‘__ret’ declared void
firegl_public.c:1473: error: variable or field ‘__old’ declared void
firegl_public.c:1473: error: variable or field ‘__new’ declared void
make[2]: ** [/var/lib/dkms/fglrx/8.721/build/2.6.x/firegl_public.o] Erro 1
make[1]: ** [_module_/var/lib/dkms/fglrx/8.721/build/2.6.x] Erro 2
make[1]: Saindo do diretório `/usr/src/linux-2.6.33.2'

 

Passos para a instalação 

 

Estes passo foram realizados utilizando um kernel versão 2.6.33.2 amd64 em um Debian Squeeze para uma Radeon Mobility HD 3200

1. Baixar o arquivo ati-driver-installer-10-4-x86.x86_64.run de http://support.amd.com

2. Tornar o arquivo executável:

#chmod 755 ati-driver-installer-10-4-x86.x86_64.run

3. Extrair os arquivos de instalação para a pasta ati-installer (ou outra qualquer)

./ati-driver-installer-10-4-x86.x86_64.run --extract ati-installer

4. Baixar o arquivo 2.6.33-10.2-fix_compilation.patch e copiar para a pasta ati-installer/common/lib/modules/fglrx/build_mod

5. Ir para a pasta ati-installer/common/lib/modules/fglrx/build_mod e aplicar o patch:

#patch -p6 < 2.6.33-10.2-fix_compilation.patch

6. O compilador tenta localizar os arquivos utsrelease.h e autoconf.h na pasta /lib/modules/<kernel-version>/build/include/linux/, por isto é necessário copiar estes arquivos da pasta /usr/src/<kernel-source>/include/generated/ ou criar um link simbólico. No meu caso eu criei um link simbólico:

#ln -s /usr/src/linux-2.6.33.2/include/generated/utsrelease.h \
      /lib/modules/2.6.33.2-diesel-amd64-1/build/include/linux/
#ln -s /usr/src/linux-2.6.33.2/include/generated/autoconf.h \
     /lib/modules/2.6.33.2-diesel-amd64-1/build/include/linux/

7. Executar o instalador na pasta ati-installer:

./ati-installer.sh nada –install

Se estiver no modo gráfico, aparecerá a janela de instalação, e na janela do console não deverá aparecer nenhum erro.

O arquivo /usr/share/ati/fglrx-install.log deve se parecer com este:

Creating symlink /var/lib/dkms/fglrx/8.723/source ->
                 /usr/src/fglrx-8.723

DKMS: add Completed.

Kernel preparation unnecessary for this kernel.  Skipping...

Building module:
cleaning build area....
cd /var/lib/dkms/fglrx/8.723/build; sh make.sh --nohints --uname_r=2.6.33.2-diesel-amd64-1 --norootcheck.......
cleaning build area....

DKMS: build Completed.

fglrx.ko:
Running module version sanity check.
 - Original module
   - No original module exists within this kernel
 - Installation
   - Installing to /lib/modules/2.6.33.2-diesel-amd64-1/updates/dkms/

depmod....

DKMS: install Completed.

8. Modificar o arquivo /etc/X11/Xorg.conf manualmente ou com o comando:

#aticonfig --initial -f

Eu uso um notebook e um monitor externo, então o meu arquivo /etc/X11/xorg.conf está assim:

# xorg.conf (X.Org X Window System server configuration file)
#
# This file was generated by dexconf, the Debian X Configuration tool, using
# values from the debconf database.
#
# Edit this file with caution, and see the xorg.conf manual page.
# (Type "man xorg.conf" at the shell prompt.)
#
# This file is automatically updated on xserver-xorg package upgrades *only*
# if it has not been modified since the last upgrade of the xserver-xorg
# package.
#
# If you have edited this file but would like it to be automatically updated
# again, run the following command:
#   sudo dpkg-reconfigure -phigh xserver-xorg

Section "ServerLayout"
	Identifier     "aticonfig Layout"
	Screen      0  "aticonfig-Screen[0]-0" 0 0
EndSection

Section "Files"
EndSection

Section "Module"
EndSection

Section "ServerFlags"
	Option	    "Xinerama" "off"
EndSection

Section "InputDevice"
	Identifier  "Generic Keyboard"
	Driver      "kbd"
	Option	    "XkbRules" "xorg"
	Option	    "XkbModel" "abnt2"
	Option	    "XkbLayout" "br"
	Option	    "XkbVariant" "abnt2"
EndSection

Section "InputDevice"
	Identifier  "Configured Mouse"
	Driver      "mouse"
EndSection

Section "Monitor"
	Identifier   "Configured Monitor"
EndSection

Section "Monitor"
	Identifier   "aticonfig-Monitor[0]-0"
	Option	    "VendorName" "ATI Proprietary Driver"
	Option	    "ModelName" "Generic Autodetecting Monitor"
	Option	    "DPMS" "true"
EndSection

Section "Device"
	Identifier  "Configured Video Device"
EndSection

Section "Device"
	Identifier  "aticonfig-Device[0]-0"
	Driver      "fglrx"
	Option	    "MonitorLayout" "CRT1,LCD"
	BusID       "PCI:1:5:0"
EndSection

Section "Screen"
	Identifier "Default Screen"
	Monitor    "Configured Monitor"
EndSection

Section "Screen"
	Identifier "aticonfig-Screen[0]-0"
	Device     "aticonfig-Device[0]-0"
	Monitor    "aticonfig-Monitor[0]-0"
	DefaultDepth     24
	SubSection "Display"

 # x y resolution of both screens!
		Viewport   0 0
		Virtual   2720 900
		Depth     24
	EndSubSection
EndSection

9. Reiniciar o computador e está feito.

Boa sorte!

Geral, Linux , , , , , ,

Monitorando a temperatura do CPD com Digitemp

28 de abril de 2010

Em CPD's com muitos servidores existe a necessidade de constante refrigeração da sala de equipamentos, visto que eles produzem grande quantidade de calor.

Como qualquer outro equipamento, o sistema de refrigeração também podem apresentar problemas, deixando de refrigerar a sala de servidores, o que pode ocasionar o superaquecimento dos mesmos levando-os a falhar e deixar de prestar os serviços de um CPD.

Para estes casos é necessário estar prevenido com, no mínimo, um sistema de controle de temperatura da sala, para que sejam tomadas as providências antes do superaquecimento. Com um sistema de controle também é possível fazer o levantamento estatístico e histórico das falhas de refrigeração, para verificar se é necessário melhorias ou exigir da empresa terceirizada melhor qualidade no serviço de refrigeração.

Em tempos de recessão, programas de redução de custos, e demora na compra de equipamentos novos, fica inviável solicitar à empresa a compra de um sistema monitor de temperatura de ambientes. Nestas horas é necessário se utilizar da criatividade e procurar soluções alternativas.

Nestas condições a Internet é a nossa principal fonte de informação e pesquisa, e o Software Livre a solução para a maioria dos problemas envolvendo custos.

Sensor Dallas DS1820Muitos sites dão informações completas de como construir um sistema de monitoramento de temperatura baseado no sensor Dallas DS18S20  e um software chamado DIGITEMP, e tentarei aqui reproduzir algumas destas informações e instruções de como montar este sistema.

O DIGITEMP é um software desenvolvido para Linux que se comunica com o sensor de temperatura Dallas DS18S20 através da porta serial do computador. Para fazer esta comunicação, é necessário uma interface, que pode ser construída com poucos componentes.

 

Construindo o sensor

 

Existem vários modos de construir a interface, variando de acordo com a distância do cabo e a forma de energizar o circuito. A forma mais simples é o modo parasita, em que a energização do componente se dá através da linha de dados da porta serial.

Para construir a interface serial são necessários os seguintes componentes:

Componentes

A 1 Conector DB9 fêmea com capa
B 1 Placa fenolite de tamanho suficiente para acoplar na capa do conector DB9
C 1 Conector RCA macho
D 1 Conector RCA fêmea
E 1 Resistor 1K5 – 1/4W 
F 1 Sensor Dallas DS18S20
G 1 Diodo Zener 3V9 – 1/4W
H 1 Diodo Zener 6V2 – 1/4W 
I 2 Diodos 1N5819 – 1/4W de alta velocidade

Para o cabo foi utilizado um cabo telefônico comun de duas vias.

Os componentes devem ser montados conforme o esquema abaixo:

Circuito

No modo parasita, é necessário unir os pinos GND e Vdd. Os números no lado da porta serial representam os pinos do conector DB9.

É possível utilizar vários sensores em paralelo, pois cada componente utiliza um identificador único de 64bits, formando um barramento chamada 1-Wire Bus. O esquema abaixo representa vários sensores ligados em paralelo:

Circuito com vários sensores

Antes de soldar os componentes na placa, é interessante montá-los em uma protoboard:

Protoboard

Para montar os componentes na placa, peguei a dica no site Pontas da Madrugada. O desenho na placa de fenolite ficou assim:

Desenho na placa de fenolite

Após soldar os componentes na placa e encaixá-lo no conector DB9, o resultado ficou assim:

Componentes soldados

Componentes soldados lado solda

A solda não ficou esteticamente perfeita, mas o mais importante é não ter nenhum curto-circuito e nenhuma solda fria. O conector RCA fêmea teve que ser reduzido para caber na capa do DB9. A parte externa do conector RCA ficou como GND, e a parte interna, os dados.

O sensor foi soldado em uma extremidade do cabo, e na outra, o conector RCA macho:

Sensor soldado no cabo  Conector RCA soldado no cabo

O resultado final ficou assim:

Kit completo

 

Software para comunicação com o sensor

 

O Digitemp pode ser baixado do site http://www.digitemp.com ou do repositório oficial da distribuição. No debian pode ser baixado com o comando:

#apt-get install digitemp

O próximo passo é criar o arquivo de configuração com o identificador do sensor:

#digitemp_ds9097 -s /dev/ttyUSB0 -i
DigiTemp v3.5.0 Copyright 1996-2007 by Brian C. Lane
GNU Public License v2.0 - http://www.digitemp.com
Turning off all DS2409 Couplers
.
Searching the 1-Wire LAN
10F2EFF0010800FE : DS1820/DS18S20/DS1920 Temperature Sensor
ROM #0 : 10F2EFF0010800FE
Wrote .digitemprc

Para obter a temperatura do sensor usa-se o comando:

#digitemp_ds9097 -t0 -c .digitemprc
DigiTemp v3.5.0 Copyright 1996-2007 by Brian C. Lane
GNU Public License v2.0 - http://www.digitemp.com
Apr 27 22:33:02 Sensor 0 C: 24.25 F: 75.65

 

Traçando gráficos de acompanhamento

 

O pacote do Digitemp fornece alguns scripts para gerar gráficos armazenados em um banco de dados RRD. Utilizando vários sensores pode-se conseguir um resultado como este:

Gráfico RRD

Note que no gráfico os valores estão em Fahrenheit (F), mas pode-se configurar o Digitemp para exibir em Celcius (C).

O Nagios possui alguns plugins para o monitoramento de temperatura, como o check_temperature e o check_digitemp

 

Dificuldades e problemas

 

Para desenvolver este projeto encontrei algumas dificuldades. A primeira delas foi encontrar o sensor Dallas DS18S20 em lojas de eletrônica. As principais lojas em Porto Alegre (Severo Roth, RF, etc) nem sequer tinham este componente no cadastro, ou seja, nunca foi vendido por eles.

Segui a dica de um colega de trabalho (obrigado Ronaldo!) e entrei no site do fabricante Maxim (http://www.maxim-ic.com/) e solicite algumas amostras. Recebi-as em 30 dias. Obrigado Maxim!

Importante: Todos os sites indicavam o sensor DS1820, mas segundo a Maxim ele foi substituido pelo DS18S20, e o que eu recebi foi o DS18S20+, que funcionou perfeitamente.

DS18S20+

A segunda e maior dificuldade foi: O sistema não funcionou no primeiro teste. Nenhuma mensagem de erro era apresentado. Simplesmente o sensor não era lido. Tira componente, testa componente, baixa código fonte, compila código fonte… Muitos sites na internet informam que os notebooks não fornecem a carga necessária de energia na serial para alimentar o sensor, e quase nenhum informa sobre o funcionamento com um adaptador USB-Serial que, no meu caso, tive que utilizar, pois o notebook não tem porta serial. Testei inclusive com uma placa ExpressCard RS232. Nada funcionava. Verifiquei que existem outras formas de construir a interface serial, com componentes extras para gerar alimentação para o circuito, mas não os construí, pois não tinha nenhum desses outros componentes.

Por sorte, testando os componentes na protoboard tive uma surpresa. Notei que quando o pino RXD era plugado na protoboard uns 2 segundo após rodar o programa digitemp, ele conseguia ler os dados. Ótimo sinal!

Após verificar o código-fonte, e incluir uma porção de mensagens de debug, notei que o problema acontecia na inicialização da porta serial, talvez por eu estar utilizando um adaptador USB-Serial.

Procurando novamente por uma solução, encontrei no site http://www.felskowski.pl/ uma correção para um problema de inicialização da porta serial. Testei-o e funcionou. O patch de correção é o seguinte:

--- digitemp-3.6.0.old/userial/ds9097/linuxses.c        2007-06-07 23:25:58.000000000 +0200
+++ digitemp-3.6.0/userial/ds9097/linuxses.c    2009-12-24 04:27:25.000000000 +0100
@@ -55,7 +55,7 @@
SMALLINT owAcquire(int portnum, char *port_zstr)
{
/* Open the serial port */
-   if ((fd[portnum] = open(port_zstr, O_RDWR)) == -1)
+   if ((fd[portnum] = open(port_zstr, O_RDWR|O_NONBLOCK)) == -1)
{
OWERROR(OWERROR_GET_SYSTEM_RESOURCE_FAILED);
perror("owAcquire: failed to open device");

A diretiva 0_NONBLOCK instrui o programa para não ler absolutamente nada da porta serial após abrí-la, como teste de abertura.

 

Informações extras

 

Como informado antes, utilizei um adaptador USB-Serial PL2303 e um cartão ExpressCard RS232 também por coincidência PL2303. Ambos forneciam a porta /dev/ttyUSB0.

 

Referências

 

Muitas sites foram consultados para este projeto. Relaciono-os abaixo:

Geral, Linux , , , , , , ,

Transformando uma webcam em uma câmera infra-vermelho

16 de fevereiro de 2010

 Para os meus testes com o software CCV (Community Core Vision), eu necessitava de uma câmera que capturasse somente infra-vermelho. Procurando na web encontrei artigos que explicam como transformar uma webcam em uma câmera infra-vermelho.

Basicamente é necessário 2 transformações:

  1. Remove o filtro IR presente na webcam;
  2. Colocar outro filtro, que permita a passagem somente de infra-vermelho;

Mostrarei um passo-a-passo de como realizar esta transformação em uma webcam Vtrex 120fps. Fiz em outra webcam também, e os passos são todos iguais. Acredito que o procedimento possa ser realizado em qualquer webcam.

 

1. Remover a tampa da webcam e retirar os parafusos da placa lógica.

Webcam sem a tampa traseira

 

2. Remover a tampa frontal da lente. Basta puxar que ela é encaixada.

 Remover a tampa frontal

 

3. Remover a placa lógica da carcaça frontal. Desenroscar a lente até sair.

 Leds da lente Lente frontal

 

4. Surge o filtro infra-vermelho que deve ser retirado. Geralmente só quebrando.

Filtro IR

 

Eis o que sobrou do filtro IR.

ir quebrado

 

5. Recortar um pedaço de filme de máquina fotográfica que encaixe no lugar do filtro IR.

 Filme negativo

6. Colocar o pedaço de filme de negativo no lugar do filtro IR.

 Filtro filme Filtro filme

7. Remontar a webcam.

 

A partir daí, a webcam só irá capturar imagens em infra-vermelho. A espessura do filme de negativo e se o mesmo é mais escuro ou mais claro vai depender da finalidade do uso da webcam.

No meu caso, quero utilizar leds infra-vermelho apontados diretamente na webcam, por isto o filme deve ser bastante escuro.

Aproveito e mostro um pouco do uso da webcam infra-vermelho nos meus testes com o software CCV.

Leds

Leds IR acionáveis por botão de 1 estado.

Leds acesos

Leds IR acesos (câmeras digitais "enxergam" infra-vermelho)

Leds nos dedos

Leds nos dedos

Leds nos dedos

Leds nos dedos

Software CCV

Software CCV – Community Core Vision

 

 E aqui vai uma palhinha do uso do conjunto: Webcam infra-vermelho + leds + CCV:  

Geral , , , ,

Análise da webcam VTrex 120fps

16 de fevereiro de 2010

Faz alguns meses que adquiri uma webcam para testar um software de multitoque, o CCV (Community Core Vision), que para seu pleno funcionamento, exigia uma camera de alto FPS.

Procurando pela web, me deparei com o anúncio de uma webcam de 120fps!  Adquiri a mesma pensando que seria a ideal para o meu projeto. Contudo, após testes, percebi que esta câmera é de ATÉ 120fps! Ou seja, ela PODE atingir 120fps dependendo das condições do ambiente e sua luminosidade. Após preparar a câmera para capturar somente infra-vermelho, consegui somente 18fps em média. Um custo muito alto de fps. Além disto, os 120fps só são alcançados com a resolução mais baixa. Quanto maior a resolução, menos FPS.

Isto se deve ao fato de esta câmera possuir o recurso AUTO EXPOSURE (exposição automática), que ajusta automaticamente a qualidade da imagem de acordo com a quantidade de luz do ambiente. Este ajuste automático custa vários FPS, ou seja, para manter a imagem com uma qualidade boa em baixas condições de luminosidade, ela necessita baixar os FPS. Pena que só fui descobrir isto após me deparar com o problema, mas pesquisa é para isto mesmo.

Infelizmente, nesta câmera, não é possível desabilitar este recurso. Nas configurações da câmera no windows a caixa referente à exposição automática fica desabilitada (cinza escuro) e no Linux (sim, esta câmera funciona no Linux), o comando para desabilitar o auto exposure retorna um erro.

Existem outras câmeras que possuem o FPS fixo, e a possibilidade de desabilitar o recurso de exposição automática. Uma delas é a Philips SPC900NC, que possui 90fps, e é utilizada inclusive para observação astronômica.

Mas para quem ainda planeja adquirir esta webcam para uso trivial (videochat, conferência, youtube, etc…) pode ser uma boa opção. Por isto deixo aqui um review e algumas imagens da câmera.

Características:

  • A Webcam possui uma base/clip grande podendo ser apoiada na mesa ou então "clipada" na tela do notebook ou em uma tela de LCD.
  • Possui 4 leds brancos que auxiliam na iluminação do ambiente, ligados através de um interruptor localizado atrás da câmera.
  • Gira 360 graus horizontais em sua base.
  • Funciona em Windows e Linux.
  • O chip da webcam é um SUNPLUS SPCA2000A.
  • Acompanha software de efeitos especiais. Este programa se diz composto de +4000 efeitos especiais. Mas não se engane, este número é alcançado com combinações de efeitos. Por exemplo: olhos + cabelo + fundo + outros efeitos.
  •  Possui microfone embutido.
  • Conexão USB e P2 para o microfone.

 Caixa da Vtrex 120fps

Caixa da "Super Webcam Vtrex".

Conteúdo da caixa

Conteúdo da caixa: Webcam, manual e cd.

Webcam sobre a mesa  Webcam clipada no monitor

Webcam sobre a mesa e "clipada" no monitor LCD com os leds acesos.

Conectors USB e P2

Conectores USB e P2 do microfone.

Placa lógica e CHIP SUNPLUS

Placa lógica e chip SUNPLUS SPCA2000A.

AMCAP Windows 50fps

Funcionamento no Windows a 50.1 FPS em 640×480.

Funcionamento no Linux a 47 fps

Funcionamento no Linux a 47 FPS em 640×480.

Conclusão:

É uma boa câmera para videochat, conferência e pequenos vídeos, mas não serve para obter altos FPS a baixas luminosidades.

Continue lendo os comentários. Há mais informações sobre webcams e contribuições de usuários!

Atualização em 30/04/2010

Como este post teve bastantes comentários, fiz mais uns testes e coloquei alguns vídeos no Youtube, com o máximo de qualidade e velocidade que consegui.

VTrex em 640x480 a 50FPS

640×480 a 50fps. O máximo em qualidade e velocidade para vídeo

VTrex 320x240 a 120fps

A VTrex só atinge 120fps na resolução 320×240 e com muita iluminação

Video 640×480 a 50fps

Video 640×480 a 50fps com detalhes

Video 320×240 a 120fps #1

Video 320×240 a 120fps #2

Geral , , , ,