본문으로 건너뛰기

문제 해결

이 페이지는 MipMapEngine SDK 사용 시 일반적인 문제에 대한 진단 및 해결책을 제공합니다.

🔍 진단 도구

문제가 발생하면 먼저 다음 진단 도구를 사용하세요:

1. 구성 파일 검증

task_json_check.exe -task_json your_config.json

2. 하드웨어 확인

hardware_check.exe

3. 라이선스 상태

license_manager.exe -info

📋 일반적인 오류 및 해결책

구성 파일 오류

오류: JSON 구문 분석 실패

오류 메시지:

[ERROR] JSON parse failed: expected ',' or '}' at line 45

원인: JSON 형식 오류, 일반적으로 쉼표 누락 또는 추가 쉼표.

해결책:

  1. JSON 포맷팅 도구를 사용하여 구문 확인
  2. 마지막 요소 뒤에 쉼표가 없는지 확인
  3. 닫히지 않은 괄호나 따옴표 확인

수정 예시:

// 잘못됨
{
"image_meta_data": [
{"id": 1, "path": "image1.jpg"}, // 마지막 요소에는 쉼표가 없어야 함
]
}

// 올바름
{
"image_meta_data": [
{"id": 1, "path": "image1.jpg"}
]
}

오류: 이미지 파일을 찾을 수 없음

오류 메시지:

[ERROR] Image file not found: C:/images/DJI_0001.JPG

원인: 지정된 이미지 경로가 잘못되었거나 파일이 존재하지 않음.

해결책:

  1. 파일 경로 철자 확인
  2. 파일이 실제로 존재하는지 확인
  3. 올바른 경로 구분자 사용 (/ 사용 권장)
  4. 절대 경로 사용 시도

경로 예시:

// Windows - 권장
"path": "C:/Projects/Images/DJI_0001.JPG"

// Windows - 이것도 작동
"path": "C:\\Projects\\Images\\DJI_0001.JPG"

// 상대 경로
"path": "../images/DJI_0001.JPG"

오류: 매개변수 범위 초과

오류 메시지:

[ERROR] Invalid resolution_level: 5 (should be 1-3)

원인: 매개변수 값이 허용된 범위 내에 있지 않음.

해결책: 매개변수 값 확인 및 수정:

  • resolution_level: 1 (높음), 2 (중간), 3 (낮음)
  • input_image_type: 1 (RGB), 2 (다중스펙트럼), 3 (적외선)
  • coordinate_system.type: 1 (투영), 2 (지리), 3 (지구중심)

이미지 처리 오류

오류: 이미지 부족

오류 메시지:

[ERROR] Insufficient images for reconstruction. Minimum 5 images required, found 3.

원인: 3D 재구성을 수행하기에 이미지가 너무 적음.

해결책:

  • 최소 5개 이상의 이미지 제공
  • 이미지 간 충분한 중첩 확보 (권장 >60%)
  • 이미지가 자동으로 필터링되었는지 확인 (로그 참조)

오류: GPS 정보 없음

오류 메시지:

[WARNING] No GPS information found in image EXIF

원인: 이미지 EXIF에 GPS 정보가 없음.

해결책:

  1. 사용자 정의 POS 데이터 사용:
{
"id": 1,
"path": "image.jpg",
"meta_data": {
"pos": [114.123, 22.456, 100.5],
"pos_sigma": [0.5, 0.5, 1.0]
}
}
  1. 위치 제약 완화:
{
"use_image_position_constraint": false
}

다중 카메라 재구성 문제

오류: 카메라 그룹 이미지 수 불일치

오류 메시지:

[ERROR] Camera group image count mismatch: nadir(50), oblique_f(48)

원인: 서로 다른 카메라 그룹 간 이미지 수가 일치하지 않음.

해결책:

  1. 누락된 이미지가 있는지 확인
  2. 다중 카메라 동기 트리거가 제대로 작동하는지 확인
  3. task_json_check를 사용하여 그룹화 구성 확인

올바른 그룹화 예시:

{
"image_meta_data": [
// 각 위치에는 모든 카메라의 이미지가 있어야 함
{"id": 1, "path": "pos1/nadir.jpg", "group": "nadir"},
{"id": 2, "path": "pos1/forward.jpg", "group": "forward"},
{"id": 3, "path": "pos1/backward.jpg", "group": "backward"},
// ... 다음 위치
{"id": 4, "path": "pos2/nadir.jpg", "group": "nadir"},
{"id": 5, "path": "pos2/forward.jpg", "group": "forward"},
{"id": 6, "path": "pos2/backward.jpg", "group": "backward"}
]
}

