IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

2D Java Discussion :

Image en courbure


Sujet :

2D Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Femme Profil pro
    Étudiant
    Inscrit en
    Juin 2016
    Messages
    185
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2016
    Messages : 185
    Par défaut Image en courbure
    Bonjour,
    J'ai comme mission de créer une image courbure, j'ai déjà l'algo que j'ai implementé mais apparemment y'a une erreur, j'aimerai bien que vous me corrigiez
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
     
     
    public courbure(){
    	 try {
    		   File input = new File("d:/CC.JPG");
    		   monImage = ImageIO.read(input);
    		   int width = monImage.getWidth();
    		   int height = monImage.getHeight();
    		   BufferedImage outImg = new BufferedImage(width, height, monImage.getType());
    		   for (int i = 1; i < width-1; i++) {
    			   for (int j = 1; j < height-1; j++) {
     
    			      float[] currenthsv = getHSB(monImage.getRGB(i,j));
    				  float bo = currenthsv[0]*360;
    				float courb = 0f;
    				if (bo<32 || bo>224)
    			    	   courb = Math.abs(getHSB(monImage.getRGB(i-1,j))[0]-getHSB(monImage.getRGB(i+1,j))[0]);
    			       else if (bo>=32 || bo<96)
    			    	   courb = Math.abs(getHSB(monImage.getRGB(i-1,j+1))[0]-getHSB(monImage.getRGB(i+1,j-1))[0]);
    			       else if (bo>=96 || bo<160)
    			    	   courb = Math.abs(getHSB(monImage.getRGB(i,j-1))[0]-getHSB(monImage.getRGB(i,j+1))[0]);
    			       else if (bo>=160 || bo<224)
    			    	   courb = Math.abs(getHSB(monImage.getRGB(i-1,j-1))[0]-getHSB(monImage.getRGB(i+1,j+1))[0]);
     
    				outImg.setRGB(i,j, Color.getHSBColor(courb, currenthsv[1], currenthsv[2]).getRGB());
     
    		   }
    		}
     
    		   File ouptut = new File("d:/courbure.jpg");
    		   ImageIO.write(outImg, "jpg", ouptut);
     
    		  } 
    	 	catch (Exception e) {
    		   e.printStackTrace();
    		  }}
     
    		  public float[] getHSB(int color)
    		  {
    		  	float hsv[] = new float[3];
    		  	Color c = new Color(color);
    		  	Color.RGBtoHSB(c.getRed(),c.getGreen(),c.getBlue(), hsv);
    		  	return hsv;
    		  }
     
    		 static public void main(String args[]) throws Exception {
    		  courbure obj = new courbure();
    		 }
    		}

    Le résultat doit être comme ça à gauche y'a l'image de depart puis la 3eme image à droit doit être le resultat
    Pièce jointe 215383


    Merci,

  2. #2
    Expert éminent
    Avatar de tchize_
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2007
    Messages
    25 482
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : Belgique

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2007
    Messages : 25 482
    Par défaut
    Ce serait peut être bien que tu nous dise ce que tu dois avoir, ce que tu obtiens et les images associée en piece jointe. Parce qu'imprimer les images, rouler la feuille et en prendre un photo avec un smartphone, on comprendre rien à ce que tu essaie de faire

    Sinon, fais au moins ça dans les règles, met la photo imprimée sur une table en bois, prends la en photo photo, faxe là, scanne là et met là dans un document word.

  3. #3
    Modérateur
    Avatar de wax78
    Homme Profil pro
    R&D - Palefrenier programmeur
    Inscrit en
    Août 2006
    Messages
    4 096
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : Belgique

    Informations professionnelles :
    Activité : R&D - Palefrenier programmeur
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Août 2006
    Messages : 4 096
    Par défaut
    Citation Envoyé par tchize_ Voir le message
    Sinon, fais au moins ça dans les règles, met la photo imprimée sur une table en bois, prends la en photo photo, faxe là, scanne là et met là dans un document word.
    Je pense que tu as oublié l'étape avec le pigeon voyageur _Tchize
    (Les "ça ne marche pas", même écrits sans faute(s), vous porteront discrédit ad vitam æternam et malheur pendant 7 ans)

    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  4. #4
    Membre confirmé
    Femme Profil pro
    Étudiant
    Inscrit en
    Juin 2016
    Messages
    185
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2016
    Messages : 185
    Par défaut
    Bonjour,

    Désolé pour la photo désagréable mais je pouvais vraiment pas faire mieux.
    du coup je vous réexplique, la première etape etais de calculer une image bord orienté qui était le résulat d'un atan, puis maintenant je dois calculer une image courbure qui prend la valeur de cette image (bo) dans mon code et quand par exemple le pixel est horizontale il fait la soustraction des deux pixels voisins horzontalement, même chose pour vertical... les conditions que j'ai mis dans mon code du coup le résultat normalement devais être quand par exemple l'image est un carré on affiche que ça (les 4 bords du carré) pas plus.

    Nom : bord.PNG
Affichages : 216
Taille : 57,3 Ko

    Merci et Bien cordialement,

  5. #5
    Expert éminent
    Avatar de tchize_
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2007
    Messages
    25 482
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : Belgique

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2007
    Messages : 25 482
    Par défaut
    attache tes 2 .jpg que tu utilise dans ton code qu'on puisse voir le problème. Une photo de l'image imrpimée, c'est ridicule et inutilisable pour nous.

  6. #6
    Expert éminent
    Avatar de tchize_
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2007
    Messages
    25 482
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : Belgique

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2007
    Messages : 25 482
    Par défaut
    Au passage, ta description laisse supposer qu'il y a deux image: l'image de dont on doit calculer la courbure et l'image d'orientation, qui est la CC.jpg, mais dans ton code, il n'y a qu'une image source.

    Donc donne nous une image source et l'image destination que tu veux.

  7. #7
    Membre confirmé
    Femme Profil pro
    Étudiant
    Inscrit en
    Juin 2016
    Messages
    185
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2016
    Messages : 185
    Par défaut
    Nom : cc.JPG
Affichages : 191
Taille : 57,9 Ko

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Resize d'une image
    Par Anonymous dans le forum C
    Réponses: 6
    Dernier message: 13/07/2008, 22h23
  2. recherche des algorythmes pour images 2d
    Par exxos dans le forum Algorithmes et structures de données
    Réponses: 3
    Dernier message: 24/05/2002, 13h46
  3. lire une image au format RAW
    Par Anonymous dans le forum OpenGL
    Réponses: 5
    Dernier message: 20/05/2002, 00h11
  4. faire un selection dans une image aves les APIs
    Par merahyazid dans le forum C++Builder
    Réponses: 3
    Dernier message: 30/04/2002, 10h44
  5. Création image BMP
    Par Anonymous dans le forum C
    Réponses: 2
    Dernier message: 25/04/2002, 16h04

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo