18 All-Time clasic Open Source Computer Vision proiecte pentru incepatori

Prezentare generală

  • open source computer vision proiecte sunt un segway mare de aterizare un rol în industria de învățare profundă
  • începe să lucreze la aceste 18 populare și all-time clasic open source computer vision proiecte

Introducere

aplicațiile de viziune computerizată sunt omniprezente chiar acum. Sincer, nu-mi amintesc ultima dată când am trecut printr-o zi întreagă fără să întâlnesc sau să interacționez cu cel puțin un caz de utilizare a viziunii computerului (salut recunoaștere facială pe telefonul meu!).

dar aici e lucru – oamenii care doresc să învețe viziune de calculator tind să se blocheze în conceptele teoretice. Și asta e cea mai proastă cale pe care o poți lua! Pentru a învăța cu adevărat și a stăpâni viziunea computerizată, trebuie să combinăm teoria cu experiența practică.

și aici intră proiectele open source computer vision. Nu trebuie să cheltuiți niciun ban pentru a vă exersa abilitățile de viziune pe computer – o puteți face stând chiar acolo unde vă aflați acum!

open-source computer vision projects

Deci, în acest articol, am coalizat și a creat o listă de proiecte Open-Source Computer Vision bazate pe diverse aplicații de Computer vision. Sunt multe de parcurs și aceasta este o listă destul de cuprinzătoare, așa că haideți să săpăm!

dacă sunteți complet nou în viziunea computerului și învățarea profundă și preferați învățarea sub formă video, verificați acest lucru:

  • viziunea computerizată folosind învățarea profundă 2.0

cele 18 proiecte Open Source Computer Vision sunt împărțite în aceste categorii:

  • Clasificarea imaginii
  • recunoașterea feței
  • transfer de stil Neural folosind GANs
  • detectarea textului scenei
  • detectarea obiectelor cu DETR
  • segmentarea semantică
  • detectarea benzii rutiere în vehicule autonome
  • image captioning
  • Human Pose estimation projects
  • recunoașterea emoțiilor prin expresii faciale

Open-Source Computer Vision projects for image classification

image classification is a fundamental task in computer vision. Aici, scopul este de a clasifica o imagine atribuindu-i o etichetă specifică. Este ușor pentru noi, oamenii, să înțelegem și să clasificăm imaginile pe care le vedem. Dar cazul este foarte diferit pentru o mașină. Este o sarcină oneroasă pentru o mașină să se diferențieze între o mașină și un elefant.

iată două dintre cele mai proeminente proiecte open-source pentru clasificarea imaginilor:

  1. Cifar 10

    setul de date CIFAR-10 este o colecție de imagini care sunt utilizate în mod obișnuit pentru a instrui algoritmi de învățare automată și viziune pe calculator. Este unul dintre cele mai populare seturi de date pentru cercetarea învățării automate. Acesta conține 60.000, 32 de imagini 32 de culori în 10 clase diferite. Clasele reprezintă avioane, mașini, păsări, pisici, căprioare, câini, broaște, cai, nave și camioane.

  2. ImageNet

    setul de date ImageNet este o bază de date vizuală mare pentru utilizarea în cercetarea viziunii pe calculator. Peste 14 milioane de imagini au fost adnotate manual de proiect pentru a indica ce obiecte sunt fotografiate și în cel puțin un milion de imagini, sunt furnizate și cutii de încadrare. ImageNet conține mai mult de 20.000 de categorii!

ca începător, puteți începe cu o rețea neuronală de la zero folosind Keras sau PyTorch. Pentru rezultate mai bune și creșterea nivelului de învățare, vă voi sfătui să utilizați învățarea prin transfer prin modele pre-instruite precum VGG-16, Restnet – 50, Googlenet etc.

proiecte de viziune computerizată open-source -

vă recomand să parcurgeți articolul de mai jos pentru a afla mai multe despre clasificarea imaginilor:

  • Top 4 modele pre-instruite pentru clasificarea imaginilor cu cod Python

aș sugera, de asemenea, să parcurgeți lucrările de mai jos pentru o mai bună înțelegere a clasificării imaginilor:

  • Clasificarea ImageNet cu rețele neuronale convoluționale profunde
  • Mergând mai adânc cu convoluții
  • învățare reziduală profundă pentru recunoașterea imaginilor

proiecte de viziune computerizată Open-Source pentru recunoașterea feței

recunoașterea feței este una dintre aplicațiile proeminente ale viziunii computerizate. Este folosit pentru securitate, supraveghere sau pentru deblocarea dispozitivelor. Este sarcina de a identifica fețele dintr-o imagine sau un videoclip împotriva unei baze de date preexistente. Putem folosi metode de învățare profundă pentru a învăța trăsăturile fețelor și a le recunoaște.

este un proces în mai multe etape, constând din următoarele etape:

  1. detectarea feței: este primul pas și implică localizarea uneia sau mai multor fețe prezente în imaginea sau videoclipul de intrare.
  2. alinierea feței: alinierea normalizează fețele de intrare pentru a fi coerente Geometric cu baza de date.
  3. extragerea caracteristicilor: mai târziu, sunt extrase caracteristici care pot fi utilizate în sarcina de recunoaștere.
  4. recunoașterea caracteristicilor: efectuați potrivirea caracteristicilor de intrare cu baza de date.

următoarele seturi de date open-source vă vor oferi o expunere bună la recunoașterea feței-

  1. MegaFace

    MegaFace este un set de date de formare pentru recunoașterea feței publice la scară largă, care servește drept unul dintre cele mai importante repere pentru problemele comerciale de recunoaștere a feței. Include 4.753.320 de fețe de 672.057 de identități

  2. etichetate faces in wild home

    etichetate Faces in the Wild (LFW) este o bază de date de fotografii fata concepute pentru a studia problema de recunoaștere a feței fără restricții. Are 13.233 de imagini a 5.749 de persoane care au fost detectate și colectate de pe web. De asemenea, 1.680 dintre persoanele fotografiate au două sau mai multe fotografii distincte în setul de date.

în plus, pentru a duce proiectul într-un stadiu avansat, puteți utiliza modele pre-instruite precum Facenet.

Facenet este un model de învățare profundă care oferă încorporări unificate pentru recunoașterea feței, verificarea și sarcina de grupare. Rețeaua mapează fiecare imagine a feței în spațiul euclidian astfel încât distanța dintre imagini similare să fie mai mică.

open-source computer vision projects - facenet

Source

puteți utiliza cu ușurință pre-instruiți Facenet modele disponibile în Keras și PyTorch pentru a face propriul sistem de recunoaștere a feței.

există mai multe modele de recunoaștere a feței de ultimă generație disponibile cu care puteți experimenta. Deepface este o rețea profundă bazată pe CNN dezvoltată de cercetătorii Facebook. A fost o piatră de hotar majoră în utilizarea învățării profunde într-o sarcină de recunoaștere a feței.

pentru a înțelege mai bine dezvoltarea tehnologiei de recunoaștere a feței în ultimii 30 de ani, v-aș încuraja să citiți o lucrare interesantă intitulată:

  • recunoașterea profundă a feței: un sondaj

proiecte de viziune computerizată Open-Source pentru transferul stilului Neural folosind GANs

transferul stilului Neural este o tehnologie de viziune computerizată care recreează conținutul unei imagini în stilul celeilalte imagini. Este o aplicație a unei rețele contradictorii Generative (Gan). Aici, luăm două imagini – o imagine de conținut și o imagine de referință a stilului și le amestecăm astfel încât imaginea de ieșire să arate ca o imagine de conținut pictată în stilul imaginii de referință.

aceasta este implementată prin optimizarea statisticilor de conținut ale imaginii de ieșire care se potrivesc cu imaginea de conținut și statisticile de stil cu imaginea de referință a stilului.

Open-Source Computer Vision proiecte-Neural Style Transfer folosind GANs

Source

aici este lista unor seturi de date minunat pentru a practica:

  1. COCO dataset

    “COCO este un set de date de detectare, segmentare și subtitrare a obiectelor pe scară largă. Imaginile din setul de date sunt obiecte de zi cu zi capturate din scene de zi cu zi. Mai mult, oferă etichetare cu mai multe obiecte, adnotări de mască de segmentare, subtitrare a imaginilor și detectare a punctelor cheie cu un total de 81 de categorii, făcându-l un set de date foarte versatil și multifuncțional.

  2. ImageNet

    1. am menționat deja acest lucru mai sus – ImageNet este incredibil de flexibil!

în cazul în care vă întrebați cum să implementați modelul de transfer de stil, iată un tutorial TensorFlow care vă poate ajuta. De asemenea, vă voi sugera să citiți următoarele lucrări dacă doriți să săpați mai adânc în tehnologie:

  • o reprezentare învățat pentru stil Artistic
  • nepereche Image-To-Image traducere folosind ciclu coerente Adversarial rețele
  • imagine stil Transfer folosind rețele neuronale Convolutional

Open-Source Computer Vision proiecte pentru scena Text detectare

detectarea text în orice scenă dată este o altă problemă foarte interesantă. Textul scenei este textul care apare pe imaginile capturate de o cameră într-un mediu în aer liber. De exemplu, plăcuțele de înmatriculare ale mașinilor pe drumuri, panouri publicitare pe marginea drumului etc.

textul din imaginile de scenă variază ca formă, font, culoare și poziție. Complicația în recunoașterea textului scenei crește și mai mult prin iluminarea și focalizarea neuniformă.

Open-Source Computer Vision Projects-Scene Text Detection

următoarele seturi de date populare vă vor ajuta să vă îmbogățiți abilitățile în analizarea detectării textului scenei:

  1. SVHN

    setul de date Street View House Numbers (SVHN) este unul dintre cele mai populare seturi de date open source de acolo. A fost folosit în rețelele neuronale create de Google pentru a citi numerele casei și a le potrivi cu geolocațiile lor. Acesta este un set de date de referință excelent cu care să te joci, să înveți și să antrenezi modele care identifică cu exactitate numerele străzilor. Acest set de date conține peste 600k etichetate imagini din lumea reală de numere de case luate de la Google Street View.

  2. set de date SceneText

    setul de date scene text cuprinde 3000 de imagini capturate în medii diferite, inclusiv scene în aer liber și în interior, în condiții de iluminare diferite. Imaginile au fost capturate fie prin utilizarea unei camere digitale de înaltă rezoluție, fie a unei camere de telefon mobil cu rezoluție mică. Mai mult decât atât, toate imaginile au fost redimensionate la 640 480.

mai mult, detectarea textului scenei este un proces în două etape constând în detectarea textului în imagine și recunoașterea textului. Pentru detectarea textului, am găsit o metodă de învățare profundă de ultimă oră Est (Detector eficient de text precis al scenei). Se poate găsi cutii de încadrare orizontale și rotite. Puteți să-l utilizați în combinație cu orice metodă de recunoaștere a textului.

iată câteva alte lucrări interesante despre detectarea textului scenei:

  • detectarea textului în imagine naturală cu rețea de propuneri de text Conectionist
  • COCO-Text: Set de date și Benchmark pentru detectarea și recunoașterea textului în imagini naturale

proiecte de viziune computerizată Open-Source pentru detectarea obiectelor cu DETR

detectarea obiectelor este sarcina de a prezice fiecare obiect de interes prezent în imagine printr-o cutie de delimitare împreună cu etichete adecvate pe ele.

câteva luni în urmă, Facebook open-Source obiect de detectare Cadru – detecție transformator (DETR). DETR este o soluție eficientă și inovatoare pentru probleme de detectare a obiectelor. Acesta simplifică conducta de formare prin vizualizarea de detectare a obiectelor ca o problemă de predicție set direct. Mai mult, adoptă o arhitectură encoder-decodor bazată pe trans-formatori.

proiecte Open-Source Computer Vision - detectarea obiectelor cu DETR

pentru a afla mai multe despre DERT, aici este notebook-ul de hârtie și Colab.

diversificați-vă portofoliul lucrând la următoarele seturi de date open-source pentru detectarea obiectelor:

  1. Open Images

    Open Image este un set de date de imagini ~9m adnotate cu etichete la nivel de imagine, cutii de delimitare a obiectelor, măști de segmentare a obiectelor, relații vizuale și narațiuni localizate. Setul de date este împărțit într-un set de instruire (9.011.219 imagini), un set de validare (41.620 imagini) și un set de testare (125.436 imagini).

  2. MS-COCO

    MS-COCO este un set de date pe scară largă utilizate popular pentru probleme de detectare a obiectelor. Se compune din imagini 330K cu 80 de categorii de obiecte având 5 legende pe imagine și 250.000 de persoane cu puncte cheie.

puteți citi următoarele resurse pentru a afla mai multe despre detectarea obiectelor:

  • o introducere pas cu pas a algoritmilor de detectare a obiectelor de bază
  • un ghid practic pentru detectarea obiectelor folosind popularul cadru YOLO
  • Facebook Ai lansează DEtection TRansformer (DETR) – o abordare de detectare a obiectelor bazată pe transformator!

proiecte Open-Source Computer Vision pentru segmentarea semantică

când vorbim despre înțelegerea completă a scenei în tehnologia computer vision, segmentarea semantică intră în imagine. Este sarcina de a clasifica toți pixelii dintr-o imagine în clase relevante ale obiectelor.

proiecte Open-Source Computer Vision-segmentare semantică

mai jos este Lista seturilor de date open-source pentru a practica acest subiect:

  1. CamVid

    această bază de date este unul dintre primele seturi de date segmentate semantic lansate. Acest lucru este adesea folosit în cercetarea segmentării semantice (în timp real). Setul de date conține:

    • 367 perechi de formare
    • 101 perechi de validare
    • 233 perechi de testare
  2. Cityscapes

    acest set de date este un subeșantion procesat de cityscapes originale. Setul de date are imagini statice din videoclipurile originale, iar etichetele de segmentare semantică sunt afișate în imagini alături de imaginea originală. Acesta este unul dintre cele mai bune seturi de date pentru sarcini de segmentare semantică. Ea are 2975 imagini de formare fișiere și 500 de fișiere imagine de validare fiecare de 256 512 pixeli

pentru a citi mai multe despre segmentarea semantică, voi recomanda următorul articol:

  • segmentarea semantică: Introducere în tehnica de învățare profundă din spatele camerei Google Pixel!

iată câteva lucrări disponibile cu cod pentru segmentarea semantică:

  • Encoder-decodor cu convoluție separabilă Atră pentru segmentarea imaginii semantice
  • DeepLab: Segmentarea imaginii semantice cu plase convoluționale profunde, convoluție Atroasă și CRF-uri complet conectate

proiecte de viziune computerizată Open-Source pentru detectarea benzii rutiere în vehicule autonome

o mașină autonomă este un vehicul capabil să-și detecteze mediul și să funcționeze fără implicarea umană. Ei creează și mențin o hartă a împrejurimilor lor bazată pe o varietate de senzori care se potrivesc în diferite părți ale vehiculului.

aceste vehicule au senzori radar care monitorizează poziția vehiculelor din apropiere. În timp ce camerele video detectează semafoarele, citesc indicatoarele rutiere, urmăresc alte vehicule și senzorii Lidar (detectarea luminii și distanța) transmit impulsuri de lumină din împrejurimile mașinii pentru a măsura distanțele, a detecta marginile drumului și a identifica marcajele benzii

detectarea benzii este o parte importantă a acestor vehicule. În transportul rutier, o bandă face parte dintr-o carosabilă care este desemnată a fi utilizată de o singură linie de vehicule pentru a controla și ghida șoferii și a reduce conflictele de trafic.

este un proiect interesant de adăugat în CV-ul dvs. de știință de date. Următoarele sunt câteva seturi de date disponibile pentru a experimenta-

  1. TUsimple

    acest set de date a făcut parte din Tusimple Lane Detection Challenge. Acesta conține 3626 clipuri video de 1-sec durata fiecare. Fiecare dintre aceste clipuri video conține 20 de cadre cu un ultim cadru adnotat. Se compune din seturi de date de instruire și testare cu 3626 clipuri video, 3626 cadre adnotate în setul de date de instruire și 2782 clipuri video pentru testare.

în cazul în care, sunteți în căutarea pentru unele tutorial pentru dezvoltarea proiectului verifica articolul de mai jos-

  • Hands-on Tutorial privind detectarea benzii în timp Real folosind OpenCV(proiect auto Auto!)

Open-Source Computer Vision proiecte pentru imagine subtitrare

v-ați dorit vreodată pentru unele tehnologii care ar putea legendă imaginile social media pentru că nici tu, nici prietenii tăi sunt capabili de a veni cu o legendă rece? Deep Learning pentru subtitrare imagine vine la salvare.

subtitrarea imaginii este procesul de generare a unei descrieri textuale pentru o imagine. Este o sarcină combinată de viziune computerizată și procesare a limbajului natural (NLP).

metodele Computer vision ajută la înțelegerea și extragerea caracteristicii din imaginile de intrare. Mai mult, NLP convertește imaginea în descrierea textuală în ordinea corectă a cuvintelor.


următoarele sunt câteva seturi de date utile pentru a vă murdări mâinile cu subtitrarea imaginii:

  1. COCO Caption

    COCO este un set de date de detectare, segmentare și subtitrare a obiectelor pe scară largă. Se compune din imagini of330K (> 200k etichetate) cu 1,5 milioane de instanțe obiect și 80 de categorii de obiecte dat 5 legende pe imagine.

  2. Flicker 8K set de date

    este un corpus de subtitrare a imaginii format din 158.915 subtitrări provenite din mulțime care descriu 31.783 de imagini. Aceasta este o extensie a setului de date Flickr 8k. Noile imagini și legende se concentrează pe oamenii care fac activități și evenimente de zi cu zi.

dacă sunteți în căutarea implementării proiectului, vă voi sugera să consultați următorul articol:

  • Subtitrarea automată a imaginii folosind învățarea profundă (CNN și LSTM) în PyTorch

de asemenea, vă sugerez să parcurgeți această lucrare proeminentă despre Subtitrarea imaginii.

Open-Source proiecte de viziune de calculator pentru estimarea Pose umane

estimarea Pose umane este o aplicație interesantă de viziune de calculator. Trebuie să fi auzit despre Posenet, care este un model open-source pentru estimarea poziției umane. Pe scurt, estimarea pozei este o tehnică de viziune computerizată pentru a deduce poza unei persoane sau a unui obiect prezent în imagine/videoclip.

înainte de a discuta despre funcționarea estimării poziției, să înțelegem mai întâi scheletul poziției umane. Este setul de coordonate pentru a defini poziția unei persoane. O pereche de coordonate este un membru. Mai mult, estimarea pozeze se realizează prin identificarea, localizarea, și urmărirea punctele cheie ale oamenilor prezintă schelet într-o imagine sau video.

Sursa

