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.
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:
The most comprehensive of these three free packages, it does everything you could ask it to (mostly) – it’s just not that intuitive.
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.
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.
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!
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 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.
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.
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 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!
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 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).
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.