How To Remove Spikes From 2.5D Mesh?

classic Classic list List threaded Threaded
5 messages Options
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

How To Remove Spikes From 2.5D Mesh?

Piero Toffanin
Hello,

I apologize if this is not the right place to ask this question.

I'm using CGAL to compute a constrained delaunay triangulation over the
XY plane for the purpose of turning a point cloud into a 2.5D mesh. Here
are two screenshots to illustrate:

Point cloud:
https://cloud.githubusercontent.com/assets/1951843/24327134/0bc19458-1197-11e7-96ae-4df1c1bd99a1.png

2.5D mesh calculated from the point cloud:
https://cloud.githubusercontent.com/assets/1951843/24327136/1448b174-1197-11e7-8678-e2e2c0bb5292.png

My goal at this moment is to smooth the resulting mesh as to remove some
of the "spikes" that appear after the 2.5D mesh is computed. I've
circled a few examples in this screenshot:
https://cloud.githubusercontent.com/assets/1951843/24327146/6203f9dc-1197-11e7-9c19-11e41d4e6d2c.png

I'm fairly new to CGAL and meshing algorithms, so I was hoping some more
experienced users could point me in the right direction?

Thank you!


--
You are currently subscribed to cgal-discuss.
To unsubscribe or access the archives, go to
https://sympa.inria.fr/sympa/info/cgal-discuss


Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: How To Remove Spikes From 2.5D Mesh?

Simon Giraudot-2
Hello,

Don't worry, this is the right place to ask this question.

 From what I see in your pictures, I would use the connectivity
information of the triangulation to remove these artifacts. More
specifically, circulate over the incident vertices:
http://doc.cgal.org/latest/Triangulation_2/classCGAL_1_1Triangulation__2.html#aba34806b0052ed4d1b7c07f2626b1a38

