Widzenie komputerowe: jak maszyny interpretują świat wizualny

Opublikowany: 2021-05-05

Widzenie komputerowe to dziedzina sztucznej inteligencji, która umożliwia maszynom „widzenie”.

Ludzie mają dar widzenia, a organ, który to umożliwia, jest złożony. Choć nieporównywalny z dalekosiężnym widzeniem orłów czy oczami motyla bławatka, który widzi w widmie UV, to i tak spisuje się znakomicie.

Częścią widzenia jest zrozumienie tego, co widzisz. W przeciwnym razie po prostu odbiera światło odbite od przedmiotów przed tobą. Tak się dzieje, gdy masz parę oczu, ale nie korę wzrokową wewnątrz płata potylicznego (część mózgu odpowiedzialna za przetwarzanie wzrokowe).

Dla komputerów aparaty fotograficzne są ich oczami. A widzenie komputerowe działa jak płat potyliczny i przetwarza tysiące pikseli na obrazach. Krótko mówiąc, widzenie komputerowe umożliwia maszynom zrozumienie tego, co widzą.

Wizja komputerowa ma kluczowe znaczenie dla kilku innowacji technologicznych, w tym autonomicznych samochodów, rozpoznawania twarzy i rozszerzonej rzeczywistości. Rosnąca ilość generowanych przez nas danych obrazowych jest jednym z powodów, dla których ta dziedzina   sztuczna inteligencja   rośnie wykładniczo. Ten wzrost ułatwia również analitykom danych szkolenie algorytmów.

Mówiąc najprościej, dwa główne zadania wizji komputerowej to identyfikacja obiektów obrazu i zrozumienie ich znaczenia jako całości.

Ludzie przyjmują wirtualną percepcję, produkt milionów lat ewolucji, za rzecz oczywistą. Pięciolatek mógłby z łatwością nazwać przedmioty umieszczone na stole i zrozumieć, że cała konfiguracja to stół jadalny. W przypadku maszyn jest to zadanie herkulesowe i właśnie to próbuje rozwiązać wizja komputerowa.

48,6 miliarda dolarów

szacuje się, że wartość rynku wizji komputerowych do 2022 r.

Źródło: BitRefine

Sztuczna inteligencja, o ile to możliwe, nie byłaby możliwa bez wizji komputerowej. To dlatego, że dokładna identyfikacja i reagowanie na otaczające nas obiekty jest jedną z godnych uwagi cech naszej inteligencji. Innymi słowy, aby nauczyć maszyny myślenia, musisz dać im zdolność widzenia.

Wraz z wykładniczym wzrostem liczby dostępnych cyfrowych zdjęć i filmów, postępy w zakresie głębokiego uczenia i sztucznych sieci neuronowych również przyczyniają się do obecnej chwały wizji komputerowej.

Krótka historia wizji komputerowej

Pierwsze eksperymenty w dziedzinie widzenia komputerowego rozpoczęły się w latach 50. XX wieku z pomocą niektórych wczesnych form sztucznych sieci neuronowych. Były używane do wykrywania krawędzi obiektów i sortowania prostych obiektów, takich jak koła i kwadraty.

Wizja komputerowa była postrzegana jako krok w kierunku sztucznej inteligencji, ponieważ naśladowanie ludzkiego systemu wzrokowego jest warunkiem osiągnięcia ludzkiej inteligencji. Dlatego w latach 60. uniwersytety badające sztuczną inteligencję były również zaangażowane w wizję komputerową.

W 1963 Larry Roberts, uważany za ojca założyciela Internetu, opisał proces pozyskiwania informacji 3D o obiektach stałych ze zdjęć 2D. Jego rozprawa „Maszynowa percepcja trójwymiarowych brył” jest nadal uznawana za jedną z fundamentalnych prac pola widzenia komputerowego.

Później, w 1966 roku, Marvin Minsky, jeden z ojców założycieli sztucznej inteligencji, wierzył, że wizję komputerową można osiągnąć dzięki letniemu projektowi. Ale wszyscy wiemy, co się stało. Szybko do lat siedemdziesiątych technologia wizji komputerowej była wykorzystywana w zastosowaniach komercyjnych, takich jak optyczne rozpoznawanie znaków (OCR), które może identyfikować odręczny tekst lub drukowane znaki na obrazach.

