Implicações do uso de muitas câmeras web USB

5

Estou procurando conectar várias webcams USB de baixa resolução a um único computador. Quais implicações isso pode ter no desempenho? Como, por exemplo, quatro câmeras de 320x240 se comportam contra uma única câmera de 640x480? Eu não sou bem versado na arquitetura da interface USB, quais são as advertências de desempenho? Por desempenho quero dizer como isso afetaria o tempo para ler os dados de imagem de várias câmeras em comparação com um único.

    
por Martin 25.03.2010 / 21:30

2 respostas

1

Uma coisa que você deve ter em mente é que, embora um QVGA precise de pouca largura de banda, muitas webcams baratas só funcionam em 'velocidade máxima' (12Mbit / s), mesmo se forem dispositivos "USB 2.0" Dispositivos USB 2.0 'Hi-speed' rodam a 480Mbit / s.

Não apenas isso, mas se você conectar vários dispositivos de "velocidade total" em um hub USB padrão de TT único (que é a maioria deles), então todos os 4 terão que compartilhar esses 12Mbit / s de um único velocidade 'link.

É por isso que, se você quiser executar vários dispositivos 'full-speed' o mais rápido possível, certifique-se de comprar um hub multi-TT. O mais fácil de encontrar é o Belkin Tetra-hub, mas você provavelmente terá que obtê-los da rede, é improvável que eles sejam estocados pela sua loja de computadores local.

No entanto, um hub multi-TT de 4 portas deve ser capaz de executar dispositivos de 4 'full speed' com 12Mbit / s para cada câmera.

Havia um belo artigo no Tom's Hardware Guide sobre o multi-TT em 2003.

Observe também que, se você obtiver webcams USB 2.0 de alta velocidade, não terá esse problema. 480Mbit / s deve ser o suficiente para muitas câmeras QVGA, todas elas transmitindo simultaneamente, se o software que as acompanha suportar.

Editar: Se for para um aplicativo de visão de máquina, a escolha da interface pode ser guiada pela biblioteca de imagens que você usa. Pessoalmente, para aplicações domésticas o USB é bom, para uso industrial eu sempre usaria o Firewire via USB. Ele possui um controle de largura de banda muito mais refinado e você pode decidir exatamente quais câmeras obtêm qual largura de banda definindo suas resoluções e taxas de quadros. O protocolo firewire DCAM oferece muita flexibilidade ao janelamento do seu sensor (selecionando um subconjunto da imagem a ser transmitida, potencialmente dando a você taxas de quadros muito mais altas para uma determinada largura de banda). Obviamente, se você não precisa de flexibilidade extra, a despesa extra não é garantida, mas se você não tiver requisitos de orçamento apertados, ela oferece muitas outras opções de engenharia.

    
por 25.03.2010 / 21:51
2

Em geral, as ecomomias de escala significam uma única câmera de alta resolução, afetando seu sistema em menos de 4 câmeras menores de um quarto da resolução. A maneira mais fácil de medir o desempenho é procurar no gerenciador de tarefas com uma ou duas câmeras conectadas e observar o carregamento da CPU para essa câmera. Certifique-se de que não exceda alguns por cento ou que você possa começar a ver lentidão. Recomendamos que você use câmeras idênticas para reduzir o número de drivers de dispositivos necessários.

Existem, no entanto, maneiras muito melhores de resolver o problema do que usar 4 câmeras USB (dependendo do que você está tentando fazer). Você pode, por exemplo, obter placas PCI dedicadas que podem levar de 4 a 16 câmeras e todo o trabalho pesado é feito em hardware. Isso significa que o carregamento da CPU é insignificante. A maioria usa entradas compostas normais, o que torna as câmeras muito mais baratas. Provavelmente você pode comprar 4 câmeras mais o cartão, pelo mesmo preço de algumas webcams decentes do eBay - incluindo software de segurança.

    
por 25.03.2010 / 21:37