¿Cómo puedo agregar efecto térmico a la imagen YUV?
Después de googlear mucho. Encuentro una manera de cambiar la Vista previa de un solo cuadro. Corrígeme si estoy equivocado.
camera.setPreviewCallback(new PreviewCallback()
llamar de vuelta dejasget the frame of a Camera in byte
. Ahora puede guardarlo o modificarlo.
En primer lugar, solo quiero agregar efectos térmicos o nocturnos a estos bytes. ¿Cómo puedo agregar estos colores (Efectos) a YUVImage or byte[]
datos.
camera.setPreviewCallback(new PreviewCallback() {
@Override
public void onPreviewFrame(byte[] data, Camera camera) {
// TODO Auto-generated method stub
Camera.Parameters parameters = camera.getParameters();
Size size = parameters.getPreviewSize();
YuvImage image = new YuvImage(data, ImageFormat.NV21,
size.width, size.height, null);
/*Rect rectangle = new Rect();
rectangle.bottom = size.height;
rectangle.top = 0;
rectangle.left = 0;
rectangle.right = size.width;
ByteArrayOutputStream out2 = new ByteArrayOutputStream();
image.compressToJpeg(rectangle, 100, out2);
DataInputStream in = new DataInputStream();
in.write(out2.toByteArray());*/
}
}
});
Cómo aplicar filtro / efecto a YUVImage o byte [].
Y para tomar una foto debería usarandroid.hardware.Camera.PictureCallback
osetOneShotPreviewCallback()
Editar
Creo que encuentro algunos enlaces útiles que ayudan a filtrar la imagen de mapa de bits.