TwelveLabs와 AWS로 준실시간 AI 영상 분석 파이프라인 구축

by DD
2개월 전
조회수 20

TwelveLabs Pegasus를 활용하여 영상 내 이벤트 감지 및 알림을 제공하는 준실시간 비디오 분석 파이프라인 구축

AWS Elemental MediaLive를 통해 HLS 스트림을 분석 가능한 MP4로 변환하는 서버리스 아키텍처(Serverless Architecture) 구현

AWS Elemental MediaPackage의 타임시프트(Time-shifted) 기능을 활용하여 라이브 스트림의 과거 구간에 접근

Amazon Kinesis Video Streams(KVS)의 GetClip API를 사용하여 CCTV 스트림을 MP4로 직접 추출하여 분석

준실시간 비디오 분석 파이프라인 아키텍처

본문은 TwelveLabs Pegasus를 활용하여 준실시간 비디오 분석 파이프라인을 구축하는 다양한 아키텍처를 제시한다. 서버리스(Serverless) 아키텍처는 AWS의 관리형 서비스(MediaLive, S3, EventBridge, Lambda)를 활용하여 인프라 관리 부담을 줄인다. 서버 기반 아키텍처는 MediaConnect와 EC2/ECS를 사용하여 낮은 레이턴시(Latency)를 확보한다. 각 아키텍처는 스트리밍 포맷 변환(Streaming Format Conversion), AI 분석(AI Analysis), 알림(Notification) 등의 단계를 거치며, 요구사항에 따라 유연하게 선택할 수 있다.

AWS Elemental 서비스 활용: HLS 스트림 분석

AWS Elemental MediaLive를 통해 HLS 스트림을 S3에 저장하고, S3 Event를 트리거하여 Lambda 함수를 실행하는 방식이다. Lambda 함수는 FFmpeg(FFmpeg)를 사용하여 .ts 파일을 MP4로 변환하고, TwelveLabs API를 호출하여 분석을 수행한다. MediaPackage 타임시프트(Time-shifted) 기능을 활용하면, 과거 구간에 접근하여 10초 단위의 클립을 생성하는 준실시간 파이프라인을 구축할 수 있다. 이 방식은 정확한 시간 구간 제어(Precise Time Control)와 연속적인 클립 생성이 가능하다는 장점이 있다.

Amazon Kinesis Video Streams(KVS)를 활용한 CCTV 분석

Amazon KVS는 실시간 비디오 스트림을 수집, 처리, 저장하기 위한 완전 관리형 서비스이다. GetClip API를 통해 특정 시간 구간의 영상을 MP4 형식으로 직접 추출할 수 있어, FFmpeg 변환 과정을 생략하여 파이프라인을 단순화한다. PRODUCER_TIMESTAMP를 사용하여 영상 자체의 타임라인 기준으로 정확히 1분 간격의 영상을 추출한다. 추출된 MP4는 TwelveLabs API를 통해 분석되며, AI 기반의 CCTV 분석(AI-powered CCTV Analysis)을 가능하게 한다.

아키텍처 선택 시 고려 사항

각 아키텍처는 레이턴시(Latency), 비용(Cost), 구현 복잡도(Implementation Complexity) 측면에서 트레이드오프(Trade-off)를 가진다. 서버리스 아키텍처는 관리 편의성이 높지만, 세그먼트 단위 분석으로 인해 연속적인 이벤트 감지에 제한이 있을 수 있다. 서버 기반 아키텍처는 낮은 레이턴시를 제공하지만, 서버 관리 및 MediaConnect 사용에 따른 추가 비용이 발생한다. KVS를 활용하는 방식은 파이프라인을 단순화하지만, KVS의 GetClip API 사용 비용(GetClip API Cost)을 고려해야 한다.

클라우드 환경에서의 비디오 인텔리전스 구현: TwelveLabs로 시작하는 AI 영상 분석 2부 – 준실시간 환경에서 AWS 미디어 서비스를 활용한 분석 파이프라인 구축하기