845 Shares 9910 views

Nowoczesny komputer wizja. Zadania i technologia wizja komputer. Informatyk Vision w Pythonie

Jak nauczyć komputer, aby zrozumieć, co jest przedstawione na rysunku lub zdjęcia? To wydaje się proste, ale na komputerze, jest to po prostu macierz składająca się z zer i jedynek, z którego chcesz wyodrębnić ważne informacje.

Jaka jest wizja komputer? Jest to zdolność do „zobaczyć” komputer

Vision – jest ważnym źródłem informacji dla osoby używającej go otrzymamy, według różnych szacunków, od 70 do 90% wszystkich informacji. I, oczywiście, jeśli chcemy stworzyć inteligentnego samochodu, musimy wdrożyć te same umiejętności i komputer.

Problem wizji komputerowej można stwierdzić dość wyraźnie. Co to jest „widzieć”? Zrozumiałe jest, że tam, gdzie są po prostu patrząc. Że zawarta różnice w wizji komputerowej i ludzkiego wzroku. Wizja dla nas – jest źródłem wiedzy o świecie, a także źródłem informacji metrycznej – czyli zdolność do zrozumienia odległości i rozmiary.

Semantyczny obraz jądra

Patrząc na obraz, możemy opisać go przez szereg atrybutów, by tak rzec, aby wydobyć informacje semantyczne.

Na przykład, patrząc na to zdjęcie, możemy powiedzieć, że jest na zewnątrz. Jaki jest ruch miejski. Że istnieją samochody. możemy się domyślać, że jest to Azji Południowo-Wschodniej od konfiguracji budynku i hieroglify. Portret Mao Zedonga zrozumieć, że jest Pekin, a jeśli ktoś widział wideo na żywo lub sam był tam, by odgadnąć, że jest to słynny Plac Tiananmen.

Co więcej możemy powiedzieć o obrazie, widząc go? Możemy identyfikacji obiektów na obrazie, aby powiedzieć, że są ludzie, tu bliżej – ogrodzenie. Tutaj parasole, plakatów budynku. Są to przykłady zajęć jest bardzo ważne przedmioty, które są zaangażowane w poszukiwaniu tej chwili.

Nadal możemy dowiedzieć się kilku cech lub atrybutów obiektów. Na przykład, tutaj możemy stwierdzić, że nie jest to portret zwykłych Chińczyków, a mianowicie, Mao Zedong.

Według pojazdu można określić, że poruszający się obiekt, i to mocno, że nie ulega deformacji podczas ruchu. O flagi można powiedzieć, że obiekty, są one również w ruchu, ale nie są one trudne, ciągle zdeformowane. A w scenie jest wiatr, który może być określony poprzez rozwijanie flagi, a nawet może określić kierunek wiatru, na przykład, jest wiejący od strony lewej do prawej.

Odległości i długości w wizji komputerowej

Bardzo ważne jest metryką informacje o nauce Computer Vision. To wszelkiego rodzaju dystansach. Na przykład, dla łazika jest szczególnie ważne, ponieważ zespoły są z Ziemi około 20 minut i odpowiedzieć na jak najwięcej. Zgodnie z tym, tam i z powrotem link – 40 minut. A jeśli robimy plan komend ruchu Ziemi, trzeba wziąć to pod uwagę.

Powodzeniem zintegrowane technologię widzenia komputera w grach wideo. Zgodnie z filmu, można zbudować trójwymiarowe modele obiektów, ludzi, a zdjęcia na użytkownik może przywrócić trójwymiarowe modele miast. A potem chodzić na nich.

wizja komputer – dość szeroki zakres. Jest to ściśle powiązane z różnymi innymi naukami. Część wizji komputerowej To oddaje obszar przetwarzania obrazu, a czasem przydziela wizji komputerowej, historycznie.

Analiza, rozpoznawanie wzorców – ścieżka do stworzenia wyższej inteligencji

Zbadajmy te koncepcje oddzielnie.

Przetwarzanie obrazu – jest to obszar algorytmów, w których wejście i wyjście – obraz, a my mamy mu coś zrobić.

