Salut,
je cherche le moyen de transformer une image en une matrice(largeur, hauteur) des pixel qu'elle soit en couleur ou binaire, tout ce que j'ai trouvé c'est ce code :
alors que ce que je veux avoir c'est int[w][h] et pas int[w*h][4].
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14 BufferedImage bi= image.getAsBufferedImage(); // Conversion en BufferedImage int w=bi.getWidth(); int h=bi.getHeight(); int[][]tablo=new int[w*h][4]; for(int x=0;x<h;x++){ for(int y=0;y<w;y++){ System.out.println(x+" Y "+y); int rgb = bi.getRGB(y,x); int alpha = ((rgb >>24 ) & 0xFF);tablo[x*w+y][0]=alpha; int rouge = ((rgb >>16 ) & 0xFF);tablo[x*w+y][1]=rouge; int vert = ((rgb >>8 ) & 0xFF);tablo[x*w+y][2]=vert; int bleu = (rgb & 0xFF);tablo[x*w+y][3]=bleu; } }
merci.
Partager