[Kwiver-users] [MapTk] : Configuration File Errors

R. Pelapur rpelapur at archlinux.info
Mon Jan 18 15:27:06 EST 2016


Hello,
With the new build (commit #59472c9a13db56aee2fd162ae71cabd6e39e6792) 
now I am getting configuration file errors (config file is the same as 
the one from what I was running before which did work and is basically 
the same as the one under /tools/config/)


2016-01-18 14:11:41.322 WARN algorithm.cxx(237): Configuration Failure: 
invalid option
2016-01-18 14:11:41.322 WARN algorithm.cxx(237): 
output_homography_generator:type =
2016-01-18 14:11:41.322 WARN algorithm.cxx(237):    valid options are
Config Check Fail: output_homography_generator configuration check failed
2016-01-18 14:11:41.324 WARN algorithm.cxx(237): Configuration Failure: 
invalid option
2016-01-18 14:11:41.324 WARN algorithm.cxx(237): feature_tracker:type = core
2016-01-18 14:11:41.324 WARN algorithm.cxx(237):    valid options are
Config Check Fail: feature_tracker configuration check failed
2016-01-18 14:11:41.324 WARN algorithm.cxx(237): Configuration Failure: 
invalid option
2016-01-18 14:11:41.324 WARN algorithm.cxx(237): image_reader:type = ocv
2016-01-18 14:11:41.324 WARN algorithm.cxx(237):    valid options are
Config Check Fail: image_reader configuration check failed
2016-01-18 14:11:41.324 WARN algorithm.cxx(237): Configuration Failure: 
invalid option
2016-01-18 14:11:41.324 WARN algorithm.cxx(237): convert_image:type = bypass
2016-01-18 14:11:41.324 WARN algorithm.cxx(237):    valid options are
Config Check Fail: convert_image configuration check failed
ERROR: Configuration not valid.

Weird part is that there are no 'valid options'. After using -c -o 
options to correct the config file iteratively the executable doesn't 
give any valid options for feature_tacker:type, image_reader:type and 
convert_image:type.

MapTk has been linked against :
1: OpenCV ( 2.4.11) (MapTk use OpenCV)
2: vxl (commit #16dd9bd26af5d530aa2cb4a887b372a157bc4961 - Sat Jan 16 
2016) (MapTk use vxl)
3: Vital (commit  #f36957711d08be858e1c05ed170dae3fae75c7da - Tuesday 
Jan 5 2016)
4: ceres-solver (commit #e9420e7a0e4254337730f574a3242d7e056cbfe8 - Sun 
Jul 12 2015) (MapTk use CERES)


Using GCC 4.9.2 (CentOS 6).

Same build configuration and the attached config file but with an older 
MapTk commit works without problems.




-------------- next part --------------

# Algorithm to use for 'convert_image'.
# Must be one of the following options:
# 	- bypass :: Performs no conversion and returns the given image container
convert_image:type = bypass

# A majority of the time, mask images are a single channel, however it is
# feasibly possible that certain implementations may use multi-channel masks. If
# this is true we will expect multiple-channel mask images, warning when a
# single-channel mask is provided. If this is false we error upon seeing a
# multi-channel mask image.
expect_multichannel_masks = false

feature_tracker:core:descriptor_extractor:ocv:extractor:Feature2D.SURF:extended = false
feature_tracker:core:descriptor_extractor:ocv:extractor:Feature2D.SURF:hessianThreshold = 100
feature_tracker:core:descriptor_extractor:ocv:extractor:Feature2D.SURF:nOctaveLayers = 3
feature_tracker:core:descriptor_extractor:ocv:extractor:Feature2D.SURF:nOctaves = 4
feature_tracker:core:descriptor_extractor:ocv:extractor:Feature2D.SURF:upright = true

# The OpenCV cv::Algorithm type to use for 'extractor'.
feature_tracker:core:descriptor_extractor:ocv:extractor:type = Feature2D.SURF

# Algorithm to use for 'descriptor_extractor'.
# Must be one of the following options:
# 	- ocv
feature_tracker:core:descriptor_extractor:type = ocv

feature_tracker:core:feature_detector:ocv:detector:Feature2D.Grid:detector:Feature2D.SURF:extended = false
feature_tracker:core:feature_detector:ocv:detector:Feature2D.Grid:detector:Feature2D.SURF:hessianThreshold = 100
feature_tracker:core:feature_detector:ocv:detector:Feature2D.Grid:detector:Feature2D.SURF:nOctaveLayers = 3
feature_tracker:core:feature_detector:ocv:detector:Feature2D.Grid:detector:Feature2D.SURF:nOctaves = 4
feature_tracker:core:feature_detector:ocv:detector:Feature2D.Grid:detector:Feature2D.SURF:upright = true

# The OpenCV cv::Algorithm type to use for 'detector'.
feature_tracker:core:feature_detector:ocv:detector:Feature2D.Grid:detector:type = Feature2D.SURF

feature_tracker:core:feature_detector:ocv:detector:Feature2D.Grid:gridCols = 4
feature_tracker:core:feature_detector:ocv:detector:Feature2D.Grid:gridRows = 6
feature_tracker:core:feature_detector:ocv:detector:Feature2D.Grid:maxTotalKeypoints = 1000

# The OpenCV cv::Algorithm type to use for 'detector'.
feature_tracker:core:feature_detector:ocv:detector:type = Feature2D.Grid

# Algorithm to use for 'feature_detector'.
# Must be one of the following options:
# 	- ocv
feature_tracker:core:feature_detector:type = ocv

# The OpenCV cv::Algorithm type to use for 'matcher'.
feature_tracker:core:feature_matcher:homography_guided:feature_matcher1:ocv:matcher:type = DescriptorMatcher.FlannBasedMatcher

# Algorithm to use for 'feature_matcher1'.
# Must be one of the following options:
# 	- homography_guided
# 	- ocv
# 	- vxl_constrained
feature_tracker:core:feature_matcher:homography_guided:feature_matcher1:type = ocv

# Algorithm to use for 'feature_matcher2'.
# Must be one of the following options:
# 	- homography_guided
# 	- ocv
# 	- vxl_constrained
feature_tracker:core:feature_matcher:homography_guided:feature_matcher2:type =

# Algorithm to use for 'filter_features'.
# Must be one of the following options:
# 	- magnitude
feature_tracker:core:feature_matcher:homography_guided:filter_features:type =

# Algorithm to use for 'homography_estimator'.
# Must be one of the following options:
# 	- ocv
# 	- vxl
feature_tracker:core:feature_matcher:homography_guided:homography_estimator:type = vxl

# The acceptable error distance (in pixels) between warped and measured points
# to be considered an inlier match.
feature_tracker:core:feature_matcher:homography_guided:inlier_scale = 5

# The minimum required inlier point count. If there are less than this many
# inliers, no matches will be output.
feature_tracker:core:feature_matcher:homography_guided:min_required_inlier_count = 0

# The minimum required percentage of inlier points. If the percentage of points
# considered inliers is less than this amount, no matches will be output.
feature_tracker:core:feature_matcher:homography_guided:min_required_inlier_percent = 0

# Algorithm to use for 'feature_matcher'.
# Must be one of the following options:
# 	- homography_guided
# 	- ocv
# 	- vxl_constrained
feature_tracker:core:feature_matcher:type = homography_guided

# Number of close loops methods we want to use.
feature_tracker:core:loop_closer:multi_method:count = 2

# Should bad frame detection be enabled? This option will attempt to bridge the
# gap between frames which don't meet certain criteria (percentage of feature
# points tracked) and will instead attempt to match features on the current
# frame against past frames to meet this criteria. This is useful when there can
# be bad frames.
feature_tracker:core:loop_closer:multi_method:method1:bad_frames_only:enabled = true

# The OpenCV cv::Algorithm type to use for 'matcher'.
feature_tracker:core:loop_closer:multi_method:method1:bad_frames_only:feature_matcher:homography_guided:feature_matcher1:ocv:matcher:type = DescriptorMatcher.FlannBasedMatcher

# Algorithm to use for 'feature_matcher1'.
# Must be one of the following options:
# 	- homography_guided
# 	- ocv
# 	- vxl_constrained
feature_tracker:core:loop_closer:multi_method:method1:bad_frames_only:feature_matcher:homography_guided:feature_matcher1:type = ocv

# Algorithm to use for 'feature_matcher2'.
# Must be one of the following options:
# 	- homography_guided
# 	- ocv
# 	- vxl_constrained
feature_tracker:core:loop_closer:multi_method:method1:bad_frames_only:feature_matcher:homography_guided:feature_matcher2:type =

feature_tracker:core:loop_closer:multi_method:method1:bad_frames_only:feature_matcher:homography_guided:feature_matcher:ocv:matcher:type = DescriptorMatcher.FlannBasedMatcher
feature_tracker:core:loop_closer:multi_method:method1:bad_frames_only:feature_matcher:homography_guided:feature_matcher:type = ocv

# Algorithm to use for 'filter_features'.
# Must be one of the following options:
# 	- magnitude
feature_tracker:core:loop_closer:multi_method:method1:bad_frames_only:feature_matcher:homography_guided:filter_features:type =

# Algorithm to use for 'homography_estimator'.
# Must be one of the following options:
# 	- ocv
# 	- vxl
feature_tracker:core:loop_closer:multi_method:method1:bad_frames_only:feature_matcher:homography_guided:homography_estimator:type = vxl

# The acceptable error distance (in pixels) between warped and measured points
# to be considered an inlier match.
feature_tracker:core:loop_closer:multi_method:method1:bad_frames_only:feature_matcher:homography_guided:inlier_scale = 5

# The minimum required inlier point count. If there are less than this many
# inliers, no matches will be output.
feature_tracker:core:loop_closer:multi_method:method1:bad_frames_only:feature_matcher:homography_guided:min_required_inlier_count = 0

# The minimum required percentage of inlier points. If the percentage of points
# considered inliers is less than this amount, no matches will be output.
feature_tracker:core:loop_closer:multi_method:method1:bad_frames_only:feature_matcher:homography_guided:min_required_inlier_percent = 0

# Algorithm to use for 'feature_matcher'.
# Must be one of the following options:
# 	- homography_guided
# 	- ocv
# 	- vxl_constrained
feature_tracker:core:loop_closer:multi_method:method1:bad_frames_only:feature_matcher:type = homography_guided

# Maximum number of frames to search in the past for matching to the end of the
# last shot.
feature_tracker:core:loop_closer:multi_method:method1:bad_frames_only:max_search_length = 5

# Number of frames for a new shot to be considered valid before attempting to
# stitch to prior shots.
feature_tracker:core:loop_closer:multi_method:method1:bad_frames_only:new_shot_length = 2

# The required percentage of features needed to be matched for a stitch to be
# considered successful (value must be between 0.0 and 1.0).
feature_tracker:core:loop_closer:multi_method:method1:bad_frames_only:percent_match_req = 0.34999999999999998

# Algorithm to use for 'method1'.
# Must be one of the following options:
# 	- bad_frames_only :: Attempts short-term loop closure based on percentage of
# feature points tracked.
# 	- multi_method :: Iteratively run multiple loop closure algorithms
# 	- vxl_homography_guided
feature_tracker:core:loop_closer:multi_method:method1:type = bad_frames_only

# Algorithm to use for 'method2'.
# Must be one of the following options:
# 	- bad_frames_only :: Attempts short-term loop closure based on percentage of
# feature points tracked.
# 	- multi_method :: Iteratively run multiple loop closure algorithms
# 	- vxl_homography_guided
feature_tracker:core:loop_closer:multi_method:method2:type = vxl_homography_guided

# Term which controls when we make new loop closure checkpoints. Everytime the
# percentage of tracked features drops below this threshold, we generate a new
# checkpoint.
feature_tracker:core:loop_closer:multi_method:method2:vxl_homography_guided:checkpoint_percent_overlap = 0.69999999999999996

# Is long term loop closure enabled?
feature_tracker:core:loop_closer:multi_method:method2:vxl_homography_guided:enabled = true

# The OpenCV cv::Algorithm type to use for 'matcher'.
feature_tracker:core:loop_closer:multi_method:method2:vxl_homography_guided:feature_matcher:homography_guided:feature_matcher1:ocv:matcher:type = DescriptorMatcher.FlannBasedMatcher

# Algorithm to use for 'feature_matcher1'.
# Must be one of the following options:
# 	- homography_guided
# 	- ocv
# 	- vxl_constrained
feature_tracker:core:loop_closer:multi_method:method2:vxl_homography_guided:feature_matcher:homography_guided:feature_matcher1:type = ocv

# Algorithm to use for 'feature_matcher2'.
# Must be one of the following options:
# 	- homography_guided
# 	- ocv
# 	- vxl_constrained
feature_tracker:core:loop_closer:multi_method:method2:vxl_homography_guided:feature_matcher:homography_guided:feature_matcher2:type =


# Algorithm to use for 'filter_features'.
# Must be one of the following options:
# 	- magnitude
feature_tracker:core:loop_closer:multi_method:method2:vxl_homography_guided:feature_matcher:homography_guided:filter_features:type =

# Algorithm to use for 'homography_estimator'.
# Must be one of the following options:
# 	- ocv
# 	- vxl
feature_tracker:core:loop_closer:multi_method:method2:vxl_homography_guided:feature_matcher:homography_guided:homography_estimator:type = vxl

# The acceptable error distance (in pixels) between warped and measured points
# to be considered an inlier match.
feature_tracker:core:loop_closer:multi_method:method2:vxl_homography_guided:feature_matcher:homography_guided:inlier_scale = 5

# The minimum required inlier point count. If there are less than this many
# inliers, no matches will be output.
feature_tracker:core:loop_closer:multi_method:method2:vxl_homography_guided:feature_matcher:homography_guided:min_required_inlier_count = 20

# The minimum required percentage of inlier points. If the percentage of points
# considered inliers is less than this amount, no matches will be output.
feature_tracker:core:loop_closer:multi_method:method2:vxl_homography_guided:feature_matcher:homography_guided:min_required_inlier_percent = 0.05

# Algorithm to use for 'feature_matcher'.
# Must be one of the following options:
# 	- homography_guided
# 	- ocv
# 	- vxl_constrained
feature_tracker:core:loop_closer:multi_method:method2:vxl_homography_guided:feature_matcher:type = homography_guided

# Optional output location for a homography text file.
feature_tracker:core:loop_closer:multi_method:method2:vxl_homography_guided:homography_filename =

# Maximum past search distance in terms of number of checkpoints.
feature_tracker:core:loop_closer:multi_method:method2:vxl_homography_guided:max_checkpoint_frames = 10000

# Allow for the possibility of a frame, N, to have a reference frame, A, when a
# frame M < N has a reference frame B > A (assuming frames were sequentially
# iterated over with this algorithm).
feature_tracker:core:loop_closer:multi_method:method2:vxl_homography_guided:ref_computer:core:allow_ref_frame_regression = true

# Backprojection threshold in terms of L2 distance (number of pixels)
feature_tracker:core:loop_closer:multi_method:method2:vxl_homography_guided:ref_computer:core:backproject_threshold = 4

# Algorithm to use for 'estimator'.
# Must be one of the following options:
# 	- ocv
# 	- vxl
feature_tracker:core:loop_closer:multi_method:method2:vxl_homography_guided:ref_computer:core:estimator:type = vxl

# After how many frames should we forget all info about a track?
feature_tracker:core:loop_closer:multi_method:method2:vxl_homography_guided:ref_computer:core:forget_track_threshold = 5

# The acceptable error distance (in pixels) between warped and measured points
# to be considered an inlier match.
feature_tracker:core:loop_closer:multi_method:method2:vxl_homography_guided:ref_computer:core:inlier_scale = 2

# Minimum number of matches required between source and reference planes for
# valid homography estimation.
feature_tracker:core:loop_closer:multi_method:method2:vxl_homography_guided:ref_computer:core:min_matches_threshold = 4

# Minimum track length to use for homography regression
feature_tracker:core:loop_closer:multi_method:method2:vxl_homography_guided:ref_computer:core:min_track_length = 1

# Should we remove extra points if the backproject error is high?
feature_tracker:core:loop_closer:multi_method:method2:vxl_homography_guided:ref_computer:core:use_backproject_error = false

# Algorithm to use for 'ref_computer'.
# Must be one of the following options:
# 	- core :: Default online sequential-frame reference homography estimator
feature_tracker:core:loop_closer:multi_method:method2:vxl_homography_guided:ref_computer:type = core

# Algorithm to use for 'loop_closer'.
# Must be one of the following options:
# 	- bad_frames_only :: Attempts short-term loop closure based on percentage of
# feature points tracked.
# 	- multi_method :: Iteratively run multiple loop closure algorithms
# 	- vxl_homography_guided
feature_tracker:core:loop_closer:type = multi_method

# Algorithm to use for 'feature_tracker'.
# Must be one of the following options:
# 	- core
feature_tracker:type = core

# Path to an input file containing new-line separated paths to sequential image
# files.
image_list_file = abq_215_list.txt

# Algorithm to use for 'image_reader'.
# Must be one of the following options:
# 	- ocv
# 	- vxl
image_reader:type = ocv

# If true, all mask images will be inverted after loading. This is useful if
# mask images read in use positive values to indicated masked areas instead of
# non-masked areas.
invert_masks = false

# Optional path to an input file containing new-line separated paths to mask
# images. This list should be parallel in association to files specified in
# ``image_list_file``. Mask image must be the same size as the image they are
# associated with.
#
# Leave this blank if no image masking is desired.
mask_list_file =

# Optional path to a file to write source-to-reference homographies for each
# frame. Leave blank to disable this output. The output_homography_generator
# algorithm type only needs to be set if this is set.
output_homography_file = abq_215_another_test_homography.txt

# Allow for the possibility of a frame, N, to have a reference frame, A, when a
# frame M < N has a reference frame B > A (assuming frames were sequentially
# iterated over with this algorithm).
output_homography_generator:core:allow_ref_frame_regression = true

# Backprojection threshold in terms of L2 distance (number of pixels)
output_homography_generator:core:backproject_threshold = 4

# Algorithm to use for 'estimator'.
# Must be one of the following options:
# 	- ocv
# 	- vxl
output_homography_generator:core:estimator:type = vxl

# After how many frames should we forget all info about a track?
output_homography_generator:core:forget_track_threshold = 5

# The acceptable error distance (in pixels) between warped and measured points
# to be considered an inlier match.
output_homography_generator:core:inlier_scale = 2

# Minimum number of matches required between source and reference planes for
# valid homography estimation.
output_homography_generator:core:min_matches_threshold = 4

# Minimum track length to use for homography regression
output_homography_generator:core:min_track_length = 1

# Should we remove extra points if the backproject error is high?
output_homography_generator:core:use_backproject_error = false

# Algorithm to use for 'output_homography_generator'.
# Must be one of the following options:
# 	- core :: Default online sequential-frame reference homography estimator
output_homography_generator:type = core

# Path to a file to write output tracks to. If this file exists, it will be
# overwritten.
output_tracks_file =  abq_215_another_test_tracks.txt


More information about the Kwiver-users mailing list