Notice
Recent Posts
Recent Comments
Link
«   2024/11   »
1 2
3 4 5 6 7 8 9
10 11 12 13 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30
Tags
more
Archives
Today
Total
관리 메뉴

Trikang

[3D Gaussian Splatting 코드 분석] train.py - Scene 로딩 본문

공부/ML

[3D Gaussian Splatting 코드 분석] train.py - Scene 로딩

Trikang 2024. 4. 8. 13:41

train.py의 main 함수 전체 구조

if __name__ == "__main__":
    # Set up command line argument parser
    parser = ArgumentParser(description="Training script parameters")
    lp = ModelParams(parser)
    op = OptimizationParams(parser)
    pp = PipelineParams(parser)
    parser.add_argument('--ip', type=str, default="127.0.0.1")
    parser.add_argument('--port', type=int, default=6009)
    parser.add_argument('--debug_from', type=int, default=-1)
    parser.add_argument('--detect_anomaly', action='store_true', default=False)
    parser.add_argument("--test_iterations", nargs="+", type=int, default=[7_000, 30_000])
    parser.add_argument("--save_iterations", nargs="+", type=int, default=[7_000, 30_000])
    parser.add_argument("--quiet", action="store_true")
    parser.add_argument("--checkpoint_iterations", nargs="+", type=int, default=[])
    parser.add_argument("--start_checkpoint", type=str, default = None)
    args = parser.parse_args(sys.argv[1:])
    args.save_iterations.append(args.iterations)
    
    print("Optimizing " + args.model_path)

    # Initialize system state (RNG)
    safe_state(args.quiet)

    # Start GUI server, configure and run training
    network_gui.init(args.ip, args.port)
    torch.autograd.set_detect_anomaly(args.detect_anomaly)
    training(lp.extract(args), op.extract(args), pp.extract(args), args.test_iterations, args.save_iterations, args.checkpoint_iterations, args.start_checkpoint, args.debug_from)

    # All done
    print("\nTraining complete.")

 


 

main 함수 실행 시, ArgumentParser, ModelParams, OptimizationParams, PipelineParams 네 개의 인자를 받아옴

parser = ArgumentParser(description="Training script parameters")
lp = ModelParams(parser)
op = OptimizationParams(parser)
pp = PipelineParams(parser)
class ModelParams(ParamGroup): 
    def __init__(self, parser, sentinel=False):
        self.sh_degree = 3
        self._source_path = ""
        self._model_path = ""
        self._images = "images"
        self._resolution = -1
        self._white_background = False
        self.data_device = "cuda"
        self.eval = False
        super().__init__(parser, "Loading Parameters", sentinel)
class OptimizationParams(ParamGroup):
    def __init__(self, parser):
        self.iterations = 30_000
        self.position_lr_init = 0.00016
        self.position_lr_final = 0.0000016
        self.position_lr_delay_mult = 0.01
        self.position_lr_max_steps = 30_000
        self.feature_lr = 0.0025
        self.opacity_lr = 0.05
        self.scaling_lr = 0.005
        self.rotation_lr = 0.001
        self.percent_dense = 0.01
        self.lambda_dssim = 0.2
        self.densification_interval = 100
        self.opacity_reset_interval = 3000
        self.densify_from_iter = 500
        self.densify_until_iter = 15_000
        self.densify_grad_threshold = 0.0002
        self.random_background = False
        super().__init__(parser, "Optimization Parameters")
class PipelineParams(ParamGroup):
    def __init__(self, parser):
        self.convert_SHs_python = False
        self.compute_cov3D_python = False
        self.debug = False
        super().__init__(parser, "Pipeline Parameters")

 

그 이후에 GaussianModel을 로드하게 되는데, 로드 당시 GaussianModel의 멤버 변수의 상태를 확인해보면 아래와 같음.

'active_sh_degree': 0, 
'max_sh_degree': 3, 
'_xyz': tensor([]), 
'_features_dc': tensor([]), 
'_features_rest': tensor([]), 
'_scaling': tensor([]), 
'_rotation': tensor([]), 
'_opacity': tensor([]), 
'max_radii2D': tensor([]), 
'xyz_gradient_accum': tensor([]), 
'denom': tensor([]), 
'optimizer': None, 
'percent_dense': 0, 
'spatial_lr_scale': 0, 
'scaling_activation': <built-in method exp of type object at 0x7f75733bb140>, 
'scaling_inverse_activation': <built-in method log of type object at 0x7f75733bb140>, 
'covariance_activation': <function GaussianModel.setup_functions.<locals>.build_covariance_from_scaling_rotation at 0x7f751c3fac20>, 
'opacity_activation': <built-in method sigmoid of type object at 0x7f75733bb140>, 
'inverse_opacity_activation': <function inverse_sigmoid at 0x7f751ce820e0>, 
'rotation_activation': <function normalize at 0x7f751e1ec170>

 

그 이후에 Scene 인스턴스를 생성하는데, 이때 아래와 같은 로그가 발생

scene = Scene(dataset, gaussians)

#####
Reading camera 1/77intr.model: PINHOLE [07/04 10:57:51]
Reading camera 2/77intr.model: PINHOLE [07/04 10:57:51]
Reading camera 3/77intr.model: PINHOLE [07/04 10:57:51]
Reading camera 4/77intr.model: PINHOLE [07/04 10:57:51]
Reading camera 5/77intr.model: PINHOLE [07/04 10:57:51]
Reading camera 6/77intr.model: PINHOLE [07/04 10:57:51]
Reading camera 7/77intr.model: PINHOLE [07/04 10:57:51]
Reading camera 8/77intr.model: PINHOLE [07/04 10:57:51]
Reading camera 9/77intr.model: PINHOLE [07/04 10:57:51]
Reading camera 10/77intr.model: PINHOLE [07/04 10:57:51]
Reading camera 11/77intr.model: PINHOLE [07/04 10:57:51]
Reading camera 12/77intr.model: PINHOLE [07/04 10:57:51]
Reading camera 13/77intr.model: PINHOLE [07/04 10:57:51]
Reading camera 14/77intr.model: PINHOLE [07/04 10:57:51]
Reading camera 15/77intr.model: PINHOLE [07/04 10:57:51]
Reading camera 16/77intr.model: PINHOLE [07/04 10:57:51]
Reading camera 17/77intr.model: PINHOLE [07/04 10:57:51]
Reading camera 18/77intr.model: PINHOLE [07/04 10:57:51]
Reading camera 19/77intr.model: PINHOLE [07/04 10:57:51]
Reading camera 20/77intr.model: PINHOLE [07/04 10:57:51]
Reading camera 21/77intr.model: PINHOLE [07/04 10:57:51]
Reading camera 22/77intr.model: PINHOLE [07/04 10:57:51]
Reading camera 23/77intr.model: PINHOLE [07/04 10:57:51]
Reading camera 24/77intr.model: PINHOLE [07/04 10:57:51]
Reading camera 25/77intr.model: PINHOLE [07/04 10:57:51]
Reading camera 26/77intr.model: PINHOLE [07/04 10:57:51]
Reading camera 27/77intr.model: PINHOLE [07/04 10:57:51]
Reading camera 28/77intr.model: PINHOLE [07/04 10:57:51]
Reading camera 29/77intr.model: PINHOLE [07/04 10:57:51]
Reading camera 30/77intr.model: PINHOLE [07/04 10:57:51]
Reading camera 31/77intr.model: PINHOLE [07/04 10:57:51]
Reading camera 32/77intr.model: PINHOLE [07/04 10:57:51]
Reading camera 33/77intr.model: PINHOLE [07/04 10:57:51]
Reading camera 34/77intr.model: PINHOLE [07/04 10:57:51]
Reading camera 35/77intr.model: PINHOLE [07/04 10:57:51]
Reading camera 36/77intr.model: PINHOLE [07/04 10:57:51]
Reading camera 37/77intr.model: PINHOLE [07/04 10:57:51]
Reading camera 38/77intr.model: PINHOLE [07/04 10:57:51]
Reading camera 39/77intr.model: PINHOLE [07/04 10:57:51]
Reading camera 40/77intr.model: PINHOLE [07/04 10:57:51]
Reading camera 41/77intr.model: PINHOLE [07/04 10:57:51]
Reading camera 42/77intr.model: PINHOLE [07/04 10:57:51]
Reading camera 43/77intr.model: PINHOLE [07/04 10:57:51]
Reading camera 44/77intr.model: PINHOLE [07/04 10:57:51]
Reading camera 45/77intr.model: PINHOLE [07/04 10:57:51]
Reading camera 46/77intr.model: PINHOLE [07/04 10:57:51]
Reading camera 47/77intr.model: PINHOLE [07/04 10:57:51]
Reading camera 48/77intr.model: PINHOLE [07/04 10:57:51]
Reading camera 49/77intr.model: PINHOLE [07/04 10:57:51]
Reading camera 50/77intr.model: PINHOLE [07/04 10:57:51]
Reading camera 51/77intr.model: PINHOLE [07/04 10:57:51]
Reading camera 52/77intr.model: PINHOLE [07/04 10:57:51]
Reading camera 53/77intr.model: PINHOLE [07/04 10:57:51]
Reading camera 54/77intr.model: PINHOLE [07/04 10:57:51]
Reading camera 55/77intr.model: PINHOLE [07/04 10:57:51]
Reading camera 56/77intr.model: PINHOLE [07/04 10:57:51]
Reading camera 57/77intr.model: PINHOLE [07/04 10:57:51]
Reading camera 58/77intr.model: PINHOLE [07/04 10:57:51]
Reading camera 59/77intr.model: PINHOLE [07/04 10:57:51]
Reading camera 60/77intr.model: PINHOLE [07/04 10:57:51]
Reading camera 61/77intr.model: PINHOLE [07/04 10:57:51]
Reading camera 62/77intr.model: PINHOLE [07/04 10:57:51]
Reading camera 63/77intr.model: PINHOLE [07/04 10:57:51]
Reading camera 64/77intr.model: PINHOLE [07/04 10:57:51]
Reading camera 65/77intr.model: PINHOLE [07/04 10:57:51]
Reading camera 66/77intr.model: PINHOLE [07/04 10:57:51]
Reading camera 67/77intr.model: PINHOLE [07/04 10:57:51]
Reading camera 68/77intr.model: PINHOLE [07/04 10:57:51]
Reading camera 69/77intr.model: PINHOLE [07/04 10:57:51]
Reading camera 70/77intr.model: PINHOLE [07/04 10:57:51]
Reading camera 71/77intr.model: PINHOLE [07/04 10:57:51]
Reading camera 72/77intr.model: PINHOLE [07/04 10:57:51]
Reading camera 73/77intr.model: PINHOLE [07/04 10:57:51]
Reading camera 74/77intr.model: PINHOLE [07/04 10:57:51]
Reading camera 75/77intr.model: PINHOLE [07/04 10:57:51]
Reading camera 76/77intr.model: PINHOLE [07/04 10:57:51]
Reading camera 77/77intr.model: PINHOLE [07/04 10:57:51]
 [07/04 10:57:51]
