Java安装opencv(Mac)
下载源码
https://github.com/opencv/opencv
直接下载压缩包就可
安装cmake和make
CMake和Make都是用于自动化编译和构建软件的工具,它们在软件开发中起着至关重要的作用。
- CMake:CMake是一个跨平台的构建系统,它可以生成Makefile文件或其他形式的构建文件,这些文件可以用于指导编译器如何编译和链接源代码。CMake的主要优点是它可以在多种操作系统和编译环境中使用,包括Linux、macOS、Windows、GCC、Clang、Visual Studio等。
- Make:Make是一个用于自动化编译的工具,它读取名为Makefile的文件,然后根据这个文件中的指令来编译源代码和链接对象文件,生成可执行文件或库文件。Make可以处理项目中的依赖关系,只重新编译那些自上次编译后被修改过的文件,从而加快编译速度。
在使用CMake和Make构建一个项目时,一般的步骤是:
- 首先,运行CMake来生成Makefile文件。在这个过程中,CMake会检查系统中的编译器、库和工具是否满足项目的需求,然后生成相应的Makefile文件。
- 然后,运行Make来编译项目。Make会读取Makefile文件,然后根据文件中的指令来编译源代码和链接对象文件,生成可执行文件或库文件。
brew install cmake
cmake -version
brew install make
gcmake -version
运行Make来编译OpenCV。
在你下载OpenCV源代码的目录中,创建一个新的目录,比如叫做"build"。
- 打开终端,切换到"build"目录,然后运行CMake来配置编译选项。一般来说,你可以使用以下命令:
cmake -D CMAKE_BUILD_TYPE=Release -D CMAKE_INSTALL_PREFIX=/Users/tal/Environment/opencv490 ..
这个命令会配置CMake使用Release模式编译OpenCV,并且将编译的结果安装到/Users/tal/Environment/opencv490
目录。
..
是CMakeLists.txt
文件所在的目录(上一级)
运行Make来编译OpenCV。你可以使用以下命令:
make -j8
这个命令会使用8个线程来编译OpenCV。你可以根据你的CPU核心数来调整-j
参数。
安装OpenCV:
- 编译完成后,运行以下命令来安装OpenCV:
sudo make install
这个命令会将编译的结果安装到你在CMake命令中指定的目录。
完成以上步骤后,你应该可以在/Users/tal/Environment/opencv490/
目录下找到OpenCV的动态库文件,比如libopencv_core.so
(在Linux上)或libopencv_core.dylib
(在Mac OS X上)。
在/Users/tal/Environment/opencv490/share/java/opencv4/
下可以看到libopencv_java490.dylib
,和opencv-490.jar
Java调用
加载
System.load("/Users/tal/Environment/opencv490/share/java/opencv4/libopencv_java490.dylib");
libopencv_java490.dylib
是OpenCV的Java接口的本地库文件。这个文件是OpenCV为Java提供的本地方法的实现。
在这个文件名中,lib
是库文件的通用前缀,opencv_java490
表示这是OpenCV的Java接口,490
是版本号,表示这是OpenCV 4.9.0版本的Java接口,.dylib
是Mac OS X系统中动态库文件的扩展名。
当你在Java程序中使用OpenCV的功能时,JVM(Java虚拟机)会调用这个库文件中的函数。为了让JVM能够找到这个库文件,你需要在运行Java程序时设置java.library.path
系统属性或DYLD_LIBRARY_PATH
环境变量,或者使用System.load
或System.loadLibrary
方法加载这个库文件。