Month: October 2007

  • Idea: Upgrade[hack] your digital camera

    If you haven’t seen High Dynamic Range (HDR) photographs, you need try a Google Image Search for “HDR Photo.”  The idea is that you can capture a photo with really bright (overexposed) areas, and really dark areas (underexposed), and adjust the colors so that both areas have a lot of definition.


    The pictures come out looking more like artwork than photographs.


    Here’s an example HDR photo of New York City:


    NewYorkHDR


    Once I saw a few of these photos, I wanted to make my own.  Tutorials on the subject tell you that you need to take two photos every time you want to create an HDR image, unless your camera can take RAW images.  First, you take an underexposure, then an overexposure, then you will merge them together with Photoshop later.  The reason for this is because when your camera compresses your photo into a JPEG, it discards most of the color data.  For most uses, this is fine, but it doesn’t bode well for creating HDR versions later.


    The trouble with RAW formats is that they aren’t standard (Canon is different from Nikon is different from Sony…), and most cameras don’t even let you choose RAW.  The other difficulty with RAW is that the files are huge — sometimes 6 times larger than JPEG –, so you’ll be crippled in terms of how many photos you can take.


    The guys who standardized JPEG (in 1994!) just voted on whether to “start work” on a new format called ”JPEG XR.”  But the proposal is actually more or less a request to rename an existing format called “HD Photo.”  HD photo comes from Microsoft, and they’ve built support into Vista, and there are plugins for XP and OSX.  This format fixes most of the annoyances of JPEG — namely, you can still retain HDR information, and the files are about the same size as JPEG.  Sounds great, but you can’t buy a camera that supports this.


    You can download freely-available C++ source code which encodes HD photo/JPEG XR.  It is intended to be used as a base for building HD photo support into digital cameras.  But I suspect it’s going to be a while before HD Photo/JPEG XR shows up in real cameras. 


    So here’s my idea-of-the-day:


    Hack the firmware for your digital camera to save files as JPEG XR instead of JPEG!


    Of course this will almost certainly void every warranty on your camera, I don’t suggest trying unless you absolutely know what you’re doing or you don’t care about your warranty, so take this idea as-is.  Don’t blame me if you brick your camera, but do send me your HDR photos if you accomplish this!