Loading Training Cameras [07/04 10:57:51]
Loading Test Cameras [07/04 10:58:13]
Number of points at initialisation :  41332 [07/04 10:58:16]
{'model_path': 'output/odm_aukerman', 'loaded_iter': None, 'gaussians': <scene.gaussian_model.GaussianModel object at 0x7f70a3bff7d0>, 'train_cameras': {1.0: [Camera(), Camera(), Camera(), Camera(), Camera(), Camera(), Camera(), Camera(), Camera(), Camera(), Camera(), Camera(), Camera(), Camera(), Camera(), Camera(), Camera(), Camera(), Camera(), Camera(), Camera(), Camera(), Camera(), Camera(), Camera(), Camera(), Camera(), Camera(), Camera(), Camera(), Camera(), Camera(), Camera(), Camera(), Camera(), Camera(), Camera(), Camera(), Camera(), Camera(), Camera(), Camera(), Camera(), Camera(), Camera(), Camera(), Camera(), Camera(), Camera(), Camera(), Camera(), Camera(), Camera(), Camera(), Camera(), Camera(), Camera(), Camera(), Camera(), Camera(), Camera(), Camera(), Camera(), Camera(), Camera(), Camera(), Camera()]}, 'test_cameras': {1.0: [Camera(), Camera(), Camera(), Camera(), Camera(), Camera(), Camera(), Camera(), Camera(), Camera()]}, 'cameras_extent': 7.581940841674805} [07/04 10:58:16]

 

self.loaded_iter에는 아래와 같이 None 값이 담긴다.

if load_iteration:
    if load_iteration == -1:
        self.loaded_iter = searchForMaxIteration(os.path.join(self.model_path, "point_cloud"))
    else:
        self.loaded_iter = load_iteration
    print("Loading trained model at iteration {}".format(self.loaded_iter))

######################################################
self.loaded_iter [07/04 11:15:26]
None [07/04 11:15:26]

 

scene_info를 저장한 이후의 코드에는 아래와 같은 값이 출력된다.

scene_info는 scene.dataset_readers.SceneInfo 타입의 인스턴스이다.

self.train_cameras = {}
self.test_cameras = {}

if os.path.exists(os.path.join(args.source_path, "sparse")):
    scene_info = sceneLoadTypeCallbacks["Colmap"](args.source_path, args.images, args.eval)
elif os.path.exists(os.path.join(args.source_path, "transforms_train.json")):
    print("Found transforms_train.json file, assuming Blender data set!")
    scene_info = sceneLoadTypeCallbacks["Blender"](args.source_path, args.white_background, args.eval)
else:
    assert False, "Could not recognize scene type!"

