Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
2703 connectés 

  FORUM HardWare.fr
  Programmation
  Java

  optimisation de la recuperationd'image Rgb par socket

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

optimisation de la recuperationd'image Rgb par socket

n°962497
mysticpowe​r
Posté le 26-01-2005 à 09:27:59  profilanswer
 

Je sais la programmation java est considérée comme lentes,  
je pense que mon code peut etre optimisé...
 
Voila le problème:
j'utilise une connexion socket udp pour recevoir une image:
 
byte[] buffer = new byte[taille_buffer];
DatagramPacket p1 = new DatagramPacket(buffer, taille_buffer);
DatagramSocket s1 = new DatagramSocket(1234, address);
byte[] stockage = new byte[w * h * 3];    
// w largueur de l'image
// h hauteur
// multiplie par 3, car l'image est codé par 3 byte bleu, rouge, vert et pas de alpha.  
 
while ((k+1) * taille_buffer < w * h * 3) {
        envoyer("Get_image" );//envoi une commande au serveur  
 
        s1.receive(p1);//recoit des données
 
        for (int i = 0; i < buffer.length; i++) {  
             stockage[i + taille_buffer * k] = buffer[i];
              //je stocke le Byte
             }
        k++;
        }
//à la fin du while, j'ai un tableau de byte de taille w*h*3
 
BufferedImage bufferedImage = new BufferedImage(w, h, BufferedImage.TYPE_INT_RGB);
 
int[] rgbs = new int[w * h];//maintenant je crée un bufferedimage et un tableau de byte stockant les pixels sous format int pour charger le bufferimage
 
for (int i = 0; i < w * h; i++) {
    rgbs[i] = ((((stockage[3 * i] & 0xFF) << 8) |                     stockage[3 * i + 1] & 0xFF) << 8) |                                    stockage[3 * i + 2] & 0xFF;
                        }
 
bufferedImage.setRGB(0, 0, w, h, rgbs, 0, w);// je charge le tableau de int
 
jLabel6.setIcon(new ImageIcon(bufferedImage));puis à la fin je l'affiche
 
 
 
J'ai besoin d'aide:
Y a t il une fonction de jLabel qui peut charger "stockage" directement, un tableau de pixel avec des byte bleu rouge vert sans alpha
 
es ce que je dois utiliser ma convertion en int pour le tableau rgb[] directement sans utiliser byte stockage[]...(vérifiant que buffer.length est bien multiple de 3)
 

mood
Publicité
Posté le 26-01-2005 à 09:27:59  profilanswer
 

n°962505
sircam
I Like Trains
Posté le 26-01-2005 à 09:40:16  profilanswer
 

mysticpower a écrit :

Je sais la programmation java est considérée comme lentes,


Tu commences mal la journée.  :sol:  

mysticpower a écrit :

je pense que mon code peut etre optimisé...


C'est plutôt ça en fait  :D  


---------------
Now Playing: {SYNTAX ERROR AT LINE 1210}
n°963720
mysticpowe​r
Posté le 27-01-2005 à 13:57:20  profilanswer
 

en modifiant mon code  
 
je replace le bufferImage par
 
BufferedImage bufferedImage = new BufferedImage(w, h, BufferedImage.TYPE_3BYTE_BGR);
 
je cherche une fonction qui pourrait faire ici
bufferedImage.setRGB(0, 0, w, h, stockage, 0, w);
avec stockage une tableau de byte


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  Java

  optimisation de la recuperationd'image Rgb par socket

 

Sujets relatifs
[C#] Connexion par socket en mode Asynchrone (server)Probleme socket
probleme d'image en html[Java] optimisation boucles for
Inserer une image spéciale...[VBA Excel] Optimisation Import d'un énorme fichier txt
inserer [ IMaGe ] dans un post pleaseTaille de l'Image en Gardant Proportions
[resolu] resize d"une image après un upload....Socket : fixer un timeout
Plus de sujets relatifs à : optimisation de la recuperationd'image Rgb par socket


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR