generate_gsa_results.py

About_work·2024년 8월 7일
0

global mapper

목록 보기
32/37

-1. 간단 요약

1.1. 개요

  • SAM을 돌린 mask 결과의 bounding box를 가지고,
    • CLIP에 넣어서 feature 뽑음
  • 사진 1장 당 소요 시간
    • vit_b 기준: 2.74초 걸림
    • 질문: batch로 처리할 순 없으려나?
  • 사진마다 이 과정을 반복하고, 이미지로 저장함. (동영상 저장 가능)

1.2. [ali] rerun_realtime_mapping.py

  • YOLO-world를 돌린 결과의 bounding box를 가지고 SAM을 돌려서 mask를 얻은 후
    • CLIP에 넣어서 feature 뽑음

0. README.md

4.2. Extract 2D (Detection) Segmentation and per-resgion features

  • 먼저, (탐지) 분할 결과와 각 영역의 CLIP 특징을 추출합니다.
  • 아래 두 가지 옵션을 제공합니다.
      1. 첫 번째 옵션(ConceptGraphs)은 SAM을 "segment all" 모드로 사용하여, 클래스에 구애받지 않는 마스크를 추출
      1. 두 번째 옵션(ConceptGraphs-Detect)은 tagging modeldetection model 을 사용하여
      • 먼저 클래스 인식 경계 상자를 추출한 다음,
      • 이를 SAM에 프롬프트로 사용하여 각 객체를 분할

4.2.1. 설정

SCENE_NAME=room0

4.2.2. ConceptGraphs (open-vocab 탐지기 없이)

python scripts/generate_gsa_results.py \
    --dataset_root $REPLICA_ROOT \
    --dataset_config $REPLICA_CONFIG_PATH \
    --scene_id $SCENE_NAME \
    --class_set none \
    --stride 5

4.2.3. ConceptGraphs-Detect

CLASS_SET=ram
python scripts/generate_gsa_results.py \
    --dataset_root $REPLICA_ROOT \
    --dataset_config $REPLICA_CONFIG_PATH \
    --scene_id $SCENE_NAME \
    --class_set $CLASS_SET \
    --box_threshold 0.2 \
    --text_threshold 0.2 \
    --stride 5 \
    --add_bg_classes \
    --accumu_classes \
    --exp_suffix withbg_allclasses
  • 위 명령어들은 탐지 및 분할 결과를 $REPLICA_ROOT/$SCENE_NAME/에 저장
  • 탐지 및 분할의 시각화 결과는 각각
    • $REPLICA_ROOT/$SCENE_NAME/gsa_vis_none
    • $REPLICA_ROOT/$SCENE_NAME/gsa_vis_ram_withbg_allclasses에서 볼 수 있음
  • There's a wrong phrase happen 메시지는 무시해도 됩니다.
    • 이는 후처리 중 잘못된 토큰 병합으로 발생하는 것으로, 향후 수정될 예정입니다.
    • 현재는 무작위 레이블을 할당합니다.

1. generate_gsa_results.py

profile
새로운 것이 들어오면 이미 있는 것과 충돌을 시도하라.

0개의 댓글