Jump to content

CornerFix 0.9.1.0 (aka 16-bit Cornerfix) available for download


sandymc

Recommended Posts

Advertisement (gone after registration)

CornerFix 0.9.1.0 is now available for download at:

 

SourceForge.net: CornerFix

 

CornerFix corrects for the "cyan corners" problem on Leica M8 digital cameras when used with IR filters.

 

This is the first "16-bit" version of CornerFix. This version has the ability to generate linear files that use the full resolution of the M8's original A/D conversion process. This practically eliminates the "concentric circles" artifacts that occasionally showed up when using previous versions of CornerFix. Please note:

 

1. "16-bit" is actually an exaggeration - CornerFix actually writes 14-bit files, the native resolution of the M8

 

2. "16-bit" files are NOT compatible with all raw converters. So far, all the Adobe products tested (PS CS3, LR 1.0, LR 1.1 and DNGValidate) accept the files, as do Aperture 1.5.2, and LightZone. However, Phase One's Capture One does not, at least on the versions tested - both Apple and PC. Capture One appears to assume that any M8 file is level compressed without looking at the DNG encoding tags. Those that use C1 should set the "Enable Level Compression" option. This configures CornerFix to write level compressed files files that are the same as the previous versions of CornerFix, and effectively indistinguishable from an M8 generated file.

 

Please read the QuickStart document for important information on compression options.

 

You only need to download the executables - the source code is also posted, but you don't have to download that to use the program.

 

All previous lens profile files (.CPFs) will work fine with the new version.

 

If you have not previously installed CornerFix, please read the QuickStart guide for installation instructions. If you don't follow all the steps, you WILL get messages like "This application has failed to start because the application configuration is incorrect. Reinstalling the application may fix this problem."

 

Enjoy!

 

Sandy

Link to post
Share on other sites

  • Replies 65
  • Created
  • Last Reply

Top Posters In This Topic

Top Posters In This Topic

Back to PS ... just as I was getting comfortable with C1.

 

Oh well ... I needed to get a copy of CS3 anyway.

 

Many thanks Sandy. I should receive my Milich hood for the CV15 today and will take a bunch of stuff this weekend so I can try Cornerfix.

 

Regards,

Link to post
Share on other sites

Sandy, great program.

 

I have a number of shots taken with the CV 12 in which I accidentally set the M8 for UV/IR correction. They are all reddish in the corners. I produced a correction file by taking a shot of a blank wall with the same lens and camera settings as per your instructions.

 

This version does a great job of correcting the files, using the default settings. The previous version had the concentric circle problem quite visible on shots in which there was a lot of blue sky unless I turned up the anti-aliasing setting from 0 to 1.

 

I don't know what further development you have in mind for this program, but it is certainly extremely useful as is.

 

Best Regards,

Ian

Link to post
Share on other sites

Ian,

 

Glad to hear CornerFix has been useful to you.

 

The ability to fix red corners was high on my list of things that CornerFix needed to do. As yet, I haven't yet forgotten to change the menu settings, but for sure its only a matter of time.....

 

Sandy

Link to post
Share on other sites

Hello Sandy!

However, Phase One's Capture One does not, at least on the versions tested - both Apple and PC. Capture One appears to assume that any M8 file is level compressed without looking at the DNG encoding tags.

Wrong :-)

Capture One (PC) can use 8-bit compressed und 16-bit uncompressed DNG (if camera type is M8, R8 or R9). How looks the written back DNG in detail? Do you write back the 'MakerNote' tag? If yes, try to NOT write back the MakeNote.

Link to post
Share on other sites

Advertisement (gone after registration)

Capture One (PC) can use 8-bit compressed und 16-bit uncompressed DNG (if camera type is M8, R8 or R9). How looks the written back DNG in detail? Do you write back the 'MakerNote' tag? If yes, try to NOT write back the MakeNote.

 

Hi Harald.

 

The MakerNotes tags are not written to the CornerFix DNG - on the original M8 DNG, the MakerNoteSafety tag is not present, indicating that they should not be written to any subsequent file.

 

