Beefy Boxes and Bandwidth Generously Provided by pair Networks
There's more than one way to do things
 
PerlMonks  

Re: Cannot Set Image Pixel to a Random Colour using GD

by Fletch (Bishop)
on Dec 24, 2022 at 13:57 UTC ( [id://11149058]=note: print w/replies, xml ) Need Help??


in reply to Cannot Set Image Pixel to a Random Colour using GD

Handwavy (early and my morning caffeine hasn't kicked in) but if you're trying to uniformly desaturate all colors what I'd do would be to walk the pallet instead (not swapping the image to true color of course):

  • Get the total number of pallet entries
  • For each index 0..$num_colors
    • Fetch the rgb for the index
    • colorDeallocate that index
    • Compute your new desaturated color and then colorAllocate it back (which should (?) put it back in the recently freed index)

The cake is a lie.
The cake is a lie.
The cake is a lie.

Replies are listed 'Best First'.
Re^2: Cannot Set Image Pixel to a Random Colour using GD
by ozboomer (Friar) on Dec 25, 2022 at 10:15 UTC

    An interesting, probably slicker approach... but I wonder if there may be something like a 'refresh' of the palette required?

    As it stands, I don't think I'm dealing with a 'palette-ed' image here:-

    c:\> ffprobe -hide_banner ruddy.png Input #0, png_pipe, from 'ruddy.png': Duration: N/A, bitrate: N/A Stream #0:0: Video: png, rgb24(pc), 320x234, 25 fps, 25 tbr, 25 tbn c:\> mediainfo ruddy.png General Complete name : ruddy.png Format : PNG Format/Info : Portable Network Graphic File size : 84.9 KiB Image Format : PNG Format/Info : Portable Network Graphic Width : 320 pixels Height : 234 pixels Bit depth : 24 bits Compression mode : Lossless Stream size : 84.9 KiB (100%)

Log In?
Username:
Password:

What's my password?
Create A New User
Domain Nodelet?
Node Status?
node history
Node Type: note [id://11149058]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this?Last hourOther CB clients
Other Users?
Others avoiding work at the Monastery: (None)
    As of 2024-04-25 03:54 GMT
    Sections?
    Information?
    Find Nodes?
    Leftovers?
      Voting Booth?

      No recent polls found