Nuking the DNG Camera Profile [Now w/ script]

Awesome points gmack!

Yes, mine is created with a calibrated printer as well. Otherwise it would be pointless for sure. :) THiugh it's still a very useful launch pad and lap table. :)

I haven't looked at the color space of the output paper yet or checked the actual output with the colorimeter. Many times the matte papers have a much smaller color space than the monitor profiles.
 
One interesting thing in Resolve 14 is if you block just the black and white steps, you can see them in the Waveform/Pattern part and see if each step makes a solid white bar by combining the RGB colors. If they don't show as a white bar for each step and non-linear, could be your printer isn't printing right and laying down more color in the B&W portions. Nice test in Resolve to check your printer. They mostly use that to set up the Black and White levels and WB, but it works to double-check your printer too.

If you block the ColorChecker row with the Blue, Green, Red, Yellow, Magenta, and Cyan squares in Resolve and check them in the Vectorscope part, you can move the colors to the individual squares for each of those colors. Sort of neat way to set the colors up and fix any odd coloration too.

Someone on the web has some cool videos on doing it in Resolve, maybe version 12 too. There is a huge instruction manual in the :C:>Program Files>Blackmagic Design>DaVinci Resolve>Documents folder too (1,300+ pages!).
 
  • Like
Reactions: DaRana
Costco is fine for printing 8x10 size prints. With larger prints I have tried having them do they were using Epson inkjet printers and the Dry Creek profiles were of no value. For larger prints I send Adobe RGB files in TIFF format.

I can understand why DJI chose to produce a DNG file as that is the Adobe standard and it is not rev level specific nor is there need for any new Lightroom or Photoshop RAW conversion update software with each new drone. With my cameras I was having to update Photoshop to be able to convert RAW files from new models. I was paying to get lower quality conversions with the Adobe reverse engineered software with the Adobe updates.

TIFF is the only open standard for graphic files for pro use that is 16-bit and lossless. There is too much image degradation for me to use 8-bit JPG files for anything important though I do use it for images for web use.
 
Corel's Paintshop Pro X9 also opens the .dng files without applying the profile
 
How did this become about color correction rather than finding the easiest workflow to import without the DJI profile?
 
The relationship is that when you nuke the DJI profile you are really going to need a good color profile that you've generated. GMack and I use the colorchecker passport to generate those profiles and he shared the cool idea about making a gigantor colorchecker passport, then I got carried away by modifying it further. :) All-in-all a pretty direct route from A to F by internet message board standards!

Quick update on the first post, I duplicated a batch of pics from a recent fashion shoot, stripped off the profiles, and tinkered with some baseline Lightroom settings for distortion, etc. Right now within Lightroom I'm just using the lens profile that was generated by someone else on the board a while back along with the built-in distortion and vignetting settings + my own color checker profile. It's still manual right now, I'll update the first post when there is something more accessible. :)

I downloaded the Adobe lens profile generator earlier - didn't realize quite how in depth a process it was! The "best practice" recommendation will be to shoot 12 sets of 9 images under otherwise constant conditions - needless to say I have to make time to do that. :)
 
  • Like
Reactions: AyeYo
Appear related to color/curves/calibration
-CalibrationIlluminant1= -CalibrationIlluminant2= -ProfileHueSatMapDims= -ProfileHueSatMapData1= -ProfileHueSatMapData2= -ProfileEmbedPolicy= -NoiseProfile=​

Appear related to crop/correction
-DefaultScale= -DefaultCropOrigin= -DefaultCropSize= -BayerGreenSplit= -AntiAliasStrength= -BestQualityScale= -ActiveArea= -OpcodeList1= -OpcodeList3= -DefaultUserCrop= -YCbCrCoefficients= -YCbCrSubSampling= -YCbCrPositioning= -ReferenceBlackWhite=​

See attached file "strippedtags.txt" for a listing as well as the ExifTool command

Clearing: 'OpcodeList3' alone resets the main lens profile changes and cropping/scaling etc.

Exif.Image.OpcodeList3 = Specifies the list of opcodes that should be applied to the raw image, just after it has been demosaiced.
 
Hey Dingoz, thanks for the update! I haven't had a chance to dig back into the exif specs and/or trial & error - This is a big time saver.
 
Hey Dingoz, thanks for the update! I haven't had a chance to dig back into the exif specs and/or trial & error - This is a big time saver.

Actually, since I posted that I did notice that while that one codes removes the lens profile changes there is still a very slight crop added by another code (yet to test that)... yet to test further what each exact code removes.
 
