50 webcam USB in un singolo computer. È davvero possibile?


15

Teoricamente una webcam USB HD che funziona a 15 FPS consuma una larghezza di banda vicina a 18 MB / s - 1280 (larghezza) x 960 (altezza) x 3 (canali RGB) x 15 (FPS) - senza compressione. Un controller USB 2.0 ha un throughput effettivo di 35 MB / s , essendo in grado di gestire 2 telecamere (che ho confermato in pratica). Un controller USB 3.0 ha una velocità di trasmissione massima teorica di 625 MB / s in grado di gestire 34 telecamere (625/18 = 34,72), per comodità, supponiamo che sia in grado di gestire un massimo di 8 telecamere (non ancora confermato). Utilizzando entrambi i presupposti, è possibile stimare che la scheda madre P8B75-V può gestire almeno 50 webcam simultanee:

  • 3 slot PCIe (uno PCIe x4 e due PCIe x1, escluso il PCIe x16 sulla scheda grafica): convertili in USB 3.0 usando un adattatore + USB 3.0 HUBS , ottenendo 24 webcam
  • 2 controller USB 3.0 (ascolta e fronte): HUB USB 3.0 per realizzare 16 webcam
  • 3 slot PCI : converti ciascuno in USB 2.0 usando un adattatore , ottenendo 6 webcam
  • 2 controller USB 2.0 : 4 webcam

Quindi, la mia domanda è:

Questa configurazione è davvero possibile? Qualcuno ha provato a sovraccaricare il sistema con così tante webcam USB?

I problemi:

  • È possibile che il processore venga sovraccaricato. L'uso della cattura di immagini non compresse può risolvere questo problema.
  • La SO può avere molti problemi a gestire così tanti dispositivi.

Comentaries:

  • Il bus CPU per i dispositivi esterni - Quick Path Interconnect (QPI) per Intel e Hyper-transport per AMD - non sembra essere un problema, poiché 50 MB / s * 18 MB / s = 900 MB / s. È davvero lontano dalla velocità dati del bus di 25,6 GB / s per QPI e 51,2 GB / s per Hyper-transport .
  • Sto implementando il software di questa applicazione usando OpenCV che avvolge l'acquisizione attorno a DirectShow .

MODIFICA 12/11/12:

Quindi, ho fatto alcuni test e ci sono alcuni punti da chiarire.

Lo streaming di immagini HD a 30 FPS rappresenta una larghezza di banda di 106 MB / s (53 MB / s a ​​15 FPS), la mia matematica era completamente sbagliata. Ciò significa che le webcam HD che funzionano con USB 2.0 devono comprimere il file per non consumare tutta la larghezza di banda. Quindi, anche se fossi in grado di collegare 50 webcam in un singolo PC, probabilmente la CPU avrebbe molti problemi a decomprimere questa quantità di dati in tempo reale.

Il vero problema si presenta quando vediamo le specifiche USB 3.0 :

Specifiche USB 3.0

Come possiamo vedere nell'immagine, l'HUB USB 2.0 è completamente separato dall'HUB USB 3.0 (SuperSpeed), il che significa che i dispositivi USB 2.0 non possono usare la larghezza di banda SuperSpeed . Questo è un grosso svantaggio del fatto che potrei usare più dispositivi USB 2.0 con un controller USB 3.0.

Dato che questa specifica è piuttosto vecchia (circa 2 anni), qualcuno può confermare se c'è qualche nuova implementazione della specifica USB 3.0 che condivide la larghezza di banda SuperSpeed ​​tra i dispositivi USB 2.0?


4
Di cosa hai bisogno per 50 webcam?
Dennis,

1
Come sono alimentate le webcam? Con il loro alimentatore o la loro potenza viene assorbita dal bus USB?
Hennes,

2
La risposta: non pratica. Ma suono incredibilmente fantastico.
nerdwaller,

5
Ho fatto funzionare 17 telecamere per un progetto Opencv 2 (wrapper in pitone). Sono stato in grado di ottenere che il rilevamento hsv di camshift e il rilevamento di oggetti flann funzionassero decentemente su tutti contemporaneamente ma in nulla si avvicinavano in tempo reale e non ero in grado di visualizzare i risultati.
Snesticle

1
Mi scuso, stavo rispondendo che era "pratico" (il titolo). Essere pratici o altrimenti non è correlato a possibilità / impossibilità. Tuttavia, per riuscirci dovrai probabilmente alimentare la fotocamera da qualcos'altro e avere solo i feed di dati nel computer (per computer, intendo hub USB3.0).
nerdwaller,

Risposte:


6

Non ci sarà mai un cambiamento nel design di un dispositivo USB-2-Hub aggiuntivo all'interno di USB-3 perché è l'unico modo per fornire una ragionevole compatibilità verso il basso. Se si desidera utilizzare la velocità USB-3, è necessario utilizzare le webcam USB-3.

Lascia che ti faccia un esempio per ulteriori spiegazioni. Diciamo:

Ok, costruiamo una ferrovia ad alta velocità. Poiché la ferrovia è ad alta velocità, possiamo mettere più treni lenti su di essa rispetto alla nostra ferrovia lenta. Evviva!

Tecnicamente è lo stesso per USB. Solo perché potresti guidare più veloce sulla ferrovia non significa che c'è più spazio (larghezza di banda) per i treni lenti (USB2). I treni lenti procederanno lentamente sulla corsia preferenziale, rendendo impossibile per i treni veloci (USB3) utilizzare la ferrovia a tutta velocità. Per ovviare a questo, alcuni ingegneri decisero di non sostituire la ferrovia lenta con quella più veloce, ma di costruirla proprio accanto. Con questa configurazione è possibile che i treni veloci guidino ad alta velocità sulla ferrovia veloce e quelli lenti su quella lenta. Lo stesso vale per la compatibilità discendente di USB3.


