안드로이드에 OpenCV를 설치하는 방법에 대해 알아봅시다.

아래에 링크에 들어가서 OpenCV 3.4.3 android sdk를 다운받고 적절한 폴더에 설치합니다.

https://github.com/opencv/opencv/releases

OpenCV를 설치할 프로젝트를 열고

File-New-Import Module을 선택합니다.



방금 설치한 OpenCV 폴더로 이동해서

sdk/java를 선택하고 OK를 눌러줍니다.

제대로 된 폴더를 선택했다면 OpenCV라는 모듈명이 나옵니다.



모듈을 추가하고 app/build.gradle에 들어가서 맨 아래 프로젝트 추가 코드를 입력합니다.


아래는 이미지파일을 비트맵으로 받아와 흑백 및 에지검출 소스코드입니다.


File file = new File(Environment.getExternalStorageDirectory().getAbsolutePath() + "이미지 파일 경로.png"); // 파일 불러오기

if(file.exists()){ // 파일이 존재한다면

    Bitmap myBitmap = BitmapFactory.decodeFile(file.getAbsolutePath()); // 비트맵 생성


    Bitmap image1;

    OpenCVLoader.initDebug(); // 이 코드를 선언해주지않으면 컴파일 에러 발생


    Mat img1=new Mat();

    Utils.bitmapToMat(myBitmap ,img1);

    Mat imageGray1 = new Mat();

    Mat imageCny1 = new Mat();


    //Imgproc.cvtColor(img1, imageGray1, Imgproc.COLOR_BGR2GRAY); // GrayScale


    //Imgproc.Canny(imageGray1, imageCny1, 10, 100, 3, true); // Canny Edge 검출


    //Imgproc.threshold(imageGray1, imageCny1, 150, 255, Imgproc.THRESH_BINARY); //Binary


    image1= Bitmap.createBitmap(imageCny1.cols(), imageCny1.rows(), Bitmap.Config.ARGB_8888); // 비트맵 생성

    Utils.matToBitmap(imageCny1, image1); // Mat을 비트맵으로 변환


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

    imageView.setImageBitmap(image1); // 이미지 뷰에 비트맵 출력

}





정보가 유익하셨다면 아래 공감버튼 눌러주시면 감사하겠습니다.

질문사항은 댓글로 달아주시면 성의껏 답변해드리겠습니다.



to Top