javiribera / locating-objects-without-bboxes

PyTorch code for "Locating objects without bounding boxes" - Loss function and trained models
Other
249 stars 52 forks source link

need help for this problem about runing train.py #11

Closed 645873229 closed 4 years ago

645873229 commented 4 years ago

(object_loader) D:\google_download\locating-objects-without-bboxes-master>python -m object-locator.train --train-dir D:/_PNGImages --batch-size 32 --lr 1e-3 --val-dir D:/_PNGImages --optim Adam --save saved_model.ckpt W: Not connected to any Visdom server. You will not visualize any training/validation plot or intermediate image replace ballpark Building network... DONE (took 0.363471 seconds) Epoch 0 (420 images): 0%| | 0/14 [00:00<?, ?it/s]W : Not connected to any Visdom server. You will not visualize any training/validation plot or intermediate image replace ballpark Building network... DONE (took 0.365666 seconds) Epoch 0 (420 images): 0%| | 0/14 [00:00<?, ?it/s]T raceback (most recent call last): Traceback (most recent call last): File "D:\anaconda\envs\object_loader\lib\runpy.py", line 193, in _run_module_as_main File "", line 1, in File "D:\anaconda\envs\object_loader\lib\multiprocessing\spawn.py", line 105, in spawn_main "main", mod_spec) exitcode = _main(fd) File "D:\anaconda\envs\object_loader\lib\multiprocessing\spawn.py", line 114, in _main File "D:\anaconda\envs\object_loader\lib\runpy.py", line 85, in _run_code prepare(preparation_data)exec(code, run_globals)

File "D:\google_download\locating-objects-without-bboxes-master\object-locator\train.py", line 170, in File "D:\anaconda\envs\object_loader\lib\multiprocessing\spawn.py", line 223, in prepare for batch_idx, (imgs, dictionaries) in enumerate(iter_train): _fixup_main_from_name(data['init_main_from_name']) File "D:\anaconda\envs\object_loader\lib\site-packages\tqdm_tqdm.py", line 940, in iter

File "D:\anaconda\envs\object_loader\lib\multiprocessing\spawn.py", line 249, in _fixup_main_from_name alter_sys=True) File "D:\anaconda\envs\object_loader\lib\runpy.py", line 205, in run_module return _run_module_code(code, init_globals, run_name, mod_spec) File "D:\anaconda\envs\object_loader\lib\runpy.py", line 96, in _run_module_code mod_name, mod_spec, pkg_name, script_name) File "D:\anaconda\envs\object_loader\lib\runpy.py", line 85, in _run_code exec(code, run_globals) File "D:\google_download\locating-objects-without-bboxes-master\object-locator\train.py", line 170, in for batch_idx, (imgs, dictionaries) in enumerate(iter_train): File "D:\anaconda\envs\object_loader\lib\site-packages\tqdm_tqdm.py", line 940, in iter for obj in iterable: File "D:\anaconda\envs\object_loader\lib\site-packages\torch\utils\data\dataloader.py", line 278, in iter for obj in iterable: File "D:\anaconda\envs\object_loader\lib\site-packages\torch\utils\data\dataloader.py", line 278, in iter return _MultiProcessingDataLoaderIter(self) File "D:\anaconda\envs\object_loader\lib\site-packages\torch\utils\data\dataloader.py", line 682, in init return _MultiProcessingDataLoaderIter(self) File "D:\anaconda\envs\object_loader\lib\site-packages\torch\utils\data\dataloader.py", line 682, in init w.start() w.start() File "D:\anaconda\envs\object_loader\lib\multiprocessing\process.py", line 105, in start

File "D:\anaconda\envs\object_loader\lib\multiprocessing\process.py", line 105, in start self._popen = self._Popen(self)self._popen = self._Popen(self)

File "D:\anaconda\envs\object_loader\lib\multiprocessing\context.py", line 223, in _Popen File "D:\anaconda\envs\object_loader\lib\multiprocessing\context.py", line 223, in _Popen return _default_context.get_context().Process._Popen(process_obj) File "D:\anaconda\envs\object_loader\lib\multiprocessing\context.py", line 322, in _Popen return Popen(process_obj) File "D:\anaconda\envs\object_loader\lib\multiprocessing\popen_spawn_win32.py", line 65, in init return _default_context.get_context().Process._Popen(process_obj) File "D:\anaconda\envs\object_loader\lib\multiprocessing\context.py", line 322, in _Popen return Popen(process_obj) File "D:\anaconda\envs\object_loader\lib\multiprocessing\popen_spawn_win32.py", line 33, in init reduction.dump(process_obj, to_child) File "D:\anaconda\envs\object_loader\lib\multiprocessing\reduction.py", line 60, in dump prep_data = spawn.get_preparation_data(process_obj._name) File "D:\anaconda\envs\object_loader\lib\multiprocessing\spawn.py", line 143, in get_preparation_data _check_not_importing_main() File "D:\anaconda\envs\object_loader\lib\multiprocessing\spawn.py", line 136, in _check_not_importing_main is not going to be frozen to produce an executable.''') RuntimeError: An attempt has been made to start a new process before the current process has finished its bootstrapping phase.

    This probably means that you are not using fork to start your
    child processes and you have forgotten to use the proper idiom
    in the main module:

        if __name__ == '__main__':
            freeze_support()
            ...

    The "freeze_support()" line can be omitted if the program
    is not going to be frozen to produce an executable.
ForkingPickler(file, protocol).dump(obj)

BrokenPipeError: [Errno 32] Broken pipe

javiribera commented 4 years ago

Same issue as #9. Can you try, as mentioned there, in a Unix machine? I have only seen this in Windows so far.

645873229 commented 4 years ago

Same issue as #9. Can you try, as mentioned there, in a Unix machine? I have only seen this in Windows so far.

sorry,I have some problems about runing train.py .although you have updated the readme.md

Traceback (most recent call last): File "D:\anaconda\envs\object_loader\lib\runpy.py", line 193, in _run_module_as_main "main", mod_spec) File "D:\anaconda\envs\object_loader\lib\runpy.py", line 85, in _run_code exec(code, run_globals) File "D:\google_download\locating-objects\locating-objects-without-bboxes-master\object-locator\train.py", line 78, in env_name=args.visdom_env) File "D:\google_download\locating-objects\locating-objects-without-bboxes-master\object-locator\logger.py", line 56, in init port=port) File "D:\anaconda\envs\object_loader\lib\site-packages\visdom__init.py", line 309, in init__ self.server_base_name = server[server.index("//") + 2:] ValueError: substring not found

I think it might be caused by "--visdom-env mytrainingsession --visdom-server localhost"

javiribera commented 4 years ago

Are you running visdom in your localhost?

645873229 commented 4 years ago

Are you running visdom in your localhost? thank you for your help ,now train.py is runing . new problem occurs.I found gpu is used when training.but code gets slow when validation.why gpu is not be used when validation

javiribera commented 4 years ago

It seems that the problem that created this issue is solved. Open a new issue with the description of your problem if you found a new problem.