Machine Vision to połączenie wielu technologii, które umożliwiają przemysłowe lub inne zautomatyzowane urządzenia do uzyskania z obrazów zaawansowane zrozumienie środowiska. Bez oprogramowania Machine Vision obrazy o różnych wartościach kolorów i intensywnościach tonalnych byłyby niczym więcej niż prostą, niezwiązaną kolekcją pikseli takiego sprzętu. Machine Vision umożliwia komputerze (zwykle podłączonym do sterownika maszyny) wykrywanie krawędzi i kształtów na takich obrazach, aby umożliwić procesorowi wyższego poziomu rozpoznania wstępnie zdefiniowanego obiektu docelowego. Obrazy w tym sensie nie ograniczają się do zdjęć fotograficznych w widmie widzialnym; Mogą również zawierać obrazy uzyskane za pomocą sygnałów podczerwieni, laserowych, rentgenowskich i ultradźwiękowych.
W środowiskach przemysłowych zastosowania wizji maszynowej rozpoznają określone części z wielu części umieszczonych w bałaganie materiałów materiałowych. Tutaj Machine Vision pomaga robotowi zebrania i miejsca automatycznie odbierać odpowiednie części. Oczywiście, jeśli wszystkie części są starannie ułożone w tej samej orientacji na palecie, byłoby stosunkowo łatwe do rozpoznania ich za pomocą informacji zwrotnej. Jednak potężne algorytmy widzenia maszynowego mogą rozpoznać obiekty, które znajdują się w różnych odległościach od kamery (i dlatego pojawiają się jako obrazy o różnych rozmiarach w czujniku obrazowania), a także obiekty, które nie są zorientowane w tym samym kierunku co kamera.
Najbardziej wyrafinowane systemy wizji maszynowej umożliwiły powstające projekty, które są znacznie bardziej złożone niż zbieranie części z pojemników; Na przykład nie może być bardziej złożonej identyfikacji niż samochód samobieżny.

