您的位置:首页 > 移动开发 > Android开发

opencv+Java+android 灰度图像

2015-11-17 09:11 489 查看
转自:http://www.360doc.com/content/13/1103/10/14479769_326248493.shtml

public class MainActivity extends Activity implements OnClickListener {

private Button btnProc;  
private ImageView imageView;  
private Bitmap bmp;  

private BaseLoaderCallback  mLoaderCallback = new BaseLoaderCallback(this) {  
       @Override  
       public void onManagerConnected(int status) {  
           switch (status) {  
               case LoaderCallbackInterface.SUCCESS:{  
               } break;  
 
4000
             default:{  
                   super.onManagerConnected(status);  
               } break;  
           }  
       }  
   };  

    @Override

    protected void onCreate(Bundle savedInstanceState) 

    { 

        super.onCreate(savedInstanceState);  

        setContentView(R.layout.activity_main);  

        btnProc = (Button) findViewById(R.id.btn_gray_process);  

        imageView = (ImageView) findViewById(R.id.image_view); 

        bmp = BitmapFactory.decodeResource(getResources(), R.drawable.ic_launcher);  

        imageView.setImageBitmap(bmp);  

        btnProc.setOnClickListener(this);  

    }

    

    public void onClick(View v) 

    {  

        Mat rgbMat = new Mat();  

        Mat grayMat = new Mat();  

        //获取lena彩色图像所对应的像素数据  

        Utils.bitmapToMat(bmp, rgbMat);  

        //将彩色图像数据转换为灰度图像数据并存储到grayMat中  

        Imgproc.cvtColor(rgbMat, grayMat, Imgproc.COLOR_RGB2GRAY);  

        //创建一个灰度图像  

        Bitmap grayBmp = Bitmap.createBitmap(bmp.getWidth(), bmp.getHeight(), Config.RGB_565);  

        //将矩阵grayMat转换为灰度图像  

        Utils.matToBitmap(grayMat, grayBmp);  

        imageView.setImageBitmap(grayBmp);  

    }  

    

    @Override  

    public void onResume(){  

        super.onResume();  

        //通过OpenCV引擎服务加载并初始化OpenCV类库,所谓OpenCV引擎服务即是  

        //OpenCV_2.4.3.2_Manager_2.4_*.apk程序包,存在于OpenCV安装包的apk目录中  

        OpenCVLoader.initAsync(OpenCVLoader.OPENCV_VERSION_3_0_0, this, mLoaderCallback);  

    }  

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  android opencv java