GithubHelp home page GithubHelp logo

kitware / telesculptor Goto Github PK

View Code? Open in Web Editor NEW
600.0 52.0 147.0 40.63 MB

TeleSculptor: Aerial Photogrammetry Application powered by KWIVER

License: Other

CMake 6.52% C++ 81.62% Python 7.55% Shell 0.48% Ruby 3.41% Objective-C++ 0.05% Dockerfile 0.26% C 0.12%
photogrammetry kwiver kitware c-plus-plus aerial-imagery gui-application

telesculptor's People

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

telesculptor's Issues

Download size

What is the approximate size of the files downloaded while building?

Problems about [maptk_track_features] and [maptk_bundle_adjust_tracks]

My evironment:
Boost 1.58 ,
Eigen 3.25 ,
opencv 2.4.11 (the latest version 3.0 can't work with maptk, because it doesn't have Algorithm::_create() ),
proj 4.91 ,
VXL 1.17.
OS: Ubuntu 14.04.

I build MAP-Tk successfully, and have enabled test in CMake, and passed the test.
But when I run the tools in MAP-Tk, I have met some problems.
Thanks for Matt's help, I got the solution.

About [maptk_track_features]

When I ran maptk_track_features , I can't get the output.
This is the exception I met:

stedraw@stedraw-PC:~/maptk/maptk/bin$ ./maptk_track_features -c  track_feature.conf
File parsed! Contained 102 k/v entries.
OpenCV Error: Bad argument (Unknown matcher name) in create, file /home/stedraw/opencv-2.4.11/modules/features2d/src/matchers.cpp, line 497
[---] Ignore the above error message, it will be handled. OpenCV is silly.
OpenCV Error: Bad argument (Unknown matcher name) in create, file /home/stedraw/opencv-2.4.11/modules/features2d/src/matchers.cpp, line 497
[---] Ignore the above error message, it will be handled. OpenCV is silly.
Exception caught: Path does not exist: ""

