In some posts dating back to last year I discussed the Leica M9's by now notorious red edges problem, starting with this post. At the time, I thought, and commented to that effect on the Leica User Forum, that while Leica wouldn't be able to 100% solve the problem given manufacturing variations in both lenses and the M9, they would be able to make substantial improvements by tweaking the M9's firmware corrections. However, there's been a deafening silence out of Solms, and the silence is growing more deafening by the day - no firmware update, no statement about what the issue actually is.

What's concerning is that its now been quite a while. CornerFix V1.3.0.0, which was capable of correcting the red edges in most cases, shipped in early Novemeber last year. CornerFixV1.3.0.4, which fixed some early bugs, and extended "most cases" to "pretty much all cases", shipped in late November. So its now nearly three months since a version of CornerFix that unambiguously nails the problem shipped, but Leica haven't got anything out of the door.

The question is, why haven't Leica shipped a new firmware version? This is actually a major issue, and it's not as if it just impacts 50 year old lenses, or lenses from other manufacturers - it impacts the vast majority of Leica's own 18mm lens, which was introduced in past few years, as well as a good number of examples of other lenses, e.g., the 21 mm and the WATE.

Well, I can only speculate, although it's somewhat informed speculation in the sense that I know exactly how CornerFix solves the problem. It seems to me that there are only a limited number of possible explanations:

Explanation 1: Leica's just busy with the S2, etc.  Well, maybe. The S2 is probably Leica's view of its future. But the M9 is today's cash cow. Neglecting getting it right seems like a big risk, even if production hasn't yet caught up with demand.

Explanation 2: The red edges just can't be fixed much better than they are now. This is the "doomsday scenario", and not a pleasant one, and certainly not one that I had considered up till recently. But there is some evidence that supports it:
  • The Kodak DCS PRO 14n suffered from what was known as the "Italian Flag" problem (green on the left, red on the right!) with some lenses. That was never solved in firmware - it took a next generation Kodak DCS with a revised sensor to solve the problem. And the M9 uses a Kodak sensor.....
  • Stephan Daniel referred in a recent interview to vignetting correction as being "more of an art than a science", which discourages me. I'd be a lot more confident if this was being described as an engineering problem. In my opinion, Leica should be viewing this as a matter of science, and statistical variations in production. Trying to make corrections by "feel" seems unlikely to result in an optimal solution, and will maybe result in no solution at all.
  • I'm starting to have a lot of trouble believing that Leica didn't know about the red edges before the M9 shipped, which in turn implies that they had ample opportunity to find a fix, if they could. What we know today, and didn't know three months ago, is that nearly all 18mm lenses show red edges. In fact, every one that I'm aware of does, and I know of at least one M9 user that tried all three that his local dealer had available. And when I specifically asked in a post on the Leica User Forum a few days ago whether anyone knew of an 18mm that didn't have red edges on the M9, nobody responded. So to believe that Leica didn't know about this, we need to believe that either the 18mm wasn't tested for vignetting, or the test was so hopeless incompetent as to miss the problem.
Explanation 3: Red edges are a lot more difficult to fix in firmware than anyone thought. This is a more hopeful scenario, and fortunately one that we have some reason to believe might be true. The reason is the following. If you consider what computations CornerFix has to do in order to correct an image as a proxy for what the M9 firmware might have to do, the answer is very different for the M8 and M9:
  • For the M8,  a simple symmetrical radial devignette, centered on the physical center of the sensor is sufficient for CornerFix to correct any lens, up to and including the CV12 and CV15. That amounts to what is in effect a "half of a radius computation" and a look-up for every pixel.
  • For the M9,  an offset asymmetrical correction is required. What that amounts to is an (a) offset computation, (b) a full radius calculation, (c) multiple look-ups, and (d) a complex interpolation process for each pixel.
Now Leica may be able to do something clever to simplify that process - they have the advantage of presumably knowing in detail what the root cause of the problem is, and thus having a mathematical description of what's going on, which I don't. However, two things are near certain - firstly, the M9's vignetting correction code will need a total rewrite, and secondly it will absorb far more processing power than the M8's algorithm, which also appears to be the current M9 algorithm. However, we know that the M9's processor is already heavily loaded, so unless some really efficient code gets written, the M9 may be slowed to a crawl. And writing really efficient code takes time. And there's a complication - the original code was written by Jenoptik for the M8, so its likely they will have to create any new code, or a new set of programmers will have to understand the old code.

What happens if the M9's processor just can's handle the load, no matter how efficient the code is? Well, there a solution to that, but a solution that will be very unpopular in many quarters. Leica could simply give up on doing the corrections in-camera, and embed correction op-codes into the DNG image, using the DNG 1.3 specification. That means no processing the image pixel by pixel. However, there are two problems with that. That means the in-camera JPEGs aren't fully corrected, and that DNGs can only be processed in Adobe Lightroom or ACR. No other raw developer implements DNG 1.3 opcodes. Which will drive the Capture One enthusiast crazy, and could seriously cut into the "rich snapshot" market. And given the somewhat strained relationship between Phase One and Leica at the moment, it's not clear that Phase One would go to the trouble of writing correction code.

