차량/로봇/산업 현장에서 카메라를 안정적으로 붙이려다 보면, MIPI CSI-2 직결 대신 GMSL(Gigabit Multimedia Serial Link) 기반의 SerDes 카메라를 검토하게 됩니다. 이 글에서는 GMSL2와 GMSL3의 실무적 차이를 정리하고, 이어서 4K 카메라 소스를 FHD(또는 그 이하) 추론으로 최적화하는 파이프라인 예시를 제시합니다.

1) GMSL2 vs GMSL3: “현업에서 체감되는” 차이
(1) 링크 속도/대역폭: “결국 12Gbps 유무”
가장 큰 차이는 Forward channel(카메라→보드) 링크 속도 상한입니다.
- GMSL2: Forward 3Gbps 또는 6Gbps, Reverse 187Mbps(디바이스/설정에 따라) Analog Devices+2Analog Devices+2
- GMSL3: Forward 12Gbps(및 6/3Gbps 옵션), Reverse 187.5Mbps Analog Devices+2Analog Devices+2
현업 관점에서 이 차이는 단순히 “숫자 2배”가 아니라, 아래를 좌우합니다.
- 고해상도/고프레임 카메라(또는 다중 스트림) 구성에서 링크가 먼저 포화되는지
- 같은 해상도라도 **RAW/고비트 깊이/다중 카메라 집선(aggregation)**에서 마진이 생기는지
- 케이블/EMI/필터링 설계 여유가 어느 정도인지(특히 차량 규격)
(2) PHY/변조: GMSL3는 PAM4 기반 언급이 많음
필드에서는 “GMSL3는 더 높은 속도를 위해 PAM4 같은 방식이 언급된다”는 점이 설계/검증(EMC, 필터, ESD) 관점에서 고려 포인트가 됩니다. STMicroelectronics
(다만 최종적으로는 선정한 Ser/Des 칩과 레퍼런스 설계 가이드가 기준입니다.)
(3) 프로토콜/아키텍처: 둘 다 “패킷 기반 + 양방향”이지만, 3는 ‘규모 확장’에 유리
GMSL2는 패킷 기반, full duplex 양방향(Forward/Reverse 채널) 구조로 설명됩니다. Analog Devices
GMSL3도 패킷 기반 고정 링크 레이트로 운용되며(예: 12Gbps 설정 시 유휴 데이터로 채움), 대역폭을 필요로 하는 구성에서 선택되는 경우가 많습니다. Analog Devices+1
(4) 실무 체크포인트: “칩셋(Ser/Des) 생태계”가 스펙보다 중요할 때가 많다
현장에서 GMSL2/3 선택은 ‘표준’보다 실제 칩(예: MAX96724 같은 GMSL2 Deserializer, MAX96793 같은 GMSL3 Serializer 등) 기능에 의해 결정됩니다.
- 예: GMSL2 Deserializer는 여러 입력을 받아 MIPI D-PHY/C-PHY로 출력하고, 다중 센서 지원/터널링 같은 기능을 제공합니다. Analog Devices+1
- 예: GMSL3 Serializer 데이터시트에서도 12Gbps/187.5Mbps 고정 레이트 및 진단/제어 채널이 언급됩니다. Analog Devices
즉, “GMSL3니까 무조건 좋다”가 아니라,
- 필요한 해상도/프레임/비트깊이/카메라 수
- 케이블 타입(동축/FAKRA vs STP), PoC, EMI 요구
- 최종 SoC의 MIPI CSI 입력(레인 수/최대 처리량/ISP)
이 3개를 먼저 고정하고 거기에 맞는 Ser/Des 조합으로 들어가는 것이 시행착오를 줄입니다.
2) “4K 카메라를 FHD 추론으로 최적화” 파이프라인 예시
왜 이런 구성이 실무에서 표준에 가까운가?
4K(3840×2160)는 픽셀 수가 FHD(1920×1080)의 4배입니다. “해상도 그대로 추론”은 보통 아래 비용을 급격히 올립니다.
- 메모리 대역폭/버퍼링(프레임당 데이터량 증가)
- 전처리(리사이즈/색변환) 비용 증가
- NPU/CPU/GPU의 end-to-end 지연 증가
- 다채널(2~4ch) 구성에서는 곱절로 악화
반면 정확도는 모델/태스크에 따라 4K가 항상 의미 있게 오르지 않습니다. 그래서 실무에서는:
- 입력 소스는 4K로 확보(디테일/줌/증거성/저장)
- 추론은 FHD 또는 640p~960p로 최적화(성능/지연/전력)
- 필요 시 ROI(관심영역)만 크롭하여 고해상도 재추론
같은 다단 구조를 많이 씁니다.
3) 권장 파이프라인: “Dual-stream(저장/표시 vs AI)”
파이프라인 블록 다이어그램(개념)
- 4K 카메라 입력 (GMSL → Deserializer → MIPI CSI-2)
- ISP/캡처에서 두 갈래로 분기
- (A) 4K(또는 4K에 준하는) 스트림: 저장/모니터링/후처리용
- (B) 다운스케일 스트림: AI 추론용(FHD 또는 모델 입력 크기 근처)
- (B) 스트림에 대해
- 색공간 변환(NV12/RGB 등)
- 리사이즈(예: 1920×1080 → 1280×720 또는 640×640 letterbox)
- 추론 → 후처리(NMS/트래킹)
- 결과를 (A) 또는 표시 스트림에 오버레이/메타데이터로 결합
포인트: “다운스케일 위치”가 성능을 가른다
- 최선: ISP/하드웨어 스케일러에서 내려서 AI로 보냄
- 차선: GPU/전용 가속기(예: VPU, RGA 등)
- 최후: CPU 리사이즈(채널 늘면 바로 병목)
4) 예시 설정 1: 객체탐지(차량/로봇) 기본형
- 입력: 4K@30(또는 60)
- AI 입력: 1280×720@30 또는 640×640@30
- 출력/저장: FHD@60 표시 + 4K@30 저장(가능한 경우)
운용 로직:
- 탐지는 720p/640p로 지속 수행
- 특정 이벤트(사람/차량/결함 감지) 발생 시에만
- 원본 4K 프레임에서 ROI 크롭
- ROI만 고해상도 분류/재탐지(“zoom-in inference”)
장점:
- 평균 지연/전력이 낮고, 이벤트 시에만 정확도/디테일을 끌어올림
5) 예시 설정 2: 멀티카메라(2~4ch)에서 더 효과적인 이유
멀티채널에서 “4K 그대로 추론”은 대부분 불가능에 가깝거나 비효율적입니다. 대신:
- 각 채널: 4K 입력 유지(필요 시 저장)
- 각 채널 AI: 960×540 또는 1280×720로 통일
- 트래킹: 저해상도에서 수행(추론 횟수 자체를 줄임)
이렇게 하면 채널 수가 늘어도 추론 부하를 선형적으로 통제할 수 있습니다.
6) 구현 시 체크리스트(실패를 줄이는 항목)
- 모델 입력 종횡비 처리
- 16:9(4K/FHD)를 1:1(640×640)로 넣을 때는
- letterbox(패딩)로 왜곡 방지
- 또는 중앙/ROI 크롭으로 목표 영역 집중
- 색 포맷
- 카메라/ISP 출력(NV12, UYVY, RAW)과
모델 입력(RGB/BGR/FP16 등) 간 변환 비용을 최소화
- 프레임레이트 정책
- “카메라 60fps”라도 AI는 15/30fps로 제한하고 트래커로 보완하는 구성이 흔함
- 지연(latency) 측정
- 전체 파이프라인에서 병목이 “추론”이 아니라
캡처 버퍼/색변환/리사이즈/메모리 복사인 경우가 매우 많음
마무리
- GMSL2 vs GMSL3는 현업에서 결국 “필요 대역폭(6 vs 12Gbps)과 검증 난이도/부품 생태계” 문제로 귀결됩니다. Analog Devices+1
- 4K 카메라 = 4K 추론은 대부분 비용 대비 효율이 떨어지며, Dual-stream + ROI 재추론이 실전에서 강력한 기본 패턴입니다.
'HW SW 개발' 카테고리의 다른 글
| GMSL 카메라란? 차량·로봇에서 ‘긴 거리 영상 전송’을 가능하게 하는 SerDes 카메라 (0) | 2025.12.19 |
|---|---|
| 💻🔧CMake Toolchain 파일로 ARM32 라즈베리파이 크로스 빌드 자동화 (Host: Ubuntu x86_64 → Target: Pi OS 32-bit/armhf) (0) | 2025.12.14 |
| 💻🔧ARM32 라즈베리파이에서 크로스 컴파일 적용 예시: PC에서 빌드하고 Pi에서 실행하기 (0) | 2025.12.14 |
| 💻🔧리눅스 크로스 컴파일이란? (초보도 이해하는 정리) (0) | 2025.12.14 |
| 💻🔧윈도우11에서 VirtualBox 설치하다가 삽질한 기록: VC++ x86/x64 오류 해결기 (0) | 2025.12.14 |