Java 从Android摄像头测量光强度

Java 从Android摄像头测量光强度,java,android,eclipse,camera,light,Java,Android,Eclipse,Camera,Light,所以我想知道,当一个手指按下安卓设备的照相机并打开闪光灯时,如何测量不同的光强度。我在互联网上读过关于曝光、光传感器等的内容,但我不知道从哪里开始:(.到目前为止,我已经制作了一个程序,使用surfaceholders和SurfaceView打开相机,同时打开闪光灯。我把拇指靠在相机上,我可以看到拇指变成粉红色,整个拇指区域都有轻微的颜色变化。我如何从相机中获取这些信息,并将它们用于其他东西,比如我测量心率?非常感谢。你想做什么?我假设你想通过手指中的血液量来测量心率。所以基本上你有两种状态,一

所以我想知道,当一个手指按下安卓设备的照相机并打开闪光灯时,如何测量不同的光强度。我在互联网上读过关于曝光、光传感器等的内容,但我不知道从哪里开始:(.到目前为止,我已经制作了一个程序,使用surfaceholders和SurfaceView打开相机,同时打开闪光灯。我把拇指靠在相机上,我可以看到拇指变成粉红色,整个拇指区域都有轻微的颜色变化。我如何从相机中获取这些信息,并将它们用于其他东西,比如我测量心率?非常感谢。

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

首先,我会像Totoo提到的那样测量图片的平均亮度。在你知道怎么做之后,制作一个程序,从图片中识别手指处于什么状态——比如说,如果平均亮度小于50,你的心脏只是跳动,使其状态为2。否则,它没有,它将处于状态1

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


希望我能帮上忙:)

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

当你的血液没有充氧时,它实际上不会变成蓝色,但它会变成不同的红色。你可以用那台相机进行原始的血氧饱和度测量。如果你想要一些真实的数据来关联血氧饱和度,你可以在当地药店买一个真正的家用血氧饱和度计/脉搏计,只要不到50美元我相信“真正的”传感器将红外测量与红光相关联


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

Hi.您可以设置一个区域,用于观看(例如:照片中间的1/9),并从其上的像素获取平均颜色。从中,您可以检查帧之间的差异。谢谢。简而言之,这就是我最终要做的。我最终将此方法与分析所看到的不同颜色阴影相结合。