Luigi Piccinelli
init demo
1ea89dd
import json
import os
from typing import Any
import h5py
import numpy as np
import torch
from unik3d.datasets.image_dataset import ImageDataset
from unik3d.datasets.pipelines import AnnotationMask, KittiCrop
from unik3d.datasets.sequence_dataset import SequenceDataset
from unik3d.datasets.utils import DatasetFromList
from unik3d.utils import identity
class DTURMVD(SequenceDataset):
min_depth = 0.05
max_depth = 3.0
depth_scale = 1000.0
default_fps = 6
test_split = "test.txt"
train_split = "test.txt"
sequences_file = "sequences.json"
hdf5_paths = ["dtu_rmvd.hdf5"]
def __init__(
self,
image_shape,
split_file,
test_mode,
crop=None,
augmentations_db={},
normalize=True,
resize_method="hard",
mini: float = 1.0,
num_frames: int = 1,
benchmark: bool = False,
decode_fields: list[str] = ["image", "depth"],
inplace_fields: list[str] = ["K", "cam2w"],
**kwargs,
):
super().__init__(
image_shape=image_shape,
split_file=split_file,
test_mode=test_mode,
benchmark=benchmark,
normalize=normalize,
augmentations_db=augmentations_db,
resize_method=resize_method,
mini=mini,
num_frames=num_frames,
decode_fields=decode_fields,
inplace_fields=inplace_fields,
**kwargs,
)
def pre_pipeline(self, results):
results = super().pre_pipeline(results)
results["dense"] = [True] * self.num_frames * self.num_copies
results["si"] = [True] * self.num_frames * self.num_copies
results["quality"] = [1] * self.num_frames * self.num_copies
return results