Skip to content

khu-suyong/cv-final

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

19 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Computer Vision Final Project

파노라마를 생성합니다.

  • [X]. 이미지 전처리, 노이즈 제거 (포함 시 추가 점수)
  • [X]. 코너 포인트 찾기 (필수 구현)
  • [X]. Point Matching (Correspondence) (필수 구현)
  • [X]. RANSAC (포함 시 추가 점수)
  • [X]. Homography 계산 (필수 구현)
  • [X]. Stitching (필수 구현) (동작 불안정)

    동작 불안정 원인은 찾았지만 해결하지 못했습니다. 좌우 끝 이미지들이 왜곡되면서 이미지 크기가 엄청 커지는 문제가 발생하고, 그로 인해 OOM이 발생합니다. 중앙 이미지 기준으로 stitching하는것을 시도했으나, 여전히 좌우 이미지가 커지는 문제가 발생했습니다. flatten을 시도했지만 이또한 실패하였습니다.

  • [ ]. Group Adjustment (포함 시 추가 점수)
  • [ ]. Tone Mapping (포함 시 추가 점수)

폴더 구조

  • src/: 소스 코드
  • docs/: 문서 및 결과 이미지
    • HISTORY.md: 작업 히스토리
    • sampleset1/: 샘플 이미지 세트 1 결과
      • corner/: 코너 검출 결과 이미지
      • matching/: 각 특징점(코너) 매칭 결과 이미지 셋
      • homography/: homography 적용 결과 이미지 셋
      • result_1to3.png: 샘플 이미지 세트 1의 stitching 결과 (1 ~ 3번째 장까지만 성공하여 따로 표기함)
      • variant*.png: 실험적인 코드로 stitching 한 결과들 or 실패한 결과들
    • sampleset3/: 샘플 이미지 세트 2 결과
      • corner/: 코너 검출 결과 이미지
      • matching/: 각 특징점(코너) 매칭 결과 이미지 셋
      • homography/: homography 적용 결과 이미지 셋
      • result_1to4.png: 샘플 이미지 세트 3의 stitching 결과 (1 ~ 4번째 장까지만 성공하여 따로 표기함)
      • variant*.png: 실험적인 코드로 stitching 한 결과들 or 실패한 결과들
  • index.ts: 메인 실행 파일

matching/ 폴더에 비주얼라이징된 매칭 코너들은 RANSAC 이전 결과 입니다. RANSAC 이후 결과는 따로 없지만 homography 부분에 RANSAC이 자동으로 적용되어 있습니다.

작업 내용

작업 히스토리 보기

  • Sampleset 1 (일부만 붙음!!!) Sampleset1 1~3장

더 많은 사진은 여기에서 확인할 수 있습니다.

  • Sampleset 2 (일부만 붙음!!!) Sampleset3 1~4장

더 많은 사진은 여기에서 확인할 수 있습니다.

설치 및 실행 방법

  1. nvm 설치 해당 프로젝트는 node v18.20.0에서 동작을 확인하였습니다. 정확한 버전을 설치하기 위해 nvm 설치를 권장드립니다.
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.40.3/install.sh | bash

or

wget -qO- https://raw.githubusercontent.com/nvm-sh/nvm/v0.40.3/install.sh | bash
  1. Node.js 설치
nvm install v18.20.0
nvm use v18.20.0
  1. pnpm 설치
npm install -g pnpm
  1. 이 프로젝트 의존성 설치
pnpm install
  1. 실행
pnpm run start

입력 이미지들은 ./(현재 프로젝트의 루트 폴더)에 위치해야 하며, 출력 이미지도 마찬가지로 ./ 폴더에 저장됩니다. 입력 이미지 경로와 출력 이미지 경로는 index.ts 파일에서 수정할 수 있습니다.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors