2026.02.26 | 인턴 최종발표
CCTV
ROBOT
AI / ML
SECURITY
Department
자율형IoT연구실
Presenter
황규범
보안 정책상 외부 네트워크와 물리적·논리적으로 분리된 환경입니다. 외부 클라우드 API 사용이 제한되며, 내부 자원만을 활용한 독립적인 시스템 구축이 필수적입니다.
사각지대가 존재하며, 탐지 후 추가적인 시각적 검증이 어렵습니다. 관리자가 직접 현장으로 이동해야 하는 비효율이 발생하며, 야간이나 주말 등 비상시 즉각적인 상황 파악이 제한됩니다.
고정형 카메라와 이동형 로봇을 연동하여 사각지대를 해소해야 합니다. 또한, 내부 시스템 보안을 유지하면서도 관리자에게 외부 알림(Telegram 등)을 안전하게 전달하는 분리된 아키텍처가 필요합니다.
시스템 개요 및 핵심 가치
폐쇄망 환경의 보안 제약을 준수하며 지능형 관제와 원격 대응을 통합
실시간 위험 감지
YOLO 기반 객체 인식으로 침입/위험 즉시 탐지
객체 단위 이벤트 관리 및 중복 알림 방지
표준화된 위험/안전 상태 이벤트 프로토콜
자동 증거 확보
이벤트 발생 시점 스냅샷 자동 생성
감지 전후 10초 고화질 영상 클립 저장
정적 이미지 서버를 통한 안정적 증거 열람
폐쇄망 안정 운영
내부 시스템과 외부 알림의 물리/논리적 분리
네트워크 장애 시에도 내부 관제 기능 유지
Telegram Bot을 활용한 안전한 외부 알림
외부 의존성을 최소화하고 내부 자원 효율성을 극대화한 독립형 지능형 관제 플랫폼
03
영상 소스 생성 및 전송
실시간 객체 인식 및 추론
이벤트 처리 및 데이터 관리 허브
통합 관제 및 로봇 제어 UI
보안 경계 외부 알림 전송
사람 객체 탐지 시 발생
즉각적인 알림 및 녹화 트리거
사람 객체 미탐지 상태 전환 시
이벤트 종료 처리
카메라/로봇 연결 상태 모니터링
시스템 가용성 확인
자동 감시 모드 ↔ 수동 조종 모드
운영 주체 전환
RTSP 스트림 분석
YOLOv8 Inference
객체 ID 기반 식별
Unique Event ID 부여
메시지 큐(Queue) 적재
Redis Pub/Sub
증거 저장 & 외부 알림
Snapshot / Telegram
주요 기능 하이라이트
증거 확보, 시스템 구조, 운영 편의성을 극대화한 5가지 핵심 기능
스마트 증거 관리
이벤트 발생 시점 스냅샷 및 전후 10초 영상 클립 자동 저장
정적 파일 서버 구축으로 404 오류 방지 및 안정적 열람
유연한 연동 구조
Algorithm, Gateway, Web 모듈의 독립적 설계로 유지보수 용이
내부 망과 분리된 안전한 외부 알림 체계 (실시간 시연 예정)
운영 가시성 확보
시스템 로그와 탐지 이벤트를 분리하여 정보 혼선 방지
원격 로봇 수동 제어 및 다중 카메라 통합 모니터링
실제 시스템 구동 화면 (Live Demo Snapshot)
LIVE SYSTEM
06









