2011-03-10 22 views
8

Actualmente tengo una aplicación de Android que puede mostrar una vista previa en vivo de la cámara, pero estoy buscando una manera de realizar la manipulación de píxeles en vivo (es decir, hacer la escala de grises en color de sepia , etc.) Hasta el momento no he encontrado ningún código para alguien que haya hecho esto antes.Visualización de vista previa de cámara en vivo modificada

Cualquier ayuda sería apreciada.

Respuesta

7

Puede usar Camera.Parameters para establecer el efecto apropiado. Lea más al respecto here.

Si quiere hacer la manipulación por su cuenta, utilice onPreviewFrame de la cámara. Esto le da raw byte[] del formato YUV (es por defecto, también podría establecerlo en otros formatos. Mire here para establecer el formato de vista previa).

Ahora puede realizar cualquier manipulación de píxeles que desee en byte[].

Espero que esto ayude!

+5

¿Y cómo mostrar la nueva imagen? –

+0

¿Algún código de muestra, por favor? –

+0

Consulte http://stackoverflow.com/questions/6690898/drawing-to-a-surfaceview-in-android para aprender a dibujar. –

0

He respondido esta pregunta here. En resumen, este tutorial le brinda probablemente la mejor manera, cómo lograrlo (utilizando OpenCV, una biblioteca gratuita de Computer Vision). Puede descargar su aplicación de ejemplo desde su website también.

Cuestiones relacionadas