avaneev / avir

High-quality pro HDR image resizing / scaling C++ library, including a very fast, precise, SIMD Lanczos resizer (header-only C++)
MIT License
411 stars 41 forks source link

16 bit capable image format support #2

Closed alejandrojapkin closed 8 years ago

alejandrojapkin commented 8 years ago

It's difficult to talk about "high quality images" with quite destructive image formats such as jpg and png. I suggest adding DNG support.

avaneev commented 8 years ago

PNG is a lossless format, and it supports both 8-bit and 16-bit RGB images. However, "imageresize" demonstration utility does not support 16-bit images currently. Please consider using AVIR directly. DNG is a proprietary format, I do not plan to add DNG support to "imageresize".

alejandrojapkin commented 8 years ago

PNG-48 does 16 bit. Is your current version abiding by the PNG-48 implementation? CinemaDNG is an open format, albeit supported by Adobe. It's incredibly powerful and allows for non destructive applications.

avaneev commented 8 years ago

Please note that AVIR library itself supports any format. However, the demonstration tool "imageresize" currently supports 8-bit samples only. I will consider adding 16-bit samples PNG support in the future.

alejandrojapkin commented 8 years ago

Noted. In my opinion, the tool fails to properly demonstrate its output quality to the educated eye, by disregarding the image formats that are actually employed in pro image processing. I would dismiss jpg altogether and focus on 16-bit and upper bit-depth formats that are known to be colorspace faithful. Otherwise, you may close this ticket.

avaneev commented 8 years ago

You are probably right, but resizing quality has a much higher influence over image quality than color bit depth. That's why "imageresize" initially supports 8-bit PNGs only. I'm working on 16-bit depth PNGs right now - I think I can add it soon.

alejandrojapkin commented 8 years ago

I disagree, and I'm in liberty to tell you that any professional from the filmmaking or publishing industry will disagree too. It's the other way around. Colorspace is by far the most important aspect of an image after a reasonable pixel resolution has been achieved. Happy to hear you'll be working on PNG-48, but I insist that this project deserves to be showcased using pro res formats, otherwise it's difficult for any pro, as I stated above, to lean one way or another on whether this code is what their next scaling plugin needs.