print('scene_info')
print(scene_info)
################################################
SceneInfo(point_cloud=BasicPointCloud(points=array([[-3.1786976,  1.1268233,  4.1232734],
       [-1.3131675,  0.859263 ,  4.158581 ],
       [-1.0692643,  1.0911088,  4.0958204],
       ...,
       [ 1.2832712, -1.4758004,  4.7903233],
       [-3.0944202, -1.4772788,  4.8030815],
       [-3.0393033, -2.4001055,  5.0467534]], dtype=float32), colors=array([[0.59607843, 0.62745098, 0.36470588],
       [0.71764706, 0.74117647, 0.50588235],
       [0.61960784, 0.64705882, 0.38431373],
       ...,
       [0.60784314, 0.61176471, 0.43921569],
       [0.42745098, 0.54901961, 0.23529412],
       [0.        , 0.        , 0.        ]]), normals=array([[0., 0., 0.],
       [0., 0., 0.],
       [0., 0., 0.],
       ...,
       [0., 0., 0.],
       [0., 0., 0.],
       [0., 0., 0.]], dtype=float32)), train_cameras=[CameraInfo(uid=1, R=array([[ 0.32542384, -0.9333629 , -0.15143654],
       [ 0.94505887,  0.31579403,  0.08448592],
       [-0.03103327, -0.17061017,  0.98484979]]), T=array([-5.62433605,  0.23668308,  1.21057039]), FovY=0.9384727420170449, FovX=1.1887788848677407, image=<PIL.JpegImagePlugin.JpegImageFile image mode=RGB size=4863x3651 at 0x7FA2C076E150>, image_path='/home/user/3D_survey/models/gaussian-splatting/data/odm_aukerman/images/DSC00230.JPG', image_name='DSC00230', width=4863, height=3651), CameraInfo(uid=1, R=array([[ 0.98462343, -0.11413734, -0.13224739],
       [ 0.14339416,  0.96045088,  0.23868854],
       [ 0.09977384, -0.25398184,  0.96204907]]), T=array([-4.18595828, -1.42684032,  0.5656123 ]), FovY=0.9384727420170449, FovX=1.1887788848677407, image=<PIL.JpegImagePlugin.JpegImageFile image mode=RGB size=4863x3651 at 0x7FA2C0784F90>, image_path='/home/user/3D_survey/models/gaussian-splatting/data/odm_aukerman/images/DSC00232.JPG', image_name='DSC00232', width=4863, height=3651), CameraInfo(uid=1, R=array([[ 0.98125486,  0.16857012,  0.09339706],
       [-0.18138667,  0.97157419,  0.15212651],
       [-0.06509819, -0.16621586,  0.98393827]]), T=array([-3.52956981, -0.72790771, -0.21369828]), FovY=0.9384727420170449, FovX=1.1887788848677407, image=<PIL.JpegImagePlugin.JpegImageFile image mode=RGB size=4863x3651 at 0x7FA2C076E090>, image_path='/home/user/3D_survey/models/gaussian-splatting/data/odm_aukerman/images/DSC00233.JPG', image_name='DSC00233', width=4863, height=3651), CameraInfo(uid=1, R=array([[ 0.96972867,  0.21275549,  0.11983912],
       [-0.23374937,  0.95074414,  0.20358489],
       [-0.07062254, -0.22543442,  0.97169531]]), T=array([-2.93262951,  0.86845088, -0.34200852]), FovY=0.9384727420170449, FovX=1.1887788848677407, image=<PIL.JpegImagePlugin.JpegImageFile image mode=RGB size=4863x3651 at 0x7FA2C076E210>, image_path='/home/user/3D_survey/models/gaussian-splatting/data/odm_aukerman/images/DSC00234.JPG', image_name='DSC00234', width=4863, height=3651), CameraInfo(uid=1, R=array([[ 0.98456112, -0.14809608, -0.09331107],
       [ 0.16581766,  0.95986912,  0.22617642],
       [ 0.05607057, -0.23815713,  0.96960676]]), T=array([-1.61471343,  3.45824471,  0.23501635]), FovY=0.9384727420170449, FovX=1.1887788848677407, image=<PIL.JpegImagePlugin.JpegImageFile image mode=RGB size=4863x3651 at 0x7FA2C076E390>, image_path='/home/user/3D_survey/models/gaussian-splatting/data/odm_aukerman/images/DSC00235.JPG', image_name='DSC00235', width=4863, height=3651), CameraInfo(uid=1, R=array([[ 0.99688478,  0.01230462,  0.07790586],
       [-0.03333559,  0.96092561,  0.27479212],
       [-0.07148053, -0.27653312,  0.9583423 ]]), T=array([-1.74922839,  4.90563595,  0.13722734]), FovY=0.9384727420170449, FovX=1.1887788848677407, image=<PIL.JpegImagePlugin.JpegImageFile image mode=RGB size=4863x3651 at 0x7FA2C076E2D0>, image_path='/home/user/3D_survey/models/gaussian-splatting/data/odm_aukerman/images/DSC00236.JPG', image_name='DSC00236', width=4863, height=3651), CameraInfo(uid=1, R=array([[-0.27473496,  0.96122977,  0.02362275],
       [-0.88969094, -0.26345186,  0.3728849 ],
       [ 0.36465152,  0.08142757,  0.92757685]]), T=array([-6.02848676,  0.89750568,  0.79862506]), FovY=0.9384727420170449, FovX=1.1887788848677407, image=<PIL.JpegImagePlugin.JpegImageFile image mode=RGB size=4863x3651 at 0x7FA2C076E450>, image_path='/home/user/3D_survey/models/gaussian-splatting/data/odm_aukerman/images/DSC00237.JPG', image_name='DSC00237', width=4863, height=3651), CameraInfo(uid=1, R=array([[-0.73217654, -0.68092754,  0.01597502],
       [ 0.64993145, -0.69144763,  0.31541921],
       [-0.20373173,  0.24132521,  0.94881796]]), T=array([-2.5937141 , -1.86538487,  0.05196471]), FovY=0.9384727420170449, FovX=1.1887788848677407, image=<PIL.JpegImagePlugin.JpegImageFile image mode=RGB size=4863x3651 at 0x7FA2C076E510>, image_path='/home/user/3D_survey/models/gaussian-splatting/data/odm_aukerman/images/DSC00239.JPG', image_name='DSC00239', width=4863, height=3651), CameraInfo(uid=1, R=array([[-0.68863241, -0.72447952,  0.03024618],
       [ 0.68020891, -0.63097692,  0.37307367],
       [-0.25119959,  0.27748434,  0.92730858]]), T=array([-3.1723651 , -0.1409423 , -0.17426174]), FovY=0.9384727420170449, FovX=1.1887788848677407, image=<PIL.JpegImagePlugin.JpegImageFile image mode=RGB size=4863x3651 at 0x7FA2C076E690>, image_path='/home/user/3D_survey/models/gaussian-splatting/data/odm_aukerman/images/DSC00240.JPG', image_name='DSC00240', width=4863, height=3651), CameraInfo(uid=1, R=array([[-0.77339386, -0.63280795,  0.03763022],
       [ 0.62832877, -0.75734298,  0.17786109],
       [-0.08405293,  0.16120082,  0.98333585]]), T=array([-3.72541644,  2.12336803,  0.36340504]), FovY=0.9384727420170449, FovX=1.1887788848677407, image=<PIL.JpegImagePlugin.JpegImageFile image mode=RGB size=4863x3651 at 0x7FA2C076E810>, image_path='/home/user/3D_survey/models/gaussian-splatting/data/odm_aukerman/images/DSC00241.JPG', image_name='DSC00241', width=4863, height=3651), CameraInfo(uid=1, R=array([[ 0.53363851, -0.84456252, -0.04409194],
       [ 0.82992965,  0.51294198,  0.21933377],
       [-0.16262448, -0.15363815,  0.97465306]]), T=array([-4.42720892, -1.75482   ,  0.11212468]), FovY=0.9384727420170449, FovX=1.1887788848677407, image=<PIL.JpegImagePlugin.JpegImageFile image mode=RGB size=4863x3651 at 0x7FA2C076E750>, image_path='/home/user/3D_survey/models/gaussian-splatting/data/odm_aukerman/images/DSC00242.JPG', image_name='DSC00242', width=4863, height=3651), CameraInfo(uid=1, R=array([[ 0.40493299, -0.91423255,  0.0144261 ],
       [ 0.86498597,  0.38813909,  0.31803667],
       [-0.29635881, -0.11630517,  0.94796865]]), T=array([-4.7177552 ,  0.63675719, -0.52287064]), FovY=0.9384727420170449, FovX=1.1887788848677407, image=<PIL.JpegImagePlugin.JpegImageFile image mode=RGB size=4863x3651 at 0x7FA2C0784E10>, image_path='/home/user/3D_survey/models/gaussian-splatting/data/odm_aukerman/images/DSC00243.JPG', image_name='DSC00243', width=4863, height=3651), CameraInfo(uid=1, R=array([[ 0.9573479 ,  0.25859648, -0.1288909 ],
       [-0.2269965 ,  0.94913116,  0.21822608],
       [ 0.17876687, -0.1796605 ,  0.96734922]]), T=array([-2.27695949, -1.75543799,  0.29648052]), FovY=0.9384727420170449, FovX=1.1887788848677407, image=<PIL.JpegImagePlugin.JpegImageFile image mode=RGB size=4863x3651 at 0x7FA2C0784C90>, image_path='/home/user/3D_survey/models/gaussian-splatting/data/odm_aukerman/images/DSC00244.JPG', image_name='DSC00244', width=4863, height=3651), CameraInfo(uid=1, R=array([[ 0.86951193,  0.31505748,  0.38037848],
       [-0.39739714,  0.90359138,  0.15999415],
       [-0.29329936, -0.29027815,  0.91088643]]), T=array([-2.02557647,  1.64661627, -0.69890664]), FovY=0.9384727420170449, FovX=1.1887788848677407, image=<PIL.JpegImagePlugin.JpegImageFile image mode=RGB size=4863x3651 at 0x7FA2C0784D50>, image_path='/home/user/3D_survey/models/gaussian-splatting/data/odm_aukerman/images/DSC00246.JPG', image_name='DSC00246', width=4863, height=3651), CameraInfo(uid=1, R=array([[-0.93152508, -0.36366027, -0.00349647],
       [ 0.35449611, -0.91011355,  0.21453632],
       [-0.08120052,  0.19860648,  0.97670975]]), T=array([-2.20579846,  0.82017299,  0.13557286]), FovY=0.9384727420170449, FovX=1.1887788848677407, image=<PIL.JpegImagePlugin.JpegImageFile image mode=RGB size=4863x3651 at 0x7FA2C0784A50>, image_path='/home/user/3D_survey/models/gaussian-splatting/data/odm_aukerman/images/DSC00249.JPG', image_name='DSC00249', width=4863, height=3651), CameraInfo(uid=1, R=array([[ 0.99860205,  0.03962147,  0.03498693],
       [-0.04532264,  0.98243157,  0.18103608],
       [-0.02719935, -0.1823687 ,  0.98285393]]), T=array([-1.72504717, -0.7269751 , -0.18964444]), FovY=0.9384727420170449, FovX=1.1887788848677407, image=<PIL.JpegImagePlugin.JpegImageFile image mode=RGB size=4863x3651 at 0x7FA2C0784B10>, image_path='/home/user/3D_survey/models/gaussian-splatting/data/odm_aukerman/images/DSC00251.JPG', image_name='DSC00251', width=4863, height=3651), CameraInfo(uid=1, R=array([[ 0.95740065, -0.21964006, -0.18746265],
       [ 0.25740167,  0.94336552,  0.20929855],
       [ 0.13087545, -0.24863577,  0.95971447]]), T=array([-0.74720041,  1.10822204,  0.05595364]), FovY=0.9384727420170449, FovX=1.1887788848677407, image=<PIL.JpegImagePlugin.JpegImageFile image mode=RGB size=4863x3651 at 0x7FA2C0784990>, image_path='/home/user/3D_survey/models/gaussian-splatting/data/odm_aukerman/images/DSC00252.JPG', image_name='DSC00252', width=4863, height=3651), CameraInfo(uid=1, R=array([[ 0.99797278, -0.03322084,  0.05428349],
       [ 0.01733131,  0.96257577,  0.27045796],
       [-0.06123682, -0.26896888,  0.96120018]]), T=array([-0.40914667,  2.7405791 , -0.08681369]), FovY=0.9384727420170449, FovX=1.1887788848677407, image=<PIL.JpegImagePlugin.JpegImageFile image mode=RGB size=4863x3651 at 0x7FA2C07848D0>, image_path='/home/user/3D_survey/models/gaussian-splatting/data/odm_aukerman/images/DSC00253.JPG', image_name='DSC00253', width=4863, height=3651), CameraInfo(uid=1, R=array([[-0.56316119, -0.82633518,  0.00443323],
       [ 0.7820127 , -0.53120571,  0.32600096],
       [-0.2670311 ,  0.18705793,  0.94535904]]), T=array([-0.58443205, -2.23156534, -0.01266134]), FovY=0.9384727420170449, FovX=1.1887788848677407, image=<PIL.JpegImagePlugin.JpegImageFile image mode=RGB size=4863x3651 at 0x7FA2C0784810>, image_path='/home/user/3D_survey/models/gaussian-splatting/data/odm_aukerman/images/DSC00254.JPG', image_name='DSC00254', width=4863, height=3651), CameraInfo(uid=1, R=array([[-0.62738846, -0.77325082,  0.09201566],
       [ 0.77399634, -0.60624776,  0.18273836],
       [-0.0855183 ,  0.18586772,  0.97884616]]), T=array([-1.36974544, -0.55007238,  0.11282753]), FovY=0.9384727420170449, FovX=1.1887788848677407, image=<PIL.JpegImagePlugin.JpegImageFile image mode=RGB size=4863x3651 at 0x7FA2C0784690>, image_path='/home/user/3D_survey/models/gaussian-splatting/data/odm_aukerman/images/DSC00255.JPG', image_name='DSC00255', width=4863, height=3651), CameraInfo(uid=1, R=array([[-0.54765454, -0.83571714, -0.04063692],
       [ 0.78964861, -0.53230271,  0.3051375 ],
       [-0.27663978,  0.13502105,  0.95144088]]), T=array([-2.13319753,  0.88204502, -0.23605275]), FovY=0.9384727420170449, FovX=1.1887788848677407, image=<PIL.JpegImagePlugin.JpegImageFile image mode=RGB size=4863x3651 at 0x7FA2C0784750>, image_path='/home/user/3D_survey/models/gaussian-splatting/data/odm_aukerman/images/DSC00256.JPG', image_name='DSC00256', width=4863, height=3651), CameraInfo(uid=1, R=array([[ 0.99219897,  0.06373022, -0.1071432 ],
       [-0.02754129,  0.95027535,  0.31019065],
       [ 0.12158406, -0.30481998,  0.94461743]]), T=array([-1.34513483, -2.76877453, -0.00527228]), FovY=0.9384727420170449, FovX=1.1887788848677407, image=<PIL.JpegImagePlugin.JpegImageFile image mode=RGB size=4863x3651 at 0x7FA2C0784450>, image_path='/home/user/3D_survey/models/gaussian-splatting/data/odm_aukerman/images/DSC00258.JPG', image_name='DSC00258', width=4863, height=3651), CameraInfo(uid=1, R=array([[ 0.97688746,  0.01767805,  0.21302203],
       [-0.05371813,  0.98489488,  0.16460996],
       [-0.20689432, -0.17224855,  0.96308108]]), T=array([-0.86457185, -0.69163319, -0.06507618]), FovY=0.9384727420170449, FovX=1.1887788848677407, image=<PIL.JpegImagePlugin.JpegImageFile image mode=RGB size=4863x3651 at 0x7FA2C0784510>, image_path='/home/user/3D_survey/models/gaussian-splatting/data/odm_aukerman/images/DSC00259.JPG', image_name='DSC00259', width=4863, height=3651), CameraInfo(uid=1, R=array([[ 9.99987295e-01, -4.96647463e-03,  8.62503014e-04],
       [ 4.94117614e-03,  9.99617718e-01,  2.72029996e-02],
       [-9.97276302e-04, -2.71983922e-02,  9.99629558e-01]]), T=array([ 0.00394889,  1.06017727, -0.20287751]), FovY=0.9384727420170449, FovX=1.1887788848677407, image=<PIL.JpegImagePlugin.JpegImageFile image mode=RGB size=4863x3651 at 0x7FA2C0784390>, image_path='/home/user/3D_survey/models/gaussian-splatting/data/odm_aukerman/images/DSC00260.JPG', image_name='DSC00260', width=4863, height=3651), CameraInfo(uid=1, R=array([[ 0.99984236,  0.00543171,  0.01690437],
       [-0.00865735,  0.98035548,  0.19704866],
       [-0.01550198, -0.19716395,  0.98024796]]), T=array([ 0.66259776,  2.78404362, -0.06767212]), FovY=0.9384727420170449, FovX=1.1887788848677407, image=<PIL.JpegImagePlugin.JpegImageFile image mode=RGB size=4863x3651 at 0x7FA2C076EBD0>, image_path='/home/user/3D_survey/models/gaussian-splatting/data/odm_aukerman/images/DSC00261.JPG', image_name='DSC00261', width=4863, height=3651), CameraInfo(uid=1, R=array([[-0.62957549, -0.75974425,  0.16255268],
       [ 0.77382328, -0.59445325,  0.21868441],
       [-0.06951425,  0.26346539,  0.96216098]]), T=array([-0.95417263,  0.27222576,  0.06914711]), FovY=0.9384727420170449, FovX=1.1887788848677407, image=<PIL.JpegImagePlugin.JpegImageFile image mode=RGB size=4863x3651 at 0x7FA2C07842D0>, image_path='/home/user/3D_survey/models/gaussian-splatting/data/odm_aukerman/images/DSC00263.JPG', image_name='DSC00263', width=4863, height=3651), CameraInfo(uid=1, R=array([[-0.05116918,  0.99682917, -0.06093699],
       [-0.90492942, -0.02046696,  0.42506923],
       [ 0.42247421,  0.07689412,  0.90310732]]), T=array([-0.67121499,  1.06020278,  0.03094687]), FovY=0.9384727420170449, FovX=1.1887788848677407, image=<PIL.JpegImagePlugin.JpegImageFile image mode=RGB size=4863x3651 at 0x7FA2C076E8D0>, image_path='/home/user/3D_survey/models/gaussian-splatting/data/odm_aukerman/images/DSC00264.JPG', image_name='DSC00264', width=4863, height=3651), CameraInfo(uid=1, R=array([[ 0.99817765, -0.01283929, -0.05896208],
       [ 0.02220127,  0.98670659,  0.16098821],
       [ 0.0561113 , -0.16200387,  0.98519352]]), T=array([ 1.47275135,  1.11757058, -0.12292351]), FovY=0.9384727420170449, FovX=1.1887788848677407, image=<PIL.JpegImagePlugin.JpegImageFile image mode=RGB size=4863x3651 at 0x7FA2C076E990>, image_path='/home/user/3D_survey/models/gaussian-splatting/data/odm_aukerman/images/DSC00265.JPG', image_name='DSC00265', width=4863, height=3651), CameraInfo(uid=1, R=array([[ 0.47834838, -0.86844877,  0.13030565],
       [ 0.826826  ,  0.4953884 ,  0.26636273],
       [-0.29587429, -0.01967408,  0.95502426]]), T=array([-5.58968516, -2.27416704, -0.31995398]), FovY=0.9384727420170449, FovX=1.1887788848677407, image=<PIL.JpegImagePlugin.JpegImageFile image mode=RGB size=4863x3651 at 0x7FA2C076EB10>, image_path='/home/user/3D_survey/models/gaussian-splatting/data/odm_aukerman/images/DSC00268.JPG', image_name='DSC00268', width=4863, height=3651), CameraInfo(uid=1, R=array([[ 0.3914628 , -0.91972187,  0.02947133],
       [ 0.90863927,  0.39140848,  0.14551315],
       [-0.14536695, -0.03018417,  0.98891727]]), T=array([-5.69991261,  0.02342439,  0.40695966]), FovY=0.9384727420170449, FovX=1.1887788848677407, image=<PIL.JpegImagePlugin.JpegImageFile image mode=RGB size=4863x3651 at 0x7FA2C076EC90>, image_path='/home/user/3D_survey/models/gaussian-splatting/data/odm_aukerman/images/DSC00269.JPG', image_name='DSC00269', width=4863, height=3651), CameraInfo(uid=1, R=array([[ 0.29154807, -0.95045487,  0.10786686],
       [ 0.93435074,  0.30712002,  0.18073732],
       [-0.20491074,  0.04809186,  0.97759847]]), T=array([-5.69232737,  2.21055191, -0.18104486]), FovY=0.9384727420170449, FovX=1.1887788848677407, image=<PIL.JpegImagePlugin.JpegImageFile image mode=RGB size=4863x3651 at 0x7FA2C0A40150>, image_path='/home/user/3D_survey/models/gaussian-splatting/data/odm_aukerman/images/DSC00270.JPG', image_name='DSC00270', width=4863, height=3651), CameraInfo(uid=1, R=array([[ 0.89922201,  0.40232251,  0.17186148],
       [-0.42076604,  0.90290193,  0.08788658],
       [-0.11981532, -0.15134302,  0.98119294]]), T=array([-3.03632351, -3.50559049, -0.415912  ]), FovY=0.9384727420170449, FovX=1.1887788848677407, image=<PIL.JpegImagePlugin.JpegImageFile image mode=RGB size=4863x3651 at 0x7FA2C076ED50>, image_path='/home/user/3D_survey/models/gaussian-splatting/data/odm_aukerman/images/DSC00271.JPG', image_name='DSC00271', width=4863, height=3651), CameraInfo(uid=1, R=array([[ 0.97828167, -0.15464283, -0.1380238 ],
       [ 0.1602278 ,  0.98661654,  0.03024658],
       [ 0.13149915, -0.05170492,  0.98996696]]), T=array([-3.43670538,  0.26508366,  0.56002153]), FovY=0.9384727420170449, FovX=1.1887788848677407, image=<PIL.JpegImagePlugin.JpegImageFile image mode=RGB size=4863x3651 at 0x7FA2C076EE10>, image_path='/home/user/3D_survey/models/gaussian-splatting/data/odm_aukerman/images/DSC00272.JPG', image_name='DSC00272', width=4863, height=3651), CameraInfo(uid=1, R=array([[ 0.94633333,  0.31354626,  0.07837071],
       [-0.31525222,  0.94895402,  0.01011472],
       [-0.07119877, -0.03427844,  0.99687297]]), T=array([-3.20614054,  0.26346216, -0.64338647]), FovY=0.9384727420170449, FovX=1.1887788848677407, image=<PIL.JpegImagePlugin.JpegImageFile image mode=RGB size=4863x3651 at 0x7FA2C076EED0>, image_path='/home/user/3D_survey/models/gaussian-splatting/data/odm_aukerman/images/DSC00273.JPG', image_name='DSC00273', width=4863, height=3651), CameraInfo(uid=1, R=array([[ 0.99850534,  0.02729926, -0.04734804],
       [-0.01711419,  0.97892538,  0.20349991],
       [ 0.05190559, -0.20238542,  0.97792942]]), T=array([-2.29644726,  2.85615606, -0.11663615]), FovY=0.9384727420170449, FovX=1.1887788848677407, image=<PIL.JpegImagePlugin.JpegImageFile image mode=RGB size=4863x3651 at 0x7FA2C076EF90>, image_path='/home/user/3D_survey/models/gaussian-splatting/data/odm_aukerman/images/DSC00274.JPG', image_name='DSC00274', width=4863, height=3651), CameraInfo(uid=1, R=array([[ 0.99678549,  0.06924849, -0.04029071],
       [-0.05701745,  0.96644835,  0.25045278],
       [ 0.05628237, -0.24735042,  0.96729006]]), T=array([-1.32989587,  6.05925267,  0.01745403]), FovY=0.9384727420170449, FovX=1.1887788848677407, image=<PIL.JpegImagePlugin.JpegImageFile image mode=RGB size=4863x3651 at 0x7FA2C0A40210>, image_path='/home/user/3D_survey/models/gaussian-splatting/data/odm_aukerman/images/DSC00276.JPG', image_name='DSC00276', width=4863, height=3651), CameraInfo(uid=1, R=array([[-0.53883014,  0.84205   ,  0.02477642],
       [-0.78790102, -0.5141521 ,  0.33890942],
       [ 0.29811753,  0.16309325,  0.94049271]]), T=array([-6.18577483, -1.20905142,  0.56318712]), FovY=0.9384727420170449, FovX=1.1887788848677407, image=<PIL.JpegImagePlugin.JpegImageFile image mode=RGB size=4863x3651 at 0x7FA2C0A40690>, image_path='/home/user/3D_survey/models/gaussian-splatting/data/odm_aukerman/images/DSC00277.JPG', image_name='DSC00277', width=4863, height=3651), CameraInfo(uid=1, R=array([[-0.3804072 ,  0.91021465, -0.163706  ],
       [-0.92055823, -0.35570261,  0.16139452],
       [ 0.08867301,  0.21209655,  0.97321742]]), T=array([-6.24183909,  2.20149497, -1.23014506]), FovY=0.9384727420170449, FovX=1.1887788848677407, image=<PIL.JpegImagePlugin.JpegImageFile image mode=RGB size=4863x3651 at 0x7FA2C0A402D0>, image_path='/home/user/3D_survey/models/gaussian-splatting/data/odm_aukerman/images/DSC00278.JPG', image_name='DSC00278', width=4863, height=3651), CameraInfo(uid=1, R=array([[-0.79020207, -0.61268366,  0.01412195],
       [ 0.57961509, -0.73967039,  0.34195622],
       [-0.1990654 ,  0.27839981,  0.93960977]]), T=array([-1.79277281, -4.44462426,  0.22378065]), FovY=0.9384727420170449, FovX=1.1887788848677407, image=<PIL.JpegImagePlugin.JpegImageFile image mode=RGB size=4863x3651 at 0x7FA2C0A40390>, image_path='/home/user/3D_survey/models/gaussian-splatting/data/odm_aukerman/images/DSC00279.JPG', image_name='DSC00279', width=4863, height=3651), CameraInfo(uid=1, R=array([[-0.93584125, -0.33327195,  0.11459042],
       [ 0.34902084, -0.92151227,  0.17029264],
       [ 0.04884272,  0.19936132,  0.97870805]]), T=array([-3.08470669, -1.77377033,  0.32535207]), FovY=0.9384727420170449, FovX=1.1887788848677407, image=<PIL.JpegImagePlugin.JpegImageFile image mode=RGB size=4863x3651 at 0x7FA2C0A40450>, image_path='/home/user/3D_survey/models/gaussian-splatting/data/odm_aukerman/images/DSC00280.JPG', image_name='DSC00280', width=4863, height=3651), CameraInfo(uid=1, R=array([[-0.58633798, -0.8091484 , -0.03855704],
       [ 0.7684804 , -0.57066136,  0.28945378],
       [-0.25621407,  0.14008742,  0.95641511]]), T=array([-2.52383697, -1.76061429, -0.27333875]), FovY=0.9384727420170449, FovX=1.1887788848677407, image=<PIL.JpegImagePlugin.JpegImageFile image mode=RGB size=4863x3651 at 0x7FA2C0A40510>, image_path='/home/user/3D_survey/models/gaussian-splatting/data/odm_aukerman/images/DSC00281.JPG', image_name='DSC00281', width=4863, height=3651), CameraInfo(uid=1, R=array([[-0.80435922, -0.57735047,  0.14025936],
       [ 0.58679138, -0.73493086,  0.33993015],
       [-0.0931779 ,  0.35572893,  0.92993269]]), T=array([-3.28767613,  0.88384765, -0.07069225]), FovY=0.9384727420170449, FovX=1.1887788848677407, image=<PIL.JpegImagePlugin.JpegImageFile image mode=RGB size=4863x3651 at 0x7FA2C0A405D0>, image_path='/home/user/3D_survey/models/gaussian-splatting/data/odm_aukerman/images/DSC00282.JPG', image_name='DSC00282', width=4863, height=3651), CameraInfo(uid=1, R=array([[ 0.32551019, -0.93509874,  0.1401195 ],
       [ 0.93585817,  0.3397712 ,  0.09340779],
       [-0.13495407,  0.10072679,  0.98571878]]), T=array([-4.75078208, -0.36912717,  0.39958149]), FovY=0.9384727420170449, FovX=1.1887788848677407, image=<PIL.JpegImagePlugin.JpegImageFile image mode=RGB size=4863x3651 at 0x7FA2C0A40BD0>, image_path='/home/user/3D_survey/models/gaussian-splatting/data/odm_aukerman/images/DSC00284.JPG', image_name='DSC00284', width=4863, height=3651), CameraInfo(uid=1, R=array([[ 0.43949666, -0.8882976 ,  0.13330435],
       [ 0.85936844,  0.45900662,  0.22538589],
       [-0.26139732,  0.01550121,  0.96510681]]), T=array([-4.80737717,  0.53042888, -0.42879545]), FovY=0.9384727420170449, FovX=1.1887788848677407, image=<PIL.JpegImagePlugin.JpegImageFile image mode=RGB size=4863x3651 at 0x7FA2C0A40810>, image_path='/home/user/3D_survey/models/gaussian-splatting/data/odm_aukerman/images/DSC00285.JPG', image_name='DSC00285', width=4863, height=3651), CameraInfo(uid=1, R=array([[ 0.99521664, -0.04028969, -0.08899762],
       [ 0.05034711,  0.99222467,  0.11382169],
       [ 0.08371979, -0.11775801,  0.98950697]]), T=array([-2.87985588, -1.14180002,  0.29723787]), FovY=0.9384727420170449, FovX=1.1887788848677407, image=<PIL.JpegImagePlugin.JpegImageFile image mode=RGB size=4863x3651 at 0x7FA2C0A408D0>, image_path='/home/user/3D_survey/models/gaussian-splatting/data/odm_aukerman/images/DSC00286.JPG', image_name='DSC00286', width=4863, height=3651), CameraInfo(uid=1, R=array([[ 0.96522126,  0.24200653,  0.09889772],
       [-0.25268594,  0.96063585,  0.1154495 ],
       [-0.06706516, -0.13642437,  0.98837779]]), T=array([-2.24189307, -0.00814484, -0.50006694]), FovY=0.9384727420170449, FovX=1.1887788848677407, image=<PIL.JpegImagePlugin.JpegImageFile image mode=RGB size=4863x3651 at 0x7FA2C0A40990>, image_path='/home/user/3D_survey/models/gaussian-splatting/data/odm_aukerman/images/DSC00287.JPG', image_name='DSC00287', width=4863, height=3651), CameraInfo(uid=1, R=array([[ 0.99042516,  0.10586694, -0.08860129],
       [-0.09362621,  0.98675783,  0.13245043],
       [ 0.10145014, -0.12288683,  0.98722171]]), T=array([-1.68767611,  2.14040159, -0.17929353]), FovY=0.9384727420170449, FovX=1.1887788848677407, image=<PIL.JpegImagePlugin.JpegImageFile image mode=RGB size=4863x3651 at 0x7FA2C0A40A50>, image_path='/home/user/3D_survey/models/gaussian-splatting/data/odm_aukerman/images/DSC00288.JPG', image_name='DSC00288', width=4863, height=3651), CameraInfo(uid=1, R=array([[ 0.99237743,  0.1071754 ,  0.06083154],
       [-0.10420832,  0.99329669, -0.05002317],
       [-0.06578502,  0.04330272,  0.99689378]]), T=array([-1.19487878,  3.72776898, -1.17421213]), FovY=0.9384727420170449, FovX=1.1887788848677407, image=<PIL.JpegImagePlugin.JpegImageFile image mode=RGB size=4863x3651 at 0x7FA2C0A40B10>, image_path='/home/user/3D_survey/models/gaussian-splatting/data/odm_aukerman/images/DSC00289.JPG', image_name='DSC00289', width=4863, height=3651), CameraInfo(uid=1, R=array([[-0.1511639 ,  0.98829177, -0.02070895],
       [-0.89239782, -0.12742568,  0.43288432],
       [ 0.42517716,  0.08391711,  0.90121158]]), T=array([-4.58411904,  2.72862653,  0.74692272]), FovY=0.9384727420170449, FovX=1.1887788848677407, image=<PIL.JpegImagePlugin.JpegImageFile image mode=RGB size=4863x3651 at 0x7FA2C0A40C90>, image_path='/home/user/3D_survey/models/gaussian-splatting/data/odm_aukerman/images/DSC00290.JPG', image_name='DSC00290', width=4863, height=3651), CameraInfo(uid=1, R=array([[-0.90877768, -0.40607623,  0.09604805],
       [ 0.41473597, -0.85360167,  0.31521145],
       [-0.0460131 ,  0.32629171,  0.94414856]]), T=array([-2.25934601, -0.87729536,  0.15959023]), FovY=0.9384727420170449, FovX=1.1887788848677407, image=<PIL.JpegImagePlugin.JpegImageFile image mode=RGB size=4863x3651 at 0x7FA2C0A40D50>, image_path='/home/user/3D_survey/models/gaussian-splatting/data/odm_aukerman/images/DSC00292.JPG', image_name='DSC00292', width=4863, height=3651), CameraInfo(uid=1, R=array([[-0.70291835, -0.70501743,  0.0941075 ],
       [ 0.67441031, -0.61859126,  0.40313222],
       [-0.22600116,  0.3468361 ,  0.91029017]]), T=array([-2.4577792 ,  0.09648264, -0.22584941]), FovY=0.9384727420170449, FovX=1.1887788848677407, image=<PIL.JpegImagePlugin.JpegImageFile image mode=RGB size=4863x3651 at 0x7FA2C0A40E10>, image_path='/home/user/3D_survey/models/gaussian-splatting/data/odm_aukerman/images/DSC00293.JPG', image_name='DSC00293', width=4863, height=3651), CameraInfo(uid=1, R=array([[-0.85809178, -0.48217086,  0.17660626],
       [ 0.51332386, -0.81438768,  0.27068677],
       [ 0.01330869,  0.3229303 ,  0.94632917]]), T=array([-2.4179182 ,  2.58584229, -0.03783915]), FovY=0.9384727420170449, FovX=1.1887788848677407, image=<PIL.JpegImagePlugin.JpegImageFile image mode=RGB size=4863x3651 at 0x7FA2C0A40ED0>, image_path='/home/user/3D_survey/models/gaussian-splatting/data/odm_aukerman/images/DSC00294.JPG', image_name='DSC00294', width=4863, height=3651), CameraInfo(uid=1, R=array([[ 0.9201835 ,  0.38197543,  0.08577353],
       [-0.38301229,  0.92373141, -0.00467638],
       [-0.08101796, -0.02854919,  0.99630369]]), T=array([-1.39639593, -1.14872302, -0.13728855]), FovY=0.9384727420170449, FovX=1.1887788848677407, image=<PIL.JpegImagePlugin.JpegImageFile image mode=RGB size=4863x3651 at 0x7FA2C0784210>, image_path='/home/user/3D_survey/models/gaussian-splatting/data/odm_aukerman/images/DSC00295.JPG', image_name='DSC00295', width=4863, height=3651), CameraInfo(uid=1, R=array([[ 0.96777355,  0.06930505, -0.24209743],
       [-0.03555996,  0.9893602 ,  0.14107406],
       [ 0.24929871, -0.12791877,  0.95994111]]), T=array([-0.97904401,  0.99733057,  0.11069444]), FovY=0.9384727420170449, FovX=1.1887788848677407, image=<PIL.JpegImagePlugin.JpegImageFile image mode=RGB size=4863x3651 at 0x7FA2C0784150>, image_path='/home/user/3D_survey/models/gaussian-splatting/data/odm_aukerman/images/DSC00296.JPG', image_name='DSC00296', width=4863, height=3651), CameraInfo(uid=1, R=array([[ 0.95823446,  0.27479614,  0.07920737],
       [-0.2796856 ,  0.95827678,  0.05900485],
       [-0.05968828, -0.07869364,  0.99511036]]), T=array([-1.03236379,  2.56830748, -0.47777556]), FovY=0.9384727420170449, FovX=1.1887788848677407, image=<PIL.JpegImagePlugin.JpegImageFile image mode=RGB size=4863x3651 at 0x7FA2C0765F90>, image_path='/home/user/3D_survey/models/gaussian-splatting/data/odm_aukerman/images/DSC00297.JPG', image_name='DSC00297', width=4863, height=3651), CameraInfo(uid=1, R=array([[-0.67122653, -0.70347555,  0.23361741],
       [ 0.74095172, -0.64573434,  0.18443889],
       [ 0.02110653,  0.2968995 ,  0.95467544]]), T=array([-0.84635264, -2.02577915,  0.45314018]), FovY=0.9384727420170449, FovX=1.1887788848677407, image=<PIL.JpegImagePlugin.JpegImageFile image mode=RGB size=4863x3651 at 0x7FA2C0765B50>, image_path='/home/user/3D_survey/models/gaussian-splatting/data/odm_aukerman/images/DSC00298.JPG', image_name='DSC00298', width=4863, height=3651), CameraInfo(uid=1, R=array([[-0.78100964, -0.61980642,  0.07657639],
       [ 0.61107324, -0.73312159,  0.29853346],
       [-0.12889315,  0.2799513 ,  0.95132215]]), T=array([-1.72476434,  1.69301623, -0.13280909]), FovY=0.9384727420170449, FovX=1.1887788848677407, image=<PIL.JpegImagePlugin.JpegImageFile image mode=RGB size=4863x3651 at 0x7FA2C0765E10>, image_path='/home/user/3D_survey/models/gaussian-splatting/data/odm_aukerman/images/DSC00300.JPG', image_name='DSC00300', width=4863, height=3651), CameraInfo(uid=1, R=array([[-0.73626277, -0.65266527,  0.17873215],
       [ 0.66547525, -0.65044338,  0.36615039],
       [-0.12271849,  0.38852472,  0.91322982]]), T=array([-2.29423683,  3.32215249, -0.73963194]), FovY=0.9384727420170449, FovX=1.1887788848677407, image=<PIL.JpegImagePlugin.JpegImageFile image mode=RGB size=4863x3651 at 0x7FA2C0765D50>, image_path='/home/user/3D_survey/models/gaussian-splatting/data/odm_aukerman/images/DSC00301.JPG', image_name='DSC00301', width=4863, height=3651), CameraInfo(uid=1, R=array([[ 0.9609026 ,  0.15821016, -0.22723497],
       [-0.10273575,  0.9658155 ,  0.23800375],
       [ 0.25712167, -0.20535326,  0.94430847]]), T=array([-1.24457933, -3.22480803,  0.32232812]), FovY=0.9384727420170449, FovX=1.1887788848677407, image=<PIL.JpegImagePlugin.JpegImageFile image mode=RGB size=4863x3651 at 0x7FA2C0765C90>, image_path='/home/user/3D_survey/models/gaussian-splatting/data/odm_aukerman/images/DSC00302.JPG', image_name='DSC00302', width=4863, height=3651), CameraInfo(uid=1, R=array([[ 0.97567389,  0.20328051, -0.08208222],
       [-0.1901333 ,  0.97102643,  0.14476533],
       [ 0.10913198, -0.12563719,  0.98605553]]), T=array([-0.94858708, -1.45151812,  0.19260704]), FovY=0.9384727420170449, FovX=1.1887788848677407, image=<PIL.JpegImagePlugin.JpegImageFile image mode=RGB size=4863x3651 at 0x7FA2C0765BD0>, image_path='/home/user/3D_survey/models/gaussian-splatting/data/odm_aukerman/images/DSC00303.JPG', image_name='DSC00303', width=4863, height=3651), CameraInfo(uid=1, R=array([[ 0.96775162,  0.25178039,  0.0079642 ],
       [-0.25187063,  0.9665986 ,  0.04741654],
       [ 0.00424037, -0.04789338,  0.99884345]]), T=array([-0.3713071 ,  0.30787531, -0.01970285]), FovY=0.9384727420170449, FovX=1.1887788848677407, image=<PIL.JpegImagePlugin.JpegImageFile image mode=RGB size=4863x3651 at 0x7FA2C0765A90>, image_path='/home/user/3D_survey/models/gaussian-splatting/data/odm_aukerman/images/DSC00304.JPG', image_name='DSC00304', width=4863, height=3651), CameraInfo(uid=1, R=array([[ 0.99374807, -0.02036419, -0.10977278],
       [ 0.02979357,  0.9959392 ,  0.08495556],
       [ 0.10759697, -0.08769494,  0.99031939]]), T=array([ 0.50079283,  1.93021076, -0.33138593]), FovY=0.9384727420170449, FovX=1.1887788848677407, image=<PIL.JpegImagePlugin.JpegImageFile image mode=RGB size=4863x3651 at 0x7FA2C0795F50>, image_path='/home/user/3D_survey/models/gaussian-splatting/data/odm_aukerman/images/DSC00305.JPG', image_name='DSC00305', width=4863, height=3651), CameraInfo(uid=1, R=array([[-0.3262383 , -0.94388687,  0.05144072],
       [ 0.90665875, -0.29704559,  0.29955604],
       [-0.26746678,  0.14436583,  0.95269094]]), T=array([-0.33817873, -1.71396935,  0.04532109]), FovY=0.9384727420170449, FovX=1.1887788848677407, image=<PIL.JpegImagePlugin.JpegImageFile image mode=RGB size=4863x3651 at 0x7FA2C07659D0>, image_path='/home/user/3D_survey/models/gaussian-splatting/data/odm_aukerman/images/DSC00306.JPG', image_name='DSC00306', width=4863, height=3651), CameraInfo(uid=1, R=array([[ 0.22168184,  0.97511649,  0.00223273],
       [-0.94046509,  0.21319812,  0.26471111],
       [ 0.25764816, -0.06078145,  0.96432517]]), T=array([-0.40413116,  1.07180826, -0.09120542]), FovY=0.9384727420170449, FovX=1.1887788848677407, image=<PIL.JpegImagePlugin.JpegImageFile image mode=RGB size=4863x3651 at 0x7FA2C0765810>, image_path='/home/user/3D_survey/models/gaussian-splatting/data/odm_aukerman/images/DSC00308.JPG', image_name='DSC00308', width=4863, height=3651), CameraInfo(uid=1, R=array([[ 0.99861644,  0.0490227 ,  0.01902588],
       [-0.05142253,  0.9860411 ,  0.15836245],
       [-0.01099695, -0.1591217 ,  0.98719773]]), T=array([ 1.10543389,  0.61574127, -0.08844957]), FovY=0.9384727420170449, FovX=1.1887788848677407, image=<PIL.JpegImagePlugin.JpegImageFile image mode=RGB size=4863x3651 at 0x7FA2C0765750>, image_path='/home/user/3D_survey/models/gaussian-splatting/data/odm_aukerman/images/DSC00309.JPG', image_name='DSC00309', width=4863, height=3651), CameraInfo(uid=1, R=array([[ 0.99399845,  0.05917031,  0.09201067],
       [-0.07806429,  0.97289188,  0.21768639],
       [-0.07663586, -0.22356268,  0.9716721 ]]), T=array([1.69329046, 2.20309806, 0.09623421]), FovY=0.9384727420170449, FovX=1.1887788848677407, image=<PIL.JpegImagePlugin.JpegImageFile image mode=RGB size=4863x3651 at 0x7FA2C0795250>, image_path='/home/user/3D_survey/models/gaussian-splatting/data/odm_aukerman/images/DSC00310.JPG', image_name='DSC00310', width=4863, height=3651), CameraInfo(uid=1, R=array([[ 0.99711715,  0.07032624, -0.02848873],
       [-0.06284341,  0.97582249,  0.20933506],
       [ 0.04252169, -0.20694125,  0.97742888]]), T=array([ 1.8505824 ,  3.99751673, -0.16068789]), FovY=0.9384727420170449, FovX=1.1887788848677407, image=<PIL.JpegImagePlugin.JpegImageFile image mode=RGB size=4863x3651 at 0x7FA2C015A850>, image_path='/home/user/3D_survey/models/gaussian-splatting/data/odm_aukerman/images/DSC00311.JPG', image_name='DSC00311', width=4863, height=3651)], test_cameras=[CameraInfo(uid=1, R=array([[ 0.30867647, -0.94442357, -0.11306172],
       [ 0.94417696,  0.28985136,  0.15657604],
       [-0.11510301, -0.15508161,  0.98117327]]), T=array([-5.80128379, -1.31484576,  0.68506489]), FovY=0.9384727420170449, FovX=1.1887788848677407, image=<PIL.JpegImagePlugin.JpegImageFile image mode=RGB size=4863x3651 at 0x7FA2C0784ED0>, image_path='/home/user/3D_survey/models/gaussian-splatting/data/odm_aukerman/images/DSC00229.JPG', image_name='DSC00229', width=4863, height=3651), CameraInfo(uid=1, R=array([[-0.81338948, -0.573708  ,  0.09621168],
       [ 0.58127693, -0.80802736,  0.09596311],
       [ 0.02268687,  0.13398101,  0.99072418]]), T=array([-2.23359615, -3.81911192,  0.11599525]), FovY=0.9384727420170449, FovX=1.1887788848677407, image=<PIL.JpegImagePlugin.JpegImageFile image mode=RGB size=4863x3651 at 0x7FA2C076E5D0>, image_path='/home/user/3D_survey/models/gaussian-splatting/data/odm_aukerman/images/DSC00238.JPG', image_name='DSC00238', width=4863, height=3651), CameraInfo(uid=1, R=array([[ 0.9059789 , -0.40026793, -0.13779629],
       [ 0.41659773,  0.9008201 ,  0.12234979],
       [ 0.07515697, -0.16825195,  0.98287472]]), T=array([ 0.83418685,  3.94336251, -0.23429936]), FovY=0.9384727420170449, FovX=1.1887788848677407, image=<PIL.JpegImagePlugin.JpegImageFile image mode=RGB size=4863x3651 at 0x7FA2C0784BD0>, image_path='/home/user/3D_survey/models/gaussian-splatting/data/odm_aukerman/images/DSC00247.JPG', image_name='DSC00247', width=4863, height=3651), CameraInfo(uid=1, R=array([[-0.69864554, -0.71546088,  0.00318527],
       [ 0.68484415, -0.66744657,  0.29240992],
       [-0.20708186,  0.2064723 ,  0.95628777]]), T=array([-2.35238125,  3.1316468 , -0.30145861]), FovY=0.9384727420170449, FovX=1.1887788848677407, image=<PIL.JpegImagePlugin.JpegImageFile image mode=RGB size=4863x3651 at 0x7FA2C07845D0>, image_path='/home/user/3D_survey/models/gaussian-splatting/data/odm_aukerman/images/DSC00257.JPG', image_name='DSC00257', width=4863, height=3651), CameraInfo(uid=1, R=array([[ 0.99710656, -0.05761499,  0.04958844],
       [ 0.05272897,  0.99410302,  0.09475671],
       [-0.05475543, -0.09186779,  0.99426463]]), T=array([ 2.62246121,  4.49152461, -0.4059775 ]), FovY=0.9384727420170449, FovX=1.1887788848677407, image=<PIL.JpegImagePlugin.JpegImageFile image mode=RGB size=4863x3651 at 0x7FA2C076EA50>, image_path='/home/user/3D_survey/models/gaussian-splatting/data/odm_aukerman/images/DSC00267.JPG', image_name='DSC00267', width=4863, height=3651), CameraInfo(uid=1, R=array([[ 0.99473871,  0.10227251,  0.00593505],
       [-0.10103762,  0.96986078,  0.22172386],
       [ 0.01692008, -0.22115697,  0.97509143]]), T=array([-2.13486113,  4.39460576, -0.2452242 ]), FovY=0.9384727420170449, FovX=1.1887788848677407, image=<PIL.JpegImagePlugin.JpegImageFile image mode=RGB size=4863x3651 at 0x7FA2C0A40090>, image_path='/home/user/3D_survey/models/gaussian-splatting/data/odm_aukerman/images/DSC00275.JPG', image_name='DSC00275', width=4863, height=3651), CameraInfo(uid=1, R=array([[-0.78642813, -0.61761495,  0.00908721],
       [ 0.578305  , -0.73104545,  0.36212688],
       [-0.21701181,  0.29004194,  0.93208452]]), T=array([-3.79418612,  2.42648612, -0.64504363]), FovY=0.9384727420170449, FovX=1.1887788848677407, image=<PIL.JpegImagePlugin.JpegImageFile image mode=RGB size=4863x3651 at 0x7FA2C0A40750>, image_path='/home/user/3D_survey/models/gaussian-splatting/data/odm_aukerman/images/DSC00283.JPG', image_name='DSC00283', width=4863, height=3651), CameraInfo(uid=1, R=array([[-0.69239314, -0.71511126,  0.09595641],
       [ 0.71952263, -0.67445268,  0.16553176],
       [-0.05365556,  0.18365586,  0.98152514]]), T=array([-0.78498243, -3.42478178,  0.05017422]), FovY=0.9384727420170449, FovX=1.1887788848677407, image=<PIL.JpegImagePlugin.JpegImageFile image mode=RGB size=4863x3651 at 0x7FA2C0784090>, image_path='/home/user/3D_survey/models/gaussian-splatting/data/odm_aukerman/images/DSC00291.JPG', image_name='DSC00291', width=4863, height=3651), CameraInfo(uid=1, R=array([[-0.55198023, -0.82922661,  0.08775562],
       [ 0.79123192, -0.48763816,  0.3690001 ],
       [-0.26319172,  0.27311581,  0.92527719]]), T=array([-1.41048914, -0.59628944, -0.02591331]), FovY=0.9384727420170449, FovX=1.1887788848677407, image=<PIL.JpegImagePlugin.JpegImageFile image mode=RGB size=4863x3651 at 0x7FA2C0765ED0>, image_path='/home/user/3D_survey/models/gaussian-splatting/data/odm_aukerman/images/DSC00299.JPG', image_name='DSC00299', width=4863, height=3651), CameraInfo(uid=1, R=array([[-1.44128674e-01, -9.89558948e-01, -1.14333368e-04],
       [ 9.30960506e-01, -1.35633013e-01,  3.38992952e-01],
       [-3.35469017e-01,  4.87521650e-02,  9.40788906e-01]]), T=array([-0.9918353 , -0.35863956, -0.15710331]), FovY=0.9384727420170449, FovX=1.1887788848677407, image=<PIL.JpegImagePlugin.JpegImageFile image mode=RGB size=4863x3651 at 0x7FA2C0765910>, image_path='/home/user/3D_survey/models/gaussian-splatting/data/odm_aukerman/images/DSC00307.JPG', image_name='DSC00307', width=4863, height=3651)], nerf_normalization={'translate': array([-0.16077894, -0.07594691, -0.01542493], dtype=float32), 'radius': 7.581940841674805}, ply_path='/home/user/3D_survey/models/gaussian-splatting/data/odm_aukerman/sparse/0/points3D.ply') [07/04 11:15:27]

 

