ALGORYTM PRZETWARZANIA OBRAZU DETEKCJA I ANALIZA OBSZARÓW IMAGE PROCESSING ALGORITHM BLOB DETECTION AND ANALYSIS

Podobne dokumenty
Analiza obrazów. Segmentacja i indeksacja obiektów

Implementacja filtru Canny ego

Analiza obrazu. wykład 3. Marek Jan Kasprowicz Uniwersytet Rolniczy 2009

Spośród licznych filtrów nieliniowych najlepszymi właściwościami odznacza się filtr medianowy prosty i skuteczny.

Przetwarzanie obrazów wykład 4

Algorytmy Laplacian of Gaussian i Canny ego detekcji krawędzi w procesie analizy satelitarnych obrazów procesów atmosferycznych.

Algorytm SAT. Marek Zając Zabrania się rozpowszechniania całości lub fragmentów niniejszego tekstu bez podania nazwiska jego autora.

Cyfrowe przetwarzanie obrazów i sygnałów Wykład 8 AiR III

Politechnika Świętokrzyska. Laboratorium. Przetwarzanie obrazów medycznych. Ćwiczenie 5. Filtracja kontekstowa obrazów.

Przetwarzanie obrazów wykład 2

Przetwarzanie obrazu

Filtracja obrazu operacje kontekstowe

Filtracja obrazu operacje kontekstowe

Przetwarzanie obrazów wykład 3

CECHY BIOMETRYCZNE: ODCISK PALCA

Cyfrowe Przetwarzanie Obrazów i Sygnałów

Przetwarzanie obrazu

Wydział Geologii, Geofizyki i Ochrony Środowiska PROJEKT INŻYNIERSKI

Parametryzacja obrazu na potrzeby algorytmów decyzyjnych

Cyfrowe przetwarzanie obrazów i sygnałów Wykład 7 AiR III

Wyższa Szkoła Informatyki Stosowanej i Zarządzania

9. OBRAZY i FILTRY BINARNE 9.1 Erozja, dylatacja, zamykanie, otwieranie

Diagnostyka obrazowa

Segmentacja obrazów cyfrowych z zastosowaniem teorii grafów - wstęp. autor: Łukasz Chlebda

Segmentacja przez detekcje brzegów

BIBLIOTEKA PROGRAMU R - BIOPS. Narzędzia Informatyczne w Badaniach Naukowych Katarzyna Bernat

Operacje przetwarzania obrazów monochromatycznych

ANALIZA I INDEKSOWANIE MULTIMEDIÓW (AIM)

Automatyczne tworzenie trójwymiarowego planu pomieszczenia z zastosowaniem metod stereowizyjnych

Operacje morfologiczne w przetwarzaniu obrazu

Analiza i przetwarzanie obrazów

Diagnostyka obrazowa

Detekcja punktów zainteresowania

Elementy analizy obrazu. W04

METODY ANALIZY OBRAZÓW W ZASTOSOWANIACH DIAGNOSTYCZNYCH

Instrukcja użytkowania modułu Rzeźba terenu

Cyfrowe przetwarzanie obrazów i sygnałów Wykład 10 AiR III

WYKŁAD 13 ANALIZA I ROZPOZNANIE OBRAZU. Konstrukcja wektora cech z użyciem współczynników kształtu

Detekcja kodów kreskowych w obrazach za pomocą filtrów gradientowych i transformacji morfologicznych

Diagnostyka obrazowa

i ruchów użytkownika komputera za i pozycjonujący oczy cyberagenta internetowego na oczach i akcjach użytkownika Promotor: dr Adrian Horzyk

Algorytmy decyzyjne będące alternatywą dla sieci neuronowych

Analiza obrazu. wykład 4. Marek Jan Kasprowicz Uniwersytet Rolniczy 2009

Segmentacja obrazu. Segmentacja obrazu

Dodatek A. Palety. QuarkXPress 4.1. Projekty praktyczne. Podstawowe palety