So we live in hope.......

UPDATE: Part 2 here.
3

View comments

  1. Good news in a difficult year - all the macOS apps that I support - AccuRaw EXR, AccuRaw Monochrome, pcdMagic, CornerFix, dcpTool (both the GUI and command line version), DNG cleaner and pcdtojpeg - now are all available with native Apple Silicon versions for blazing fast performance on Apple's new "M1" processor. Download are in all the usual places.

    Enjoy.

    0

    Add a comment

  2. There's a whole slew of new camera support, including for Canon's new CR3 format.

    Updates of AccuRaw EXR, AccuRaw Monochrome, PhotoRaw are now available on the Apple App Store. These updates add support for these new cameras: Canon EOS-1D X Mark III, Canon EOS 90D, Canon EOS M50, Canon EOS M6 Mark II, Canon EOS Rebel SL3 (EOS 250D), Canon EOS R, Canon EOS RP, Canon EOS R5, Canon EOS R6, Canon PowerShot G5 X Mark II, Fujifilm XF10, Fujifilm GFX 50R, Fujifilm GFX 100, Fujifilm X-100V, Fujifilm X-A7, Fujifilm X-Pro3, Fujifilm X-T30, Fujifilm X-T4, Fujifilm X-T200, Leica Q2, Leica SL2, Nikon Coolpix P950, Nikon Coolpix P1000, Nikon D780, Nikon Z 6, Nikon Z 7, Nikon Z50, Panasonic DC-G90, Panasonic DC-G100, Panasonic DC-G110, Panasonic Lumix DC-G95, Panasonic DC-LX100 M2, Panasonic DC-S1, Panasonic DC-S1R, Panasonic DC-S5, Panasonic Lumix DC-FZ1000 II, Olympus OM-D E-M1X, Olympus OM-D E-M1 Mark III, Olympus E-PL10, Olympus OM-D E-M5, Olympus OM-D E-M10 Mark IV, Olympus TG-6, Pentax K1 II, Ricoh GR III, Sony DSC-RX100 VII, Sony A7 III (ILCE-7M3), Sony A7C (ILCE-7C), Sony A7R Mark IV (ILCE-7RM4), Sony A7S III (ILCE-7SM3), Sony a6100 (ILCE-6100), Sony a6400 (ILCE-6400), Sony a6600 (ILCE-6600),Sony HX99. 

    0

    Add a comment

  3. pcdMagic for Windows - the only currently available app that can convert Kodak Photo CD images with correct color and at full resolution - is now available on the Microsoft Windows Store.

    This great news for users:

    • The Windows Store version has a free trial mode that allows the app to be tested without any commitment.
    • The Windows store handles all updates automatically.
    • There's no need to keep track of license codes.
    The Windows store only supports the latest versions of Windows 10. However, for users of earlier versions of Windows, you can still purchase pcdMagic from the FastSpring webstore.
    2

    View comments

  4. As usual when new Leica cameras come out, I took a quick look inside a DNG from one of Leica's new Leica CL  cameras:

    1. The camera name shows as "LEICA CL"
    2. The image data is 14-bit. There is no compression used in the DNG I looked at. 
    3. The DNG version is 1.4, with a "backward version" of 1.3. There is a reason for this - DNG 1.3 allows for opcodes, which Leica use for lens correction.
    4. In the DNG I looked at, which was shot with a "Summicron TL 1:2 23 ASPH." lens, lens correction is done by a single "WarpRectilinear" operation in the DNG. 
    5. In addition to the lens correction op code, there is also a "FixBadPixelsConstant" opcode, whose function is exactly as the name states. This is the same as in the Leica Q, SL, etc.
    6. Unusually, the DNGs all contain 2 different JPEG preview images in addition to the main raw image, one of 1620x1080, and finally a full sized preview of 6000x4000. Having the full sized preview is particularly odd, as it takes up a lot of space. In the approximately 45 MB files I've seen, the full size preview typically takes up about 1.8 MB. 
    So in summary, the DNGs appear to be a bit of a hybrid of the "SL", "Q", etc style of DNG, with a single lens correction opcode, and a bad pixels correction opcode, and of the "M10" style of DNG, with a full sized preview. As I noted in my analysis of the M10 DNG, the full size preview is probably there to support viewing on mobile devices that often don't have raw decoding capability built in. 

    Finally, it's notable that the DNGs don't contain the bizarre Lightroom XMP metadata that the M10 DNGs have embedded in them. 
    2

    View comments

  5. So finally, after many years of searching, I have an answer to the question that torments all who go down the digital color rabbit hole.

    This is from XKCD, brought to my attention via an article on the Digital Transitions website about the Phase One IQ3 100mp Trichromatic.



    0

    Add a comment

  6. Back in January, when the new Leica M10 was introduced, there were claims that the improvement in dynamic range from the Leica M240 to the M10 was of the order of 1.5 to 2 stops.  At the time, I wrote that just by eyeballing the published images, I believed the improvement to be "closer to 0.5 stops than 1.5-2".

    Much to my surprise, given what I had thought to be just a basic explanation of why dynamic range is a tricky concept, the post generated a lot of push-back. And I mean a LOT.

    Well, now there is actually an independent third-party measurement available, from photonstophotos.net:


    And....(drum roll)....the improvement in DR between the M240 and the M10 is 0.55 stops. As I predicted back in January.

    You can a find whole lot more information, including a useful interactive graphing tool that allows you to compare cameras, on the photonstophotos.net site.
    0

    Add a comment

  7. dcpTool has been available for quite a while as a command line application for Windows and the Mac. But now it available in the form of an easy to use Mac app, with powerful batch processing capabilities. dcpTool for the Mac is available from the App Store.

    dcpTool allows you to:

    1. Decompile DNG Camera Profile (DCP) files in XML. The XML can then be read and edited with a simple text editor.
    2. Recompile edited XML into DCP files
    3. Remove "Hue twists" from camera profiles. 
    For more information on hue twists, see these posts:
    11

    View comments

  8. Many cameras embed lens corrections into raw the raw files that they produce. Generally, that's a good thing - straight lines stay straight, etc. For an example of lens corrections in practice, take a look at this post about the Leica SL.

    But, as the saying goes, "there is no free lunch". Lens corrections also have some downsides:

    • Lens corrections result in a small reduction in sharpness. Sean Reid, at Reid Reviews has done extensive testing on this as part of his various lens reviews, and his conclusions are clear - there is a measurable loss in sharpness.
    • Lens corrections result in some reduction in image size - the corrections inevitably result in the edges of the image curving, and the curved parts need to be trimmed off to get back to a straight edge.
    So sometimes, it's useful to be able to get an uncorrected image. Now there are some raw developer apps that allow you get to uncorrected images (AccuRaw EXR is one of them), but most mainstream apps such as Lightroom and Photoshop don't allow correction to be disabled.

    Fortunately though, there is a "simple trick" that will allow you to disable lens corrections for nearly any camera that produces raw images. What you need to do is a simple two step process:
    1. Firstly, convert the raw image to a DNG image, using Adobe's DNG converter.
    2. Then use DNG Cleaner (macOS only) to remove any opcodes.
    The resulting DNG will not have any lens correction, and you can load it into Lightroom, Photoshop, or any other app that supports DNGs.

    Why does this work? This works because whenever DNG Converter converts an image that needs lens correction, it embeds the required correction as an "opcode" into the DNG image. Lens correction opcodes as usually things like "WarpRectilinear". DNG Cleaner knows where to find these opcodes, and simply removes them, as long as you have the "Remove opcodes" checkbox selected:


    Note that in order for this to work, you need DNG converter to be using it's default settings. Specifically, Compatibility should be set to the most recent version of Camera Raw. You should definitely not be using Custom Settings with the "Linear" checkbox selected. "Linear", otherwise known as LinearRaw, bakes any corrections into the actual data in the DNG, making it impossible to remove.

    There's more information on the DNG Cleaner website.
    0

    Add a comment

  9. Those of you that have read the Leica M10 raw file analysis post will know that M10 DNGs have more baggage in them that is typically the case for a Leica DNG. I've put together a little app to clean them up, called DNG Cleaner (Mac only for the moment). For M10 DNGs this will remove:

    1. The full size image preview - that will save about 3MB
    2. The various Lightroom/Photoshop adjustments embedded in the XMP portion of the DNG - ISO dependent noise reduction settings, lens profiles, etc

    DNG cleaner will also optionally remove opcodes, and apply lossless compression. This isn't relevant to the M10, but in many other Leica cameras, e.g., the Q, the SL, etc, opcodes are used for lens correction. For an example of the SL's with and without lens correction, see my post on the subject. DNG Cleaner is what Sean Reid used to remove opcodes for his SL 50 review, which some of you will have seen.

    As ever, back up your files before using any app that is designed to modify them.

    For more information on DNG Cleaner, see the website.
    0

    Add a comment

  10. AccuRaw users might have gotten a bit of a surprise recently - AccuRaw has turned into AccuRaw EXR, and is now at version 3.

    The reason for the name change is that the focus of the AccuRaw product has changed a bit, based on what users were actually doing with it. AccuRaw has always been focussed on having highly linear color response, with no "hue twists" or other surprises in the color rendering. As it turns out, that is a very useful feature to have if you're composting stills into video - it reduces the amount of work required for color matching.

    In the world of video, especially in the professional cinematography world, the "gold standard" is to use a format such as EXR, which is a floating point format. That allows huge flexibility in the way that post processing is done. So the new version of AccuRaw, now named AccuRaw EXR, supports EXR output.

    However, it's more than just a name change. In order to really support EXR output, AccuRaw has seen major changes internally - it now has a fully floating point, non-clipping workflow. For more on why that is important, see this post.

    1

    View comments

Popular Posts
Blog Archive
About Me
About Me
My Photo
Author of AccuRaw, PhotoRaw, CornerFix, pcdMagic, pcdtojpeg, dcpTool, WinDat Opener and occasional photographer....
Loading