System wizyjny DIY – jak stworzyć tani i efektywny system rozpoznawania obrazu?


W czasach szybkiego rozwoju sztucznej inteligencji, kiedy niemal codziennie słyszymy wiadomości o kolejnych barierach, które algorytmy pokonują, wiele firm zastanawia się, czy można zastosować legendarny już AI we własnych procesach produkcyjnych. Systemy wizyjne to niekwestionowany hit ostatnich lat w dziedzinie technologii. Wielu kojarzy je z zaawansowanymi technologicznie rozwiązaniami, które wymagają ogromnych nakładów finansowych, specjalistycznego sprzętu i wsparcia całego sztabu programistów. Ale czy rzeczywiście muszą być one tak drogie?

Prosty, ale skuteczny - case study

Pragniemy się podzielić pewnym projektem, który obala ten mit. Głównym celem było stworzenie systemu wizyjnego do pracy w wilgotnym środowisku. Ze względu na to, że system wykorzystywany jest jedynie w okresach postojów produkcji, inwestowanie w bardzo drogie systemy wizyjne nie miałoby ekonomicznego sensu.

Wybór sprzętu

Pierwszym krokiem było znalezienie odpowiedniej kamery. Wybór padł na kamerę GoPro, znanej z wysokiej jakości nagrań, która dodatkowo była wyposażona w specjalną obudowę do nurkowania. Aby zapewnić dodatkową ochronę, zaprojektowaliśmy specjalną osłonę, która nie pozwala na całkowite zalanie kamery oraz minimalizuje spadek jakości obrazu w trudnych warunkach. Cała komunikacja z kamerą odbywa się bezprzewodowo, co znacząco zwiększa wszechstronność i możliwości zastosowania naszego rozwiązania. Kamera miała za zadanie pracować w ciemnej i zamkniętej przestrzeni przy 100% wilgotności. Dzięki temu byliśmy pewni, że nawet w tak wymagającym środowisku, kamera dostarczy nam jasny i wyraźny obraz.


Przygotowanie modeli

Kiedy już zdobyliśmy odpowiedni materiał wideo, przyszedł czas na budowę modeli do rozpoznawania obrazu. Wykorzystując Tensorflow, jedno z najpopularniejszych narzędzi do uczenia maszynowego, stworzyliśmy model zdolny do precyzyjnego rozpoznawania poszukiwanych przez nas elementów. Warto dodać, że wszystkie elementy programistyczne, które użyliśmy w tym projekcie, opierają się na bibliotekach i środowiskach open-source, co dodatkowo obniża koszty i zwiększa dostępność rozwiązania.


Integracja i interfejs

Końcowym etapem było zintegrowanie naszej kamery z modelem oraz stworzenie prostego, intuicyjnego interfejsu użytkownika. Dzięki temu mogliśmy w łatwy sposób monitorować i analizować obrazy w czasie rzeczywistym.


Podsumowanie

Co z tego wszystkiego wynika? Technologia nie zawsze musi być droga i skomplikowana. Często wystarczy trochę kreatywności, odpowiednie narzędzia i determinacja, aby stworzyć rozwiązanie spełniające nasze oczekiwania. Nasz system wizyjny, mimo niewielkich kosztów, spełnia swoje zadanie i jest dowodem na to, że warto myśleć "poza pudełkiem" i szukać alternatywnych rozwiązań.

Wykorzystana literatura

1. Chollet Francois, Deep Learning with Python, Manning Publications, Second Edition, 2022
2. Géron Aurelion, Hands-On Machine Learning with Scikit-Learn, Keras, and TensorFlow: Concepts, Tools, and Techniques to Build Intelligent Systems, O'Reilly Media, Third Edition, 2022
3. Szeliski Richard, Computer Vision: Algorithms and Applications, Springer, Second Edition, 2022

Maciej Kondracki
5 Listopad 2023