SceneInfo는 named tuple이므로 asdict()를 이용하여 아래처럼 확인할 수 있음

{'model_path': 'output/odm_aukerman', 'loaded_iter': None, 'gaussians': <scene.gaussian_model.GaussianModel object at 0x7f243187f450>, 'train_cameras': {}, 'test_cameras': {}} 
# --------------------------------------------------------------------

OrderedDict([('point_cloud', BasicPointCloud(points=array([[-3.1786976,  1.1268233,  4.1232734],
       [-1.3131675,  0.859263 ,  4.158581 ],
       [-1.0692643,  1.0911088,  4.0958204],
       ...,
       [ 1.2832712, -1.4758004,  4.7903233],
       [-3.0944202, -1.4772788,  4.8030815],
       [-3.0393033, -2.4001055,  5.0467534]], dtype=float32), colors=array([[0.59607843, 0.62745098, 0.36470588],
       [0.71764706, 0.74117647, 0.50588235],
       [0.61960784, 0.64705882, 0.38431373],
       ...,
       [0.60784314, 0.61176471, 0.43921569],
       [0.42745098, 0.54901961, 0.23529412],
       [0.        , 0.        , 0.        ]]), normals=array([[0., 0., 0.],
       [0., 0., 0.],
       [0., 0., 0.],
       ...,
       [0., 0., 0.],
       [0., 0., 0.],
       [0., 0., 0.]], dtype=float32))), ('train_cameras', [CameraInfo(uid=1, R=array([[ 0.32542384, -0.9333629 , -0.15143654],
       [ 0.94505887,  0.31579403,  0.08448592],
       [-0.03103327, -0.17061017,  0.98484979]]), T=array([-5.62433605,  0.23668308,  1.21057039]), FovY=0.9384727420170449, FovX=1.1887788848677407, image=<PIL.JpegImagePlugin.JpegImageFile image mode=RGB size=4863x3651 at 0x7F774D6C9E90>, image_path='/home/user/3D_survey/models/gaussian-splatting/data/odm_aukerman/images/DSC00230.JPG', image_name='DSC00230', width=4863, height=3651), CameraInfo(uid=1, R=array([[ 0.98462343, -0.11413734, -0.13224739],
       [ 0.14339416,  0.96045088,  0.23868854],
       [ 0.09977384, -0.25398184,  0.96204907]]), T=array([-4.18595828, -1.42684032,  0.5656123 ]), FovY=0.9384727420170449, FovX=1.1887788848677407, image=<PIL.JpegImagePlugin.JpegImageFile image mode=RGB size=4863x3651 at 0x7F774D6C9D10>, image_path='/home/user/3D_survey/models/gaussian-splatting/data/odm_aukerman/images/DSC00232.JPG', image_name='DSC00232', width=4863, height=3651), CameraInfo(uid=1, R=array([[ 0.98125486,  0.16857012,  0.09339706],
       [-0.18138667,  0.97157419,  0.15212651],
       [-0.06509819, -0.16621586,  0.98393827]]), T=array([-3.52956981, -0.72790771, -0.21369828]), FovY=0.9384727420170449, FovX=1.1887788848677407, image=<PIL.JpegImagePlugin.JpegImageFile image mode=RGB size=4863x3651 at 0x7F774D6C9DD0>, image_path='/home/user/3D_survey/models/gaussian-splatting/data/odm_aukerman/images/DSC00233.JPG', image_name='DSC00233', width=4863, height=3651), CameraInfo(uid=1, R=array([[ 0.96972867,  0.21275549,  0.11983912],
       [-0.23374937,  0.95074414,  0.20358489],
       [-0.07062254, -0.22543442,  0.97169531]]), T=array([-2.93262951,  0.86845088, -0.34200852]), FovY=0.9384727420170449, FovX=1.1887788848677407, image=<PIL.JpegImagePlugin.JpegImageFile image mode=RGB size=4863x3651 at 0x7F774D6C9F50>, image_path='/home/user/3D_survey/models/gaussian-splatting/data/odm_aukerman/images/DSC00234.JPG', image_name='DSC00234', width=4863, height=3651), CameraInfo(uid=1, R=array([[ 0.98456112, -0.14809608, -0.09331107],
       [ 0.16581766,  0.95986912,  0.22617642],
       [ 0.05607057, -0.23815713,  0.96960676]]), T=array([-1.61471343,  3.45824471,  0.23501635]), FovY=0.9384727420170449, FovX=1.1887788848677407, image=<PIL.JpegImagePlugin.JpegImageFile image mode=RGB size=4863x3651 at 0x7F774DFB6110>, image_path='/home/user/3D_survey/models/gaussian-splatting/data/odm_aukerman/images/DSC00235.JPG', image_name='DSC00235', width=4863, height=3651), CameraInfo(uid=1, R=array([[ 0.99688478,  0.01230462,  0.07790586],
       [-0.03333559,  0.96092561,  0.27479212],
       [-0.07148053, -0.27653312,  0.9583423 ]]), T=array([-1.74922839,  4.90563595,  0.13722734]), FovY=0.9384727420170449, FovX=1.1887788848677407, image=<PIL.JpegImagePlugin.JpegImageFile image mode=RGB size=4863x3651 at 0x7F774DFB6050>, image_path='/home/user/3D_survey/models/gaussian-splatting/data/odm_aukerman/images/DSC00236.JPG', image_name='DSC00236', width=4863, height=3651), CameraInfo(uid=1, R=array([[-0.27473496,  0.96122977,  0.02362275],
       [-0.88969094, -0.26345186,  0.3728849 ],
       [ 0.36465152,  0.08142757,  0.92757685]]), T=array([-6.02848676,  0.89750568,  0.79862506]), FovY=0.9384727420170449, FovX=1.1887788848677407, image=<PIL.JpegImagePlugin.JpegImageFile image mode=RGB size=4863x3651 at 0x7F774DFB61D0>, image_path='/home/user/3D_survey/models/gaussian-splatting/data/odm_aukerman/images/DSC00237.JPG', image_name='DSC00237', width=4863, height=3651), CameraInfo(uid=1, R=array([[-0.73217654, -0.68092754,  0.01597502],
       [ 0.64993145, -0.69144763,  0.31541921],
       [-0.20373173,  0.24132521,  0.94881796]]), T=array([-2.5937141 , -1.86538487,  0.05196471]), FovY=0.9384727420170449, FovX=1.1887788848677407, image=<PIL.JpegImagePlugin.JpegImageFile image mode=RGB size=4863x3651 at 0x7F774DFB6290>, image_path='/home/user/3D_survey/models/gaussian-splatting/data/odm_aukerman/images/DSC00239.JPG', image_name='DSC00239', width=4863, height=3651), CameraInfo(uid=1, R=array([[-0.68863241, -0.72447952,  0.03024618],
       [ 0.68020891, -0.63097692,  0.37307367],
       [-0.25119959,  0.27748434,  0.92730858]]), T=array([-3.1723651 , -0.1409423 , -0.17426174]), FovY=0.9384727420170449, FovX=1.1887788848677407, image=<PIL.JpegImagePlugin.JpegImageFile image mode=RGB size=4863x3651 at 0x7F774DFB6410>, image_path='/home/user/3D_survey/models/gaussian-splatting/data/odm_aukerman/images/DSC00240.JPG', image_name='DSC00240', width=4863, height=3651), CameraInfo(uid=1, R=array([[-0.77339386, -0.63280795,  0.03763022],
       [ 0.62832877, -0.75734298,  0.17786109],
       [-0.08405293,  0.16120082,  0.98333585]]), T=array([-3.72541644,  2.12336803,  0.36340504]), FovY=0.9384727420170449, FovX=1.1887788848677407, image=<PIL.JpegImagePlugin.JpegImageFile image mode=RGB size=4863x3651 at 0x7F774DFB6590>, image_path='/home/user/3D_survey/models/gaussian-splatting/data/odm_aukerman/images/DSC00241.JPG', image_name='DSC00241', width=4863, height=3651), CameraInfo(uid=1, R=array([[ 0.53363851, -0.84456252, -0.04409194],
       [ 0.82992965,  0.51294198,  0.21933377],
       [-0.16262448, -0.15363815,  0.97465306]]), T=array([-4.42720892, -1.75482   ,  0.11212468]), FovY=0.9384727420170449, FovX=1.1887788848677407, image=<PIL.JpegImagePlugin.JpegImageFile image mode=RGB size=4863x3651 at 0x7F774DFB64D0>, image_path='/home/user/3D_survey/models/gaussian-splatting/data/odm_aukerman/images/DSC00242.JPG', image_name='DSC00242', width=4863, height=3651), CameraInfo(uid=1, R=array([[ 0.40493299, -0.91423255,  0.0144261 ],
       [ 0.86498597,  0.38813909,  0.31803667],
       [-0.29635881, -0.11630517,  0.94796865]]), T=array([-4.7177552 ,  0.63675719, -0.52287064]), FovY=0.9384727420170449, FovX=1.1887788848677407, image=<PIL.JpegImagePlugin.JpegImageFile image mode=RGB size=4863x3651 at 0x7F774D6C9B90>, image_path='/home/user/3D_survey/models/gaussian-splatting/data/odm_aukerman/images/DSC00243.JPG', image_name='DSC00243', width=4863, height=3651), CameraInfo(uid=1, R=array([[ 0.9573479 ,  0.25859648, -0.1288909 ],
       [-0.2269965 ,  0.94913116,  0.21822608],
       [ 0.17876687, -0.1796605 ,  0.96734922]]), T=array([-2.27695949, -1.75543799,  0.29648052]), FovY=0.9384727420170449, FovX=1.1887788848677407, image=<PIL.JpegImagePlugin.JpegImageFile image mode=RGB size=4863x3651 at 0x7F774D6C9A10>, image_path='/home/user/3D_survey/models/gaussian-splatting/data/odm_aukerman/images/DSC00244.JPG', image_name='DSC00244', width=4863, height=3651), CameraInfo(uid=1, R=array([[ 0.86951193,  0.31505748,  0.38037848],
       [-0.39739714,  0.90359138,  0.15999415],
       [-0.29329936, -0.29027815,  0.91088643]]), T=array([-2.02557647,  1.64661627, -0.69890664]), FovY=0.9384727420170449, FovX=1.1887788848677407, image=<PIL.JpegImagePlugin.JpegImageFile image mode=RGB size=4863x3651 at 0x7F774D6C9AD0>, image_path='/home/user/3D_survey/models/gaussian-splatting/data/odm_aukerman/images/DSC00246.JPG', image_name='DSC00246', width=4863, height=3651), CameraInfo(uid=1, R=array([[-0.93152508, -0.36366027, -0.00349647],
       [ 0.35449611, -0.91011355,  0.21453632],
       [-0.08120052,  0.19860648,  0.97670975]]), T=array([-2.20579846,  0.82017299,  0.13557286]), FovY=0.9384727420170449, FovX=1.1887788848677407, image=<PIL.JpegImagePlugin.JpegImageFile image mode=RGB size=4863x3651 at 0x7F774D6C97D0>, image_path='/home/user/3D_survey/models/gaussian-splatting/data/odm_aukerman/images/DSC00249.JPG', image_name='DSC00249', width=4863, height=3651), CameraInfo(uid=1, R=array([[ 0.99860205,  0.03962147,  0.03498693],
       [-0.04532264,  0.98243157,  0.18103608],
       [-0.02719935, -0.1823687 ,  0.98285393]]), T=array([-1.72504717, -0.7269751 , -0.18964444]), FovY=0.9384727420170449, FovX=1.1887788848677407, image=<PIL.JpegImagePlugin.JpegImageFile image mode=RGB size=4863x3651 at 0x7F774D6C9890>, image_path='/home/user/3D_survey/models/gaussian-splatting/data/odm_aukerman/images/DSC00251.JPG', image_name='DSC00251', width=4863, height=3651), CameraInfo(uid=1, R=array([[ 0.95740065, -0.21964006, -0.18746265],
       [ 0.25740167,  0.94336552,  0.20929855],
       [ 0.13087545, -0.24863577,  0.95971447]]), T=array([-0.74720041,  1.10822204,  0.05595364]), FovY=0.9384727420170449, FovX=1.1887788848677407, image=<PIL.JpegImagePlugin.JpegImageFile image mode=RGB size=4863x3651 at 0x7F774D6C9710>, image_path='/home/user/3D_survey/models/gaussian-splatting/data/odm_aukerman/images/DSC00252.JPG', image_name='DSC00252', width=4863, height=3651), CameraInfo(uid=1, R=array([[ 0.99797278, -0.03322084,  0.05428349],
       [ 0.01733131,  0.96257577,  0.27045796],
       [-0.06123682, -0.26896888,  0.96120018]]), T=array([-0.40914667,  2.7405791 , -0.08681369]), FovY=0.9384727420170449, FovX=1.1887788848677407, image=<PIL.JpegImagePlugin.JpegImageFile image mode=RGB size=4863x3651 at 0x7F774D6C9650>, image_path='/home/user/3D_survey/models/gaussian-splatting/data/odm_aukerman/images/DSC00253.JPG', image_name='DSC00253', width=4863, height=3651), CameraInfo(uid=1, R=array([[-0.56316119, -0.82633518,  0.00443323],
       [ 0.7820127 , -0.53120571,  0.32600096],
       [-0.2670311 ,  0.18705793,  0.94535904]]), T=array([-0.58443205, -2.23156534, -0.01266134]), FovY=0.9384727420170449, FovX=1.1887788848677407, image=<PIL.JpegImagePlugin.JpegImageFile image mode=RGB size=4863x3651 at 0x7F774D6C9590>, image_path='/home/user/3D_survey/models/gaussian-splatting/data/odm_aukerman/images/DSC00254.JPG', image_name='DSC00254', width=4863, height=3651), CameraInfo(uid=1, R=array([[-0.62738846, -0.77325082,  0.09201566],
       [ 0.77399634, -0.60624776,  0.18273836],
       [-0.0855183 ,  0.18586772,  0.97884616]]), T=array([-1.36974544, -0.55007238,  0.11282753]), FovY=0.9384727420170449, FovX=1.1887788848677407, image=<PIL.JpegImagePlugin.JpegImageFile image mode=RGB size=4863x3651 at 0x7F774D6C9410>, image_path='/home/user/3D_survey/models/gaussian-splatting/data/odm_aukerman/images/DSC00255.JPG', image_name='DSC00255', width=4863, height=3651), CameraInfo(uid=1, R=array([[-0.54765454, -0.83571714, -0.04063692],
       [ 0.78964861, -0.53230271,  0.3051375 ],
       [-0.27663978,  0.13502105,  0.95144088]]), T=array([-2.13319753,  0.88204502, -0.23605275]), FovY=0.9384727420170449, FovX=1.1887788848677407, image=<PIL.JpegImagePlugin.JpegImageFile image mode=RGB size=4863x3651 at 0x7F774D6C94D0>, image_path='/home/user/3D_survey/models/gaussian-splatting/data/odm_aukerman/images/DSC00256.JPG', image_name='DSC00256', width=4863, height=3651), CameraInfo(uid=1, R=array([[ 0.99219897,  0.06373022, -0.1071432 ],
       [-0.02754129,  0.95027535,  0.31019065],
       [ 0.12158406, -0.30481998,  0.94461743]]), T=array([-1.34513483, -2.76877453, -0.00527228]), Fov

 

그 후 코드 진행은 다음과 같다(적당히 주석 처리)

if not self.loaded_iter:
    print(f'scene_info.ply_path: {scene_info.ply_path}')
    print(f'self.model_path: {self.model_path}')

    print(f'scene_info.test_cameras: {scene_info.test_cameras}')
    print(f'scene_info.train_cameras: {scene_info.train_cameras}')
    print(f'scene_info.nerf_normalization: {scene_info.nerf_normalization}')
    print(f'scene_info.point_cloud: {scene_info.point_cloud}')

    # scene_info.ply_path에 있는 파일의 내용을 self.model_path에 있는 폴더에 input.ply로 저장
    # 우리 예시에서는
    """
    scene_info.ply_path: /home/user/3D_survey/models/gaussian-splatting/data/odm_aukerman/sparse/0/points3D.ply [07/04 13:56:34]
    self.model_path: output/odm_aukerman [07/04 13:56:34]
    """
    with open(scene_info.ply_path, 'rb') as src_file, open(os.path.join(self.model_path, "input.ply") , 'wb') as dest_file:
        dest_file.write(src_file.read())
    json_cams = []
    camlist = []
    if scene_info.test_cameras:
        camlist.extend(scene_info.test_cameras)
        print(f'scene_info.test_cameras: {scene_info.test_cameras}')
        print(f'len - scene_info.test_cameras: {len(scene_info.test_cameras)}')
    if scene_info.train_cameras:
        camlist.extend(scene_info.train_cameras)
    for id, cam in enumerate(camlist):
        json_cams.append(camera_to_JSON(id, cam))
    with open(os.path.join(self.model_path, "cameras.json"), 'w') as file:
        json.dump(json_cams, file)

"""
shuffle: 카메라 리스트를 섞을지 여부
"""
if shuffle:
    random.shuffle(scene_info.train_cameras)  # Multi-res consistent random shuffling
    random.shuffle(scene_info.test_cameras)  # Multi-res consistent random shuffling

# 역할: 카메라 리스트의 최대 거리를 저장
self.cameras_extent = scene_info.nerf_normalization["radius"]
print(f'self.cameras_extent: {self.cameras_extent}')
print(f'scene_info.nerf_normalization: {scene_info.nerf_normalization}')

# print(f'scene_info.point_cloud: {scene_info.point_cloud.}')
print(f'scene_info.point_cloud: {scene_info.point_cloud.points}')
print(f'len - scene_info.point_cloud: {len(scene_info.point_cloud.points)}')

 

for resolution_scale in resolution_scales:
    print("Loading Training Cameras")
    self.train_cameras[resolution_scale] = cameraList_from_camInfos(scene_info.train_cameras, resolution_scale, args)
    print("Loading Test Cameras")
    self.test_cameras[resolution_scale] = cameraList_from_camInfos(scene_info.test_cameras, resolution_scale, args)

    print(f'self.train_cameras: {self.train_cameras}')
    print(f'self.test_cameras: {self.test_cameras}')

if self.loaded_iter:
    # self.model_path/point_cloud/iteration_{self.loaded_iter}/point_cloud.ply 파일을 로드
    self.gaussians.load_ply(os.path.join(self.model_path,
                                                   "point_cloud",
                                                   "iteration_" + str(self.loaded_iter),
                                                   "point_cloud.ply"))
else:
    # scene_info.point_cloud를 이용하여 GaussianModel을 생성
    self.gaussians.create_from_pcd(scene_info.point_cloud, self.cameras_extent)

 

Comments