前段时间,一直想写一个关于android相机的程序,实现如下功能:程序通过摄像机实时获取图像,但是不直接显示获取的图像,而是显示处理过后的图像。
就这个如何不显示处理前只显示处理后的图像,纠结了很久,网上搜索了很多,对于这个问题,网上的信息都是重复无用的,根本无法解决。接下来我详细的说明遇见的问题和解决方法。
一开始程序见程序段1,这么写的话,屏幕上面只会显示摄像头获取到的图片,处理过后的图片完全不会显示,后面要是强行的向这个surfaceholder控制的surfaceview来输出图片,程序会报错。
public void surfaceCreated(SurfaceHolder holder) {
//开启相机
camera=Camera.open();
try
{
camera.setPreviewDisplay(surfaceholder);
ShowMessage("开启相机成功");//toast提示
}
catch(Exception e)
{
ShowMessage("开启相机失败");//toast提示
camera.release();
camera=null;
}
}//程序段1
<