It would perhaps be possible to write a 16-bit file that looked like, for example, a DMR file. However, that would mean that the M8 specific profiles etc that C1 has in it would no longer work. Sort of defeats the purpose of manipulating the DNG file.....

 

Regards,

 

Sandy

Link to post
Share on other sites

Because we have been working on a plist fix so that DMR images may be used within Aperture.

 

Ahhh, ok. Depends a bit what what Aperture actually looks at in the DNG file. If you want I can send you a hacked version of CornerFix that overrides the M8 name - that would be very easy to do........it may or may not work. I'm afraid I don't have either a mac or Aperture to try myself.......pm me a e-mail address if you want to try it

 

Sandy

Link to post
Share on other sites

Hello Sandy!

The MakerNotes tags are not written to the CornerFix DNG - on the original M8 DNG, the MakerNoteSafety tag is not present, indicating that they should not be written to any subsequent file.

Ok,than something other is wrong for Capture One to recognize the DNG as a M8 file.

I could virtually convert any raw (or even JPG) file to a "M8 look alike" DNG which Capture One will handle correct (with the exception of the correct color temperature). In fact I store all the CRWs from my Canon PowerShot S70 as R9-DMR-DNGs and I am starting to store all the CR2 from my EOS 5D as R8-DMR-DNGs. Save a lot of harddisk storeage whit this method :-)

It would perhaps be possible to write a 16-bit file that looked like, for example, a DMR file. However, that would mean that the M8 specific profiles etc that C1 has in it would no longer work. Sort of defeats the purpose of manipulating the DNG file.....

You can also 'compress' a DMR DNG and let it be a recognized DMR DNG. Association for profile is done on Maker tag plus Model tag.

There must be an entry in your generated 16-bit DNGs, which makes Capture One make thinking not to be a M8 DNG.

Can you - or anybody - make a DNG created from your software available for me so I can look into?

I cannot use CornerFix, because I have no Win XP and no Win Vista (only W2k).

Link to post
Share on other sites

Can you - or anybody - make a DNG created from your software available for me so I can look into?

 

Harald,

 

Here is the original M8 Eagle, both in CornerFix 8-bit form, and in 16-bit (actually 14-bit) form. C1 correctly reads the 8-bit one, but gets the 14-bit one wrong. Other than the 8-bit vs 14 bit, there is no difference between the tags in the files, so I don't think that the issue with the tags as written.

 

YouSendIt - Send large files - transfer delivery - FTP Replacement

 

Sandy

Link to post
Share on other sites

Subsequent to the earlier testing with 8-bit and 16-bit CF files it seems that Capture One LE WILL load 16bit images but the gamma settings make the files look like they are about 2 stops under exposed.

 

In earlier tests on my Mac development machine C1LE was getting very unstable when the 16bit files were loaded. Further testing with the latest download version seems to be ok with the exception of the exposure settings.

Link to post
Share on other sites

Subsequent to the earlier testing with 8-bit and 16-bit CF files it seems that Capture One LE WILL load 16bit images but the gamma settings make the files look like they are about 2 stops under exposed.

 

In earlier tests on my Mac development machine C1LE was getting very unstable when the 16bit files were loaded. Further testing with the latest download version seems to be ok with the exception of the exposure settings.

 

My current best guess is that C1 is reading the upper byte of the 16 bit word, so effectively the top 6 bits of the 14-bit value. That would give you an image, but a very underexposed one........

 

Sandy

Link to post
Share on other sites

Hello Sandy!

Here is the original M8 Eagle, both in CornerFix 8-bit form, and in 16-bit (actually 14-bit) form. C1 correctly reads the 8-bit one, but gets the 14-bit one wrong. Other than the 8-bit vs 14 bit, there is no difference between the tags in the files, so I don't think that the issue with the tags as written.

Thank you very much!

I will examine them in the evening and report...

Link to post
Share on other sites

Hello Sandy!

