Computer Vision 및 Azure Machine Learning을 사용하여 비디오 콘텐츠 분석

Azure Machine Learning
Azure AI 서비스
Azure Logic Apps
Azure Synapse Analytics
Azure Data Lake Storage

이 문서에서는 비디오 영상의 수동 분석을 자동화되고 자주 더 정확한 기계 학습 프로세스로 바꾸는 데 사용할 수 있는 아키텍처에 대해 설명합니다.

FFmpeg 및 Jupyter Notebook 로고는 해당 회사의 상표입니다. 이러한 상표를 사용한다고 해서 어떠한 보증도 암시되지 않습니다.

아키텍처

비디오 콘텐츠를 분석하기 위한 아키텍처를 보여 주는 다이어그램.

이 아키텍처의 PowerPoint 파일을 다운로드합니다.

워크플로

  1. MP4 형식의 비디오 영상 컬렉션이 Azure Blob Storage에 업로드됩니다. 이상적으로 비디오는 “원시” 컨테이너로 이동합니다.
  2. Azure Machine Learning에서 미리 구성된 파이프라인은 비디오 파일이 컨테이너에 업로드됨을 인식하고 유추 클러스터를 시작하여 비디오 영상을 프레임으로 분리하기 시작합니다.
  3. 오픈 소스 도구인 FFmpeg는 비디오를 분해하고 프레임을 추출합니다. 추출되는 초당 프레임 수, 추출 품질 및 이미지 파일의 형식을 구성할 수 있습니다. 형식은 JPG 또는 PNG일 수 있습니다.
  4. 유추 클러스터는 이미지를 Azure Data Lake Storage로 보냅니다.
  5. Data Lake Storage를 모니터링하는 미리 구성된 논리 앱은 새 이미지가 업로드되고 있음을 감지합니다. 워크플로를 시작합니다.
  6. 논리 앱은 미리 학습된 사용자 지정 비전 모델을 호출하여 이미지의 개체, 기능 또는 품질을 식별합니다. 또는 또한 컴퓨터 비전(OCR(광학 문자 인식) 모델을 호출하여 이미지의 텍스트 정보를 식별합니다.
  7. 결과는 JSON 형식으로 수신됩니다. 논리 앱은 결과를 구문 분석하고 키-값 쌍을 만듭니다. 결과를 Azure Synapse Analytics에서 프로비저닝하는 Azure 전용 SQL 풀에 저장할 수 있습니다.
  8. Power BI는 데이터 시각화를 제공합니다.

구성 요소

  • Azure Blob Storage는 클라우드 네이티브 워크로드 및 기계 학습 저장소에 대한 개체 스토리지를 제공합니다. 이 아키텍처에서는 업로드된 비디오 파일을 저장합니다.
  • Azure Machine Learning은 엔드투엔드 기계 학습 수명 주기를 위한 엔터프라이즈급 기계 학습 서비스입니다.
  • Data Lake Storage는 고성능 분석 워크로드를 위해 스케일링 성능이 뛰어나고 보안이 강화되고 비용 효율적인 클라우드 스토리지를 제공합니다.
  • Computer Vision은 Azure AI 서비스의 일부입니다. 각 이미지에 대한 정보를 검색하는 데 사용됩니다.
  • Custom Vision을 사용하면 특정 도메인에 대한 최첨단 컴퓨터 비전 이미지 분석을 사용자 지정하고 포함할 수 있습니다.
  • Azure Logic Apps는 환경 간에 앱과 데이터를 연결하여 워크플로를 자동화합니다. 이것은 데이터를 실시간으로 액세스하고 처리하는 방법을 제공합니다.
  • Azure Synapse Analytics는 데이터 통합, 엔터프라이즈 데이터 웨어하우징과 빅 데이터 분석을 결합한 무제한 분석 서비스입니다.
  • 전용 SQL 풀(이전의 SQL DW)은 Azure Synapse SQL을 사용할 때 프로비저닝되는 분석 리소스의 컬렉션입니다.
  • Power BI는 데이터를 시각화하기 위해 함께 작동하는 소프트웨어 서비스, 앱 및 커넥터의 컬렉션입니다.

대안

  • Azure Video Indexer는 AI를 사용하여 저장된 비디오에서 실행 가능한 인사이트를 추출하는 비디오 분석 서비스입니다. 기계 학습에 대한 전문 지식 없이도 이 서비스를 사용할 수 있습니다.
  • Azure Data Factory 는 ETL(추출, 변환 및 로드) 및 ELT(추출, 로드 및 변환) 프로세스를 생성하는 데 도움이 되는 완전 관리형 서버리스 데이터 통합 서비스입니다.
  • Azure Functions는 새로운 인프라 필요 없이 단일 작업 코드를 실행하는 서버리스 PaaS(서비스 제공 플랫폼)입니다.
  • Azure Cosmos DB는 최신 앱을 개발하기 위한 완전 관리형 NoSQL 데이터베이스입니다.

시나리오 정보

많은 산업에서 비디오 영상을 녹화하여 특정 개체 또는 엔터티의 존재 여부를 감지하거나 개체 또는 엔터티를 분류합니다. 비디오 모니터링 및 분석은 일반적으로 수동으로 수행됩니다. 특히 인간의 눈으로는 어려운 작업에 대해 이러한 프로세스는 종종 단조롭고 오류가 발생하기 쉽습니다. AI 및 기계 학습을 사용하여 이러한 프로세스를 자동화할 수 있습니다.

다양한 기술이 이미지를 분석할 수 있도록 비디오 녹화를 개별 프레임으로 구분할 수 있습니다. 이러한 기술 중 하나가 Computer Vision으로, 컴퓨터가 이미지에서 개체 및 엔터티를 식별하는 기능입니다.

Computer Vision을 사용하면 비디오 영상 모니터링이 자동화되고 표준화되며 잠재적으로 더 정확해집니다. Computer Vision 모델을 학습할 수 있고, 사용 사례에 따라 모델을 학습한 사용자의 결과만큼 좋은 결과를 자주 얻을 수 있습니다. MLOps(Machine Learning Operations)를 사용하여 모델을 지속적으로 개선함으로써, 시간이 지남에 따라 더 나은 결과를 기대하고 시간이 지남에 따라 비디오 데이터의 변화에 대응할 수 있습니다.

잠재적인 사용 사례

이 시나리오는 비디오를 분석하는 모든 비즈니스와 관련이 있습니다. 다음은 몇 가지 샘플 사용 사례입니다.

  • 농업. 시간이 지남에 따라 작물과 토양 상태를 모니터링하고 분석합니다. 농부들은 드론이나 UAV를 사용하여 분석을 위해 비디오 영상을 녹화할 수 있습니다.

  • 환경 과학. 수생 종을 분석하여 수생 종이 어디에 있고 어떻게 진화하는지를 이해합니다. 환경 연구원들은 수중 카메라를 보트에 연결하여 해안선을 탐색하면서 비디오 영상을 녹화할 수 있습니다. 비디오 영상을 분석하여 시간에 지남에 따른 종 이동과 종 개체군의 변화를 이해할 수 있습니다.

  • 트래픽 제어. 차량을 범주(SUV, 승용차, 트럭, 오토바이)로 분류하고 그 정보를 사용하여 교통 통제를 계획합니다. 비디오 영상은 공공 장소의 CCTV에서 제공될 수 있습니다. 대부분의 CCTV 카메라는 날짜와 시간을 기록하여, OCR(광학 문자 인식)을 통해 쉽게 검색할 수 있습니다.

  • 품질 보증. 제조 시설에서 품질 관리를 모니터링하고 분석합니다. 프로덕션 라인에 카메라를 설치하면, Computer Vision 모델을 학습하여 변칙을 탐지할 수 있습니다.

고려 사항

이러한 고려 사항은 워크로드의 품질 개선에 사용할 수 있는 일련의 기본 지침인 Azure Well-Architected Framework의 핵심 요소를 구현합니다. 자세한 내용은 Microsoft Azure Well-Architected Framework를 참조하세요.

안정성

안정성은 애플리케이션이 고객에 대한 약속을 충족할 수 있도록 합니다. 자세한 내용은 안정성 핵심 요소 개요를 참조하세요.

안정적인 워크로드는 복원력이 있고 사용 가능한 워크로드입니다. 복원력은 오류를 복구하여 계속 작동하는 시스템 기능입니다. 복원력의 목표는 오류가 발생한 후에 애플리케이션을 완전히 작동하는 상태로 되돌리기 위한 것입니다. 가용성은 사용자가 필요할 때 워크로드에 액세스할 수 있는지 여부를 측정합니다.

이 솔루션에 있는 Azure 서비스의 가용성 보장은 다음 리소스를 참조하세요.

보안

우수한 보안은 중요한 데이터 및 시스템에 대한 고의적인 공격과 악용을 방어합니다. 자세한 내용은 보안 요소의 개요를 참조하세요.

다음 리소스를 고려하세요.

비용 최적화

비용 최적화는 불필요한 비용을 줄이고 운영 효율성을 높이는 것입니다. 자세한 내용은 비용 최적화 핵심 요소 개요를 참조하세요.

다음은 비용 최적화를 위한 몇 가지 지침입니다.

  • 아키텍처에 종량제 전략을 사용하고 처음부터 대규모 리소스에 투자하는 대신 필요에 따라 스케일 아웃합니다.
  • 아키텍처의 기회 비용과 첫 번째 동기 우위와 fast follow 간의 균형을 고려합니다. 가격 책정 계산기를 사용하여 초기 비용과 운영 비용을 예상합니다.
  • 솔루션의 비용 제한을 설정하는 정책, 예산 및 컨트롤을 수립합니다.

운영 우수성

운영 우수성은 애플리케이션을 배포하고 프로덕션에서 계속 실행하는 운영 프로세스를 다룹니다. 자세한 내용은 운영 우수성 핵심 요소 개요를 참조하세요.

배포는 안정적이고 예측이 가능해야 합니다. 다음은 몇 가지 지침입니다.

  • 사용자 오류 발생 가능성을 줄이기 위해 배포를 자동화합니다.
  • 빠른 루틴 배포 프로세스를 이행하여 새 기능 및 버그 수정의 릴리스 속도를 늦추지 않도록 합니다.
  • 업데이트로 인해 문제가 발생할 경우 신속하게 롤백하거나 롤포워드합니다.

성능 효율성

성능 효율성은 사용자가 배치된 요구 사항을 효율적인 방식으로 충족하기 위해 워크로드의 크기를 조정할 수 있는 기능입니다. 자세한 내용은 성능 효율성 핵심 요소 개요를 참조하세요.

스케일링 기능을 적절하게 사용하고 스케일링 기능이 기본 제공되는 PaaS 제품을 구현하는 것이 성능 효율성을 달성하는 주요 방법입니다.

참가자

Microsoft에서 이 문서를 유지 관리합니다. 원래 다음 기여자가 작성했습니다.

보안 주체 작성자:

기타 기여자:

비공개 LinkedIn 프로필을 보려면 LinkedIn에 로그인합니다.

다음 단계