Q on reverse-engineering RAW formats

Discussion in 'Digital Darkroom' started by kyle_mcmahon, Jan 23, 2011.

  1. It is my understanding that software manufacturers have to reverse-engineer most cameras' RAW file formats since camera manufacturers consider that information proprietary and do not fully document their RAW file formats. This is why some people advocate, for example, using Nikon Capture NX2 to squeeze the last bit of image quality out of a NEF file.
    Given that, how is it with cameras that produce native DNGs (ie Leica, Ricoh, Pentax, etc)? For example, if I imported a DNG out of one of these cameras into iPhoto/Aperture, would compatibility there be perfect given that Adobe has published information about DNG files, or is their still reverse-engineering that Apple has had to do to support these cameras RAW files? How about Lightroom?
    I'm mostly asking because I'm fond of Aperture, but dislike this whole reverse-engineering business because of proprietary formats. If Apple could interpret camera-native DNGs perfectly (unlike my current NEFs), it would be enough for me to consider a DNG-producing camera in the future.
    Thanks.
     
  2. My understanding is a bit different. Third parties are not reverse engineering the image data, what's proprietary is the in camera processing. The advantage of using Nikon Capture is that your RAW files start with the in camera processing applied (non destructively). Theoretically nikon knows their sensors best, so can produce the best noise reduction / color adjustments, but adobe knows how to make software, and edit image data pretty darn well.
    The image data is out not encoded / encrypted, just the in camera post-processing. Why is DNG any better than a NEF, your just betting adobe is less likely to go out of business than Nikon.
    You could just buy capture NX2 for the first automatic processing, output 16 bit tiffs, and import those into aperture.
     
  3. I'm mostly asking because I'm fond of Aperture, but dislike this whole reverse-engineering business because of proprietary formats. If Apple could interpret camera-native DNGs perfectly (unlike my current NEFs), it would be enough for me to consider a DNG-producing camera in the future.​
    Depending how you look at things, Kyle, dng is also a proprietary format. Not sure if I could switch camera's because of Aperture, either. Personally, I think I'd switch to Lightroom, keep my camera, and use NEF's. Are you thinking M9? :)
     
  4. If Apple could interpret camera-native DNGs perfectly​
    There is a huge misunderstanding on the role of "container" (DNG and manufacturer specific raw formats) and "data".
    Opening the container is easy. That's why people like Dave Coffin manage to have their free raw converters working on new cameras days after they hit the streets. That's all DNG is, another container, and one that's easier to open.
    It's being able to process the data, the "contents" of the container, that's the trick. That's something that DNG doesn't help with, at all. You mentioned Leica. Leica does not use anti-aliasing filters in their cameras (M8, M9, R9 with ModulR, or S2). So, a raw processor needs to have good software "moire remover" to cope with a Leica file, or you'll often see weird color patterns in hair and clothing. Aperture doesn't have as good moire removing ability as Phase One Capture One, or even as good as Lightroom, and DNG doesn't change that. Yes, because of DNG, some programs might be able to open the container without having to reverse engineer anything, but those programs still just stare at the data, without being able to comprehend what to do with it.
    And seriously, I agree with Garrison. Not having Aperture support is no reason to reject a camera. Lightroom literally does everything better than Aperture, from tracking your image database to the actual raw processing. P1C1, better still.
     
  5. The site below offers some understanding on the algorithms implemented by all Raw converters in turning a Bayer filter R,G,G,B mosaic pattern into a recognizable image straight from the sensor after going through the camera's analog to digital converter...
    http://www.linuxphoto.org/html/test_demosaicing.html
    One of the piece of proprietary information only camera manufacturers have as told to me by Adobe ACR engineer Eric Chan (in addition to their incamera processing) that other Raw converters don't have access to, is the exact spectral color describers for each of the Bayer red/green/blue filters that filter the photons into each sensor pixel site.
    Program engineers need this information to provide a color source starting point in rendering the default preview seen in each Raw converter. Adobe uses a linear version of ProPhotoRGB colorants as their starting point.
     
  6. As someone who has reversed engineered many raw formats (for ImageIngester), let me add a few things.

    One doesn't deal with DNG directly; rather one uses Adobe's SDK.

    I know of no manufacturer of cameras who supplies an SDK, or even documentation.

    Every raw format I've looked at is based on TIFF. So, you start there. But TIFF is very flexible, so one needs lots of
    trial and error, guesswork, analysis, and experimentation to figure it out. The web has various bits and pieces of info,
    and there are a few open source apps and libraries that can be looked at.

    The raw data is seldom the problem. Rather, it is embedded previews and metadata.

    That said, I think the OP's reasoning is faulty. Software, like Lightroom, Aperture, etc., that processes raw formats is
    perfectly OK, and the number of cameras that use DNG is very small.

    The point made above that the problem is in the numbers, not how they are stored, is right on. (ImageIngester is not a raw processor, so I never care about the numbers.)
     
  7. One of the piece of proprietary information only camera manufacturers have as told to me by Adobe ACR engineer Eric Chan (in addition to their incamera processing) that other Raw converters don't have access to, is the exact spectral color describers for each of the Bayer red/green/blue filters that filter the photons into each sensor pixel site.​
    If you are going to mention somebody by name, it would be really useful to make sure you understand what they are saying and the implications of what they said.
    No, Eric can't know the exact spectral properties of the red, green and blue tri-color separation filters on a sensor. Is that mission critical? No...by testing, they (Adobe) can deduce the response of the sensor and in the case of Nikon or Canon produce multiple flavors of DNG profiles to address multiple renderings.
    Again, if you are going to try to use their name, you better be darn accurate (or quit using the name). Just saying...
     
  8. Schewe, you don't determine what is understood by someone. You're not an authority on freedom of speech, nor are you an engineer.
    I read what I read at Adobe forums. I understood what I understood. If I want to be corrected on what I say about something I read I'll go by what Eric says. If he wants to correct me, he can post right here.
    If you have facts that state otherwise then just spell it out. Just like you told me over at that Kodachrome discussion at Luminous Landscape, why don't you contribute something useful. How you disrespect your contributors over there isn't going be tolerated over here.
    So put a sock in it, Schewe. Get it? Shoe (Schewe), Sock. At least I'm not calling out a contract for a hit man on someone that doesn't adopt ETTR like you told someone over at LuLa. I couldn't believe you said that, Jeff.
     
  9. Tim Lookingbill - One of the piece of proprietary information only camera manufacturers have as told to me by Adobe ACR engineer Eric Chan (in addition to their incamera processing) that other Raw converters don't have access to, is the exact spectral color describers for each of the Bayer red/green/blue filters that filter the photons into each sensor pixel site.​
    Well, at least two other raw converter writers have access to that information. I used to make those measurements, under contract, for one raw converter writer, until he brought that ability in house. And another that I tried to sell my services to said he had that capability already.
    Jeff Schewe - If you are going to mention somebody by name, it would be really useful to make sure you understand what they are saying and the implications of what they said.
    No, Eric can't know the exact spectral properties of the red, green and blue tri-color separation filters on a sensor.​
    If you are going to correct someone, it would be really useful to make sure you understand what you are saying.
    Of course Eric can know the exact spectral properties of the filters. Anyone with a monochromator (I use a Perkin-Elmer)and a photometer that is either flat response (like the Dexter thermopile photometer I use) or is of known spectral response (like the Tektronix I use for some other applications) can do this. I used to do it for one of the other raw converter authors, so to imagine that Adobe does not do this is to accuse them of negligence, and despite the behavior I've witnessed from you in the past, I don't think even you are capable of that level of uncouth.
     
  10. Thanks, Joseph, for contributing some VERY interesting information.
    I'm a big fan on how all this works under the hood and I'm glad to find someone else such as you who's willing to divulge such information. I thank you for all your hard work.
    I suspected all along such information could be useful because I used to work with Windsor Newton watercolor and Dr. Martin dyes in my early days as an illustrator. I had to learn the spectral reflectance shifting issues under different light sources, on different papers with these pigments and how it presents itself to commercial color reproduction camera's. Also from what Thomas Knoll was talking about in a thread where he described his long battle with coming up with a decent color engine to drive the previews during color editing in their Adobe software gave me an indication they had to deal with the same issues.
    I love it when art meets science even though the science part is often above my comprehension.
     
  11. Tim, you're very welcome.
    Color perception has always been my favorite aspect of optical psychophysics.
     
  12. Another view point on the subject of spectral characteristics of color filters can be compared to how our eyes see the RGB purity's of our display. For me I find it hard to tell the difference between one display's highly saturated 255 red from another including the rest of the 255 combos that make up CMYRGB+BW on an 8 bit video system. Even viewing gradients of these purity's don't tell the whole story.
    But some how a colormeter and/or spectrophotometer can see the differences and build a unique ICC display profile that describes each display's colorant characteristics and their 255 to 0 gradient combinations.
    So why shouldn't we know the same information about the Bayer R,G,G,B filters used in describing a camera's photon filtering color capture characteristics?
     

Share This Page

1111