Here is the original M8 Eagle, both in CornerFix 8-bit form, and in 16-bit (actually 14-bit) form. C1 correctly reads the 8-bit one, but gets the 14-bit one wrong. Other than the 8-bit vs 14 bit, there is no difference between the tags in the files, so I don't think that the issue with the tags as written.

Again, my first impressions...

The fault maybe in your assumption, that there is no significant difference in tags. There must be a difference, because you can only use such tags, the DMR knows about.

C1 decides which internal routines should be used (at least) primary on Make tag "Leica Camera AG", than on the (only) three valid contents of Model tag "M8 Digital Camera" or "R9 - Digital Back DMR" or "R8 - Digital Back DMR". If there is a match, than C1 tests (obviously) some other tags, to decide if it should work or not.

 

 

Processing M8-EAGLE_16.DNG

Byte order : I, Version : 2A

IFD1 : 0000:0008, Entries : 37

1 FE NewSubfileTyp uLong 1 v 0000:0001 1

2 100 Imagewidth uLong 1 v 0000:03D0 976

3 101 Imagelength uLong 1 v 0000:0290 656

 

Are you sure, this large thumbnail will work?

 

DNG-IFD1 : 0000:1CD0, Entries : 25

17 C61A BlackLevel uRatio 1 * 0000:1E02 0/256

Ok

 

18 C61D WhiteLevel uShort 1 v 0000:3FFF 16383

This WOULD work, but result is underexposed by at least 4 f-stops. C1 does not realy interpret this value, but it means, that the image data has also this range.

DMR uses full 16 bit DNG, so multiply your data with 4 (shift left 2) and exposure should be well.

 

19 C61E DefaultScale uRatio 2 * 0000:1E0A 1/1 1/1

20 C61F DefaultCropOrigin uRatio 2 * 0000:1E1A 2/1 2/1

21 C620 DefaultCropSize uRatio 2 * 0000:1E2A 3916/1 2634/1

Ok

 

22 C62D BayerGreenSplit uLong 1 v 0000:0000 0

DMR uses 5000, M8 uses 500, I omit this tag completly...

 

23 C632 AntiAliasStrength uRatio 1 * 0000:1E3A 1/1

DMR and M8 both use 0 (zero) and I omit this tag also...

 

25 C68D ActiveArea uLong 4 * 0000:1E4A 0 0 2638 3920

Obviously, DMR does not know this tag, omit it.

 

DNG-IFD1 end

18 2BC IFD for XML packets uByte 6449 * 0000:020C

DMR does not know this tag, so omit it also.

 

19 8769 ExifOffset uLong 1 v 0000:1E5A 7770

Exif-IFD : 0000:1E5A, Entries : 21

1 829A ExposureTime uRatio 1 * 0000:1F5C 1/500 [1/500]

2 8822 ExposureProgram uShort 1 v 0000:0001 1

3 8827 ISOSpeedRatings uShort 1 v 0000:00A0 160

4 9000 Exifversion Undef 4 v 3032:3230 30 32 32 30

DMR does not use this tag, omit it.

 

5 9003 DateTimeDigitized ASCIIZ 20 * 0000:1F64 2006:10:13 13:05:17

6 9004 DateTimeOriginal ASCIIZ 20 * 0000:1F78 2006:10:13 13:05:17

7 9201 ShutterSpeedValue sRatio 1 * 0000:1F8C 8965784/1000000 [8.97]

8 9204 ExposureBias sRatio 1 * 0000:1F94 0/65536

9 9205 MaxAperture uRatio 1 * 0000:1F9C 0/65536

DMR does not use this tag, so better omit it.

 

10 9207 MeteringMode uShort 1 v 0000:0002 2 Center

11 9208 LightSource uShort 1 v 0000:0000 0 Unidentified

12 9209 Flash uShort 1 v 0000:0010 16

13 A20E FocalPlaneXRes uRatio 1 * 0000:1FA4 3729/1

14 A20F FocalPlaneYRes uRatio 1 * 0000:1FAC 3764/1

15 A210 FocalPlaneResUnit uShort 1 v 0000:0002 2

DMR does also not use the last three tags...

 

16 A300 FileSource Undef 1 v 0000:0003 03 Digital Still Camera

