1. Ubuntu에서 docker 설치 (가상환경 밖)
  2. python 3.9 의 가상환경 설치

1. Docker, Conda 준비

2. Docker와 Conda를 함께 활용한 MIA 실행 방법

A. Docker를 이용한 MIA 데이터 엔진 실행 (FPV 및 BEV 생성)

  1. MIA Docker 이미지 다운로드

    터미널에서 다음 명령어를 입력

    docker pull theairlab/mia:latest
    
  2. 프로젝트 코드 준비

    Git을 통해 MIA 프로젝트를 클론

    git clone <https://github.com/MapItAnywhere/MapItAnywhere.git>
    cd MapItAnywhere
    
  3. Docker 컨테이너 실행

    현재 프로젝트 디렉토리를 Docker 컨테이너와 연결하기 위해 아래 명령어를 사용

    docker run -v $(pwd):/home/MapItAnywhere --network=host -it theairlab/mia:latest
    

    → 이렇게 하면 컨테이너 내부에서 프로젝트 코드에 접근할 수 있음

  4. FPV 이미지 다운로드 실행

    컨테이너 안에서 Mapillary API 토큰을 준비한 후, 아래 명령어를 실행

    cd /home/MapItAnywhere
    python3.9 -m mia.fpv.get_fpv --cfg mia/conf/example.yaml --token <MLY_TOKEN>
    

    <MLY_TOKEN>은 Mapillary에서 발급받은 API 토큰으로 대체

  5. BEV 지도 생성 실행

    FPV 데이터가 준비되면, BEV 생성을 위해 설정 파일을 수정 후 아래 명령어를 실행

    python3.9 -m mia.bev.get_bev --cfg mia/conf/my_config.yaml
    

    my_config.yaml 파일은 필요한 지역 및 옵션으로 수정

B. Conda 환경에서 지도 예측 및 모델 학습 실행

  1. Conda 환경 활성화

    Docker에서 필요한 데이터가 생성된 후, WSL 터미널에서 Conda 환경을 활성화

    conda activate mia_env
    
  2. 추가 패키지 설치

    지도 예측이나 모델 학습을 위해 필요한 패키지가 있다면 아래 명령어로 설치

    pip install -r mapper/requirements.txt
    
  3. 지도 예측 실행

    이미 학습된 모델을 사용하여 지도 예측을 실행하려면 아래와 같이 명령어를 실행

    python -m mapper.mapper data.split=<PATH_TO_SPLIT_FILE> data.data_dir=<PATH_TO_MIA_DATASET> training.checkpoint=<TRAINED_WEIGHTS> training.eval=true
    
    

    → 각 경로와 옵션은 환경에 맞게 수정

  4. 모델 학습 및 추가 실험

    Conda 환경에서 새로운 데이터를 이용한 학습이나 추가 실험도 진행 가능

    python -m mapper.mapper data.split=<PATH_TO_SPLIT_FILE> data.data_dir=<PATH_TO_MIA_DATASET>