DNG では, レンズの歪み情報やレンズシェーディングの情報などを OpCodeList タグで付与することができます.
https://exiftool.org/TagNames/EXIF.html
https://www.adobe.com/content/dam/acom/en/products/photoshop/pdfs/dng_spec_1.4.0.0.pdf (Chapter 7 OpCode List Processing)
1 ~ 3 と三つあります. 処理のステージや OpCode による画像処理を経たあとの画像データのダイナミックレンジに応じて使い分けるようです.
- OpCodeList1 : 32bit 用. 0 ~ 2^32 - 1
- OpCodeList2 : 16bit 用. 0 ~ 2^16 - 1
- OpCodeList3 : 正規化 float 用? 0.0 ~ 1.0
OpCode 自体の画像データ(e.g. GainMap)自体は float などを使っており, とくにクランプされたり量子化されたりはしていません.
また, OpCode のデータはバイナリデータですが, データフォーマットとしては特に難しいものではないです. DNG の仕様書を見てその通りにパースすれば情報を得られます!
注意点としては, DNG(TIFF)のエンディンアンには関係なく, OpCode のデータは常に Big-Endian です.