17 A301 SceneType Undef 1 v 0000:0001 01

18 A403 WhiteBalance uShort 1 v 0000:0001 1 Manual

19 A404 DigitalZoomRation uRatio 1 * 0000:1FB4 0/1

20 A406 SceneCaptureType uShort 1 v 0000:0000 0

21 A420 ImageUniqueID ASCIIZ 33 * 0000:1FBC 00000000000000000000000000000658

All tgas starting with 'A' are obviously not used by DMR. I only know that A403 and A404 could be used. A403 tag (WhiteBalance) has to be synchroniced to the LightSource tag also!

 

Exif-IFD end

20 882B SelfTimerMode uShort 1 v 0000:0000 0

Not used by DMR...

 

21 C612 DNGVersion uByte 4 v 0000:0101 1 1 0 0

22 C613 DNGBackwardVersion uByte 4 v 0000:0101 1 1 0 0

23 C614 UniqueCameraModel ASCIIZ 18 * 0000:1B3E M8 Digital Camera

24 C621 ColorMatrix1 sRatio 9 * 0000:1B50 6863/10000 -1407/10000 -775/10000 -3086/10000 11390/10000 1921/10000 -971/10000 2791/10000 6609/10000

25 C622 ColorMatrix2 sRatio 9 * 0000:1B98 6863/10000 -1407/10000 -775/10000 -3086/10000 11390/10000 1921/10000 -971/10000 2791/10000 6609/10000

26 C623 CameraCalibration1 sRatio 9 * 0000:1BE0 10000/10000 0/10000 0/10000 0/10000 10000/10000 0/10000 0/10000 0/10000 10000/10000

27 C624 CameraCalibration2 sRatio 9 * 0000:1C28 10000/10000 0/10000 0/10000 0/10000 10000/10000 0/10000 0/10000 0/10000 10000/10000

28 C627 AnalogBalance uRatio 3 * 0000:1C70 1000000/1000000 1000000/1000000 1000000/1000000

29 C628 AsShotNeutral uRatio 3 * 0000:1C88 418237/1000000 1000000/1000000 982726/1000000

30 C62A BaselineExposure sRatio 1 * 0000:1CA0 0/100

31 C62B BaselineNoise uRatio 1 * 0000:1CA8 100/100

32 C62C BaselineSharpness uRatio 1 * 0000:1CB0 100/100

33 C62E LinearResponseLimit uRatio 1 * 0000:1CB8 100/100

34 C62F CameraSerialNumber ASCIIZ 8 * 0000:1CC0 0000407

35 C633 ShadowScale uRatio 1 * 0000:1CC8 1/1

36 C65A CalibrationIlluminant1 uShort 1 v 0000:8CE4 36068 3300K

37 C65B CalibrationIlluminant2 uShort 1 v 0000:9770 38768 6000K

 

I for myself only use the following tags, starting with 'C6':

C612, C613, C621, C622, C628, C65A and C65B.

 

C628 (AsShotNeural) is vital!!!

 

If all works, than I will open the mystery for the LightSource tag (9208), because this is also vital for proper color representation. This tag is set to 0 (zero) which means 'unidentified', but in fact we have the correct value (if not AWB) in the MakerNote. And even if AWB is selected, we have an estimation of the color temperatur in MakerNote.

Link to post
Share on other sites

Harald,

 

Yes, those are the differences between the DMR and the M8 - but the question is what the differences are between the CornerFix 8-bit (which C1 works with) and CornerFix 16-bit files (which C1 doesn't work with). And the answer is only the BitsPerSample, and the absence of the LinearizationTable entry.

 

The intent of CornerFix is not, and will not be, to emulate the DMR.

 

Regards,

 

Sandy

 

 

 

I

Link to post
Share on other sites

To understand all this, is it sufficient to read the DNG and TIFF 6.0 specs, or is there more background knowledge involved?

 

Carsten,

 

You actually need the TIFF/EP specs, which is the extension of the TIFF 6

 

But most of it is in the DNG spec

 

Sandy

Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...