AI 추론과 같은 무거운 연산은 Python(FastAPI)이 전담하고, 시스템 제어 및 다중 장치 I/O는 C#(.NET)이 처리하여 성능 병목을 해소하고 안정성을 확보했습니다.
이벤트 발생과 처리를 비동기로 분리하여 시스템 부하를 조절합니다. 처리 실패 메시지는 DLQ(Dead Letter Queue)로 격리하여 데이터 유실을 방지하고 재시도 메커니즘을 구현했습니다.
이미지와 영상 원본은 파일 시스템에 저장하고, 데이터베이스(SQLite)에는 파일 경로와 메타데이터만 저장하여 DB 부하를 최소화하고 조회 속도를 향상시켰습니다.
평상시 모니터링은 네트워크 대역폭에 맞춰 적정 화질로 스트리밍하되, 이벤트 발생 시에는 최대 해상도로 증거 영상을 별도 저장하여 품질과 효율성을 동시에 달성했습니다.
모듈 구성 및 주요 파일
실제 코드 기준으로 핵심 파일만 요약
Algorithm Module
핵심 파일
main.py
카메라 등록/제어, 스트림 APImulti_cam_agent.py
멀티 카메라 실행 에이전트ai_detector.py
객체 탐지 로직recorder.py
스냅샷/녹화 저장Python AI 처리 핵심 파일
Gateway Module
핵심 파일
Program.cs
앱 부팅/웹 API 엔트리RedisService.cs
Redis 연결/이벤트 처리RedisEventWorker.cs
이벤트 백그라운드 워커LabDbContext.cs
SQLite DB 컨텍스트C# .NET 게이트웨이 핵심 파일
Web Dashboard
핵심 파일
App.tsx
메인 대시보드 UImain.tsx
React 앱 엔트리config.ts
서버/스트림 설정 상수App.css
대시보드 스타일웹 프론트엔드 핵심 파일
느슨한 결합(Loose Coupling) 원칙을 적용하여 각 모듈의 독립적인 유지보수와 확장이 가능하도록 설계
09
폐쇄망의 제한된 자원 환경에서 네트워크 부하를 최소화하면서도,
결정적인 순간에는 고품질 증거 확보 필요
평상시 저화질 모니터링 → 이벤트 감지 시 고화질 녹화 전환
→ 종료 후 복귀하는 적응형 스트리밍 전략 적용
RealSense 고해상도 영상을 CPU 기반 H.264로 인코딩 시 심각한 프레임 드랍 발생
GStreamer 파이프라인 재구성:
하드웨어 가속 인코딩 적용 및 불필요한 색공간 변환 단계 제거
동일 조건에서 분리된 파일 전송이 동시에 발생해 간헐적으로 누락되던 Race Condition
이미지/메타데이터를 동일 조건의 단일 전송 단위로 묶어 동시 처리 흐름으로 재구성
다수 카메라 프로세스의 동시 접근으로 인한 Database Locked 및 데이터 유실
Redis Queue 도입: DB 쓰기 작업을 단일 워커(Single Worker)가 순차 처리 (Producer-Consumer 패턴)
스트림 단위의 독립 파이프라인 설계로 N개의 카메라와 로봇을 손쉽게 추가할 수 있습니다. Redis Queue 기반의 느슨한 결합으로 시스템 부하를 효과적으로 분산하며, 필요 시 AI 연산 노드를 수평적으로 확장(Scale-out)할 수 있습니다.
본 시스템은 연구실 뿐만 아니라 스마트 팩토리, 발전소, 데이터 센터 등 보안이 중요한 폐쇄망 환경 어디든 적용 가능합니다. 특히 위험 지역이나 사람이 접근하기 힘든 구역의 무인 순찰 및 이상 징후 감지에 탁월한 효과를 발휘합니다.
출입 통제 시스템, 화재 감지 센서 등 레거시 보안 장비와 이벤트를 연동할 수 있습니다. 정책 기반 알림 라우팅을 통해 화재 감지 시 로봇이 해당 구역으로 자동 출동하는 시나리오 등 고도화된 대응 체계 구축이 가능합니다.
보안성 극대화
내부 감시/저장은 폐쇄망에서 유지하고
외부 알림은 분리 영역에서 처리하는 망 분리 구조
운영 안정성 향상
Redis Queue + DLQ 기반 비동기 처리로
누락 방지, 재처리, 장애 격리 가능
확장 용이성
모듈화 구조와 장치 등록 체계로
다수 카메라·로봇으로 점진적 확장 가능
질문이 있으시면 자유롭게 말씀해 주세요.
경청해 주셔서 감사합니다.