(For an example on how to use the circulator, see here:
http://doc.cgal.org/latest/Triangulation_2/index.html#title9 )

For each vertex, you can check if the height between this vertex and its
incident vertices is greater than a threshold and remove it if this is
the case. If you don't want to remove points, I think replacing the
height of the vertex by the median height of its incident vertices can
be a good solution too.

Let me know if I'm not clear or if you need more help.

Best,

--
Simon Giraudot, PhD
R&D Engineer
GeometryFactory - http://geometryfactory.com/



Le 26/03/2017 à 01:23, Piero Toffanin a écrit :

> Hello,
>
> I apologize if this is not the right place to ask this question.
>
> I'm using CGAL to compute a constrained delaunay triangulation over
> the XY plane for the purpose of turning a point cloud into a 2.5D
> mesh. Here are two screenshots to illustrate:
>
> Point cloud:
> https://cloud.githubusercontent.com/assets/1951843/24327134/0bc19458-1197-11e7-96ae-4df1c1bd99a1.png
>
> 2.5D mesh calculated from the point cloud:
> https://cloud.githubusercontent.com/assets/1951843/24327136/1448b174-1197-11e7-8678-e2e2c0bb5292.png
>
> My goal at this moment is to smooth the resulting mesh as to remove
> some of the "spikes" that appear after the 2.5D mesh is computed. I've
> circled a few examples in this screenshot:
> https://cloud.githubusercontent.com/assets/1951843/24327146/6203f9dc-1197-11e7-9c19-11e41d4e6d2c.png
>
> I'm fairly new to CGAL and meshing algorithms, so I was hoping some
> more experienced users could point me in the right direction?
>
> Thank you!
>
>



--
You are currently subscribed to cgal-discuss.
To unsubscribe or access the archives, go to
https://sympa.inria.fr/sympa/info/cgal-discuss


Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: How To Remove Spikes From 2.5D Mesh?

Sebastien Loriot (GeometryFactory)
In reply to this post by Piero Toffanin
On 03/26/2017 01:23 AM, Piero Toffanin wrote:

> Hello,
>
> I apologize if this is not the right place to ask this question.
>
> I'm using CGAL to compute a constrained delaunay triangulation over the
> XY plane for the purpose of turning a point cloud into a 2.5D mesh. Here
> are two screenshots to illustrate:
>
> Point cloud:
> https://cloud.githubusercontent.com/assets/1951843/24327134/0bc19458-1197-11e7-96ae-4df1c1bd99a1.png
>
>
> 2.5D mesh calculated from the point cloud:
> https://cloud.githubusercontent.com/assets/1951843/24327136/1448b174-1197-11e7-8678-e2e2c0bb5292.png
>
>
> My goal at this moment is to smooth the resulting mesh as to remove some
> of the "spikes" that appear after the 2.5D mesh is computed. I've
> circled a few examples in this screenshot:
> https://cloud.githubusercontent.com/assets/1951843/24327146/6203f9dc-1197-11e7-9c19-11e41d4e6d2c.png
>

Just to be sure: the noise is already in the input point set, right?

Sebastien.

>
> I'm fairly new to CGAL and meshing algorithms, so I was hoping some more
> experienced users could point me in the right direction?
>
> Thank you!
>
>


--
You are currently subscribed to cgal-discuss.
To unsubscribe or access the archives, go to
https://sympa.inria.fr/sympa/info/cgal-discuss


Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: How To Remove Spikes From 2.5D Mesh?

Piero Toffanin
In reply to this post by Simon Giraudot-2
Simon,

thank you for the explanation! It makes sense. Like you suggested, I
would probably choose to use the median height rather than eliminating
the vertices. I will attempt to write your proposed solution and I'll
come back if I have questions.



On 03/27/2017 01:38 AM, Simon Giraudot wrote:

> Hello,
>
> Don't worry, this is the right place to ask this question.
>
> From what I see in your pictures, I would use the connectivity
> information of the triangulation to remove these artifacts. More
> specifically, circulate over the incident vertices:
> http://doc.cgal.org/latest/Triangulation_2/classCGAL_1_1Triangulation__2.html#aba34806b0052ed4d1b7c07f2626b1a38
>
> (For an example on how to use the circulator, see here:
> http://doc.cgal.org/latest/Triangulation_2/index.html#title9 )
>
> For each vertex, you can check if the height between this vertex and
> its incident vertices is greater than a threshold and remove it if
> this is the case. If you don't want to remove points, I think
> replacing the height of the vertex by the median height of its
> incident vertices can be a good solution too.
>
> Let me know if I'm not clear or if you need more help.
>
> Best,
>


--
You are currently subscribed to cgal-discuss.
To unsubscribe or access the archives, go to
https://sympa.inria.fr/sympa/info/cgal-discuss


Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: How To Remove Spikes From 2.5D Mesh?

Piero Toffanin
In reply to this post by Sebastien Loriot (GeometryFactory)

Yes, the noise is already in the input point set.


On 03/27/2017 03:57 AM, Sebastien Loriot (GeometryFactory) wrote:
On 03/26/2017 01:23 AM, Piero Toffanin wrote:
Hello,

I apologize if this is not the right place to ask this question.

I'm using CGAL to compute a constrained delaunay triangulation over the
XY plane for the purpose of turning a point cloud into a 2.5D mesh. Here
are two screenshots to illustrate:

Point cloud:
https://cloud.githubusercontent.com/assets/1951843/24327134/0bc19458-1197-11e7-96ae-4df1c1bd99a1.png


2.5D mesh calculated from the point cloud:
https://cloud.githubusercontent.com/assets/1951843/24327136/1448b174-1197-11e7-8678-e2e2c0bb5292.png


My goal at this moment is to smooth the resulting mesh as to remove some
of the "spikes" that appear after the 2.5D mesh is computed. I've
circled a few examples in this screenshot:
https://cloud.githubusercontent.com/assets/1951843/24327146/6203f9dc-1197-11e7-9c19-11e41d4e6d2c.png


Just to be sure: the noise is already in the input point set, right?

Sebastien.


I'm fairly new to CGAL and meshing algorithms, so I was hoping some more
experienced users could point me in the right direction?

Thank you!





--

Piero Toffanin
IT Business Consultant

masseranolabs.com
<a href="tel:+12184619746">+1(218)461-9746
@pierotofy
<a href="skype:pierotofy?call">pierotofy

Loading...