【问题标题】:Measuring Light Intensities from Android Camera从 Android 相机测量光强度
【发布时间】:2012-10-07 23:20:36
【问题描述】:

所以我想知道当手指在安卓设备的相机上按下闪光灯时,你将如何测量不同的光强度。我已经在整个互联网上阅读了有关曝光、光传感器等的信息,但我不知道从哪里开始 :(。到目前为止,我已经制作了一个程序,可以使用表面支架和表面视图打开相机,同时打开闪光灯。我把拇指放在相机上,我可以看到我的拇指变成了粉红色,整个拇指区域的颜色变化很小。我怎样才能从相机中获取这些信息并将它们用于其他事情,比如测量心率? 非常感谢。

【问题讨论】:

  • 嗨。您可以设置一个区域,在哪里观看(例如:照片的中间 1/9),并从其上的像素中获取平均颜色。从中您可以检查帧之间的差异。

标签: java android eclipse camera light


【解决方案1】:

您可能想要研究红光和蓝光之间的比率,而不是绝对亮度。您可能会发现这种测量有助于消除绝对亮度测量中可能存在的一些共模噪声。

您的血液在没有被充氧时实际上不会变成蓝色,但它会变成不同的红色。您也许可以使用该相机进行原始的 O2 饱和度测量。如果您想与一些真实数据相关联,您可以在当地药房以不到 50 美元的价格购买一个用于 O2 饱和度/脉搏计的实际家用仪表。我相信“真正的”传感器将红外测量与红光相关联。

您可能还想查看是否需要禁用图像传感器的某种自动白平衡(这将是特定于您使用的任何设备的型号)。

【讨论】:

  • 谢谢。简而言之,这就是我最终所做的。
【解决方案2】:

你想做什么?我假设您正在尝试通过手指中的血量来测量您的心率。所以基本上你有两种状态,一种血多,一种血少。

我会从像 Totoo 提到的那样测量图片的平均亮度开始。在你知道如何做到这一点之后,制作一个程序,从图片中识别手指处于什么状态 - 比如说,如果平均亮度小于 50,你的心脏就会跳动,进入状态 2。否则,它没有't,它将处于状态 1。

当你知道怎么做之后,你就可以知道它什么时候从状态 1 切换到状态 2,反之亦然。通过将状态开关的数量除以(经过的时间 * 2),您将获得心率。

希望我能帮上忙 :)

【讨论】:

  • 我最终将这种方法与分析所看到的不同颜色深浅相结合。
猜你喜欢
  • 1970-01-01
  • 2011-06-11
  • 2015-11-22
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多