AI를 활용한 승객 계수: 인도 버스 시스템의 기술적 구현
교통 시스템을 위한 AI 솔루션: 작동 원리
현대 인공지능(AI) 기술은 교통 분야의 난제를 해결할 수 있는 새로운 가능성을 열어주고 있습니다. 그중 하나는 인도 버스에서의 정확한 승객 계수 문제로, 직원에 의한 체계적인 부정행위로 인해 상당한 재정 손실이 발생하고 있습니다. 본 글은 시스템 아키텍처, 맞춤형 신경망 개발, 인도의 데이터 보호법 준수 등 프로젝트의 기술적 측면을 심층적으로 다룹니다.
아이디어에서 구현까지: 데이터 수집 및 준비
이 프로젝트는 인도 버스 운행 조건에 대한 상세한 분석으로 시작되었습니다. 차량 설계를 연구하고 최적의 카메라 설치 각도를 결정하며 초기 데이터셋을 수집하기 위해 현장 조사가 진행되었습니다. 5일 동안 약 1시간 분량의 4K 영상이 촬영되어 IndiaBus-v1.0 데이터셋이 구축되었습니다. 이 자료는 가려짐, 반사, 조명 변화와 같은 주요 감지 과제를 파악하고 하드웨어 요구사항을 정의하는 데 도움이 되었습니다.
결과는 카메라 설치 지침과 데이터 전송 프로토콜의 기초가 되었습니다. 버스의 데이터는 종점에서 WiFi 또는 GSM을 통해 업로드되어 인프라 비용을 최소화합니다. 전송 속도는 400 Mbps에 달하며, 1회 운행당 업로드 시간은 5~10분이 소요됩니다. 이 접근 방식은 지연 없이 대량의 데이터를 신속하게 처리할 수 있게 합니다.
시스템 아키텍처: 3계층 접근법
승객 계수 시스템은 각각 특정 임무를 가진 세 개의 계층으로 구성됩니다:
- 탑재 계층: 승객 승하차 기록용 카메라, 위치 추적용 GPS 모듈, 운행 중 데이터 저장용 SSD(1회 운행당 약 15GB)를 포함합니다.
- 업로드 계층: 데이터는 종점에서 고속 WiFi 또는 GSM을 통해 서버로 전송됩니다.
- 서버 계층: AI 처리가 이뤄지는 곳입니다. 먼저 YOLO 모델이 얼굴을 감지하고, 이미지를 크롭한 후, 맞춤형 Adaptive Face Extractor 신경망을 사용해 임베딩을 추출합니다. 마지막으로 임베딩을 비교해 승객을 식별하고, GPS 및 타임스탬프를 통해 데이터를 정류장과 연결합니다.
이 접근법은 승객을 정확히 계수할 뿐만 아니라 이동 거리에 기반한 개별 운임도 계산합니다. 운임 공식은 간단합니다: 승차 지점과 하차 지점 사이의 모든 정류장에 대한 요금의 합계입니다.
왜 맞춤형 신경망인가: Adaptive Face Extractor의 장점
FaceNet이나 ArcFace 같은 기성 솔루션 대신 자체 개발한 Adaptive Face Extractor 아키텍처가 개발되었습니다. 그 이유는 작업의 특수성과 데이터와 관련이 있습니다:
- 인도 현지 조건에 적응: 서구 데이터셋으로 사전 훈련된 모델은 사리, 터번, 비표준 조명이 포함된 이미지에서 낮은 정확도(~90%)를 보였습니다. 맞춤형 네트워크는 인도 데이터에서 96.3%의 정확도를 달성했습니다.
- 자원 최적화: 모델 크기는 상용 솔루션의 98MB에 비해 4.7MB에 불과하며, CPU에서의 추론 시간은 280ms 대비 42ms입니다.
- 가변 입력 크기: 이 아키텍처는 다양한 크기의 이미지(80×80에서 180×160 픽셀까지) 처리를 지원하며, 이는 승객 키와 카메라까지의 거리가 다양하기 때문에 중요합니다.
- 데이터 통제: 자체 모델 사용으로 생체 인식 데이터를 외부 API로 전송하지 않아 법적 요구사항에 부합합니다.
- 비용 절감: 라이선스 비용이 없어, 하루 18만 명의 승객으로 확장 시 월 수백만 루피에 달할 수 있는 비용을 절약할 수 있습니다.
Adaptive Face Extractor 아키텍처는 주요 블록을 포함합니다: Conv2D와 BatchNorm이 있는 초기 블록, 병렬 분기를 가진 멀티스케일 블록, Squeeze-and-Excitation 어텐션 메커니즘, 그리고 512D 또는 1024D 임베딩을 위한 최종 레이어들입니다. 훈련에는 IndiaBus-v1.0 데이터셋과 강건성을 위한 ArcFace Loss 및 데이터 증강이 사용되었습니다.
데이터 동기화 및 운임 계산
정확한 승객 계수와 개별 경로 결정은 카메라와 GPS 데이터의 동기화에 의존합니다. 수신기는 NavIC L1과 GPS L1/L5를 지원하여 최대 10미터의 정확도를 제공합니다. 타임스탬프는 뭄바이의 NTP 서버를 통해 100ms 미만의 오차로 동기화됩니다. 좌표는 15초마다 기록되며, 각 비디오 프레임은 위치 및 시간 데이터로 태그됩니다.
승차 및 하차 임베딩은 코사인 유사도를 사용해 비교됩니다. 유사도 임계값은 현재 인식 정밀도와 재현율의 균형을 맞추기 위해 미세 조정 중입니다. 비교 코드는 다음과 같습니다:
def compare_faces(embedding1, embedding2, threshold):
similarity = np.dot(embedding1, embedding2)
if similarity > threshold:
return True # 동일 인물
else:
return False # 다른 인물
법적 준수: DPDPA 2023 하의 데이터 보호
프로젝트의 핵심 측면은 인도의 디지털 개인 데이터 보호법(DPDPA 2023) 준수입니다. 이 법은 GDPR이나 CCPA보다는 덜 엄격하지만 여전히 심각한 요구사항을 부과합니다. 위반 시 최대 벌금은 250크로르 루피(약 30억 원)에 달할 수 있으나, 데이터 유출이나 보안 조치 부재와 같은 심각한 위반에만 적용됩니다.
법적 요구사항을 충족하기 위해 다음과 같은 조치가 시행되었습니다:
- 데이터는 인도 내 서버(뭄바이 지역)에만 저장됩니다.
- 얼굴 이미지는 디버깅 목적으로 90일 동안만 보관된 후 삭제되며, 원본 이미지를 재구성할 수 없는 임베딩은 더 오래 저장됩니다.
- 버스 내부에 마라티어, 힌디어, 영어로 된 정보 안내판이 설치되어 사전 동의를 얻습니다.
- TLS 1.3 암호화와 AES-256-GCM이 사용됩니다.
- 분기별 제3자 감사가 실시됩니다.
DPDPA 2023 준수는 위험을 최소화할 뿐만 아니라, 다른 회사들이 제한을 받을 수 있는 영역에서 운영할 수 있는 경쟁 우위를 제공합니다.
핵심 요약
- 기술적 구현: 3계층 아키텍처는 정확한 승객 계수를 위한 데이터 수집, 전송 및 처리를 보장합니다.
- 맞춤형 모델: Adaptive Face Extractor는 인도 데이터에서의 정확도(96.3%)와 자원 최적화(4.7 MB, CPU에서 42 ms) 측면에서 기성 솔루션을 능가합니다.
- 법적 준수: DPDPA 2023 준수는 벌금 위험을 최소화하고 시장에서의 우위를 제공합니다.
- 데이터 동기화: GPS와 타임스탬프를 통해 각 승객의 정확한 경로와 운임 계산이 가능합니다.
— Editorial Team
아직 댓글이 없습니다.