我需要转换我的图像 .bmp or .jpg
至 byte[]
,更改某些值 rgb
,将其转换回图像,并看到一个差异-一些错误的像素对我的图像。
我试着把图像转换成 byte[]
改变它并转换回来,但通过改变随机值,我得到一个损坏的图像。
那么,如何只访问图像的可变值呢?
从这个开始,但不确定下一步要做什么:
File file = new File("image.jpg");
BufferedImage bufferedImage = ImageIO.read(file);
WritableRaster raster = bufferedImage.getRaster();
DataBufferByte data = (DataBufferByte) raster.getDataBuffer();
byte[] pixels = data.getData();
如果有任何帮助,我将不胜感激。
1条答案
按热度按时间w8rqjzmb1#
找到了解决办法。要将.bmp图像的regb值转换为需要更改的二进制向量,我应用了以下解决方案: