GdPictureImaging.ConvertTo1Bpp and dithering
GdPictureImaging.ConvertTo1Bpp and dithering
Hi,
It would be very nice to have at least one overload for this method with a dithering algorithm behind it.
There's nothing wrong with converting color images to 1bbp using thresholds and it normally works just fine for "mostly text" images but as soon as we get into converting "real pictures" a.k.a. photos to 1bpp the threshold method is not giving the best results. There are plenty of dithering algorithms available and quite a few are in public domain so IP/patents shouldn't be a problem. With a few notable exceptions, they are relatively easy to implement as soon as one has access to the underlying raster data (that would be you ). I'm not picky, any error diffusion algo will do but Stucki or Burkes would be very nice.
Cheers,
Mike
It would be very nice to have at least one overload for this method with a dithering algorithm behind it.
There's nothing wrong with converting color images to 1bbp using thresholds and it normally works just fine for "mostly text" images but as soon as we get into converting "real pictures" a.k.a. photos to 1bpp the threshold method is not giving the best results. There are plenty of dithering algorithms available and quite a few are in public domain so IP/patents shouldn't be a problem. With a few notable exceptions, they are relatively easy to implement as soon as one has access to the underlying raster data (that would be you ). I'm not picky, any error diffusion algo will do but Stucki or Burkes would be very nice.
Cheers,
Mike
Re: GdPictureImaging.ConvertTo1Bpp and dithering
Hi Mike,
An order dither algorithm is already implemented. I added Stucki & Burkes implementation to the wish list.
Best regards,
Loïc
An order dither algorithm is already implemented. I added Stucki & Burkes implementation to the wish list.
Code: Select all
GdPictureImaging.FxBlackNWhite(ImageID, BitonalReduction.OrderedDither)
GdPictureImaging.ConvertTo1BppFast(m_ImageID)
Loïc
Re: GdPictureImaging.ConvertTo1Bpp and dithering
Hi Loïc,
Thank you for your answer.
I was so embarrassed by not noticing BitonalReduction.OrderedDither that I immediately went to Plimus and ordered GdPicture.NET Document Imaging.
Seriously speaking, the SDK does almost everything I need for now.
Have a nice weekend,
Mike
Thank you for your answer.
I was so embarrassed by not noticing BitonalReduction.OrderedDither that I immediately went to Plimus and ordered GdPicture.NET Document Imaging.
Seriously speaking, the SDK does almost everything I need for now.
Have a nice weekend,
Mike
Re: GdPictureImaging.ConvertTo1Bpp and dithering
Hi Mike,
Thank you for the feedback
Cheers,
Loïc
Thank you for the feedback
Cheers,
Loïc
Re: GdPictureImaging.ConvertTo1Bpp and dithering
Hi,
3 new dithering algorithms have been implemented: Stucki, Burke & Floyd Steinberg.
You can use them through the FxBlackNWhite() method of the last release: https://www.gdpicture.com/download/downl ... urenet.php
Best regards,
Loïc
3 new dithering algorithms have been implemented: Stucki, Burke & Floyd Steinberg.
You can use them through the FxBlackNWhite() method of the last release: https://www.gdpicture.com/download/downl ... urenet.php
Best regards,
Loïc
Re: GdPictureImaging.ConvertTo1Bpp and dithering
Hi Loïc,
Amazing response time!
Thank you very much.
Kind regards,
Mike
Amazing response time!
Thank you very much.
Kind regards,
Mike
Who is online
Users browsing this forum: No registered users and 1 guest