Bonjour !
J'ai recuperer du code permetant d'afficher une webcam dans awt (utilisant qtjava).
Le probleme c'est que ce code met un filtre bleu par dessus l'image a la création du bufferedImage, et moi j'aimerai avoir l'image en couleur !
J'ai isolé le code qui créer cette image :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12 // Setting up the buffered image int size = gWorld.getPixMap().getPixelData().getSize(); int intsPerRow = gWorld.getPixMap().getPixelData().getRowBytes()/4; size = intsPerRow*cameraImageSize.getHeight(); final int[] pixelData = new int[size]; DataBuffer db = new DataBufferInt(pixelData, size); ColorModel colorModel = new DirectColorModel(32, 0x00ff0000, 0x0000ff00, 0x000000ff); int[] masks= {0x00ff0000, 0x0000ff00, 0x000000ff}; WritableRaster raster = Raster.createPackedRaster(db, cameraImageSize.getWidth(), cameraImageSize.getHeight(), intsPerRow, masks, null); final BufferedImage image = new BufferedImage(colorModel, raster, false, null);
J'ai essayé de créer une BufferedImage plus simplement de cette façon :
Mais évidement cela ne marche pas ... (manque la liaison avec le DataBuffer je pense) L'image "affiché" est totalement noir
Code : Sélectionner tout - Visualiser dans une fenêtre à part final BufferedImage image = new BufferedImage(320,240,BufferedImage.TYPE_INT_RGB);
Si vous pouvez m'aidez je vous en remerci![]()
Partager