Besoin d'aide pour traiter une image en java - Java - Programmation
Marsh Posté le 10-11-2005 à 19:23:39
Tu dois regarder JAI (java advanced Imaging), comme ça tu dois pouvoir récupérer ton image en tableau de byte que tu px manipuler; enfin je dis ça pq je pense pas que J2SE de base le gère, maisça tu dois regarder.
Pour le flouttage, reprends tes cours de traitement d'images, t'as plein d'algos simples à mettre en oeuvre pr le réaliser.
Enfin pr l'IDE, à mon avis oublie Netbeans, j'ai jamais réussi à l'utiliser et je pense que c orienté gros projets avec des serveurs et bdd ds ts les sens. DOnc au pire fais ça en ligne de cmd, tu perdras moins de tps.
Marsh Posté le 10-11-2005 à 19:27:31
essaye ca:
http://www.developer.com/java/othe [...] hp/3441391
Marsh Posté le 11-11-2005 à 03:26:51
Salut,
Pour le floutage, si j'étais moi, je prendrais :
- une copie de l'image originale A,
- une copie de l'image originale B,
- une image de la même taille toute noire avec les zones qu'il faut flouter en blanc C,
- une image comportant par exemple un carré blanc sur fond noir D.
A = FFT(A);
D = FFT(D);
A = A * D;
A = FFTinverse(A);
Ensuite, pour chaque pixel, si C[x,y] est blanc, B[x,y] = A[x,y].
Et le résultat final est dans B et ta vie c'est de la balle.
Et si j'étais moi je ferais ça avec JBuilder ou JCreator ou en ligne de commande.
Enfin moi tu sais j'y connais rien (Kad & O inside).
Marsh Posté le 14-11-2005 à 13:56:59
Il te faut coder un ImageFilter (en fait 2). Je te conseille l'algo suivant.
Soit une image I0.
Tu appliques le flou F1 a l'ensemble de l'image I0, tu obtiens une image I1.
Tu applique le masque F2 a l'image I0, tu obtiens I2.
Tu copies I2 sur I1, tu obtiens le resultat souhaite.
F1 est le filtre de flou (BlurImageFilter),
F2 est le filtre de transparence (AlphaImageFilter).
Tu devrais pouvoir trouver ces filtres sur Internet. Le second est tres facile a coder, le premier est un peu plus dur.
Marsh Posté le 15-11-2005 à 00:18:51
Merci pour ce post
J'avance doucement mais surement: je viens de coder une appli java qui permet d'ouvrir une image jpeg ou gif et qui l'affiche dans une fenêtre fille. J'ai réussi à flouter entièrement l'image légèrement grâce à une matrice et une convolution. le problème c'est que si j'augmente le coeff de "floutage" l'image s'éclaircit et ne se floute plus
Je vais essayer avec JAI, mais je ne sais pas comment on installe cette bibliothèque et comment l'instancier sous netbeans...
Marsh Posté le 17-11-2005 à 00:11:59
Bonsoir!
J'ai pas mal avancé! Grace à un bouton en haut de chaque nouvelle fenêtre fille, je peux flouter intégralement l'image J'aimerais maintenant faire une sélection graphique, cad tracer un rectangle en temps réel à l'aide de la bibliothèque graphics2D et des évènements souris pressed et release. Le problème c'est que je n'y arrive pas, rien ne se trace
Marsh Posté le 17-11-2005 à 07:26:32
Déjà, es-tu bien sûr d'intercepter correctement les évènements de la souris ?
Marsh Posté le 17-11-2005 à 21:26:17
oui, j'y arrive, puisque je peux tracer mon rectangle avec les évènements mouse press et mouse release, sauf que le traçage se fait sur l'évènement release Moi je voudrais qu'il se fasse en temps réel.
Marsh Posté le 17-11-2005 à 23:20:42
Est-ce que tu n'as pas un évènement onMouseMove qui te permettrait de retracer le rectangle qd tu déplaces la souris? onMouseRelease te sert alors à valider ton rectangle, et onMouseDown à initier un nouveau rectangle.
Marsh Posté le 17-11-2005 à 23:26:37
Bon je viens de vérifier ma javadoc et il semble pas y avoir d'évènement MouseMove.
DAns ce cas, défini une variable genre : boolean isMousePressed = false;
tu la mets à true dans onMousePressed avec la condition suivante:
Code :
|
et dans
Code :
|
enfin qqchose comme ça.
Marsh Posté le 17-11-2005 à 23:35:28
Au fait tu px expliquer cmt tu as finalement fait pour traiter ton image stp?
Marsh Posté le 18-11-2005 à 07:07:58
wapcamer a écrit : Bon je viens de vérifier ma javadoc et il semble pas y avoir d'évènement MouseMove. |
Yep, je trouve aussi que c'est la meilleure solution!
Marsh Posté le 19-11-2005 à 10:52:21
Week end je m'occupe de ça dès lundi je posterai les sources
Marsh Posté le 22-11-2005 à 20:57:23
Bonsoir,
J'ai un petit problème:
je voudrais ouvrir une fenêtre de paramètres, les rentrer, et faire en sorte que ces apramètres soient conservés lors de l'appel de la classe qui floute les images. Comment faire pour stocker ces paramètres proprement, tout en pouvant les modifier à la volée (avec un menu paramètres)?
Merci
Marsh Posté le 10-11-2005 à 17:36:05
Bonjour,
Dans le cadre d'un projet tuteuré (qui n'a de tuteuré que le nom) pour valider mon DUT informatique, on me demande d'ouvrir une image, et de flouter une certaine zone de cette image. On m'a simplement demandé de le faire en java (on aurait pu me donner plus d'infos tout de même...). Bref, j'ai téléchargé et installé netbeans, mais étant habitué à C++ builder, je suis complètement perdu. Je ne sais pas comment aborder le sujet, et encore moins comment vérifier l'avancement de moin travail en "exécutant" l'appli.
Un petit coup de main ne serait pas de refus
Merci