我正在尝试使用以下java代码来读取android上的图像数据。由于不支持 ImageIO,我可以通过哪些方式使用 getData().getPixels()?
通过将 BufferedImage 更改为 Bitmap,我可以让除 bi.getData().getPixels() 之外的所有其他代码正常工作吗?
我可以用android库中的任何方法来替换它吗?
在 android Bitmap 类中: public void getPixels (int[] 像素,int offset,int stride,int x,int y,int width,int height)
此方法支持 int[],但不支持 double[]。我不熟悉图像处理它们会有所不同吗?
谢谢你。
private double[] getImageData(String imageFileName) throws FaceRecError {
BufferedImage bi = null;
double[] inputFace = null;
try{
bi = ImageIO.read(new File(imageFileName));
}catch(IOException ioe){
throw new FaceRecError(ioe.getMessage());
}
if (bi != null){
int imageWidth = bi.getWidth();
int imageHeight = bi.getHeight();
inputFace = new double[imageWidth * imageHeight];
bi.getData().getPixels(0, 0, imageWidth, imageHeight,inputFace);
}
return inputFace;
}