因为学习机器视觉的需要,本人比较喜欢用Java,所以想用Java来进行OpenCV开发。查找网上相关信息,感觉杂乱无章,许多问题无法解决,特此给出本人搭建过程。只是爱好者,不是大神,不喜勿喷,欢迎讨论。
工具版本:
1、eclipse
2、OpenCV 3.41(2.44后开始支持Java,所以选择哪个版本都行。OpenCV希望自行百度下载,因为好像贴的链接不知道为什么,其他博主自己下得好好地,别人就有可能打不开,可能与个人电脑网络有关。我留一个能不能用自己看着办,3.41版本https://sourceforge.net/projects/opencvlibrary/?source=typ_redirect)
3、win10
安装具体过程:
1、百度OpenCV ,进入OpenCV官网,选择版本,点击版本页面,下载所选链接。
没错就是 .exe 文件,下载时间会有点久。下载完后,自己选个地方安装应该没问题吧。
安装完成后
我们需要用的其实就是这个文件夹 OpenCV目录下得build\Java
2、打开eclipse
window > Preferences > Java > User Libraries
点New,然后自己起个名。
不要告诉我起完名字以后 OK不懂得点,那真是有点老实人了。
现在点 Add External JARs ,刚刚我们仅仅只是建了一个Library,现在我们要往这个Library里面加JAR包
会跳出一个框,你选到你安装OpenCV的路径,然后进入build>java ,到这边你自己看一下自己下载的OpenCV版本,例如我是3.41,那么它就是opencv-3.41.jar,反正这边就这么一个jar包,选它准没错。
点打开。
opencv3.4这个library下瞬间多了很多东西,然后选择Native library location:(None),看到没 现在是None,然后点击Edit。
点击External Folder
还是选择到你安装OpenCV的路径。
自己电脑是64位就选x64文件夹,32就是x86。然后点确定,点OK,点Apply And Close,这个要是还要截图的话,那可真强。
到此为止,OpenCV的library已经完成。
现在就是如何将我们建立的User Library加入工程,懂的人就不用看了,直接copy下面的代码看一下能不能运行。
New一个Java Project,然后右击创建的工程,build path > Add Library,这个应该不用我说了吧,添加jar经常用到这个。
选择User Library ,点击Next。
看到没有,我们刚刚添加的Library,打个勾勾,finish一下,便添加进去了。
看到没有,我们之前没有这个library,现在就有了。(这个User Library在平常开发当中经常遇到,如可将spring这种需多jar包引入的框架,你便可以把它做成Library,这样以后每次引用省心省力。)
这个代码是copy一位老哥的,在此谢谢老哥了,因为我忘了是哪一位,所以在此也说声对不住啊。
public class Hello {
public static void main( String[] args )
{
System.loadLibrary( Core.NATIVE_LIBRARY_NAME );
Mat mat = Mat.eye( 3, 3, CvType.CV_8UC1 );
System.out.println( "mat = " + mat.dump() );
}
}
自己创个类,然后把上面那段老哥的测试代码copy进去。选中所有 然后 Ctrl+shift+O,有惊喜。(这个是eclipse开发过程中的快捷键使用,一位老哥贴出来的,挺不错的http://blog.csdn.net/chushoutaizhong/article/details/51997929 )
没错会帮我们自己把所需要的jar包导进来。
自己RUN一下
有个三行三列的矩阵。
到此OK。
也在这特别感谢之前我看过的那些博客的博主。因为有他们无私的奉献精神,所以我才能学会。
附上一个Java+OpenCV的开发文档,一位老哥那看到的http://opencv-java-tutorials.readthedocs.io/en/latest/