我正在开发一个java应用程序,它调用本地c库中的一个功能。本地函数需要一个指向Opencv Mat类型的指针,所以我需要能够在我的Java应用程序中创建一个Opencv Mat类型以传递给本地库。在Android Java应用程序中使用OpenCV Mat。 NoClassDefFound错误与OpenCV垫
我正在使用Android Studio,并且已将'opencv库'.jar文件添加到我的项目的libs文件夹中。因此,我可以导入所需的Opencv模块并创建Opencv Mat类型/访问其功能。问题是,在运行时,我发现了以下错误:
java.lang.NoClassDefFoundError: org.opencv.core.Mat
我读过OpenCV的.jar文件,就在本机功能的包装和应用程序需要“本地库”。我如何找到/添加这个?我需要添加到我的项目中以便应用程序可以在运行时找到Opencv Mat类定义?我只想使用OpenCV Mat类型,而不是其他的。
我读过关于设置OpenCV Android的教程,但是这些需要在Android设备上安装OpenCV管理器应用程序,但这对我来说可能是一个问题,因为我无法访问我的应用程序所在的设备并且OpenCV管理器应用程序将不会安装在这些设备上。相反,是否只有一个'.so'库可以添加到我的Android Studio项目中,该项目将与我的项目捆绑在一起,并允许应用程序在运行时查找所需的Mat类,这正是我需要的吗?
在此先感谢。
当然你也可以使用其他的opencv封装类库,比如JavaCV,如果你想要的话也包括其他一些库。 –
谢谢!我认为选项3可能是我正在寻找的选项。只是不确定要复制哪些本地库或哪些链接有帮助。 – CSharp