begin process at 2010 02 09 21:38:13
  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 l'heure courante avec thread [ par josef1705 ] Bonsoir Mensieurs, je veux l'heure courante sur une jFrame a l'aide des thread [^^confus2] en ce mement je peux afficher l'heure mais sans thread et c Utilisation de JVstHost [ par remax_ren ] Slt, Mon but est de créer une application capable de faire passer des samples (.wav) par des VST fx. Bon, c'est pas forcement qu'il y a de plus facile programmation RMI [ par aymenboy ] slt je besoin de m'aider à mon projet je veut que tu me corrige mes faute s'il te plait bon le projet est : une compagnie aérienne offre un service de


Nos sponsors


Sondage...

CalendriCode

Février 2010
LMMJVSD
1234567
891011121314
15161718192021
22232425262728

Consulter la suite du CalendriCode

 
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 : 0,686 sec (3)

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