Skip to content

Aruco thread switching segmentation fault #1643

Closed
@st-le

Description

@st-le
System information (version)
  • OpenCV => opencv contrib 3.4.1
  • Operating System / Platform => Ubuntu 14.04 64b
  • Compiler =>
Detailed description

I have thread switching segmentation fault when invoking detectMarkers. The original sample detect_markers.cpp does not have error though. Here is partial gdb bt.

test_detectMarkers -c=camera.yaml -d=10 --dp=detector_params.yml -l=100
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1".
[New Thread 0x7fffe4da0700 (LWP 28168)]
[New Thread 0x7fffe3eaf700 (LWP 28170)]
[New Thread 0x7fffe36ae700 (LWP 28171)]
[New Thread 0x7fffe2ead700 (LWP 28172)]
[New Thread 0x7fffe26ac700 (LWP 28173)]
[New Thread 0x7fffe1eab700 (LWP 28174)]
[New Thread 0x7fffe16aa700 (LWP 28175)]
[New Thread 0x7fffe0ea9700 (LWP 28176)]

Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread 0x7fffe0ea9700 (LWP 28176)]
0x00007ffff648f66c in cv::aruco::identifyOneCandidate(cv::Ptrcv::aruco::Dictionary const&, cv::InputArray const&, std::vector<cv::Point, std::allocator<cv::Point > >&, int&, cv::Ptrcv::aruco::DetectorParameters const&) [clone .constprop.342] () from /usr/local/opencv-3.4.1_contrib3.4.1_n_ts/lib/x86_64-linux-gnu/libopencv_aruco.so.3.4
(gdb) bt
#0 0x00007ffff648f66c in cv::aruco::identifyOneCandidate(cv::Ptrcv::aruco::Dictionary const&, cv::InputArray const&, std::vector<cv::Point, std::allocator<cv::Point > >&, int&, cv::Ptrcv::aruco::DetectorParameters const&) [clone .constprop.342] () from /usr/local/opencv-3.4.1_contrib3.4.1_n_ts/lib/x86_64-linux-gnu/libopencv_aruco.so.3.4
#1 0x00007ffff648fd18 in cv::aruco::IdentifyCandidatesParallel::operator()(cv::Range const&) const () from /usr/local/opencv-3.4.1_contrib3.4.1_n_ts/lib/x86_64-linux-gnu/libopencv_aruco.so.3.4
#2 0x00007ffff68eb67a in (anonymous namespace)::ParallelLoopBodyWrapper::operator()(cv::Range const&) const () from /usr/local/opencv-3.4.1_contrib3.4.1_n_ts/lib/x86_64-linux-gnu/libopencv_core.so.3.4
#3 0x00007ffff680a6cf in cv::ParallelJob::execute(bool) [clone .constprop.46] () from /usr/local/opencv-3.4.1_contrib3.4.1_n_ts/lib/x86_64-linux-gnu/libopencv_core.so.3.4
#4 0x00007ffff680c5ae in cv::WorkerThread::thread_body() () from /usr/local/opencv-3.4.1_contrib3.4.1_n_ts/lib/x86_64-linux-gnu/libopencv_core.so.3.4
#5 0x00007ffff680c679 in cv::WorkerThread::thread_loop_wrapper(void*) () from /usr/local/opencv-3.4.1_contrib3.4.1_n_ts/lib/x86_64-linux-gnu/libopencv_core.so.3.4
#6 0x00007ffff2e67184 in start_thread (arg=0x7fffe0ea9700) at pthread_create.c:312
#7 0x00007ffff5c8637d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:111

Steps to reproduce

ArucoMarkerDetector_test.zip

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions