"The Incredible Convenience of Advertising on Social News Sites".
That aside, this isn't really a killer app. It is much easier to adjust an image in the Gimp or Photoshop than it is to do so in Mathematica. If you are doing image processing, it might be nice to have that available in Mathematica, but it is equally easy to transform images in your $FAVORITE_PROGRAMMING_LANGUAGE.
Don't think "image processing", think "signals processing." The ability to perform complex interactive transforms on datasets representable as images is actually pretty neat.
I doubt Mathematica lets you do anything that competing products like Matlab's image processing toolkit don't do, it just greatly enhances the level of activity associated with image processing.
I can't help but think of ImageJ here. Except Mathematica is much more of a scripting language than Java, so much more convenient if you don't yet know if you're doing the right thing.
For ImageJ packed with scripting languages, see Fiji: http://pacific.mpi-cbg.de . Provides Javascript, Jython, JRuby, Beanshell, and Clojure, although the latter is not a scripting language despite behaving like one.
Writing a flexible toolkit is the easiest part. Applying it to do something actually useful that where the challenge is.
E.g.
OK, but you could just do that in Photoshop, right?
Oh shush, let’s do something you definitely can’t.
And so they create a widget that splits an image into 40 pieces, sorts and groups them by similarity whereby the size of the group is controlled interactively with a slider control. Undoubtedly cool, but ultimately useless for 99.9999% of image processing professionals.
Because it is the premiere environment for manipulating images. But I think he used pictures because that allows us to have an intuition for the kinds of analysis that he's doing, not because he's setting Mathematica up as competition to Photoshop.
As someone else pointed out, these sort of techniques could be useful for the kinds of matrix manipulations and image analysis that scientists and engineers do. Personally, I'm impressed that Mathematica appears to handle images the same as matrices. That's powerful, and of interest to hackers.
> Because it is the premiere environment for manipulating images.
.. which is already "incredibly convenient" for those who are using it.
The example in the article is a typical straw man argument. Photoshop cannot do something, not because it's weak on a technology side. It doesn't do it simply because Photoshop users aren't interested in it as they do a different kind of image processing.
> * "Allowing us to have an intuition .." *
You lost me there, buddy. I spent few years working in the image processing field and let me tell you that the clustering of image fragments by similarity is something that would interest a fraction of a percentage of a researchers in the field. And if his example allowed you to understand what kinds of analysis he is doing, I humbly take my hat off, that's really impressive.
I think that if the power of Mathematica image processing would be combined with the usability of Photoshop, it would be totally awesome. Maybe a plug-in to use Mathematica from Photoshop?
That aside, this isn't really a killer app. It is much easier to adjust an image in the Gimp or Photoshop than it is to do so in Mathematica. If you are doing image processing, it might be nice to have that available in Mathematica, but it is equally easy to transform images in your $FAVORITE_PROGRAMMING_LANGUAGE.