Internet, który stał się głównym nurtem w latach 90., odegrał kluczową rolę w szybkim rozwoju wizji komputerowej. Duże zestawy obrazów stały się łatwo dostępne, co ułatwiło naukę algorytmów.

Tania i obfita moc obliczeniowa dodatkowo ułatwiła szkolenie algorytmów. Był to również moment, w którym zwiększyły się interakcje między grafiką komputerową a widzeniem komputerowym.

Oto kilka znaczących kamieni milowych w dziedzinie wizji komputerowej, które sprawiły, że jest to solidna technologia, jaką jest dzisiaj.

1959: Wynaleziono pierwszy cyfrowy skaner obrazów, który przekształcał obrazy w siatki liczbowe.

1963: Larry Roberts opisał proces pozyskiwania informacji 3D o obiektach stałych ze zdjęć 2D.

1966: Marvin Minsky polecił doktorantowi podłączyć kamerę do komputera i opisać, co zobaczył.

1980: Kunihiko Fukushima stworzyła   neokognitron. Jest uważany za prekursora nowoczesnej konwolucyjnej sieci neuronowej (CNN).

2001: Paul Viola i Michael Jones, dwaj badacze z MIT, stworzyli pierwszą platformę wykrywania twarzy, która działa w czasie rzeczywistym.

2009: Google rozpoczyna projekt autonomicznego samochodu.

2010: Google wypuścił Gogle Google, aplikację do rozpoznawania obrazów przydatną do wyszukiwania na podstawie zdjęć zrobionych przez urządzenia mobilne. W tym samym roku Facebook zaczął wykorzystywać rozpoznawanie twarzy do skutecznego oznaczania ludzi na zdjęciach.

2011: Technologia rozpoznawania twarzy została wykorzystana do potwierdzenia   tożsamość Osamy Bin Laden   po jego śmierci.

2012: Google Brain stworzył sieć neuronową składającą się z 16 000 procesorów komputerowych, które potrafiły rozpoznawać zdjęcia kotów za pomocą algorytmu głębokiego uczenia. W tym samym roku AlexNet, konwolucyjna sieć neuronowa, w ImageNet 2012 Challenge osiągnęła błąd top-5 wynoszący 15,3%.

2014: Tesla wprowadziła Autopilota w swoich samochodach elektrycznych Model S. System autonomicznej jazdy nie tylko działał w trybie offline, ale także precyzyjnie parkował.

2015: uruchomienie Google   TensorFlow, która jest biblioteką open source i bezpłatnego oprogramowania do uczenia maszynowego. W tym samym roku Google wprowadził FaceNet do rozpoznawania twarzy.

2016: Wprowadzono Pokemon GO, słynną grę mobilną opartą na AR.

2017: Apple wypuściło iPhone’a X z funkcją rozpoznawania twarzy.

2019: High Court w Wielkiej Brytanii zezwolił na wykorzystanie technologii automatycznego rozpoznawania twarzy do wyszukiwania osób w tłumie.

Jak działa widzenie komputerowe?

Wizja komputerowa zaczyna się od małego, a kończy na wielkim.

Wykorzystuje technikę przetwarzania warstwowego, w której zaczyna się od identyfikacji i analizy cech niskiego poziomu, takich jak piksele i kolory. Stopniowo idzie w górę, aby analizować elementy wyższego poziomu, takie jak linie i obiekty.

Załóżmy, że widzisz obraz biegnących ludzi. Mimo że jest to nieruchomy obraz, w większości przypadków będziesz w stanie zrozumieć kontekst; ludzie uciekają od czegoś, biegną w kierunku czegoś lub biegną bez pośpiechu. Jest to typowy przykład tego, jak przetwarzanie równoległe odbywa się w czasie rzeczywistym.

Łatwo jest nam zrozumieć emocje i kontekst obrazów. Komputery wciąż uczą się fachu, ale ich tempo jest imponujące dla podmiotów niebiologicznych.

