Strona www.adaptive-vision.com używa plików cookie do obsługi użytkowników oraz do celów statystycznych.
Zgodnie z nowymi przepisami mamy obowiązek Państwa o tym poinformować.
Szczegółowe informacje znajdą Państwo w naszej polityce prywatności.

Zamknij tę informację
POL ENG GER 中文(繁體)

Moduł Deep Learning

Wprowadzenie

Moduł Deep Learning to prawdziwa rewolucja na rynku systemów wizyjnych. To zestaw gotowych do użycia narzędzi, które trenuje się poprawnymi i niepoprawnymi przykładami, i które automatycznie wykrywają defekty lub cechy. Wewnętrznie moduł korzysta z rozległych struktur sieci neuronowych, zaprojektowanych i zoptymalizowanych przez naszych ekspertów do użycia w przemysłowych systemach inspekcji wizyjnej. Ta złożona funkcjonalność została jednak zamknięta w prostych do użycia filtrach, z przystępnymi dla użytkownika graficznymi narzędziami i tylko paroma wymaganymi parametrami. Dzięki temu proces trenowania jest prosty.

Moduł Deep Learning wprowadza w życie główne założenia Adaptive Vision:

Intuitive - można z niego korzystać bez znajomości języków programowania

Powerful - pozwala na okiełznanie zaawansowanych możliwości sieci neuronowych

Adaptable - modele deep learning mogą zostać ponownie wytrenowane by badać nowe cechy.

Kluczowe fakty

Dane treningowe

Typowy program wymaga od 20 do 50 obrazów treningowych.

Sprzęt

Szybkie trenowanie i wykonanie algorytmu wymagają nowoczesnego procesora graficznego.

Szybkość

Zakładając użycie GPU, standardowy czas trenowania wynosi 5 minut, a wykonanie standardowej inspekcji trwa 200 ms.

Deep Learning vs Metody klasyczne

Deep Learning to nowa metoda pozwalająca na pokonanie wyzwań stawianych systemom wizyjnym, których nie dało się rozwiązać metodami klasycznymi. Jednak istnieją zadania, które nadal mogą być zrealizowane jedynie przez zastosowanie klasycznych metod. Jak zdecydować, które podejście będzie skuteczniejsze? Oto krótki przewodnik:

Deep Learning

Metody klasyczne

Typowe zastosowania:

    • Inspekcja powierzchni (pęknięcia, zadrapania)
    • Inspekcja żywności, roślin, drewna
    • Plastiki, formy wtryskowe
    • Inspekcja tekstyliów
    • Obrazowanie medyczne

Typowe zastosowania:

    • Pomiary wymiarów
    • Odczyt kodów
    • Kontrola obecności elementu
    • Sterowanie robotem
    • Inspekcja druku

Typowe cechy:

    • Obiekty giętkie
    • Zmienna orientacja
    • Klient dostarcza ograniczoną specyfikację, ale przedstawiającą poprawne i niepoprawne elementy
    • 99% niezawodności

Typowe cechy:

    • Obiekty sztywne
    • Ustalona orientacja
    • Klient dostarcza sformalizowaną specyfikację z zakresami tolerancji
    • 100% niezawodności

Proces trenowania