Samochodowy system detekcji i rozpoznawania znaków drogowych. Sensory w budowie maszyn i pojazdów Maciej Śmigielski

Przekształcenia kontekstowe. Filtry nieliniowe Typowy przykład usuwania zakłóceń z obrazu

Analiza obrazów - sprawozdanie nr 2

WYKŁAD 12. Analiza obrazu Wyznaczanie parametrów ruchu obiektów

Detekcja twarzy w obrazie

Obraz jako funkcja Przekształcenia geometryczne

Analiza i przetwarzanie obrazo w

Zygmunt Wróbel i Robert Koprowski. Praktyka przetwarzania obrazów w programie Matlab

Wyższa Szkoła Informatyki Stosowanej i Zarządzania

Filtracja splotowa obrazu

Umieszczanie grafiki w dokumencie

Dynamiczny przydział pamięci w języku C. Dynamiczne struktury danych. dr inż. Jarosław Forenc. Metoda 1 (wektor N M-elementowy)

Przetwarzanie obrazów rastrowych macierzą konwolucji

Przetwarzanie obrazów wykład 7. Adam Wojciechowski

WYKŁAD 3 WYPEŁNIANIE OBSZARÓW. Plan wykładu: 1. Wypełnianie wieloboku

Złożoność obliczeniowa zadania, zestaw 2

Przetwarzanie obrazu

Szacowanie wartości monet na obrazach.

Komputerowe przetwarzanie obrazu Laboratorium 5

Analiza obrazów - sprawozdanie nr 3

Julia 4D - raytracing

E-I2G-2008-s1. Informatyka II stopień (I stopień / II stopień) Ogólnoakademicki (ogólno akademicki / praktyczny)

KATEDRA MECHANIKI I PODSTAW KONSTRUKCJI MASZYN. Instrukcja do ćwiczeń laboratoryjnych z elementów analizy obrazów

Zbigniew Sołtys - Komputerowa Analiza Obrazu Mikroskopowego 2016 część 7

Proste metody przetwarzania obrazu

Diagnostyka obrazowa

Akademia Górniczo - Hutnicza im. Stanisława Staszica w Krakowie. Projekt. z przedmiotu Analiza i Przetwarzanie Obrazów

ALGORYTMY PRZETWARZANIA OBRAZÓW Projekt. Aplikacja przetwarzająca obrazy z możliwością eksportu i importu do programu MS Excel.

Diagnostyka obrazowa

MATEMATYCZNY MODEL PĘTLI HISTEREZY MAGNETYCZNEJ

Grenlandia się topi badanie rozkładu kątów pomiędzy strumykami na lądolodzie na podstawie analizy obrazu

Diagnostyka obrazowa

PRZETWARZANIE SYGNAŁÓW

zna wybrane modele kolorów i metody transformacji między nimi zna podstawowe techniki filtracji liniowej, nieliniowej dla obrazów cyfrowych

Cyfrowe przetwarzanie obrazów i sygnałów Wykład 9 AiR III

ANALIZA OBRAZU Analiza obrazu poprawy jako ci obrazu, restauracji obrazów kodowania obrazów

Diagnostyka obrazowa

Ćwiczenia z grafiki komputerowej 5 FILTRY. Miłosz Michalski. Institute of Physics Nicolaus Copernicus University. Październik 2015

3. OPERACJE BEZKONTEKSTOWE

Cyfrowe Przetwarzanie Obrazów i Sygnałów

Wykrywanie twarzy na zdjęciach przy pomocy kaskad

Dwufazowy system monitorowania obiektów. Karina Murawko, Michał Wiśniewski

Przekształcenia punktowe

PL B1. Układ do przetwarzania interwału czasu na słowo cyfrowe metodą kompensacji wagowej

Przetwarzanie obrazu

Podstawy programowanie systemów wizyjnych InSight firmy Cognex. Środowisku InSight Explorer / Spreadshee

rozpoznawania odcisków palców

POPRAWIANIE JAKOŚCI OBRAZU W DZIEDZINIE PRZESTRZENNEJ (spatial image enhancement)