analiza obrazu – jest to obszar widzenia komputerowego, który skupia się na pracy z obrazem dwuwymiarowym i wyciągać wnioski z tego.

Pattern Recognition – streszczenie matematyczny dyscypliną, która rozpoznaje dane w postaci wektorów. Oznacza to, że przy wejściu – wektor i musimy coś z tym zrobić. Gdzie wektor jest, że nie są tak ważne, aby wiedzieć.

Computer Vision – to pierwotnie było przywrócenie struktury dwuwymiarowe obrazy. Dziś obszar ten stał się szerszy i może być interpretowane jako akceptacja wszystkich fizycznych obiektów wchodzących, oparty na obrazie. Oznacza to, że jest to zadanie sztucznej inteligencji.

Równolegle z wizji komputerowej w zupełnie innej dziedzinie, w geodezji, fotogrametrii ewoluowała – pomiar odległości pomiędzy obiektami na obrazach dwuwymiarowych.

Roboty mogą „zobaczyć”

I wreszcie – jest to maszyna wizja. Pod widzenia maszynowego oznacza wizję robotów. Jest to decyzja pewnych problemów produkcyjnych. Można powiedzieć, że komputer wizja to jedna wielka nauka. Łączy on w sobie niektóre z drugiej strony nauki. A kiedy wizja komputer pobiera żadnej konkretnej aplikacji, to zamienia się w widzeniu maszynowym.

Region wizja komputer ma masę praktycznych zastosowań. Jest to związane z automatyzacją produkcji. W przedsiębiorstwach stają się bardziej wydajne, aby zastąpić pracy ręcznej przez maszyny. Urządzenie nie znudzi, nie śpi, nie miała nieregularny harmonogram pracy, ona jest gotowa do pracy przez 365 dni w roku. Więc korzystając z pracy maszyny, możemy otrzymać gwarantowany wynik w określonym czasie, a to jest dość interesująca. Wszystkie zadania mają wyraźne zastosowanie dla systemów wizyjnych komputer. I nie ma nic lepszego niż aby natychmiast zobaczyć wyniki na zdjęciu tylko na etapie obliczeń.

Na progu świata sztucznej inteligencji

Plus obszar – trudno! Znaczna część mózgu odpowiedzialna za widzenie, i uważa się, że jeśli uczysz komputer „widzi”, to znaczy pełne wykorzystanie komputera wizja, jest to jeden z celów pełnym sztucznej inteligencji. Jeśli uda nam się rozwiązać problem na poziomie ludzkim, najprawdopodobniej w tym samym czasie, będziemy rozwiązać problem AI. To jest bardzo dobry! Czy nie bardzo dobry, jeśli spojrzeć, „Terminator 2”.

Dlaczego wizja – to jest trudne? Ponieważ obraz z tego samego obiektu może się znacznie różnić w zależności od czynników zewnętrznych. W zależności od przedmiotu punktów obserwacyjnych wyglądać inaczej.

Na przykład, w jednym i tym samym rysunku, wykonane z różnych kątów. A co jest najbardziej interesujące w rysunku może być jedno oko, oczy dwa i pół. I w zależności od kontekstu (czy to obraz człowieka w koszulce z oczami malowane), oko może być więcej niż dwa.

Komputer nadal nie rozumie, ale to „widzi”

Innym czynnikiem, który sprawia, że trudno – to oświetlenie. Ta sama scena z innego oświetlenia będzie wyglądać inaczej. wielkość obiektu może być różna. Ponadto przedmiotem jakiejkolwiek klasy. Jak można powiedzieć o człowieku, że jego wysokość 2 metrów? Nic. wzrostu człowieka i może być 2,3 m, a 80 cm. Tak jak w przypadku innych typów obiektów, są jednak przedmiotem tej samej klasy.

Szczególnie żyjące obiekty poddane różnych szczepów. Włosy ludzie, sportowcy, zwierzęta. Spójrz na zdjęcia koni z systemem, należy określić, co się dzieje z ich grzywy i ogona jest po prostu niemożliwe. A nakładających się obiektów w obrazie? Jeśli wpakować obrazu komputerowego, nawet najbardziej potężną maszyną znaleźć trudności, aby dać właściwą decyzję.

