VIAME/VIAME

Video and Image Analytics for Multiple Environments

VIAME – DIY 컴퓨터 비전 툴킷

개요 – VIAME(Vision for Intelligent Analytic Media Extraction)은 AI 기반 비디오 및 이미지 분석 애플리케이션을 구축하기 위한 대규모 알고리즘, 파이프라인, 사용자 인터페이스를 모아 놓은 오픈소스 컴퓨터 비전 프레임워크입니다. 해양 과학 커뮤니티의 종 분석을 위해 시작되었지만 현재는 일반적이고 확장 가능한 툴킷으로 성장했습니다.

핵심 아이디어

  • 파이프라인 중심: C++/Python 노드를 멀티스레드 파이프라인(Kitware의 KWIVER 기반)으로 연결합니다.
  • 플러그인 아키텍처: 알고리즘(탐지기, 추적기, 필터, 측정 도구 등)은 플러그인으로 제공되며 사용자 정의 코드와 혼합할 수 있습니다.
  • 이중 UI: 주석, 훈련, 시각적 검사를 위한 데스크톱 GUI(VIVIA/DIVE)와 원격 사용을 위한 웹 기반 버전을 제공합니다.
  • 엔드투엔드 워크플로우: 원시 비디오 → 데이터 주석 → 모델 훈련 → 추론 → 평가 → 검색/모자이크 처리까지 완벽하게 지원합니다.

주요 기능

기능 수행할 수 있는 작업
객체 탐지 및 추적 사전 훈련된 탐지기를 실행하고, 새 모델을 훈련하고, 비디오 스트림 전반에 걸쳐 객체 트랙을 생성합니다.
데이터 주석 경계 상자, 다각형, 스테레오 측정을 그리기 위한 대화형 도구(데스크톱 및 웹)를 제공합니다.
멀티 카메라 및 스테레오 피드를 통합하고, 실제 크기를 측정하고, 모자이크를 생성합니다.
이미지 향상 분석 전에 필터, 노이즈 제거, 대비 개선을 적용합니다.
빠른 모델 생성 및 검색 작은 라벨링된 데이터 세트로 모델을 만들고 대규모 비디오 아카이브를 쿼리하는 데 사용합니다.
평가 및 스코어링 탐지/트랙을 ground-truth CSV/COCO/JSON 형식과 비교합니다.
확장 가능한 파이프라인 C++ 또는 Python 프로세스를 임의로 결합하고 plugins/ 디렉토리에 새 플러그인을 추가할 수 있습니다.

획득 방법

  • 사전 빌드 바이너리 – Windows .zip 또는 Linux .tar.gz 패키지(GPU 지원 또는 CPU 전용)는 README에 링크되어 있습니다.
  • Docker – 헤드리스 명령줄 컨테이너의 경우 kitware/viame:gpu-algorithms-default를 풀합니다. 전체 웹/데스크톱 이미지도 제공됩니다.
  • Python 패키지 – pip install viame(Python 3.10-3.14). 패키지에는 핵심 도구를 래핑하고 추가 모델을 다운로드할 수 있는 viame CLI가 포함됩니다.
  • 소스에서 빌드 – 저장소를 클론하고, 서브모듈을 초기화하고, 선택적 플래그(예: VIAME_ENABLE_PYTORCH, VIAME_ENABLE_CUDA)로 CMake를 실행합니다. 정확한 명령은 Quick Build 섹션을 참조하세요.

일반적인 명령줄 워크플로우

# 환경 설정(바이너리 또는 소스 설치용)
source /opt/noaa/viame/setup_viame.sh

# 비디오에 파이프라인 실행
viame run my_pipeline.pipe video.mp4

# 라벨링된 데이터 세트로 탐지기 훈련
viame train data/ train_detector.conf

# 결과 평가
viame score detections.csv groundtruth.csv

# 추가 모델 목록 및 설치
viame add-ons

동일한 파이프라인은 viame 패키지를 통해 Python에서 호출하거나 기본 KWIVER 클래스를 가져와서 사용할 수 있습니다.

설치 하이라이트

  • 약 8GB의 디스크 공간이 필요합니다.
  • GPU 가속에는 NVIDIA GPU(VRAM 8GB 이상, 드라이버 ≥570.65)가 필요합니다.
  • 지원 OS: Windows 7/8/10/11(64비트), Linux(RHEL, CentOS, Ubuntu), 웹 도구용 MacOS 제한 지원.
  • 선택적 종속성(OpenCV, VXL, PyTorch, CUDA, TensorRT, ONNX, TensorFlow, Darknet, MATLAB)은 CMake 플래그로 전환됩니다.

문서 및 커뮤니티

  • 빠른 시작 가이드와 전체 매뉴얼은 https://viame.github.io/VIAME/에서 호스팅됩니다.
  • 예제 파이프라인, 튜토리얼, 플러그인 템플릿은 examples/ 및 plugins/ 디렉토리에 있습니다.
  • 공개 주석 아카이브 및 웹 주석 도구는 https://viame.kitware.com/에서 사용할 수 있습니다.
  • 프로젝트는 BSD-3 라이선스입니다. 인용 및 감사의 말은 docs/citations.md 및 docs/acknowledgements.md에 나열되어 있습니다.

사용 대상

  • 비디오 분석용 기성 툴박스가 필요한 연구자(예: 야생동물 모니터링, 감시, 산업 검사).
  • GPU 지원이 있는 C++/Python 하이브리드 프레임워크를 원하는 사용자 정의 AI 파이프라인 개발자.
  • 라벨링용 GUI와 배치 처리를 위한 헤드리스 CLI가 모두 필요한 팀.

위의 모든 정보는 저장소의 README에서 직접 가져온 것이며 추가 기능은 추론되지 않았습니다.

관련

  • 프로젝트
  • 프로젝트
  • Dispatch
  • 프로젝트
  • 프로젝트