PDA

View Full Version : quantize 16-bit PNG or TIFF to 10-bit, 12-bit, or 14-bit PNG to save space on an IS?



Lynx_TWO
06-26-2020, 11:18 AM
I had an idea the other day&*8230;

So, let's say we have all these 16-bit TIFFs for an Image / Frame Sequence, but we know that this is the final master, color grading is done, and so anything over 10, 12, or 14 bits will be a waste of space, right? So why not have an option to quantize those final 16-bit-per channel (48-bit RGB) mastered images to 10-bit (30-bit RGB, 1024 levels per channel), 12-bit (36-bit RGB, 4096 levels per channel), or 14-bit (42-bit RGB, 16384&*8236; levels per channel) before converting to 16-bit PNG? That way the color quantize is already done, we get to store a lossless backup in the smallest space possible since PNG will only store the actual bit depth in a 16-bit PNG image (or at least from my tests in Photoshop that is indeed what seems to happen), and when newer video compression schemes come out you have a lossless-but-highly-compressed source.

I used ximagic on a TIFF file from an image sequence, used kMeans quantization to 8-bit (24-bit RGB, 256 levels per channel), 10-bit (30-bit RGB, 1024 levels per channel), and 12-bit (36-bit RGB, 4096 levels per channel)

kMeans for Color Quantization: https://lmcaraig.com/color-quantization-using-k-means

Results with file size are shown below. I used LZW compression on the TIFF files and Mixed Prediction Method on the PNG files.
Per one frame





Filetype
8-bit result (KB)
10-bit result (KB)
12-bit result (KB)
16-bit result (KB)


TIFF [1080p]
2,533
3,807
4,556
10,613


PNG [1080p]
2,202
3,002
3,352
8,166


TIFF [2160p]
8,431
13,301
16,388
45,853


PNG [2160p]
4,519
7,344
9,014
27,550




Based on size differences and current folder of Frame Sequence Images



Sequence Type
8-bit archive (TB)
10-bit archive (TB)
12-bit archive (TB)
16-bit archive (TB)


TIFF - HD
0.34
0.52
0.62
1.44


PNG - HD
0.3
0.41
0.46
1.11


TIFF - HD @ 60fps
0.86
1.29
1.55
3.61


PNG - HD @ 60fps
0.75
1.02
1.14
2.78


TIFF - 4K
1.15
1.81
2.23
6.23


PNG - 4K
0.62
1
1.23
3.74


TIFF - 4K @ 60fps
2.86
4.52
5.57
15.58


PNG - 4K @ 60fps
1.53
2.5
3.06
9.36




Per average of the total folder size of all rendered frames. For 12-bit video you are talking cutting your archive of the original frames by 2/3

Is this a solid idea or am I way off base?

P.S. Image converter does not seem to be optimized to handle large sets of images such as these. When I clicked on the folder to select all the images, dBpoweramp Image Converter starting using the hard drive for about 5 hours before I finally ended the process and split things up into smaller batches