1. Zbierz i znormalizuj obrazy

    • Uzyskaj 20 - 50 obrazów pokazujących poprawne i niepoprawne przykłady i reprezentujących wszystkie możliwe wariacje obiektów; zachowaj je na dysku.
    • Zadbaj o to, aby skala, orientacja oraz oświetlenie obiektów były jak najbardziej jednolite.
  • 2. Trenowanie

    • Użyj narzędzia z modułu Deep Learning.
    • Otwórz edytor Deep Learning.
    • Załaduj obrazy treningowe.
    • Oznacz obrazy jako poprawne lub niepoprawne (tryb nienadzorowany), lub oznacz defekty narzędziami do rysowania (tryb nadzorowany).
    • Kliknij “Trenuj”.
  • Dane treningowe i walidacyjne

    W uczeniu głębokim, tak jak w pozostałych gałęziach uczenia maszynowego, stosowanie poprawnej metodologii jest niezwykle istotne. Najważniejszą zasadą jest oddzielenie danych treningowych od danych walidacyjnych. Dane treningowe to zestaw obrazów wykorzystany do trenowania modelu. Dane te nie mogą być wykorzystane do mierzenia wydajności modelu, jako że często rezultatem takiego postępowania są nierealistycznie dobre wyniki. Konieczne jest zatem użycie osobnego zbioru danych - danych walidacyjnych - do poprawnej oceny modelu. Nasze narzędzie głębokiego uczenia automatycznie tworzy oba zbiory danych na podstawie obrazów wskazanych przez użytkownika.

    3. Wykonaj

    • Uruchom program i zweryfikuj wyniki.
  • Detekcja cech

    W trybie nadzorowanym użytkownik musi dokładnie oznaczyć piksele odpowiadające defektom obrazów treningowych. Narzędzie uczy się odróżniać cechy dobre i złe, szukając ich kluczowych cech charakterystycznych.

    Przykłady zastosowania

    Inspekcja paneli fotowoltaicznych

    Podczas inspekcji paneli słonecznych program ma za zadanie wykrycie pęknięć i rys na niejednorodnej powierzchni. Przy użyciu klasycznych metod wymagałoby to zastosowania skomplikowanych algorytmów i dziesiątek parametrów, które należałoby dostrajać do każdego rodzaju paneli. W przypadku uczenia głębokiego wystarczy wytrenować system w trybie nadzorowanym, używając tylko jednego narzędzia.

    Segmentacja obrazów satelitarnych

    Zdjęcia satelitarne są trudne do analizy ze względu na obecność wielu różnych elementów. Nasz moduł Deep Learning może zostać wytrenowany, aby bardzo precyzyjnie wykrywać drogi i budynki. Trenowanie może być przeprowadzone za pomocą tylko jednego poprawnie oznaczonego obrazu, a wyniki można zweryfikować natychmiast. Dodaj więcej oznaczonych próbek, aby zwiększyć poprawność modelu.

    Detekcja anomalii

    W trybie nienadzorowanym trening jest prostszy. Nie ma bezpośredniej definicji defektu – narzędzie jest szkolone za pomocą dobrych próbek, a następnie szuka wszelkiego rodzaju odchyleń.

    Przykłady zastosowania

    Weryfikacja opakowań

    Kiedy opakowanie z sushi jest dostarczone do sprzedawcy, wszystkie elementy muszą znajdować się w określonych miejscach. Defekty są trudne do zdefiniowania kiedy kształt poprawnych sztuk również może się zmieniać. Można ten problem rozwiązać stosując uczenie głębokie w trybie nienadzorowanym, który wykrywa wszystkie znaczące odchylenia od tego czego narzędzie nauczyło się podczas trenowania.

    Plastiki, formy wtryskowe

    Formowanie wtryskowe to skomplikowany proces, na drodze którego może wystąpić wiele problemów. Obiekty wykonane z plastiku mogą być podatne na zginanie lub inne deformacje, które są akceptowalne dla klienta. Nasz moduł Deep Learning potrafi nauczyć się wszystkich akceptowalnych zniekształceń na podstawie dostarczonych próbek, a następnie może wykryć odchylenia wszelkiego typu na linii produkcyjnej.

    Klasyfikacja obiektów

    Narzędzie do klasyfikacji obiektów dzieli obrazy wejściowe na grupy utworzone przez użytkownika zgodnie z ich konkretnymi cechami. W rezultacie otrzymuje się nazwę klasy i pewność klasyfikacji.

    Przykłady zastosowania

    Nakrętki: przód czy tył

    Plastikowe nakrętki mogą czasami przypadkowo przewrócić się na maszynie produkcyjnej. Klient chce wykryć tę sytuację. Zadanie można wykonać tradycyjnymi metodami, ale wymaga od eksperta zaprojektowania konkretnego algorytmu dla tej aplikacji. Z drugiej strony możemy użyć klasyfikacji opartej na głębokim uczeniu się, która automatycznie uczy się rozpoznawać przód i tył z zestawu zdjęć treningowych.

    Identyfikacja felg aluminiowych w 3D

    W jednej fabryce mogą być wytwarzane setki różnych rodzajów felg aluminiowych. Identyfikacja konkretnego modelu z takimi ilościami modeli jest praktycznie niemożliwa przy tradycyjnych metodach. Dopasowanie wzorca wymagałoby ogromnej ilości czasu, próbując dopasować setki modeli, podczas gdy ręczne tworzenie modeli na zamówienie wymagałoby po prostu zbyt dużego rozwoju i konserwacji. Deep Learning jest idealnym rozwiązaniem, które uczy się bezpośrednio z przykładowych zdjęć bez opracowywania na zamówienie.

    Segmentacja instancji

    Technika segmentacji instancji jest używana do lokalizowania, segmentowania i klasyfikowania pojedynczych lub wielu obiektów na obrazie. W przeciwieństwie do techniki detekcji cech ta technika wykrywa poszczególne obiekty i może być w stanie je rozdzielić, nawet jeśli się stykają lub nakładają.

    Przykłady zastosowania

    Segmentacja orzechów

    Mieszanka orzechów to bardzo popularna przekąska składająca się z różnych rodzajów orzechów. Ponieważ procentowy skład orzechów w opakowaniu powinien być zgodny z listą składników wydrukowanych na opakowaniu, klienci chcą mieć pewność, że odpowiednia ilość orzechów każdego typu zostanie zapakowana. Narzędzie segmentacji instancji jest idealnym rozwiązaniem w takiej aplikacji, ponieważ zwraca maski odpowiadające segmentowanym obiektom.

    Weryfikacja opakowania

    Typowy zestaw włoszczyzny stosowany w Europie jest pakowany na białej plastikowej tacce w przypadkowej pozycji. Pracownicy linii produkcyjnej mogą czasami przypadkowo zapomnieć umieścić jedno z warzyw na niej. Chociaż istnieje system ważący tacki, klient chce sprawdzić kompletność produktu tuż przed procesem zgrzewania. Ponieważ nie ma dwóch warzyw, które wyglądają tak samo, rozwiązaniem jest zastosowanie segmentacji opartej na głębokim uczeniu się. W fazie treningowej klient musi tylko oznaczyć regiony odpowiadające warzywom.

    Lokalizacja punktów

    Narzędzie lokalizacji punktów wyszukuje określone kształty, cechy lub znaki, które można zidentyfikować jako punkty obrazu wejściowego. Można je porównać do tradycyjnego dopasowywania szablonów, ale tutaj narzędzie jest szkolone z wieloma próbkami i staje się odporne na ogromną zmienność obiektów będących przedmiotem zainteresowania.

    Przykłady zastosowania

    Śledzenie pszczół

    Zadanie, które wydaje się niemożliwe do osiągnięcia przy użyciu tradycyjnych metod przetwarzania obrazów, można wykonać za pomocą naszego najnowszego narzędzia. W tym przypadku używamy go do wykrywania pszczół. Kiedy to zrobimy, możemy sprawdzić, czy są zarażone warrozą - chorobą wywoływaną przez pasożytnicze roztocza atakujące pszczoły miodne. Pasożyt przyczepia się do ich ciał i na podstawie charakterystycznego czerwonego zapalenia możemy je sklasyfikować zgodnie z ich stanem zdrowia. Ten przykład pokazuje nie tylko, że jest to łatwe rozwiązanie dla złożonego zadania, ale także, że jesteśmy otwarci na wiele różnych gałęzi przemysłu, np. przemysł rolniczy.

    Makaron

    Tagliolini jest rodzajem makaronu pokrojonego w długie paski o szerokości około 3 mm i uformowanego w części o charakterystycznym kształcie. Po procesie produkcji porcje są pakowane w pudełka i przed dostarczeniem ich do sklepu klient chce sprawdzić, czy liczba porcji jest prawidłowa. To zadanie jest trudne, ponieważ trudno jest, czasami nawet dla człowieka, określić granice porcji. Rozwiązaniem jest narzędzie do lokalizacji punktów oparte na głębokim uczeniu się, które automatycznie uczy się lokalizować wszystkie wystąpienia obiektów wskazanych w fazie treningowej.