반응형
Setting up latest OpenCV for Android Studio and Kotlin — 2021 edition
OpenCV is an amazing library used by millions of developers around the world. Sadly the documentation is outdated and sometimes misleading…
philipplies.medium.com
1. OpenCV-sdk 다운로드
https://sourceforge.net/projects/opencvlibrary/files/4.6.0/
2. Import OpenCV
build.gradle이 포함된 sdk 디렉토리를 import한다. File>New>Import Modules
1) Rename SDK → opencv
2) 모듈을 build.gradle에 추가
// OpenCV 4.5.1
implementation project(":opencv")
3. OpenCV 기능 추가.
OpenCVLoader.initDebug()
- Bitmap이미지를 받아서 grayScale로 바꿔주는 function.
fun makeGray(bitmap: Bitmap) : Bitmap {
// Create OpenCV mat object and copy content from bitmap
val mat = Mat()
Utils.bitmapToMat(bitmap, mat)
// Convert to grayscale
Imgproc.cvtColor(mat, mat, Imgproc.COLOR_RGB2GRAY)
// Make a mutable bitmap to copy grayscale image
val grayBitmap = bitmap.copy(bitmap.config, true)
Utils.matToBitmap(mat, grayBitmap)
return grayBitmap
}
** OpenCV가 libstc_c에 의존하고 있는 라이브러리가 있는 경우 compilation에러가 발생하는 경우가 있다고 한다. 에러 발생하는 것을 막기 위해서, gradle에 first library를 선택하라고 말해줘야한다. build.gradle에 아래 코드 추가.
android {
packagingOptions {
pickFirst 'lib/arm64-v8a/libc++_shared.so'
pickFirst 'lib/x86/libc++_shared.so'
pickFirst 'lib/x86_64/libc++_shared.so'
pickFirst 'lib/armeabi-v7a/libc++_shared.so'
}
}
반응형
'OpenCV' 카테고리의 다른 글
[OpenCV] 이미지 히스토그램 - calcHist (0) | 2023.01.10 |
---|---|
[OpenCV] 이진화(Binarization, thresholding) (0) | 2023.01.07 |
[Open CV] 이미지 다루기- imread, imshow, waitkey, resize (0) | 2023.01.07 |
댓글