我正在从网络读取原始图像。这个图像是通过图像传感器读取的,而不是通过文件读取。
以下是我了解到的关于图像的信息:
~ 高度和宽度
~ 总大小(以字节为单位)
~ 8位灰度
~ 每个像素1个字节
我试图将这个图像转换成位图以在ImageView中显示。
这是我尝试过的:
BitmapFactory.Options opt = new BitmapFactory.Options();
opt.outHeight = shortHeight; //360
opt.outWidth = shortWidth;//248
imageBitmap = BitmapFactory.decodeByteArray(imageArray, 0, imageSize, opt);
decodeByteArray无法解码我的图片,因此返回null。
我还尝试直接从输入流中读取它,而不是先将其转换为字节数组:
imageBitmap = BitmapFactory.decodeStream(imageInputStream, null, opt);
这也会返回null。
我在这个论坛和其他论坛上搜索过,但无法找到实现这一点的方法。
有什么想法吗?
编辑:我应该补充一点,我首先检查了流是否实际包含原始图像。我使用其他应用程序(iPhone / Windows MFC)进行了检查,它们能够正确读取并显示图像。我只需要找出在Java / Android中实现这一点的方法。