본문으로 건너뛰기

API 개요

이 섹션은 MipMapEngine SDK의 완전한 API 참조 문서를 제공하며, 사용 가능한 모든 인터페이스, 매개변수 설명 및 사용 예제를 포함합니다.

시작하기 전에

아직 SDK를 설치하지 않았다면, 먼저 설치 가이드를 확인해주세요. 처음 사용하는 사용자는 빠른 시작부터 시작하는 것을 권장합니다.

MipMapEngine SDK는 다양한 사용 시나리오를 만족하기 위한 여러 인터페이스를 제공합니다:

🏗️ SDK 아키텍처

MipMapEngine SDK 아키텍처 레이어

애플리케이션 레이어

  • 당신의 애플리케이션 | Python/C++/CLI | 웹 서비스

API 인터페이스 레이어

  • ReconstructFull (전체 프로세스) | ReconstructAT (항공삼각측량) | Reconstruct3D (3D 재구성)

코어 엔진

  • 사진측량 알고리즘 | GPU 가속 | 병렬 처리

시스템 레이어

  • NVIDIA CUDA | 파일 시스템 | 라이선스 관리

📚 인터페이스 카테고리

1. 배치 처리 인터페이스

대용량 데이터의 오프라인 처리에 적합:

인터페이스기능사용 사례
ReconstructFull전체 프로세스 재구성빠른 시작, 자동 처리
ReconstructAT항공삼각측량세밀한 제어, 전문 사용자
Reconstruct3D3D 재구성AT 결과에서 모델 생성
OptimizeATAT 최적화제어점을 사용하여 정확도 향상
DivideTiles타일 처리대규모 데이터 블록 재구성

2. 보조 도구

도구기능
License Engine라이선스 관리
Progress Monitor진행률 모니터링

🔄 일반적인 워크플로

옵션 1: 빠른 전체 프로세스 (초보자 권장)

빠른 전체 프로세스

ReconstructFull출력 결과

원스텝 솔루션, 모든 프로세스를 자동으로 처리

옵션 2: 단계별 처리 (전문 사용자)

단계별 처리 플로우

ReconstructATOptimizeAT (선택사항) → Reconstruct3D출력 결과

각 단계에 대한 세밀한 제어, 중간 결과 확인 및 최적화 지원

📝 인터페이스 호출 방법

1. 명령줄 호출

SDK는 각 엔진에 대한 직접 명령줄 호출을 지원합니다:

# 일반 형식
<engine_name> [options] -task_json <config_file>

# 예제: ReconstructFull 호출
reconstruct_full_engine -reconstruct_type 0 -task_json config.json
설치 확인

초기 설치 후 검증 테스트는 설치 가이드를 참조하세요.

2. 프로그램 통합

프로세스 호출을 통해 애플리케이션에 통합:

import subprocess
import json

# 설정 준비
config = {
"license_id": 9200,
"working_dir": "./output",
"gdal_folder": "./data",
# ... 기타 매개변수
}

# 설정 파일 저장
with open("task.json", "w") as f:
json.dump(config, f)

# SDK 호출
result = subprocess.run([
"reconstruct_full_engine.exe",
"-reconstruct_type", "0",
"-task_json", "task.json"
], capture_output=True, text=True)

print(result.stdout)

🎯 올바른 인터페이스 선택

인터페이스 선택 권장사항
만약 당신이...권장이유
SDK를 처음 사용ReconstructFull모든 세부사항을 자동 처리, 가장 간단
제어점을 사용해야 함ReconstructAT + OptimizeAT제어점 최적화 지원
초대용량 데이터 처리DivideTiles + Reconstruct3D블록 병렬 처리 지원
중간 결과가 필요단계별 처리중간 결과 확인 및 조정 가능

📖 공통 개념

JSON 설정 파일

모든 인터페이스는 JSON 형식 설정 파일을 사용, 기본 구조:

{
"license_id": 9200, // 필수: 라이선스 ID
"working_dir": "string", // 필수: 작업 디렉토리
"gdal_folder": "string", // 필수: GDAL 데이터 디렉토리
// ... 기타 매개변수는 인터페이스에 따라 다름
}

좌표계 정의

{
"coordinate_system": {
"type": 2, // 0=LocalENU, 1=Local, 2=Geographic, 3=Projected, 4=ECEF
"epsg_code": 4326, // EPSG 코드 (선택사항)
"wkt": "string", // WKT 문자열 (선택사항)
"origin_point": [lon, lat, alt] // LocalENU 원점 (type=0일 때만 필요)
}
}

오류 처리

모든 인터페이스는 정수 오류 코드를 반환합니다:

  • 0: 성공
  • 음수: 다양한 오류 조건

자세한 내용은 오류 코드 참조를 확인하세요.

🚀 다음 단계

  • 📚 ReconstructFull 인터페이스에 대해 더 알아보기 (초보자 권장)
  • 🔧 ReconstructAT 인터페이스 연구 (고급 기능)
  • 💡 실용적인 사용을 위한 완전한 예제 확인

팁: 대부분의 사용자 요구사항은 ReconstructFull로 충족할 수 있습니다. 세밀한 제어가 필요할 때만 다른 인터페이스를 사용하세요.