Stavo per rispondere alla mia domanda, ma la tua analogia è davvero buona. Modificherò la mia domanda (quando avrò tempo) per mettere insieme tutte le informazioni che ho ottenuto durante i miei test e ricerche per chiarire l'argomento per ulteriori ricerche. Quindi, la risposta alla mia domanda è semplice: non è possibile collegare 50 webcam in un singolo computer. Non ci sono ancora webcam 3.0 sul mercato, ci sono solo telecamere industriali in vendita (molto costose), purtroppo.
Ian Medeiros,

In realtà, un modo migliore per fornire una buona compatibilità verso il basso è quello di costruire un hub di traduzione: un microcontrollore programmato per eseguire la conversione del protocollo, collegato a dispositivi USB2 sul lato inferiore e un controller USB3 sul lato superiore. Questo sarebbe come caricare i tuoi treni lenti sul treno veloce (poiché auto / container vengono caricati su treni, traghetti, aerei, ecc.)
David MW Powers,

0

L'analogia ferroviaria è imperfetta, sebbene il problema rimanga per molti hub. È possibile avere 10 dispositivi USB-2 aggiornati a USB-3 ma ciò dipende dall'hub. Lo stesso valeva per i dispositivi USB-1 negli hub USB-2. La maggior parte dei collegamenti agli hub fornisce un solo controller che rappresenta uno standard specifico, ma alcuni forniscono controller separati per ciascuna porta in modo tale che uno qualsiasi possa essere qualsiasi standard senza influire sugli altri: sono più costosi. Una soluzione intermedia è un hub che fornisce (per un prodotto commerciale) tre porte USB-3 e quattro porte USB-4. Lo standard consente specificamente di far funzionare contemporaneamente i dispositivi USB-3 e USB-2, con i dispositivi USB-3 che hanno il vantaggio della larghezza di banda aggiuntiva.

Ho usato due webcam Logitech su USB-2 per anni a una velocità appropriata (ad esempio, quando ricordo 15fps x 640x480), e usando più CPU economiche per elaborare ed ethernet per aggregare 6 telecamere più altri dispositivi USB. Spero che con USB-3 sia possibile utilizzare un collegamento a margherita degli hub di cui sopra per raggiungere questo obiettivo, con due fotocamere USB-2 (o altri dispositivi) per hub 3 + 4, supponendo che io usi un controller hub che converte tra USB-3 e USB -2 anziché uno che funge solo da hub USB-2 separato per i dispositivi USB-2.

Le fotocamere USB3 sono disponibili ma costose e non necessarie: è sufficiente aggiornare una fotocamera da USB2 a USB3 per poterle utilizzare ma non riesco a trovare un hub o un convertitore che afferma di farlo (c'erano / sono dispositivi analoghi per Da USB1 a USB2).


Hai mai trovato un hub o un convertitore che potrebbe essere aggiornato?
g491,

0

Se alcuni di voi vorrebbero usare 8 o 12 webcam in un desktop, ne sono sicuro, vorrebbero usare queste webcam come sistema di sorveglianza. Molte, se non tutte le soluzioni discusse qui, le ho già provate, ad esempio tramite USB 2.0 vice 1.1, utilizzando hub per porte USB alimentate, usando PCI usb ... credete, potrei solo caricare un desktop (non ho un i7 sistema) fino a 4 webcam, anche in questo caso dovresti superare tentativi ed errori con le porte.

SOLUZIONE? Ho usato 3 desktop, abbastanza economico al giorno d'oggi, (non hai bisogno di monitor / mouse / tastiere) tranne durante il caricamento del sistema, quindi puoi accedere in remoto a 4 webcam ciascuno (sto usando 3 desktop per un totale di 12 webcam) . Li controllo da remoto in un computer con monitor esterni.

SOFTWARE: Raccomando IP CAMERA VIEWER (gratuito) o PRO se lo desideri, e TEAMVIEWER - Gratuito per uso personale, ma devi pagare per uso aziendale. ENTRAMBI QUESTI PROGRAMMI SONO FANTASTICI. Risparmiate tempo nella ricerca ... Questi programmi sono maturi e si vede dal design.

COSA C'È DOPO? Anche se la velocità di Internet è lenta, le telecamere, i monitor perdonano. VANTAGGIO DI UTILIZZARE 3 DESKTOP? Potresti ottenere closser dove hai bisogno che le tue telecamere si trovino in 3 posizioni diverse, come tutti sanno, potresti avere solo fino a 5 metri con il cavo USB e, se sei fortunato come me fino a 8, con un HUB alimentato USB.

TELECAMERE IP CCTV - che possono usare CAVI MOLTO MOLTO MOLTO LUNGHI possono essere usati con ADATTATORI da BNC a USB CON SCHEDA GRAFICA INTEGRATA. Ho ordinato una 4, una 8 e una 16 telecamere CCTV per 1 USB, non ci sono ancora. Ti farò sapere quando arriveranno ...

Sono stato costretto a utilizzare le webcam come router di provider di servizi Internet in cui mi trovo non consente o non posso accedere al port forwarding ... quindi nessun INDIRIZZO IP per me.

BUONI FORTUNA / GALS ...


In realtà ho avuto 8 fotocamere e un Kinect sulla stessa torre tower grintosa, ma in pratica, uso solo 4 fotocamere (più il Kinect) alla volta per la registrazione continua - tutto può essere usato per le istantanee. Questo non è per la sorveglianza ma per la registrazione di AudioVisual Corpus e per la ricerca intelligente di stanza / robot.
David MW potenzia
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.