Graphics, Visualization and Programming tools
Some of the tools that I use for my work:
C/C++ - Not programming languages, but a way of life. I resist the temptation to keep program design too object-oriented, given that I write mostly research code whose design changes all the time anyway.
The Data Display Debugger (DDD)
A great GNU graphical interface to either gdb or dbx. Of all the pathetic excuses for free debuggers, this one is actually fairly good.
OpenGL
- a great low-level graphics library. Allows precise control of camera, model transformation, lighting, and texture. Was stripped of its user interface once it got "Open", but Inventor or Xforms are good packages to interface with.
OpenInventor
- a higher level graphics library, easier to use but less control than OpenGL. I use Inventor for its model file format, and OpenGL for precise camera parameter control - that seems to work best although its sometimes complicated.
The Visualization toolkit
A cool, free high-level package for graphics, image processing, and visualization. There's also an excellent book for it, and it has bindings for C++, in addition to Python, Tcl, and Java.
Xforms
- a nice user-interface package, and free for non-commercial use. I also built a color image viewer plug-in for Xforms, and use it for interactive display of images and intermediate results. (e-mail me if interested - eventually I'll distribute this properly)
LEDA
- Library of Efficient Data Structures. A nice package with lots of datastructures and various simple computational geometry algorithms implemented. Also free for non-commerical use.
Perl
- Cool scripting language. Much faster than shell scripts. Great for moving tons of files across directories, converting image formats, etc. Basically, the best of sed and awk (and much more) in one package.
The GIL image format. A home-brewed image format, made in CMU in the 80s. Somewhat archaic, but its nice because we have a lot of utilities for image processing of GIL images.
Reg Willson's
image calibration library. An efficient implementation of a well-known camera calibration algorithm by Roger Tsai (CVPR 1986)
GIMP
- The Gnu Image Manipulation Program. Like Photoshop, only better. And free. If you want a UNIX image editor, go no further. Just save your work often enough and be ready for a crash anytime :)
Sundar Vedula
srv@cs.cmu.edu
November 2, 1998