распознавание краев изображения в приложении android kotlin - PullRequest
0 голосов
/ 05 февраля 2020

Я хотел бы получить результирующее изображение с распознанным краем загруженного изображения из галереи устройства. Я импортировал модуль opencv sdk на android студию. Сборка прошла успешно, но приложение перестало работать. возможно я делаю что-то не так с кодом, или потому что я не могу использовать opencv на устройстве?

override fun onActivityResult(requestCode: Int, resultCode: Int, data: Intent?) {
        if (resultCode == Activity.RESULT_OK && requestCode == IMAGE_PICK_CODE) {

            val image = imageView.setImageURI(data?.data)

            System.loadLibrary(Core.NATIVE_LIBRARY_NAME)
            val color = Imgcodecs.imread(image.toString())

            val gray = Mat()
            val draw = Mat()
            val wide = Mat()

            Imgproc.cvtColor(color, gray, Imgproc.COLOR_BGR2GRAY)
            Imgproc.Canny(gray, wide, 50.0, 150.0, 3, false)
            wide.convertTo(draw, CvType.CV_8U)

        }

в logcat выдает следующую ошибку


FATAL EXCEPTION: main
    Process: com.example.pickimage, PID: 20080
    java.lang.UnsatisfiedLinkError: dalvik.system.PathClassLoader[DexPathList[[zip file "/data/app/com.example.pickimage-Q6A4MLepE47AVE_mh__gmw==/base.apk"],nativeLibraryDirectories=[/data/app/com.example.pickimage-Q6A4MLepE47AVE_mh__gmw==/lib/arm64, /data/app/com.example.pickimage-Q6A4MLepE47AVE_mh__gmw==/base.apk!/lib/arm64-v8a, /system/lib64, /system/vendor/lib64]]] couldn't find "libopencv_java420.so"

...