Czy zastanawiałeś się kiedyś, w jaki sposób komputery są w stanie dostarczyć dokładnych danych do czegoś takiego jak prognozowanie pogody? To właśnie tam widzenie komputerowe działa w formie przetwarzania równoległego, tj. pracy z wieloma złożonymi źródłami danych jednocześnie.

W przypadku maszyn obrazy to tylko zbiór pikseli. W przeciwieństwie do ludzi nie potrafią zrozumieć semantycznego znaczenia obrazu i mogą wykrywać tylko piksele. Celem wizji komputerowej jest zniwelowanie tej semantycznej luki .

Kiedy promienie świetlne uderzają w siatkówkę naszych oczu, specjalne komórki, zwane fotoreceptorami, przekształcają światło w sygnały elektryczne. Te sygnały elektryczne są następnie wysyłane do mózgu przez nerw wzrokowy. Mózg następnie przekształca te sygnały w obrazy, które widzimy.

Proces ten trwa aż do momentu, gdy sygnały elektryczne docierające do mózgu wydają się proste. Jak dokładnie mózg przetwarza te sygnały i przekształca je w obrazy, nie jest jeszcze w pełni zrozumiałe. Mówiąc dokładniej, mózg jest czarną skrzynką; podobnie jak wizja komputerowa.

Są sieci neuronowe i inne   nauczanie maszynowe   algorytmy, które próbują naśladować ludzki mózg. Umożliwiają widzenie komputerowe i pomagają zrozumieć, o czym są obrazy. Nawet w przypadku algorytmów badacze ML nie są w pełni świadomi, jak one działają. Jednak ponieważ ich wyniki są policzalne, możemy ocenić dokładność każdego algorytmu.

Wizja komputerowa jako proces jest wytłumaczalna, podobnie jak ludzkie widzenie. Ale nikt nie jest do końca pewien, jak działają sieci neuronowe, aby zrozumieć obrazy lub czy są one oddalone od tego, jak ludzie przetwarzają informacje wizualne.

To powiedziawszy, w prostym sensie, wizja komputerowa polega na rozpoznawaniu wzorców. Korzystanie z technik uczenia maszynowego, takich jak   uczenie nienadzorowane, algorytmy są szkolone w celu rozpoznawania wzorców w danych wizualnych. Jeśli myślisz o liczbie wymaganych obrazów, to są to co najmniej miliony lub tysiące.

Załóżmy, że chcesz, aby algorytm rozpoznawał psy na obrazach. Jeśli stosujesz technikę uczenia się bez nadzoru, nie musisz oznaczać żadnych obrazów jako psów. Zamiast tego, po przeanalizowaniu tysięcy lub milionów obrazów, maszyna uczy się specyficznych cech psów.

Krótko mówiąc, komputer może dostrzec specyficzne cechy, które czynią zwierzę (lub przedmiot) psem. Nadal nie wiedziałby, że dane zwierzę nazywa się „psem”. Ale będzie mieć wystarczająco dużo informacji i doświadczenia, aby określić, czy nieopisany obraz zawiera psa.

Jeśli chcesz, aby proces uczenia się przebiegał szybciej, możesz wybrać   Nadzorowana nauka. W uczeniu nadzorowanym obrazy są etykietowane, co ułatwia pracę algorytmom.

Badanie obrazów na poziomie pikseli

Mówiąc o algorytmach analizujących obrazy, nie badają obrazu jako całości jak ludzie. Zamiast tego patrzą na pojedyncze piksele, które są najmniejszymi adresowalnymi elementami obrazu rastrowego.

Dla uproszczenia rozważmy obraz w skali szarości. Jasność każdego piksela, zwana wartościami pikseli, jest reprezentowana przez 8-bitową liczbę całkowitą z zakresem możliwych wartości od 0 do 255. Zero jest uważane za czarne, a 255 za białe. Jeśli badamy kolorowy obraz, sprawy staną się bardziej skomplikowane.

Kiedy mówimy, że algorytm analizuje i uczy się, w rzeczywistości uczy się tych wartości pikseli. Innymi słowy, komputer widzi i rozpoznaje obrazy na podstawie takich wartości liczbowych. Oznacza to również, że algorytmy znajdują wzorce na obrazach, patrząc na ich wartości liczbowe i porównując obrazy w podobny sposób.

