Ma vagy holnap elkészül a CSIXLOGO v.3.14 ( mostantól a Pi értéke felé konvergál a verziószám :o) .
A "Nearest Color" algoritmusban lesz változás ebben a verzióban: a program kevésbé ostoba döntési elv alapján fog választani a palettáról az aktuálishoz közeli színt.
Akik nem szeretik a matekot, ugorják át a következő részt!
[MATEK ON]
Eleddig a paletta az eredeti képpont színe (r1,g1,b1) és a paletta színe (r2,g2,b2) közötti "távolságot" így számolta a program:

Ez nem működött túl jól. Minap egy szürkeskálás képet próbáltam "csixesíteni" és sötétkék képpontok jelentek meg benne. Könnyű belátni miért: amennyiben a legközelebbi szürke árnyalat a vörös-zöld-kék színhármasban 4+4+4=12 távolságra volt, a legközelebbi kék pedig 0+0+10=10 távolságra, akkor ez utóbbit választotta a program.
A megoldás, hogy az új verzió egy 3 dimenziós térben fogja kiszámolni az egyes színek "távolságát", mégpedig úgy, hogy a 3 dimenziós tér egyes síkjainak tekinti a vörös, zöld és kék színkomponenseket. Egy (r1,g1,b1)-színhármas egy pontot jelöl meg ebben a 3dimenziós térben, ennek távolságát egy másik (r2,g2,b2) színhármastól az euklidészi távolsággal számoljuk, azaz:

Persze ez nem saját találmány, annak idején elegendő lett volna, ha utána olvasok a témának a Wikipedián és akkor eleve jobb lehetett volna a színleképezés.
[MATEK OFF]
Remélhetőleg az új algoritmussal kevesebb lesz az elütő színek száma a generált startup logókban, pl. red6t6 példányában a geocaching-logóban talán kevésbé lesznek elütő színűek a sötétebb pontok...[ előzmény: (15694) red6t6, 2007.03.27 15:53:58] |