solution(from Matt's letter):

This is most likely related to loading image files. Your config file should have “image_list_file” set to a path to a text file in which each line in the file is a path to one image to load (i.e. each frame of video). What is the contents of your image list file? Is it empty or does it have a blank line?

So I checked my "image_list_file.txt", and delete the blank line at the last of my file. Then it works, and I could get the feature tracks file.


See issue #75 for the other issue that was originally described here


Thanks for Matt's help. And if you have met some problems about MAP-Tk, you can join the kwiver-users mailing list (see the README.md in MAP-Tk)and post question there. (^_^)

maptk_bundle_adjust_tracks exception thrown with kwiver_wami dataset

Hello,
I am using commit 26c3a2c of the master branch (with an added fix to properly write out the tracks.txt file in track_features.cxx).

An exception is thrown when running maptk_bundle_adjust_tracks on the example dataset kwiver_wami_set_1 (Exception caught: _Map_base::at). It looks like the exception occurs when it tries to set the local origin while initializing the cameras with metadata. Here is a rough trace to the exception:
Bundle_adjust_tracks.cxx:604 (maptk_main) -> bundle_adjust_tracks.cxx:382 (load_input_cameras) -> local_geo_cs.cxx:211 (initialize_cameras_with_metadata) -> local_geo_cs.cxx:82 (set_origin)

Here are the last few lines of output before the exception occurred:
2017-08-22 08:10:16.608 DEBUG config_block_io.cxx(307): Read config file "./maptk_bundle_adjust_tracks.conf"
2017-08-22 08:10:16.747 INFO bundle_adjust_tracks.cxx(514): loading track file: results/tracks.txt
2017-08-22 08:10:31.355 DEBUG bundle_adjust_tracks.cxx(517): loaded 104869 tracks
2017-08-22 08:10:39.903 DEBUG bundle_adjust_tracks.cxx(531): filtered down to 5449 long tracks
track filtering - elapsed time: 8.64224 sec
2017-08-22 08:10:40.12 INFO bundle_adjust_tracks.cxx(558): Reading Video
2017-08-22 08:10:40.771 ERROR bundle_adjust_tracks.cxx(911): Exception caught: _Map_base::at

Thanks in advance for any help fixing this issue!

TeleSculptor build fail, no GUISupportQt found. How to build VTK with GUISupportQt?

Hello,

I am using openSUSE. I want to build VTK and TeleSculptor.
I build VTK 9.0.1 with these flags.

     -DVTK_BUILD_ALL_MODULES=OFF
     -DVTK_BUILD_DOCUMENTATION=OFF
     -DVTK_BUILD_EXAMPLES=OFF
     -DBUILD_SHARED_LIBS=ON
     -DOpenGL_GL_PREFERENCE=GLVND
     -DVTK_USE_TK=OFF
     -DVTK_WRAP_JAVA=OFF
     -DVTK_WRAP_PYTHON=ON
     -DCMAKE_BUILD_TYPE=Release
     -DVTK_PYTHON_VERSION:STRING=3

And TeleSculptor with this.
I turn off TELESCULPTOR_SUPERBUILD because it is trying to connect to network to download extra stuff. I am building on Flatpak sandbox with no network.

       -DTELESCULPTOR_SUPERBUILD=OFF
       -DCMAKE_BUILD_TYPE:STRING=Release
       -DTELESCULPTOR_ENABLE_MANUALS=OFF
       -DTELESCULPTOR_ENABLE_TESTING=OFF

I got this error.


CMake Error at gui/CMakeLists.txt:17 (find_package):
  Found package configuration file:

    /app/lib/cmake/vtk-9.0/vtk-config.cmake

  but it set VTK_FOUND to FALSE so package "VTK" is considered to be NOT
  FOUND.  Reason given by package:

  Could not find the VTK package with the following required components:
  GUISupportQt.



-- Configuring incomplete, errors occurred!

Colorize mesh rather than ground plane based on user-calibrated image

New functionality allows us to select correspondences between a 3D mesh and an image and compute a camera based on this. Currently, this image is visualized projected onto the ground plane. This is not ideal, and it would be better to project the image onto the mesh directly. Additionally, it would be best to do this considering the lens distortion.
2021-05-04-094706_489x469_scrot

GCP edit mode allows adding GCPs in Camera View without a camera

In GCP edit mode (while not in CRP edit mode) I can CTRL click to add green/white GCPs in the Camera View even if there is no camera on the frame. These points disappear and don't come back when changing frames. The way it should work is that I can add GCPs in the Camera View only if a camera model exists, and these point are mapped back into the WorldView and GCP panel and are real 3D GCPs. I should be able to add CRPs in camera view without a camera when in CRP edit mode, but not GCPs in GCP edit mode.

Expand exposed parameters for camera calibration

The goal of this task is to expose more OpenCV camera intrinsics constraint parameters to the KWIVER configs so we can edit them in config files. For example, specifying which intrinsic parameters to estimate and which to keep fixed. Also possibly providing an initial guess of intrinsic parameters.

Show which frames a GCP has 2D constraints on

In the GCP panel, each GCP should be expandable if it has 2D constraints on any frame. The expansion should show the list of frame numbers that have a 2D constraint. Clicking (or maybe double clicking) on those frame numbers should set the active frame to that frame number.

Allow selecting which camera view share intrinsics

As I understand it, there is currently an all-or-nothing option to couple the intrinsics of your cameras. There was interest in having a menu to select which subset of cameras should have identical intrinsics.

sba_impl configuration invalid

**kwiver_fmv_set_1 example with ubuntu:

After successfully completed the maptk_track_features solution, maptk_bundle_adjust_tracks stops after next:**

2016-11-28 08:20:54.631 WARN algorithm.cxx(237): Configuration Failure: invalid option
2016-11-28 08:20:54.631 WARN algorithm.cxx(237): sba_impl:type = ceres
2016-11-28 08:20:54.631 WARN algorithm.cxx(237): valid options are
2016-11-28 08:20:54.631 WARN algorithm.cxx(237): hierarchical
2016-11-28 08:20:54.631 WARN algorithm.cxx(237): vxl
2016-11-28 08:20:54.631 DEBUG hierarchical_bundle_adjust.cxx(258): Config Check Fail: sba_impl configuration invalid.
2016-11-28 08:20:54.631 WARN algorithm.cxx(247): Configuration Failure Backtrace: bundle_adjuster:hierarchical
2016-11-28 08:20:54.631 ERROR bundle_adjust_tracks.cxx(274): Config Check Fail: Failed config check in bundle_adjuster algorithm.
2016-11-28 08:20:54.631 ERROR bundle_adjust_tracks.cxx(703): Configuration not valid.

How to prepare test data?

I have built maptk successfully, but when I tried on s sequence of aerial images, failed to get result. So how to prepare the test data? or do you have sample data to share? Thanks!

"Fuse Depth Maps" fails with AMD GPU on Windows

Trying to call "Fuse Depth Maps" with an AMD GPU (Radeon RX 560) fails with

Tool execution failes: GPU memory exception: CUDA driver version is insufficient for CUDA runtime version, thrown from integrate_depth_maps.cu:228

Any chance to get TeleSculptor working on non-Nvidia graphics?

Flatpak TeleSculptor

Hello,

I am trying to build Telesculptor for Linux Flatpak.

I got the error below.
I build Kwiver 1.5.1 with cmake with the flags,

       -DCMAKE_BUILD_TYPE:STRING=Release
       -DKWIVER_ENABLE_SPROKIT=ON
       -DKWIVER_ENABLE_C_BINDINGS=ON
       -DKWIVER_ENABLE_TOOLS=ON

Build qtExtensions master branch with cmake with default flag. https://github.com/Kitware/qtextensions
Build VTK 9.0.1 with cmake with these flags,

     -DBUILD_SHARED_LIBS=ON
     -DOpenGL_GL_PREFERENCE=GLVND
     -DCMAKE_BUILD_TYPE=Release
     -DVTK_PYTHON_VERSION:STRING=3
     -DVTK_GROUP_ENABLE_Qt=YES
     -DVTK_MODULE_ENABLE_VTK_GUISupportQt=YES
     -DModule_vtkGUISupportQtOpenGL:BOOL=ON

And finally Telesculptor 1.1.1 with Cmake.

       -DTELESCULPTOR_SUPERBUILD=OFF
       -DCMAKE_BUILD_TYPE:STRING=Release
       -DTELESCULPTOR_ENABLE_MANUALS=OFF
       -DTELESCULPTOR_ENABLE_TESTING=OFF

Could this issue be relate to this?
Kitware/kwiver#517

I got this error.

-- The C compiler identification is GNU 10.2.0
-- The CXX compiler identification is GNU 10.2.0
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Check for working C compiler: /usr/bin/cc - skipped
-- Detecting C compile features
-- Detecting C compile features - done
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Check for working CXX compiler: /usr/bin/c++ - skipped
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- Looking for kwiver in : 
-- Current path: '/app/lib/cmake/kwiver;/run/build/telesculptor/CMake'
-- Import CMake future from '/app/lib/cmake/kwiver/future'
-- Import CMake future '3.10'
-- Found Doxygen: /usr/bin/doxygen (found version "1.9.1") found components: doxygen missing components: dot
-- Could NOT find Sphinx (missing: SPHINX_EXECUTABLE) 
-- Performing Test has_compiler_flag--std=cplusplus11
-- Performing Test has_compiler_flag--std=cplusplus11 - Success
-- Performing Test has_compiler_flag--pthread
-- Performing Test has_compiler_flag--pthread - Success
-- Performing Test has_compiler_flag--fvisibility=hidden
-- Performing Test has_compiler_flag--fvisibility=hidden - Success
-- Performing Test has_compiler_flag--Wall
-- Performing Test has_compiler_flag--Wall - Success
-- Performing Test has_compiler_flag--Werror=return-type
-- Performing Test has_compiler_flag--Werror=return-type - Success
-- Performing Test has_compiler_flag--Werror=non-virtual-dtor
-- Performing Test has_compiler_flag--Werror=non-virtual-dtor - Success
-- Performing Test has_compiler_flag--Werror=narrowing
-- Performing Test has_compiler_flag--Werror=narrowing - Success
-- Performing Test has_compiler_flag--Werror=init-self
-- Performing Test has_compiler_flag--Werror=init-self - Success
-- Performing Test has_compiler_flag--Werror=reorder
-- Performing Test has_compiler_flag--Werror=reorder - Success
-- Performing Test has_compiler_flag--Werror=overloaded-virtual
-- Performing Test has_compiler_flag--Werror=overloaded-virtual - Success
-- Performing Test has_compiler_flag--Werror=cast-qual
-- Performing Test has_compiler_flag--Werror=cast-qual - Success
-- Performing Test has_compiler_flag--Werror=vla
-- Performing Test has_compiler_flag--Werror=vla - Success
-- Performing Test has_compiler_flag--Wno-unknown-pragmas
-- Performing Test has_compiler_flag--Wno-unknown-pragmas - Success
-- Performing Test has_compiler_flag--Wl,--no-undefined
-- Performing Test has_compiler_flag--Wl,--no-undefined - Success
-- Performing Test has_compiler_flag--Wl,--copy-dt-needed-entries
-- Performing Test has_compiler_flag--Wl,--copy-dt-needed-entries - Success
-- checking CPP_AUTO auto.cxx
-- checking CPP_CONSTEXPR constexpr.cxx
-- checking CPP_DEFAULT_CTOR default-ctor.cxx
-- checking CPP_FINAL final.cxx
-- checking CPP_NOEXCEPT throw-noexcept.cxx
-- checking CPP_RANGE_FOR range-for.cxx
-- checking STD_CHRONO std_chrono.cxx
-- checking STD_NULLPTR null_ptr.cxx
-- checking STD_REGEX std_regex.cxx
-- Found Git: /usr/bin/git (found version "2.30.0") 
-- [configure-version.h] Creating configure command
-- Making library "maptk"
-- Performing Test COMPILER_HAS_HIDDEN_VISIBILITY
-- Performing Test COMPILER_HAS_HIDDEN_VISIBILITY - Success
-- Performing Test COMPILER_HAS_HIDDEN_INLINE_VISIBILITY
-- Performing Test COMPILER_HAS_HIDDEN_INLINE_VISIBILITY - Success
-- Performing Test COMPILER_HAS_DEPRECATED_ATTR
-- Performing Test COMPILER_HAS_DEPRECATED_ATTR - Success
-- [configure-gui_align] Creating configure command
-- [configure-gui_bundle_adjust] Creating configure command
-- [configure-gui_compute_depth] Creating configure command
-- [configure-gui_default_camera_intrinsics] Creating configure command
-- [configure-gui_filter_tracks] Creating configure command
-- [configure-gui_frame_image_writer] Creating configure command
-- [configure-gui_image_list_reader] Creating configure command
-- [configure-gui_image_video_reader] Creating configure command
-- [configure-gui_initialize] Creating configure command
-- [configure-gui_integrate_depth_maps] Creating configure command
-- [configure-gui_keyframe_image_writer] Creating configure command
-- [configure-gui_mask_list_reader] Creating configure command
-- [configure-gui_mask_video_reader] Creating configure command
-- [configure-gui_st_estimator] Creating configure command
-- [configure-gui_track_features] Creating configure command
-- [configure-gui_triangulate] Creating configure command
-- [configure-track_features_embedded_debug] Creating configure command
-- [configure-log4cplus] Creating configure command
CMake Deprecation Warning at /app/lib/cmake/vtk-9.0/vtk-config.cmake:64 (message):
  The new name for the 'vtkFiltersSources' component is 'FiltersSources'
Call Stack (most recent call first):
  gui/CMakeLists.txt:17 (find_package)


CMake Deprecation Warning at /app/lib/cmake/vtk-9.0/vtk-config.cmake:64 (message):
  The new name for the 'vtkGUISupportQt' component is 'GUISupportQt'
Call Stack (most recent call first):
  gui/CMakeLists.txt:17 (find_package)


CMake Deprecation Warning at /app/lib/cmake/vtk-9.0/vtk-config.cmake:64 (message):
  The new name for the 'vtkIOGeometry' component is 'IOGeometry'
Call Stack (most recent call first):
  gui/CMakeLists.txt:17 (find_package)


CMake Deprecation Warning at /app/lib/cmake/vtk-9.0/vtk-config.cmake:64 (message):
  The new name for the 'vtkIOImage' component is 'IOImage'
Call Stack (most recent call first):
  gui/CMakeLists.txt:17 (find_package)


CMake Deprecation Warning at /app/lib/cmake/vtk-9.0/vtk-config.cmake:64 (message):
  The new name for the 'vtkIOPLY' component is 'IOPLY'
Call Stack (most recent call first):
  gui/CMakeLists.txt:17 (find_package)


CMake Deprecation Warning at /app/lib/cmake/vtk-9.0/vtk-config.cmake:64 (message):
  The new name for the 'vtkIOXML' component is 'IOXML'
Call Stack (most recent call first):
  gui/CMakeLists.txt:17 (find_package)


CMake Deprecation Warning at /app/lib/cmake/vtk-9.0/vtk-config.cmake:64 (message):
  The new name for the 'vtkImagingCore' component is 'ImagingCore'
Call Stack (most recent call first):
  gui/CMakeLists.txt:17 (find_package)


CMake Deprecation Warning at /app/lib/cmake/vtk-9.0/vtk-config.cmake:64 (message):
  The new name for the 'vtkInteractionStyle' component is 'InteractionStyle'
Call Stack (most recent call first):
  gui/CMakeLists.txt:17 (find_package)


CMake Deprecation Warning at /app/lib/cmake/vtk-9.0/vtk-config.cmake:64 (message):
  The new name for the 'vtkInteractionWidgets' component is
  'InteractionWidgets'
Call Stack (most recent call first):
  gui/CMakeLists.txt:17 (find_package)


CMake Deprecation Warning at /app/lib/cmake/vtk-9.0/vtk-config.cmake:64 (message):
  The new name for the 'vtkRenderingAnnotation' component is
  'RenderingAnnotation'
Call Stack (most recent call first):
  gui/CMakeLists.txt:17 (find_package)


CMake Deprecation Warning at /app/lib/cmake/vtk-9.0/vtk-config.cmake:64 (message):
  The new name for the 'vtkRenderingFreeType' component is
  'RenderingFreeType'
Call Stack (most recent call first):
  gui/CMakeLists.txt:17 (find_package)


-- Looking for pthread.h
-- Looking for pthread.h - found
-- Performing Test CMAKE_HAVE_LIBC_PTHREAD
-- Performing Test CMAKE_HAVE_LIBC_PTHREAD - Failed
-- Looking for pthread_create in pthreads
-- Looking for pthread_create in pthreads - not found
-- Looking for pthread_create in pthread
-- Looking for pthread_create in pthread - found
-- Found Threads: TRUE  
-- Found X11: /usr/include   
-- Looking for XOpenDisplay in /usr/lib/x86_64-linux-gnu/libX11.so;/usr/lib/x86_64-linux-gnu/libXext.so
-- Looking for XOpenDisplay in /usr/lib/x86_64-linux-gnu/libX11.so;/usr/lib/x86_64-linux-gnu/libXext.so - found
-- Looking for gethostbyname
-- Looking for gethostbyname - found
-- Looking for connect
-- Looking for connect - found
-- Looking for remove
-- Looking for remove - found
-- Looking for shmat
-- Looking for shmat - found
-- Looking for IceConnectionNumber in ICE
-- Looking for IceConnectionNumber in ICE - found
-- Found OpenGL: /usr/lib/x86_64-linux-gnu/libOpenGL.so  found components: OpenGL GLX 
CMake Deprecation Warning at /app/lib/cmake/vtk-9.0/vtk-use-file-deprecated.cmake:1 (message):
  The `VTK_USE_FILE` is no longer used starting with 8.90.
Call Stack (most recent call first):
  gui/CMakeLists.txt:35 (include)


-- File: 'ACKNOWLEDGMENTS'
-- File: 'BUILDINFO'
-- File: 'LICENSE'
-- [configure-telesculptor-config] Creating configure command
-- [configure-telesculptor-install-config] Creating configure command
-- Configuring done
CMake Error at /app/lib/cmake/kwiver/utils/kwiver-utils-targets.cmake:182 (add_executable):
  Target "maptk_detect_and_describe" links to target
  "kwiver::kwiver_algo_core" but the target was not found.  Perhaps a
  find_package() call is missing for an IMPORTED target, or an ALIAS target
  is missing?
Call Stack (most recent call first):
  tools/CMakeLists.txt:8 (kwiver_add_executable)


CMake Error at /app/lib/cmake/kwiver/utils/kwiver-utils-targets.cmake:182 (add_executable):
  Target "maptk_track_features" links to target "kwiver::kwiver_algo_core"
  but the target was not found.  Perhaps a find_package() call is missing for
  an IMPORTED target, or an ALIAS target is missing?
Call Stack (most recent call first):
  tools/CMakeLists.txt:17 (kwiver_add_executable)


CMake Error at /app/lib/cmake/kwiver/utils/kwiver-utils-targets.cmake:182 (add_executable):
  Target "maptk_analyze_tracks" links to target "kwiver::kwiver_algo_core"
  but the target was not found.  Perhaps a find_package() call is missing for
  an IMPORTED target, or an ALIAS target is missing?
Call Stack (most recent call first):
  tools/CMakeLists.txt:56 (kwiver_add_executable)


CMake Error at /app/lib/cmake/kwiver/utils/kwiver-utils-targets.cmake:182 (add_executable):
  Target "maptk_match_matrix" links to target "kwiver::kwiver_algo_core" but
  the target was not found.  Perhaps a find_package() call is missing for an
  IMPORTED target, or an ALIAS target is missing?
Call Stack (most recent call first):
  tools/CMakeLists.txt:26 (kwiver_add_executable)


CMake Error at /app/lib/cmake/kwiver/utils/kwiver-utils-targets.cmake:182 (add_executable):
  Target "maptk_bundle_adjust_tracks" links to target
  "kwiver::kwiver_algo_core" but the target was not found.  Perhaps a
  find_package() call is missing for an IMPORTED target, or an ALIAS target
  is missing?
Call Stack (most recent call first):
  tools/CMakeLists.txt:40 (kwiver_add_executable)


CMake Error at /app/lib/cmake/kwiver/utils/kwiver-utils-targets.cmake:182 (add_executable):
  Target "maptk_apply_gcp" links to target "kwiver::kwiver_algo_core" but the
  target was not found.  Perhaps a find_package() call is missing for an
  IMPORTED target, or an ALIAS target is missing?
Call Stack (most recent call first):
  tools/CMakeLists.txt:48 (kwiver_add_executable)


CMake Error at /app/lib/cmake/kwiver/utils/kwiver-utils-targets.cmake:182 (add_executable):
  Target "TeleSculptor" links to target "kwiver::kwiver_adapter" but the
  target was not found.  Perhaps a find_package() call is missing for an
  IMPORTED target, or an ALIAS target is missing?
Call Stack (most recent call first):
  gui/CMakeLists.txt:199 (kwiver_add_executable)


CMake Error at /app/lib/cmake/kwiver/utils/kwiver-utils-targets.cmake:182 (add_executable):
  Target "TeleSculptor" links to target "kwiver::kwiver_algo_core" but the
  target was not found.  Perhaps a find_package() call is missing for an
  IMPORTED target, or an ALIAS target is missing?
Call Stack (most recent call first):
  gui/CMakeLists.txt:199 (kwiver_add_executable)


CMake Error at /app/lib/cmake/kwiver/utils/kwiver-utils-targets.cmake:182 (add_executable):
  Target "TeleSculptor" links to target "Boost::chrono" but the target was
  not found.  Perhaps a find_package() call is missing for an IMPORTED
  target, or an ALIAS target is missing?
Call Stack (most recent call first):
  gui/CMakeLists.txt:199 (kwiver_add_executable)


CMake Error at /app/lib/cmake/kwiver/utils/kwiver-utils-targets.cmake:182 (add_executable):
  Target "TeleSculptor" links to target "Boost::system" but the target was
  not found.  Perhaps a find_package() call is missing for an IMPORTED
  target, or an ALIAS target is missing?
Call Stack (most recent call first):
  gui/CMakeLists.txt:199 (kwiver_add_executable)


-- Generating done
CMake Generate step failed.  Build files cannot be regenerated correctly.
Error: module telesculptor: Child process exited with code 1

Qt version 5.11.2 cannot be downloaded

After running 'make' I get the following error

     --- LOG END ---
    error: downloading 'http://download.qt->project.org/official_releases/qt/5.11/5.11.2/single/qt-everywhere-src-5.11.2.tar.xz' failed
    status_code: 22
    status_string: "HTTP response code said error"
    log:
    --- LOG BEGIN ---
      Trying 77.86.229.90:80...

It seems like that Qt version 5.11.2 cannot be found on: http://download.qt-project.org/official_releases/qt/
Can you please update the Qt version to the newest versions are 5.12 or 5.13

Thanks a lot.

Segmentation fault in maptk_bundle_adjust_tracks

This issue was reported by @bigdraw on the kwiver-users mailing list. This issues has been split out from issue #74


After using maptk_track_features, I got a feature tracks file.
And then I want to use maptk_bundle_adjust_tracks to take feature tracks and produces cameras and 3D points (PLY file).And I met a problem.This problem goes as follows:

stedraw@stedraw-PC:~/maptk/maptk/bin$ ./maptk_bundle_adjust_tracks -c  adjust.conf
File parsed! Contained 38 k/v entries.
loading track file: ./output_tracks.txt
loaded 36447 tracks
filtered down to 0 long tracks
track filtering: 0.010000 sec CPU, 0.009851 sec wall
Initializing cameras and landmarks: 0.000000 sec CPU, 0.000008 sec wall
Segmentation fault (core dumped)

solution(from Matt's letter):

In this case the problem is likely related to the “min_track_length” parameter in the config file.  The bundle adjust tool currently filters tracks shorter than “min_track_length” before running bundle adjustment. It looks like you don’t have any tracks longer than the current value of “min_track_length”.  You could set this parameter to as low 2 to use all the relevant tracks.  Setting it to 3 might be a little more robust.  The problem with these small values is that you will generally be using a lot more data than you really need to optimize the cameras.  It’s better to use a more minimal set of good long tracks first, and then go back and triangulate additional features later if desired.

The proper setting for the “min_track_length" parameter is very dependent on your data.  If you have a slow moving camera and/or high frame rate you may end of with very long tracks and want this value to be high.  If your scene changes more rapidly from frame to frame you need this value to be shorter.  We are working on making this smarter so that it adapts to the data.  For now, you’ll have to play with the parameter to find a value that suits your problem.

The fact that the executable seg faults when it gets 0 tracks should be considered a bug.  It should handle this case more gracefully and exit cleanly. 

So I modified my "adjust.conf", set the "min_track_length" parameter to a lower value, and got the right output.

Better validation and error messages for saving non-standard features

TeleSculptor is currently configured to use ORB features by default and it saves them fine. It can be configured to use other features such as SURF in the track_features.conf file by setting descriptor_type := ocv_SURF. However, if descriptor_binary := false is not also set, the following runtime error will be thrown.

OpenCV Error: Unsupported format or combination of formats (type=5
) in buildIndex_, file <fletch path>/build/src/OpenCV/modules/flann/src/miniflann.cpp, line 315
2020-11-19 15:02:32.989 ERROR track_features.cxx(608): Exception caught: <fletch path>/build/src/OpenCV/modules/flann/src/miniflann.cpp:315: error: (-210) type=5
2020-11-19 15:02:32.989 ERROR track_features.cxx(608):  in function buildIndex_

The same error happens if you run once with ORB and then go back and try to re-run with SURF, even if you properly configure the descriptor_binary := false flag. For the time being you can simply delete the results folder to fix the latter issue.

In the future it would be useful to have a more descriptive error such as a config check failure. Alternatively, and likely better, the descriptor_binary value to be deduced from the feature type and this config parameter could be removed.

Could not find implementations as request from *.conf

Hi,


I am running Ubuntu 18.04.2 LTS.

I followed the installation instructions from README file:

sudo apt-get install build-essential libgl1-mesa-dev libxt-dev
sudo apt-get install libexpat1-dev libgtk2.0-dev liblapack-dev
# mkdir telesculptor (why is this here?)
mkdir builds
cd builds
cmake -DCMAKE_BUILD_TYPE:STRING=Release ../    # ../src in the instructions?
make

I am having issues for several days now being unable to run command line tools (maptk_track_features, for example). I am running the following command:

maptk_track_features -c maptk_track_features.conf

but I get the following warnings and errors:

2019-06-18 13:04:19.766 WARN algorithm.cxx(189): Could not find implementation "image_list" for "video_input" as requested from /home/kristijan/maptk/builds/external/maptk-build/share/maptk/0.11.0/config/core_video_input_image_list.conf:19
2019-06-18 13:04:19.766 WARN algorithm.cxx(189): Could not find implementation "core" for "track_features" as requested from /home/kristijan/maptk/builds/external/maptk-build/share/maptk/0.11.0/config/core_feature_tracker.conf:4
2019-06-18 13:04:19.767 WARN algorithm.cxx(189): Could not find implementation "ocv" for "image_io" as requested from /home/kristijan/maptk/examples/kwiver_fmv_set_1/maptk_track_features.conf:33
2019-06-18 13:04:19.767 WARN algorithm.cxx(189): Could not find implementation "bypass" for "convert_image" as requested from /home/kristijan/maptk/examples/kwiver_fmv_set_1/maptk_track_features.conf:5
2019-06-18 13:04:19.767 WARN algorithm.cxx(189): Could not find implementation "core" for "compute_ref_homography" as requested from /home/kristijan/maptk/builds/external/maptk-build/share/maptk/0.11.0/config/core_output_homography_generator.conf:5
2019-06-18 13:04:19.782 WARN algorithm.cxx(239): Configuration Failure: invalid option
2019-06-18 13:04:19.782 WARN algorithm.cxx(239):    output_homography_generator:type = core
2019-06-18 13:04:19.782 WARN algorithm.cxx(239):    valid options are
2019-06-18 13:04:19.782 ERROR track_features.cxx(156): Config Check Fail: output_homography_generator configuration check failed
2019-06-18 13:04:19.783 WARN algorithm.cxx(239): Configuration Failure: invalid option
2019-06-18 13:04:19.783 WARN algorithm.cxx(239):    video_reader:type = image_list
2019-06-18 13:04:19.783 WARN algorithm.cxx(239):    valid options are
2019-06-18 13:04:19.783 ERROR track_features.cxx(197): Config Check Fail: video_reader configuration check failed
2019-06-18 13:04:19.783 WARN algorithm.cxx(239): Configuration Failure: invalid option
2019-06-18 13:04:19.783 WARN algorithm.cxx(239):    feature_tracker:type = core
2019-06-18 13:04:19.783 WARN algorithm.cxx(239):    valid options are
2019-06-18 13:04:19.783 ERROR track_features.cxx(202): Config Check Fail: feature_tracker configuration check failed
2019-06-18 13:04:19.784 WARN algorithm.cxx(239): Configuration Failure: invalid option
2019-06-18 13:04:19.784 WARN algorithm.cxx(239):    image_reader:type = ocv
2019-06-18 13:04:19.784 WARN algorithm.cxx(239):    valid options are
2019-06-18 13:04:19.784 ERROR track_features.cxx(207): Config Check Fail: image_reader configuration check failed
2019-06-18 13:04:19.784 WARN algorithm.cxx(239): Configuration Failure: invalid option
2019-06-18 13:04:19.784 WARN algorithm.cxx(239):    convert_image:type = bypass
2019-06-18 13:04:19.784 WARN algorithm.cxx(239):    valid options are
2019-06-18 13:04:19.784 ERROR track_features.cxx(212): Config Check Fail: convert_image configuration check failed
2019-06-18 13:04:19.785 ERROR track_features.cxx(313): Configuration not valid.

I can't guess what could be the issue here. I thought there is a linker issue so I tries putting several *.so files in the same directory where the program was run from, but it didn't help. I went through the source code, but still didn't find enough information. My remaining guess is that there are more dependencies, but this would lead me to pure guessing, so I decided to open the issue at this point.

Thank you!
Kristijan

Crash with too few frames for depth map computation

Running "Compute -> Batch Compute Depth Maps" when there are fewer frames than the configured support can result in a crash due to out-of-bounds data access. The suspect code is here:

kwiver::vital::frame_id_t num_frames =
frames_in_range.size() - 2 * halfsupport;
d->num_depth_maps =
std::min(static_cast<size_t>(d->num_depth),
static_cast<size_t>(num_frames));

If frames_in_range.size() is less than 2 * halfsupport, then num_frames will be negative, resulting in static_cast<size_t>(num_frames) being a large positive number and d->num_depth_maps inappropriately being the full value of d->num_depth. The main for loop then attempts out-of-bounds access to frames_in_range.

It would prevent the undefined behavior to just do something like if(num_frames < 0) num_frames = 0;, but perhaps the tool should log / report that it didn't do any work.

first calibrated camera visibility

Open/create a project that does not have cameras in TS GUI. Ensure a scene mesh is loaded. Pick a frame and calibrate a camera for it using six 3D-2D point correspondences. Observe the log for a successful calibration and a view re-projection on the mesh. Although camera is calibrated and inserted it is not visible in the 3D viewer. Calibrate a camera for a different frame, and observe that now two camera frustums are visible in the 3D viewer. The idea is to display the first calibrated camera frustum without having to calibrate any additional ones.

Merge TeleSculptor documentation to Sphinx version

We have two forms of TeleSculptor documentation.

  1. The user manual, which was recently ported from a PDF to Sphinx for hosting on readthedocs.
  2. The help page, which is built with docutils and installed with TeleSculptor.

Both of these use restructured text, both have different content, but with some overlap. The task here is to

  1. Update the TeleSculptor build to use Sphinx to build and install a local copy of the same documentation we host on readthedocs and make that what is loaded by the TeleSculptor help menu.
  2. Fold the content of the old help page into the Sphinx documentation. This would probably make a new "User Interface" page in the manual, but we will need to revise to remove content that is duplicated elsewhere in the manual.

[Linux] Compilation fails

Hi,
I try to compile Telesculptor, i have some errors, see :

Configure summary:

Build type: linux-g++ (x86_64, CPU features: mmx sse sse2)
Configuration: use_gold_linker sse2 aesni sse3 ssse3 sse4_1 sse4_2 avx avx2 avx512f avx512bw avx512cd avx512dq avx512er avx512ifma avx512pf avx512vbmi avx512vl compile_examples enable_new_dtags f16c largefile precompile_header rdrnd shani x86SimdAlways shared rpath release c++11 c++14 c++1z concurrent dbus reduce_exports reduce_relocations release_tools stl
Build options:
  Mode ................................... release; optimized tools
  Optimize release build for size ........ no
  Building shared libraries .............. yes
  Using C++ standard ..................... C++1z
  Using ccache ........................... no
  Using gold linker ...................... yes
  Using new DTAGS ........................ yes
  Using precompiled headers .............. yes
  Using LTCG ............................. no
  Target compiler supports:
    SSE .................................. SSE2 SSE3 SSSE3 SSE4.1 SSE4.2
    AVX .................................. AVX AVX2
    AVX512 ............................... F ER CD PF DQ BW VL IFMA VBMI
    Other x86 ............................ AES F16C RDRAND SHA
    Intrinsics without -mXXX option ...... yes
  Build parts ............................ libs tools
Qt modules and options:
  Qt Concurrent .......................... yes
  Qt D-Bus ............................... yes
  Qt D-Bus directly linked to libdbus .... no
  Qt Gui ................................. yes
  Qt Network ............................. yes
  Qt Sql ................................. yes
  Qt Testlib ............................. yes
  Qt Widgets ............................. yes
  Qt Xml ................................. yes
Support enabled for:
  Using pkg-config ....................... yes
  udev ................................... no
  Using system zlib ...................... yes
Qt Core:
  DoubleConversion ....................... yes
    Using system DoubleConversion ........ no
  GLib ................................... no
  iconv .................................. yes
  ICU .................................... no
  Tracing backend ........................ <none>
  Logging backends:
    journald ............................. no
    syslog ............................... no
    slog2 ................................ no
  Using system PCRE2 ..................... no
Qt Network:
  getifaddrs() ........................... yes
  IPv6 ifname ............................ yes
  libproxy ............................... no
  Linux AF_NETLINK ....................... yes
  OpenSSL ................................ no
    Qt directly linked to OpenSSL ........ no
  OpenSSL 1.1 ............................ no
  SCTP ................................... no
  Use system proxies ..................... yes
Qt Gui:
  Accessibility .......................... yes
  FreeType ............................... yes
    Using system FreeType ................ no
  HarfBuzz ............................... yes
    Using system HarfBuzz ................ no
  Fontconfig ............................. no
  Image formats:
    GIF .................................. yes
    ICO .................................. yes
    JPEG ................................. yes
      Using system libjpeg ............... yes
    PNG .................................. yes
      Using system libpng ................ yes
  EGL .................................... no
  OpenVG ................................. no
  OpenGL:
    Desktop OpenGL ....................... no
    OpenGL ES 2.0 ........................ no
    OpenGL ES 3.0 ........................ no
    OpenGL ES 3.1 ........................ no
    OpenGL ES 3.2 ........................ no
  Vulkan ................................. yes
  Session Management ..................... yes
Features used by QPA backends:
  evdev .................................. yes
  libinput ............................... no
  INTEGRITY HID .......................... no
  mtdev .................................. no
  tslib .................................. no
  xkbcommon-evdev ........................ no
QPA backends:
  DirectFB ............................... no
  EGLFS .................................. no
  LinuxFB ................................ yes
  VNC .................................... yes
  Mir client ............................. no
Qt Widgets:
  GTK+ ................................... no
  Styles ................................. Fusion Windows
Qt PrintSupport:
  CUPS ................................... no
Qt Sql:
  DB2 (IBM) .............................. no
  InterBase .............................. no
  MySql .................................. no
  OCI (Oracle) ........................... no
  ODBC ................................... no
  PostgreSQL ............................. no
  SQLite2 ................................ no
  SQLite ................................. yes
    Using system provided SQLite ......... no
  TDS (Sybase) ........................... no
Qt Testlib:
  Tester for item models ................. yes
Qt SerialBus:
  Socket CAN ............................. yes
  Socket CAN FD .......................... yes
QtXmlPatterns:
  XML schema support ..................... yes
Qt QML:
  QML network support .................... yes
  QML debugging and profiling support .... no
  QML delegate model ..................... yes
Qt Quick:
  Direct3D 12 ............................ no
  AnimatedImage item ..................... yes
  Canvas item ............................ yes
  Support for Qt Quick Designer .......... yes
  Flipable item .......................... yes
  GridView item .......................... yes
  ListView item .......................... yes
  Path support ........................... yes
  PathView item .......................... yes
  Positioner items ....................... yes
  Repeater item .......................... yes
  ShaderEffect item ...................... yes
  Sprite item ............................ yes
Qt Gamepad:
  SDL2 ................................... no
Qt 3D:
  Assimp ................................. yes
  System Assimp .......................... no
  Output Qt3D Job traces ................. no
  Output Qt3D GL traces .................. no
  Use SSE2 instructions .................. yes
  Use AVX2 instructions .................. no
  Aspects:
    Render aspect ........................ yes
    Input aspect ......................... yes
    Logic aspect ......................... yes
    Animation aspect ..................... yes
    Extras aspect ........................ yes
Qt 3D Renderers:
  OpenGL Renderer ........................ yes
Qt 3D GeometryLoaders:
  Autodesk FBX ........................... no
Qt Wayland Client ........................ no
Qt Wayland Compositor .................... no
Qt Bluetooth:
  BlueZ .................................. no
  BlueZ Low Energy ....................... no
  Linux Crypto API ....................... no
  WinRT Bluetooth API (desktop & UWP) .... no
Qt Sensors:
  sensorfw ............................... no
Qt Quick Controls 2:
  Styles ................................. Default Fusion Imagine Material Universal
Qt Quick Templates 2:
  Hover support .......................... yes
  Multi-touch support .................... yes
Qt Multimedia:
  ALSA ................................... no
  GStreamer 1.0 .......................... no
  GStreamer 0.10 ......................... no
  Video for Linux ........................ yes
  OpenAL ................................. no
  PulseAudio ............................. no
  Resource Policy (libresourceqt5) ....... no
  Windows Audio Services ................. no
  DirectShow ............................. no
  Windows Media Foundation ............... no

Note: Also available for Linux: linux-clang linux-icc

Note: -optimized-tools is not useful in -release mode.

Note: No wayland-egl support detected. Cross-toolkit compatibility disabled.

ERROR: The OpenGL functionality tests failed!
You might need to modify the include and library search paths by editing QMAKE_INCDIR_OPENGL[_ES2],
QMAKE_LIBDIR_OPENGL[_ES2] and QMAKE_LIBS_OPENGL[_ES2] in the mkspec for your platform.

Check config.log for details.
make[5]: *** [CMakeFiles/Qt.dir/build.make:113: build/src/Qt-stamp/Qt-configure] Error 3
make[4]: *** [CMakeFiles/Makefile2:1014: CMakeFiles/Qt.dir/all] Error 2
make[3]: *** [Makefile:130: all] Error 2
make[2]: *** [CMakeFiles/fletch.dir/build.make:112: external/stamps/fletch-build] Error 2
make[1]: *** [CMakeFiles/Makefile2:111: CMakeFiles/fletch.dir/all] Error 2
make: *** [Makefile:84: all] Error 2

I'm on Fedora 31, with AMD POLARIS free driver. I think embedded Qt is not compiled with wayland and/or opengl options.

GUI grid should be "normalized"

It would be nice if the size of the grid/axes in the GUI would "snap" to increments of whole units or "pretty fractions" of units (e.g. to a fraction whose denominator is 2a·5b with |a-b|≤1) so that the grid lines are "nice", rational numbers.

Show which GCPs have a 2D point on the current frame

There is no indication of which 3D points (GCPs) have a corresponding 2D point for the current frame in the GCP panel. We should add an icon or indicator of some type to show which GCPs have a 2D point on the active frame and then update those indicators as the active frame changes.

clear GCP/reg.pt list on project (re)load

Load project A with a mesh, inspect/create some GCP and registration points, compute cameras, export GCP points. Without closing TS, open project B with a mesh and GCP/reg.pts: now GCP and reg pts from two projects appear to be intermixed. I think we need to clear our GCP list on project (re) load.

CMake finds system installs of boost instead of the one in vital_DIR

If running cmake with providing the vital_DIR, cmake still finds the system-wide Boost install.
I'm not a cmake-expert, so it might just be expected.

cmake ../maptk/ -Dvital_DIR:FILEPATH=/home/bjacquet/Dev/MAP-Tk/Vital/build

btw, it is annoying because maptk does not compile against Boost 1.58.0, which is the default on Ubuntu 15.10. But this is another issue.

error:the file"kwiver_algo_core_export.h" is missing

"*/arrow/core/kwiver_algo_core_export.h: no such file ...",the error is arising,when I building the maptk/tools/analyze_tracks.cxx. And I found that no file named "kwiver_algo_core_export.h" is in the folder of map-tk or kitware.

Build with provided Dockerfile fails

When building with provided Dockerfile, the following error occurs:

/usr/bin/ld: CMakeFiles/cuda_compile_1.dir/cuda_compile_1_generated_integrate_depth_maps.cu.o: relocation R_X86_64_PC32 against symbol `_ZTVSt9basic_iosIcSt11char_traitsIcEE@@GLIBCXX_3.4' can not be used when making a shared object; recompile with -fPIC
/usr/bin/ld: final link failed: Bad value

maptk_track_features incorrect output

I am not sure if this is the correct place to submit this, but I encountered an issue with the maptk_track_features tool and this is how I fixed it. I am using commit 48ea683 of the master branch (MAP-Tk 0.10.0).
After running the maptk_track_features tool, the tracks.txt output file only contains the first 2 columns of data (the track ID and the frame ID) and is missing the last 8 columns (the feature data). The maptk_bundle_adjust_tracks tool expects all 10 columns of data to be present in the tracks.txt file. After looking into this issue, line 477 of track_features.cxx calls “kwiver::vital::write_track_file(tracks, output_tracks_file);”, which only writes out the track ID and frame ID to the tracks.txt file, whereas calling “kwiver::vital::write_feature_track_file(tracks, output_tracks_file);” writes out the track ID, frame ID, and feature data. I updated line 477 of track_features.cxx to call “kwiver::vital::write_feature_track_file(tracks, output_tracks_file);” instead. The maptk_track_features tool now produces the correct output.

maptk Eigen assertion failure

Version MapGUI: 0.9.0
Qt: 4.8.6
On Ubuntu 14.04 32bit

  • I have compile with and without map-gui and when I run any maptk functions I get :
    /usr/include/eigen3/Eigen/src/Core/DenseStorage.h:78: Eigen::internal::plain_array<T, Size, MatrixOrArrayOptions, 16>::plain_array() [with T = double; int Size = 2; int MatrixOrArrayOptions = 0]: Assertion `(reinterpret_cast<size_t>(eigen_unaligned_array_assert_workaround_gcc47(array)) & 0xf) == 0 && "this assertion is explained here: " "http://eigen.tuxfamily.org/dox-devel/group__TopicUnalignedArrayAssert.html" " **** READ THIS WEB PAGE !!! ****"' failed.
    Aborted (core dumped)

I'm using Eigen 3.2.0

Importing GCPs loads duplicate points

Loading a GCP file as part of a project works fine because the GCPs are loaded before the cameras are setup. However, if the GCP file is imported after the project is already open and the project has valid cameras then each GCP gets added twice. It seems that the function to add each loaded point calls the function to add a point to the camera view. This is the same logic used when clicking to add a new point, so a second point is added at the same location.

INS map empty, no output POS files written

Hi there,

I have tried running the CLI tools for maptk_track_features and maptk_bundle_adjust on the test data provided from the examples in the CLIF data set. I downloaded and installed the MapTK 0.9.0 binary package and ran the command line tools from that packages bin folder. However when I run the bundle adjust with the same config settings in the examples directory with the metadata included, I still can not get output POS data. For some reason I can't seem to get the output updated POS files and instead only get the krtd files/ landmarks.ply file. I would like to see the updated POS files. The full output after running bundle adjust with the example config settings on the test data is as follows:

--> st estimation and application - elapsed time: 0.000358 sec
writing output PLY file - elapsed time: 0.000411 sec
2017-07-03 16:53:46.543 INFO bundle_adjust_tracks.cxx(1018): Writing output POS files
WARNING: local geo coordinates do not have an origin
2017-07-03 16:53:46.543 WARN bundle_adjust_tracks.cxx(1033): INS map empty, no output POS files written
--> Writing output POS files - elapsed time: 6.5e-05 sec
2017-07-03 16:53:46.543 INFO bundle_adjust_tracks.cxx(1062): Writing output KRTD files
--> Writing output KRTD files - elapsed time: 0.008628 sec

I was wondering if there was a config setting I was entering incorrectly or something like that.

Thanks a lot!

Show residuals between projected GCPs and 2D constraints

We should add the option to show residual lines connecting projected GCPs to 2D constraints in the camera view. This should work similarly to other residual drawing options, but it should update in real time as points are edited. The line (when visibility enabled) should always connect the projected 3D point to it's constraint point on the active frame.

Add keyboard shortcut to advance selected GCP

A common operation is to step though GCPs one at a time and add a CRP to each on the current frame. This currently involves moving the mouse across the screen after each click to select the next point in the list. It would be more efficient to have a global keyboard short cut that simple advances the selected GCP to the next in the list and rolls over to the head of the list at the end. I recommend "a" for advance, but I'm open to suggestions. It would be good for the key to be near the left side of the keyboard so you can quickly alternate between pressing "ctrl" and this key with your left hand with the right hand on the mouse. We might also consider adding a previous GCP key as well.

Stitching Drone Images

Hi,

Sorry for very basic question.
Can i use this tool chain for stitching Drone Images and get GeoTIFF images.

Thanks

when will v0.10.0 be releaesd

Hi,mleotta
I found you have already done a gcp tool, which will be in the version 0.10.0.
I am interested in this new function. May I know when will the v0.10 be released?
Appreciate for your work!

"Zoom to Landmarks" broken with no landmarks

The Zoom to Landmarks feature is currently broken when there are no landmarks. The camera view is destroyed and there is no way to recover by zooming to all data. If there are no landmarks, the zoom to landmarks feature should not do anything or possibly should be greyed out.

GUI should have "measurement" tool

Being able to measure things in the GUI is useful. We would like to have a "measurement" tool. The output UI should be a separate window with nine (read-only QLineEdit) fields, giving the matrix of [X, Y, Z] × [min, max, max-min]. This should have two modes. One mode would measure the visible geometry (probably with options to include/exclude the cameras and/or ground plane). The other mode would use an interactive widget in the world view to select/manipulate an AABB.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.