LimHyungTae / patchwork

SOTA fast and robust ground segmentation using 3D point cloud (accepted in RA-L'21 w/ IROS'21)
MIT License
487 stars 74 forks source link

It seems that the element of normal_ along z shoud be positive #26

Closed HMX2013 closed 1 year ago

HMX2013 commented 1 year ago

Thanks for your excellent work, I used your work on a depth camera's cloud. I found sometimes the plane's norm vector may point below ground, this will cause wrong ground estimation. I add this line "normal(2) = fabs(normal(2));" Then everythong is OK. I study the function "extract_piecewiseground" and think the plane's norm vector should point above ground. I have also used this algorithm on LiDAR but didn't meet this problem.

Screenshot from 2023-07-27 14-39-51 Screenshot from 2023-07-27 14-40-47

LimHyungTae commented 1 year ago

Dooray! 부재중 자동 응답

(이 메일은 부재중 설정을 통해 자동으로 전송되는 메일입니다.)

안녕하세요, 7/20~8/10일까지 기초 군사 훈련으로 인해 답장이 어렵습니다.돌아오면 바로 답신 드리겠습니다. 감사합니다. Thanks for sending this e-mail, but, unfortunately, from 20th July to 10th Aug., I can't check my e-mail due to my basic military training (which is a kind of military duty in South Korea)I'll reply your e-mail as soon as I get back. :)

이 메일은 발신전용으로 회신되지 않습니다.

© Dooray!

HMX2013 commented 1 year ago

I found in patchworkplusplus, this problem has been fixed,
if (normal(2) < 0) { for(int i=0; i<3; i++) normal(i) *= -1; }

LimHyungTae commented 1 year ago

Sorry for the late reply. I fixed it and I also exploited TBB! Please check the code. Now it operates at around 100 Hz.