PointCloudLibrary / PointCloudLibrary/pcl

some problem about pcl and eigen

Open
#5,831 16 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

kind: bug
Dominant language
C++
Stars
11.1k
Forks
4.7k
Avg merge
4d 10h
Merged PRs (30d)
6

Description

My code,Test3Dto3Dmatch.cpp, runs successfully when compiled in Debug mode. However, when I compile it in Release mode, I encounter a heap-buffer-overflow issue. To debug this, I added "-fno-omit-frame-pointer" and "-fsanitize=address" to the CMakeLists file. The error seems to occur within the Eigen library at Eigen::internal::handmade_aligned_free(void)*. I suspect the issue may be within functions like bimToslam::ISSextractor::operator() and bimToslam::Frontend::ExtractandMatchISS(), which are used for point cloud feature extraction. To investigate further, I created a new test file, TestISSextractor.cpp, and removed the parts related to Eigen. However, I still encounter the same error, roughly as follows:

==21835==ERROR: AddressSanitizer: heap-buffer-overflow on address 0x7fffd3e607f8 at pc 0x5555555e6f82 bp 0x7fffda9fd3e0 sp 0x7fffda9fd3d0 READ of size 8 at 0x7fffd3e607f8 thread T1 ... 0x7fffd3e607f8 is located 8 bytes to the left of 15672944-byte region [0x7fffd3e60800,0x7fffd4d52e70) allocated by thread T1 here: #0 0x7ffff6ef6b40 in __interceptor_malloc (/usr/lib/x86_64-linux-gnu/libasan.so.4+0xdeb40) #1 0x7ffff602fa88 in Eigen::internal::aligned_malloc(unsigned long) (/usr/lib/x86_64-linux-gnu/libpcl_filters.so.1.8+0x311a88)

I tried searching online and found similar issues, suggesting a problem between PCL and Eigen libraries. Some solutions involve enabling AVX instruction sets, so I added "-mavx2" in the CMakeLists file, but the issue remains unresolved. Here is my codehttps://github.com/timetosaygoodb/bimToslam.Here is the reference #4859

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Reproduce the Release-only AddressSanitizer failure using Test3Dto3Dmatch.cpp and the isolated TestISSextractor.cpp, reviewing the CMakeLists sanitizer and AVX2 flags. Trace the reported allocation through bimToslam::ISSextractor::operator() and bimToslam::Frontend::ExtractandMatchISS(), and compare the findings with reference issue #4859. Done means the PCL issue is isolated to a reproducible cause and a verified fix or clear diagnosis is documented.

Written by the indexing model from the issue text.

Assessment

Tech stack
cmake, cpp
Domain
build-system, computer-vision
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.