For my research in optic flow I am working with the Yosemite sequence used in Barron, Fleet, and Beauchemin’s optic flow algorithm comparison “Performance of Optic Flow Techniques” (Link to Technical Report version). They were kind enough to publish the all of their code and the image sequences on their FTP site, but the images they provide are Sun rasterfiles, and the algorithms I need to work with all take .avi. Until I started work on this project I had never heard of rasterfiles, and indeed it is a pretty obscure file format.
After much search this is the best way I was able to come up with to convert a series of .ras rasterfiles to an avi.
Step 1: Convert the ras files to jpgs.
An excellent tool for this is XnView which is an image viewer/converter available for Windows/OS X/Linux/and many others… It reads more image formats than I knew existed, outputs to all the ones I would ever need (jpg, png, tiff, plus more…), and more importantly for this task, is capable of batch conversions.
Step 2: Convert the series of jpgs to an avi
Far and away the best way to do this is with mencoder / ffmpeg. Two links explain all you need about this step, the first is the documentation page from the MPlayer site (mencoder is the encoding and video creation sibling of MPlayer): Link to Mencoder doc and the second link is some additional comments and instructions from a grad student at MIT: Link 2 He also has some nifty things about embedding video in a pdf using LaTeX (bottom of the page). You can also do this step with pngs instead of jpgs if you prefer (XnView can output these as well). The install of mencoder I was using didn’t have the png libraries installed, so I didn’t bother with it, but they are available and there is plenty of documentation available to get this set up correctly.
Step 3: Enjoy your .avi
Here is the yosemite.avi I created for my project: Yosemite.avi optic flow video sequence
In as much as it’s in my power to do so I put that file in the public domain; please, use it. You’ll have to verify any additional requirements stipulated by the original FTP files.
And also a link to the optic flow library I was using for this project. It is part of the OpenCV library (Open source Computer Vision), and is pleasantly direct to work with and makes for very fast development times. OpenCV was also used heavily by the Stanford team, lead by Sebastian Thrun, which won the 2005 Grand Challenge. An excellent tutorial on using the pyramidal Lucas-Kande implementation in the library is written by David Stavens (a member of the Stanford team) and is available here: Link to Staven’s OpenCV OF tutorial