begin process at 2012 02 14 05:52:12
  Trouver un code source :
 
dans
 
Accueil > Forum > 

JAVA / J2EE / J2ME

 > 

Multimédia

 > 

Image et vidéo

 > 

ImageReader et ImageIO


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

ImageReader et ImageIO

vendredi 16 mars 2007 à 12:43:34 | ImageReader et ImageIO

med_mt

 Je suis entrain d'écrire un programme qui modifie la valeur des pixels puis l'enregistrer sous le format "png" le problème que j'ai et que sans modifier la valeur des pixel je ne trouve pas la même image d'origine.

Merci  pour votre aide

Et  voila le code que j'ai écrit :


 
import java.awt.image.BufferedImage;
import java.io.File;
import java.io.IOException;

import javax.imageio.ImageIO;


public class ImageReader {

    public ImageReader() {
        super();
    }

    /**
     * Method to read an image from the file system, store the result whith a
     * BufferedImage object
     *
     * @param filename
     *            the filename of the picture to read
     * @return the representation of the file read with a BuffereadImage object
     */
    public BufferedImage readImageFile(String filename) {
        try {
            File f = new File(filename);
            return ImageIO.read(f);
        } catch (IOException ioe) {
            ioe.printStackTrace();
            return null;
        }
    }

    /**
     * Method to write a BufferedImage on the file system
     *
     * @param buffer
     *            the buffer representing the picture to write
     * @param filename
     *            the name of the output picture
     * @param format
     *            the format of the picture (could be bmp, jpg, gif, png, ...)
     */
    public void writeImageFile(BufferedImage buffer, String filename,
            String format) {
        try {
            File f = new File(filename);
            ImageIO.write(buffer, format, f);
        } catch (IOException ioe) {
            ioe.printStackTrace();
        }
    }


    /**
     * Method to convert a BufferedImage to an integer array, each integer
     * represent a pixel
     *
     * @param bufferedImage
     * @return a pixel map (int[]) representing each pixel of the picture
     */
    public int[] bufferedImage2IntArray(BufferedImage bufferedImage) {
        int w = bufferedImage.getWidth();
        int h = bufferedImage.getHeight();
        int[] pixelMap = new int[w * h];
        bufferedImage.getRGB(0, 0, w, h, pixelMap, 0, w);
        return pixelMap;
    }

   
   

    /**
     * Method to convert a pixel matrix to a BufferedImage
     *
     * @param pixelMap
     *            the pixel map representing the picture
     * @param width
     *            the width of the picture
     * @param height
     *            the height of the picture
     * @return the BufferedImage of the picture
     */
    public BufferedImage IntArray2BufferedImage(int[] pixelMap, int width,
            int height) {
        BufferedImage bufferedImage = new BufferedImage(width, height,
                BufferedImage.TYPE_3BYTE_BGR);
        bufferedImage.setRGB(0, 0, width, height, pixelMap, 0, width);
        return bufferedImage;
    }

    public static void main(String[] args) {
       
        String filename = "imageOrigine.JPG";
       
        ImageReader imageReader = new ImageReader();
        BufferedImage bufferedImage = imageReader.readImageFile(filename);

  int width = bufferedImage.getWidth();
        int height = bufferedImage.getHeight();
       
        int[] pixelMap = imageReader.bufferedImage2IntArray(bufferedImage);
       
     BufferedImage NEWbufferedImage = imageReader.IntArray2BufferedImage(pixelMap,width,height) ;

        imageReader.writeImageFile(NEWbufferedImage, "Sortie.jpg", "png");
    }
}

 
samedi 17 mars 2007 à 23:20:57 | Re : ImageReader et ImageIO

gmi19oj19

Membre Club

Faut encoder l'image pour que ce soit du PNG valide. Jette un coup d'oeil là

http://catcode.com/pngencoder/

ou alors sur Google "PNGEncoder Java"
mercredi 20 août 2008 à 22:31:58 | Re : ImageReader et ImageIO

nabil1986

J'ai essayé le code sur JCreator, mais il affiche l'erreur suivante can't read input file.
Peux tu m'aider ça commence à me faire chier


Cette discussion est classée dans : int, filename, picture, bufferedimage, imagereader


Répondre à ce message

Sujets en rapport avec ce message

Pb de chargement de jpg sur une BufferedImage [ par shivan ] Alors je vous explique vite fait, j'ai une classe devant gérer des images en leur rajoutant du texte et des fichiers jpg a volonté. le constructeur ch Grand débutant cherche aide sur du BufferedImage [ par mageti ] Salut à tous,Je suis débutant : ça fait 20 jours que je fais du java.Voilà mon problème: Une classe, dont le code-source est ci-après, est appelé par TiledImage: Passer par Graphics2D.drawImage() ou par BufferedImage.getSubImage() ? [ par nodragem ] Bonjour à tous, je fais mes premiers pas en programmation et suis entrain d'écrire un petit moteur de jeu (pour un jeu de Tank). Comme y'aura des spri probleme de conversion d'un tableau byte[] en BufferedImage [ par ouassit ] bonjour bon je vais expliquer mon probleme ; je veux envoyer un objet de type BufferedImage en resaue utlisant une connexnio UDP ; j'ai pu convertir m reconstruire une bufferedImage à partir d'un tableau de pixels [ par JM13nouveau ] Slt,je cherche à reconstruire une BufferedImage  à partir d'un tableau de pixels, pourriez vous me donnez une idée qui fonctionne !Merci de repondre i commnet faire fonctionner mon code [ par jouj85 ] s'il vous plait pouvez vous m'aider a corriger mon code voila mon code /* * To change this template, choose Tools | Templates * and open th getpixel [ par winon1 ] Bonjour, je suis entrain d'écrire un programme pour extraire les valeurs des pixels d'une image et je les met dans un tableau. pour ensuite tester su appel de fonctions d'une DLL par une application Java avec JNA => AU SECOURS SVP [ par aurhas ] Bonjour, j'essaye depuis un moment déjà d'utiliser JNA pour appeler des fonctions d'une librairie mais ce n'est pas très efficace. C'est pour utiliser Probleme switch case [ par walkn ] Bonjour j'aimerai avoir une petite precision sur l'utilisation du switch case sur une ComboBox. Je voudrais que dans mes choix 1 à 9 le meme calcul s Probleme exception [ par walkn ] Bonjour, j'ai ecrit deux methodes: void add() { //permet l'addition des masses passagers arrieres. double Res=0; int quantiteAV = Integer.parseInt(jL


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Février 2012
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
272829    

Consulter la suite du CalendriCode

Photothèque

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 3,026 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales