【问题标题】:MPO Images from HTC Evo 3D来自 HTC Evo 3D 的 MPO 图像
【发布时间】:2013-04-30 19:00:26
【问题描述】:

我的团队正在为使用立体摄像头的 HTC 手机开发一款应用。为了进行处理,我们要求 3D 相机拍摄的静止图像为 MPO 格式。默认情况下,它返回 JPS 图像。

如何让相机返回 MPO 图像?有没有地方记录了这一点?

我在 HTC 网站上花了一段时间,但无法找到可能有帮助的 API 或相机应用程序的源代码(因为他们的相机应用程序可以处理 MPO 文件)。

【问题讨论】:

    标签: android stereo-3d


    【解决方案1】:

    我不知道这方面的 API,但自己动手做起来很简单。 JPS 格式只是一个图像,左半部分是一个相机,右半部分是另一个。所以第一步只需将其转换为两个单独的图像。从它创建新的位图,两边都有矩形:
    http://developer.android.com/reference/android/graphics/Bitmap.html#createBitmap(android.graphics.Bitmap,%20int,%20int,%20int,%20int,%20android.graphics.Matrix,%20boolean)

    MPO 格式只是一个文件中的两个 JPG 图像,一个接一个。所以接下来使用compress方式将两张JPG图片写入同一个文件输出流:
    http://developer.android.com/reference/android/graphics/Bitmap.html#compress(android.graphics.Bitmap.CompressFormat,%20int,%20java.io.OutputStream)

    你可以在网上找到很多用于裁剪图像并将其保存为 JPG 的 Android 示例代码,这几乎是你所需要的。

    【讨论】:

    • 我相信有几个位图工具和包含的示例代码可能会有所帮助。 MPO 最初是默认格式,但已更改为 JPS,这被认为是行业标准(更易于共享和编辑) - 但请先检查相机设置,看看您是否仍然可以选择以任何一种格式保存
    • 我认为我们将完全切换到 JPS。 HTC 的文档说 JPS 文件是“水平压缩的”,但是当我检查相机应用程序的 MPO 输出和人们给我的应用程序的 JPS 文件时,我看不出有什么区别。
    【解决方案2】:

    MPO 格式不只是

    两个 JPG 图像在一个文件中,一个接一个。

    http://www.cipa.jp/english/hyoujunka/kikaku/pdf/DC-007_E.pdf Camera and Image Processing Association's Standard Development Working Group, Multi-Picture Format Sub-Working Group 2009-02-04 标准的英文翻译。

    https://www.htcdev.com/devcenter/opensense-sdk/stereoscopic-3d/s3d-sample-code/ 展示了一些使用 HTC EVO 3D 相机的示例代码。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2015-02-11
      • 2012-05-04
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-12-03
      • 1970-01-01
      • 2012-04-16
      相关资源
      最近更新 更多