Następny widok – to przebranie. Niektóre przedmioty, zwierzęta, a udaje środowiska i dość umiejętnie. I te same miejsca i koloryt. Niemniej jednak widzimy je, choć nie zawsze z daleka.

Kolejny problem – ruch. Przedmiotów w ruchu niewyobrażalnej odkształceniu.

Wiele z tych przedmiotów są bardzo zmienne. Oto, na przykład, w dwóch poniższych zdjęciach z przedmiotów „krzesło”.

I na tym można usiąść. Ale nauczyć maszynę tak, że różne rzeczy kształtu, koloru, materiału, wszystko jest obiektem „krzesło” – jest bardzo trudne. To jest wyzwanie. Zintegrowanie metod wizji komputerowej – jest nauczyć maszynę do zrozumienia, analizować spekulować.

Integracja wizji komputerowej w różnych platformach

Masę wizji komputerowej zaczął penetrować więcej w 2001 roku, kiedy powstał pierwszy wykrywacz twarzy. Zrobiliśmy to dwa autorzy: Viola, Jones. Było to pierwsze na tyle szybki i niezawodny algorytm, który wykazał moc metod uczenia maszynowego.

Teraz wizja komputer ma wystarczającej ilości nowych zastosowań praktycznych – uznanie ludzkiej twarzy.

Ale rozpoznać człowieka, jak w kinie – w losowych kątów różnych warunkach oświetleniowych – jest to niemożliwe. Jednak, aby rozwiązać problem, lub taki, który jest różnych ludzi z różnym oświetleniu lub w innej pozie, podobnie jak na zdjęciu w paszporcie, możliwe jest z wysokim stopniem pewności.

A wymagania paszport zdjęcia w dużej mierze ze względu na cechy algorytmów rozpoznawania twarzy.

Na przykład, jeśli masz paszport biometryczny, w niektórych nowoczesnych lotnisk, można skorzystać z automatycznego systemu kontroli paszportowej.

Nierozwiązanym problemem widzenia komputerowego – umiejętność rozpoznawania dowolny tekst

Może ktoś użył systemu OCR. Jeden z nich – A Fine Reader jest bardzo popularny w systemie RuNet. Istnieje wiele form, gdzie wypełnienie danych, są one doskonale zeskanowane, informacja jest rozpoznawane przez system bardzo dobrze. Ale z dowolnego tekstu w obrazie sytuacja jest znacznie gorsza. Ten problem wciąż pozostaje nierozwiązany.

Gry polegające wizji komputerowej, motion capture

Oddzielny duży obszar – jest tworzenie trójwymiarowych modeli i przechwytywania ruchu (który jest z powodzeniem realizowany w grach komputerowych). Pierwszy program, który wykorzystuje Computer Vision – system interakcji z komputerem za pomocą gestów. Kiedy to został utworzony było wiele rzeczy otwarte.

Algorytm został zaprojektowany po prostu, ale skonfigurować zajęło stworzyć generator syntetycznych obrazów ludzi, aby dostać milion zdjęć. Superkomputer z nich do wyboru parametrów algorytmu, za który teraz działa dobrze.

To milion zdjęć i tydzień czasu policzalny superkomputer można stworzyć algorytm, który zużywa 12% pojemności jednego procesora i pozwala osobie postrzegania pozycji w czasie rzeczywistym. Ten system Microsoft Kinect (2010).

Szukaj obrazów według zawartości pozwala na przesyłanie zdjęć do komputera, a wyniki jej dadzą wszystkie zdjęcia z tej samej treści i wykonane z tego samego kąta.

Przykłady wizji komputerowej: trójwymiarowe i dwuwymiarowe mapy są teraz wykonane z niego. Mapy do nawigacji samochody są regularnie aktualizowane zgodnie z rejestratora.

Jest to baza danych z miliardów zdjęć oznaczonych znacznikami geograficznymi. Pobierając obraz w bazie danych, można określić, gdzie został wykonany, a nawet z pewną perspektywę. Oczywiście, pod warunkiem, że miejsce jest na tyle popularny, że w jednym czasie turyści i popełnił kilka zdjęć obszaru tam.

