Skip to content
This repository was archived by the owner on Jul 20, 2023. It is now read-only.
This repository was archived by the owner on Jul 20, 2023. It is now read-only.

SolARPipelineTest_NaturalmageMarker crashes in Debug mode #24

@jim-bcom

Description

@jim-bcom

HOW TO REPRODUCE

  • Import SolARPipelineTest_NaturalImageMarker in QtCreator
  • Project -> change working dir to sample bin/Debug dir
  • Build and run in debug

SolAR: v0.10.0
commit: 0d17635

EXPECTED BEHAVIOR
Sample runs without error

OBSERVED BEHAVIOR
Crashes after a while.

Console output:

[ INFO:0] global C:\.conan\f07238\1\source_subfolder\modules\videoio\src\cap_msmf.cpp (787) CvCapture_MSMF::configureHW MSMF: Using D3D11 video acceleration on GPU device: NVIDIA Quadro RTX 3000
[2021-09-27 14:36:18:638851] [info] [11764] [SolAR::MODULES::OPENCV::SolARCameraOpencv::start():62] Camera with id 0 has started
[2021-09-27 14:36:18:638909] [info] [11764] [SolAR::MODULES::OPENCV::SolARCameraOpencv::start():63] Camera using 640  *  480 resolution
[2021-09-27 14:36:25:428255] [debug] [19648] [SolAR::PIPELINES::PipelineNaturalImageMarker::processDetection():232] No pose from Detection for this frame
[2021-09-27 14:36:25:896167] [debug] [19648] [SolAR::PIPELINES::PipelineNaturalImageMarker::processDetection():238] Start tracking
[2021-09-27 14:36:26:131094] [debug] [18872] [SolAR::PIPELINES::PipelineNaturalImageMarker::processTracking():313] Reinitialize points to track
[2021-09-27 14:36:26:641141] [debug] [19648] [SolAR::PIPELINES::PipelineNaturalImageMarker::processDetection():238] Start tracking
[2021-09-27 14:36:26:936697] [debug] [18872] [SolAR::PIPELINES::PipelineNaturalImageMarker::processTracking():313] Reinitialize points to track
[2021-09-27 14:36:27:257094] [debug] [19648] [SolAR::PIPELINES::PipelineNaturalImageMarker::processDetection():238] Start tracking
[2021-09-27 14:36:27:531426] [debug] [18872] [SolAR::PIPELINES::PipelineNaturalImageMarker::processTracking():313] Reinitialize points to track
[2021-09-27 14:36:27:936705] [debug] [19648] [SolAR::PIPELINES::PipelineNaturalImageMarker::processDetection():238] Start tracking
[2021-09-27 14:36:28:537415] [debug] [18872] [SolAR::PIPELINES::PipelineNaturalImageMarker::processTracking():313] Reinitialize points to track
[2021-09-27 14:36:29:144580] [debug] [19648] [SolAR::PIPELINES::PipelineNaturalImageMarker::processDetection():232] No pose from Detection for this frame
[2021-09-27 14:36:29:662841] [debug] [18872] [SolAR::PIPELINES::PipelineNaturalImageMarker::processTracking():366] Need new point to track
[2021-09-27 14:36:29:681046] [debug] [19648] [SolAR::PIPELINES::PipelineNaturalImageMarker::processDetection():238] Start tracking
[2021-09-27 14:36:29:722392] [debug] [18872] [SolAR::PIPELINES::PipelineNaturalImageMarker::processTracking():366] Need new point to track
[2021-09-27 14:36:29:929675] [debug] [18872] [SolAR::PIPELINES::PipelineNaturalImageMarker::processTracking():313] Reinitialize points to track
[2021-09-27 14:36:30:254294] [debug] [19648] [SolAR::PIPELINES::PipelineNaturalImageMarker::processDetection():232] No pose from Detection for this frame
[2021-09-27 14:36:31:063591] [debug] [19648] [SolAR::PIPELINES::PipelineNaturalImageMarker::processDetection():232] No pose from Detection for this frame
[2021-09-27 14:36:31:895974] [debug] [19648] [SolAR::PIPELINES::PipelineNaturalImageMarker::processDetection():238] Start tracking
OpenCV(4.5.2) Error: Assertion failed ((unsigned)i0 < (unsigned)size.p[0]) in cv::Mat::at, file C:\.conan\84b736\1\include\opencv2/core/mat.inl.hpp, line 871
OpenCV: terminate handler is called! The last OpenCV error is:
OpenCV(4.5.2) Error: Assertion failed ((unsigned)i0 < (unsigned)size.p[0]) in cv::Mat::at, file C:\.conan\84b736\1\include\opencv2/core/mat.inl.hpp, line 871
[2021-09-27 14:36:32:414376] [debug] [19648] [SolAR::PIPELINES::PipelineNaturalImageMarker::processDetection():238] Start tracking
[2021-09-27 14:36:32:823417] [debug] [19648] [SolAR::PIPELINES::PipelineNaturalImageMarker::processDetection():232] No pose from Detection for this frame
[2021-09-27 14:36:33:229406] [debug] [19648] [SolAR::PIPELINES::PipelineNaturalImageMarker::processDetection():232] No pose from Detection for this frame
14:36:44: C:\Users\jmhenaff\work\SolAR\SolAR\samples\Sample-NaturalImageMarker\SolARPipeline_NaturalImageMarker\tests\build-SolARPipelineTest_NaturalImageMarker-Desktop_Qt_5_14_2_MSVC2017_64bit-Debug\debug\SolARPipelineTest_NaturalImageMarker.exe exited with code 3