Krótko mówiąc, w przypadku maszyn rozumienie obrazu jest procesem matematycznym, który obejmuje tablice liczb całkowitych.

Są też splotowe sieci neuronowe

Konwolucyjna sieć neuronowa (CNN lub ConvNet) to   głęboka nauka   algorytm, który może wyodrębnić cechy z zestawów danych obrazu. Stanowią kategorię sieci neuronowych i mają imponujące możliwości rozpoznawania i klasyfikacji obrazów. Prawie każdy algorytm wizji komputerowej wykorzystuje splotowe sieci neuronowe.

Chociaż CNN zostały wynalezione w latach 80., nie były one możliwe do zrealizowania przed wprowadzeniem procesorów graficznych (GPU). Procesory GPU mogą znacznie przyspieszyć splotowe sieci neuronowe i inne sieci neuronowe. W 2004 r. implementacja CNN na GPU była 20 razy szybsza niż równoważna implementacja CPU.

Jak to robią CNN?

Sieci ConvNet uczą się na podstawie obrazów wejściowych i dostosowują swoje parametry (wagi i błędy systematyczne), aby lepiej przewidywać. Sieci CNN traktują obrazy jak macierze i wydobywają z nich informacje przestrzenne, takie jak krawędzie, głębia i tekstura. ConvNets robią to za pomocą   warstwy splotowe   oraz   łączenie.

Architektura CNN jest analogiczna do wzorca połączeń neuronów w naszych mózgach. Sieci CNN zostały stworzone, czerpiąc inspirację z organizacji kory wzrokowej, czyli obszaru mózgu, który odbiera i przetwarza informacje wizualne.

CNN składa się z wielu warstw sztucznych neuronów zwanych perceptronami, które są matematycznymi odpowiednikami neuronów biologicznych naszego mózgu. Perceptrony z grubsza imitują również działanie swoich biologicznych odpowiedników.

Splotowa sieć neuronowa składa się z warstwy wejściowej , wielu warstw ukrytych i warstwy wyjściowej .

Ukryte warstwy zawierają:

  • Warstwy splotowe
  • Warstwy z rektyfikowaną liniową funkcją aktywacji (ReLU)
  • Warstwy normalizacji
  • Łączenie warstw
  • W pełni połączone warstwy

Oto proste wyjaśnienie tego, co robią.

Gdy CNN przetwarza obraz, każda z jego warstw wyodrębnia różne cechy z pikseli obrazu. Pierwsza warstwa odpowiada za wykrywanie podstawowych cech, takich jak krawędzie poziome i pionowe.

W miarę zagłębiania się w sieć neuronową warstwy zaczynają wykrywać złożone cechy, takie jak kształty i narożniki. Ostatnie warstwy splotowej sieci neuronowej są w stanie wykryć określone cechy, takie jak twarze, budynki i miejsca.

Warstwa wyjściowa zawiłej sieci neuronowej oferuje tabelę zawierającą informacje liczbowe. Ta tabela przedstawia prawdopodobieństwo zidentyfikowania określonego obiektu na obrazie.

Przykłady zadań widzenia komputerowego

Widzenie komputerowe to dziedzina informatyki i sztucznej inteligencji, która umożliwia komputerom widzenie. Istnieje wiele metod, dzięki którym komputery mogą wykorzystać tę dziedzinę. Te próby identyfikacji obiektów lub czynności na obrazach nazywane są zadaniami widzenia komputerowego.

Oto niektóre z typowych zadań widzenia komputerowego.

  • Wykrywanie obiektów: technika używana do wykrywania określonego obiektu na obrazie. Jego zaawansowane wersje mogą identyfikować wiele obiektów na jednym zdjęciu, na przykład budynki, samochody, ludzi, sygnalizację świetlną i wiele innych na zdjęciu ruchliwej ulicy.
  • Klasyfikacja obrazów: grupowanie obrazów w kategorie. Można to również nazwać procesem przypisywania etykiet do obrazów.
  • Rozpoznawanie twarzy: Zaawansowana forma rozpoznawania obiektów, która może identyfikować ludzi na obrazach i rozpoznawać twarze.
  • Segmentacja obrazu: Podział obrazu na wiele części w celu osobnego zbadania.
  • Wykrywanie wzorców: proces rozpoznawania wzorców i prawidłowości w danych wizualnych.
  • Wykrywanie krawędzi: proces wykrywania krawędzi obiektu w celu lepszej identyfikacji składników obrazu.
  • Dopasowywanie cech: rodzaj wykrywania wzorców, który dopasowuje podobieństwa w obrazach, aby je sklasyfikować.

