创建兼容android activity的OSGI bundle

时间:2014-05-22 12:20:00   收藏:0   阅读:410

SuperPixel最初由Xiaofeng Ren提出(ICCV 2003),但我在网络上尚未找到有关这个最初想法的源代码;比较容易获得的倒是Greg Mori(CVPR 2004,ICCV 2005)基于Xiaofeng Ren算法做的代码https://www.cs.sfu.ca/~mori/research/superpixels/.代码包分为32bit版和64bit版.

这个代码用到了C与M混合编程,并非是拿来即可运行的,在代码和matlab的配置上还是有一定需要注意的问题。

搜索了下,有关Greg Mori代码的配置主要都是针对32bit的.网络上共有两个版本.一个是Linux(32bit+matlab 2010a)下的配置指导:http://kittipatkampa.wordpress.com/2011/02/28/how-to-install-greg-moris-superpixel-matlab-code/

配置的步骤非常详细,对产生的问题也是有预见性.参考价值较大.

另一个版本是国内研究者的简单修改版http://blog.csdn.net/likuan/article/details/7389761也是针对32bit版进行的测试,适用于windows版本的测试。

本人下载的是64bit的程序包,在配置上还是遇到了上述两种修改方法都不一样的地方。先把具体过程列出来。

1.从berkeley上下载image segmentation的benchmark的库,解压到你的superpixel代码的文件夹下(假设你的代码解压到名为superpixel的文件夹下),解压后的目录结构如下:

bubuko.com,布布扣

2.按照kittipatkampa的方法修改‘segbench/Dataset/bsdsRoot.m‘中的路径;

3.mex目录yu_imncut下的所有C文件,要逐个mex,‘mex *.c’不好用....这步骤和上述两种方法差不多,唯一不同由于是64bit上运行,mex命令要求带如下参数:

mex -O -largeArrayDims csparse.c
mex -O -largeArrayDims ic.c
mex -O -largeArrayDims imnb.c
mex -O -largeArrayDims parmatV.c
mex -O -largeArrayDims spmd1.c
你也可以把这些命令写入一个名为‘make.m‘文件,batch运行;

4.修改sp_demo.m的头部,加入对当前路径的获取(这个基本参照likuan的指导)

s_cur_path = fileparts(mfilename(‘fullpath‘));
cd(s_cur_path);
addpath(genpath(s_cur_path));

5.likuan的guidence中要求修改cncut.m中的两处spmd为spmd2,这个在64bit代码中不需要,针对64bit代码,此步可以忽略;

6.Then Enjoy It!

bubuko.com,布布扣bubuko.com,布布扣bubuko.com,布布扣bubuko.com,布布扣

7.一些注记 由于不同系统 不同内置编译器(gcc,vc2008,2010 etc ),建议需要把代码移植到不同机器上的童鞋在运行代码前都要把原先mex的文件删除,然后重新mex,这样可以避免一些不必要的报错.

当然代码中还是有些warning的,本人较懒 还来不及深究 哪位同好有好的suggestion pm我

bubuko.com,布布扣

创建兼容android activity的OSGI bundle,布布扣,bubuko.com

评论(0
© 2014 mamicode.com 版权所有 京ICP备13008772号-2  联系我们:gaon5@hotmail.com
迷上了代码!