KOMPUTEROWE MODELOWANIE PĘKNIĘĆ NA BAZIE ZDJĘĆ

Transkrypt

KOMPUTEROWE MODELOWANIE PĘKNIĘĆ NA BAZIE ZDJĘĆ
Lech NAPIERAŁA
KOMPUTEROWE MODELOWANIE
PĘKNIĘĆ NA BAZIE ZDJĘĆ
RADIOGRAFICZNYCH
STRESZCZENIE
W pracy zaprezentowano algorytm generacji
pęknięć jako komputerowych obiektów trójwymiarowych. Przedstawiono metodę ekstrakcji parametrów pęknięcia ze zdjęcia radiograficznego i ich przełożenia na obiekt trójwymiarowy. Zamieszczono
również efekty symulowanych prześwietleń z wykorzystaniem sztucznie utworzonych pęknięć.
Słowa kluczowe: badania nieniszczące, radiografia, przetwarzanie
obrazu, modelowanie pęknięć
1. WSTĘP
Symulacja komputerowa jest potężnym narzędziem, którego wartość
trudno przecenić. Posiadanie komputerowego modelu rzeczywistego obiektu
jest zazwyczaj bardzo korzystne, gdyż pozwala na stosunkowo tanie, symulacyjne zbadanie jego zachowania w różnych warunkach. Badania nieniszczące
nie są tutaj wyjątkiem. W zależności od techniki wytwarzania czy łączenia elementów metalowych (spawanie, odlewanie), pojawia się wiele rozmaitych wad [1],
takich jak pęcherzyki powietrza, wtrącenia żużlowe czy pęknięcia. Trójwymiarowe modele tych wad mogą łatwo znaleźć szereg zastosowań.
mgr inż. Lech NAPIERAŁA
e-mail: [email protected]
Zachodniopomorski Uniwersytet Technologiczny, Wydział Elektryczny,
Katedra Elektrotechniki Teoretycznej i Informatyki
PRACE INSTYTUTU ELEKTROTECHNIKI, zeszyt 243, 2009
128
L. Napierała
Jednym z takich zastosowań jest niewątpliwie tworzenie i testowanie
algorytmów automatycznego wyszukiwania defektów. Symulacja pozwoliłaby
zarówno na uzupełnienie bazy testowej przy braku wystarczającej ilości
rzeczywistych radiogramów, jak i na przetestowanie algorytmu w pewnych
szczególnych zastosowaniach. Takim szczególnym zastosowaniem mogłoby
być zbadanie zależności pomiędzy rozmiarem pęknięcia a skutecznością jego
wykrycia – wyjątkowo proste dzięki możliwości skalowania trójwymiarowego
modelu.
W tej pracy szczególny nacisk został położony na pęknięcia, pominięto
inne rodzaje defektów. Modelowanie pęknięć zostało rozważone w dwóch
podstawowych wariantach, są to: generacja losowa i generacja na bazie
istniejącego radiogramu. Pierwsze podejście może być bardzo pomocne przy
szybkim tworzeniu dużej bazy testowych radiogramów. Drugie może posłużyć
do precyzyjnego rozpoznawania istniejących defektów.
2. GENERACJA PĘKNIĘĆ LOSOWYCH
Podstawą prezentowanych algorytmów jest spostrzeżenie, że pęknięcie
w swojej strukturze jest formą grafu [2]. Każde pęknięcie składa się z pewnej
ilości gałęzi (odpowiadających krawędziom w grafach) i punktów węzłowych,
pomiędzy którymi są one rozciągnięte (odpowiadających grafowym wierzchołkom). Analogia nie jest zupełna, gdyż dla pęknięć ogromne znaczenie ma
kształt i grubość gałęzi, co jest raczej pomijane w teorii grafów. Niemniej jednak
wiele z algorytmów grafowych można wykorzystać do przetwarzania obiektów
pęknięć.
2.1. Pęknięcia jednosegmentowe
Na początek rozważmy najprostszy przypadek, czyli pęknięcie składające się z jednego tylko segmentu. Ideę jego generacji prezentuje rysunek 1.
Na dwie płaszczyzny prostokątne umieszczone w przestrzeni trójwymiarowej
(rys. 1a) nakładany jest profil wady (rys. 1b). Jest on przechowywany w pamięci
pod postacią macierzy, której wartości interpretowane są jako miara wysunięcia
odpowiadającego im punktu z płaszczyzny.
Warto zauważyć, że takie przedstawienie pęknięcia jest bardzo ogólne.
Prostokątne płaszczyzny mogą być umieszczone w przestrzeni w dowolny
sposób, profil pęknięcia może zawierać zupełnie dowolne wartości (mogą to też
129
Komputerowe modelowanie pęknięć na bazie zdjęć radiograficznych
być dwa oddzielne profile), można dowolnie zmieniać kierunek wysunięcia
punktów z płaszczyzn. Dzięki tej ogólności algorytmu możliwe jest między
innymi generowanie przy jego pomocy pęknięć wielosegmentowych.
a)
b)
c)
d)
Rys. 1. Generacja pęknięcia jednosegmentowego:
a) dwa prostokąty w przestrzeni trójwymiarowej; b) profil pęknięcia; c) profil w przestrzeni 3D;
d) gotowe pękniecie, powstałe poprzez zmniejszenie kąta pomiędzy prostokątami z punktu „c”
i „zaszycie” góry, dołu i przodu
#12#
#2.2. Pęknięcia wielosegmentowe
#12#
Pęknięcia wielosegmentowe są generalizacją pęknięć jednosegmentowych (rys. 2). Pojedyncze segmenty umieszczane są jeden za drugim, przy
czym prostokątne płaszczyzny segmentów, które kończą się w punktach środkowych pęknięcia, nie stykają się na jego końcu (rys. 2b).
a)
b)
c)
d)
Rys. 2. Generacja pęknięcia wielosegmentowego:
a) pęknięcie jednosegmentowe; b) pęknięcie jednosegmentowe z rozsuniętym końcem;
c) dołączony drugi segment; d) dołączony trzeci segment
3. MODELOWANIE PĘKNIĘĆ NA BAZIE RADIOGRAMÓW
Głównym celem prezentowanego algorytmu jest ekstrakcja cech rzeczywistego pęknięcia i stworzenie jego modelu trójwymiarowego. Model ten jest
130
L. Napierała
siłą rzeczy uproszczony, gdyż bazą jest pojedyncze zdjęcie dwuwymiarowe, co
nie pozwala na stworzenie pełnego modelu 3D. Uzyskany obiekt jest więc mimo
swej trójwymiarowości de facto modelem dwuwymiarowym, rozciągniętym
w trzecim wymiarze w celu dokonywania symulowanych prześwietleń.
Takie podejście sprawia oczywiście, że model może dość znacznie odbiegać od prawdziwego pęknięcia, dając jedynie zbliżony rezultat przy symulowanym prześwietlaniu w jednym kierunku. Wada ta zostanie wyeliminowana
poprzez kompilację informacji z kilku zdjęć jednego pęknięcia pod różnymi
kątami – pozwoli to na tworzenie pełnych modeli trójwymiarowych, przydatnych
do oceny rozległości pęknięcia.
Obraz wejściowy
Binaryzacja [3]
Szkieletyzacja, obcinanie gałęzi
Wyznaczanie punktów skrajnych i węzłowych
Wyznaczanie siatki połączeń i kształtu linii łączących
Wyznaczanie grubości linii w węzłach
Generacja obiektu trójwymiarowego na bazie
uzyskanych parametrów
Rys. 3. Algorytm ekstrakcji cech pęknięcia: schemat blokowy
Na wejściu algorytmu znajduje się rzeczywisty radiogram pęknięcia. Zostaje on uproszczony do reprezentacji czarno-białej, po czym dokonywana jest
ekstrakcja ważnych parametrów (położenia punktów kluczowych, struktury
połączeń, grubości w punktach kluczowych itp.).
131
Komputerowe modelowanie pęknięć na bazie zdjęć radiograficznych
3.1. Szkieletyzacja i odcinanie gałęzi
Szkieletyzacja jednym z najbardziej popularnych przekształceń morfologicznych [4]. Po zastosowaniu na obrazie binarnym pozostawia jedynie te
punkty, które znajdowały się w jednakowej odległości od dwóch punktów na
obwodzie obrazu oryginalnego. Rezultat szkieletyzacji można zobaczyć na rysunku 4b.
a)
c)
b)
#10#
Rys. 4. Szkieletyzacja i obcinanie gałęzi:
a) obraz wejściowy; b) obraz po szkieletyzacji; c) obraz po obcinaniu gałęzi
Szkieletyzacja w omawianym algorytmie została przeprowadzona z zastosowaniem wielokrotnego morfologicznego ścieniania elementami strukturalnymi przedstawionymi w (1) [5]
⎡X
⎢X
⎢
⎣⎢ 1
0
1
1
X⎤
X ⎥⎥
1 ⎦⎥
⎡X
⎢0
⎢
⎣⎢ X
X 1⎤
1 1⎥⎥
X 1⎦⎥
⎡1
⎢X
⎢
⎣⎢ X
1
1
0
1⎤
X ⎥⎥
X ⎦⎥
⎡1 X
⎢1 1
⎢
⎢⎣1 X
X⎤
0 ⎥⎥
X ⎦⎥
,
(1)
gdzie „1” oznacza piksel obiektu (czarny), „0” oznacza piksel tła (biały) a „X” to
dowolny piksel.
Wadą szkieletyzacji jest fakt, że zwracany przez nią wynik zazwyczaj nie
jest czystym szkieletem obiektu, ale zawiera wiele niepotrzebnych, wynikających z nieregularnego kształtu krawędzi gałęzi. Z tego też powodu w wielu
zastosowaniach po szkieletyzacji korzysta się z algorytmu obcinania gałęzi,
również będącego jednym z podstawowych przekształceń morfologicznych [6].
Obcinanie gałęzi skraca wszelkie jednopikselowej grubości fragmenty
obrazu o długość zależną od ilości iteracji (rys 4c). W niniejszym algorytmie
132
L. Napierała
zostało dokonane poprzez kilkukrotnie ścienianie przy użyciu elementów
strukturalnych z (2) [5]
⎡0 X X⎤ ⎡0 0
⎢0 1 0 ⎥ ⎢0 1
⎥⎢
⎢
⎢⎣0 0 0 ⎦⎥ ⎢⎣0 0
X⎤
X ⎥⎥
0 ⎦⎥
⎡0 0
⎢0 1
⎢
⎣⎢0 0
0⎤
X ⎥⎥
X ⎦⎥
⎡0
⎢0
⎢
⎣⎢0
0
1
X
0⎤
0 ⎥⎥
X ⎥⎦
⎡0
⎢0
⎢
⎣⎢ X
0
1
X
0⎤
0⎥⎥
0⎥⎦
⎡0
⎢X
⎢
⎣⎢ X
0 0⎤ ⎡ X
1 0⎥⎥ ⎢⎢ X
0 0⎥⎦ ⎢⎣ 0
0 0⎤ ⎡ X
1 0⎥⎥ ⎢⎢ 0
0 0⎥⎦ ⎣⎢ 0
X
1
0
0⎤
0⎥⎥
0⎦⎥
(2)
Ponadto na obrazie zostało jednokrotnie wykonane ścienianie z wykorzystaniem elementów strukturalnych z (3)
⎡1 1 1⎤
⎢0 1 0 ⎥
⎢
⎥
⎢⎣0 0 0⎥⎦
⎡0 0 1⎤
⎢0 1 1⎥
⎢
⎥
⎢⎣0 0 1⎥⎦
⎡0 0 0 ⎤
⎢0 1 0 ⎥
⎢
⎥
⎢⎣1 1 1⎥⎦
⎡1 0 0⎤
⎢1 1 0⎥
⎢
⎥
⎢⎣1 0 0⎥⎦
,
(3)
Było to konieczne, gdyż obcinanie gałęzi przeprowadzone przy pomocy
elementów strukturalnych z (2) może pozostawić na obrazie pojedyncze piksele
[pasujące do elementów z (3)], które niepotrzebnie skomplikowałyby dalsze
kroki algorytmu, nie wnosząc jednocześnie nic do jakości uzyskanego modelu.
Obcinanie krawędzi ma jedną ważną wadę w omawianym zastosowaniu.
Skraca ono zarówno gałęzie niepotrzebne, wynikające z procesu szkieletyzacji,
jak i te potrzebne, oznaczające fragmenty pęknięcia. Może to znacznie zniekształcić modele pęknięć o dużym stosunku szerokości do długości.
3.2. Wyznaczanie punktów kluczowych
Wyznaczanie punktów kluczowych jest stosunkowo proste ze względu na
fakt, że po przeprowadzeniu szkieletyzacji i obcinania gałęzi zgodnie z algorytmem opisanym w 3.1, spełniają one pewien warunek. Mianowicie wszystkie
punkty kluczowe mają jedną, trzy lub cztery sąsiadujące z nimi grupy pikseli.
Dwie grupy pikseli natomiast oznaczają punkty przynależące do gałęzi.
a)
b)
Rys. 5. Znajdowanie punktów węzłowych:
a) obraz pęknięcia po szkieletyzacji i obcinaniu gałęzi; b) obraz po wyszukaniu punktów
kluczowych
Komputerowe modelowanie pęknięć na bazie zdjęć radiograficznych
133
Pęknięcie z wyszukanymi punktami kluczowymi zostało przedstawione
na rysunku 5b. Kolor czarny oznacza piksele tła, ciemnoszary – punkty z jedną
grupą sąsiadującą (końce gałęzi), jasnoszary – punkty z dwiema grupami sąsiadującymi (gałęzie), a biały – punkt o trzech grypach sąsiadujących. Piksele
o czterech grupach sąsiadujących, jakkolwiek możliwe, są bardzo mało prawdopodobne i na przykładowym obrazie nie występują.
3.3. Wyznaczanie siatki połączeń
W tym miejscu algorytmu znana jest już ilość i rozmieszczenie wszystkich punktów kluczowych. Ta informacja jest następnie wykorzystana do wyznaczenia sieci połączeń i indeksacji gałęzi. Algorytm rekursywny startuje z punktu kluczowego i nadaje sąsiadującym pikselom ten sam numer aż do momentu, w którym natrafi na kolejny punkt kluczowy. Gdy to się stanie, do listy
połączeń dodawana jest informacja, które dwa punkty kluczowe są połączone
i jaki indeks ma łącząca je gałąź. Procedura jest powtarzana aż do wyczerpania
punktów kluczowych o nieznanych połączeniach.
Rys. 6. Siatka połączeń
3.4. Wyznaczanie kształtu gałęzi
#12#
Jak było poprzednio opisane, profil pęknięcia przechowywany jest w macierzy, której wartości są interpretowane jako miara wysunięcia odpowiadającego im punktu z zadanej płaszczyzny prostokątnej. W celu uzyskania tego
profilu stosowane jest pewne uproszczenie. Profil mierzony jest w odniesieniu
do linii prostej łączącej dwa punkty kluczowe. Wprowadza to pewne niewielkie
zniekształcenie, gdyż jest on następnie umieszczany na dwóch płaszczyznach
prostokątnych, które leżą blisko tej linii, ale są do niej nachylone pod niewielkimi
kątami.
Macierz profilu generowana jest z wartościami wysunięcia punktów
uzyskanymi w odniesieniu do linii prostej łączącej punkty kluczowe (rys. 7).
134
L. Napierała
Wartości te są następnie umieszczone w macierzy profilu w taki sposób, że
wszystkie komórki w jednej kolumnie mają te same wartości. Jest to uproszczenie wynikające z faktu, że pojedynczy dwuwymiarowy radiogram nie pozwala na pełne odwzorowanie trójwymiarowe.
a)
b)
c)
d)
Rys. 7. Pomiar wartości wysunięcia punktów względem prostej łączącej punkty kluczowe
4. WYNIKI SYMULACJI I PODSUMOWANIE
#12#
Symulacje zostały przeprowadzone z zastosowanie oprogramowania
aRTist, zarówno dla pęknięć generowanych losowo jak i na bazie zdjęć
radiograficznych. Rysunki 8 i 9 przedstawiają losowo wygenerowane pęknięcia
wielosegmentowe i odpowiadające im symulowane radiogramy. Rysunki 10 i 11
przedstawiają obiekty pęknięć wygenerowane na bazie zdjęć radiograficznych
i wynik ich symulowanego prześwietlenia.
a)
b)
Rys. 8. Pęknięcie losowe:
a) Trójwymiarowy model; b) efekt symulowanego prześwietlenia
Komputerowe modelowanie pęknięć na bazie zdjęć radiograficznych
a)
135
b)
Rys. 9. Pęknięcie losowe:
a) Trójwymiarowy model; b) efekt symulowanego prześwietlenia
a)
b)
c)
Rys. 10. Pęknięcie wygenerowane na bazie radiogramu:
a) Oryginalny radiogram; b) trójwymiarowy model pęknięcia; c) efekt symulowanego prześwietlenia
a)
b)
c)
Rys. 11. Pęknięcie wygenerowane na bazie radiogramu:
a) Oryginalny radiogram; b) trójwymiarowy model pęknięcia; c) efekt symulowanego prześwietlenia
Zaprezentowana metoda pozwala na tworzenie trójwymiarowych modeli
pęknięć, zarówno losowych, jak i na bazie zdjęć radiograficznych. Symulacje
przeprowadzone z użyciem tych modeli zachowują wysoki stopień podobieństwa do przykładów rzeczywistych. Użycie opisanego algorytmu może
ułatwić rozwój algorytmów detekcji i rozpoznawania pęknięć.
136
L. Napierała
LITERATURA
1. Mery D., Jaeger T., Gilbert D.: A Review of Methods for Automated Recognition of Casting
Defects. 2002.
2. Kaufmann M., Wagner D.: Drawing Graphs Methods and Models, Springer, 2001.
3. Gupta M. R., Jacobson N. P., Garcia E. K.: OCR binarization and mage pre-processing for
searching historical documents, Pattern Recognition 40 (2007), 389–397.
4. Tadeusiewicz R.: Komputerowa analiza i przetwarzanie obrazu, Wydawnictwo Fundacji Postępu
Telekomunikacji, Kraków 1997.
5. Russ J. C.: The Image Processing Handbook Fifth Edition, Taylor and Francis Group, 2007.
6. Ritter G. X., Wilson J. N.: Handbook of Computer Vision Algorithms in Image Algebra Second
Edition, CRC Press, 2001.
Rękopis dostarczono dnia 27.10.2009 r.
Opiniował: dr hab. inż. Jacek Starzyński
COMPUTER CRACK MODELLING BASED
ON REAL-LIFE RADIOGRAPHIC IMAGES
L. NAPIERAŁA
ABSTRACT
In this paper algorithm for generation of cracks
as a three-dimensional objects has been presented. Method for
extraction of crack’s parameters from radiographic image has also
been discussed. Results of simulated x-raying with artificial cracks
have been included.
Mgr inż. Lech NAPIERAŁA – ukończył Politechnikę
Szczecińską na kierunku Elektronika i Telekomunikacja. Obecnie
doktorant na wydziale Elektrycznym Zachodniopomorskiego Uniwersytetu Technologicznego w Szczecinie. Zajmuje się przetwarzaniem i analizą obrazów, ze szczególnym uwzględnieniem zastosowań w radiograficznych badań nieniszczących.

Podobne dokumenty