最佳答案
好的!所以你要寻找的是改变你的相机的模式
为了实现这一点,您可以使用Camera.Parameters,您可以使用颜色效果中的EFFECT_MONO(单色)来获取黑白图像...
要使相机参数生效,应用程序必须调用Camera#setParameters(Camera.Parameters)
。
例如,在调用 Camera.Parameters#setWhiteBalance
后,白平衡实际上不会更改,直到使用更改后的参数对象调用 Camera#setParameters(Camera.Parameters)
为止。以下是示例代码供您引用
mCameraDevPara.setColorEffect(android.hardware.Camera.Parameters.EFFECT_MONO);
mCameraDev.setParameters(mCameraDevPara);
对于camera2api,您可以通过CaptureRequest
实现这些,它有方法CONTROL_EFFECT_MODE
应用特殊的颜色效果。
When this mode is set, a color effect will be applied to images produced by the camera device. The interpretation and implementation of these color effects is left to the implementor of the camera device, and should not be depended on to be consistent (or present) across all devices.
更多引用GO here.
提示: 不同的设备可能具有不同的相机功能,例如图片尺寸或闪光模式。应用程序应在设置参数之前查询相机功能。 例如,应用程序应该调用
Camera.Parameters#getSupportedColorEffects()
打电话之前
Camera.Parameters#setColorEffect(String)
。 如果相机不支持色彩效果,
Camera.Parameters#getSupportedColorEffects()
将返回 null。
关于java - Camera2 api 将相机切换为正常和黑白,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40145500/