이론적으로 15FPS에서 작동하는 USB HD 웹캠은 압축없이 18MB / s-1280 (폭) x 960 (높이) x 3 (RGB 채널) x 15 (FPS)에 가까운 대역폭을 소비합니다. USB 2.0 컨트롤러의 유효 처리량은 35MB / s 이며 2 대의 카메라를 처리 할 수 있습니다 (실제로 확인한 스위치 ). 이론적으로 최대 전송 속도가 625MB / s 인 USB 3.0 컨트롤러는 편의상 34 대의 카메라 (625/18 = 34.72)를 처리 할 수 있으며, 최대 8 대의 카메라를 처리 할 수 있다고 가정합니다 (아직 확인되지 않음). 두 가지 가정을 모두 사용하여 마더 보드 P8B75-V 가 최소 50 개의 동시 웹캠을 처리 할 수 있다고 추정 할 수 있습니다.
- PCIe 슬롯 3 개 (PCIe x16을 그래픽 카드로 제외) 1 개의 PCIe x4 및 2 개의 PCIe x1 : 어댑터 + USB 3.0 HUBS를 사용하여 USB 3.0으로 변환하여 웹캠 24 개 생성
- 2 개의 USB 3.0 컨트롤러 (전면 및 전면) : 16 개의 웹캠을 구현하는 USB 3.0 HUBS
- PCI 슬롯 3 개 : 어댑터를 사용하여 각각을 USB 2.0으로 변환하여 6 개의 웹캠을 만듭니다.
- USB 2.0 컨트롤러 2 개 : 웹캠 4 개
그래서 내 질문은 :
그 구성이 정말 가능합니까? 누구든지 USB 웹캠이 너무 많은 시스템에 과부하를 시도 했습니까?
문제 :
- 프로세서가 과부하되었을 수 있습니다. 압축되지 않은 이미지 캡처를 사용하면이 문제를 해결할 수 있습니다.
- SO는 많은 장치를 처리하는 데 많은 어려움을 겪을 수 있습니다.
코멘터리 :
- 외부 장치로의 CPU 버스 (Intel 용 QPI (Quick Path Interconnect) 및 AMD 용 Hyper-transport)는 50MB / s * 18MB / s = 900MB / s이므로 문제가되지 않습니다. 이는 QPI 의 버스 데이터 속도 25.6GB / s 및 하이퍼 전송 의 경우 51.2GB / s와는 거리가 멀습니다 .
- DirectShow 주위에 캡처를 감싸는 OpenCV 를 사용 하여이 응용 프로그램의 소프트웨어를 구현하고 있습니다 .
12/11/12 편집 :
그래서, 나는 몇 가지 테스트를 해왔으며 명확히해야 할 몇 가지 사항이 있습니다.
30FPS의 HD 이미지 스트리밍은 106MB / s (15FPS에서 53MB / s)의 대역폭을 나타내며 수학이 완전히 잘못되었습니다. 즉, USB 2.0을 사용하는 HD 웹캠은 모든 대역폭을 소비하지 않도록 파일을 압축해야합니다. 따라서 단일 PC에서 50 대의 웹캠을 연결할 수 있어도 CPU가 실시간으로이 양의 데이터를 압축 해제하는 데 많은 문제가있을 수 있습니다.
실제 문제는 USB 3.0 사양을 볼 때 발생 합니다 .
이미지에서 볼 수 있듯이 USB 2.0 허브는 USB 3.0 허브 (SuperSpeed)와 완전히 분리되어 있습니다. 마녀는 USB 2.0 장치가 SuperSpeed 대역폭을 사용할 수 없음을 의미합니다 . USB 3.0 컨트롤러와 함께 더 많은 USB 2.0 장치를 사용할 수 있다는 가정의 주요 단점입니다.
이 사양은 다소 오래되었지만 (약 2 년) USB 2.0 장치간에 SuperSpeed 대역폭을 공유하는 새로운 USB 3.0 사양 구현이 있는지 확인할 수 있습니까?