孔雀开发小屋

专注并致力于手机客户端开发
<2010年1月>
272829303112
3456789
10111213141516
17181920212223
24252627282930
31123456

统计

  • 随笔 - 103
  • 文章 - 0
  • 评论 - 251
  • 引用 - 0

常用链接

留言簿(38)

随笔分类

随笔档案

关注的博客

朋友的博客

搜索

  •  

最新评论

阅读排行榜

评论排行榜

Windows平台上编译OpenCV的Android版本

1. 必备组件

1. svn

2. cmake (http://www.cmake.org)

3. Android NDK(r5b或更高版本)

4. OpenCV trunk (https://code.ros.org/svn/opencv/trunk/opencv)

2. windows上构建

opencv\android\scripts\目录下,新建wincfg.cmd文件。设置如下变量:

l         ANDROID_NDK

l         CMAKE_EXE

l         MAKE_EXE

关于wincfg.cmd文件的配置,可以参考opencv\android\scripts\wincmd.cfg.tmpl文件。

 

做完上述操作。即可打开命令行窗口。执行如下命令

cd opencv\android\scripts

cmake_android.cmd

 

编译完成即可在opencv\android\build目录下得到所有的静态库文件。

 

进入android-opencv目录执行cmake_android.cmd

执行完上步操作之后,就会得到一个标准的android工程。在该目录下的libs文件夹下会生成libandroid-opencv.so文件。

 

至此,有了android-opencv.so和各个模块的静态库。

 

将相应的头文件都拷贝一个统一的目录中,配合上述编译出来的静态库和动态库,就可以在android中使用opencv了。

posted on 2011-06-11 17:20 孔雀 阅读(7164) 评论(5)  编辑 收藏 引用 所属分类: Android

评论

# re: Windows平台上编译OpenCV的Android版本 2011-07-20 11:20 杨德龙

求教博主,这个是编译opencv2。3的吧?我编译静态库,请问,我想把自己写的opencv的程序,使用ndk编译成Android可用的.SO库,要怎么编译呢
  回复  更多评论    

# re: Windows平台上编译OpenCV的Android版本 2011-07-20 15:53 kongque

@杨德龙
我的做法是将上面编译出来的动态链接库和头文件和NDK程序放在一起,采用动态链接的方式。这样你就存在两个so了,一个是opencv库的libandroid-opencv.so,一个是你的ndk的libmyapp.so。

在java中加载so的部分,按顺序加载两个so

即:
System.LoadLibrary("android-oepncv")
System.LoadLibrary("myapp")

即可。
  回复  更多评论    

# re: Windows平台上编译OpenCV的Android版本 2011-07-20 15:56 kongque

@杨德龙
这是是编译2.2。不过不久前2.3更新了,编译方式也有所改变,我写这篇文章时还是2.2版本。

  回复  更多评论    

# re: Windows平台上编译OpenCV的Android版本 2012-02-28 21:54 wwj

你好,看了你的文章,但是我truck下来的opencv中的android目录下没有android-opencv文件夹,没法生成后面的libandroid-opencv.so,如果楼主有源文件的话,希望你可以给我发一份,谢谢!wwj_pro@126.com
  回复  更多评论    

# re: Windows平台上编译OpenCV的Android版本 2013-08-05 17:03 tujiping

Android NDK(r5b或更高版本)这个要怎么配置啊
  回复  更多评论    

只有注册用户登录后才能发表评论。
网站导航: 博客园   IT新闻   BlogJava   知识库   博问   管理