Re: [Patch] Opening, color correcting and saving 16-bits-per-channel PNGs

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Sunday 25 January 2009 21:53:54 Martin Nordholts wrote:> Hi>> I have attached a patch to "Bug 74224 – Add support for 16 bits per> channel" [1] that makes it possible to use GIMP for opening, color> correcting and saving 16-bits-per-channel PNGs using the operations> under the Colors menu that are ported to GEGL such as Color Balance or> Levels. For a technical description of the patch, refer to the bug report.>> This was a weekend hack and raises an interesting question: shall we go> for some kind of 16-bit support for GIMP 2.8? I think we should as I am> confident we will be able to come up with something useful in the realm> of high bit depths for 2.8. I don't think it will be hard to add support> for loading some additional 16-bit image formats, allowing creation of> 16-bit images and adding 16-bit capabilities to a set of basic tools.> Even if we certainly won't be able to completely port everything to> 16-bit in one release cycle it would show that we are making progress in> this area. Just being able to color correct 16-bit PNGs covers one use> case already.
I think Martin's proposal has merit.  I know that comparisons to Photoshop are to some extent considered off topic here but in this case I will do it because the history of Photoshop has some parallels.  The approach that Martin is advocating (IE. having high bit depth support for loading, saving and some color correction operations) is how the first versions of Photoshop with high bit depth support worked.  This started with version 6 I believe and the support for high bit depth images improved with each follow on version until it was complete.  Even though these earlier versions were somewhat frustrating because only some operations were supported for high bit depth images it was none the less a significant step forward and this progress was well received by it's users.  I am sure that that would also be the case for GIMP users.  
>> To convince yourself of that the patch actually makes GIMP do stuff in> high bit depth:>> 1. Apply the patch, requires SVN trunk of GIMP, GEGL and babl.>> 2. Open a 16-bit PNG with a white-to-black gradient such as this [2] one> I created using Krita.>> 3. Enable GEGL for the projection and color tools, the legacy code can't> handle 16-bit image data. View -> Use GEGL and Colors -> Use GEGL.>> 4. Use Colors -> Levels and map the entire range of input to the output> range [120, 135]. This will make the image look completely gray. Apply.>> 5. Use Colors -> Levels and map the input range [120, 135] to the full> output range [0, 255]. Apply.>> After doing 5 the gradient will look intact if you do this on the 16-bit> PNG with GEGL. If you do this on 8-bit data using the 8-bit legacy code> paths the results will look terrible.>> Welcome to the start of the 16-bit GIMP era ;)>> BR,> Martin
Just curious.  Since GEGL has support for more high bit depth formats than just 16 bit int/channel how much more work would be needed to support a wider range of formats?  For example tif files can use a number of different representations including 32 bit int/channel and 32 and 64 bit float/channel as well as 8 and 16 bit int/channel and probably some other representation formats.  Once 16 bit int/channel is working how much additional work is needed to support these other image formats?  Or is this trivial to implement and therefore almost free at that point?  
Hal_______________________________________________Gimp-developer mailing listGimp-developer@xxxxxxxxxxxxxxxxxxxxxxxxxxx://lists.XCF.Berkeley.EDU/mailman/listinfo/gimp-developer

[Index of Archives]     [Video For Linux]     [Photo]     [Yosemite News]     [gtk]     [GIMP for Windows]     [KDE]     [GEGL]     [Gimp's Home]     [Gimp on GUI]     [Gimp on Windows]     [Steve's Art]

  Powered by Linux