win7 64位操作系统配置javacv(运行成功)
2015-04-19 18:22
323 查看
做毕业设计时系统需要Hadoop+opencv环境搭建,本文说的是如何在win7下搭建opencv+javacv环境,我之前的问题有说明如何在Linux下配置opencv,欢迎大家讨论学习。联系邮箱:2500833119@qq.com
1. 下载opencv(我用的版本是2.4.6.0)
2. 双击opencv.x.x.exe安装,其实就是解压过程(注意:一定要把它解压到C盘根目录下,否则eclipse配置javacv的时候会失败)
3. 然后在高级设置里面设置环境变量添加path:
C:\opencv\build\x86\vc10\bin;C:\opencv\build\java\x86;
(第一个是为了vs2010设置的,第二个是为了eclipse设置的)
4. 可以先在vs2010上测试opencv:
新建工程-》打开属性管理器-》双击Debug|Win32下的Microsoft.Cpp.Win32.user-》VC++目录:
(1) 在包含目录里面添加:
C:\opencv\build\include;C:\opencv\build\include\opencv;C:\opencv\build\include\opencv2;
(2) 在库目录里添加:
C:\opencv\build\x86\vc10\lib;
库目录这里其实可以具体到highgui、core等库的。这样就不用在程序前面添加:
用下面的代码来测试,图片可以随意用一张就行:
运行结果显示图片,测试成功。
5. 然后开始配置eclipse的javacv:
a) 下载javacv-0.6-bin.zip,注意我的是0.6版本。解压,可看到文件目录:
b) 在eclipse下新建一个JavaProject:TestJavacv(这里名字随便取了)
c) 在TestJavacv下面新建文件目录libs/armeabi,建好之后,文件目录如下图所示
d) 将javacv-0.6-bin.zip解压后得到的所有的jar文件拷贝到libs文件的根目录下,注意:不是armeabi目录。(其实像macosx、linux几个jar可以不用拷贝过去的)
e) 右键刷新下TestJavacv项目,然后使用右键TestJavacv ->Build Path->Configure Build Path,在里面AddJARS,把刚才拷贝过来的所有jar包都加入到项目中。
f) 刚刚javacv-0.6-bin.zip解压后得到的目录里面会有javacv-android-arm.jar这个文件,
g) 这样javacv就配置好了
h) 测试代码(先在D盘根目录下放lena.jpg图片):
运行成功。配置完成。
以上内容都是转载过来的,经过自己的配置,我的opencv版本是2.4.6.0,javacv是0.6,(注意!!!!)配置的时候我将原文以下内容忽略了,红色字体内容:
接着,下载javacv-0.6-cppjars.zip,解压(注意是0.6版本),
可以看到解压文件目录里面有opencv-2.4.6.1-android-arm.jar文件,以及ffmpeg-2.0.1-android-arm.jar。
再把这3个jar解压,把它们里面所有*.so文件直接拷贝到刚创建的“libs/armeabi”文件夹中。
但是我在运行程序的时候出现下面问题:
Java.lang.UnsatisfiedLinkError: C:\Users\admin\AppData\Local\Temp\javacpp270039669094\jniopencv_core.dll:
Can't find dependent libraries,问题原因:你的opencv和javacv版本不一致导致的,解决方法链接:http://www.oschina.net/question/265349_106719
所以我选择的版本是opencv2.4.6.0,javacv选择的是0.6。大家如果有问题可以再讨论下,我的邮箱2500833119@qq.com,欢迎大家讨论学习。
1. 下载opencv(我用的版本是2.4.6.0)
2. 双击opencv.x.x.exe安装,其实就是解压过程(注意:一定要把它解压到C盘根目录下,否则eclipse配置javacv的时候会失败)
3. 然后在高级设置里面设置环境变量添加path:
C:\opencv\build\x86\vc10\bin;C:\opencv\build\java\x86;
(第一个是为了vs2010设置的,第二个是为了eclipse设置的)
4. 可以先在vs2010上测试opencv:
新建工程-》打开属性管理器-》双击Debug|Win32下的Microsoft.Cpp.Win32.user-》VC++目录:
(1) 在包含目录里面添加:
C:\opencv\build\include;C:\opencv\build\include\opencv;C:\opencv\build\include\opencv2;
(2) 在库目录里添加:
C:\opencv\build\x86\vc10\lib;
库目录这里其实可以具体到highgui、core等库的。这样就不用在程序前面添加:
#pragma comment(lib, "opencv_core246d.lib") #pragma comment(lib, "opencv_highgui246d.lib") |
#include <cv.h> #include <core\core.hpp> #include <highgui\highgui.hpp> #pragma comment(lib, "opencv_core246d.lib") #pragma comment(lib, "opencv_highgui246d.lib") using namespace cv; int main() {//cvtColor(frame,gray,CV_BGR2GRAY); namedWindow("show image", WINDOW_AUTOSIZE); Mat src = imread("opencv.png"); while(1) { imshow("show image", src); if (waitKey(0) == 27) return 0; } return 0; } |
5. 然后开始配置eclipse的javacv:
a) 下载javacv-0.6-bin.zip,注意我的是0.6版本。解压,可看到文件目录:
b) 在eclipse下新建一个JavaProject:TestJavacv(这里名字随便取了)
c) 在TestJavacv下面新建文件目录libs/armeabi,建好之后,文件目录如下图所示
d) 将javacv-0.6-bin.zip解压后得到的所有的jar文件拷贝到libs文件的根目录下,注意:不是armeabi目录。(其实像macosx、linux几个jar可以不用拷贝过去的)
e) 右键刷新下TestJavacv项目,然后使用右键TestJavacv ->Build Path->Configure Build Path,在里面AddJARS,把刚才拷贝过来的所有jar包都加入到项目中。
f) 刚刚javacv-0.6-bin.zip解压后得到的目录里面会有javacv-android-arm.jar这个文件,
g) 这样javacv就配置好了
h) 测试代码(先在D盘根目录下放lena.jpg图片):
import static com.googlecode.javacv.cpp.opencv_core.*; import static com.googlecode.javacv.cpp.opencv_imgproc.*; import static com.googlecode.javacv.cpp.opencv_highgui.*; public class Smoother { public static void smooth(String filename){ IplImage image = null; image=cvLoadImage(filename); if(image!=null){ cvSmooth(image,image,CV_GAUSSIAN,3); cvSaveImage("D:\\new-lena.jpg",image); cvReleaseImage(image); } } public static void main(String args[]){ smooth("D:\\lena.jpg"); } } |
以上内容都是转载过来的,经过自己的配置,我的opencv版本是2.4.6.0,javacv是0.6,(注意!!!!)配置的时候我将原文以下内容忽略了,红色字体内容:
接着,下载javacv-0.6-cppjars.zip,解压(注意是0.6版本),
可以看到解压文件目录里面有opencv-2.4.6.1-android-arm.jar文件,以及ffmpeg-2.0.1-android-arm.jar。
再把这3个jar解压,把它们里面所有*.so文件直接拷贝到刚创建的“libs/armeabi”文件夹中。
但是我在运行程序的时候出现下面问题:
Java.lang.UnsatisfiedLinkError: C:\Users\admin\AppData\Local\Temp\javacpp270039669094\jniopencv_core.dll:
Can't find dependent libraries,问题原因:你的opencv和javacv版本不一致导致的,解决方法链接:http://www.oschina.net/question/265349_106719
所以我选择的版本是opencv2.4.6.0,javacv选择的是0.6。大家如果有问题可以再讨论下,我的邮箱2500833119@qq.com,欢迎大家讨论学习。
相关文章推荐
- win7 64位操作系统 配置pl\sql dev
- [转]Win7 64位操作系统下配置PHP+MySql+Apache环境
- Win7 64位操作系统下ODBC数据源的配置问题
- 64位Win7、8、10中导入excel提示“因为 OLE DB 访问接口 'MICROSOFT.JET.OLEDB.4.0' 配置为在单线程单元模式下运行,所以该访问接口无法用于分布式查询。”
- 64位WIN7上成功安装theano,并运行了g++, GPU
- Win7 64位操作系统下配置PHP+MySql+Apache环境
- win7 64位成功安装theano 并且配置了GPU
- win7 64位成功安装theano,并且gpu配置成功
- win7 64位操作系统为acess数据库配置ODBC数据源
- win7 64位操作系统配置eclipse+android+cdt环境(各种变态错处理)
- win7 英文版64位操作系统下,破解lr不成功 ——解决办法
- win7 64位操作系统 VS2015下配置OpenCV3.2.0教程
- win7 64位操作系统下git的安装 显示文件版本和正在运行的windows版本不一致
- Win7 64位操作系统下配置PHP+MySql+Apache环境
- 【学习ARToolkit小记之一】 ARToolkit配置设置,解决64位操作系统运行sln生成错误
- Win7 64位操作系统下CreateProcess函数运行System32文件夹下批处理文件出错的原因
- win7 64位操作系统下配置PHP+MySql+Apache环境
- Win7 64位操作系统 IIS7 关于文件操作的配置问题
- 64位Win7中导入excel提示“因为 OLE DB 访问接口 'MICROSOFT.JET.OLEDB.4.0' 配置为在单线程单元模式下运行,所以该访问接口无法用于分布式查询。”
- ARToolkit在VS2010(Win7 64位)下的配置及第一个开发程序的编译与运行