Computer Vision 28

Waymo 데이터셋을 직접 전처리해서 street gaussian학습/평가해보기

이전글에서는 street gaussian 저자들이 이미 모든 전처리를 다 해놓은 데이터셋을 받아 학습을 돌려봤었다. Street-gaussian 학습환경 세팅 & 학습시켜보기[CV 논문] Street Gaussians: Modeling Dynamic Urban Scenes with Gaussian Splatting아래 글에서 이 블로그에서 리뷰한 논문들의 흐름과 분야별 분류를 한 눈에 볼 수 있다. 읽은 논문들 정리[목차]지속적으로 업데이april2901.tistory.com 이번에는 raw한 웨이모 데이터셋 그 자체를 받아 직접 처리를 하여 돌려보자. 기본적으로 이전 글의 내용에서 추가적으로 이어진다고 생각하면 좋다.(환경, 설치 패키지 등)웨이모 데이터셋 다운로드웨이모 데이터셋은 google clou..

[CV 논문] StreetSurf: Extending Multi-view Implicit Surface Reconstruction to Street Views

아래 글에서 이 블로그에서 리뷰한 논문들의 흐름과 분야별 분류를 한 눈에 볼 수 있다. 읽은 논문들 정리[목차]지속적으로 업데이트 중, 번호는 모델발전 순서가 아닌 읽은 순서에 따라 정렬.1. Computer Vision 분야 논문Classification 모델들의 발전Detection 모델들의 발전Segmentation3D 처리2. Natural Language Processapril2901.tistory.com 이번 논문은 StreetSurf라는 논문이다. 자율주행 데이터셋들을 보면 NeRF, 3DGS같은 기술과는 다르게 물체를 카메라가 한 바퀴 빙 둘러 모든 방면의 사진을 찍는 것이 아니다.차가 움직이는 그 궤적에서 찍기 때문에 관측 각도가 제한적이다.또 NeRF, 3DGS는 물체나 장면 하나에 ..

[CV 논문] UniSim: A Neural Closed-Loop Sensor Simulator

아래 글에서 이 블로그에서 리뷰한 논문들의 흐름과 분야별 분류를 한 눈에 볼 수 있다. 읽은 논문들 정리[목차]지속적으로 업데이트 중, 번호는 모델발전 순서가 아닌 읽은 순서에 따라 정렬.1. Computer Vision 분야 논문Classification 모델들의 발전Detection 모델들의 발전Segmentation3D 처리2. Natural Language Processapril2901.tistory.com 이번 논문은 UniSim이라고 불리는 모델에 대한 설명이다.자율주행 학습에서 시뮬레이션을 하는데 유용하게 사용될 수 있다.자율주행 모델에게 어떤 주행 영상을 주고 액션을 취하라고 하는 상황을 생각해보자.주어진 영상 속의 어느 지점에서 차가 영상에서 나오는 행동과 다른 행동을 했다면 어떻게 될..

[3DGS 구현] 9. train 코드 작성, 학습 결과

'프로젝트, 연구/3DGS 구현' 카테고리의 글 목록한양대학교 컴퓨터소프트웨어학부 일상 블로그 : https://blog.naver.com/april2901april2901.tistory.com 이제 마지막 코드인 train.py를 만들어보자.os.environ["CUDA_VISIBLE_DEVICES"] = "2"이 코드는 개인별로 맞게 수정해야한다.나의 경우 그래픽카드가 3개가 있어 그중 어떤 것을 사용할지 지정했다. resol_scale, num_iterations등의 하이퍼파라미터를 원하는대로 조정하면 된다.나는 resol_scale은 메모리를 고려하여 4로, num_iterations는 원본 논문을 따라 30000번으로 정했다.30001로 코드가 되어있는 것은 30000일 때의 png, ply파일..

[3DGS 구현] 8. Densification 및 기타 util코드

utils.py에 함수 추가학습을 위한 코드를 짜보자.먼저 손실함수를 보면 SSIM이라는 지표가 있다.이를 구하는 식은 아래와 같다.두 이미지의 평균,분산을 골고루 이용해서 유사성을 평가하는 지표이다.따라서 utils.py에 이를 코드로 구현해 추가하자.def ssim(img1, img2, window_size=11, size_average=True): # 0~1 사이의 텐서 channel = img1.size(-3) window = torch.ones((channel, 1, window_size, window_size), device=img1.device) / (window_size**2) mu1 = F.conv2d(img1, window, padding=window_siz..

[3DGS 구현] 7. Renderer 만들기

