Free software I use

Being a computery type of palaeontologist, a lot of what I do requires pretty specialist software, and ideally pretty beefy hardware. Being from Yorkshire, I begrudge paying the exceedingly large amounts of money that a lot of the professional software packages demand. But there are better reasons for my thriftiness – using freely available software where possible means that my skills are transferrable to different workplaces. It means grant money can be spent on hardware and materials, rather than software licenses. And it means that when I train students in the software I use, they can take those skills wherever they go and not have to re-learn a different proprietary package to do something they have already been doing for weeks/months/years.

The big downside to using free software is that usually there is a trade-off between cost and usability – the reason those professional packages cost so much more isn’t necessarily that they do more, but that it’s easier to do it. I think I should emphasise that I use a lot of these programs not because I’m an open-source warrior or anything (far from it!), but purely for the practical reasons above. I don’t, for instance, use open office… because I find MS office is just miles better (luckily most institutions have a site license for office).

So, for the sake of my colleagues that are always looking for that next program that might make their lives a bit easier, I’ll list here the software I use during the course of my work.

CT segmentation

A lot of people use Amira/Avizo/Mimics to segment their CT data and build models. These are very expensive packages, and I know that many of my colleagues that have become proficient in one have then moved somewhere that has a license for a different program, and the learning process has had to start again.

I’d love to put Osirix down here because it certainly looks pretty, but sadly I am not a mac user. The 64 bit version costs money anyway (and 64bit is basically a necessity with any decent-sized dataset). CT  segmentation is probably the hardest category for me to recommend anything, because I’m still having troubles finding an ideal workflow myself. Of the programs I’ve used (and I’ve tried lots!), I’m settling on one or more of the following:

3D Slicer

The most comprehensive of these three free packages, it does everything you could ask it to (mostly) – it’s just not that intuitive.

Seg3D 2

It’s a fairly clearly designed UI, and intuitive to use, being streamlined enough to not be overwhelming, but having a decent feature set. I’m particularly fond of the otsu thresholding function, which can automatically pull out 1-4 masks based on intensity. In my work, I’ve been able to click a button and get flesh, bones, and markers all segmented out separately. One big downside is that you can’t produced smoothed models and export as obj/stl etc – it’s just VTK and then it’s based on voxels, so models can be massive. Instead, I generally export the masks into Slicer or ImageVis 3D and produce models there.

ImageVis 3D

Came across this the other day, and it’s brilliant for just basic threshold visualization. And you can export that threshold out as various formats. That’s really useful if you’ve made some masks with Seg3D 2 and want to turn them into models.

A Guineafowl leg from CT, as viewed in ImageVis 3D. it's about as no-frills as CT software comes, but that can be a plus if you just want a quick look or basic threshold.
A Guineafowl leg from CT, as viewed in ImageVis 3D. it’s about as no-frills as CT software comes, but that can be a plus if you just want a quick look or basic threshold.

 

Making Figures

Not a lot to say here, Inkscape and Gimp are the best free alternatives to Illustrator and Photoshop. I don’t think they really compare, to be honest – I find both GIMP and Inkscape are slower and have less intuitive interfaces than the Adobe products. But then they are free, and the Adobe offers most certainly are not!

3D Modelling/Rendering

For most stuff I can get by with the below. I’m cheating a bit in this list by including autodesk products, which are free to academics but pretty expensive otherwise.

Meshlab

Meshlab is my go-to program for just having a quick look at a model. It’s quick, it has a bunch of nice filters, and deleting parts of meshes/point clouds is a doddle. Recent versions have been improving the layers system, and it’s pretty good now.

Cloud Compare

The main thing I wish Meshlab could do easily is align to a plane, then colour according to height. It’s something I frequently use, but can’t do in meshlab. That’s where Cloud Compare comes in. I can fit a plane to a whole model or a part, and then colour or contour according to height. It also has some really nice tools for manipulating and, well… comparing… point clouds.

Autodesk Maya

You can get Maya, Max, Autocad and the rest free if you have an academic email address. Maya is integral to the XROMM workflow I’ve been using for the past couple of years, and I’ve really gotten into the rendering and animating side. You can produce some really pretty images of 3D models when you get into the lighting and rendering tricks. For me, it’s also a great way of scaling, moving, and examining 3D data in a virtual environment (I’m really hoping there’ll be a free Oculus plugin at some point).

This is work by my colleagues Steve Gatesy and Rob Kambic, looking at guineafowl locomotion, rendered in Maya:

Paraview

Paraview is the dog’s danglies for analysing all kinds of complicated data. It can do particles, meshes, tables of data, point clouds, and it can apply all kinds of filters (and is extendable by python). I do feel it lacks a bit in render quality (lighting etc), and it’s a fairly steep learning curve, but you can do most things in Paraview.

 

One thing that I wish I could find is a free alternative for Geomagic; It costs such an extraordinarily large amount, but I’m yet to find anything else that can clean meshes in as automated a fashion, or that can fit spheres/cylinders to models and parts of models. Suggestions welcome in the comments!

Photogrammetry

A big part of my work is digitizing real world things (tracks, bones, buildings). Photogrammetry has really taken off over the past few years, and there’s really no excuse for not producing 3D data when it can help (e.g. making a digitype of a new track that remains in the field). As far as I’m concerned, there’s only really one contender for free photogrammetry software:

VisualSFM

VisualSFM is GPU accelerated, so it’s quick (at least for the first stage). I put together a guide on how to use it which is available here. Also worth noting is that the developer, Changchang Wu, is really responsive, and active on the google group.

The second part – the dense reconstruction using PMVS and CMVS is slow though. There doesn’t seem to have been any major breakthroughs on the dense reconstruction recently (PMVS and CMVS were integral to the bundler workflow I first published about using in 2012 [paper written in 2010]).

I will concede however, that photoscan does a lovely job (and works on macs without issue) and now only costs about $100. Still, that’s a hundred bucks that could go on something else. And it’s dense reconstruction phase, like with VisualSFM, is also the bottle neck. Excellent meshing capabilities though.

I’m also keeping an eye on OpenMVG, from which I’m seen some amazing results posted on Google+ by Pierre Moulon. However, I’ve only briefly tried compiling it on windows, failed, and then decided that it wasn’t worth my time hunting down dependencies and the like (Which is exactly what I would have done a few years ago, and indeed did to get the bundler workflow going).

Wrap up

That’s all the main programs that spring to mind… I may update this post annually or something as I find new things and/or throw the rattle out of the pram with others.

Advertisements

8 thoughts on “Free software I use

  1. Hi Peter,

    I agree that the most difficult area to find good open/free software is segmentation- I am currently using Avizo on a trial licence but as a PhD student I wont be able to purchase another copy. I am interested to test out OSIRIX and some of the others you have mentioned.

    Have you tried Drishti for visualisation- I think it is one of the best out there.

    Cheers,

    Bex

    1. Hello Bex,

      I’ve not had particularly good experiences with Drishti actually, though it’s a while since I used it. I’ve also had my eyes on OSIRIX for a while, but as I don’t use apple computers, it’s not available to me – now that it’s become the open source Horus (http://www.horosproject.org/), I’m hoping someone might produce a windows version.

      P

  2. For photogrametry I have tested most of the different software. RealityCapture trumped them all though in terms of model detail

    1. I’ve heard good things about RealityCapture. Unfortunately, compared to everything else I use, it has a pretty hefty subscription cost. It’s also definitely not free (at least, with export cababilities) so wouldn’t fall under the remit of this post.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s