Posts

Showing posts with the label vlfeat

Segmentation Algorithms in scikits-image

Image
Recently some segmentation and superpixel algorithms I implemented were merged into scikits-image . You can see the example here . I reimplemented Felzenszwalb's fast graph based method , quickshift and SLIC . The goal was to have easy access to some successful methods to make comparison easier and encourage experimenting with the algorithms. Here is a a comparison of my implementations against the original implementations on Lena (downscaled by a factor of 2). The first row is my implementation, the second the original.

Python wrappers for vlfeat quickshift

Finally I got around to wrap vlfeats quickshift features to python. These can be used to easily build (hierarchical) segmentations or superpixels in images. They can also be used for other clustering tasks but this was the main goal. You can find my wrappers on github . If you want, you can flattr me. I build upon mmmikaels python wrappers and upgraded to vlfeat 0.9.9. I didn't see if the compiling problems I addressed earlier are still present in this version but I'll check it and try to fix it in my branch. I am planing to use this together with the sift features for some superpixel and bow based image segmentation. Before that I used Turbo Pixels by Alex Levinshtein. Maybe I will write some python wrappers for his Matlab code, too. Also I just found a brand new paper on TurboPixels, called TurboPixel Segmentation Using Eigen-Images . Sounds interesting. I'll dig into it right now :)

Using vl_feat on 64-bit Linux with 32-bit Matlab

A lot of very good computer vision and machine learning libraries are written for use in Matlab. While Matlab has some advantages, I am more of a python man myself. I am a big fan of the vlfeat library by  Andrea Vedaldi and Brian Fulkerson. It is written for use in Matlab but there are some Python bindings provided by Mikael Rousson. Sadly they do not support all of vlfeat's great features. So today I wanted to make some more of vlfeat's functionality available in Python. For that, I first had to understand their Matlab interface. But when I tried to compile vlfeat I ran into some difficulties. The main problem is that the student version of Matlab is provided only in a 32bit version. But the Linux on my box is 64 bit. So here the journey begins. I am using Ubuntu but I guess the steps are quite similar for other distributions. First of all, you really have to convince mex to compile for 32bit. So in the Makefile under Linux-32 set MEX_FLAGS   ...