Chaphlagical / Deblur-GS

[I3D 2024] Deblur-GS: 3D Gaussian Splatting from Camera Motion Blurred Images
https://chaphlagical.icu/Deblur-GS/
Other
331 stars 33 forks source link

train takes 1 positional argument but 2 were given #1

Open wing158 opened 4 months ago

wing158 commented 4 months ago

~/Deblur-GS# python train.py -s exblur_release/bench --eva Traceback (most recent call last): File "train.py", line 16, in from utils.vis_utils import vis_cameras File "/root/Deblur-GS/utils/vis_utils.py", line 2, in from scene.cameras import cam2world File "/root/Deblur-GS/scene/init.py", line 16, in from scene.dataset_readers import sceneLoadTypeCallbacks File "/root/Deblur-GS/scene/dataset_readers.py", line 24, in from scene.gaussian_model import BasicPointCloud File "/root/Deblur-GS/scene/gaussian_model.py", line 14, in from utils.general_utils import inverse_sigmoid, get_expon_lr_func, build_rotation File "/root/Deblur-GS/utils/general_utils.py", line 135, in def visualize_depth(depth, minmax=None, cmap=cv2.COLORMAP_TURBO): TypeError: init() takes 1 positional argument but 2 were given

请问命令参数错了,还是opencv-python版本有问题?

Chaphlagical commented 4 months ago

~/Deblur-GS# python train.py -s exblur_release/bench --eva Traceback (most recent call last): File "train.py", line 16, in from utils.vis_utils import vis_cameras File "/root/Deblur-GS/utils/vis_utils.py", line 2, in from scene.cameras import cam2world File "/root/Deblur-GS/scene/init.py", line 16, in from scene.dataset_readers import sceneLoadTypeCallbacks File "/root/Deblur-GS/scene/dataset_readers.py", line 24, in from scene.gaussian_model import BasicPointCloud File "/root/Deblur-GS/scene/gaussian_model.py", line 14, in from utils.general_utils import inverse_sigmoid, get_expon_lr_func, build_rotation File "/root/Deblur-GS/utils/general_utils.py", line 135, in def visualize_depth(depth, minmax=None, cmap=cv2.COLORMAP_TURBO): TypeError: init() takes 1 positional argument but 2 were given

请问命令参数错了,还是opencv-python版本有问题?

是不是应该--eval而不是eva

wing158 commented 4 months ago

目录前目录结构是: root@d3d0bbce3ea9:~/gs2/Deblur-GS-main/synthetic_release/blurwine/images# ls 000.png 002.png 004.png 006.png 008.png 010.png 012.png 014.png 016.png 018.png 020.png 022.png 024.png 026.png 028.png 030.png 032.png 001.png 003.png 005.png 007.png 009.png 011.png 013.png 015.png 017.png 019.png 021.png 023.png 025.png 027.png 029.png 031.png 033.png root@d3d0bbce3ea9:~/gs2/Deblur-GS-main/synthetic_release/blurwine/images# cd ../../../ root@d3d0bbce3ea9:~/gs2/Deblur-GS-main# python train.py -s synthetic_release/blurwine/ --eval Traceback (most recent call last): File "train.py", line 16, in from utils.vis_utils import vis_cameras File "/root/gs2/Deblur-GS-main/utils/vis_utils.py", line 2, in from scene.cameras import cam2world File "/root/gs2/Deblur-GS-main/scene/init.py", line 16, in from scene.dataset_readers import sceneLoadTypeCallbacks File "/root/gs2/Deblur-GS-main/scene/dataset_readers.py", line 24, in from scene.gaussian_model import BasicPointCloud File "/root/gs2/Deblur-GS-main/scene/gaussian_model.py", line 14, in from utils.general_utils import inverse_sigmoid, get_expon_lr_func, build_rotation File "/root/gs2/Deblur-GS-main/utils/general_utils.py", line 135, in def visualize_depth(depth, minmax=None, cmap=cv2.COLORMAP_TURBO): TypeError: init() takes 1 positional argument but 2 were given

环境变量: Python 3.8.10 (default, Nov 22 2023, 10:22:35) [GCC 9.4.0] on linux Type "help", "copyright", "credits" or "license" for more information.

import cv2 print(cv2.version) 4.9.0 import torch; print(torch.version); 1.12.1+cu116 print(torch.cuda.is_available()) True

执行了 python train.py -s synthetic_release/blurwine/ --eval 仍是报同样的错误

Chaphlagical commented 4 months ago

