10. Sztuczna inteligencja w robotyce
Rysunek 1^_______
Obraz układu scalonego w pierwszej fezie [32,33]
Kamera TV, która zapisała ten obraz, znajdowała się w stałej odległości od analizowanych obiektów, znajdujących się na stanowisku oświetlanym przez lampę halogenową. Uzyskany obraz ma 256 poziomów jasności i wymiary] 512x512 pikseli.
W pierwszym etapie obraz zostaje poddany procesowi binaryzacji. Istotne jest przypisanie każdemu z pikseli obrazu jednego z dwóch poziomów jasności., W tym przypadku założono poziomy 0 i 255, odpowiadające odpowiednio barwom czarnej i białej. Aby przypisać pikselom odpowiedni poziom jasności, musi być zdefiniowana uprzednio wartość progowa. Od niej zależy to, czy na pozyskaj nym z kamery obrazie poziomy jasności pikseli będą znajdowały się poniżej czyj powyżej wartości progowej. Wynikiem procesu binaryzacji jest zawsze znaczna redukcja informacji zawartej w obrazie. Zatem odpowiedni dobór wartości progowej jest bardzo istotny, ponieważ bez niej mogłyby zostać utracone w obrazie informacje, bez których rozpoznanie obiektu stałoby się niemożliwe. Po zdefinio- J waniu wartości progowej w tym przypadku wszystkie piksele staną się czarne lubi białe-rys. 10.9.
Rysunek 10.9 ^ - ______
Obraz układu scalonego po binaryzacji [32,33]
W drugim etapie wstępnego przetwarzania żbinaryzowany obraz jest pod-j dawany segmentacji. W tym przykładzie ma to na celu wydzielenie z obrazi]! fragmentu przedstawiającego oznaczenia na obudowie układu scalonego. Pomiar] wartości cech opisujących obrazy rozpoznawanych układów scalonych jest dokonywany w ten sposób, że wycinek obrazu o wymiarach 200 x 75 pikseli uzyskany w operacji maskowania, który reprezentuje fragment obudowy układu! scalonego wraz z widocznymi na nim oznaczeniami, jest dzielony pionowymi liniami na określoną liczbę sektorów o ustalonych wcześniej wymiarach. Wiek kość wszystkich sektorów powinna być taka sama lub jak najbardziej zbliżona; Liczba białych pikseli występujących w poszczególnych sektorach zamaskował 318 nego fragmentu obrazu jest przyjęta jako wartości cech opisujących rozpozna*
,vany obraz układu scalonego. W tym etapie przetwarzania obrazu nastąpiła jeszcze większa redukcja informacji zawartej w obrazie. Z wielu tysięcy warto-Ici określających stopień jasności poszczególnych pikseli na początku przetwa-jjania po segmentacji zostaje stosunkowo niewielki zbiór liczb naturalnych. Tenże zbiór zawiera całą istotną informację potrzebną do rozpoznania obiektu w obrazie. Analizując osiem typów układów scalonych, przy podziale fragmentu obrazu na cztery równe części o wymiarach 50x75 pikseli, otrzymano wzorowe wartości cech dla każdego z sektorów (tabl. 10.1).
Tablica 10.1. Wzorcowe wartości cech różnych typów układów scalonych [32,331
\Typ Piksele\ |
UCY 7453 |
SN 7406N |
UCY 7404 |
SN 7403N |
UCY 74171 |
UCY 7438! |
UCA 6410 |
UL 1201 |
sektor 1 |
| 83 |
7! 759 |
0 |
570 |
109 |
332 |
99 |
8. | |
sektor 2 |
|, 707 |
779 |
568 |
526 |
666 |
619 |
458 |
689 | |
sektor 3 |
706 |
467 |
604 |
835 |
775 |
428 |
698 |
702 1 |
sektor 4 |
i ?555 |
| 474 |
439 |
627 |
251 |
274 |
| 357 |
1 240 1 |
Otrzymane w ten sposób liczby stanowią dane wejściowe, na podstawie których można skonstruować zbór treningowy do nauczania sieci neuronowej prawidłowej realizacji zadania rozpoznawania. Po ukończeniu procesu treningu i po podaniu na wejścia liczby odpowiadające białym pikselom w poszczególnych sektorach obrazu sieć powinna wskazać, do której z uprzednio określonych klas przynależności ten układ należy.
Do rozpoznawania układów scalonych można wykorzystać różne rodzaje sieci neuronowych. Mogą to być sieci nieliniowe wielowarstwowe bez sprzężeń zwrotnych, sieci Kohonena, a także sieci Hopfielda.
Dalej pokazano wyniki pracy na nieliniowej sieci neuronowej Hopfielda, składającej się z trzech warstw. Warstwy wejściowe i ukryte składają się z trzech neuronów, a warstwa wyjściowa ma osiem neuronów, co odpowiada liczbie klas przynależności rozpoznawanych układów scalonych. Ten z neuronów, który wykazuje największą wartość sygnału na swoim wyjściu, wskazuje na klasę przynależności aktualnie rozpoznawanego układu scalonego. Po treningu sieci, w przy-u podziału obrazu układu na trzy i cztery równe sektory, otrzymano różne wyniki rozpoznawania.
W przypadku podziału na cztery sektory wyniki stu eksperymentów wyka-% bezbłędne wytypowanie właściwej klasy przynależności układu - tabl. 10.2.
tablica 10.2. Wyniki rozpoznawania obrazów układów scalonych (podział obrazu na 4 sektory)
1 sieci trójwarstwowej [32, 33]
[UCY 7453 |
SN 7406N |
UCY 74041 |
SN 7403N \ UCY 74171 |
UCY 74381UCA64\o( UL 1201 \ |
U ioo |
V 100 |
100 |
100 1 100 |
100 \ 100 100 \ |
0 |
0 |
0 |
0 1 0 |
1 0 1 Oj 0 |
319