image_undistorter --output_type PMVS uses autodetected CPU number in option-all

78 views
Skip to first unread message

douglasg...@gmail.com

unread,
Mar 13, 2018, 11:00:55 AM3/13/18
to COLMAP
Hi,

Since I'm running without a GPU, I'm using pmvs2 for dense reconstruction.

The previous colmap steps had a num_threads option.  With image_undistorter, the following always fills in an autodetected number of CPUs for the node for the CPU option in option-all.  I couldn't find an option to override this.

$ colmap image_undistorter --image_path $PWD/images/ --input_path $PWD/sparse/0 --output_path $PWD/dense --output_type PMVS

$ cat dense/pmvs/option-all
# Generated by COLMAP - all images, no clustering.
level 1
csize 2
threshold 0.7
wsize 7
minImageNum 3
CPU 40
setEdge 0
useBound 0
useVisData 1
sequence -1
maxAngle 10
quad 2.0
timages 22 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21
oimages 0

It's always setting this to std::thread::hardware_concurrency().

I've been running previous steps explicitly requesting 8 threads.  Just now I'm working on a shared work node with hyperthreading enabled, but might want to farm pmvs2 work out to compute nodes which do not hyperthread.

I can get around sed'ing dense/pmvs/option-all, but it would be nice to have an option available to set this in the PMVS options, corresponding to the num_threads options available for other colmap steps.

Best,

Douglas

Johannes Schönberger

unread,
Mar 21, 2018, 12:08:57 PM3/21/18
to COLMAP
You are right, that this option disappeared. I will reintegrate that option over the next days and will let you know once the changes are committed to Github.

Thanks,
Johannes
Reply all
Reply to author
Forward
0 new messages