ziker
ziker

Reputation: 168

Detecting plane surfaces in 3D model

I did a fast research on this topic and found nothing relevant so im asking here. I have a 3D model in form of mesh(trianguled) from Kinect or some other 3D scanner. What i want to do is identify homogenous plane surface such as doors,floor,tables etc in any given model

Do you know any algorithms to achieve it ? or what should i look for ? thx in advance

Upvotes: 1

Views: 1781

Answers (1)

r3mainer
r3mainer

Reputation: 24557

What you need to look for is groups of connected facets whose normal vectors are oriented in the same direction (within some margin of error).

Connected facets are easy enough to find — they are the ones that share edges in common.

You can obtain their normal vectors by calculating the cross product of two edges, being sure to choose these edges in a consistent way (e.g., by travelling clockwise around the outside of the facet). The size of the cross product is a function of the facet's area, but can be normalized to unit length to make comparisons simpler.

Upvotes: 1

Related Questions