2010-03-25 35 views
1

我正在考慮將多個低分辨率USB網絡攝像頭連接到一臺計算機。這會對性能產生什麼影響?例如,四臺320x240相機如何與一臺640x480相機相對應?我對USB接口的體系結構不甚瞭解,有什麼性能問題?我的意思是,它將如何影響從單個攝像頭讀取多個攝像頭的圖像數據的時間。使用許多USB網絡攝像頭的影響

+1

不涉及編程。轉到超級用戶 – 2010-03-25 20:25:35

+0

屬於superuser.com – 2010-03-25 20:25:43

+0

我敢打賭,在USB IO受到影響之前,捕獲多個攝像頭的圖像將壓倒CPU和磁盤IO。也許RAM也是如此,但這取決於你在捕捉後處理圖像的程度。 (參考您的問題的性能影響部分) – robault 2010-03-25 20:41:46

回答

2

每個攝像頭連接到不同的USB端口?如果是這樣,它的好處。

即使它只有1個端口與4個連接的攝像頭。我不認爲4 320x240會有任何問題。 USB 2.0 = 320Mbps。流式傳輸320x240視頻不會超過1mbps。最糟糕的情況是,將320x240設置爲2mbps + 1mb的其他數據。這將是您的USB端口和設備之間的12mbps帶寬。

因此,從上述情況,1個USB端口可以處理4個的攝像頭由分離器連接一樣快,1 640×480的攝像頭,

處理這些圖像取決於計算機的速度和你如何寫你的算法。

+0

謝謝。是的,我只是想知道讀取/傳輸圖像,而不是處理它們。 – Martin 2010-03-25 20:35:34

+0

但USB通信由CPU處理,而不是像火線這樣的硬件。驅動程序是否會針對每個新像素/線/幀進行插入,需要多長時間? 這不是全部關於帶寬。 – 2010-03-25 21:18:14

1

USB的最大數據速率比實際得到的要高。 網絡攝像頭可能會使用同步傳輸,在USB 2下,總線時間只能達到40%左右(如果我正確記得的話),這也會帶來很大的開銷。 我不確定,但我懷疑這就是爲什麼usb網絡攝像頭的分辨率和數據速率似乎在幾年前達到上限的原因。他們可能會開始通過使用USB 3再次增加。 我建議您將每臺相機連接到它自己的USB 2端口,因爲40%是在所有等時同步連接之間共享的。 其中一個與鍵盤甚至USB大容量存儲設備共享帶寬的連接應該沒問題,因爲它們只會使用剩餘帶寬的一部分。

1

錯誤。

首先,USB 2.0理論上是480mbps,你應該能夠達到直接連接的80%。第二,要計算相機使用的帶寬,必須考慮圖像位深度,因此: BW = hresolution()* vresolution()* imagebitdepth(bit)* framerate(frame/s)(in bit/sec) imagebitdepth可以爲8,16,24或32位網絡攝像頭(範圍從Y800單色到RGBA/RGBT顏色滿,查看規格)

因此,一個典型的攝像頭@ 640 * 480分辨率,30fps,16位RGB位掩碼的RGBA圖像位深度將需要147.456Mbps,因此,類似規格之一,但是@ 320 * 240分辨率之一將需要36.864Mbps,與之前Shawn所述的主BS相比,其1mbps也與他的其他所有錯誤數據不一致。

儘管如此,模擬操作主要依賴於驅動程序,但要由製造商承擔最小的工作量並向DirectShow提供唯一的設備ID。