Oprogramowanie do rozpoznawania obrazu   aplikacje mogą wykorzystywać tylko jedną z tych technik widzenia komputerowego. Zaawansowane aplikacje, takie jak autonomiczne samochody, będą wykorzystywać kilka technik jednocześnie.

Aplikacje do widzenia komputerowego w świecie rzeczywistym

Wizja komputerowa jest już zintegrowana z wieloma produktami, których używamy dzisiaj. Facebook automatycznie taguje osoby korzystające z CV. Zdjęcia Google używają go do grupowania obrazów, a aplikacje, takie jak Adobe Lightroom, używają go do poprawiania szczegółów powiększonych obrazów. Jest również szeroko stosowany do kontroli jakości w procesach produkcyjnych, które opierają się na automatyzacji.

Oto kilka bardziej rzeczywistych zastosowań wizji komputerowej, z którymi mogłeś się spotkać.

Rozpoznawanie twarzy

Jednym z najlepszych przypadków użycia wizji komputerowej jest rozpoznawanie twarzy. W 2017 roku trafił do głównego nurtu dzięki modelowi Apple iPhone X i jest teraz standardową funkcją w większości smartfonów.

Technologia rozpoznawania twarzy jest wielokrotnie wykorzystywana jako funkcja uwierzytelniania. W przeciwnym razie służy do identyfikacji osoby, jak w przypadku Facebooka. Wiadomo, że organy ścigania wykorzystują technologię rozpoznawania twarzy do identyfikowania przestępców w przekazach wideo.

Samochody autonomiczne

Samochody autonomiczne w dużej mierze opierają się na wizji komputerowej do analizy obrazu w czasie rzeczywistym. Pomaga autonomicznym pojazdom zrozumieć otoczenie. Jednak technologia stojąca za takimi samochodami jest wciąż w powijakach i wymaga dalszego rozwoju, zanim będzie mogła być pewnie zastosowana na drogach o dużym natężeniu ruchu.

Pojazdy autonomiczne są praktycznie niemożliwe bez wizji komputerowej. Technologia ta pomaga autonomicznym pojazdom przetwarzać dane wizualne w czasie rzeczywistym. Jednym z przykładów jego zastosowania jest tworzenie map 3D. Wraz z identyfikacją i klasyfikacją obiektów, wizja komputerowa może pomóc w tworzeniu map 3D, aby dać pojazdom poczucie otoczenia.

Wykrywanie pojazdów i linii pasa ruchu to kolejne dwa ważne przypadki użycia. Jest też wykrywanie wolnej przestrzeni, które jest dość znane w świecie autonomicznych samochodów. Jak sama nazwa wskazuje, służy do wyznaczania wolnej od przeszkód przestrzeni wokół pojazdu. Wykrywanie wolnej przestrzeni jest przydatne, gdy autonomiczny pojazd zbliża się do wolno poruszającego się pojazdu i musi zmienić pas.

Obrazowanie medyczne

Widzenie komputerowe jest wykorzystywane w branży opieki zdrowotnej do szybszego i dokładniejszego diagnozowania oraz monitorowania postępu chorób. Korzystając z rozpoznawania wzorców, lekarze mogą wykryć wczesne objawy chorób, takich jak rak, które mogą nie być widoczne dla ludzkiego oka.

Obrazowanie medyczne to kolejna krytyczna aplikacja z wieloma korzyściami. Analiza obrazowania medycznego skraca czas potrzebny na analizę obrazów przez lekarzy. Endoskopia, radiografia rentgenowska, ultrasonografia i rezonans magnetyczny (MRI) to niektóre z dyscyplin obrazowania medycznego, które wykorzystują widzenie komputerowe.

