Gsoc 2013 Proposal

Umesh Sharma usharma01 at gmail.com
Sun Apr 28 10:06:09 EDT 2013


Name     :- Umesh Kumar Sharma
Email     :- usharma01 at gmail.com | umesh.sharma at cse.iitkgp.ernet.in
Phone    :- +91-8388055634
Location :- Kharagpur, India, GMT + 05:30


*Project Title* *:* Graph-cut/Normal-Cut Image Segmentation 

*Introduction :*
Graph-Cut can be used to solve many problems of computer vision
that can be formulated in terms of energy minimization. One very important
problem of computer vision is object recognition, and it requires better
image segementation techniques. There already exists implementation of
Felzenswalb's fast graph based method, quickshift method and SLIC in 
scikit-image.
The results of Felzenswalb's algorithm are quite well. If the image size 
becomes
larger then many of the implemented graph algorithms become impractical.

*Motivation :*
Why python ?
Python is my favourite programming language. I am working with python from
my second year. So that is why i want to do something in python.

Why scikit-image ?
I am very interested in the field of image processing/Computer vision, and i
wish to see a library equivalent to MATLAB fuctionality in python. I have 
gone
through the source code of scikit-image. It is easy to understand and 
efficiently 
implemented. The library scikit-image is not complete yet so i can 
contribute more in this
project and I have done some image processing projects in my past.
I found the community of this project very helpful, during my PR 
submission. So that's
why i am applying in scikit-image.

*Project Goal:*  During the Gsoc period, i was thinking of implementing 
"A Multilevel Banded Graph Cuts Method for Fast Image Segmentation"
[Herve Lombaert, Yiyong Sun, Leo Grady, Chenyang Xu] as my Gsoc[2013] 
project.
The results looks good as shown in paper. There is another paper 
"Star Shape Prior for Graph-Cut Image Segmentation", which if time permits, 
i would
like to implement as well.

*Implementation Details:* As described in paper this algorithm runs one 
multiple levels
to decrease computation and memory requirement. First the graph cut is
calcultate on an image of lower resolution and then solution is propagateed 
to
next level only by computing the graph cut at that level in narrow band
surrounding. The algorithm consist of three stages:-
- Coarsening stage:- sequence of smaller images are constructed from the
 original image.
- Initial Segmentation:- Min Cut is applied on the Coarsed images 
constructed
 in the stage first.
- Uncoarsening stage :- A binary boundary image Jk is constructed to 
represent
all the image point that are identified by the nodes in
the cut Ck and project them onto a higher resolution 
boundary image Jk-1 at level k-1.
also one more thing in this implementation we are using boykov and 
kolmogorov
max-flow implementation because it is several time faster than slandered 
implementation.

*Timeline:*
Documentation and writing tests will be done along with the coding work so 
that
it is not left for the last minute.

Before June 17:
To familiarize myself more with Scikit-image.
Understand all smaller details of this algorithm.
Discuss all my ideas with the mentor and community members.
Discuss with my mentor for any changes in the plan.

Phase 1:
June 17 - July 19 (4 Weeks) : Implement Coarsening stage and start working 
on
  Initial Segmentation(boykov and kolmogorov
  max-flow)also do some documentation parallely. 
July 20 - August 2 (2 Week)  : Testing and fixing bugs for Phase 1.

Phase 2:
August 3 - August 30 (4 Weeks) : Complete the segementation part and 
Implement final
Uncoarsening stage of algorithm.
August 31 - September 6 (2 Weeks) : Combine all parts of algorithm together 
and
clean-up the code.
September 6 - September 13 (1 Week) : Testing and fixing bugs for Phase 2.
September 14 - September 27 (2 Week) : Finalizing all documentation and 
tests.

Post Gsoc :-
- Implement "Star Shape Prior for Graph-Cut Image Segmentation" paper for
  segmentation.
- Implement remaining edge detector(mainly frei-chen).


*About Me :-*
I am currently 19 years old and i am pursuing my bachelors in computer 
science at 
Indian Institue of Technology Kharagpur(India). Apart from coding and 
Computer Science
I like playing tennis, cricket. I love to spend some time with my friends.
I am very enthusiastic in learning new things.

My Prepration for this project
- I am pretty clear about the implementation details of the paper.
- I have quite understand the source code of scikit-image during my first 
PR,
  which is almost ready to merge.
- I have good understanding of image processing. 

reference : https://github.com/umesh563/scikit-image/commits/master
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.python.org/pipermail/scikit-image/attachments/20130428/7c9d91c2/attachment.html>


More information about the scikit-image mailing list