3DGS논문을 읽었다면 타일을 사용하는 rasterization에 대해 기억날 것이다.리마인드를 위해 3DGS 논문 리뷰 글에서 사진을 하나 가져왔다.이 때 전체적인 계산의 흐름은 다음과 같았다. 1. 각 타일의 범위에 포함되는 가우시안을 찾기2. 가우시안을 앞에서부터 순서대로 정렬하기3. 픽셀별로 알파블렌딩을 통해 최종 픽셀 값 구하기 이를 해주는 것이 rasterizer인데, 이는 torch로 구현을 할 수 없다.왜냐하면 (1600,1200) 크기의 이미지를 고려했을 때 7500개의 타일, 192만개의 픽셀이 나오게 된다.이 각 픽셀마다 알파블렌딩을 통해 픽셀의 값을 구해야하는데 픽셀 독립적인 계산이므로 단순히 torch로 구현이 안된다.이는 계산을 CUDA커널에 직접 커스텀해 코딩을 해야한다.논문의..

[3DGS 구현] 6. 이미지 전처리 및 GPU로딩

이전 글[3DGS 구현] 5. gaussian 초기화 및 SIBR뷰어를 통한 시각화 [3DGS 구현] 5. gaussian 초기화 및 SIBR뷰어를 통한 시각화[CV 논문] 3D Gaussian Splatting for Real-Time Radiance Field Rendering [3DGS 구현] 1. 환경 세팅[3DGS 구현] 2. Kaggle에서 데이터셋 다운받기[3DGS 구현] 3. COLMAP의 출력 바이너리 파일의 구조파악, 파싱[3DGS 구현] 4. 가april2901.tistory.com 학습을 진행할 때 원본과 얼마나 다른지를 계산해서 손실을 구해야한다.이때 필요한 것은 원본이미지와, 이 원본 이미지를 찍은 카메라의 정보들, 현재 3D모델을 이 카메라 화면에 투영하는 행렬이다. 먼저 몇가..

[3DGS 구현] 5. gaussian 초기화 및 SIBR뷰어를 통한 시각화

[CV 논문] 3D Gaussian Splatting for Real-Time Radiance Field Rendering [3DGS 구현] 1. 환경 세팅[3DGS 구현] 2. Kaggle에서 데이터셋 다운받기[3DGS 구현] 3. COLMAP의 출력 바이너리 파일의 구조파악, 파싱[3DGS 구현] 4. 가우시안의 초기 scale계산 및 카메라 데이터 json 변환 3DGS 학습시켜보기 이제 가우시안 그 자체를 만들기 위한 준비가 모두 되었다. 이제 직접 class를 만들어보자. 먼저 클래스 초기화이다. 가우시안한테는 크게 5가지의 속성이 필요하다.1. 중심점의 3D좌표 (3차원)2. 색상값 RGB (1x3차원) ← 그냥 3차원으로 생각하면 되는데 RGB를 한 묶음처럼 생각하겠다는 의미이다.3. SH함..

[CV 논문] Mip-NeRF: A Multiscale Representation for Anti-Aliasing Neural Radiance Fields

아래 글에서 이 블로그에서 리뷰한 논문들의 흐름과 분야별 분류를 한 눈에 볼 수 있다. 읽은 논문들 정리[목차]지속적으로 업데이트 중, 번호는 모델발전 순서가 아닌 읽은 순서에 따라 정렬.1. Computer Vision 분야 논문Classification 모델들의 발전Detection 모델들의 발전Segmentation3D 처리2. Natural Language Processapril2901.tistory.com 이전에 알아봤었던 NeRF의 단점을 보완하기 위해 나온 논문이다.그럼 NeRF의 단점이 뭔지 간략히 알아보자.NeRF는 선(ray)를 쏴서 렌더링을 한다.학습된 거리에서는 좋지만 만약 멀리있는 곳의 이미지를 그려야할 때는 문제가 발생할 수 있다.그 중 하나가 앨리어싱(aliasing)이다.한..

[3DGS 구현] 2. Kaggle에서 데이터셋 다운받기

↓ ↓ 이전 글 ↓ ↓ [PyTorch] 3DGS 구현 1 - 환경 세팅이전 글 중 3DGS라는 3D분야의 혁신적인 논문을 리뷰한 글이 있다.2026.02.24 - [AI/컴퓨터비전(CV)] - [CV 논문] 3D Gaussian Splatting for Real-Time Radiance Field Rendering [CV 논문] 3D Gaussian Splatting for Real-Time Radiance Fapril2901.tistory.com ↓ ↓ 3DGS 논문 ↓ ↓ [CV 논문] 3D Gaussian Splatting for Real-Time Radiance Field Rendering아래 글에서 이 블로그에서 리뷰한 논문들의 흐름과 분야별 분류를 한 눈에 볼 수 있다.읽은 논문들 정리..