14:36:53: Debugging starts

Exception at 0x7ff87f4f4ed9, code: 0xe06d7363: C++ exception, flags=0x1 (execution cannot be continued) (first chance) in opencv_core452d!cv::hal::DFT1D::create
Debug Error!

Program: ...17_64bit-Debug\debug\SolARPipelineTest_NaturalImageMarker.exe

abort() has been called

(Press Retry to debug the application)
14:38:36: Debugging has finished

14:38:40: Debugging starts
14:38:40: Unexpected run control state RunControlState::Running when worker DebuggerRunTool started.
14:40:23: Debugging has finished

14:40:27: Debugging starts

Exception at 0x7ff87f4f4ed9, code: 0xe06d7363: C++ exception, flags=0x1 (execution cannot be continued) (first chance) in opencv_core452d!cv::hal::DFT1D::create
Debug Error!

Program: ...17_64bit-Debug\debug\SolARPipelineTest_NaturalImageMarker.exe

abort() has been called

(Press Retry to debug the application)

Stack trace:

1   _threadid                                                                 ucrtbased                                      0x7fffffa77475 
2   _threadid                                                                 ucrtbased                                      0x7fffffa77613 
3   abort                                                                     ucrtbased                                      0x7fffffa8d86d 
4   cv::hal::DFT1D::create                                                    opencv_core452d                                0x7fffecfdc7e6 
5   terminate                                                                 ucrtbased                                      0x7fffffa8c87f 
6   is_exception_typeof                                                       VCRUNTIME140D                                  0x7ff86bfe4c42 
7   is_exception_typeof                                                       VCRUNTIME140D                                  0x7ff86bfe63a3 
8   _CxxFrameHandler3                                                         VCRUNTIME140D                                  0x7ff86bffe1d4 
9   _chkstk                                                                   ntdll                                          0x7ff881ad217f 
10  RtlRaiseException                                                         ntdll                                          0x7ff881a81454 
11  KiUserExceptionDispatcher                                                 ntdll                                          0x7ff881ad0cae 
12  RaiseException                                                            KERNELBASE                                     0x7ff87f4f4ed9 
13  CxxThrowException                                                         VCRUNTIME140D                                  0x7ff86bfeb460 
14  cv::hal::DFT1D::create                                                    opencv_core452d                                0x7fffecfdd2ef 
15  cv::hal::DFT1D::create                                                    opencv_core452d                                0x7fffecfdd457 
16  cv::Mat::at<cv::Vec<unsigned char,3>>                                     mat.inl.hpp                           871      0x7ffff9d65653 
17  SolAR::MODULES::OPENCV::SolARKeypointDetectorRegionOpencv::detect         solarkeypointdetectorregionopencv.cpp 229      0x7ffff9d74b7e 
18  SolAR::PIPELINES::PipelineNaturalImageMarker::processTracking             component.cpp                         307      0x7ff8032488ce 
19  <lambda_35402e386bad71bdf17d7eb1643dd1f4>::operator()                     component.cpp                         415      0x7ff80327d1f6 
20  std::_Invoker_functor::_Call<<lambda_35402e386bad71bdf17d7eb1643dd1f4> &> type_traits                           16707566 0x7ff80325068b 
... <More>                                                                                                                                  

Source code at component.cpp:

->        if (newKeypoints.size() > m_updateTrackedPointThreshold) {
              for (auto keypoint : newKeypoints)
                  m_imagePoints_track.push_back(Point2Df(keypoint.getX(), keypoint.getY()));

              // get back the 3D positions of the detected keypoints in world space
              m_unprojection->unproject(m_imagePoints_track, m_worldPoints_track, m_pose);
              LOG_DEBUG("Reinitialize points to track");
          }

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't working

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions