8 zabawnych pomysłów na projekty komputerowej wizji dla początkujących [2022]

Opublikowany: 2021-01-06

Sztuczna inteligencja i uczenie maszynowe mają wiele gałęzi, a wizja komputerowa jest jedną z najważniejszych. Jednym z najlepszych sposobów na naukę widzenia komputerowego jest realizowanie projektów widzenia komputerowego. Dlatego w tym artykule podzieliliśmy się naszymi najlepszymi pomysłami na projekty wizji komputerowej. Są one przeznaczone dla różnych poziomów umiejętności, więc możesz wybrać projekt (lub wiele projektów) zgodnie ze swoją wiedzą. Zacznijmy.

Spis treści

Nasze najlepsze pomysły na projekty wizji komputerowej

1. Wykonaj wykrywanie twarzy na swoich zdjęciach rodzinnych

Wykrywanie twarzy jest jednym z najpopularniejszych pomysłów na projekty wizji komputerowej. Ma zastosowania w wielu dziedzinach, takich jak bezpieczeństwo, media społecznościowe, opieka zdrowotna itp. Niezależnie od tego, czy jesteś początkującym, czy zaawansowanym programistą, możesz z łatwością znaleźć projekt wykrywania twarzy, nad którym możesz pracować. Wykrywanie twarzy to znaczna część wizji komputerowej, a jeśli chcesz zostać ekspertem, powinieneś pracować nad kilkoma projektami wykrywania twarzy.

Jeśli jesteś początkującym, powinieneś zacząć od biblioteki Face Recognition w Pythonie . Jest to łatwa w użyciu biblioteka z prostymi poleceniami dla określonych implementacji rozpoznawania twarzy. Jednak powinieneś mieć doświadczenie w programowaniu w Pythonie, aby korzystać z tej biblioteki. Ta biblioteka zawiera proste polecenie rozpoznawania twarzy, które pozwala szybko identyfikować twarze.

Z drugiej strony, jeśli jesteś zaawansowanym programistą, możesz użyć OpenCV do identyfikacji twarzy na obrazach. Możesz połączyć bibliotekę rozpoznawania twarzy z innymi bibliotekami Pythona, aby tworzyć bardziej złożone rozwiązania.

Jak sprawić, by projekt był bardziej wymagający

Możesz opracować model, który identyfikuje twarze w filmach. Z drugiej strony możesz nauczyć swoją modelkę rozpoznawania osób na zdjęciach grupowych. Oznacza to, że model powinien rozpoznać osobę obecną na zdjęciu. W tym celu musisz wytrenować model z niestandardowym zestawem danych zawierającym obrazy osób, które model ma rozpoznawać.

2. Zbuduj rozwiązanie do liczenia osób

Liczenie osób jest ważnym zastosowaniem technologii widzenia komputerowego. Wraz z niedawną pandemią znacznie wzrosła wartość rozwiązań z zakresu liczenia osób. Możesz użyć OpenCV i Pythona do zbudowania modelu do obliczania całkowitej liczby osób obecnych na zdjęciu.

Rozwiązanie polegające na liczeniu ludzi może odegrać kluczową rolę w obecnym świecie, w którym dystans społeczny ma kluczowe znaczenie dla przetrwania. Jako początkujący powinieneś zacząć od prostego modelu pomiaru osób, który może policzyć liczbę osób obecnych na zdjęciu.

Jak sprawić, by projekt był bardziej wymagający

Jeśli chcesz, aby ten projekt był bardziej skomplikowany lub zaawansowany, możesz dodać więcej funkcjonalności. Na przykład utwórz rozwiązanie, które zlicza liczbę osób obecnych w miejscu publicznym, aby wymusić zasady dystansu społecznego. Byłaby pewna liczba ludzi, poza którą byłoby nieprawdopodobne, aby podążać za odpowiednim dystansem społecznym.

Dołącz do kursu ML online z najlepszych światowych uniwersytetów — studiów magisterskich, programów podyplomowych dla kadry kierowniczej i zaawansowanego programu certyfikacji w ML i AI, aby przyspieszyć swoją karierę.

3. Ćwicz rozpoznawanie obiektów za pomocą zestawu danych Open Images

Jeśli jesteś początkującym i nie pracowałeś wcześniej nad projektami przetwarzania obrazu, powinieneś zapoznać się z zestawem danych Google Open Images. Jest to zbiór około dziewięciu milionów różnych obrazów zawierających bogate adnotacje. Zdjęcia są różnego rodzaju, a wiele z nich zawiera nawet złożone sceny z wieloma obiektami. Ma ramki ograniczające obiekty, relacje wizualne, adnotacje etykiet i wiele rzeczy, które sprawiają, że jest idealny dla każdego entuzjasty wizji komputerowej.

Możesz trenować swoje modele za pomocą zestawu danych Open Images.

Dowiedz się: Klasyfikacja obrazów Tensorflow 2.0

4. Wykonaj klasyfikację obrazu na CIFAR-10

Klasyfikacja obrazów jest popularnym zastosowaniem głębokiego uczenia widzenia komputerowego. Aby pracować nad tym projektem, powinieneś znać Python, Keras i TensorFlow. Możesz użyć zestawu danych CIFAR-10 do przeprowadzenia klasyfikacji obrazów. Ma ponad 60 000 zdjęć z dziesięcioma klasami docelowymi.

Każda klasa docelowa ma 6000 obrazów. Zdjęcia znajdujące się w tym zestawie danych mają stosunkowo niską rozdzielczość, dzięki czemu można przetestować wiele algorytmów bez problemów technicznych. Klasyfikacja obrazu skupia się na oddzieleniu pikseli obrazu zgodnie z klasami, do których należą.

Aby ukończyć ten projekt, musiałbyś zbudować splotową sieć neuronową za pośrednictwem Keras.

Nie będziesz musiał pobierać zestawu danych CIFAR-10 osobno, jeśli masz już Keras. To dlatego, że jest obecny w module zestawów danych.

Pracując nad tym projektem, dowiesz się wiele o klasyfikacji obrazów. Będziesz także mógł korzystać z TensorFlow i Keras, dwóch najbardziej znanych narzędzi sztucznej inteligencji w branży. Praca nad tym projektem pomoże Ci poznać ich cechy i funkcjonalności.

Jak sprawić, by projekt był bardziej wymagający

Aby uczynić ten projekt bardziej wymagającym, możesz dodać GUI do swojego rozwiązania. GUI (graficzny interfejs użytkownika) umożliwiłby użytkownikowi wprowadzanie obrazów do testowego zestawu danych modelu w celu analizy. Powinieneś znać bibliotekę Pythona Tkinter, aby zbudować GUI. W ten sposób będziesz mieć działające rozwiązanie programowe, które może przeprowadzić klasyfikację obrazów na żądanych zestawach danych.

5. Wykryj kolory w obrazach

Wykrywanie kolorów na obrazach to kluczowa część wizji komputerowej. Może wydawać się to łatwe, ale na pewno tak nie jest. Istnieje wiele zastosowań modelu wykrywania kolorów. Na przykład możesz go używać w oprogramowaniu do edycji zdjęć. Wykrywanie kolorów to ogromna część zielonego ekranowania, które stało się dość popularne w branży medialnej i rozrywkowej.

Celem twojego modelu byłoby wykrycie każdego koloru obecnego na obrazie. Do trenowania modelu możesz użyć zbioru danych Google-512. Jest to zbiór obrazów internetowych podzielonych według ich podstawowych kolorów i ma kolory czarny, czerwony, biały, żółty, pomarańczowy, niebieski, szary, fioletowy, różowy i brązowy. Tutaj możesz pobrać zbiór danych Google-512.

Zamówienie: pomysły na projekty sztucznej inteligencji

Jak sprawić, by projekt był bardziej wymagający

Jak wspomnieliśmy wcześniej, green screening jest prawdopodobnie najpopularniejszym zastosowaniem technologii wykrywania kolorów. Zielone ekrany to, jak sama nazwa wskazuje, ekrany w kolorze zielonym. Pozwalają użytkownikom zmienić tło obrazu lub wideo na dowolne zdjęcie lub wideo. Oprogramowanie identyfikuje wtedy zielony kolor ekranu i zastępuje go wybranym obrazem lub wideo. Możesz zbudować model przypominający zielony ekran.

6. Naucz się śledzenia obiektów

Śledzenie obiektów to zaawansowane zastosowanie wizji komputerowej. Chociaż na naszej liście omawialiśmy głównie projekty przetwarzania obrazu, ten projekt koncentruje się na analizie wideo. Model śledzenia obiektów identyfikuje i śledzi określony obiekt w filmie. Model wykonuje dwa konkretne zadania w śledzeniu obiektów. Musi przewidzieć następny stan obiektu zgodnie z aktualnym stanem. Następnie model musi skorygować stan zgodnie z rzeczywistym stanem obiektu.

Do pracy nad tym projektem możesz użyć zbioru danych TLP. Zawiera 50 filmów w wysokiej rozdzielczości przedstawiających rzeczywiste scenariusze. Ma ponad 400 minut różnych klipów. Twórcy zestawu danych TLP mają również mniejszy zestaw danych o nazwie TinyTLP. Ma pierwsze 20 sekund każdego klipu obecnego w zestawie danych TLP. Możesz dowiedzieć się więcej o zbiorze danych TLP tutaj .

7. Policz pojazdy na obrazach i filmach

System liczenia pojazdów może być bardzo przydatny do zarządzania ruchem. Może być również pomocny w przypadku samochodów bez kierowcy. W tym projekcie zbudowałbyś model liczenia pojazdów, który może policzyć liczbę samochodów i rowerów obecnych na obrazie. Powinien być w stanie je policzyć w trudnych scenariuszach (obrazy z wysokimi cieniami lub okluzją). Aby pracować nad tym projektem, możesz skorzystać z Bazy Obrazów Pojazdów, zbioru ponad 3425 obrazów pojazdów.

Korzystając z tego zestawu danych, możesz nauczyć swój model rozpoznawania samochodów. Powinieneś zapoznać się z rozpoznawaniem obiektów przed rozpoczęciem pracy nad tym projektem. Baza danych zawiera również 3900 zdjęć sekwencji dróg bez pojazdów. W bazie danych obrazów pojazdów dostępnych jest wiele klas, dzięki czemu możesz rygorystycznie trenować swój model.

8. Zbuduj skaner kodów QR

Na pewno zauważyłeś, jak popularne stały się kody QR w ostatnich latach. UPI, Paytm, PhonePe i inne cyfrowe aplikacje płatnicze sprawiły, że kody QR stały się bardzo popularne ze względu na ich proste implementacje. Skanery kodów QR wykorzystują wizję komputerową do analizy obrazu. Tak więc w tym projekcie musisz zbudować skaner kodów QR.

Do zbudowania skanera musiałbyś użyć OpenCV. Oznacza to, że przed rozpoczęciem pracy nad tym projektem powinieneś również zapoznać się z programowaniem w Pythonie. Oprócz OpenCV wykorzystasz w tym projekcie pyzbar , bibliotekę Pythona dedykowaną do skanowania kodów QR i kodów kreskowych.

Praca nad tym projektem pozwoli Ci zapoznać się z rzeczywistymi zastosowaniami wizji komputerowej. Ponadto będziesz mieć działający skaner kodów QR, który możesz zintegrować z innym projektem.

Jak sprawić, by projekt był bardziej wymagający

Aby uczynić ten projekt bardziej skomplikowanym, możesz dodać do swojego modelu funkcjonalność skanowania kodów kreskowych. Istnieją znaczne różnice między kodami kreskowymi a kodami QR. Do stworzenia skanera kodów kreskowych musiałbyś użyć Pyzbara. Możesz pójść o krok dalej, łącząc skaner kodów QR i skaner kodów kreskowych w jedno rozwiązanie.

Przeczytaj: Pomysły na projekty uczenia maszynowego

Dowiedz się więcej o sztucznej inteligencji i uczeniu maszynowym

Mamy nadzieję, że podobało Ci się czytanie tego artykułu na temat pomysłów na projekty wizji komputerowej. Jeśli masz jakieś pytania lub sugestie na ten temat, daj nam znać. Chcielibyśmy usłyszeć od ciebie.

Pracując nad wieloma projektami wizji komputerowej, możesz rozwinąć niezbędne umiejętności, aby zostać ekspertem w tej dziedzinie. Projekty pomagają również w znalezieniu Twoich niedociągnięć. Jeśli chcesz dowiedzieć się więcej o wizji komputerowej, możesz zajrzeć na naszego bloga.

Z drugiej strony, jeśli chcesz spersonalizowanej nauki, zalecamy wzięcie udziału w kursie uczenia maszynowego . Kurs uczenia maszynowego pozwoli Ci uczyć się od ekspertów branżowych poprzez interaktywne quizy, filmy i projekty.

Sprawdź Advanced Certification Program in Machine Learning & Cloud z IIT Madras, najlepszą szkołą inżynierską w kraju, aby stworzyć program, który nauczy Cię nie tylko uczenia maszynowego, ale także skutecznego jego wdrażania z wykorzystaniem infrastruktury chmury. Naszym celem w ramach tego programu jest otwarcie drzwi najbardziej selektywnego instytutu w kraju i zapewnienie uczniom dostępu do niesamowitych wydziałów i zasobów, aby opanować umiejętność, która jest na wysokim poziomie i rośnie

Które projekty obróbki obrazu podobały Ci się najbardziej? Planujesz pracę nad projektem? Daj nam znać w komentarzach.

Czym różni się widzenie komputerowe od przetwarzania obrazu?

Widzenie komputerowe jest wersją przetwarzania obrazu wyższego poziomu, w której sygnał wejściowy jest obrazem, a wynikiem jest interpretacja obrazu, a nie obraz. Zasadnicze rozróżnienie dotyczy raczej celów niż technik. Przetwarzanie obrazu jest stosowane, gdy celem jest ulepszenie obrazu do późniejszego użycia. Z drugiej strony, widzenie komputerowe zajmuje się symulacją wizji podobnej do ludzkiego w celu wykrywania obiektów. Kluczowe znaczenie ma zrozumienie kluczowych różnic. Przetwarzanie obrazu jest jednym z elementów Computer Vision, ponieważ metody przetwarzania obrazu są używane do prawidłowego działania Computer Vision.

Jakie są zastosowania Computer Vision?

Samochody autonomiczne wykorzystują wizję komputerową, aby zrozumieć swoje otoczenie. Kamery wokół samochodu zbierają wideo pod różnymi kątami i przesyłają je do oprogramowania do rozpoznawania obiektów, które przetwarza obrazy w czasie rzeczywistym, aby zlokalizować krawędzie dróg, odczytać znaki drogowe i wykryć inne samochody, obiekty i pieszych. Aplikacje do identyfikacji twarzy, które wykorzystują widzenie komputerowe do dopasowywania obrazów twarzy ludzi do ich tożsamości, to kolejny obszar, w którym widzenie komputerowe odgrywa kluczową rolę. Wizja komputerowa odegrała również znaczącą rolę w postępach w dziedzinie technologii medycznych. Algorytmy komputerowe mogą pomóc w automatyzacji zadań, takich jak wykrywanie złośliwych znamion na zdjęciach skóry i lokalizowanie objawów na zdjęciach rentgenowskich i rezonansach magnetycznych.

Jaka jest rola CV w rozszerzonej i mieszanej rzeczywistości?

Widzenie komputerowe jest szczególnie ważne w rzeczywistości rozszerzonej i mieszanej, która umożliwia urządzeniom komputerowym, takim jak smartfony, tablety i urządzenia do noszenia, nakładanie i osadzanie wirtualnych obiektów na obrazach ze świata rzeczywistego. Sprzęt AR wykrywa przedmioty w rzeczywistym środowisku za pomocą wizji komputerowej, aby określić, gdzie wirtualny obiekt powinien zostać umieszczony na wyświetlaczu urządzenia. Na przykład algorytmy widzenia komputerowego mogą pomóc aplikacjom AR w wykrywaniu płaszczyzn, takich jak blaty, ściany i podłogi, co jest kluczowym aspektem określania głębokości i wymiarów oraz umieszczania wirtualnych przedmiotów w rzeczywistym środowisku.