[Kwiver-users] maptk_bundle_adjust_tracks and Vital Boost Filesystem Replacement Issues
Kyle.Brooks at L-3Com.com
Kyle.Brooks at L-3Com.com
Mon Feb 1 13:43:29 EST 2016
Matt,
The images loaded fine for maptk_track_features but it used OpenCV, image_reader:type = ocv. I changed the analyze configuration to do the same and it works now, thanks for the suggestion.
Thanks,
Kyle
From: Matthew Leotta [mailto:matt.leotta at kitware.com]
Sent: Monday, February 01, 2016 1:30 PM
To: Brooks, Kyle @ ESG - ISS - CIN
Cc: kwiver-users at public.kitware.com; Puchala, Joseph @ ESG - ISS - CIN; Marin-McGee, Maider @ ESG - ISS - CIN; Dapore, Alex @ ESG - ISS - CIN
Subject: Re: [Kwiver-users] maptk_bundle_adjust_tracks and Vital Boost Filesystem Replacement Issues
Kyle,
I don’t have a solution off hand. What file format are your images? Did these same images load without complaint when you ran maptk_track_features? Did your config file for maptk_track_features use OpenCV (ocv) to load the images instead of VXL? You could try to use OpenCV to load the images in maptk_analyze_tracks, but that’s more of a workaround than a fix for the problem at hand.
—Matt
On Feb 1, 2016, at 12:42 PM, Kyle.Brooks at L-3Com.com wrote:
Thanks Matt,
I am also having issues with a segmentation fault in maptk_analyze_tracks, here is the backtrace:
maptk_analyze_tracks_debug [C/C++ Application]
maptk_analyze_tracks [8098] [cores: 2]
Thread [1] 8098 [core: 2] (Suspended : Signal : SIGSEGV:Segmentation fault)
kwiver::maptk::vxl::image_io::load_(std::string const&) const at 0x7fffdc98f4e4
kwiver::vital::algo::image_io::load(std::string const&) const at 0x7ffff74a9725
maptk_main() at analyze_tracks.cxx:347 0x40dfc4
main() at analyze_tracks.cxx:364 0x40eb99
gdb
It happens when it tries to load the first image in our input to generate the features images at this line in analyze_tracks.cxx:364:
kwiver::vital::image_container_sptr image = image_reader->load( image_paths[i] );
I checked and the paths in the image_paths vector look correct and are sorted. I don’t have a debug version of libvital or vxl install so I don’t have the symbols to dige down beyond Map-TK.
I can build and install a debug version of VXL and Vital if we need it but I’m hoping you have another quick fix for this on too ☺.
Thanks,
Kyle
From: Matthew Leotta [mailto:matt.leotta at kitware.com]
Sent: Monday, February 01, 2016 11:51 AM
To: Brooks, Kyle @ ESG - ISS - CIN
Cc: kwiver-users at public.kitware.com; Puchala, Joseph @ ESG - ISS - CIN; Marin-McGee, Maider @ ESG - ISS - CIN
Subject: Re: [Kwiver-users] maptk_bundle_adjust_tracks and Vital Boost Filesystem Replacement Issues
Kyle,
Yes, you are absolutely correct. Thank you for reporting this issue. This is a bug that was introduced as part of the conversion to use Vital. We actually just discovered this bug a couple of weeks ago and made a fix in our internal development branch that is pending public release approval. I had forgotten that this bug might also affect the public master branch. I have rebased our internal fix and pushed it to Github. The pull request is here:
https://github.com/Kitware/maptk/pull/135
I will merge this after the continuous integration tests pass.
—Matt
On Feb 1, 2016, at 11:20 AM, Kyle.Brooks at L-3Com.com wrote:
Hello,
When I run maptk_bundle_adjust_tracks I get this error message:
loading track file: clif_tracks.txt
loaded 251400 tracks
filtered down to 93717 long tracks
track filtering: 0.200000 sec CPU, 0.193117 sec wall
loading POS files
ERROR: No POS files from input set match input image frames. Check POS files!
Initializing cameras from POS files: 0.000000 sec CPU, 0.005963 sec wall
ERROR: Failed to load input cameras
An older version of Map-TK which was used for the CVPR 2015 tutorial did not have this issue. I debugged the issue and I believe I tracked it down to this commit:
commit 22dcab9722c26ce299d7247bec9853d36709b497
Author: Linus Sherrill <linus.sherrill at kitware.com>
Date: Mon Sep 14 12:35:49 2015 -0400
Convert to use new vital without boost
Convert use of boost file path to vital::path_t
Use kwiversys support to replace boost file system calls
It looks like the intent of this commit was to replace boost::filesystem::path::stem() which returns the filename without the path or last extension with kwiver::SystemTools::GetFilenameWithoutExtension() which does a similar function but instead replaced it with kwiver::SystemTools::GetFilenamePath() which returns the path of the folder that contains the file but not the filename itself. Is this correct?
I am going to attempt replacing the calls to kwiver::SystemTools::GetFilenamePath() with kwiver::SystemTools::GetFilenameWithoutExtension () and see if this fixes the issue.
Thanks,
Kyle Brooks, Member of the Technical Staff
L-3 Cincinnati Electronics
_______________________________________________
Kwiver-users mailing list
Kwiver-users at public.kitware.com
http://public.kitware.com/mailman/listinfo/kwiver-users
More information about the Kwiver-users
mailing list