quantombone / exemplarsvm

Ensemble of Exemplar-SVMs for Object Detection and Beyond
http://www.cs.cmu.edu/~tmalisie/projects/iccv11/index.html
MIT License
430 stars 155 forks source link

Running Demos #37

Closed bla204 closed 12 years ago

bla204 commented 12 years ago

I have downloaded the most recent code from the git repository into matlab 2011 added everything to the path and have been unable to run any of the demos. Would it be possible to get some setup documentation?

Thank you, Bryan

abhi2610 commented 12 years ago

Hey,

Which is the demo you are specifically facing problems with? Did you compile all the .c files in features and libsvm folder?

We will try to put up setup documentation soon.

Thanks for showing interest. Abhinav

bla204 commented 12 years ago

Well all the demos crash in one way or another so far. I am running on a windows machine and thought the precompiled versions would work?

quantombone commented 12 years ago

Hey, there are still some changes that need to happen in the main driver file (https://github.com/quantombone/exemplarsvm/blob/master/scripts/voc_demo_esvm.m)

The demos in the demos folder aren't really "demos" in the public sense they were more internal demos for the developers.

All the refactoring has been done and I'm currently using this library (without modification) in my ongoing research at MIT; however, I need to re-organize the driver files (which are in the scripts folder) so that the general public can make more sense of them.

The entire framework is engineered to run across a very large cluster, but I will clean up the scripts and create "real demos" along with the pre-trained binary files so that others can use this stuff in their research.

Take a peek at voc_template.m and voc_demo_esvm.m if you are interested in training your own system.

Try checking out the code again in a day or two as I'm getting everything ready before my trip to ICCV.

bla204 commented 12 years ago

I re-downloaded the code yesterday and managed to get it partially running. The read me probably needs to be updated to reflect the default data directory in get_voc_datasets needs to be changed as well.

However now the system seems to crash on the resize command on line 37 of featpyramid2 claiming it does not take arguments of type double. Any ideas?

Thanks, Bryan

quantombone commented 12 years ago

Hi Bryan,

If you go into the features directory, try running compile. I bet resize.cc hasn't been compiled for your platform.

I have included some pre-compiled binaries in the source tree (many different flavours of *nix), but there's a chance it hasn't been compiled on your platform. If you're using Windows, let me know if it works.. I haven't had a chance to use windows much in the last 8 years or so.

--Tomasz

bla204 commented 12 years ago

I tried to compile the features directory and it was unable to compile resize. I put the compile errors below. I am currently setting up a linux virtual box to see if I perhaps have better luck there. Let me know if you have any ideas on the windows side. resize.cc(36) : error C2057: expected constant expression resize.cc(36) : error C2466: cannot allocate an array of constant size 0 resize.cc(36) : error C2133: 'ofs' : unknown size resize.cc(70) : error C3861: 'bzero': identifier not found resize.cc(95) : error C3861: 'round': identifier not found resize.cc(96) : error C3861: 'round': identifier not found

bla204 commented 12 years ago

On another note. I set this up in matlab in ubuntu. I was able to compile the features directory and the resize function was working fine. Then it crashes in localizemeHOGdriver line 128. It claims fconvblas is undefined for input type 'cell'.

bla204 commented 12 years ago

I think I fixed the linux issue. The compile file is outputting it the wrong output name. Removing the -o flag and its parameter seems to have fixed it.

quantombone commented 12 years ago

Hey, Thanks for pointing out the compile issue! I'll try to compile things on Windows when I get access to that OS.. Everybody around here seems to be on linux and mac..

Was resize.cc the only file which gave you a problem? If you could paste the compile.m function you used, I would appreciate it. Also, if you could give me your name, I would like to maintain a list of people who helped debug/test something in this library. Of course, if you don't want me to list you that is okay.

And finally, if there is some way in which you're trying to use the code but are having a hard time, please let me know. Especially when it comes to the API, I'm willing to help straighten things out. There is still a lot of polishing that I plan on putting into the code, but without help its hard for me to know what needs fixing and what doesn't.

bla204 commented 12 years ago

resize.cc was the only file it complained on though it may potentially have issues further down. The first compile.m below is what I used on windows. In linux I removed the -o fconv as there is code somewhere referencing fconvblas not fconv. I can't remember where exactly.

% Compile the image resize function mex -O resize.cc

% Compile Felzenszwalb's 31D features mex -O features_pedro.cc

%Compile a variant of Felzenszwalb's features which doesn't do normalization mex -O features_raw.cc

% mulththreaded convolution without blas (see voc-release-4) mex -O fconvblas.cc -lmwblas -o fconv

My name if you need it is Bryan Auslander, I work for Knexus Research Corporation. We are doing some collaborative work with Abhinav Gupta.

mrgloom commented 9 years ago

Same error on windows, problem wasn't resolved?

>> run('C:\Users\user\Desktop\Pascal_VOC\exemplarsvm-master\esvm_demo_apply.m')
Found voc2007-bus.mat, not downloading
Warning: Models have images as URLs
 -- If you want to apply detectors to a LOT of images, download the PASCAL VOC2007 dataset locally and call :
[models]=esvm_update_voc_models_to_local(models,local_dir);
 --image 00001/00001:Undefined function 'resize' for input arguments of type 'double'.

run('C:\Users\user\Desktop\Pascal_VOC\exemplarsvm-master\esvm_compile.m')
resize.cc not compiled
resize.cc 
resize.cc(36) : error C2057: expected constant expression 
resize.cc(36) : error C2466: cannot allocate an array of constant size 0 
resize.cc(36) : error C2133: 'ofs' : unknown size 
resize.cc(66) : error C3861: 'bzero': identifier not found 
resize.cc(91) : error C3861: 'round': identifier not found 
resize.cc(92) : error C3861: 'round': identifier not found 

  C:\PROGRA~1\MATLAB\R2012A\BIN\MEX.PL: Error: Compile of 'resize.cc' failed.