Techniki związane z widzeniem maszynowym
Termin wizja maszynowa jest czasem zarezerwowana w celu odniesienia do bardziej wyrafinowanych i wydajnych metod matematycznych, które mogą wyodrębniać informacje z obrazów. Natomiast termin wizja komputerowa zazwyczaj opisuje bardziej nowoczesne, wymagające obliczeniowo systemy, w tym czarne boiska, które wykorzystują uczenie maszynowe lub sztuczną inteligencję (AI). Jednak wizja maszynowa może być również używana jako wszechstronny termin, który obejmuje wszystkie metody wydobywania informacji na wysokim poziomie z obrazów; W takim przypadku wizja komputerowa opisuje podstawową teorię działania.
Mnóstwo technik, które mogą wydobywać znaczenie wysokiego poziomu z obrazów. W społeczności badawczej takie techniki są często uważane za odróżniające się od wizji maszynowej. W rzeczywistości jednak wszystkie są różnymi sposobami wdrażania wizji maszynowej ... i w wielu przypadkach nakładają się na siebie.
Cyfrowe przetwarzanie obrazu jest formą cyfrowego przetwarzania sygnału, która obejmuje ulepszenie obrazu, odbudowę, kodowanie i kompresję. Zaletami nad przetwarzaniem obrazu analogowego są minimalizacja szumu i zniekształceń, a także mnóstwo dostępnych algorytmów. Jeden z pierwszych rodzajów wzmocnienia obrazu zastosowano do skorygowania pierwszych obrazów zbliżenia powierzchni księżycowej. W tym procesie zastosowano mapowanie fotogrametryczne, a także filtry szumu i dokonano poprawek dla zniekształceń geometrycznych spowodowanych wyrównaniem kamery obrazowej do powierzchni księżycowej.
Cyfrowe wzmocnienie obrazu zwykle obejmuje zwiększenie kontrastu i ewentualnie geometrycznych poprawek do widzenia i zniekształceń soczewki. Kompresja jest często osiągana poprzez przybliżanie złożonych sygnałów jako kombinację funkcji cosinusowych-transformację Fouriera znaną jako dyskretna transformacja cosinusowa (DCT). Format pliku JPEG jest najczęstszym zastosowaniem DCT. Przywrócenie obrazu może również użyć transformacji Fouriera do usuwania szumu i rozmycia.
Fotogrametria wykorzystuje pewnego rodzaju rozpoznawanie funkcji do wyodrębnienia pomiarów z obrazów. Pomiary te mogą zawierać informacje 3D, gdy wiele zdjęć tej samej sceny jest pozyskiwanych z różnych lokalizacji. Najprostsze systemy fotogrametryczne wykorzystują skalę do pomiaru odległości między dwoma punktami na obrazie. Aby to zrobić, często konieczne jest uwzględnienie znanej skali odniesienia na obraz.
Wykrywanie funkcji pozwala komputerowi rozpoznać krawędzie, zakręty lub punkty na obrazie. Jest to pierwszy krok potrzebny do fotogrametrii i rozpoznawania obiektów i ruchu. Wykrywanie BLOB identyfikuje obszary o zbyt gładkich krawędzi dla wykrywania krawędzi lub narożnika.
Rozpoznawanie wzorców służy do rozpoznawania określonych obiektów. W najprostszym przypadku może to oznaczać znalezienie dobrze zdefiniowanej specyficznej części mechanicznej na przenośniku.
Rekonstrukcja 3D określa kształt 3D obiektu z obrazu 2D. Tę funkcję można zrealizować metodami fotogrametrycznymi. W tym przypadku wysokości wspólnych cech (określone na zdjęciach z różnych punktów obserwacji) są określane za pomocą triangulacji. Rekonstrukcja 3D jest również możliwa przy użyciu samych obrazów 2D; Oprogramowanie wyjaśnia również geometryczne relacje między krawędziami lub obszarami zacienionymi.
Ludzie mogą rekonstruować kostki, po prostu przetwarzając je w mózgach za pomocą rysunku linii - za pomocą zacienionych kół do rekonstrukcji kulek. Zacienienie pokazuje nachylenie powierzchni. Jednak ten proces wyprowadzania jest o wiele bardziej złożony, niż można by pomyśleć, ponieważ cieniowanie jest parametrem jednowymiarowym, podczas gdy nachylenie występuje w przypadku dwuwymiarowym. Może to prowadzić do niejednoznacznych sytuacji - faktów potwierdzonych przez sztukę przedstawiania obiektów niemożliwych fizycznie.
Jak sekwencjonowane są zadania widzenia maszynowego
Wiele systemów wizji maszynowej uwzględnia powyższe techniki stopniowo, zaczynając od operacji niskiego poziomu, a następnie przechodząc do operacji wyższego poziomu. Na najniższym poziomie wszystkie piksele obrazu są przechowywane jako dane o dużej przepustowości. Każda operacja w sekwencji rozpoznaje następnie cechy obrazu i reprezentuje informacje zainteresowane ze stosunkowo niewielką ilością danych.
Pierwszym z nich jest niskie działanie ulepszenia i odbudowy obrazu, a następnie wykrywanie funkcji. Zatem w przypadku stosowania wielu czujników operacje niskiego poziomu można wykonywać za pomocą procesów rozproszonych specjalizowanych dla poszczególnych czujników. Po wykryciu funkcji na poszczególnych obrazach można wykonać bardziej zaawansowaną fotogrametrię - podobnie jak w przypadku rozpoznawania obiektów lub innym zadaniu, które opierają się na połączonych danych z wielu obrazów i czujników.
Bezpośrednie obliczenia i algorytmy uczenia się
W przypadku wizji maszynowej obliczenia bezpośrednie są zestawem funkcji matematycznych zdefiniowanych przez programista. Funkcje te przyjmują wejścia, takie jak wartości pikseli obrazu i wytwarzają wyjścia, takie jak współrzędne krawędzi obiektów. Natomiast algorytmy uczenia się nie są pisane bezpośrednio przez ludzi, ale są szkolone na przykładowych zestawach danych, które korelują dane wejściowe z pożądanymi wynikami. W rezultacie algorytmy uczenia się są używane jako czarne skrzynki. Większość takich uczenia maszynowego wykorzystuje teraz głębokie uczenie się oparte na sztucznych sieciach neuronowych do obliczenia.
Proste uczenie maszynowe dla aplikacji przemysłowych jest bardziej niezawodne i mniej wymagające obliczeniowe, oparte na bezpośrednich obliczeniach. Oczywiście istnieją granice tego, co można osiągnąć poprzez bezpośrednie obliczenia. Na przykład nigdy nie należy liczyć na wykonanie twarzy, aby rozpoznać wymagane zaawansowane wzorce rozpoznawania, a zwłaszcza z materiału wideo w zatłoczonych przestrzeniach publicznych. Natomiast uczenie maszynowe może umiejętnie obsługiwać takie aplikacje. Nic więc dziwnego, że uczenie maszynowe jest coraz częściej wdrażane w przypadku operacji wizji maszynowej na niskim poziomie, w szczególności ulepszanie obrazu, przywracanie i wykrywanie funkcji.
Ulepszone metody nauczania (nie algorytmy)
Rosnące wyrafinowanie technik głębokiego uczenia się wyjaśniło, że nie są to same algorytmy uczenia się, które należy ulepszyć, ale raczej sposób, w jaki algorytmy są szkolone. Jedna ulepszona procedura szkolenia jest znana jako wizja komputerowa skoncentrowana na danych. Tutaj głębokie system uczenia się przyjmuje bardzo solidny zestaw szkoleniowy składający się z tysięcy, milionów, a nawet miliardów zdjęć - a następnie zapisuje zsyntetyzowane informacje wyodrębnione z każdego obrazu przez jego algorytmy. Algorytmy te uczą się skutecznie, łącząc je z przykładami działającymi, a następnie odnoszą się do „książki odpowiedzi”, aby sprawdzić, czy uzyskano prawidłowe wartości.
Istnieje stara przestroga o rozpoznawaniu wzorów cyfrowych. Wojsko USA, które kiedyś zamierzało użyć wizji maszynowej do uznania celu, a demonstracja wykonawcy obrony niezawodnie zidentyfikowała zarówno czołgi USA, jak i rosyjskie. Zbiorniki różnych rodzajów mogą być poprawnie wyróżnione, jeden po drugim, od zdjęć lotniczych dostawcy. Jednak po ponownym przetestowaniu z własną biblioteką obrazów Pentagonu system nadal udzielił nieprawidłowych odpowiedzi. Problem polegał na tym, że zdjęcia kontrahentów obrony przedstawiały amerykańskie czołgi na pustyni i rosyjskich czołgach na zielonych polach. Zamiast identyfikować różne zbiorniki, system zidentyfikował różne kolorowe tła. Jakie są kryteria uznania? Algorytmy uczenia się wymagają starannie wyselekcjonowanych danych szkoleniowych do pracy.
Wniosek: bezpieczna wizja robotycznych komórek roboczych
Wizja maszynowa nie jest już niszową technologią. Podczas obecnego popędu sektor przemysłowy jest największym obszarem wzrostu wdrażania wizji maszynowej. Najbardziej znaczącym rozwojem w tym obszarze jest to, w jaki sposób wizja maszyny kończy teraz systemy bezpieczeństwa w zakładach przemysłowych, tj. Systemy, które brzmią alarm lub dają powiadomienia głosowe, gdy pracownik wchodzi do miejsca pracy bez hełmu, maski lub innego odpowiedniego sprzętu ochronnego. Wizja maszynowa może być również używana w systemach, które ostrzegają podczas przenoszenia maszyn, takich jak wózki widłowe, zbliżają się do personelu.
Te i podobne systemy wizji maszynowej mogą czasem zastąpić twarde środki ochronne wokół robotów przemysłowych, aby zwiększyć wydajność operacji. Systemy wizji maszynowej mogą również zastąpić lub ulepszyć systemy bezpieczeństwa na podstawie ochrony światła, które zatrzymują maszyny, gdy wykrywany jest pracownik wchodzący do komórki roboczej. Kiedy widzenie maszynowe monitoruje fabryczną podłogę wokół komórki roboczej, roboty w tej komórce mogą stopniowo zwalniać w miarę zbliżania się ludzi.
W miarę ewolucji projektowania środowisk przemysłowych, aby pomieścić roboty współpracy i inne urządzenia robocze, które pozwalają personelowi zakładu bezpiecznie chodzić (nawet podczas działania sprzętu), te i inne systemy oparte na wizji maszynowej staną się bardziej powszechną częścią procesów zakładu.




