2525def loadCam (args , id , cam_info , resolution_scale ):
2626 orig_w , orig_h = cam_info .image .size
2727
28- if args .resolution in [1 , 2 , 4 , 8 ]:
29- resolution = round (orig_w / (resolution_scale * args .resolution )), round (orig_h / (resolution_scale * args .resolution ))
28+ if args .downscale_factor in [1 , 2 , 4 , 8 ]:
29+ resolution = round (orig_w / (resolution_scale * args .downscale_factor )), round (orig_h / (resolution_scale * args .downscale_factor ))
3030 else : # should be a type that converts to float
31- if args .resolution == - 1 :
31+ if args .downscale_factor == - 1 :
3232 if orig_w > 1600 :
3333 global WARNED
3434 if not WARNED :
@@ -39,7 +39,7 @@ def loadCam(args, id, cam_info, resolution_scale):
3939 else :
4040 global_down = 1
4141 else :
42- global_down = orig_w / args .resolution
42+ global_down = orig_w / args .downscale_factor
4343
4444 scale = float (global_down ) * float (resolution_scale )
4545 resolution = (int (orig_w / scale ), int (orig_h / scale ))
@@ -70,10 +70,10 @@ def loadCam(args, id, cam_info, resolution_scale):
7070# @timer
7171def loadCamv2 (args , id , cam_info , resolution_scale ):
7272 orig_w , orig_h = cam_info .width , cam_info .height
73- if args .resolution in [1 , 2 , 4 , 8 ]:
74- resolution = round (orig_w / (resolution_scale * args .resolution )), round (orig_h / (resolution_scale * args .resolution ))
73+ if args .downscale_factor in [1 , 2 , 4 , 8 ]:
74+ resolution = round (orig_w / (resolution_scale * args .downscale_factor )), round (orig_h / (resolution_scale * args .downscale_factor ))
7575 else : # should be a type that converts to float
76- if args .resolution == - 1 :
76+ if args .downscale_factor == - 1 :
7777 if orig_w > 1600 :
7878 global WARNED
7979 if not WARNED :
@@ -84,7 +84,7 @@ def loadCamv2(args, id, cam_info, resolution_scale):
8484 else :
8585 global_down = 1
8686 else :
87- global_down = orig_w / args .resolution
87+ global_down = orig_w / args .downscale_factor
8888
8989 scale = float (global_down ) * float (resolution_scale )
9090 resolution = (int (orig_w / scale ), int (orig_h / scale ))
@@ -107,6 +107,10 @@ def loadCamv2(args, id, cam_info, resolution_scale):
107107 else :
108108 rays_o = None
109109 rays_d = None
110+
111+ if gt_image is None :
112+ gt_image = (resolution [0 ], resolution [1 ])
113+
110114 return Camera (colmap_id = cam_info .uid , R = cam_info .R , T = cam_info .T ,
111115 FoVx = cam_info .FovX , FoVy = cam_info .FovY ,
112116 image = gt_image , gt_alpha_mask = loaded_mask ,
@@ -122,10 +126,10 @@ def loadCamv2(args, id, cam_info, resolution_scale):
122126def loadCamv2timing (args , id , cam_info , resolution_scale ):
123127 orig_w , orig_h = cam_info .image .size
124128
125- if args .resolution in [1 , 2 , 4 , 8 ]:
126- resolution = round (orig_w / (resolution_scale * args .resolution )), round (orig_h / (resolution_scale * args .resolution ))
129+ if args .downscale_factor in [1 , 2 , 4 , 8 ]:
130+ resolution = round (orig_w / (resolution_scale * args .downscale_factor )), round (orig_h / (resolution_scale * args .downscale_factor ))
127131 else : # should be a type that converts to float
128- if args .resolution == - 1 :
132+ if args .downscale_factor == - 1 :
129133 if orig_w > 1600 :
130134 global WARNED
131135 if not WARNED :
@@ -136,7 +140,7 @@ def loadCamv2timing(args, id, cam_info, resolution_scale):
136140 else :
137141 global_down = 1
138142 else :
139- global_down = orig_w / args .resolution
143+ global_down = orig_w / args .downscale_factor
140144
141145 scale = float (global_down ) * float (resolution_scale )
142146 resolution = (int (orig_w / scale ), int (orig_h / scale ))
@@ -166,11 +170,11 @@ def loadCamv2timing(args, id, cam_info, resolution_scale):
166170
167171def loadCamv2ss (args , id , cam_info , resolution_scale ):
168172 orig_w , orig_h = cam_info .image .size
169- assert args .resolution == 1
170- if args .resolution in [1 , 2 , 4 , 8 ]:
171- resolution = round (orig_w / (resolution_scale * args .resolution )), round (orig_h / (resolution_scale * args .resolution ))
173+ assert args .downscale_factor == 1
174+ if args .downscale_factor in [1 , 2 , 4 , 8 ]:
175+ resolution = round (orig_w / (resolution_scale * args .downscale_factor )), round (orig_h / (resolution_scale * args .downscale_factor ))
172176 else : # should be a type that converts to float
173- if args .resolution == - 1 :
177+ if args .downscale_factor == - 1 :
174178 if orig_w > 1600 :
175179 global WARNED
176180 if not WARNED :
@@ -181,7 +185,7 @@ def loadCamv2ss(args, id, cam_info, resolution_scale):
181185 else :
182186 global_down = 1
183187 else :
184- global_down = orig_w / args .resolution
188+ global_down = orig_w / args .downscale_factor
185189
186190 scale = float (global_down ) * float (resolution_scale )
187191 resolution = (int (orig_w / scale ), int (orig_h / scale ))
@@ -214,10 +218,10 @@ def loadCamv2ss(args, id, cam_info, resolution_scale):
214218def loadCamnogt (args , id , cam_info , resolution_scale ):
215219 orig_w , orig_h = cam_info .width , cam_info .height
216220
217- if args .resolution in [1 , 2 , 4 , 8 ]:
218- resolution = round (orig_w / (resolution_scale * args .resolution )), round (orig_h / (resolution_scale * args .resolution ))
221+ if args .downscale_factor in [1 , 2 , 4 , 8 ]:
222+ resolution = round (orig_w / (resolution_scale * args .downscale_factor )), round (orig_h / (resolution_scale * args .downscale_factor ))
219223 else : # should be a type that converts to float
220- if args .resolution == - 1 :
224+ if args .downscale_factor == - 1 :
221225 if orig_w > 1600 :
222226 global WARNED
223227 if not WARNED :
@@ -228,7 +232,7 @@ def loadCamnogt(args, id, cam_info, resolution_scale):
228232 else :
229233 global_down = 1
230234 else :
231- global_down = orig_w / args .resolution
235+ global_down = orig_w / args .downscale_factor
232236
233237 scale = float (global_down ) * float (resolution_scale )
234238 resolution = (int (orig_w / scale ), int (orig_h / scale ))
0 commit comments