When I use a different matching method, I change "matching_algorithm": "mgm" in the config.json file to "matching_algorithm": "sgbm", but an error is reported:
(S2P) lph@ubuntu:~/s2p$ s2p tests/data/input_pair/config.json
tile size: 286 286
total number of tiles: 49 (7 x 7)
4) running stereo matching...
multiprocessing.pool.RemoteTraceback:
"""
Traceback (most recent call last):
File "/home/lph/anaconda3/lib/python3.9/multiprocessing/pool.py", line 125, in worker
result = (True, func(*args, kwds))
File "/home/lph/s2p/s2p/parallel.py", line 43, in tilewise_wrapper
out = fun(args)
File "/home/lph/s2p/s2p/init.py", line 184, in stereo_matching
block_matching.compute_disparity_map(rect1, rect2, disp, mask,
File "/home/lph/s2p/s2p/block_matching.py", line 128, in compute_disparity_map
common.run('sgbm {} {} {} {} {} {} {} {} {} {}'.format(im1, im2,
File "/home/lph/s2p/s2p/common.py", line 92, in run
subprocess.run(cmd, shell=shell, stdout=sys.stdout, stderr=sys.stderr,
File "/home/lph/anaconda3/lib/python3.9/subprocess.py", line 505, in run
with Popen(popenargs, kwargs) as process:
File "/home/lph/anaconda3/lib/python3.9/subprocess.py", line 951, in init
self._execute_child(args, executable, preexec_fn, close_fds,
File "/home/lph/anaconda3/lib/python3.9/subprocess.py", line 1821, in _execute_child
raise child_exception_type(errno_num, err_msg, err_filename)
FileNotFoundError: [Errno 2] No such file or directory: 'sgbm'
"""
The above exception was the direct cause of the following exception:
Traceback (most recent call last):
File "/home/lph/anaconda3/bin/s2p", line 33, in
sys.exit(load_entry_point('s2p', 'console_scripts', 's2p')())
File "/home/lph/s2p/s2p/cli.py", line 25, in main
s2p.main(user_cfg, start_from=args.start_from)
File "/home/lph/s2p/s2p/init.py", line 590, in main
parallel.launch_calls(stereo_matching, tiles_pairs, nb_workers_stereo,
File "/home/lph/s2p/s2p/parallel.py", line 102, in launch_calls
outputs.append(r.get(timeout))
File "/home/lph/anaconda3/lib/python3.9/multiprocessing/pool.py", line 771, in get
raise self._value
FileNotFoundError: [Errno 2] No such file or directory: 'sgbm'
When I use a different matching method, I change "matching_algorithm": "mgm" in the config.json file to "matching_algorithm": "sgbm", but an error is reported:
(S2P) lph@ubuntu:~/s2p$ s2p tests/data/input_pair/config.json tile size: 286 286 total number of tiles: 49 (7 x 7)
discarding masked tiles... done 49 / 49 tiles Elapsed time: 0:00:00.395041
1) correcting pointing locally... done 36 / 36 tiles Elapsed time: 0:00:12.690004
2) correcting pointing globally... Elapsed time: 0:00:00.026180
3) rectifying tiles... done 36 / 36 tiles Elapsed time: 0:00:09.774118
4) running stereo matching... multiprocessing.pool.RemoteTraceback: """ Traceback (most recent call last): File "/home/lph/anaconda3/lib/python3.9/multiprocessing/pool.py", line 125, in worker result = (True, func(*args, kwds)) File "/home/lph/s2p/s2p/parallel.py", line 43, in tilewise_wrapper out = fun(args) File "/home/lph/s2p/s2p/init.py", line 184, in stereo_matching block_matching.compute_disparity_map(rect1, rect2, disp, mask, File "/home/lph/s2p/s2p/block_matching.py", line 128, in compute_disparity_map common.run('sgbm {} {} {} {} {} {} {} {} {} {}'.format(im1, im2, File "/home/lph/s2p/s2p/common.py", line 92, in run subprocess.run(cmd, shell=shell, stdout=sys.stdout, stderr=sys.stderr, File "/home/lph/anaconda3/lib/python3.9/subprocess.py", line 505, in run with Popen(popenargs, kwargs) as process: File "/home/lph/anaconda3/lib/python3.9/subprocess.py", line 951, in init self._execute_child(args, executable, preexec_fn, close_fds, File "/home/lph/anaconda3/lib/python3.9/subprocess.py", line 1821, in _execute_child raise child_exception_type(errno_num, err_msg, err_filename) FileNotFoundError: [Errno 2] No such file or directory: 'sgbm' """
The above exception was the direct cause of the following exception:
Traceback (most recent call last): File "/home/lph/anaconda3/bin/s2p", line 33, in
sys.exit(load_entry_point('s2p', 'console_scripts', 's2p')())
File "/home/lph/s2p/s2p/cli.py", line 25, in main
s2p.main(user_cfg, start_from=args.start_from)
File "/home/lph/s2p/s2p/init.py", line 590, in main
parallel.launch_calls(stereo_matching, tiles_pairs, nb_workers_stereo,
File "/home/lph/s2p/s2p/parallel.py", line 102, in launch_calls
outputs.append(r.get(timeout))
File "/home/lph/anaconda3/lib/python3.9/multiprocessing/pool.py", line 771, in get
raise self._value
FileNotFoundError: [Errno 2] No such file or directory: 'sgbm'