我正在从网络读取原始图像。此图像已由图像传感器读取,而不是从文件中读取。
这些是我对图像的了解:
~ 高度和宽度
~ 总大小(以字节为单位)
~ 8 位灰度
~ 1 字节/像素
我正在尝试将此图像转换为位图以显示在图像视图中。
这是我尝试过的:
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 中做到这一点。