An update to your original command line for batch stripping all files in a specified folder. Note change first tag "c:\exiftool\exiftool.exe" to the folder you put exiftool in and change the last tag "c:\exifpics" to the folder where the images reside that you want to strip. The command still copies and renames originals in the same folder so you can choose to keep both if desired. I use a temp folder to do the strip and then move the files into the lightroom folders. Add this to a text file and rename it to "Strip.bat" or "Whatever.bat" and then just double click to run.

c:\exiftool\exiftool.exe -CalibrationIlluminant1= -CalibrationIlluminant2= -ProfileHueSatMapDims= -ProfileHueSatMapData1= -ProfileHueSatMapData2= -ProfileEmbedPolicy= -NoiseProfile= -DefaultScale= -DefaultCropOrigin= -DefaultCropSize= -BayerGreenSplit= -AntiAliasStrength= -BestQualityScale= -ActiveArea= -OpcodeList1= -OpcodeList3= -DefaultUserCrop= -YCbCrCoefficients= -YCbCrSubSampling= -YCbCrPositioning= -ReferenceBlackWhite= -make= -model= -makernotes:all= c:\exifpics
 
Nice Dingoz. Did you end up finding that all of the codes add some adjustment or is this just an interim step while testing? I'm pretty sure if my memory and my notes serve me correctly that killing all of those did totally kill the profile but sounds like you're on the same page as me not wanting to kill stuff if it has data that isn't impacting the final image.

Thanks for adding to the effort - always happy when I'm not the only crazy insane one in the room. :)

Still want to get back to doing some more testing on this myself, more specifically with testing with/without for some of the HDR/HDPano mega stacks I've been doing. I've had less than great results using native converters in PTGui/Photomatix/Helicon/etc which bypass these DNG develop settings but are otherwise not as solid as the LR develop demosaic. Next step goal is to do a few of the megaHDPanos with and without the DNG profile but through lightroom and compare the final results.

Oh, one other note since we seem to like some of the same tools and automations ... if you haven't tried Jeffrey’s “Run Any Command” LR export plugin, it's pretty useful. I used it to build some export presets for HDPano processing, for example. Select the shots, choose the export preset, and it exports to subfolder "1_originals" and creates subfolders "2_ptgui" and "3_photomatix", copies a batch file to 2_ptgui that is a one-click delete of those interim files to easy cleanup after stitching, and sets a PTGui template to save the EXR into the 2_ptgui folder. We could do the same thing with the DNG files, use LR preset to ingest/sort, then do an export preset to export to DNG in a subfolder and copy over the final batch file and run it (or just actually run the command in the export preset), either overwriting the original DNGs or overwriting the copies and then importing/re-importing the stripped DNGs. All fully automated under the single export preset.
 
Nice Dingoz. Did you end up finding that all of the codes add some adjustment or is this just an interim step while testing? I'm pretty sure if my memory and my notes serve me correctly that killing all of those did totally kill the profile but sounds like you're on the same page as me not wanting to kill stuff if it has data that isn't impacting the final image.

Thanks for adding to the effort - always happy when I'm not the only crazy insane one in the room. :)

Still want to get back to doing some more testing on this myself, more specifically with testing with/without for some of the HDR/HDPano mega stacks I've been doing. I've had less than great results using native converters in PTGui/Photomatix/Helicon/etc which bypass these DNG develop settings but are otherwise not as solid as the LR develop demosaic. Next step goal is to do a few of the megaHDPanos with and without the DNG profile but through lightroom and compare the final results.

Oh, one other note since we seem to like some of the same tools and automations ... if you haven't tried Jeffrey’s “Run Any Command” LR export plugin, it's pretty useful. I used it to build some export presets for HDPano processing, for example. Select the shots, choose the export preset, and it exports to subfolder "1_originals" and creates subfolders "2_ptgui" and "3_photomatix", copies a batch file to 2_ptgui that is a one-click delete of those interim files to easy cleanup after stitching, and sets a PTGui template to save the EXR into the 2_ptgui folder. We could do the same thing with the DNG files, use LR preset to ingest/sort, then do an export preset to export to DNG in a subfolder and copy over the final batch file and run it (or just actually run the command in the export preset), either overwriting the original DNGs or overwriting the copies and then importing/re-importing the stripped DNGs. All fully automated under the single export preset.

This is interesting, might look into this some more. No I did not yet weed out any more individual codes but will. The obvious next tags to test for changes is anything to do with cropping and/or scale. BTW for this tag testing I was using the exiftoolGUI version where you can manage tags and add the ones in your list to the custom view. Then through the GUI edit each tag (and sync the lightroom copy vs original to check for changes)... that said I think I need to overlay copy vs original to really be sure of pixel levels changes occurring with any given tag removal. Might make for a fun project today.
 
  • Like
