Segmentarea Imaginilor (1) - Detectia Punctelor, A Liniilor Si A Muchiilor
Segmentarea Imaginilor (1) - Detectia Punctelor, A Liniilor Si A Muchiilor
1. Introducere
The growing need for automated image analysis and interpretation in a wide range of applications necessitates the development of segmentation algorithms. Segmentation involves partitioning an image into a set of homogeneous and meaningful regions, such that the pixels in each partitioned region possess an identical set of properties or attributes. These sets of properties of the image may include gray levels, contrast, spectral values, or textural properties. The result of segmentation is a number of homogeneous regions, each having an unique label. An image is thus defined by a set of regions that are connected and non-overlapping, so that each pixel in the image acquires a unique region label that indicates the region it belongs to. The set of objects of interest in an image, which are segmented, undergoes subsequent processing, such as object classification and scene description. Segmentation algorithms are based on one of the two basic properties of graylevel values: discontinuity and similarity among the pixels. In the first category of algorithms, we partition an image based on abrupt changes in gray level. The principal areas of interest within this category are the detection of lines and edges in an image. Thus if we can extract the edges in an image and link them, then the region is described by the edge contour that contains it. We may view the process of segmentation from another perspective. From this point of view, the connected set of pixels having more or less the same homogeneous intensity forms the regions. Thus the pixels inside the regions describe the region and the process of segmentation involves partitioning the entire scene in a finite number of regions. The principal approaches in the second category are based on the similarity among the pixels within a region. While segmenting an image, various local properties of the pixels are utilized. The well-established segmentation techniques are: Histogram-based thresholding, Region growing, region splitting and merging, Clustering/Classification, Graph theoretic approach, Rule-based or knowledgedriven approach.
2. Detectia punctelor
Detectia punctelor izolate care se regasesc in arii cu intensitate constanta sau aproximativ constanta dintr-o imagine se poate face utilizand masca
1 1 1 1 8 1 . 1 1 1
Spunem ca un punct izolat a fost detectat in locatia centrului mastii daca raspunsul mastii este mai mare decat o valoare de prag non-negativa.
3. Detectia muchiilor
3.a. Formularea problemei Many approaches to image interpretation are based on edges, since analysis based on edge detection is insensitive to change in the overall illumination level. Edge detection highlights image contrast. Detecting contrast, which is difference in intensity, can emphasize the boundaries of features within an image, since this is where image contrast occurs. This is, naturally, how human vision can perceive the perimeter of an object, since the object is of different intensity to its surroundings. Essentially, the boundary of an object is a step-change in the intensity levels. The edge is at the position of the step-change. To detect the edge position we can use first-order differentiation since this emphasizes change; first order differentiation gives no response when applied to signals that do not change. The first edge detection operators to be studied here are group operators which aim to deliver an output which approximates the result of firstorder differentiation. 3.b. Operatori bazati pe derivata de ordin 1 (Roberts, Prewitt, Sobel, Canny) 3.b.1. Gradientul imaginii
f ( x, y ) f ( x, y ) f ( x, y ) x f ( x, y ) = i+ j = f ( x, y ) x y y
(1)
(2)
(3)
sau
f = G x + G y f = max G x , G y
(4)
(4`)
(5)
z1 z 4 z7
z2 z5 z8
z3 z6 z9
z1 f ( x 1, y 1) z 2 f ( x, y 1) z 3 f ( x + 1, y 1) z 9 f ( x + 1, y + 1)
(6)
Alte aproximari pentru amplitudinea gradientului si mastile corespunzatoare sunt prezentate in Figura 1 (aproximarile Sobel, Prewitt si Roberts).
Figura 1. Operatori (masti) de detectie a muchiilor si aproximarea derivatei de ordin 1 implementata de fiecare (vezi SPG - Lab 12)
3.b.3. Detectorul Canny Metoda Canny de detectie a muchiilor poate fi sumarizata astfel: 1. Pentru a reduce zgomotul, imaginea este netezita cu un filtru Gaussian cu o deviatie standard specificata, . 2 2 1/ 2 2. In fiecare punct se calculeaza gradientul local g ( x, y) = [G x + Gy ] , si directia muchiei = tan 1 (G y G x ) . Pentru calcularea G x si G y poate fi utilizata oricare din tehnicile discutate anterior. Un punct de tip muchie este definit ca fiind un punct a carui amplitudine a gradientului este maxim local in directia gradientului. 3. Punctele de tip muchie determinate in pasul (2) determina aparitia unor creste in imaginea amplitudinii gradientului. Algoritmul itereaza pixelii aflati in varful acestor creste si ii seteaza pe 0 pe aceia care nu se afla strict pe varful unei creste astfel incat sa se obtina o linie subtire, proces cunoscut sub numele de suprimare non-maximala. Pixelii de pe creste sunt apoi comparati cu doua valori de prag, T1 si T2, cu T1 < T2. Pixelii cu valori mai mari decat T2 sunt considerati pixeli de pe muchii tari. Pixelii cu valori intre T1 si T2 sunt considerati pixeli de pe muchii slabe. 4. In final, algoritmul realizeaza o conectare a muchiilor prin incorporarea pixelilor slabi 8-conectati cu pixeli tari. 3.b.4. Detectia muchiilor utilizand functia MATLAB edge Conform celor discutate anterior, ideea de baza in detectia muchiilor este de a gasi locatii in imagine unde intensitatea se modifica rapid, utilizand unul din urmatoarele doua criterii generale: 1. gasirea locatiilor unde prima derivata a functiei intensitate este mai mare in amplitudine decat o valoare de prag specificata; 2. gasirea locatiilor unde a doua derivata a functiei intensitate prezinta o trecere prin zero. Functia edge disponibila in IPT (Image Processing Toolbox) furnizeaza mai multe estimari (aproximari) ale derivatei in baza criteriilor de mai sus. Pentru unele din aceste estimari este posibil a se specifica daca detectorul este sensibil la muchiile orizontale, verticale sau la ambele tipuri. Sintaxa generala a acestei functii este: [g,t] = edge(f, method, parameters) unde f este imaginea de intrare, method este una din aproximarile disponibile (vezi Tabelul 1), iar parameters reprezinta parametrii aditionali ce pot fi specificati. La iesire, g este un array de valori logice care contine valori de 1 in locatiile in care au fost detectate puncte de tip muchie in f si 0 in rest. Parametrul t este optional si furnizeaza valoarea de prag utilizata de functia edge pentru a determina daca valorile gradientului sunt suficient de mari pentru a fi considerate muchii.
Prelucrarea digital a imaginilor Laborator 3 Detector muchii Sobel Proprietati de baza Detecteaza muchii utilizand aproximarea Sobel a gradientului (Fig. 1). Prewitt Detecteaza muchii utilizand aproximarea Prewitt a gradientului (Fig. 1). Roberts Detecteaza muchii utilizand aproximarea Roberts a gradientului (Fig. 1). Laplacian of Gaussian Detecteaza muchii prin cautarea locatiilor unde a doua derivata a functiei intensitate prezinta o trecere prin zero dupa aplicarea unui filtru Gaussian (vezi sect. 3.c.). Zero Crossings Detecteaza muchii prin cautarea locatiilor unde a doua derivata a functiei intensitate prezinta o trecere prin zero dupa aplicarea unui filtru specificat de utilizator (vezi sect. 3.c.). Canny Detecteaza muchii prin cautarea maximelor locale ale gradientului imaginii. Gradientul este calculat utilizand derivata unui filtru Gaussian. Metoda utilizeaza doua valori de prag pentru detectarea muchiilor slabe si a muchiilor tari, si include muchiile slabe in rezultat doar daca acestea sunt conectate cu muchii tari. Astfel este mai probabil ca metoda sa detecteze muchiile slabe reale (vezi sect. 3.b.3). Tabelul 1. Metode de detectie a muchiilor disponibile in functia edge Sintaxa de apel a functiei edge pentru operatorii bazati pe derivata de ordin 1: [g,t] [g,t] [g,t] [g,t] = = = = edge(f, edge(f, edge(f, edge(f, sobel, T, dir) prewitt, T, dir) roberts, T, dir) canny, T, sigma)
dir specifica directia preferata a muchiilor detectate: horizontal, vertical, both(implicit). In cazul detectorului Canny, parametrul T este un vector T=[T1, T2] continand cele doua valori de prag explicate in sectiunea 3.b.3, iar sigma este deviatia standard a filtrului de netezire (valoarea implicita este 1). 3.c. Operatori bazati pe derivata de ordin 2 (Laplacian, Zero-crossing, LoG) 3.c.1. Laplacianul imaginii f(x,y) funcia imagine continu
(16)
(17)
[ f ( x 1, y 1) + f ( x 1, y + 1) + f ( x + 1, y 1) + f ( x + 1, y + 1)] 4 f ( x, y)
(18)
(19)
Obs. Se pot folosi i mtile n care punctul central este pozitiv: 0 1 0 L2 = 1 4 1 0 1 0 Respectiv
(20)
1 1 1 (21) L3 = 1 8 1 1 1 1 n urma aplicrii laplaceianului, regiunile n care exist discontinuiti pronunate vor aprea mai luminoase (contururile) iar cele n care nivelurile de gri variaz lent se vor ntuneca. Aceasta nseamn c se produc imagini care au contururi i alte discontinuiti de culori deschise toate imprimate pe un fond ntunecat (negru).
Prelucrarea digital a imaginilor Laborator 3 Prin urmare se obine o accentuare a contururilor intr-o imagine prin simpla adunare dintre imaginea iniial i laplaceianul imaginii. Obs. n cazul n care coeficientul central al mtii laplaceianului este negativ, se poate face scdere. Deci accentuarea contururilor se poate face prin: f ( x, y) 2 f ( x, y) (a) (22) g ( x, y) = 2 (b) f ( x, y) + f ( x, y) (a) pentru coeficient central negativ (b) pentru coeficient central pozitiv Ecuaia (22)(a) este de fapt implementat printr-o singur masc. De exemplu, nlocuind expresia laplaceianului dat de (17) rezult: (23) g ( x, y) = 5 f ( x, y) [ f ( x + 1, y) + f ( x 1, y) + f ( x, y + 1) + f ( x, y 1)] Masca corespunztoare este: 0 1 0 (24) A0 = 1 5 1 0 1 0 n cazul laplaceianului dat de relaia (18) se obine masca: 1 1 1 (25) A1 = 1 9 1 1 1 1
(26)
unde r 2 = x 2 + y 2 si reprezinta deviata standard. Aceasta este o functie de netezire care, la convolutia cu o imagine va produce un efect de blur. Gradul de netezire este determinat de valoarea lui . Laplacianul acestei functii (a doua derivata in functie de r ) este (27) Din motive evidente aceasta functie se numeste Laplacian of a Gaussian (LoG). Deoarece derivarea de ordin 2 este o operatie lineara, convolutia (filtrarea) unei imagini cu 2 h( r ) este acelasi lucru cu convolutia imaginii cu o functie de netezire si apoi calcularea Laplacianului rezultatului. Astfel, aplicarea operatorului LoG are doua efecte: netezeste imaginea (astfel reducand zgomotul) si calculeaza Laplacianul care furnizeaza o image cu muchii duble.
4
h ( r ) = (
r2 2
)e
r2 2 2 .
Figura 2. Derivatele de ordin 1 si 2 intr-o zona in care au loc variatii bruste ale functiei imagine (muchie de tip treapta). Sintaxa de utilizare a detectorului LoG folosind functia edge este [g,t] = edge(f, log, T, sigma) unde sigma este deviatia standard. Valoarea implicita a parametrului sigma este 2. Ca si in cazul celorlalti operatori, functia edge ignora orice muchie care nu are amplitudinea gradientului mai mare decat T. Daca nu este furnizata o valoare pentru
Prelucrarea digital a imaginilor Laborator 3 T, functia alege o valoare de prag in mod automat. Setarea valorii 0 pentru T produce muchii care reprezinta contururi inchise, o caracteristica cunoscuta a metodei LoG.
3.c.3. Zero-crossing Acest detector este bazat pe acelasi concept ca si metoda LoG, dar convolutia este realizata utilizand o functie de filtrare specificata, H. Sintaxa de apel al functiei edge este [g,t] = edge(f, zerocross, T, H).
3.d. Limitari ale segmentarii bazate pe muchii The principal limitations of edge detection methods are:
Prelucrarea digital a imaginilor Laborator 3 (a) The edges extracted using the classical methods often do not necessarily correspond to boundary objects. In many low-quality images, captured using low quality imaging devices, some of the conventional methods produce spurious edges and gaps and their applicabilities are thus limited. (b) The edge detection techniques depend on the information contained in the local neighborhood of the image. Most of the edge detection techniques do not consider model-based information embedded in an image. (c) In most of the cases the edge detection strategies ignore the higher order organization which may be meaningfully present in the image. (d) After the edge points are extracted from the image, these points are linked in order to determine boundaries. This is usually done by first associating edge elements into edge segments and then by associating segments into boundaries. The edge linking process sometimes leads to discontinuities and gaps in the image. (e) The edge linking methods often resort to arbitrary interpolation in order to complete boundary gaps. (f) It is often difficult to identify and classify spurious edges.
4. Detectia liniilor
4.a. Formularea problemei In mod ideal, metodele discutate in sectiunea anterioara ar trebui sa furnizeze pixeli care se afla doar pe muchii. In practica, acest set de pixeli rareori caracterizeaza in mod complet o muchie datorita zgomotului, intreruperilor muchiei datorate iluminarii neuniforme si a altor efecte ce introduc false discontinuitati ale intensitatii. Astfel, algoritmii de detectie a muchiilor sunt urmati in mod tipic de proceduri de conectare pentru asamblarea pixelilor in muchii semnificative. 4.b. Procesare locala Una din cele mai simple abordari pentru conectarea punctelor de tip muchie este de a analiza caracteristicile pixelilor intr-o vecinatate mica (ex. 3x3 sau 5x5) a fiecarui punct (x,y) ce a fost catalogat drept punct de tip muchie prin una din metodele discutate. Toate punctele similare in raport cu un set de criterii predefinite sunt conectate formand o muchie. Cele doua proprietati principale utilizate pentru stabilirea similaritatii pixelilor-muchie sunt (1) marimea gradientului si (2) directia gradientului. Prima proprietate este data de valoarea f definita in Ec. 2. Astfel, un pixelmuchie de coordonate ( x 0 , y 0 ) dintr-o vecinatate predefinita a ( x, y ) este similar in marime cu pixelul ( x, y ) daca (28) | f ( x, y ) f ( x0 , y0 ) | E , unde E este o valoare de prag, non-negativa. Directia (unghiul) vectorului gradient este dat in Ec. 3. Un pixel-muchie de coordonate ( x 0 , y 0 ) dintr-o vecinatate predefinita a ( x, y ) are un unghi similar cu pixelul ( x, y ) daca (29) | ( x, y ) ( x 0 , y 0 ) |< A ,
Prelucrarea digital a imaginilor Laborator 3 unde A este o valoare unghiulara de prag, non-negativa. Un punct din vecinatatea predefinita a pixelului ( x, y ) este conectat cu pixelul ( x, y ) daca atat criteriul de magnitudine cat si cel de directie sunt satisfacute. Acest proces este repetat pentru fiecare locatie din imagine. Pe masura ce centrul vecinatatii este mutat de la un pixel la altul, trebuie pastrata o evidenta a punctelor conectate. O procedura simpla este de a asigna un nivel de gri diferit fiecarui set de pixeli conectati. 4.c. Procesare globala - transformata Hough pentru linii 4.c.1. Transformata Hough Dat fiind un set de puncte dintr-o imagine (binara), se doreste gasirea unor subseturi ale acestor puncte localizate pe linii drepte. O solutie posibila este de a gasi mai intai toate liniile determinate de fiecare pereche de puncte si apoi de a gasi toate subseturile de puncte care sunt apropiate de anumite linii. Problema acestei proceduri este ca implica gasirea a n(n 1) ~ n 2 linii si apoi efectuarea a n(n(n 1)) 2 ~ n 3 comparatii ale fiecarui punct cu fiecare linie. Aceasta abordare este restrictiva din punct de vedere computational. Pe de alta parte, in cazul transfromatei Hough, se considera un punct ( xi , yi ) si toate liniile ce trec prin acest punct. Prin acest punct trec o infinitate de linii, toate satisfacand ecuatia yi = xi a + b . Scriid aceasta ecuatie sub forma b = xi a + yi si considerand planul ab (denumit si spatiul parametrilor) se obtine ecuatia unei singure linii pentru o pereche fixa ( xi , yi ) . Mai mult, un al doilea punct ( x j , y j ) are de asemenea asociata o linie in spatiul parametrilor, si aceasta linie intersecteaza linia asociata cu ( xi , yi ) in (a' , b' ) , unde a' este panta iar b' interceptul liniei ce contine atat punctul ( xi , yi ) cat si ( x j , y j ) in planul xy . De fapt, toate punctele de pe aceasta linie au asociate linii in spatiul parametrilor care se intersecteaza in punctul (a' , b' ) . Figura 3 ilustreaza acest concept.
Prelucrarea digital a imaginilor Laborator 3 In principiu, pot fi trasate liniile din spatiul parametrilor corespunzatoare tuturor punctelor ( xi , yi ) din imagine, si, apoi, liniile in imagine sa fie identificate prin numarul mare de intersectii ale liniilor din spatiul parametrilor. Totusi, o dificultate practica a acestei abordari este aceea ca a (panta liniei) tinde spre infinit pe masura ce linia se apropie de directia verticala. O modalitate de a rezolva aceasta problema este de a utiliza reprezentarea unei linii utilizand coordonate polare: (30) = x cos + y sin .
Figura 4. (stanga) Parametrizarea ( , ) a liniilor din planul xy . (mijloc) Curbe sinusoidale in planul ( , ) ; punctul de intersectie, ( ' , ' ) , corespunde parametrilor liniei ce uneste ( xi , yi ) si ( x j , y j ) . (dreapta) Divizarea planului ( , ) in celule acumulator. Figura 4 ilustreaza interpretarea geometrica a parametrilor si . O linie orizontala are = 0 si egal cu intersectia cu axa x. In mod similar, o linie verticala are = 90 si egal cu intersectia cu axa y pozitiva, sau = 90 si egal cu intersectia cu axa y negativa. Fiecare curba sinusoidala din Figura 4 (mijloc) reprezinta o familie de linii ce trec printr-un anumit punct ( xi , yi ) . Punctul de intersectie ( ' , ' ) corespunde liniei ce trece atat prin ( xi , yi ) cat si prin ( x j , y j ) . Faptul ca transformata Hough este atractiva din punct de vedere computational provine din sub-divizarea spatiului parametrilor ( , ) in asa-numite celule de acumulare ca in Figura 4 (dreapta), unde ( min , max ) si ( min , max ) sunt intervalele prevazute pentru valorile parametrilor. Uzual, intervalele maxime de valori sunt 90 90 si D D , unde D reprezinta distanta dintre colturile imaginii. Celula de coordonate (i, j ) , cu valoarea acumulator A(i, j ) , corespunde patratului asociat cu coordonatele ( i , j ) din spatiul parametrilor. Initial aceste celule au valorile setate pe zero. Apoi, pentru fiecare punct muchie ( xk , y k ) din planul imaginii, se variaza in intervalul subdivizat si se calculeaza valorile corespunzatoare utilizand ecuatia = xk cos + y k sin . Valorile rezultate sunt apoi rotunjite la cea mai apropiata celula pe axa . Celula acumulator corespunzatoare este incrementata. La terminarea acestei proceduri, o valoare Q in A(i, j ) semnifica faptul ca Q puncte din planul xy se afla pe linia i = x cos j + y sin j . Numarul de subdiviziuni din planul ( , ) determina acuratetea coliniaritatii acestor puncte. Functia MATLAB [H, THETA, RHO] = hough(BW) calculeaza transformata Hough a imaginii binare BW.
Prelucrarea digital a imaginilor Laborator 3 THETA (in degrees) and RHO are the arrays of rho and theta values over which the Hough transform matrix, H, was generated. [H, THETA, RHO] = hough(BW,PARAM1,VAL1,PARAM2,VAL2) sets various parameters. Parameter names can be abbreviated, and case does not matter. Each string parameter is followed by a value as indicated below: 'ThetaResolution'- Real scalar between 0 and 90, exclusive. 'ThetaResolution' specifies the spacing (in degrees) of the Hough transform bins along the theta axis. Default: 1. 'RhoResolution' - Real scalar between 0 and norm(size(BW)), exclusive. 'RhoResolution' specifies the spacing of the Hough transform bins along the rho axis. Default: 1. 4.c.2. Detectia varfurilor in spatiul Hough Primul pas in utilizarea transformatei Hough pentru detectia liniilor si conectare il reprezinta detectia varfurilor (maximelor) in spatiul parametrilor. Gasirea unui set semnificativ de varfuri distincte in transformata Hough poate fi o problema dificila. Datorita quantizarii in spatiul imaginii digitale, a cuantizarii in spatiul parametrilor transformarii Hough, precum si a faptului ca, in mod obisnuit, muchiile in imagini nu sunt perfect drepte, varfurile transformatei Hough tind sa fie localizate in mai mult de o celula acumulator. O strategie de a depasi aceasta problema poate fi urmatoarea: 1. determinarea celulei Hough cu cea mai mare valoare si inregistrarea locatiei acesteia; 2. suprimarea (setarea pe zero) celulelor Hough in imediata vecinatate a maximului gasit in pasul 1; 3. repetarea primilor doi pasi pana cand se detecteaza numarul de varfuri dorit, sau pana se atinge o valoare de prag specificata. IPT MATLAB pune la dispozitie o functie houghpeaks pentru rezolvarea acestei probleme: PEAKS = houghpeaks(H,NUMPEAKS) locates peaks in the Hough transform matrix, H, generated by the HOUGH function. NUMPEAKS specifies the maximum number of peaks to identify. PEAKS is a Q-by-2 matrix, where Q can range from 0 to NUMPEAKS. Q holds the row and column coordinates of the peaks. If NUMPEAKS is omitted, it defaults to 1. PEAKS = houghpeaks(...,PARAM1,VAL1,PARAM2,VAL2) sets various parameters. Parameter names can be abbreviated, and case does not matter. Each string parameter is followed by a value as indicated below: 'Threshold' Nonnegative scalar. Values of H below 'Threshold' will not be considered to be peaks. Threshold can vary from 0 to Inf. Default: 0.5*max(H(:)) 'NHoodSize' Two-element vector of positive odd integers: [M N].'NHoodSize' specifies the size of the suppression neighborhood. This is the
Prelucrarea digital a imaginilor Laborator 3 neighborhood around each peak that is set to zero after the peak is identified. Default: smallest odd values greater than or equal to size(H)/50. 4.c.3. Detectia si conectarea liniilor utilizand transformata Hough Odata ce a fost identificat un set de varfuri in tranformata Hough, ramane de determinat daca exista segmente de linie asociate cu aceste varfuri, precum si pozitiile de start si end ale acestor linii. Pentru fiecare varf, primul pas este de a gasi locatia tuturor pixelilor diferiti de zero din imagine care au contribuit la acel varf. Pixelii asociati cu locatiile gasite trebuie grupati in segmente de linie. Urmatoarea strategie poate fi utilizata: 1. rotatia locatiilor pixelilor cu 90 atsfel incat sa fie asezati aproximativ pe o linie verticala; 2. sortarea locatiilor pixelilor dupa coordonatele x rotite; 3. localizarea golurilor in linie; ignorarea golurilor de mici dimensiuni are ca efect unirea segmentelor adiacente separate de spatii mici; 4. returnarea informatiilor despre segmentele de linie mai lungi decat o valoare minima prestabilita. IPT MATLAB pune la dispozitie o functie houghlines pentru extragerea segmentelor de linie pe baza transformatei Hough: LINES = HOUGHLINES(BW, THETA, RHO, PEAKS) extracts line segments in the image BW associated with particular bins in a Hough transform. THETA and RHO are vectors returned by function HOUGH. Matrix PEAKS, which is returned by function HOUGHPEAKS, contains the row and column coordinates of the Hough transform bins to use in searching for line segments. HOUGHLINES returns LINES structure array whose length equals the number of merged line segments found. Each element of the structure array has these fields: point1 End-point of the line segment; two-element vector point2 End-point of the line segment; two-element vector theta Angle (in degrees) of the Hough transform bin rho Rho-axis position of the Hough transform bin The end-point vectors contain [X, Y] coordinates. LINES = HOUGHLINES(...,PARAM1,VAL1,PARAM2,VAL2) sets various parameters. Parameter names can be abbreviated, and case does not matter. Each string parameter is followed by a value as indicated below: 'FillGap' Positive real scalar. When HOUGHLINES finds two line segments associated with the same Hough transform bin that are separated by less than 'FillGap' distance, HOUGHLINES merges them into a single line segment. Default: 20 'MinLength' Positive real scalar.
Prelucrarea digital a imaginilor Laborator 3 Merged line segments shorter than 'MinLength' are discarded. Default: 40
TEMA 1. Detectati muchiile in imaginea building.tif utilizand, pe rand, operatorii prezentati (Sobel, Prewitt, Roberts, Canny si LoG). Comparati performantele metodelor a. utilizand valorile implicite ale parametrilor; b. variind valorile parametrilor pentru a evidentia toate muchiile semnificative. Care operator furnizeaza cele mai bune rezultate? 2. Analizati urmatoarea imagine care contine linii in spatiul parametrilor Hough. Ce puteti spune despre imaginea initiala?
3. Implementati o functie MATLAB pentru afisarea pixelilor corespunzatori unei celule acumulator din spatiul Hough. 4. Evidentiati cele mai semnificative 5 segmente de linie in imaginea building.tif utilizand transformata Hough. a. Calculati si afisati transformata Hough a imaginii; b. Determinati cele mai semnificative 5 varfuri in spatiul Hough; c. Determinati segmentele de linie corespunzatoare acestor varfuri si desenati-le in imaginea originala.