roboty są wszędzie

Robotyka w obecnym czasie, wszędzie, bez niego w jakikolwiek sposób. Teraz są pojazdy, które mają specjalne aparaty, które rozpoznają pieszych i znaki drogowe do przesyłania poleceń do sterownika (to w taki sposób, program komputerowy, aby zobaczyć, pomaga kierowca). I jest w pełni zautomatyzowane pojazdy robotów, ale nie mogą polegać wyłącznie na system kamer wideo bez użycia dużej ilości dodatkowych informacji.

Nowoczesny aparat – jest to analog camera obscura

Porozmawiajmy o obrazie cyfrowym. Nowoczesne aparaty cyfrowe są ułożone na zasadzie camera obscura. Tylko zamiast otworu, przez którą światło wchodzi do belki i wystający na ściance tylnej komory z obwodem przedmiotu, mamy specjalny system optyczny zwany obiektywu. Jej celem jest zbieranie dużej wiązki światła i konwersji tak, że wszystkie promienie przeprowadzany przez punkt wirtualnego w celu uzyskania występu i utworzenia obrazu na folii lub matrycy.

Nowoczesnych cyfrowych aparatów fotograficznych (matrycowe), składa się z poszczególnych elementów, – pikseli. Każdy piksel może mierzyć energię światła, które pada na łączną pikseli i wydać jeden numer wyjściowy. Dlatego też, w aparacie cyfrowym, otrzymujemy zamiast jasności obrazu pomiarów zestaw lekkich, złowione w pojedynczego piksela – komputer pole widzenia. Dlatego też, gdy obraz widzimy nie jest płynne linie i wyraźne kontury i siatki kolorowych kwadratów w różnych kolorach – pikseli.

Poniżej można zobaczyć pierwszy obraz cyfrowy na świecie.

Ale na tym zdjęciu nie jest? Kolor. Czym jest kolor?

Psychologiczne postrzeganie koloru

Kolor – to jest to, co widzimy. Kolor jedną i tą samą rzeczą dla ludzi i koty będą różne. Ponieważ (ludzi) i zwierzęcego układu optycznego – wizja jest inna. Dlatego kolor – to psychologiczny jakość naszej wizji, która występuje podczas obserwacji obiektów i światło. A nie fizyczną właściwość obiektu i światła. Kolor – jest wynikiem interakcji lekkich komponentów, a na scenie naszego układu wzrokowego.

Informatyk Vision w Pythonie z wykorzystaniem bibliotek

Jeśli zdecydowaliśmy się zaangażować poważnie w badaniu widzenia komputera, należy natychmiast przygotować na szereg trudności, nauka ta nie jest najłatwiejszym i kryje wiele pułapek. Ale „Programowanie Computer Vision w Pythonie” autorstwa Jana Erika SOLEMA – książki, która wyznacza wszystkie najbardziej prostym językiem. Tutaj można zapoznać się z metodami rozpoznawania różnych obiektów w 3D, nauczyć się pracować z obrazem stereo, rzeczywistości wirtualnej i wielu innych aplikacjach widzenia komputerowego. W książce są w Pythonie wystarczająco dużo przykładów. Ale wyjaśnienia prezentowane są, że tak powiem, uogólnione, tak aby nie przeciążać zbyt wiele badań i twarde dane. Pracować odpowiedni dla studentów, amatorów i entuzjastów. Pobierz tę książkę i innych o wizji komputera (formacie pdf) może być w sieci.

W chwili obecnej istnieje biblioteka open source algorytmów wizyjnych komputer i przetwarzania obrazu i algorytmy numeryczne OpenCV. Jest on realizowany w większości współczesnych języków programowania, jest open source. Jeśli mówimy o wizji komputerowej, Python używa jako język programowania, posiada również wsparcie biblioteki, dodatkowo, jest to ciągle się rozwija i ma wielką wspólnotę.

Firma „Microsoft” świadczy usługi Api-stanie trenować sieci neuronowej do pracy go z wizerunkami ludzi. Istnieje również możliwość zastosowania wizji komputerowej, Python używa jako języka programowania.