Łącząc CNN z obrazowaniem medycznym, lekarze mogą obserwować narządy wewnętrzne, wykrywać anomalie oraz rozumieć przyczynę i wpływ określonych chorób. Pomaga także lekarzom monitorować rozwój chorób i postępy leczenia.

Moderacja treści

Sieci społecznościowe, takie jak Facebook, muszą codziennie przeglądać miliony nowych postów. Niepraktyczne jest posiadanie zespołu moderacji treści, który analizuje każdy opublikowany obraz lub film, dlatego do automatyzacji procesu wykorzystywane są komputerowe systemy wizyjne.

350 milionów

zdjęcia są codziennie przesyłane na Facebooka.

Źródło: Raport społeczny

Wizja komputerowa może pomóc takim platformom mediów społecznościowych analizować przesłane treści i oznaczać te zawierające treści zabronione. Firmy mogą również używać algorytmów głębokiego uczenia do analizy tekstu w celu identyfikowania i blokowania obraźliwych treści.

Nadzór

Transmisje wideo z monitoringu są solidną formą dowodu. Mogą pomóc odkryć osoby łamiące prawo, a także pomóc specjalistom ds. bezpieczeństwa w działaniu, zanim drobne obawy staną się katastrofalne.

Praktycznie niemożliwe jest, aby ludzie mieli oko na nagrania z wielu źródeł. Ale dzięki wizji komputerowej to zadanie jest uproszczone. Zasilane CV systemy nadzoru mogą skanować materiał na żywo i wykrywać osoby o podejrzanym zachowaniu.

Rozpoznawanie twarzy można wykorzystać do identyfikacji poszukiwanych przestępców, a tym samym do zapobiegania przestępstwom. Technologia rozpoznawania obrazu może być wykorzystana do wykrywania osób niosących niebezpieczne przedmioty w zatłoczonych miejscach. To samo służy również do określenia liczby wolnych miejsc parkingowych dostępnych w centrach handlowych.

Wyzwania w wizji komputerowej

Pomaganie komputerom widzieć jest trudniejsze, niż nam się wydawało.

Marvin Minsky był przekonany, że widzenie komputerowe można rozwiązać, podłączając aparat do komputera. Nawet po dziesięcioleciach badań nie jesteśmy blisko rozwiązania problemu. Dla ludzi widzenie jest tak łatwe. Z tego powodu wizja komputerowa była postrzegana jako banalnie prosty problem i miała zostać rozwiązana w ciągu lata.

Nasza wiedza jest ograniczona

Jednym z powodów, dla których nie jesteśmy w stanie w pełni rozwiązać problemu widzenia komputerowego, jest nasza ograniczona wiedza o sobie. Nie mamy pełnego zrozumienia, jak działa ludzki system wzrokowy. Oczywiście w badaniach nad wzrokiem biologicznym poczyniono szybkie postępy, ale przed nami jeszcze długa droga.

Świat wizualny jest złożony

Wyzwaniem w dziedzinie CV jest naturalna złożoność wizualnego świata. Obiekt może być oglądany pod dowolnym kątem, w każdych warunkach oświetleniowych iz różnych odległości. Ludzki system optyczny jest zwykle zdolny do oglądania i rozumienia obiektów we wszystkich takich nieskończonych odmianach, ale możliwości maszyn są nadal dość ograniczone.

Kolejnym ograniczeniem jest brak zdrowego rozsądku. Nawet po latach badań nie udało nam się jeszcze odtworzyć zdrowego rozsądku w systemach AI. Ludzie mogą zastosować zdrowy rozsądek i podstawową wiedzę na temat określonych obiektów, aby nadać im sens. Pozwala nam to również z łatwością zrozumieć relacje między różnymi elementami obrazu.

Ludzie są dobrzy w zgadywaniu, przynajmniej w porównaniu z komputerami. Łatwiej nam podjąć nie tak złą decyzję, nawet jeśli wcześniej nie spotkaliśmy się z konkretnym problemem. Ale to samo nie dotyczy maszyn. Jeśli napotkają sytuację, która nie przypomina ich przykładów treningowych, mają skłonność do działania irracjonalnego.

