[2014.5.18][SuperPixel] 也看Greg.Mori.代码的配置与执行

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的文件夹下),解压后的目录结构如下:

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!

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

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

[2014.5.18][SuperPixel] 也看Greg.Mori.代码的配置与执行

时间: 2024-10-07 13:42:01

[2014.5.18][SuperPixel] 也看Greg.Mori.代码的配置与执行的相关文章

在MyEclipse配置自己安装的Tomcat(2014.08.18)

今天因为要在tomcat下运行一个java项目,第一次嘛,遇到了不少问题,总结分享一下: 第一次,我直接将 MyEclipse 生成的项目放到 tomcat 安装目录的 webapps 目录下,运行出现404,无法访问. 然后想了想,发现这是个错误的做法.应该先通过 MyEclipse 将项目部署到 Tomcat 下: 然后, MyEclipse 自带了 tomcat,我要配置自己安装的 TomCat : (请看参考资料:http://jingyan.baidu.com/article/4853

2014第18周四

五一很快就过去了,今天主要是睡觉,看电视,看了最近几期的财经郎眼和逻辑思维感觉增加了不少谈资.2014第18周四,布布扣,bubuko.com

2014第18周日

今天大部分时间静下来编码,处理了另外两位同事敦促的接口问题,而没有真心按照自己的规划解决我认为的项目中可能会存在的各种问题,并明确出优先级来解决掉.总是找各种借口和一些琐事来填满正常的上班时间,然后不能全身心投入解决真正重要的事,解决掉这些该做的事的困难进而让自己更强大.或许天性都是逃避困难,此时刻突然想到我不该重复这些已经重复多次无用的废话,静下来想象今天要到的开发技术和即将能用到的开发技术或方案思路也是好的: 今天遇到一个问题structs2文件上传,文本文件读到的内容是乱码,同事尝试过将文

2014第18周二

加班准备回去,晚上有事,回来早的话再做总结2014第18周二,码迷,mamicode.com

2014.06.18前结束的阅读

<浪潮之巅> 作者: 吴军出版社: 电子工业出版社 <影响力> 作者: [美] 罗伯特·西奥迪尼 出版社: 中国人民大学出版社 <少有人走的路> 作者: [美] M·斯科特·派克 出版社: 吉林文史出版社 总结: 无论是哪一本书,都涉及到一个重要的问题,心智的成熟.无论是看待问题还是去解决问题,亦或是通过自己去影响别人,扩展自己的世界,都需要心智的成熟.而心智的成熟往往是一个痛苦的忍耐.就像一句话说的那样:每每到人生的十字路口,我知道正确的道路应该是哪一条,但是我从来不

[2014.05.18]文本编码转换专家v2.0

软件名称:文本编码转换专家最新版本:v2.0操作系统:XP/2003/Win7/Win2008软件介绍:文本编码转换专家,界面简洁易用,功能强大实用.自动识别文件编码,有效转换成目标编码.真正的多线程管理,效率更高,可控性更好. 下载地址:http://url.cn/RCbqB2 淘宝购买地址:http://item.taobao.com/item.htm?spm=a1z10.1.w4004-6234656621.4.pyRjHw&id=39050877481 [2014.05.18]文本编码转

2014.7.18

技术: Unity NGUI Buttion,Scroll View,UI input, F2  改名 Linux Xargs 英语: blather cunt droll amputate forlorn don cub 2014.7.18

代码块练习题:看代码写程序的执行结果。

1 /* 2 代码块练习题: 3 看代码写程序的执行结果. 4 5 输出结果是: 6 林青霞都60了,我很伤心 7 我是main方法 8 Student 静态代码块 9 Student 构造代码块 10 Student 构造方法 11 Student 构造代码块 12 Student 构造方法 13 */ 14 15 class Student { 16 static { 17 System.out.println("Student 静态代码块"); 18 } 19 20 { 21 S

为什么学习C语言这么久,看的懂代码,做不出题没项目

我看得懂别人的程序,可是我自己却写不出来,我应该怎么办啊?你了解这些嘛? 你只是能从别人书写的代码知道每一步都做些什么吧? 你明白别人的解题思路吗? 你知道别人为什么要用那样的算法吗? 如果你看着题目,你能写出实现同一功能的代码吗? 你能知道别人在写这个程序的过程中会遇到什么样的问题吗? 你能在看了别人的程序之后写出比他好的代码吗? 你能用另一种算法写出实现同一程序的代码吗? 你真的能看懂别人的程序吗?创一个小群,供大家学习交流聊天如果有对学C++方面有什么疑惑问题的,或者有什么想说的想聊的大家