Filtracja liniowa (metody konwolucyjne, tzn. uwzględniające pewne otoczenie przetwarzanego piksla):

DIGITALIZACJA GEOMETRII WKŁADEK OSTRZOWYCH NA POTRZEBY SYMULACJI MES PROCESU OBRÓBKI SKRAWANIEM

2. Arytmetyka procesorów 16-bitowych stałoprzecinkowych

Zadanie 3: Liczenie winogron

Metody kodowania wybranych cech biometrycznych na przykładzie wzoru naczyń krwionośnych dłoni i przedramienia. Mgr inż.

Reprezentacja i analiza obszarów

Transkrypt:

ELEKTRYKA 203 Zeszyt 2-3 (226-227) Rok LIX Marek SZYMCZAK Politechnika Śląska w Gliwicach ALGORYTM PRZETWARZANIA OBRAZU DETEKCJA I ANALIZA OBSZARÓW Streszczenie. W artykule przedstawiono algorytm przetwarzania obrazu realizującego funkcję detekcji i analizy obszarów wraz ze szczegółowym omówieniem zasady działania. Algorytm ten został zaimplementowany i przetestowany na procesorze sygnałowym TMS320C6437. Słowa kluczowe: przetwarzanie obrazu, detekcja i analiza obszarów, procesor DSP IMAGE PROCESSING ALGORITHM BLOB DETECTION AND ANALYSIS Summary. This paper presents and describes in details an image processing algorithm for detecting and analyzing blobs. The algorithm has been implemented and tested on TMS320C6437 digital signal processor. Keywords: image processing, blob detection and analysis, DSP processor. WSTĘP Detekcja i analiza obszarów (ang. blob detection and analysis) jest jedną z bardziej złożonych technik obróbki obrazu, pozwalającą na segmentacje wyróżnionych w nim obiektów i określenie, które punkty można przypisać do którego obiektu. Dane te mogą być bazą do dalszej analizy bardziej złożonych parametrów, takich jak rozmiar obiektu, jego objętość, środek etc. Do segmentacji często stosuje się połączone ze sobą przekształcenia kontekstowe, bezkontekstowe oraz morfologiczne, tak aby na wyjściu uzyskać obraz binarny z wyróżnionymi na nim obszarami. Przygotowanie obrazu, który ma być poddany analizie za pomocą algorytmu indeksacji, rozpoczyna się od binaryzacji obrazu wejściowego, który najczęściej jest obrazem czarnobiałym, mającym pewną liczbę poziomów szarości. Binaryzacja polega na zmniejszeniu liczby tych poziomów do niezbędnego minimum, czyli dwóch: 0 albo (jeżeli punkt ma

52 M. Szymczak wartość 0, to jest czarny, jeżeli, to jest biały). Proces binaryzacji może być realizowany na wiele sposobów. Najprostszym jest ustalenie sztywnego progu, który rozdziela poziomy szarości na czarne (leżące poniżej ustalonego progu) oraz białe (leżące powyżej ustalonego progu). () (2) gdzie: L(m,n) punkty obrazu źródłowego L(m,n) [0, 2 B -]; L (m,n) punkty obrazu wynikowego L (m,n) [0, ]; a próg binaryzacji.` Próg binaryzacji może być dolny () lub górny (2), przy czym ten drugi powoduje odwrócenie kolorów przetwarzanego obrazu. Przykład obrazu poddanego binaryzacji został przedstawiony na rysunku. Rys.. Obraz Lenna (po lewej) poddany binaryzacji z dwoma różnymi wartościami progów: a=27 (pośrodku) oraz a=80 (po prawej) Fig.. Lenna image (on the left) converted to a binary image with two different threshold values: a=27 (in the middle) and a=80 (on the right) Dodatkowo przed poddaniem obrazu binaryzacji można zastosować przekształcenia kontekstowe polegające na ekstrakcji samych krawędzi badanego obrazu. Detekcja krawędzi w dużej mierze wiąże się z filtrami górnoprzepustowymi, a różnica polega na sumie współczynników maski, która w tym przypadku wynosi 0. Jako najprostsze narzędzie do detekcji krawędzi może służyć gradient Laplace a, lecz częściej stosuje się gradienty kierunkowe, które dają lepsze efekty, np gradienty Sobela. Detekcję krawędzi stosuje się w przypadku wykrywania dużych obiektów, podając na algorytm indeksacji wyłącznie ich obrys. Związane jest to z wydajnością działania systemu, ponieważ szybkość detekcji obiektów zależy bezpośrednio od ilości aktywnych pikseli koniecznych do przeanalizowania przez algorytm.

Algorytm przetwarzania obrazu 53 Na rysunku 2 pośrodku widzimy Euklidesowe złożenie działania ośmiu masek kierunkowych Sobela oraz po prawej obraz z wykrytymi krawędziami, poddany operacji binaryzacji. Rys. 2. Obraz Lenna (po lewej) poddany operacji detekcji krawędzi (pośrodku) oraz obraz z krawędziami poddany operacji progowania (po prawej) Fig. 2. Lenna image (on the left) after edge detection operation (in the middle) and its further thresholding, resulting in a binary image (on the right) 2. ALGORYTM INDEKSACJI Działanie algorytmu indeksacji polega na przypisaniu indeksów (etykiet) do wszystkich aktywnych pikseli, jednoznacznie wskazując, do którego z obiektów one należą. Jego działanie rozpoczyna się od utworzenia tablicy o takich samych rozmiarach jak obraz wejściowy, w której będą przechowywane oznaczone obszary (indeksy). Indeksację najczęściej realizuje się przez przeglądanie całego obrazu punkt po punkcie (rysunek 3a) aż do natrafienia na pierwszy zapalony piksel (o wartości ). Do przeglądania używany jest element strukturalny w kształcie jak na rysunku 3b. Składa się on z punktu centralnego X oraz kawałka jego otoczenia A, B, C i D. Otoczenie to stanowią punkty, które były już wcześniej analizowane. a) b) Rys. 3. Algorytm indeksacji: a) proces szukania aktywnych punktów; b) element strukturalny przeszukujący obraz Fig. 3. Indexation algorithm: a) the process of searching active points; b) structurizing element used for scanning the image

54 M. Szymczak Jeżeli przesuwając element strukturalny po obrazie algorytm napotka na pierwszy aktywny piksel w punkcie centralnym (X=, rysunek 4b), to zostanie przypisany mu pierwszy indeks (L=). Poruszając się dalej, jeżeli algorytm napotka na następny aktywny punkt, to najpierw sprawdza jego otoczenie i jeśli jest ono puste (A=B=C=D=0), oznacza to, że punkt może należeć do kolejnego obiektu i przypisuje się mu kolejny indeks (L=L+). Jeśli natomiast otoczenie nie jest puste, to punkt środkowy przyjmuje niezerową wartość swojego otoczenia (na rysunku 4c X=C=). b) a) c) Obraz wejściowy Rys. 4. Proces przeszukiwania: a) obraz wejściowy; b) pierwszy napotkany aktywny punkt; c) kolejny napotkany aktywny punkt Fig. 4. The searching process: a) the input image; b) the first found active point; c) The next found active point Problem powstaje w sytuacji, gdy otoczenie składa się z kilku różnych wartości (rysunek 5b). Przyjmuje się wtedy, za wartość indeksu punktu środkowego najmniejszą wartość jego otoczenia. Niestety, prowadzi to do wyodrębnienia kilku różnych obszarów w obrębie jednego obiektu (rysunek 5c). a) b) 2 2 2 c) 2 2 2? 3 3 3 3 3 3 3 3 3 3 Obraz wejściowy Tabela indeksów Tabela indeksów Rys. 5. Proces indeksacji: a) obraz wejściowy; b) problem różnych wartości otoczenia punktu X (C=3 i D=); c) wydzielenie dwóch obszarów w obrębie jednego obiektu Fig. 5. The indexation process: a) the input image; b) the problem of a difference of values of X point's neighborhood (C=3 i D=); c) separation of two areas within the same object Problem podziału jednego obiektu na kilka obszarów rozwiązuje się przez tak zwaną tablicę sklejeń. Po napotkaniu dwóch różnych indeksów umieszcza się w niej informację o tym, że obszary są ze sobą połączone i powinny mieć ten sam indeks. Przedstawiono przykładowe tabele sklejeń dla rysunku 5.

Algorytm przetwarzania obrazu 55 Tabela Tabela sklejeń przed korektą: 2 3 2 3 Tabela 2 Tabela sklejeń po korekcie 2 3 2 Widać, że obszar o indeksie 3 został połączony z obszarem o indeksie. Tabeli tej można użyć do przeindeksowania całej tabeli indeksów na końcu algorytmu lub posługiwać się nią do określania poprawnych wartości indeksów. 2.. Pomiary Mając bazę z oznaczonymi obszarami, możemy dokonać pomiarów pewnych wartości wyszczególnionych obiektów. Pierwszym parametrem jest ilość wykrytych obiektów N, którą możemy uzyskać wprost ze sprawdzenia największej wartości indeksu w tabeli indeksów. Następny parametr to ilość punktów, z których się składa obiekt (jego pole powierzchni). Jest to parametr bardzo prosty do wyznaczenia i sprowadza się do zliczenia punktów należących do danego obiektu, ale duży wpływ na jego dokładność ma etap przygotowania obrazu binarnego. Bardziej złożoną operacją jest wyznaczenie punktu centralnego i do tego celu można wykorzystać inne parametry, których określenie jest nieco łatwiejsze. Tymi parametrami są maksymalne rozmiary obiektu w poziomie i pionie. Są to punkty należące do obiektu, które leżą na jego skraju w płaszczyźnie poziomej i pionowej. Licząc średnią z tych punktów, uzyskamy w przybliżeniu środek badanego obiektu. Na rysunku 6 zostały zaznaczone wybrane parametry badanego obiektu. środek obrys obiektu Rys. 6. Wybrane parametry badanego obiektu Fig. 6. Selected parameters of the analyzed object

56 M. Szymczak Wyznaczanie współrzędnych środka obiektu: (3) Zindeksowane obszary pozwalają na dokonanie większej ilości pomiarów innych paramentów badanych obiektów, których wybór zależy od docelowego przeznaczenia systemu przetwarzającego obraz, oraz decyzji, jakie musi on podejmować. 3. PODSUMOWANIE Na początku artykułu zostały omówione podstawowe przekształcenia kontekstowe i bezkontekstowe, służące odpowiedniemu przygotowaniu obrazu, będącego zapisem w odcieniach szarości, do formy binarnej akceptowanej przez algorytm indeksacji. W dalszej części został opisany w szczegółach sam algorytm indeksujący wraz z przykładami i możliwymi do napotkania problemami. Opisany w artykule algorytm został zaimplementowany na procesorze sygnałowym TMS320C6437. Na koniec podane zostały dane, jakie możemy uzyskać z przetworzonego obrazu i do czego mogą nam one posłużyć. BIBLIOGRAFIA. Tadeusiewicz R., Skorochoda P.: Komputerowa analiza i przetwarzanie obrazów. FPT, 997. 2. Obraz Lenna. http://www.lenna.org. 3. Qureshi S.: Embedded image processing on the TMS320C6000 DSP. Springer Science+Business Media, Inc., 2005. 4. Spectrum Digital: TMS320DM6437 Evaluation Module. Technical Reference. 5. Zieliński T.P.: Cyfrowe przetwarzanie sygnałów. WKŁ, Warszawa 2007. Mgr inż. Marek SZYMCZAK Politechnika Śląska, Wydział Elektryczny Instytut Elektrotechniki i Informatyki ul. Akademicka 0 44-00 Gliwice e-mail: Marek.Szymczak@polsl.pl