估计YUV帧的亮度

时间:2017-12-06 10:48:11

标签: android yuv android-graphics

我想估计作为相机预览帧进来的帧的粗略亮度,如下所示。我希望这个方法非常快。

public void onPreviewFrame(final byte[] bytes, Camera camera) {
  // calculate brightness
}

有没有办法在不转换为RGB的情况下完成?如果有一种快速的方法可以在不使用OpenCV的情况下确定模糊性,那将是非常好的。

1 个答案:

答案 0 :(得分:0)

好的,我自己想通了:

                            long sumY = 0;
                            for (int j = 0, yp = 0; j < previewHeight; j++) {
                                for (int i = 0; i < previewWidth; i++, yp++) {
                                    int y = (0xff & ((int) bytes[yp]));
                                    if (y < 0) {
                                        y = 0;
                                    }

                                    sumY += y;
                                }
                            }
                            int bp = (int)sumY/(previewWidth * previewHeight);