[osg-users] huge mesh decimation

0 views
Skip to first unread message

Ferdi Smit

unread,
Dec 10, 2008, 6:55:30 PM12/10/08
to OpenSceneGraph Users
I'm trying to produce some simplified versions of large mesh objects
(~15-25M triangle CT scans) osgUtil::Simplifier gives me a bad
allocation exception when using a model with ~10M triangles... I suppose
it was not written for very large models and keeps a lot of data around.
Are there any other options, preferably in osg? Software not in the
repository? I've been searching the net, but I can't find any software
that handles these large models properly. Most just freeze or run out of
memory. It seems there are some papers out there with modern algorithms,
but no source or executables.


_______________________________________________
osg-users mailing list
osg-...@lists.openscenegraph.org
http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org

J.P. Delport

unread,
Dec 11, 2008, 1:43:47 AM12/11/08
to OpenSceneGraph Users
Hi,

maybe give MeshLab a try:
http://meshlab.sourceforge.net/

jp

--
This message is subject to the CSIR's copyright terms and conditions, e-mail legal notice, and implemented Open Document Format (ODF) standard.
The full disclaimer details can be found at http://www.csir.co.za/disclaimer.html.

This message has been scanned for viruses and dangerous content by MailScanner,
and is believed to be clean. MailScanner thanks Transtec Computers for their support.

Paul Melis

unread,
Dec 11, 2008, 3:20:15 AM12/11/08
to OpenSceneGraph Users
Ferdi Smit wrote:
> I'm trying to produce some simplified versions of large mesh objects
> (~15-25M triangle CT scans) osgUtil::Simplifier gives me a bad
> allocation exception when using a model with ~10M triangles... I
> suppose it was not written for very large models and keeps a lot of
> data around. Are there any other options, preferably in osg? Software
> not in the repository? I've been searching the net, but I can't find
> any software that handles these large models properly. Most just
> freeze or run out of memory. It seems there are some papers out there
> with modern algorithms, but no source or executables.
Was CGAL among the ones you tried? If so, did it work at all? It seems
like a nice library, but I've never taken the time to actually give it a
test drive.

Regards,
Paul

Dirk Uys

unread,
Dec 11, 2008, 4:06:45 AM12/11/08
to OpenSceneGraph Users
On Thu, Dec 11, 2008 at 10:20 AM, Paul Melis <pa...@science.uva.nl> wrote:
>
> Was CGAL among the ones you tried? If so, did it work at all? It seems like
> a nice library, but I've never taken the time to actually give it a test
> drive.
>
> Regards,
> Paul

It's a good library, but some things are bothersome to me. In my
opinion they make too much use of meta programming, it took me almost
two minutes to compile a basic program. The meta stuff also makes it
really difficult to use CGAL, you have to jump though a thousand hoops
to do the basics.

But it does provide some algorithms that you will not find in other
places. And if meta programming intriuges you, you may enjoy using it.

My use of it was simple and short-lived, so if someone else used it
more extensively I would also like to know more.

Regards
Dirk

Robert Osfield

unread,
Dec 11, 2008, 4:26:43 AM12/11/08
to OpenSceneGraph Users
HI Ferdi,

The osgUtil::Simplifier wasn't designed to handle really large meshes,
so there are no special schemes to doing the simplifier incrementally.
The class makes extensive use of std contains like std::set/map so
memory consumption won't be too linear, but shouldn't be exponential
so it should be possible to handle large meshes given enough memory.

You could probably use the Simplifier is you broke your data up into
more manageable chunks. It wouldn't be elegant, but it could well be a
viable workaround.

Robert.

Ferdi Smit

unread,
Dec 11, 2008, 4:38:55 AM12/11/08
to OpenSceneGraph Users
Meshlab was crashing when I tried it; I've just been testing with 28M
polygon stanford lucy (have to convert my other files to an appropriate
format). smaller models worked fine (e.g. 10M thai statue). It seems
perfect in all other aspects for what I need right now...

I don't know how CGAL works. I've downloaded it now. Maybe I can quickly
adapt the sample in chapter 38 (
http://www.cgal.org/Manual/3.3/doc_html/cgal_manual/Surface_mesh_simplification/Chapter_main.html#Subsection_38.4.2
)

Otherwise Robert's suggestion to split it up in chunks might do. I need
this before the weekend actually, so I don't have too much time to look
into other solutions right now.

Reply all
Reply to author
Forward
0 new messages