是torch no_grad的问题,修了一下

wing158 commented 4 months ago

python train.py -s synthetic_release/blurwine/ --eval Traceback (most recent call last): File "train.py", line 16, in from utils.vis_utils import vis_cameras File "/root/gs3/Deblur-GS/utils/vis_utils.py", line 2, in from scene.cameras import cam2world File "/root/gs3/Deblur-GS/scene/init.py", line 19, in from utils.camera_utils import cameraList_from_camInfos, camera_to_JSON File "/root/gs3/Deblur-GS/utils/camera_utils.py", line 12, in from scene.cameras import Camera File "/root/gs3/Deblur-GS/scene/cameras.py", line 21, in class Camera(nn.Module): File "/root/gs3/Deblur-GS/scene/cameras.py", line 177, in Camera def get_test_pose(self): TypeError: init() takes 1 positional argument but 2 were given

=========================================================== 更新后已有改善,引用from utils.vis_utils import vis_cameras 到cameras.py的报错,还需要完善下

=========================================================== 另外去掉: get_test_pose方法的torch no_grad后有下述提示 (visdom 按Y进行不了),按Y: root@d3d0bbce3ea9:~/gs3/Deblur-GS# python train.py -s synthetic_release/blurwine/ --eval Optimizing 0 [14/05 10:15:33] Output folder: ./output/277961bb-f [14/05 10:15:33] Tensorboard not available: not logging progress [14/05 10:15:33] visdom port (127.0.0.1:2333) not open, retry? (y/n) y visdom port (127.0.0.1:2333) not open, retry? (y/n) y visdom port (127.0.0.1:2333) not open, retry? (y/n) y

=========================================================== (visdom ),按N: Traceback (most recent call last): File "/usr/local/lib/python3.8/dist-packages/visdom/init.py", line 756, in _send return self._handle_post( File "/usr/local/lib/python3.8/dist-packages/visdom/init.py", line 720, in _handle_post r = self.session.post(url, data=data) File "/usr/local/lib/python3.8/dist-packages/requests/sessions.py", line 637, in post return self.request("POST", url, data=data, json=json, kwargs) File "/usr/local/lib/python3.8/dist-packages/requests/sessions.py", line 589, in request resp = self.send(prep, send_kwargs) File "/usr/local/lib/python3.8/dist-packages/requests/sessions.py", line 703, in send r = adapter.send(request, **kwargs) File "/usr/local/lib/python3.8/dist-packages/requests/adapters.py", line 519, in send raise ConnectionError(e, request=request) requests.exceptions.ConnectionError: HTTPConnectionPool(host='127.0.0.1', port=2333): Max retries exceeded with url: /env/main (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x7fb122e8b8b0>: Failed to establish a new connection: [Errno 111] Connection refused')) [Errno 111] Connection refused on_close() takes 1 positional argument but 3 were given


train.py 437

安装pip install visdom后 python -m visdom.server -port 2333 再次执行: root@d3d0bbce3ea9:~/gs3/Deblur-GS# python train.py -s synthetic_release/blurwine/ --eval Optimizing 0 [14/05 10:25:42] Output folder: ./output/1a390bf6-6 [14/05 10:25:42] Tensorboard not available: not logging progress [14/05 10:25:42] Setting up a new session...


train.py 437 training(lp.extract(args), op.extract(args), pp.extract(args), args.test_iterations,

train.py 66 training scene = Scene(dataset, gaussians)

init.py 60 init assert False, "Could not recognize scene type!"

AssertionError: Could not recognize scene type!

Chaphlagical commented 4 months ago

之前数据集有问题,可以下载readme更新的数据集再试试

kappo96 commented 4 months ago

我新下载了synthetic_release,还是这个问题 image

Chaphlagical commented 4 months ago

好像是没更新上,现在再试试

giich commented 4 months ago

我新下载了synthetic_release,还是这个问题 image

It is kinda looking for sparse folder but it is not there i guess

Edit: the update is up, just redownload the dataset, and push the midas fix. Im able to train now, though it was a really long journey to run :)))

wing158 commented 4 months ago

解决方法: 1:重新下载整个project的代码,安装依赖及submodule下三个子项目重新安装 2:安装pip install visdom后 python -m visdom.server -port 2333 3:cameras.py需要将 get_test_pose 方法@torch no_grad备注起来 @Chaphlagical 请作者修正下。 4:重新下载exblur_release或synthetic_release数据。 5:目前training正常运行中