Reactions: DaRana
Here is a start. Most noticeable in the sky 'blues'. I prefer the original DJI tone so IMO do not delete these 2 tags.

CalibrationIlluminant1
CalibrationIlluminant2

Exif CalibrationIlluminant1.jpg Exif CalibrationIlluminant2.jpg
 
So just to add an extra variable into the mix for you -I would expect the colors to be worse without adding back in a profile. My intention had always been after stripping the built in profile to use a custom profile I created. I actually always use my custom profiles for the color regardless - those can be assigned within lightroom. Not sure if those tags are additive to the profile in LR or not.

Regardless, I just put up my profiles if you want to add them into any testing (or just use them in general).

Downloads and documentation here: GitHub - darana/P4P__color-profiles: Color profiles for the Phantom 4 Pro drone
 
Last edited:
  • Like
Reactions: Dingoz
Actually, since I posted that I did notice that while that one codes removes the lens profile changes there is still a very slight crop added by another code (yet to test that)... yet to test further what each exact code removes.

So this one code alone does not change the original image size. Removes the embedded lens profile for lightroom. Not sure of each exact change within the OpcodeList3 binary list. Estimated distortion value only. Need to test distortion accurately with a chart and comparision of a known other lens. Eyeballing it I say it needs at least 35, more like 50 and possibly even more.

OpcodeList3

Exif OpcodeList3 01.jpg Exif OpcodeList3 02.jpg Exif OpcodeList3 03.jpg
 
  • Like
Reactions: DaRana
Ok, so my rough but more accurate testing for barrel distortion (comparing the same scene with the original DJI profile and canon 24mm lens profiled) my estimate is +70 for lightroom manual distortion removal for a RAW stripped of OpcodeList3 (the embedded DJI profile).

This eliminates the up scaling from 13.4mp to 20mp - which appears to be done for no reason other than to hide the lens imperfections and pretend to be "effective pixels of 20mp" at the sacrifice of ultimate image quality (as already discussed). It is what it is, however the principal leaves a bad taste - no DJI camera before it did this (you saw exactly what the lens took. The mavic does have an embedded profile too but if you remove it there is next to no difference in the lens distortion. Anyway it has been said before but I'll repeat it in disgust :) The P4A/P4P is really a 13.4mp camera (after you correct the significant issues). Ok, so it actually is "20mp effective pixel" sensor but the lens has extreme distortion (even more so than the mavic or P3). No photographer I know of wants to start working on a RAW that has been scaled up from the effective pixels of the sensor.

Until further testing for any other negative impact exif tags (not taking into account using custom colour profiles) the folder .bat file is simply:

c:\exiftool\exiftool.exe -OpcodeList3= c:\exifpics
 
Last edited:
Cool! Thanks for the updates Dingoz! Yeah, the files and compromises are frustrating but all we can do is get the best out of the camera that we can. I've been shooting w/ my mavic lately for a few reasons and regardless of 13.4mp or 20mp there is still no comparison to the P4P(A|) camera. The mavic is nice, but this one blows it out of the water.

If you're on github feel free to update what I've got up there so far. Would you mind if I added your comparison images to the repo otherwise? That's great work and I'd love to add them as reference.
 
Cool! Thanks for the updates Dingoz! Yeah, the files and compromises are frustrating but all we can do is get the best out of the camera that we can. I've been shooting w/ my mavic lately for a few reasons and regardless of 13.4mp or 20mp there is still no comparison to the P4P(A|) camera. The mavic is nice, but this one blows it out of the water.

If you're on github feel free to update what I've got up there so far. Would you mind if I added your comparison images to the repo otherwise? That's great work and I'd love to add them as reference.

Feel free to use any images I post in this thread as you like.... they are just throwaway examples of no importance.
 
  • Like
Reactions: DaRana
Would you mind if I added your comparison images to the repo otherwise? That's great work and I'd love to add them as reference.

Some further testing... Of note is that in order to match the embedded lens profile barrel distortion correction a setting 107-108 in either LR or PS is required. This means it needs 2 passes as 100 is the limit. First pass 100 and second pass 7 (if matching original lens correction is the goal or can be deemed as an accurate baseline). As this requires moving out of RAW for the second pass I would settle on the maximum of 100.

Sensor Lens 00 Notes.jpg Sensor Lens 00 Overlay.jpg Sensor Lens 01.jpg Sensor Lens 02.jpg Sensor Lens 03.jpg Sensor Lens 03r.jpg
 
  • Like
Reactions: DaRana

Recent Posts

Members online

Forum statistics

Threads
143,086
Messages
1,467,528
Members
104,965
Latest member
Fimaj