메모리 및 성능 문제

오류: 메모리 부족

오류 메시지:

[ERROR] Out of memory. Required: 24GB, Available: 16GB

원인: 현재 작업을 처리하기에 시스템 메모리가 부족함.

해결책:

  1. 정밀도 수준 낮추기:
{
"resolution_level": 3 // 낮은 정밀도 사용
}
  1. 메모리 사용량 제한:
{
"min_avali_memory_size": 12.0 // 12GB로 제한
}
  1. 출력 형식 줄이기:
{
"generate_obj": true,
"generate_osgb": false, // 불필요한 출력 비활성화
"generate_3d_tiles": false
}

오류: GPU 메모리 부족

오류 메시지:

[ERROR] CUDA out of memory. Tried to allocate 2.00 GiB

원인: GPU 메모리 부족.

해결책:

  1. GPU를 사용하는 다른 프로그램 종료
  2. resolution_level 낮추기
  3. 블록 처리 사용 (대규모 프로젝트용)

라이선스 문제

오류: 유효하지 않은 라이선스

오류 메시지:

[ERROR] Invalid license: License has expired

해결책:

  1. 라이선스 상태 확인: license_manager.exe -info
  2. 시스템 시간이 올바른지 확인
  3. 라이선스 재활성화
  4. 기술 지원팀에 연락하여 라이선스 업데이트

오류: Virbox 서비스가 실행되지 않음

오류 메시지:

[ERROR] Virbox service not running

해결책:

Windows

# 서비스 시작
net start "Virbox Service"

# 서비스 상태 확인
sc query "Virbox Service"

Linux

# 드라이버 로드
sudo modprobe virbox

# 드라이버 확인
lsmod | grep virbox

출력 결과 문제

문제: 모델에 구멍이 있음

가능한 원인:

  • 이미지 중첩 부족
  • 텍스처가 적은 영역 (수면, 유리 등)
  • 이미지 품질 불량

해결책:

  1. 이미지 중첩을 80%로 증가
  2. 경사 촬영을 사용하여 측면 뷰 보완
  3. 강한 빛이나 그림자 조건에서 촬영 피하기
  4. 흐릿한 이미지 확인 및 제거

문제: 흐릿한 텍스처

가능한 원인:

  • 원본 이미지가 흐릿함
  • 비행 고도가 너무 높음
  • 카메라 설정이 부적절함

해결책:

  1. 더 빠른 셔터 속도 사용 (≥1/1000s)
  2. 비행 고도 낮추기
  3. 더 높은 해상도의 카메라 사용
  4. 카메라 초점이 올바른지 확인

문제: 좌표 오프셋

가능한 원인:

  • 좌표계 설정이 잘못됨
  • GPS 정확도 불량
  • 제어점이 사용되지 않음

해결책:

  1. 좌표계 구성 확인:
{
"coordinate_system": {
"type": 2,
"label": "WGS 84",
"epsg_code": 4326
}
}
  1. 제어점 추가:
{
"gcp_path": "gcps.txt",
"gcp_coor_sys": {
"type": 3,
"epsg_code": 32650 // 실제와 일치하도록 확인
}
}

🛠️ 고급 진단

상세 로그 보기

로그 파일 위치: working_dir/log/log.txt

주요 정보 찾기:

# 오류 보기
grep -i "error" log.txt

# 경고 보기
grep -i "warning" log.txt

# 진행 상황 보기
grep "PROGRESS" log.txt

성능 분석

로그에서 성능 메트릭 찾기:

  • [TIMING] - 각 단계별 시간 소비
  • [MEMORY] - 메모리 사용량
  • [GPU] - GPU 사용률

중간 결과 확인

문제를 찾기 위해 중간 결과 확인:

  1. AT 결과: working_dir/AT/mvs.xml
  2. ROI 범위: working_dir/milestones/roi.json
  3. 품질 보고서: working_dir/report/report.json

📞 도움 받기

위의 해결책으로 문제를 해결할 수 없는 경우:

  1. 진단 정보 수집:

    • task_json_check 실행 출력
    • 전체 log.txt 파일
    • 구성 파일 (민감한 데이터 제거)
    • 시스템 정보 (하드웨어 구성)
  2. 문제 제출:

    • GitHub Issues: [프로젝트 저장소]
    • 기술 지원 이메일: support@mipmap.com
    • 위의 진단 정보 포함
  3. 업데이트 확인:

    • 새 버전이 있는지 확인
    • 버전 변경 로그 검토
    • 알려진 문제 목록 팔로우

지속적으로 업데이트됩니다. 목록에 없는 문제가 발생하면 기술 지원팀에 문의하세요.