리닝 쉬 · 바수 아그라왈 · 윌리엄 래니 · 토니 가르시아 · 아유시 반살
김창일 · 사무엘 로타 불로 · 로렌조 포르치 · 피터 콘치더
알야즈 보지치 · 다후아 린 · 미카엘 졸회퍼 · 크리스티안 리처드
ACM 시그라프 아시아 2023
장면 | 버전 | 캠 | 포스 | img | 2K EXR | 1K EXR | 8K+ JPEG | 4K JPEG | 2K JPEG | 1K JPEG |
---|---|---|---|---|---|---|---|---|---|---|
아파트 | v2 | 22 | 180 | 3,960 | 123GB | 31GB | 92GB | 20GB | 5GB | 1.2GB |
주방 | v2* | 19 | 318 | 6,024 | 190GB | 48GB | 142GB | 29GB | 8GB | 1.9GB |
사무실1a | v1 | 9 | 85 | 765 | 24GB | 6GB | 15GB | 3GB | 1GB | 0.2GB |
사무실1b | v2 | 22 | 71 | 1,562 | 49GB | 13GB | 35GB | 7GB | 2GB | 0.4GB |
사무실2 | v1 | 9 | 233 | 2,097 | 66GB | 17GB | 46GB | 9GB | 2GB | 0.5GB |
사무실_뷰1 | v2 | 22 | 126 | 2,772 | 87GB | 22GB | 63GB | 14GB | 4GB | 0.8GB |
사무실_뷰2 | v2 | 22 | 67 | 1,474 | 47GB | 12GB | 34GB | 7GB | 2GB | 0.5GB |
리버뷰 | v2 | 22 | 48 | 1,008 | 34GB | 8GB | 24GB | 5GB | 2GB | 0.4GB |
좌석_면적 | v1 | 9 | 168 | 1,512 | 48GB | 12GB | 36GB | 8GB | 2GB | 0.5GB |
테이블 | v1 | 9 | 134 | 1,206 | 38GB | 9GB | 26GB | 6GB | 2GB | 0.4GB |
작업장 | v1 | 9 | 700 | 6,300 | 198GB | 50GB | 123GB | 27GB | 8GB | 2.1GB |
raf_emptyroom | v2 | 22 | 365 | 8,030 | 252GB | 63GB | 213GB | 45GB | 12GB | 2.5GB |
raf_furnishedroom | v2 | 22 | 154 | 3,388 | 106GB | 27GB | 90GB | 19GB | 5GB | 1.1GB |
총 | 1,262GB | 318GB | 939GB | 199GB | 54GB | 12.5GB |
* v2는 표준 구성보다 3대의 카메라가 적습니다. 즉, 19대의 카메라만 있습니다.
2024년 4월: 다음 두 장면은 Real Acoustic Fields(CVPR 2024) 논문과 함께 제공됩니다.
데이터 세트의 모든 이미지는 Eyeful Tower v1 또는 v2(개요 표에 지정된 대로)로 촬영되었습니다. Eyeful Tower v1은 9개의 어안 카메라로 구성되는 반면 Eyeful Tower v2는 22개의 핀홀 카메라("주방"의 경우 19개)로 구성됩니다.
Eyeful Tower 데이터 세트는 AWS S3에서 호스팅되며 모든 브라우저에서 탐색하거나 wget 또는 컬과 같은 표준 소프트웨어를 사용하여 다운로드할 수 있습니다.
그러나 가장 빠르고 안정적인 다운로드를 위해서는 AWS 명령줄 인터페이스(AWS CLI)를 사용하는 것이 좋습니다. AWS CLI 설치 지침을 참조하세요.
선택 사항: 동시 다운로드 수를 10에서 100으로 늘려 다운로드 속도를 높입니다.
aws configure set default.s3.max_concurrent_requests 100
aws s3 cp --recursive --no-sign-request s3://fb-baas-f32eacb9-8abb-11eb-b2b8-4857dd089e15/EyefulTower/apartment/images-jpeg-1k/ apartment/images-jpeg-1k/
또는 " sync
"를 사용하여 기존 파일 전송을 방지하세요.
aws s3 sync --no-sign-request s3://fb-baas-f32eacb9-8abb-11eb-b2b8-4857dd089e15/EyefulTower/apartment/images-jpeg-1k/ apartment/images-jpeg-1k/
특정 카메라를 실험해보고 싶은 분들은 콜라주 영상을 먼저 시청해 보시기를 추천드립니다. 이는 활용하려는 카메라 뷰를 식별하는 데 도움이 됩니다. 예를 들어 v2 캡처 장비를 사용하는 이 아파트 장면의 경우 동일한 높이에 배치된 카메라 ID 19, 20, 21을 고려할 수 있습니다.
아파트 주방의 데이터세트용 office1a office1b office2 office_view1 office_view2 riverview Seating_area 테이블 워크샵; 하다 mkdir -p $dataset/images-jpeg-1k; aws s3 cp --recursive --no-sign-request s3://fb-baas-f32eacb9-8abb-11eb-b2b8-4857dd089e15/EyefulTower/$dataset/images-jpeg-1k/ $dataset/images-jpeg-1k /;완료
aws s3 sync --no-sign-request s3://fb-baas-f32eacb9-8abb-11eb-b2b8-4857dd089e15/EyefulTower/ .
각 장면은 다음 구조에 따라 구성됩니다.
apartment │ ├── apartment-final.pdf # Metashape reconstruction report ├── cameras.json # Camera poses in KRT format (see below) ├── cameras.xml # Camera poses exported from Metashape ├── colmap # COLMAP reconstruction exported from Metashape │ ├── images # Undistorted images (full resolution) │ ├── images_2 # Undistorted images (1/2 resolution) │ ├── images_4 # Undistorted images (1/4 resolution) │ ├── images_8 # Undistorted images (1/8 resolution) │ └── sparse # COLMAP reconstruction (for full-res images) ├── images-1k # HDR images at 1K resolution │ ├── 10 # First camera (bottom-most camera) │ │ ├── 10_DSC0001.exr # First image │ │ ├── 10_DSC0010.exr # Second image │ │ ├── [...] # More images │ │ └── 10_DSC1666.exr # Last image │ ├── 11 # Second camera │ │ ├── 11_DSC0001.exr │ │ ├── 11_DSC0010.exr │ │ ├── [...] │ │ └── 11_DSC1666.exr │ ├── [...] # More cameras │ └── 31 # Last camera (top of tower) │ ├── 31_DSC0001.exr │ ├── 31_DSC0010.exr │ ├── [...] │ └── 31_DSC1666.exr ├── images-2k [...] # HDR images at 2K resolution ├── images-jpeg [...] # Full-resolution JPEG images ├── images-jpeg-1k [...] # JPEG images at 1K resolution ├── images-jpeg-2k # JPEG images at 2K resolution │ ├── [10 ... 31] │ ├── [10 ... 31].mp4 # Camera visualization │ └── collage.mp4 # Collage of all cameras ├── images-jpeg-4k [...] # JPEG images at 4K resolution ├── mesh.jpg # Mesh texture (16K×16K) ├── mesh.mtl # Mesh material file ├── mesh.obj # Mesh in OBJ format └── splits.json # Training/testing splits
images-1k/{camera}/*.exr
및 images-2k/{camera}/*.exr
)9장 RAW 노출 브래킷에서 병합된 HDR(High Dynamic Range) 이미지.
"1K"(684×1024픽셀) 또는 "2K" 해상도(1368×2048픽셀)로 다운샘플링되었습니다.
색 공간: DCI-P3(선형)
압축되지 않은 32비트 부동 소수점 숫자를 사용하여 EXR 이미지로 저장됩니다.
모든 이미지 파일 이름에는 카메라 이름이 접두어로 붙습니다(예: 17_DSC0316.exr
.
동일한 번호로 끝나는 파일 이름을 가진 이미지가 동시에 캡처됩니다.
흐릿한 이미지나 제거된 캡처 운영자를 보여주는 이미지 등으로 인해 일부 이미지가 누락될 수 있습니다.
import os, cv2, numpy as np# OpenCV에서 OpenEXR 지원을 활성화합니다(https://github.com/opencv/opencv/issues/21326).# 이 환경 변수는 첫 번째 EXR 이미지가 열리기 전에 정의되어야 합니다.os. eviron["OPENCV_IO_ENABLE_OPENEXR"] = "1"# OpenCV.img를 사용하여 EXR 이미지 읽기 = cv2.imread("apartment/images-2k/17/17_DSC0316.exr", cv2.IMREAD_UNCHANGED)# 화이트 밸런스 스케일링 적용(참고 : OpenCV는 BGR 색상을 사용합니다).coeffs = np.array([0.726097, 1.0, 1.741252]) # apartment [RGB]img = np.einsum("ijk,k->ijk", img, coeffs[::-1] )# sRGB curve.linear_part = 12.92 * imgexp_part = 1.055 * (np.maximum(img, 0.0) ** (1 / 2.4)) - 0.055img = np.where(img <= 0.0031308, Linear_part, exp_part)# 결과 이미지를 JPEG.img = np.clip(255 * img, 0.0, 255.0).astype(np.uint8)cv2.imwrite("apartment-17_DSC0316.jpg", img, params=[cv2.IMWRITE_JPEG_QUALITY, 100]으로 씁니다. )
images-jpeg*/{camera}/*.jpg
)우리는 네 가지 해상도 수준의 JPEG 이미지를 제공합니다.
images-jpeg/
: 5784 × 8660 = 50. 메가픽셀 — 전체 원본 이미지 해상도
images-jpeg-4k/
: 2736 × 4096 = 11.2 메가픽셀
images-jpeg-2k/
: 1368 × 2048 = 2.8 메가픽셀
images-jpeg-1k/
: 684 × 1024 = 0.7 메가픽셀
JPEG 이미지는 HDR 이미지의 화이트 밸런스 및 톤 매핑 버전입니다. 자세한 내용은 위의 코드를 참조하세요.
각 장면은 다음과 같이 RGB 채널의 크기를 개별적으로 조정하는 ColorChecker에서 파생된 화이트 밸런스 설정을 사용합니다.
장면 | RGB 스케일 팩터 |
---|---|
아파트 | 0.726097, 1.0, 1.741252 |
주방 | 0.628143, 1.0, 2.212346 |
사무실1a | 0.740846, 1.0, 1.750224 |
사무실1b | 0.725535, 1.0, 1.839938 |
사무실2 | 0.707729, 1.0, 1.747833 |
사무실_뷰1 | 1.029089, 1.0, 1.145235 |
사무실_뷰2 | 0.939620, 1.0, 1.273549 |
리버뷰 | 1.077719, 1.0, 1.145992 |
좌석_면적 | 0.616093, 1.0, 2.426888 |
테이블 | 0.653298, 1.0, 2.139514 |
작업장 | 0.709929, 1.0, 1.797705 |
raf_emptyroom | 0.718776, 1.0, 1.787020 |
raf_furnishedroom | 0.721494, 1.0, 1.793423 |
cameras.json
) 이 JSON 파일은 기본 구조 {"KRT": [
가지며, 각 이미지 객체에는 다음 속성이 있습니다.
width
: 이미지 너비(픽셀 단위)(일반적으로 5784)
height
: 이미지 높이(픽셀 단위) (보통 8660)
cameraId
: 이 이미지의 파일 이름 구성 요소(예: "0/0_REN0001"
); 전체 경로를 얻으려면 다음과 같이 "{scene}/{imageFormat}/{cameraId}.{extension}"
사용하세요.
scene
: 11개의 Scene 이름 중 하나,
imageFormat
: "images-2k"
, "images-jpeg-2k"
, "images-jpeg-4k"
또는 "images-jpeg"
중 하나
extension
: 파일 확장자, JPEG의 경우 jpg
, EXR 이미지(HDR)의 경우 exr
K
: 전체 해상도 이미지를 위한 3×3 내장 카메라 매트릭스( 열 주요 )
T
: 4×4 세계-카메라 변환 행렬( 열-주요 )
distortionModel
: 사용된 렌즈 왜곡 모델:
어안 이미지용 "Fisheye"
(Eyeful v1)
핀홀 이미지용 "RadialAndTangential"
(Eyeful v2)
distortion
: OpenCV의 cv2.undistort
함수와 함께 사용하기 위한 렌즈 왜곡 계수
참고: 투영 모델은 이상적인(등거리) 어안 모델입니다.
어안 이미지(Eyeful v1): [k1, k2, k3, _, _, _, p1, p2]
핀홀 이미지(Eyeful v2): [k1, k2, p1, p2, k3]
( cv2.undistort
와 동일한 순서)
frameId
: 캡처 중 위치 인덱스(연속된 정수)
동시에 촬영된 모든 이미지는 동일한 frameId
공유합니다.
sensorId
: 이 이미지의 Metashape 센서 ID( 일명 카메라)
동일한 카메라로 촬영한 모든 이미지는 동일한 sensorId
공유합니다.
cameraMasterId
(선택 사항): 이 위치/프레임의 마스터 카메라(리그 교정에서)에 대한 Metashape 카메라 ID입니다.
동시에 촬영된 모든 이미지는 동일한 cameraMasterId
공유합니다.
sensorMasterId
(선택 사항): 리그 교정에서 마스터 카메라의 Metashape 센서 ID
마스터 카메라를 제외한 모든 카메라에 대해 동일한 값을 가져야 합니다(일반적으로 Eyeful v1의 경우 "6"
, Eyeful v2의 경우 "13"
).
세계 좌표계: 오른손잡이, y위, y=0
은 지표면, 단위는 미터입니다.
cameras.xml
)전용 파일 형식을 사용하여 Metashape에서 직접 내보낸 카메라 보정 데이터입니다.
mesh.*
)Metashape에서 내보내고 전체 해상도 JPEG 이미지에서 생성된 OBJ 형식의 텍스처 메쉬입니다.
세계 좌표계: 오른손잡이, y위, y=0
은 지표면, 단위는 미터입니다.
colmap/
)이러한 COLMAP 재구성은 기본 매개변수와 함께 Metashape 2.1.3을 사용하여 원래 재구성에서 내보내집니다.
colmap/images
아래의 이미지는 images-jpeg
의 이미지에서 이미지 중앙에 주점이 있는 핀홀 투영으로 자동으로 왜곡되지 않았습니다.
이러한 왜곡 제거는 어안 이미지를 심각하게 자르고 카메라마다 이미지 크기가 다르게 생성되는 경향이 있습니다.
colmap/images-*
의 이미지는 Mip-NeRF 360 데이터세트 형식과 유사하게 왜곡되지 않은 전체 해상도 이미지의 다운샘플링된 버전입니다.
splits.json
) 학습( "train"
) 및 테스트( "test"
)용 이미지 목록이 포함되어 있습니다.
한 카메라의 모든 이미지는 테스트를 위해 보관됩니다. Eyeful v1의 경우 카메라 5
, Eyeful v2의 경우 카메라 17
입니다.
2023년 11월 3일 – 최초 데이터세트 출시
2024년 1월 18일 – 소규모 실험을 위해 "1K" 해상도(684×1024픽셀) EXR 및 JPEG를 추가했습니다.
2024년 4월 19일 – RAF(Real Acoustic Fields) 데이터세트에서 두 개의 방인 raf_emptyroom
및 raf_furnishedroom
추가했습니다.
2024년 10월 9일 – Mip-NeRF 360 형식의 왜곡되지 않은 이미지로 내보낸 COLMAP 재구성을 추가했습니다(예: gsplat과 호환 가능).
이 데이터세트의 데이터나 이 저장소에 공개된 코드를 사용하는 경우 VR-NeRF 논문을 인용해 주세요.
@InProceedings{VRNeRF, 저자 = {Linning Xu 및 Vasu Agrawal 및 William Laney 및 Tony Garcia 및 Aayush Bansal 및 Changil Kim 및 Rota Bulò, Samuel 및 Lorenzo Porzi 및 Peter Kontschieder 및 Aljaž Božič 및 Dahua Lin 및 Michael Zollhöfer 및 Christian Richardt}, 제목 = {{VR-NeRF}: High-Fidelity Virtualized Walkable Spaces}, 책제목 = {SIGGRAPH Asia Conference Proceedings}, 연도 = {2023}, doi = {10.1145/3610548.3618139}, url = {https://vr-nerf .github.io}, }
LICENSE 파일에 있는 Creative Commons Attribution-NonCommercial(CC BY-NC) 4.0.
[이용약관] [개인정보처리방침]