VIII.Percepcja i widzenie komputerowe
Chęć budowy sztucznych i inteligentnych systemów prowadzi do oczekiwania, że będą działać w naszych typowych środowiskach. Dlatego oczekiwania dotyczące ich zdolności percepcyjnych są wysokie. Percepcja odnosi się do procesu uświadamiania sobie elementów środowiska poprzez doznania fizyczne, które mogą obejmować wkład sensoryczny z oczu, uszu, nosa, języka lub skóry. Skupimy się na percepcji wzrokowej, która jest dominującym zmysłem u ludzi i była używana od pierwszych dni budowy sztucznych maszyn. Dwa wczesne przykłady to Shakey, robot mobilny z dalmierzem i kamerą umożliwiającą mu rozumowanie swoich działań w pomieszczeniu z kilkoma obiektami, oraz FREDDY, robot stały z lornetkowym systemem wizyjnym kontrolującym dwa palce ręki. Celem komputerowej wizji jest zrozumienie sceny lub funkcji w obrazach realnego świata. Ważnymi środkami do osiągnięcia tego celu są techniki przetwarzania obrazu i rozpoznawania wzorów. Analizę obrazów komplikuje fakt, że jeden i ten sam obiekt może przedstawiać aparatowi wiele różnych wyglądów w zależności od oświetlenia rzucanego na obiekt, kąta, z którego jest oglądany, rzucanych cieni, używanej kamery, czy części obiektu są zatkane i tak dalej. Niemniej jednak dzisiejsza wizja komputerowa jest wystarczająco zaawansowana, aby wykrywać określone obiekty i kategorie obiektów w różnych warunkach, aby umożliwić pojazdowi autonomicznemu jazdę z umiarkowanymi prędkościami na otwartych drogach, kierować robotem mobilnym przez zestaw biur i obserwować i zrozumieć ludzkie działania. Celem tej sekcji jest podkreślenie najnowocześniejszych metod wizyjnych, które okazały się skuteczne i które doprowadziły do rozwoju wspomnianych wyżej możliwości. Po krótkiej dyskusji na temat bardziej ogólnych zagadnień podsumowujemy pracę podzieloną na cztery kluczowe tematy: rozpoznawanie i kategoryzację obiektów, śledzenie i serwomechanizm wizualny, rozumienie ludzkich zachowań i rozumienie scen kontekstowych. Kończymy krytyczną oceną tego, co osiągnęło widzenie komputerowe i jakie wyzwania pozostają
Paradygmaty i zasady widzenia komputerowego
Widzenie komputerowe to niejednorodna dziedzina obejmująca szerokie spektrum metod oraz perspektyw naukowych. Zaczyna się to od fizycznego zrozumienia, jak powstaje obraz lub co można zasadniczo zobaczyć. Zanim światło zostanie zebrane w gęsty dwuwymiarowy układ na czujniku, załamuje się, odbija, rozprasza lub absorbuje w odniesieniu do sceny. Obraz powstaje przez pomiar natężenia promieni świetlnych przez każdy element matrycy - zwany pikselem. Gdyby ktoś znał oświetlenie dla każdego możliwego promienia światła w scenie, każdy możliwy obraz z kamery mógłby zostać obliczony przed pomiarem. To odwzorowanie między punktem widzenia a jego oświetleniem jest formalnie opisane przez tak zwaną funkcję plenoptyczną. Grafika komputerowa ma na celu przybliżenie tej funkcji poprzez rendering znanej sceny z danymi źródłami światła. W pierwszej perspektywie widzenie komputerowe ma na celu obliczenie odwrotnej funkcji grafiki komputerowej, to znaczy odtworzenie punktu widzenia i leżącej u jego podstaw sceny z danego obrazu, pary obrazów lub sekwencji obrazów. Widzenie komputerowe jest tutaj rozumiane jako problem pomiarowy, który jest szeroko leczony za pomocą fotogrametrii, kalibracji fotometrycznej, a także technik rekonstrukcji i rejestracji. to dla każdego możliwego punktu widzenia i kąta widzenia. Drugą perspektywą wizji komputerowej jest naśladowanie wizji biologicznej aby uzyskać głębsze zrozumienie procesów, reprezentacji i architektur. Tutaj staje się coraz bardziej oczywiste, że podstawowe pytania i otwarte problemy w widzeniu komputerowym znajdują się w czołówce badań poznawczych. Nie można ich rozwiązać w oderwaniu, lecz dotyczą one fundamentalnych podstaw samego poznania. Trzecia perspektywa postrzega wizję komputerową jako dyscyplinę inżynierską, której celem jest rozwiązanie praktycznych zadań związanych z widzeniem. Z jednej strony ta perspektywa wymaga wydajnych rozwiązań algorytmicznych, ale z drugiej strony zadaje dalsze pytanie, jak budować komputerowe systemy wizyjne. W tej dziedzinie dominuje heurystyka i wiedza z doświadczenia. Systematyczne podejścia metodologiczne są rzadkie, głównie specyficzne dla aplikacji i obecnie brakuje głębokiego zrozumienia problemu widzenia jako takiego. Tak więc wszystkie trzy perspektywy nie mogą być rozdzielone i głęboko na siebie wpływają, co - wraz z ogromnym postępem technicznym - sprawiło, że wizja komputerowa stała się bardzo dynamicznym polem w ciągu ostatnich pięćdziesięciu lat. W celu rozwiązania określonych zadań związanych z wizją komputerową należy podjąć różne decyzje projektowe. Niektóre z nich zostały wskazane poniżej. Jaka wiedza jest potrzebna? Aby zrozumieć treść obrazu, odpowiednie części należy powiązać z pojęciami znaczącymi semantycznie. W przypadku sceny pokoju konferencyjnego baza wiedzy może obejmować to, że składa się z dużego stołu i kilku ustawionych wokół niego krzeseł, że stół ma blat i tak dalej. Baza wiedzy rozkłada kompleks sceny pokoju konferencyjnego w prostsze elementy, takie jak blat stołu, które odpowiadają płaskiej powierzchni lub jednorodnemu obszarowi, który można bezpośrednio wyodrębnić z obrazu. Dlatego algorytm może rozpocząć się od wyszukiwania obrazu w poszukiwaniu jednorodnych regionów, co jest koncepcją niskiego poziomu w odniesieniu do sygnału. Następnie są one sukcesywnie łączone (kierując się bazą wiedzy), aby tworzyć koncepcje wyższego poziomu. Podejście to jest zwykle określane jako "oddolne". Inny algorytm może zacząć się od koncepcji tabeli i szukać konkretnie konfiguracji części (przewidywanych przez bazę wiedzy), które spełniają wymagania tej koncepcji. Te części z kolei mogą aktywować detektor stołowy zastosowany do obrazu. Takie podejście jest zwykle określane jako "z góry na dół". Oba podejścia do bazy wiedzy pomogły w przeprowadzeniu znacznej liczby badań nad wizją komputerową w latach 70. i 80. XX wieku . Jak przedstawić geometrię sceny? Ważna jest geometria sceny ,pośrednia reprezentacja w procesie interpretacji obrazu. Można sobie z tym poradzić w 2D lub 3D. Scena jest przedstawiona jako zwykły obraz 2D) i obraz głębokości. Te ostatnie można obliczyć na podstawie par obrazów stereo lub bezpośrednio zmierzyć, na przykład za pomocą czujników czasu lotu, które mierzą odległość na każdym pikselu poprzez modulowanie i odbieranie wiązki światła podczerwonego. Ponieważ reprezentacja we współrzędnych pikseli jest nadal zależna od widoku, jest również nazywana Szkicem 2 ?D. W następnym kroku prymitywy geometryczne 3D są dopasowywane do sceny, a każde dopasowanie definiuje transformację geometryczną. Ponieważ obecnie znana jest względna pozycja 3D i orientacja 3D między tymi prymitywami, uzyskano reprezentację niezależną od widoku i skoncentrowaną na obiekcie. Takie podejście zostało pierwotnie zasugerowane przez Davida Marra, który również przyjrzał się koncepcjom ludzkiej wizji znanym w swoim czasie. Jednak w wielu przypadkach ekstrakcja geometrii 3D jest zbyt delikatna. Rzeczywiste kształty obiektów 3D są często złożone, niesztywne i pasują do procedury ,często kończą się lokalnymi minimami i błędnym położeniem i orientacją obiektu ("pozą"). W rezultacie bardziej stabilne reprezentacje geometryczne można również wyodrębnić z obrazów 2D. W takim przypadku obrazy są analizowane pod kątem nieciągłości przestrzennych na poziomie szarości lub powierzchni koloru. Reprezentacje skupiają się na jednorodnych łatach obrazu (regiony) lub na krawędziach (linie graniczne). Oba stanowią podstawę do dalszych procesów interpretacyjnych. Wydobycie takich prymitywów geometrycznych jest problemem cyfrowego przetwarzania obrazu. Jakie są odpowiednie funkcje? Aby dopasować reprezentację geometryczną lub obrazową do koncepcji semantycznej, takiej jak "stół", "krzesło" lub "sala konferencyjna", należy określić funkcję decyzyjną, która decyduje o członkostwie w klasie lub przeciw niej. Jest to problem klasyfikacji, który jest intensywnie rozwiązywany w dziedzinie rozpoznawania wzorów.. Wzór jest reprezentowany przez wektor cech definiujący punkt w przestrzeni o dużych wymiarach. Biorąc pod uwagę, że klasy niektórych punktów w tej przestrzeni są znane (np. Zestaw obrazów szkoleniowych opatrzonych adnotacjami ręcznie), można nauczyć się funkcji decyzyjnej dzielącej przestrzeń na te klasy. Na rysunku 8.5 podano prosty przykład. Obraz jest podzielony na sześć części i dla każdego podobrazu obliczany jest histogram kolorów. Połączone histogramy zapewniają wektor cech, który można wykorzystać na przykład do klasyfikacji określonych sal konferencyjnych .Pytanie o dobre cechy jest od dawna tematem dyskusji. Przez lata pojawiło się kilka wynalazków, które wywarły głęboki wpływ na tę dziedzinę. W latach 90. XX wieku Swain i Ballard zaproponowali wykorzystanie lokalnych statystyk obiektów (takich jak histogramy kolorów), Turk i Pentland zastosowali technikę opartą na wektorach własnych do zestawów obrazów ludzkich twarzy (zwanych wtedy twarzami własnymi). Później, w 2000 roku, Viola i Jones zrewolucjonizowali wykrywanie twarzy, wynajdując automatyczny proces wyboru cech oparty na ogromnej liczbie bardzo prostych cech związanych z falkami Haara (cechy oparte na binarnym wyborze włączania / wyłączania sąsiadujących części obrazu). Kolejnym przełomem była Scale Invariant Feature Transform (SIFT) Davida Lowe'a, która przesunęła rozpoznawanie obiektów na nowy poziom. Tutaj idee lokalnych statystyk gradientu są łączone z niezwykle stabilnym wykrywaniem stałych punktów na obiekcie - tzw. punkty procentowe. Jak kontrolować proces akwizycji? Wizja biologiczna nie jest pasywnym procesem interpretacyjnym, podobnie jak autonomiczne sztuczne systemy. Ruch agenta w świecie rzeczywistym w zasadzie determinuje problem percepcji, który musi rozwiązać. Wizja jest rozumiana jako aktywny proces, który obejmuje kontrolę nad czujnikiem i jest ściśle powiązany z pomyślnym wykonaniem decyzji lub działania. Ma to pewne konsekwencje dla projektowania komputerowych systemów wizyjnych, które odnotowano już na początku lat 90.. Po pierwsze, zamiast modelować izolowany proces interpretacji obrazu, system musi zawsze działać i musi kontrolować swoje zachowanie za pomocą strumienia obrazów. Po drugie, ogólnym celem przetwarzania wizualnego nie jest zrozumienie obrazu. Zamiast tego system wizyjny musi działać jako filtr, który wyodrębnia informacje istotne dla jego zadania. Po trzecie, system musi zareagować w ustalonym czasie, aby był przydatny w bieżącym zadaniu, takim jak nawigacja i omijanie przeszkód w robocie. Po czwarte, zamiast przetwarzać pełny obraz, system musi skupić się na regionie zainteresowania (ROI), aby osiągnąć cele w zakresie wydajności. Pierwszy ma na celu pełną interpretację obrazu, drugi wyciąga istotne informacje do wyboru akcji i przewidywania stanu.
Rozpoznawanie i kategoryzacja obiektów
Rozpoznawanie obiektów może być postrzegane jako wyzwanie dla określenia "gdzie" i "co" obiektów na scenie. Zaproponowano wiele różnych technik, a wszystkie mają swoje zalety i wady. Biorąc pod uwagę scenariusz aplikacji, należy starannie wybrać odpowiednią technikę rozpoznawania obiektów, która spełnia przewidywany zestaw ograniczeń. Techniki różnią się także dokładnym problemem, który rozwiązują. Wiele technik rozpoznawania to detektory obiektów, które zadają pytanie tak / nie dotyczące obecności klasy obiektów. Obraz jest zwykle skanowany przez model szablonu; oznacza to, że okno jest przesuwane nad obrazem i dla każdej pozycji obliczana jest tak zwana odpowiedź filtru poprzez dopasowanie szablonu do podobrazu zdefiniowanego przez okno. Każda inna parametryzacja obiektu (skala obiektu, obrót itp.) Wymaga osobnego skanu. Bardziej wyrafinowane podejścia skutecznie wykonują wiele przejść w różnych skalach i stosują filtry wyuczone z dużych zestawów oznaczonych obrazów. Dobrym przykładem jest wykrywacz twarzy Violi i Jonesa wspomniany w poprzedniej sekcji. W tym przypadku filtr składa się z zestawu dodatnich i ujemnych całek na prostokątnych obszarach obrazu wyuczonych wcześniej. Techniki oparte na segmentacji najpierw wyodrębniają geometryczny opis obiektu, grupując razem piksele, które definiują rozszerzenie obiektu na obrazie. Jest to typowy proces oddolny, jak omówiono wcześniej. W drugim etapie techniki te obliczają niezmienny zestaw funkcji. Właściwość niezmienniczości oznacza, że funkcje zachowują te same lub podobne wartości przy różnych przekształceniach obrazu, takich jak skalowanie, obracanie lub zmiana oświetlenia. Następnie funkcje są używane do rozpoznania klasy obiektu lub wyodrębnienia zestawu podstawowych operacji podstawowych, z których obiekty są zbudowane. Nowoczesne techniki przeplatają lub łączą oba etapy, aby poradzić sobie z problemami przeszacowania (w których części są podzielone na małe kawałki) i niedosegmentacji (w których części są zgrupowane razem z obszarami tła). Metody wyrównywania wykorzystują "parametryczne" modele obiektów, które są dopasowane do danych obrazu. Algorytm musi wyszukiwać parametry, takie jak skalowanie, obrót lub translacja, które optymalnie dopasują model do odpowiednich funkcji obrazu. Przybliżone rozwiązanie można również znaleźć w procesie odwrotny, tj. cechy obrazu (np. narożniki, kontury lub inne charakterystyczne punkty obrazu) głosują na rozwiązania parametrów, które są kompatybilne z wykrytą cechą (proces wymaga użycia schematu głosowania lub algorytmu, który uzyskuje jedno wyjście z wielu źródła danych). W tym przypadku przestrzeń parametrów jest dyskretnie dyskretna. Technikę tę często określa się jako uogólnioną transformatę Hougha, a wariant rozpoznawania obiektów został zastosowany przez Davida Lowe'a wspomnianego w ostatniej części. Wszystkie trzy podejścia dostarczają różnych informacji o obiektach na obrazach i zakładają, że dostępne są różne rodzaje wiedzy wstępnej.
Modelowanie 2D
Większość obiektów w prawdziwym świecie jest z natury trójwymiarowa. Niemniej jednak wiele technik rozpoznawania obiektów odnosi się do reprezentacji 2D ze znacznym sukcesem. Jest tego kilka przyczyn. (1) Łatwa dostępność: informacje o obrazie 2D otrzymujemy prawie za darmo przy użyciu standardowego sprzętu kamery. (2) Szybkie obliczenia: operacje można obliczyć bezpośrednio z danych pikseli obrazu i nie wymagają one wyszukiwania skomplikowanych prymitywów geometrycznych. (3) Prosta akwizycja modeli wykrywania: Modele używane do automatycznego wykrywania obiektów są zwykle uczone z przykładowych obrazów. (4) Odporność na zakłócenia: Funkcje są obliczane bezpośrednio na podstawie wartości pikseli. Kontrastuje to z wydobywaniem bardziej abstrakcyjnych prymitywów (obszary, kontury, prymitywy kształtu 3D), które zazwyczaj wiążą się z problemami z segmentacją, a zatem są bardziej podatne na błędy w odniesieniu do bałaganu i szumu. (5) Ponadto wiele interesujących obiektów ma dość charakterystyczne widoki 2D - na przykład strony tytułowe, znaki drogowe, widoki z boku motocykli lub samochodów, widoki z przodu twarzy. Cena, jaką należy zapłacić za ignorowanie właściwości 3D obiektów, to zazwyczaj modele o zbyt dużym lub zbyt ograniczonym dostępie, ponieważ istnieje wiele wariantów perspektyw , z którymi nie można systematycznie sobie radzić. Typowym przypadkiem niewystarczającego podejścia są modele work-of-feature. Podobnie jak modele histogramów wspomniane wcześniej, te obliczane statystyki funkcji dotyczą regionu obrazu lub całego obrazu. W ten sposób położenie elementów jest całkowicie utracone, a obrotu obiektu i dokładnej pozycji nie można rozróżnić. Zatem na przykład, jeśli oczy, nos i usta twarzy były do góry nogami lub całkowicie zmieszane, urządzenie rozpoznające nadal nieprawidłowo wykrywa twarz. Z drugiej strony modele z ograniczeniami wymagają wielu reprezentacji, aby poradzić sobie z różnymi konfiguracjami części lub obrotami obiektów. (Dobrymi przykładami są wspomniane wcześniej metody oparte na szablonie.) Dlatego jeśli na przykład twarz zostanie obrócona o 90 stopni, urządzenie rozpoznające nigdy jej nie wykryje. Jako dodatkową cenę do zapłaty musimy poradzić sobie z trudniejszym problemem segmentacji - czyli z wydobyciem obiektu z jego tła. Zazwyczaj tło jest dalej, więc informacje 3D zapewniają znacznie silniejszą wskazówkę niż wartości luminancji obrazów 2D. Dominującą klasą technik rozpoznawania obiektów 2D są podejścia oparte na wyglądzie. Zamiast używać niezmiennej reprezentacji zorientowanej obiektowo reprezentacji, reprezentują one różne aspekty obiektu. Kompaktowe reprezentacje są dostarczane przez wykresy aspektowe, które łączą różne wyglądy 2D w wydajnej strukturze danych. Po drugie, podejścia oparte na wyglądzie upuszczają pośredni poziom reprezentacji geometrycznej, obliczając cechy bezpośrednio z wartości pikseli. Ma to pewne konsekwencje dla rodzaju klas obiektów, które można rozróżnić, oraz wariantów wewnątrz klasy, które można uwzględnić. Jak dotąd omawiane metody dotyczą zmian obrotu, oświetlenia, hałasu i niewielkich zniekształceń kształtu obiektu. Zakładają głównie, że obiekty są stałe, w przybliżeniu sztywne, mają podobne tekstury lub kolory i są w niewielkim stopniu zasłonięte. Dalsze warianty są uwzględniane w lokalnych podejściach deskryptorów. Tutaj główną ideą jest wykrycie istotnych punktów na obrazie, które zapewniają częściowe opis funkcji zamiast pełnego modelu wyglądu. Podejścia te zwróciły uwagę w pierwszej dekadzie XXI wieku i osiągnęły niespotykany wcześniej występ. Opierając się na lokalnych deskryptorach (typowe przykłady to funkcje SIFT lub SURF, które analizują rozkład gradientów obrazu wokół punktu obrazu), metody te są w stanie poradzić sobie z okluzją i lokalnymi wariacjami występującymi w rzeczywistych warunkach
Modelowanie 3D
Obrazy kolorowe lub intensywne 2D nie kodują bezpośrednio informacji o głębokości ani kształcie. W związku z tym rozpoznawanie i lokalizacja obiektów jest trudnym problemem i ogólnie źle przedstawionym. Aby rozwiązać te problemy, kształt 3D obiektów można odzyskać bezpośrednio z głębi lub zakresu obrazów. Głębokość obrazów można uzyskać różnymi metodami, od skanowania za pomocą czujnika laserowego, podejście do światła strukturalnego, do systemów stereo wykorzystujących dwie kamery, co jest metodą stosowaną przez ludzkie widzenie. Tanim przykładem strukturyzowanego aparatu świetlnego jest kolorowa i głęboka kamera Kinect. Głównym pytaniem w widzeniu komputerowym jest sposób modelowania lub reprezentowania obiektu w taki sposób, aby można go było wykryć na podstawie głębokich danych. Jednym ze sposobów jest parsowanie kształtów na części składowe i zdefiniowanie ich relacji przestrzennych. W widzeniu komputerowym części są przydatne z dwóch powodów. Po pierwsze, wiele obiektów jest przegubowych, a oparty na częściach opis pozwala nam oddzielić kształty części od ich relacji przestrzennych. Po drugie, nie wszystkie części obiektów są widoczne, ale części są często wystarczające do rozpoznania obiektu; na przykład kubek można rozpoznać po korpusie lub uchwycie. Kluczowym aspektem reprezentacji opartych na częściach jest ich liczba parametrów. W ostatnim dziesięcioleciu dokonano wielu prac opisujących dane dotyczące głębokości za pomocą rotacyjnych symetrycznych prymitywów (kula, walec, stożek, torus). Uogólnione cylindry można utworzyć, przesuwając kontur 2D wzdłuż dowolnej krzywej przestrzennej. Ponieważ kontur może się zmieniać wzdłuż krzywej (osi), definicje osi i krzywej zamiatania są potrzebne do zdefiniowania uogólnionego walca, który wymaga dużej liczby parametrów. Często cytowanym systemem wczesnego widzenia, w którym zastosowano cylindry uogólnione, jest system ACRONYM do wykrywania samolotów. Jednak dopasowanie wielu parametrów jest skomplikowane i ograniczyło stosowanie tej metody. Jedna z najlepiej zbadanych metod modelowania 3D polega na odzyskiwaniu nadkwadratów - kształtów geometrycznych określonych przez wzory, w tym arbitralnych mocy do tworzenia kształtów przypominających sześciany, cylindry i stożki, o zaokrąglonych lub ostrych narożach. Stały się one popularne, ponieważ mały zestaw parametrów może opisywać dużą różnorodność różnych podstawowych kształtów. Solina i in. był pionierem prac nad odzyskiwaniem pojedynczych nadkwadrat i wykazał, że odzyskiwanie nadkwadratów z obrazów zasięgu jest wrażliwe na szum i wartości odstające, w szczególności z pojedynczych widoków podanych w aplikacjach takich jak robotyka. Jaklic i współpracownicy podsumowują paradygmat odzyskiwania i wyboru do segmentowania sceny z prostymi obiektami geometrycznymi bez okluzji. Ta metoda pełnego wyszukiwania z otwartym czasem przetwarzania nieodpowiednim dla większości aplikacji, takich jak robotyka. Ostatnio obrazy z czujników głębokości, takich jak Kinect lub z systemów stereo, są częściej wykorzystywane do uzyskiwania danych 3D. Ponieważ dane na ogół nie są tak dobre jak ze skanów laserowych, stosuje się metody statystyczne, a nie bezpośrednie metody kształtowania. Przykładem jest wykrycie krzeseł. Otwartymi problemami w tym obszarze są sposoby radzenia sobie z rzadkimi danymi wynikającymi ze skanów sceny w jednym widoku, radzenia sobie z typowym laserem i kamerowania cieni i okluzji w zagraconych scenach oraz radzenia sobie z niepewnością obrazów stereo.
Śledzenie i wizualny serwomechanizm
Innym typowym zadaniem wykonywanym przez ludzi jest wykrywanie i śledzenie ruchu obiektów. Podczas chwytania obiektu obserwuje się ruch względny. Podczas chodzenia monitorowany jest ruch otoczenia. Technika wizualnego śledzenia obiektu i określania jego położenia jest stosowana szczególnie w zadaniach nadzoru i robotyki. W tym pierwszym szacuje się, że ścieżki samochodów lub osób odzyskują bieżące działania i odpowiednio reagują. W robotyce celem jest śledzenie względnej pozycji robota mobilnego i jego otoczenia lub skierowanie robota do obiektu. Ciągłe sterowanie zwrotne położenia robota jest nazywane wizualnym serwomechanizmem. Pierwsze sukcesy w zakresie autonomicznej jazdy samochodem i prowadzenia pojazdu powietrznego wskazują na zastosowanie wizualnego serwomechanizmu. Jednak nadal istnieją dwie główne przeszkody w dalszym korzystaniu ze scenariuszy w świecie rzeczywistym. Po pierwsze, wymagany jest wydajny cykl śledzenia. Wizja i kontrola muszą być połączone, aby zapewnić dobrą dynamikę. Potrzebne są szybkie ruchy, aby uzasadnić użycie serwomechanizmu wizualnego w rzeczywistych aplikacjach robotycznych. Po drugie, musi istnieć niezawodne wykrywanie obiektów docelowych. Wizja musi być solidna i niezawodna. Percepcja musi być w stanie ocenić stan obiektów i robota, umożliwiając robotowi reagowanie na zmiany i upewnienie się, że porusza się bezpiecznie w swoim otoczeniu. Problem z cyklem śledzenia spotkał się z dużym zainteresowaniem w literaturze , ale niezawodne wizualne wykrywanie celów jest równie ważne, a ostatnio zaczęło otrzymywać coraz więcej uwagi. W poniższych sekcjach podsumowano stan techniki w odniesieniu do tych dwóch kryteriów.
Cykl śledzenia
Celem serwomechanizmu wizualnego jest uwzględnienie całego systemu i jego interfejsów. Podstawowa pętla sterowania jest przedstawiona na rysunku
Zawiera trzy główne bloki: system wizyjny, sterownik i mechanizm (robot lub pojazd). System wizyjny określa bieżącą lokalizację celu (obiektu będącego przedmiotem zainteresowania) na obrazie. Kontroler przekształca lokalizację na obrazie na pozycję w przestrzeni lub bezpośrednio w wartości poleceń. System powtarza to z częstotliwością cyklu. W każdym cyklu określana jest nowa lokalizacja, a także można użyć różnicy lokalizacji w celu uzyskania polecenia sterującego. Robot lub pojazd zwykle używa osobnego kontrolera do sterowania silnikami na poziomie osi i kół. Celem jest zbudowanie systemu śledzenia, aby cel nie został utracony. Jeden limit śledzenia jest określony przez pole widzenia kamery. Stąd tak jest przydatne do badania śledzenia najwyższej możliwej prędkości docelowej (lub przyspieszenia). Właściwą właściwością jest opóźnienie (lub opóźnienie) sprzężenia zwrotnego generowanego przez system wizyjny. Dwa główne czynniki, którymi należy się zająć, to (1) opóźnienie lub opóźnienia w jednym cyklu oraz (2) część lub okno obrazu, który jest faktycznie przetwarzany. Opóźnienia gromadzą się w kamerze. Obecnie aparaty wytwarzają obrazy z częstotliwością 25 lub 30 Hz lub obrazów na sekundę. Dodatkowe opóźnienia wynikają z czasu przesłania danych obrazu do kontrolera. Największym opóźnieniem jest czas potrzebny do przetworzenia obrazu. Choć wydaje się intuicyjne, że opóźnienia opóźniają śledzenie, drugi czynnik, przetwarzanie obrazu, często nie jest przestrzegany. Jeśli zostanie obliczony pełny obraz, może to potrwać znacznie dłużej niż czas kadru w aparacie, co w konsekwencji spowoduje utratę zdjęć. Jeśli zostanie użyte małe okno, na przykład wokół miejsca, w którym cel był widziany na ostatnim obrazie, możliwe jest wykorzystanie każdego obrazu. Optymalne osiąga się, gdy rozmiar okna jest tak dobrany, że przetwarzanie jest tak szybkie, jak pozyskiwanie obrazów, a przetwarzanie obrazu działa z tą samą częstotliwością 25 lub 30 Hz. Oznacza to, że optymalne jest działanie systemu śledzenia z opóźnieniem dwóch cykli liczby klatek na sekundę dla kamer: jeden do przesyłania obrazu z aparatu do komputera, a drugi do przetwarzania obrazu. Aby zrekompensować to opóźnienie, filtry (takie jak filtr Kalmana) przewidują, gdzie będzie cel (Chaumette i Hutchinson). Warto zauważyć, że ludzkie oko bardzo różni się od aparatu. Aparaty mają jednolity układ pikseli w jednej rozdzielczości lub odstępie między pikselami. Ludzka siatkówka wykazuje teselację w wariancie kosmicznym z foveą o wysokiej rozdzielczości pośrodku i szerokim polem widzenia (około 180 stopni) przy logarytmicznie malejącej rozdzielczości. W efekcie człowiek cały czas przetwarza cały obraz (Vincze 2005). Ludzie mogą reagować na ruch na peryferiach, podczas gdy rozpoznawanie działa tylko w fovei, która jest obrócona do celu i śledzi go.
Solidne wykrywanie celu
Niezawodność śledzenia ma zasadnicze znaczenie dla zapewnienia ciągłości działania w aplikacjach. Stwierdzenie, że metoda śledzenia jest niezawodna, oznacza, że zmniejsza się ona płynnie, gdy dane wejściowe są hałaśliwe i zawierają wartości odstające. Powszechnym mianownikiem technik poprawy niezawodności jest wykorzystanie nadmiarowości za pomocą wielu kamer, wielu rozdzielczości, ograniczeń czasowych nieodłącznie związanych ze śledzeniem, modelami oraz integracji kilku wskazówek lub funkcji. Minimalna forma redundancji jest nieodłączna w systemie wizyjnym stereo wykorzystującym dwie nieruchome kamery i szukającym celu na obu obrazach. Obecnie systemy obliczające głębię obrazu z dwóch obrazów stereo są dostępne w handlu (np. Videre Design). Niemniej jednak problem korespondencji (znalezienie tego samego punktu sceny na obu obrazach) pozostaje, a udane zastosowania stereo są rzadkie. Problem korespondencji widzenia wizyjnego jest redukowany przez użycie trzech lub więcej kamer, jak w TRICLOPS (Point-Gray Research). Systemy wspomagające do kierowania samochodami przy dużych prędkościach wykorzystują dwie lub trzy kamery o różnych polach widzenia. Pomysł łączenia informacji z różnych poziomów rozdzielczości został wykorzystany w podejściu do przestrzeni skali lub piramidy obrazowej, w której oryginalny obraz jest kilkakrotnie zmniejszany. Spójność jest agregowana na mniejszych obrazach, aby uzyskać miarę niezawodności, na przykład wykrywania krawędzi. Ostatnio funkcje punktów procentowych (obiekty, które mają maksymalne gradienty) wykorzystują to do wybrania najsolidniejszej lokalnej skali punktu gradientu, na przykład SIFT. Jednak użycie piramid obrazowych nie zostało wystarczająco wykorzystane. Nadmiarowość serii obrazów można wykorzystać, biorąc pod uwagę spójność czasową wykrytych funkcji, zwaną także powiązaniem danych czasowych. Aby poradzić sobie z niepewnością lokalizowania obiektu docelowego na obrazie, powszechnie stosowane są standardowe metody teorii sterowania, takie jak filtrowanie i przewidywanie (patrz wyżej) w celu poprawy niezawodności. Obecnie najczęstszym podejściem do radzenia sobie z tą niepewnością jest Kalman lub filtrowanie cząstek, gdzie kilka hipotez pomaga w adaptacji do niepewności ruchu mechanizmu i pomiar. Podejście dynamicznej wizji) wykorzystało czasową ewolucję cech geometrycznych, takich jak linie, do zbudowania modelu postrzeganego świata. Fizyczne właściwości obiektów, takie jak pewna bezwładność, są wykorzystywane do przewidywania przyszłych pozycji obiektu na następnych obrazach. Śledzenie służy następnie do potwierdzenia lub aktualizacji trybu ruchu. Innym podejściem jest wizja modelowa . Model jest zwykle reprezentacją CAD celu (komputerowego wspomagania projektowania), która jest używana do przewidywania położenia obiektu (modelu) na następnym obrazie. Roboty mobilne przechowują (lub budują) reprezentację obiektów, takich jak ściany, filary lub skrzynki, do celów nawigacji lub chwytania obiektów. U ludzi integracja wskazówek lub cech, takich jak tekstura, kolor, cieniowanie itp. Została zidentyfikowana jako prawdopodobne źródło doskonałej zdolności radzenia sobie ze zmieniającymi się warunkami. Podsumowując, istnieje wiele podejść do śledzenia. Większość z nich jest solidna lub szybka. Podczas gdy śledzenie oparte na regionach lub punktach zainteresowania jest bardziej niezawodne w środowiskach teksturowanych, schematy śledzenia oparte na krawędziach zapewniają najlepszy wkład do wizualnego serwomechanizmu w robotyce lub w systemach rzeczywistości rozszerzonej, w których dodatkowe informacje są wizualizowane na rzeczywistych obrazach. Przy stałym wzroście mocy obliczeniowej prace nad integracją pamięci pójdą dalej. Wiele można uzyskać dzięki wykorzystaniu większej wiedzy na temat zadania i dziedziny, modeli obiektów i funkcji obiektów, a także dzięki wskazówkom, takim jak poziomy rozdzielczości, spójność czasowa i różne funkcje obrazu.
Zrozumienie ludzkiego zachowania
Nadzór wzrokowy
Inteligentne pokoje, interfejsy człowiek-maszyna oraz aplikacje bezpieczeństwa i ochrony wymagają umiejętności rozpoznawania działań ludzi. To pole jest znane jako nadzór wizualny. Zazwyczaj systemy nadzoru działają z kamer stacjonarnych, co pozwala na użycie technika odejmowania tła w celu wykrycia zmian na obrazie. Odejmowanie tła wykorzystuje obrazy statyczne do uzyskania modelu stałej sceny tła, która upraszcza zadanie wydobywania ruchomych obiektów pierwszego planu (pojazdów, osób itp.) Głównym zadaniem jest radzenie sobie ze zmiennym oświetleniem, które zmienia wygląd obrazu i może ukrywać zmiany spowodowane poruszającymi się obiektami na pierwszym planie. Ta forma wykrywania zmian powoduje, że obszary obrazu są używane jako wskazania obiektów. W następnym kroku te plamy są śledzone w sekwencji obrazów, w której stosowane są metody asocjacji danych, aby znaleźć stale poruszające się obiekty i wykryć wygenerowane błędne obszary. Preferowane metody modelowania konsekwentnie poruszającego się obiektu to
Ukryte Modele Markowa i sieci bayesowskie. Systemy nadzoru często działają w dwóch fazach: fazie uczenia się i fazie działania. W fazie uczenia system jest inicjowany na scenie, a modele są dostosowywane lub uczone na podstawie obserwacji. Modele te zawierają dane o normalnych czynnościach, takich jak pasy samochodów, punkty wjazdu lub typowe gesty człowieka. W fazie wykonawczej strumienie danych są porównywane z danymi modelu, aby uzyskać interpretacje i reakcje. Obecnie systemy mogą wykrywać i rozpoznawać zachowanie kilku osób aż do większych grup ludzi. W scenach drogowych przetwarzanie odbywa się głównie oddolnie, podczas gdy nowsze systemy wykorzystują wiedzę domenową w odgórny sposób. Przykładem jest zastosowanie modeli obiektowych i oczekiwanych modeli aktywności do monitorowania aktywności na fartuchach lotniskowych). W dziedzinie robotyki badano relację obiekt-człowiek w podejściach takich jak Programowanie przez Demonstrację (PbD), gdzie zadaniem jest interpretacja poleceń użytkownika w celu
nauczenia robota . W trybie PbD użytkownik albo fizycznie prowadzi ramię robota przez ruch, albo system wizyjny przechwytuje ruch ludzkiego ramienia i przenosi go na ramię robota. W ostatnich pracach czynności ręki i przedmiotów są interpretowane i przechowywane przy użyciu wyrażeń języka naturalnego w planie aktywności - zwięzłe przedstawienie scenariusza określającego odpowiednie obiekty i sposób ich działania. Wraz ze spadkiem kosztów kamer obecny kierunek prac dotyczy sieci kamer monitorujących duże obszary. Szczegółowe modele ludzi i ich typowe czynności dają lepszą interpretację gestów w mniej ograniczonych warunkach
Interakcja człowiek-maszyna
Przejście od technik obserwacji wzrokowej do opartego na wizji interaktywnego interfejsu człowiek-komputer wydaje się małym krokiem. Otwiera pełną gamę nowych aplikacji, w których komputery, monitory i urządzenia wejściowe, takie jak klawiatura i mysz, znikają w codziennym środowisku. Na przykład prosty gest i spojrzenie ręki może przenieść kolekcję zdjęć z aparatu na duży ekran telewizora w salonie, zmieniając ludzkie ciało w kontekstowy pilot zdalnego sterowania. Jakkolwiek atrakcyjny może być ten krok, jego realizacja napotyka kilka problemów technicznych i koncepcyjnych: (1) Reaktywność: System musi reagować na aktywność użytkownika w odpowiednio krótkim czasie. W przeciwnym razie użytkownik jest rozproszony, sfrustrowany i zagubiony w odniesieniu do stanu komunikacyjnego. Opracowano odpowiednie techniki rozpoznawania twarzy, wykrywania wzroku i rozpoznawania gestów oraz określają dziedzinę aktywnych badań. (2) Wytrzymałość: Wysokie współczynniki wykrywalności fałszywie dodatnich spowodowałyby niepożądane działanie systemu przez użytkownika i koliduje z ich oczekiwaniami. Jest to szczególnie problematyczne, ponieważ nie wszystkie zachowania użytkowników są kierowane do systemu. Ważną koncepcją jest wspólna uwaga - stan, w którym obaj partnerzy komunikacyjni zwracają uwagę na to samo i są świadomi swojej uwagi. Na przykład w interakcji człowiek-robot robot musi wykryć, kiedy użytkownik jest skierowany w jego stronę. W tym samym czasie głowa i oczy robota będą śledzić twarz użytkownika, aby wzmocnić ustanowioną komunikację. (3) Niezawodność: działania użytkownika częściowo pominięte przez system mogą uszkodzić dane wejściowe całego użytkownika do systemu. Dlatego musi istnieć sposób ustalenia, czy dane wejściowe są dobrze uformowane albo nie. Jest to trudny problem w nauce i rozpoznawaniu, ponieważ ludzie zazwyczaj wykonują zadania o dużej zmienności i nie są świadomi ograniczeń systemu. Jednym z interesujących kierunków badań jest zrozumienie, w jaki sposób ludzie komunikują oczekiwania w dialogu, na przykład zadając pytanie tak / nie lub stosując inne konwencje, które ograniczają możliwe odpowiedzi. (4) Sytuacja: interpretacja większości ludzkich zachowań zależy od kontekstu. Dlatego wiele systemów zaprojektowano z myślą o bardzo specyficznym scenariuszu lub domenie aplikacji. W celum przezwyciężenia tych ograniczeń ważnym pojęciem jest świadomość kontekstu - koncepcja wprowadzona w społeczności komputerów mobilnych (Schilit, Adams i Want 1994). W przypadku wizji komputerowej zastosowano ją do pomieszczeń spostrzegawczych, na przykład Crowley i inni. Tam działania człowieka są obserwowane przez wiele kamer i są podzielone na kategorie pod względem różnych kontekstów i sytuacji. W wyniku wyżej omówionych punktów badania nad opartą na wizji interakcją człowiek-maszyna zawsze muszą uwzględniać kompletne systemy wraz z ich partnerami interakcji, co czyni je wysoce interdyscyplinarnym zadaniem. Większość systemów w tym obszarze ściśle ogranicza ustawienia komunikacyjne. Wczesną pracę wykonał Bolt i jego koledzy w swoim systemie "Put-That-There". Użytkownik był w stanie tworzyć i przenosić elementy geometryczne na ekranie za pomocą gestów i poleceń głosowych. Dzisiejsze systemy obejmują szeroki zakres technik i aplikacji. SafetyEYE opracowany w badaniach przemysłowych ocenia promień działania przemysłowego robota produkcyjnego i zatrzymuje go w przypadku interferencji człowiek-maszyna. MIT Kidsroom zapewnia interaktywną przestrzeń zabaw narracyjnych dla dzieci (Bobick i in. 1999). Opiera się na wizualnych technikach rozpoznawania akcji połączonych z kontrolą obrazów, wideo, światła, muzyki, dźwięku i narracji. Crowley i inni opisują interaktywną Magiczną tablicę opartą na śledzeniu palców i oknie percepcyjnym, które przewija się, wykrywając ruchy głowy. W ostatnich latach śledzenie ciała stało się popularnym tematem komercyjnym dla konsol do gier, takich jak Sony PlayStation i Microsoft Xbox. Inną uwagę zwrócono na system VAMPIRE , który zapewniał pomoc ludziom w codziennych zadaniach, prowadząc ich krok po kroku przez przepis. Zostało to zademonstrowane w scenariuszu mieszania napojów i wykorzystano techniki rozpoznawania obiektów, śledzenia, lokalizacji i rozpoznawania akcji w celu uzyskania pomocy użytkownika w oparciu o techniki rzeczywistości rozszerzonej. Przeprowadzono wiele prac w celu połączenia mostu w komunikacji między ludźmi a robotami usługowymi zaprojektowanymi tak, by zachowywać się jak towarzysz w domu. Przykładami są PR2 z Willow Garage, Care-O-Bot 3 z Fraunhofer IPA, Cosero z University of Bonn lub ToBI z Bielefeld. Pierwszy z nich może złożyć pranie lub wypić napój z lodówki. Inni brali udział w konkursie RoboCup @ Home, który obejmuje szereg testów porównawczych, od osób śledzących i wprowadzających gości do sprzątania i pobierania napojów. W porównaniu z komunikacją człowiek-człowiek (HHC), interakcja człowiek-maszyna jest wciąż krucha i jest w powijakach. Dzisiejsze badania koncentrują się na naśladowaniu niektórych aspektów HHC w celu rozwiązania czterech opisanych wyzwań.
Zrozumienie kontekstu sceny
Większość podejść do widzenia komputerowego nie interpretuje całych obrazów, ale ich wybrane części. Ich celem jest wydobycie obiektów pierwszego planu z bałaganu w tle. Następnie każdy obiekt jest klasyfikowany osobno. Tło jest ignorowane i postrzegane jako nieistotne rozpraszające dane lub po prostu jako szum. Kontekstowe zrozumienie sceny przyjmuje przeciwstawne założenie, że obiektów pierwszego planu nie można automatycznie wyodrębnić lub przynajmniej nie zapewniają one wystarczających informacji do klasyfikacji. Przetwarza zignorowane wcześniej dane - bałagan w tle i informacje relacyjne - w celu ustalenia możliwych interpretacji obiektów na pierwszym planie. Zatem techniki te mają na celu włączenie kontekstu sceny do procesu klasyfikacji. Pionierskie prace zostały przeprowadzone przez Strata i Fischlera, którzy definiują zestawy kontekstów, które regulują wywoływanie kroków przetwarzania systemu. Identyfikują cztery różne rodzaje kryteriów, które obejmują zestawy kontekstów: (1) konteksty globalne - atrybuty całej sceny, takie jak dzień lub krajobraz; (2) lokalizacja - przestrzenna konfiguracja sceny, taka jak dotykanie ziemi lub zbieżność z innymi typami obiektów; (3) wygląd sąsiednich obiektów, takich jak podobieństwo lewego i prawego oka twarzy; oraz (4) funkcjonalność - rola obiektu w scenie, taka jak obsługa innego obiektu lub mostkowanie strumienia. Z kontrolnego punktu widzenia Strat i Fischler stosują trzy rodzaje operacji kontekstowych do kierowania procesem interpretacji sceny: generowanie hipotez, walidacja hipotez i porządkowanie hipotez. Podczas poszukiwania hipotez (generacji) konstruowane są spójne grupy uznanych bytów, które reprezentują częściowe interpretacje sceny. Główną wadą tego rodzaju podejścia jest ogromne zadanie inżynierii wiedzy w kodowaniu wiedzy kontekstowej systemu. Jednak ogólne typy wprowadzonych kontekstów i różne rodzaje zaprojektowanych zasad kontroli są nadal aktualne w obecnym stanie techniki. Późniejsze prace dostosowały modele probabilistyczne do interpretacji kontekstualnej, które systematycznie ujmują relacje i niepewność. Poniższe przykłady ilustrują najnowsze trendy dotyczące wprowadzonych wcześniej ogólnych typów kontekstów. Konteksty globalne służą do klasyfikowania miejsc semantycznych (np. ulica, miasto, plaża lub kategorie pomieszczeń wewnętrznych, takich jak kuchnia). W ten sposób obliczana jest holistyczna reprezentacja obrazu - tzw. Istota obrazu. Kategoria semantyczna zawiera oczekiwania dotyczące często występujących obiektów (takich jak te zwykle spotykane w kuchni). Lokalizacja jest modelowana przez Hoiema i współpracowników, którzy odnoszą detekcje obiektów do ogólnego kontekstu sceny 3D i oceniają skalę i lokalizację w odniesieniu do szacowanej geometrii sceny. Funkcjonalność wykorzystują Moore, Essa i Hayes, którzy łączą ludzkie działania i przedmioty za pomocą modelu probabilistycznego. Wprowadzają koncepcję przestrzeni obiektowych, które łączą oba rodzaje informacji w przestrzeni i czasie. Wreszcie konteksty językowe odnoszą się do dodatkowych informacji podawanych przez równoległy tekst lub mowę. Tego rodzaju dane bimodalne często pojawiają się w katalogach, gazetach, czasopismach, stronach internetowych, wiadomościach telewizyjnych, filmach lub dialogach interakcji człowiek-maszyna. Informacje słowne obejmują przede wszystkim wszystkie trzy typy informacji kontekstowych. Podpis pod zdjęciem mówiący o "ruchu ulicznym" w Nowym Jorku może dać wskazówkę, że obraz przedstawia scenę miejską. Inne opisy słowne, na przykład, że dwie osoby stoją obok siebie, zapewniają lokalne ograniczenia dla analizy obrazu. Konteksty funkcjonalne mogą pochodzić z czasowników, chociaż ta metoda nie była szeroko stosowana.
Podsumowanie i wnioski
Agenci, ludzcy lub sztuczni, muszą postrzegać swoje środowisko, aby móc w nim funkcjonować i przetrwać. Percepcja wzrokowa jest najsilniejszym ludzkim zmysłem, a praca w dziedzinie widzenia komputerowego ma na celu zapewnienie wymaganych możliwości. W tym rozdziale podsumowano główne osiągnięcia, zaczynając od przeglądu trendów i perspektyw, a następnie podkreślając główne obszary zastosowania. Obecnie maszyny mogą uczyć się, a następnie rozpoznawać obiekty z obrazów 2D zawierających do około 1000 obiektów, a liczba ta stale rośnie. Jest jednak ograniczony do baz danych obrazów, w których rozmiar obiektów lub typowe sceny są podobne. W otwartych środowiskach, takich jak zadania wyszukiwania w domach, różnice w oświetleniu, punkcie widzenia lub okluzji nadal stanowią wyzwanie. Podczas korzystania z obrazów 3D, na przykład ze skanerami laserowymi lub obrazami głębi, kształt obiektów można uzyskać i wykorzystać do sterowania procesami przemysłowymi, takimi jak chwytanie robotów lub malowanie natryskowe. Można wykonywać śledzenie obiektów lub punktów zainteresowania w dłuższych sekwencjach wideo w czasie rzeczywistym przy wystarczającej teksturze. Ustanowiono zasady wykorzystania informacji o obrazie oraz skutecznego przewidywania i wyszukiwania w kolejnych obrazach, a także dostępne wizualne metody serwomechanizmu do sterowania ramionami robota. Wydajność i niezawodność w czasie rzeczywistym osiągnięte dzięki dzisiejszym komputerowym technikom wizyjnym do śledzenia ręki, śledzenia ciała i ciała, rozpoznawania twarzy i tak dalej, prowadzą do nowej jakości opartej na wizji interakcji człowiek-maszyna. Omówiliśmy kilka wyzwań w tej nowej dziedzinie, która łączy obszary wizji komputerowej (CV) i interakcji człowiek-komputer (HCI). W ciągu ostatnich lat powstało kilka nowych serii warsztatów, takich jak CV4HCI i CV zorientowane na człowieka. Oczekujemy, że to małżeństwo zapewni dalsze owocne wpływy w terenie, biorąc pod uwagę dwie perspektywy: jak zaprojektować systemy CV dla użytkowników i jak skutecznie włączyć użytkownika w wizualną pętlę przetwarzania. Jednym z wyzwań była lokalizacja: biorąc pod uwagę jakąkolwiek sytuację podczas interakcji, kiedy i jaką informacją użytkownik powinien się przejmować? To samo pytanie można zadać dla systemu wizyjnego. Nie wszystkie informacje są ważne i nie wszystkie wyniki wykrywania są prawidłowe. Pojęcie kontekstu zapewnia pojęcie globalnej spójności z jednej strony, a ramy znaczenia z drugiej strony. Nawet przy dość wyrafinowanych i wydajnych technikach rozpoznawania kontekst zachowa swoją rolę, gdy mówimy o komputerowych systemach wizyjnych, które muszą działać w rzeczywistych środowiskach. Systemy wizyjne muszą łączyć techniki do celów aplikacji. To jest sedno CV jako dyscypliny inżynierskiej. Jednak przez lata udowodniono, że trudno jest zdefiniować ogólne architektury integrujące wszystkie komponenty potrzebne do różnych aplikacji. Niektóre pproache pokazały swoją przydatność w udanych projektach europejskich obejmujących wielu partnerów (np. ActIPret, VAMPIRE lub CogX). Rzeczywisty postęp jest trudny do osiągnięcia po stronie teoretycznej i musi być udowodniony praktyczną realizacją systemów (Kragic i Vincze 2009). Chociaż wyniki te wskazują postęp w tej dziedzinie, czeka nas kilka wyzwań. Na przykład praca nad rozpoznawaniem klas obiektów jest obecnie ograniczona do kilku istotnych klas, takich jak koła lub samoloty; zdolność wykrywania punktów chwytania na dowolnych obiektach musi zostać rozszerzona z lokalizacji płaskich do pełnych obiektów 3D; i nie można jeszcze wydedukować funkcji obiektu z obrazowania jego kształtu. Niemniej jednak istnieje nadzieja, że widzenie komputerowe będzie coraz bardziej integrowane z innymi metodami sztucznej inteligencji w celu tworzenia bardziej kompletnych systemów.