OpenDroneMap/NodeODM
A lightweight REST API to access aerial image processing engines such as ODM or MicMac
해결하는 문제
항공 드론 이미지를 지도와 3D 모델로 처리하려면 일반적으로 복잡하고 엔진별 설정과 스크립팅이 필요합니다. NodeODM은 OpenDroneMap(ODM)과 같은 처리 백엔드와 통신하는 무거운 작업을 처리하는 표준화되고 사용하기 쉬운 API와 즉시 실행 가능한 웹 서버를 제공합니다. CloudODM 및 PyODM과 같은 다른 도구가 사용할 수 있는 일관된 인터페이스를 제공하므로 기본 엔진을 직접 관리할 필요 없이 브라우저나 자체 코드에서 이미지 처리 작업을 시작할 수 있습니다.
작동 방식
NodeODM은 자체 사양에 정의된 웹 API를 노출하는 Node.js 애플리케이션입니다. 실행하면 웹 서버(기본 포트 3000)가 시작되어 드론 이미지를 업로드하고 처리 작업을 시작하고 결과를 다운로드할 수 있습니다. 서버는 ODM 엔진(공식 ODM Docker 이미지 또는 사용자 지정 이미지)과 통신하여 실제 사진 측량 작업을 수행합니다. 작업 오케스트레이션, 데이터 저장을 관리하며 GPU 지원 Docker 이미지를 --gpus all 플래그로 실행할 때 GPU 가속(CUDA를 통해)을 사용할 수 있습니다. Docker 컨테이너, 네이티브 프로세스 또는 독립 실행형 Windows 실행 파일 등 여러 가지 방법으로 배포할 수 있습니다. 또한 ODM 호출을 시뮬레이션하는 테스트 모드를 지원하므로 개발자가 전체 ODM 설정 없이 API를 쉽게 테스트할 수 있습니다.
대상 사용자
- 항공 이미지를 처리하기 위한 턴키 웹 인터페이스가 필요한 드론 애호가 및 전문가.
- NodeODM이 깔끔한 REST API를 제공하므로 항공 이미지 처리가 필요한 애플리케이션을 구축하는 개발자.
- Docker, PM2 또는 Windows에서 배포 가능한 서버가 필요한 시스템 관리자.
- Apptainer를 통해 루트리스 컨테이너 옵션이 필요한 고성능 컴퓨팅 클러스터에서 작업하는 연구원.
주요 기능
- 표준화된 API 사양으로 CloudODM 및 PyODM에서도 사용됩니다.
- Node.js로 작성된 프로덕션 준비 참조 구현.
- 웹 인터페이스를 통해 이미지를 업로드하고 한 번의 클릭으로 작업을 시작할 수 있습니다.
- 전용 Docker 이미지를 사용한 NVIDIA 카드(CUDA)용 GPU 가속.
- 유연한 배포: Docker, 네이티브, Windows 번들, PM2 또는 Apptainer(루트리스).
- ODM 호출을 시뮬레이션하는 테스트 모드로 개발 및 자동화된 테스트에 유용합니다.
- 대체 처리 엔진을 테스트하기 위해 사용자 지정 ODM 이미지를 지정할 수 있습니다.
관련
- 프로젝트
- 프로젝트
- 프로젝트
- 프로젝트