114 lines
4.0 KiB
HTML
114 lines
4.0 KiB
HTML
|
<html>
|
||
|
<head>
|
||
|
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
|
||
|
<title>libimage: utilisation des couleurs</title>
|
||
|
<link rel="stylesheet" type="text/css" href="libimage.css">
|
||
|
<meta name="generator" content="Vim et huile de phalange">
|
||
|
<meta name="keywords" content="libimage, Boudet, RGBA, palette, CMJK">
|
||
|
</head>
|
||
|
|
||
|
<body>
|
||
|
|
||
|
<a name="top"><h1>libimage: les couleurs.</h1></a>
|
||
|
|
||
|
<p align=center>
|
||
|
<tt>dernière mise à jour: 12 janvier 2014</tt><br>
|
||
|
</p>
|
||
|
|
||
|
<p class="menuhaut">
|
||
|
[<a href="libimage.html#primitives">primitives</a>]
|
||
|
[<a href="#palettes">palettes</a>]
|
||
|
</p>
|
||
|
|
||
|
<h2><a name="couleurs">Couleurs</a></h2>
|
||
|
|
||
|
<dl class="proto">
|
||
|
<dt>int Image_couleur_moyenne(Image_Desc *im, int *pr, int *pg, int *pb);
|
||
|
<dd>Calcul de la valeur moyenne de chacune des composantes RGB sur toute la
|
||
|
surface de l'image.
|
||
|
|
||
|
<dt>int Image_colors_2_Map(Image_Desc *s, Image_Desc *d, RGB_map *m, int mode);
|
||
|
<dd>"remappe" l'image source en utilisant uniquement les couleurs
|
||
|
contenues dans la palette. Le paramètre <tt>mode</tt> peut prendre les
|
||
|
valeurs 0, 1, 2, 11, 12 ou 13. Une démonstration de ces <i>remaps</i> est
|
||
|
<a href="http://tboudet.free.fr/libimage/">prévue</a>.
|
||
|
<i>Sauf que ça rame grave sa race !!!</i>
|
||
|
|
||
|
<dt>int Image_to_gray(Image_Desc *s, Image_Desc *d, int flag);
|
||
|
<dd>Transforme une image couleur en image en niveau de gris. L'image
|
||
|
'destination' est toujours une image RGB, seul le contenu est converti
|
||
|
en 'photo noir et blanc'. Le canal <a href="img-alpha.html">alpha</a>,
|
||
|
si il existe, n'est pas touché.
|
||
|
Si le flag est à 0, on utilise les poids adéquats (r=297 v=589 g=114),
|
||
|
sinon, les 3 composantes ont toutes le même poids.
|
||
|
|
||
|
<dt>int Image_to_gray_k(Image_Desc *s, Image_Desc *d, nt kr, int kg, int kb, int flag);
|
||
|
<dd>Identique à la fonction précédente, sauf qu'on peut spécifier les poids de
|
||
|
chacune des composantes. Attention aux dépassements de capacité, qui peuvent
|
||
|
néammoins devenir outils de création.
|
||
|
|
||
|
<dt>Image_color_shift_rgb(Image_Desc *s, Image_Desc *d, int r, int g, int b);
|
||
|
<dd>Rotation des 3 composantes couleurs.
|
||
|
|
||
|
<dt>int Image_apply_Map(Image_Desc *src, Image_Desc *dst, RGB_map *map);
|
||
|
<dd>Bon, voyons, comment expliquer ça?
|
||
|
|
||
|
<dt>int Image_gray_Map(Image_Desc *src, Image_Desc *dst, RGB_map *map);
|
||
|
<dd>Chaque pixel de l'image est d'abord converti en niveau de gris par
|
||
|
un calcul alambiqué, puis retraduit en couleurs en utilisant la palette
|
||
|
fournie.
|
||
|
|
||
|
|
||
|
</dl>
|
||
|
|
||
|
<p class="HDP"><a href="#top">haut de page</a></p>
|
||
|
|
||
|
<h2><a name="palettes">Palettes</a></h2>
|
||
|
|
||
|
<dl class="proto">
|
||
|
|
||
|
<dt>int Image_load_color_Map(char *file, char *name, RGB_map *where);
|
||
|
<dd>Les colors maps sont censees etre compatible avec celles de FRACTINT,
|
||
|
mais il faudrait verifier. En prime, je soupçonne un bug dans cette
|
||
|
fonction. Le nombre de couleurs lues est dans <tt>where->nbre</tt>, la
|
||
|
valeur retournée par la fonction est le code d'erreur.<br>
|
||
|
Les palettes sont cherchées à divers
|
||
|
<a href="img-devel.html#path">endroits</a>.
|
||
|
|
||
|
<dt>int Image_save_color_Map(char *file, char *name, RGB_map *map);
|
||
|
<dd>Les colors maps sont censées etre compatible avec celles de FRACTINT,
|
||
|
mais il faudrait verifier. ymmv.
|
||
|
|
||
|
|
||
|
<dt>int Image_make_random_Map(char *nom, RGB_map *map, int nbre);
|
||
|
<dd>Remplissage de la palette <i>&map</i> avec <i>nbre</i> couleurs
|
||
|
aléatoires.
|
||
|
|
||
|
<dt>int Image_make_222_Map(char *nom, RGB_map *map, int noise);
|
||
|
<dd>Fabrique une palette de 64 couleurs.
|
||
|
|
||
|
<dt>int Image_palette_3sinus(char *nom, RGB_map *ou, double pars[8]);
|
||
|
<dd>...
|
||
|
|
||
|
<dt>int Image_map2ppm(RGB_map *p, char *fname, char *comment);</dt>
|
||
|
<dd>Exportation d'une palette de couleurs dans un format utilisable
|
||
|
par <tt>ppmquant</tt>, qui permet de réduire le nombre de couleurs
|
||
|
d'une image.</dd>
|
||
|
|
||
|
</dl>
|
||
|
|
||
|
<p>Il existe un <a href="img-outils.html#plotmap">outil</a> pour dessiner
|
||
|
une de ces palettes de couleurs stockée dans un fichier.
|
||
|
Lequel appelle une fonction qui doit
|
||
|
être décrite <a href="img-plotters.html">ici</a>.
|
||
|
</p>
|
||
|
|
||
|
<p class="HDP"><a href="#top">haut de page</a></p>
|
||
|
|
||
|
<p class="footer">
|
||
|
Si votre demande est colorée, je patche à donf.<br>
|
||
|
<a href="#top">haut de page</a></p>
|
||
|
|
||
|
</body>
|
||
|
</html>
|