Algorytmy widzenia komputerowego stają się znacznie lepsze, jeśli wytrenujesz je z nowszymi wizualnymi zestawami danych. Ale w istocie starają się dopasować wzory pikseli. Innymi słowy, poza wiedzą o pikselach, nie do końca rozumieją, co dzieje się na obrazach. Ale fascynujące jest myślenie o cudach, jakie systemy napędzane CV robią w autonomicznych samochodach.

CV jest związane ze sprzętem

W wizji komputerowej opóźnienie jest złem.

W rzeczywistych zastosowaniach, takich jak autonomiczne samochody, przetwarzanie i analiza obrazu muszą zachodzić niemal natychmiast. Na przykład, jeśli pojazd autonomiczny jadący z prędkością 30 mil na godzinę wykryje przeszkodę w odległości stu metrów, ma tylko kilka sekund, aby się zatrzymać lub bezpiecznie skręcić.

Aby samochód działał na czas, system AI będzie musiał zrozumieć otoczenie i podejmować decyzje w ciągu milisekund. Ponieważ komputerowe systemy wizyjne są w dużym stopniu zależne od komponentów sprzętowych, takich jak kamera, opóźnienie nawet ułamka sekundy w transmisji danych lub obliczeniach może spowodować katastrofalne wypadki.

Wąska sztuczna inteligencja to za mało

Niektórzy badacze AI uważają, że wizję komputerową 20/20 można osiągnąć tylko wtedy, gdy odblokujemy sztuczną ogólną inteligencję (AGI). To dlatego, że świadomość wydaje się odgrywać kluczową rolę w ludzkim systemie wzrokowym. Tak jak wiele widzimy i obserwujemy, wyobrażamy sobie. Nasza wyobraźnia powiększa obrazy, które widzimy i nadaje im lepsze znaczenie.

Ponadto inteligencja wizualna nie jest nierozerwalnie związana z inteligencją. Umiejętność przetwarzania złożonych myśli uzupełniała naszą zdolność widzenia i rozumienia otoczenia.

Według wielu badaczy uczenie się z milionów obrazów lub filmów wideo pobranych z Internetu nie pomogłoby zbytnio w osiągnięciu prawdziwej wizji komputerowej. Zamiast tego istota AI będzie musiała doświadczyć tego jak ludzie. Innymi słowy,   wąska sztuczna inteligencja, czyli obecny poziom sztucznej inteligencji, nie wystarczy.

Ramy czasowe, w których osiągniemy ogólną inteligencję, jest nadal dyskusyjne. Niektórzy uważają, że AGI można osiągnąć w ciągu kilku dekad. Inni sugerują, że to sprawa następnego stulecia. Jednak większość badaczy uważa, że ​​AGI jest nieosiągalne i będzie istnieć tylko w gatunku science fiction.

Osiągalne lub nie, istnieje wiele innych sposobów, w jakie możemy spróbować odblokować prawdziwą wizję komputerową. Jednym ze sposobów jest dostarczanie wysokiej jakości i różnorodnych danych. Zapewni to, że systemy oparte na technologii wizji komputerowej będą unikać uprzedzeń.

Znalezienie lepszych sposobów na zwiększenie mocnych stron sztucznych sieci neuronowych, tworzenie potężnych procesorów graficznych i innych potrzebnych komponentów sprzętowych oraz zrozumienie ludzkiego systemu wizualnego to tylko niektóre sposoby na postęp w kierunku prawdziwego widzenia komputerowego.

Prezentowanie wizji maszynom

Wskaźniki błędów modeli rozpoznawania obrazu dramatycznie spadają. Przeszliśmy długą drogę od wykrywania drukowanych liter do precyzyjnego identyfikowania ludzkich twarzy. Ale przed nami długa droga i wiele nowych kamieni milowych do zdobycia. Osiągnięcie prawdziwego widzenia komputerowego najprawdopodobniej będzie jednym z kluczy do stworzenia robotów tak wyrafinowanych i inteligentnych jak ludzie.

Jeśli proces może być realizowany cyfrowo, uczenie maszynowe stanie się jego częścią. Jeśli nie jesteś do końca przekonany, oto 51 statystyk uczenia maszynowego, które wskazują, że ta sama technologia podbija niemal wszystkie branże.