Beefy Boxes and Bandwidth Generously Provided by pair Networks
Pathologically Eclectic Rubbish Lister
 
PerlMonks  

comment on

( [id://3333]=superdoc: print w/replies, xml ) Need Help??

I don't understand your question. Do you mean that you want to match the colour in a given location to the "closest" colour in a fixed set. If so you need to decide which colour space to use and calculate the distance. For RGB you will get good results if you assume the "distance" between two colours is the geometric distance, to compare $c1 and $c2:

$distance = ($c1->red - $c2->red)*($c1->red - $c2->red) + ($c1->green - $c2->green)*($c1->green - $c2->green) + ($c1->blue - $c2->blue)*($c1->blue - $c2->blue);

(of course there is no point in taking the square root if you are comparing distances). If you want to be overly clever you can first convert to another colourspace (HSV would probably be good).

Or you could be wanting to classify the whole picture (i.e. take the average colour work out the closest node and the direction of the difference to call it say "a pinkish green" colour?

Or maybe I have misunderstood you completely?

Update: Or are you thinking about dithering the image (replacing the full set of colours with some picked from a restricted set) in which case you need to look at a good text on "error diffusion" and Floyd-Steinberg.


In reply to Re: Convert RGB to an actual color by hawtin
in thread Convert RGB to an actual color by Anonymous Monk

Title:
Use:  <p> text here (a paragraph) </p>
and:  <code> code here </code>
to format your post; it's "PerlMonks-approved HTML":



  • Are you posting in the right place? Check out Where do I post X? to know for sure.
  • Posts may use any of the Perl Monks Approved HTML tags. Currently these include the following:
    <code> <a> <b> <big> <blockquote> <br /> <dd> <dl> <dt> <em> <font> <h1> <h2> <h3> <h4> <h5> <h6> <hr /> <i> <li> <nbsp> <ol> <p> <small> <strike> <strong> <sub> <sup> <table> <td> <th> <tr> <tt> <u> <ul>
  • Snippets of code should be wrapped in <code> tags not <pre> tags. In fact, <pre> tags should generally be avoided. If they must be used, extreme care should be taken to ensure that their contents do not have long lines (<70 chars), in order to prevent horizontal scrolling (and possible janitor intervention).
  • Want more info? How to link or How to display code and escape characters are good places to start.
Log In?
Username:
Password:

What's my password?
Create A New User
Domain Nodelet?
Chatterbox?
and the web crawler heard nothing...

How do I use this?Last hourOther CB clients
Other Users?
Others wandering the Monastery: (6)
As of 2024-04-26 08:57 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    No recent polls found