Digital Image Processing Framework
My first and second choices are Python and IDL, not necessarily in any order.  

Python is popular with scientists, engineers and artists, well-known, on all platforms, free and open.  You need Numpy and PIL (Python Imaging Library).  Python is more and more commonly used in many places where Matlab used to rule.

IDL from IIT-VIS (I think it's a different name now) is similar to Matlab and the like, but nicer syntax for multidimensional arrays. Very popular with astronomers, geologists, and various others.  It has flaws.  IDL costs $$ but luckily there's a free version named Fawlty Language. It's not open source, but is free (last time I checked.) I don't have the link handy, but google it.   There's also GDL which is a Gnu attempt to create an IDL-compatible interpreter, but last time I tried it, it wasn't so good.

I don't like Octave because it's clumsy for three dimensional and higher arrays.  Images are only 2D, but I often need to process a stack of them, and also may have RGB or other types of channels.