当前位置: 首页 > 知识库问答 >
问题:

如何将Android.Media.Image转换为位图对象?

岳亮
2023-03-14

在android中,我从这里得到一个图像对象https://inducesmile.com/android/android-camera2-api-example-tutorial/this camera tutorial。但我现在想要遍历像素值,有人知道我怎么做吗?我需要将它转换成其他的东西吗?我该怎么做?

谢谢

共有1个答案

狄誉
2023-03-14

如果要在整个像素中循环所有内容,则需要首先将其转换为位图对象。现在,我在源代码中看到它返回一个image,您可以直接将字节转换为位图。

    Image image = reader.acquireLatestImage();
    ByteBuffer buffer = image.getPlanes()[0].getBuffer();
    byte[] bytes = new byte[buffer.capacity()];
    buffer.get(bytes);
    Bitmap bitmapImage = BitmapFactory.decodeByteArray(bytes, 0, bytes.length, null);

然后,一旦您获得了位图对象,您现在可以迭代所有像素。

 类似资料:
  • 问题内容: 我正在使用Universal-Image- Loader,并且有此功能可以从SD卡访问图像的文件缓存。但是我不知道如何将返回的文件缓存转换为位图。基本上,我只是想将位图分配给ImageView。 错误: “ ImageView类型的setImageBitmap(Bitmap)方法不适用于参数(文件)” 问题答案: 您应该可以使用:

  • 我想把openCV Mat文件转换成GDI+位图图像。我找不到任何关于如何做到这一点的信息?

  • 问题内容: 由于某种原因,我无法在MDN文档中找到这个简单的东西(也许我只是想念它)。 我希望这可以工作: …但是第一行抛出 如何从普通对象制作地图?我真的必须首先将其转换为键值对数组的数组吗? 问题答案: 是的,构造函数采用键值对数组。 是ES2017(19.1.2.5)中可用的新的Object静态方法。 如果您需要支持较旧的环境,并且不适合使用Transpilation,请使用polyfill

  • 问题内容: 如何将java对象转换为InputStream? 问题答案: 您可以使用ObjectOutputStream 您将对象(以下代码中的obj)写入ObjectOutputStream,要转换为输入流的对象必须实现Serializable。

  • 问题内容: 如何在Java中将对象转换为int? 问题答案: 如果您确定该对象是: 或者,从Java 7开始,您可以等效地编写: 当心,它可以抛出一个,如果你的对象是不是和你要的对象是。 这样,您就假定对象是一个整数(包装的int),然后将其拆箱为一个int。 是基元,因此不能将其存储为,唯一的方法是将考虑/装箱为,然后存储为。 如果您的对象是,则可以使用方法将其转换为简单的int: 如果您的对象

  • 问题内容: 我将输入流从Web转换为位图时遇到问题。仅当输入图像类型为.BMP(位图)时,才会出现问题。在这种情况下: bitmapFactory.decodeStream返回null 。 有什么提示如何解决此问题,或者应该在哪里继续调试? 平台:Android(蜂窝) 问题答案: 谢谢@Amir指出日志。发现了一条线: 这似乎是一个普遍的问题。进行搜索后,我找到了解决方案。 我以前的代码: 起作