Traitement d'image couleur avec Scilab

Elohir -  
Flachy Joe Messages postés 2303 Statut Membre -
Bonjour,

Dans le cadre de mes études, je dois réaliser une production personnelle scientifique: un TIPE (Travail d'initiative personnel encadré)

Pour pouvoir rendre mes résultats exploitables (en ce moment sous forme de photographies couleurs), je dois traiter ces photographies, avec un programme Scilab (à élaborer)...

Ces photographies représentent des lentilles d'eau dans un pot aux contours noirs, vues du dessus: pour être schématique, ce sont des petits disques verts au centre d'un cercle aux bords épais et noirs, le reste de l'image étant d'un blanc plus ou moins net (ombres, petites saletés, dépots marron-orangés au fond du pot)...

J'ai plusieurs questions:
- comme ces lentilles d'eau sont des êtres vivants leur couleur n'est pas uniforme: quand peut-on qualifier un pixel comme vert? C'est-à-dire quels doivent être les intervalles de valeurs respectives pour les composantes rouge, verte et bleue de chaque pixel vert?!
- la couleur verte est-elle définie par seulement les valeurs des composantes RGB, prises séparement, ou y a-t-il un lien entre les composantes (ex: la composante rouge doit être le double de la composante verte, avec une valeur de la composante bleue inférieure à 50)???
- Peut-on rendre le blanc souillé comme blanc "pur", le vert comme vert "pur", et le noir comme noir "pur", rendant ainsi le programme futur plus simple à construire: ce travail préliminaire pourra être effectué à l'aide d'un autre logiciel (gratuit et téléchargeable), ou par une fonction scilab préexitente, ou par un programme Scilab préexistent et disponible gratuitement (encore une fois)...
- quelle fonction scilab permet d'appeler plusieurs photos les unes après les autres, à l'intérieur même d'un programme, pour que celui ci traite la première photo, place son résultat dans un graphique, puis aille chercher une seconde photo place son résultat dans le graphique (sans supprimer le point précedemment mis dans le graphique) et ainsi de suite...
De manière à éviter que je traite à la main une par une les photos, puis que je fasse grace à un tableur le graphique

Merci pour vos réponses futures,
A voir également:

2 réponses

Flachy Joe Messages postés 2303 Statut Membre 261
 
Avec la bibliothèque imlab http://www.scilab.org/contrib/index_contrib.php?page=displayContribution&fileID=292
Je ferais un truc comme ça pour boucler sur les images :
//Imaginons que t'as 10 images 0.jpg à 9.jpg
prem_pix = zeros(1,9);
for i = [0:9]
  file = string(i).".jpg";
  image_data = imread(file);
  //traitement des données
  //exemple : stockage des valeurs de rouge de tous les premiers pixels 
  prem_pix = image_data(1,1,1);
end
//affichage de la courbe des valeurs de rouge des premiers pixels
plot2d (prem_pix);


Pour avoir des couleurs "pures" il faut appliquer des filtres.
Par exemple comparer la matrice de la composante verte avec une valeur planché (à l'aide de la fonction max).

Bon courage.
0
Elohir
 
Merci pour ces aides très précieuses,

J'essaye et je vous tiens au courant...
0
Flachy Joe Messages postés 2303 Statut Membre 261
 
Ya gourrage :
la concaténation se fait avec + et pas avec un point :
//Pas ça : file = string(i).".jpg";
//Mais ça :
file = string(i)+".jpg";

;-) Flachy Joe ;-)
Membre de l'association Olympe-Network
Ma clef PGP publique est disponible dans mon profil.
0