Top Banner
2-D edge detection 2-D edge detection using snakes using snakes Project 13 – Team 6 Project 13 – Team 6
17
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: 2-D edge detection using snakes Project 13 – Team 6.

2-D edge detection using 2-D edge detection using snakessnakes

Project 13 – Team 6Project 13 – Team 6

Page 2: 2-D edge detection using snakes Project 13 – Team 6.

Snakes in generalSnakes in general

Snakes or active Snakes or active contours are contours are computer-generated computer-generated curves that move curves that move within images to find within images to find object boundaries.object boundaries.

Page 3: 2-D edge detection using snakes Project 13 – Team 6.

Snakes in generalSnakes in general

Internal forces (snake attribute)Internal forces (snake attribute) Prevent strechingPrevent streching Prevent bendingPrevent bending

External forces (picture attribute)External forces (picture attribute) Guide towards the object boundariesGuide towards the object boundaries

Page 4: 2-D edge detection using snakes Project 13 – Team 6.

Traditional snakeTraditional snake

Needs to be initalized Needs to be initalized close to the object to close to the object to find itfind it

Can not go into Can not go into concavitiesconcavities

Page 5: 2-D edge detection using snakes Project 13 – Team 6.

Gradient Vector Flow (GVF) snakeGradient Vector Flow (GVF) snake

Can go into concavitiesCan go into concavities

Can be initialized Can be initialized anywhere, even across anywhere, even across boundariesboundaries

Page 6: 2-D edge detection using snakes Project 13 – Team 6.

Gradient Vector Flow (GVF) snakeGradient Vector Flow (GVF) snake

dssxsxEin )|)(||)(|(2

1 221

0

exinsnake EEE

exyxyx Edxdyfvfvvuu )||||)(min( 222222

Page 7: 2-D edge detection using snakes Project 13 – Team 6.

The teamThe team

Renáta Hodován – assistance, QARenáta Hodován – assistance, QAFerenc Nasztanovics – homepageFerenc Nasztanovics – homepageJulian Stottinger – MATLABJulian Stottinger – MATLAB István Vincze – C++ István Vincze – C++ Péter Siklós – presentationPéter Siklós – presentation

Page 8: 2-D edge detection using snakes Project 13 – Team 6.

Original planOriginal plan

Found a semi working Found a semi working GVF snake in GVF snake in MATLAB (original MATLAB (original program by Dejan program by Dejan Tomazevic)Tomazevic)

Had a working C++ GUI Had a working C++ GUI but without any force but without any force powers (by István powers (by István Vincze)Vincze)

Extract the snake force features from the MATLAB program, and reimplement in C++, then add some extra fetures

Page 9: 2-D edge detection using snakes Project 13 – Team 6.

The C++ programThe C++ program

Developement of the internal snake Developement of the internal snake energiesenergies

Improvements in GUI functionalityImprovements in GUI functionality Iteration and snake movementIteration and snake movementCalculation of snake directionCalculation of snake directionOptimalization of snake energyOptimalization of snake energyTuning internal energiesTuning internal energiesEmbedding the GVF funtcionEmbedding the GVF funtcion

Page 10: 2-D edge detection using snakes Project 13 – Team 6.

„„Plan B”Plan B”

C++ program not coming along, so:C++ program not coming along, so:Try some features in the MATLAB programTry some features in the MATLAB programBoth programs use the same function to Both programs use the same function to

calculate GVF, so results shouldn’t be so calculate GVF, so results shouldn’t be so differentdifferent

Save some time experimenting in C++Save some time experimenting in C++

Page 11: 2-D edge detection using snakes Project 13 – Team 6.

MATLAB experimentationMATLAB experimentation

Wanted to do a snake finding the edge of the team on a Wanted to do a snake finding the edge of the team on a group photogroup photo

Page 12: 2-D edge detection using snakes Project 13 – Team 6.

MATLAB experimentationMATLAB experimentationSome holes were not accessibleSome holes were not accessible

Page 13: 2-D edge detection using snakes Project 13 – Team 6.

MATLAB experimentationMATLAB experimentation

Reproduced the problem on a smaller imageReproduced the problem on a smaller image

Page 14: 2-D edge detection using snakes Project 13 – Team 6.

MATLAB experimentationMATLAB experimentation

Conclusion:Conclusion:

This problem can not be solved with the traditional GVF This problem can not be solved with the traditional GVF snakesnake

Some new energies need to be introduced, to force the Some new energies need to be introduced, to force the snake into these kind of cavities.snake into these kind of cavities. Readjust snake using tracing quadtrees (see presentation on Readjust snake using tracing quadtrees (see presentation on

thermal video processing by András Hajdu)thermal video processing by András Hajdu) Contour optimizationContour optimization Snake area minimalization?Snake area minimalization?

Page 15: 2-D edge detection using snakes Project 13 – Team 6.

MATLAB experimentationMATLAB experimentation

Importance of parameter tuning:Importance of parameter tuning:

Small blur High blur

Page 16: 2-D edge detection using snakes Project 13 – Team 6.

This is an ugly formula

C++ program resultsC++ program results

Team photoTeam photo Lung

Page 17: 2-D edge detection using snakes Project 13 – Team 6.

Thank you for your attention!Thank you for your attention!