următoarele sunt câteva seturi de date dacă doriți să dezvoltați un model de estimare a pozei:

  1. MPII

    setul de date mpii Human Pose este un punct de referință de ultimă oră pentru evaluarea estimării poziției umane articulate. Setul de date include în jur de 25K imagini care conțin peste 40K persoane cu articulații adnotate ale corpului. În general, setul de date acoperă 410 activități umane și fiecare imagine are o etichetă de activitate.

  2. HUMANEVA

setul de date HumanEva-I conține 7 secvențe video calibrate care sunt sincronizate cu pozițiile corpului 3d. Baza de date conține 4 subiecți care efectuează 6 acțiuni comune (de exemplu, mersul pe jos, jogging, gesturi etc.) care sunt împărțite în seturi de instruire, validare și testare.

am găsit DeepPose de Google ca o lucrare de cercetare foarte interesantă folosind modele de învățare profundă pentru estimarea pozelor. În plus, puteți vizita mai multe lucrări de cercetare disponibile pe estimarea pozei pentru a o înțelege mai bine.

proiecte de viziune computerizată Open-Source pentru recunoașterea emoțiilor prin expresii faciale

expresiile faciale joacă un rol vital în procesul de comunicare non-verbală, precum și pentru identificarea unei persoane. Ele sunt foarte importante în recunoașterea emoțiilor unei persoane. În consecință, informațiile despre expresiile faciale sunt adesea folosite în sistemele automate de recunoaștere a emoțiilor.

recunoașterea emoțiilor este o sarcină dificilă, deoarece emoțiile pot varia în funcție de mediu, aspect, cultură și reacția feței, ceea ce duce la date ambigue.

sistemul de recunoaștere a expresiei feței este un proces în mai multe etape constând în procesarea imaginii feței, extragerea caracteristicilor și clasificarea.

sursa

mai jos este un set de date pe care îl puteți practica:

  1. baza de date a fețelor afective din lumea reală

real-world Affective Faces Database (RAF-DB) este o bază de date de expresie facială pe scară largă, cu aproximativ 30K imagini faciale foarte diverse. Se compune din 29672 imagini din lumea reală, și 7-dimensional vector de distribuție Expresie pentru fiecare imagine,

puteți citi aceste resurse pentru a crește înțelegerea în continuare-

  • rețele de atenție cadru pentru recunoașterea expresiei faciale în videoclipuri
  • rețele de atenție Regiune pentru postură și ocluzie recunoaștere robustă a expresiei faciale

note finale

în concluzie, în acest articol am discutat despre 10 proiecte interesante de viziune pe computer pe care le puteți implementa ca începător. Aceasta nu este o listă exhaustivă. Deci, dacă simțiți că am pierdut ceva, nu ezitați să adăugați în comentariile de mai jos!

de asemenea, iată-mă enumerând câteva resurse CV utile pentru a vă ajuta să explorați lumea învățării profunde și a viziunii computerului:

  • iată calea dvs. de învățare pentru a stăpâni viziunea computerului în 2020
  • viziunea computerului folosind cursul Deep Learning 2.0
  • program certificat: Computer Vision pentru incepatori
  • Noțiuni de bază cu rețele neuronale (gratuit)
  • rețele neuronale convoluționale (CNN) de la zero (gratuit)

există o mare diferență în știința datelor pe care o învățăm în cursuri și în practica de sine și în cea pe care o lucrăm în industrie. Vă recomand să parcurgeți aceste cursuri gratuite clare pentru a înțelege totul despre analiză, învățare automată și inteligență artificială:

  1. Introducere în AI / ML curs gratuit / aplicație mobilă
  2. Introducere în AI/ML pentru liderii de afaceri aplicație mobilă
  3. Introducere în Business Analytics curs gratuit | aplicație mobilă

sper că veți găsi discuția utilă. Acum este rândul tău să începi implementarea viziunii computerului pe cont propriu.

de asemenea, puteți citi acest articol în aplicația noastră mobilă Obțineți-l pe Google Play

Lasă un răspuns

Adresa ta de email nu va fi publicată.