EryiXie / PlaneRecNet

This is an official implementation for "PlaneRecNet" (BMVC 2021).
MIT License
79 stars 17 forks source link

How to align the plane_paras of PlaneRecNet and PlaneRCNN? #5

Closed wangyusenofficial closed 2 years ago

wangyusenofficial commented 2 years ago

Thank you for your excellent work! PlaneRCNN uses [ad,bd,c*d] (aX + bY + cZ = d) to represent a plane in the world coordinate system. I assume that PRN uses [a,b,c,d] aX + bY + cZ = d to represent a plane. But I don't see the connection between the two sets of data. Could you please introduce in detail how to generate PRN planeparas from PlaneRCNN? Happy New Year to you! ^^

EryiXie commented 2 years ago

Hi, you can take a look at this. As I can remember in PlaneRCNN, the author gives the normal in XZY instead of XYZ. Predicted plane parameters #12. In my implementation, plane_paras[0:3] are a,b,c and plane_para[3] is offset -d (aX + bY + cZ - d = 0): https://github.com/EryiXie/PlaneRecNet/blob/534e23e6c5db2235ab1e5a9419fb4bfec3ffa943/data/datasets.py#L204

EryiXie commented 2 years ago

Aha, this, this will be a more straightforward explanation (if it is a perfect plane, dist should be zero): https://github.com/EryiXie/PlaneRecNet/blob/534e23e6c5db2235ab1e5a9419fb4bfec3ffa943/data/datasets.py#L379

wangyusenofficial commented 2 years ago

Thank you for your detailed and patient reply!^_^