I'm pleased to announce a major overhaul of the Images package. The big change is deeper integration with other packages: Color and FixedPointNumbers.
Integrating more closely with Color became possible with Color's recent transition to a parametric representation, so that it became possible to represent the pixels formats used in conventional images. This mean that now you won't typically need a "color dimension" to the arrays used to represent images; a 2d image will be, well, 2d. You'll also get a rich array of color conversion functionality for free. FixedPointNumbers exploits some of Julia's magic with number types. For example, it makes Uint8s (really, a new type called Ufixed8) act as if they span the range 0 to 1. Compared to other image-processing packages you may have used before, no longer do you have to retain a mental separation between integer-valued images (spanning 0 to 255, for example) and floating point- valued images (spanning 0 to 1). Moreover, if you're using a 12-bit (or 14-bit or ...), you'll find that there are types that map 12 bits to 0 to 1 already waiting for you. On top of this, testing, consistency, and breadth of functionality has been somewhat increased. My hope is that you'll find that things work just a little bit better and more naturally with the new package. While every effort was made to introduce deprecations where necessary, it's very likely that some breakage will ensue. I've created a page (https://github.com/timholy/Images.jl/blob/master/doc/fixing_breakages.md) that describes a couple of likely sources of trouble; if you encounter problems, feel free to report issues or add to that page. You can get an overview of the new Images at the homepage: https://github.com/timholy/Images.jl Enjoy! --Tim
