18 All-Time Classic Open Source Computer Vision Projecten voor Beginners

Overzicht

  • Open source computer vision projecten zijn een geweldige segway tot de landing een rol in de diepe leren industrie
  • deze 18 populaire en klassieke open source computer vision projecten

Inleiding

Computer vision-toepassingen zijn overal nu. Ik kan eerlijk gezegd niet herinneren de laatste keer dat ik ging door een hele dag zonder ontmoeting of interactie met ten minste één computer vision use case (Hallo gezichtsherkenning op mijn telefoon!).

maar hier is het ding – mensen die willen leren computer visie hebben de neiging om vast te komen te zitten in de theoretische concepten. En dat is het slechtste pad dat je kunt nemen! Om computervisie echt te leren en onder de knie te krijgen, moeten we theorie combineren met praktijkervaring.

en daar komen open source Computer vision-projecten bij kijken. U hoeft niet te besteden een dubbeltje om uw computer visie vaardigheden te oefenen-U kunt het doen zitten waar je nu bent!

open-source computer vision-projecten

in dit artikel heb ik een lijst samengesteld van Open-Source Computer Vision-projecten gebaseerd op de verschillende toepassingen van computer vision. Er is veel te gaan door en dit is nogal een uitgebreide lijst dus laten we graven in!

als u helemaal nieuw bent in computer vision en deep learning en de voorkeur geeft aan leren in videovorm, Bekijk dit dan:

  • computervisie met Deep Learning 2.0

de 18 Open Source Computer Vision projecten zijn onderverdeeld in deze categorieën:

  • Afbeelding Indeling
  • gezichtsherkenning
  • Neurale Stijl u over GANs
  • Scène Sms Detectie
  • Object Detectie Met DETR
  • Semantische Segmentatie
  • Rijstrook Detectie in de Autonome Voertuigen
  • Afbeelding ondertiteling
  • Menselijke Houding Schatting Projecten
  • Emotie Erkenning door gezichtsuitdrukkingen

Open-Source Computer Vision Projecten voor het Imago van de Indeling

Afbeelding classificatie is een fundamentele taak in computer vision. Hier is het doel om een afbeelding te classificeren door er een specifiek label aan toe te kennen. Het is gemakkelijk voor ons mensen om de beelden die we zien te begrijpen en te classificeren. Maar de zaak is heel anders voor een machine. Het is een zware opdracht voor een machine om onderscheid te maken tussen een auto en een olifant.

hier zijn twee van de meest prominente open-source projecten voor beeldclassificatie:

  1. Cifar 10

    de cifar-10-dataset is een verzameling beelden die vaak worden gebruikt om algoritmen voor machine learning en Computer vision te trainen. Het is een van de meest populaire datasets voor machine learning onderzoek. Het bevat 60.000, 32×32 kleurenbeelden in 10 verschillende klassen. De klassen vertegenwoordigen vliegtuigen, auto ‘ s, Vogels, Katten, herten, honden, kikkers, paarden, schepen en vrachtwagens.

  2. ImageNet

    de ImageNet-dataset is een grote visuele database voor gebruik in computervisieonderzoek. Meer dan 14 miljoen afbeeldingen zijn met de hand geannoteerd door het project om aan te geven welke objecten worden afgebeeld en in ten minste een miljoen van de afbeeldingen zijn ook begrenzende vakken voorzien. ImageNet bevat meer dan 20.000 categorieën!

als beginner, kunt u beginnen met een neuraal netwerk vanaf nul met behulp van Keras of PyTorch. Voor betere resultaten en het verhogen van het niveau van het leren, zal ik adviseren met behulp van overdracht leren door middel van pre-opgeleide modellen zoals VGG-16, Restnet – 50, Googlenet, enz.

open-source computervisieprojecten -

ik raad aan om het onderstaande artikel door te nemen om meer te weten te komen over beeldclassificatie:

  • Top 4 Pre-Opgeleide Modellen voor foto-Indeling met Python Code

ook wil ik stel voor te gaan via de onderstaande papieren voor een beter begrip van de afbeelding indeling:

  • ImageNet Indeling met Diepe Convolutional Neurale Netwerken
  • Gaat Dieper met Windingen
  • Diep Resterende Leren voor beeldherkenning

Open-Source Computer Vision Projecten voor gezichtsherkenning

gezichtsherkenning is een van de belangrijkste toepassingen van computer vision. Het wordt gebruikt voor beveiliging, bewaking, of bij het ontgrendelen van uw apparaten. Het is de taak van het identificeren van de gezichten in een afbeelding of video tegen een reeds bestaande database. We kunnen diepe leermethoden gebruiken om de kenmerken van de gezichten te leren en ze te herkennen.

het is een meerfasenproces dat bestaat uit de volgende stappen:

  1. gezichtsherkenning: het is de eerste stap en omvat het lokaliseren van een of meer gezichten die aanwezig zijn in de invoerafbeelding of video.
  2. Gezichtsuitlijning: uitlijning is het normaliseren van de invoervlakken om geometrisch consistent te zijn met de database.
  3. Feature Extraction: Later worden features geëxtraheerd die gebruikt kunnen worden in de herkenningstaak.
  4. Feature recognition: vergelijk de invoerfuncties met de database.

de volgende open-source datasets geven u een goede blootstelling aan gezichtsherkenning-

  1. MegaFace

    MegaFace is een grootschalige dataset van openbare gezichtsherkenning die dient als een van de belangrijkste benchmarks voor commerciële gezichtsherkenningsproblemen. Het bevat 4.753.320 gezichten van 672.057 identiteiten

  2. gelabeld gezichten in wild home

    gelabeld gezichten in het Wild (LFW) is een database van gezichtsfoto ‘ s ontworpen voor het bestuderen van het probleem van onbeperkte gezichtsherkenning. Het heeft 13.233 beelden van 5.749 mensen die werden gedetecteerd en verzameld van het web. Ook hebben 1.680 van de afgebeelde mensen twee of meer verschillende foto ‘ s in de dataset.

Bovendien, voor het nemen van het project naar een gevorderd stadium, kunt u pre-opgeleide modellen zoals Facenet gebruiken.

Facenet is een deep learning model dat unified embeddings biedt voor gezichtsherkenning, verificatie en clustering taak. Het netwerk brengt elk gezichtsbeeld in de Euclidische ruimte in kaart, zodat de afstand tussen soortgelijke beelden kleiner is.

open-source computer vision projects-facenet

Source

u kunt eenvoudig vooraf opgeleide Facenet-modellen gebruiken die beschikbaar zijn in Keras en PyTorch om uw eigen gezichtsherkenningssysteem te maken.

er zijn nog meer geavanceerde gezichtsherkenningsmodellen beschikbaar waarmee u kunt experimenteren. Deepface is een diep CNN gebaseerd netwerk ontwikkeld door Facebook onderzoekers. Het was een belangrijke mijlpaal in het gebruik van diep leren in een gezichtsherkenningstaak.

om de ontwikkeling van gezichtsherkenningstechnologie in de afgelopen 30 jaar beter te begrijpen, zou ik u willen aanmoedigen om een interessant artikel te lezen met de titel::

  • Deep Face Recognition: a Survey

Open-Source Computer Vision Projects for Neural Style Transfer Using GANs

Neural style transfer is een computer vision technologie die de inhoud van een afbeelding opnieuw in de stijl van de andere afbeelding. Het is een toepassing van een Generative Agressarial Network (GAN). Hier nemen we twee afbeeldingen-een inhoudsafbeelding en een stijlreferentieafbeelding en mengen ze samen zodat de uitvoerafbeelding eruit ziet als een inhoudsopgave geschilderd in de stijl van de referentieafbeelding.

dit wordt geà mplementeerd door de inhoudsstatistieken van de uitvoerafbeelding te optimaliseren die overeenkomen met de Inhoudsafbeelding en Stijlstatistieken met de stijlreferentieafbeelding.

Open-Source Computer Vision Projects-Neural Style Transfer Using GANs

Source

hier is de lijst van enkele geweldige datasets om te oefenen:

  1. COCO dataset

    ” COCO is een grootschalige dataset voor objectdetectie, segmentatie en ondertiteling. De afbeeldingen in de dataset zijn alledaagse objecten die zijn vastgelegd uit alledaagse scènes. Verder, het biedt multi-object labeling, segmentatie masker annotaties, beeld bijschriften, en key-point detectie met een totaal van 81 categorieën, waardoor het een zeer veelzijdige en multifunctionele dataset.

  2. ImageNet

    1. we hebben dit hierboven al genoemd – ImageNet is ongelooflijk flexibel!

In het geval u zich afvraagt hoe de uitvoering van de stijl overdracht model, hier is een TensorFlow tutorial die u kan helpen. Ik stel ook voor dat je de volgende papers leest als je dieper wilt graven in de technologie:

  • a Learned Representation For Artistic Style
  • Unpaired Image-to-Image Translation using Cycle-consistente Agressarial Networks
  • Image Style Transfer Using Convolutional Neural Networks

Open-Source Computer Vision Projects for Scene Text Detection

het detecteren van tekst in een bepaalde scène is een ander zeer interessant probleem. Scène tekst is de tekst die wordt weergegeven op de beelden die door een camera in een buitenomgeving. Bijvoorbeeld nummerplaten van auto ‘ s op de wegen, billboards aan de kant van de weg, enz.

de tekst in scèneafbeeldingen varieert in vorm, lettertype, kleur en positie. De complicatie bij de herkenning van scènetekst neemt verder toe door niet-uniforme verlichting en scherpstelling.

Open-Source Computer Vision Projects-Scene Text Detection

de volgende populaire datasets zullen u helpen uw vaardigheden in het analyseren van Scene Text Detection te verrijken:

  1. SVHN

    de Street View House Numbers (SVHN) dataset is een van de meest populaire open source datasets die er zijn. Het is gebruikt in neurale netwerken gemaakt door Google om huisnummers te lezen en te koppelen aan hun geolocaties. Dit is een geweldige benchmark dataset om mee te spelen, te leren en te trainen modellen die nauwkeurig straatnummers identificeren. Deze dataset bevat meer dan 600k gelabelde real-world afbeeldingen van huisnummers uit Google Street View.

  2. Scenetekst-Dataset

    de scenetekst-dataset bestaat uit 3000 beelden die in verschillende omgevingen zijn vastgelegd, waaronder scènes buiten en binnenshuis onder verschillende lichtomstandigheden. Beelden werden vastgelegd door het gebruik van een hoge resolutie digitale camera of een lage resolutie mobiele telefoon camera. Bovendien zijn alle afbeeldingen verkleind tot 640×480.

verder is scà ne text detection een proces in twee stappen dat bestaat uit Tekstdetectie in het beeld en tekstherkenning. Voor tekstdetectie vond ik een state of the art deep learning method EAST (Efficient Accurate Scene Text Detector). Het kan horizontale en geroteerde bounding dozen vinden. U kunt het gebruiken in combinatie met elke tekstherkenningsmethode.

Hier zijn enkele andere interessante artikels op scène tekst detectie:

  • het Opsporen van Tekst in een Natuurlijke Afbeelding met Connectionist Tekst Voorstel Netwerk
  • COCO-Tekst: Dataset en Benchmark voor de Tekst te detecteren en te herkennen in Natuurlijke Beelden

Open-Source Computer Vision Projecten voor Object Detectie met DETR

Object detectie is de taak van het voorspellen van elk object van belang, aanwezig in het beeld door middel van een bounding box, samen met de juiste etiketten op.

een paar maanden geleden, Facebook open-source haar object detection framework-DEtection TRansformer (DETR). DETR is een efficiënte en innovatieve oplossing voor objectdetectieproblemen. Het stroomlijnt de trainingspijplijn door objectdetectie te zien als een direct ingesteld voorspellingsprobleem. Verder, het neemt een encoder-decoder architectuur op basis van trans-formers.

Open-Source Computer Vision Projects-Object Detectie met DETR

om meer te weten te komen over DERT, hier is het papier en Colab notebook.

diversifieer uw portefeuille door te werken aan de volgende open-source datasets voor objectdetectie:

  1. Open Images

    Open Image is een dataset van ~9M afbeeldingen geannoteerd met labels op afbeeldingsniveau, object begrenzende kaders, objectsegmentatiemaskers, visuele relaties en gelokaliseerde verhalen. De dataset is opgesplitst in een trainingsset (9.011.219 afbeeldingen), een validatieset (41.620 afbeeldingen) en een testset (125.436 afbeeldingen).

  2. MS-COCO

    MS-COCO is een grootschalige dataset die in de volksmond wordt gebruikt voor objectdetectieproblemen. Het bestaat uit 330K beelden met 80 objectcategorieën met 5 bijschriften per afbeelding en 250.000 mensen met belangrijke punten.

u kunt de volgende bronnen lezen voor meer informatie over objectdetectie:

  • een stap-voor-stap introductie tot de basis Object Detectie algoritmen
  • een praktische gids voor Object Detectie met behulp van het populaire YOLO Framework
  • Facebook AI lanceert detectie TRansformer – DETR) – een Transformer gebaseerde Object Detectie aanpak!

Open-Source Computervisieprojecten voor semantische segmentatie

wanneer we het hebben over volledig begrip van de scène in computervisietechnologie, komt semantische segmentatie in beeld. Het is de taak van het classificeren van alle pixels in een afbeelding in relevante klassen van de objecten.

Open - Source Computer Vision Projects-semantische segmentatie

Hieronder is de lijst met open-source datasets om dit onderwerp te oefenen:

  1. CamVid

    deze database is een van de eerste semantisch gesegmenteerde datasets die worden vrijgegeven. Dit wordt vaak gebruikt in (real-time)semantisch segmentatie onderzoek. De dataset bevat:

    • 367 trainingsparen
    • 101 validatieparen
    • 233 testparen
  2. stadsgezichten

    deze dataset is een verwerkte subsample van originele stadsgezichten. De dataset bevat nog steeds afbeeldingen van de originele video ‘ s, en de semantische segmentatie-labels worden weergegeven in afbeeldingen naast de originele afbeelding. Dit is een van de beste datasets die er zijn voor semantische segmentatietaken. Het heeft 2975 trainingsafbeeldbestanden en 500 validatieafbeeldbestanden elk van 256×512 pixels

om verder te lezen over semantische segmentatie, zal ik het volgende artikel aanbevelen:

  • semantische segmentatie: introductie tot de Deep Learning techniek achter de Camera van Google Pixel!

hier zijn enkele papers beschikbaar met code voor semantische segmentatie:

  • Encoder-Decoder met Atrous scheidbare convolutie voor semantische Beeldsegmentatie
  • DeepLab: Semantische Beeldsegmentatie met diepe Convolutienetten, Atrous Convolution en volledig verbonden CRF ‘ s

Open-Source Computervisieprojecten voor het opsporen van Rijstrookstrooien in autonome voertuigen

een autonome auto is een voertuig dat zijn omgeving kan waarnemen en zonder menselijke betrokkenheid kan functioneren. Ze maken en onderhouden een kaart van hun omgeving op basis van een verscheidenheid aan sensoren die passen in verschillende delen van het voertuig.

deze voertuigen hebben radarsensoren die de positie van nabijgelegen voertuigen bewaken. Terwijl de videocamera ‘ s verkeerslichten detecteren, verkeersborden lezen, andere voertuigen volgen en LiDAR-sensoren (light detection and ranging) stuiteren lichtpulsen van de omgeving van de auto om afstanden te meten, wegranden te detecteren en rijstrookmarkeringen

te identificeren is Baandetectie een belangrijk onderdeel van deze voertuigen. In het wegvervoer maakt een rijstrook deel uit van een rijbaan die is aangewezen om te worden gebruikt door een enkele rij voertuigen om bestuurders te controleren en te begeleiden en verkeersconflicten te verminderen.

het is een spannend project om toe te voegen in uw data scientist ‘ s cv. De volgende zijn enkele datasets beschikbaar om mee te experimenteren-

  1. TUsimple

    deze dataset maakte deel uit van de Tusimple Lane Detection Challenge. Het bevat 3626 videoclips van 1-sec duur elk. Elk van deze videoclips bevat 20 frames met een geannoteerd laatste frame. Het bestaat uit training en test datasets met 3626 videoclips, 3626 geannoteerde frames in de training dataset, en 2782 videoclips voor het testen.

In het geval dat u op zoek bent naar een tutorial voor het ontwikkelen van het project controleer het artikel hieronder-

  • Hands-On Tutorial over Real-Time Lane detectie met behulp van OpenCV (Self-Driving Car Project!)

Open-Source Computer Vision Projects for Image Captioning

heeft u ooit een technologie gewenst die uw sociale media-afbeeldingen zou kunnen bijschrijven omdat u noch uw vrienden in staat zijn om met een coole titel te komen? Diep leren voor beeld bijschriften komt tot uw redding.

afbeeldingstekstingis het proces van het genereren van een tekstuele beschrijving voor een afbeelding. Het is een gecombineerde taak van computer vision en natural language processing (NLP).

computervisiemethoden helpen bij het begrijpen en extraheren van de functie uit de invoerafbeeldingen. Verder zet NLP de afbeelding om in de tekstuele beschrijving in de juiste volgorde van woorden.


de volgende zijn enkele nuttige datasets om je handen vuil te maken met Afbeeldingstekst:

  1. Coco Caption

    COCO is dataset voor grootschalige objectdetectie, segmentatie en ondertiteling. Het bestaat uit 330K afbeeldingen (>200K gelabeld) met 1,5 miljoen object instanties en 80 objectcategorieën Gegeven 5 bijschriften per afbeelding.

  2. Flicker 8k-dataset

    het is een corpus van afbeeldingstekens bestaande uit 158.915 crowd-sourced bijschriften die 31.783 afbeeldingen beschrijven. Dit is een uitbreiding van Flickr 8k Dataset. De nieuwe beelden en bijschriften richten zich op mensen die dagelijkse activiteiten en evenementen doen.

Als u op zoek bent naar de uitvoering van het project, zal ik voorstellen dat u kijkt naar het volgende artikel:

  • automatische ondertiteling van afbeeldingen met behulp van Deep Learning (CNN en LSTM) in PyTorch

ook raad ik u aan om dit prominente artikel over Ondertiteling van afbeeldingen door te nemen.

Open-Source Computer Vision Projects for Human Pose Estimation

Human Pose Estimation is een interessante toepassing van Computer Vision. Je moet hebben gehoord over Posenet, dat is een open-source model voor menselijke pose schatting. In het kort, pose schatting is een computer visie techniek om de houding van een persoon of object huidig in het beeld/video af te leiden.

voordat we de werking van pose schatting bespreken, laten we eerst ‘menselijk Pose skelet’begrijpen. Het is de verzameling coördinaten om de houding van een persoon te definiëren. Een paar coördinaten is een ledemaat. Verder, stelt schatting wordt uitgevoerd door het identificeren, lokaliseren, en het volgen van de belangrijkste punten van mensen stelt skelet in een beeld of video.

bron

het volgende zijn enkele datasets als u een pose-schattingsmodel wilt ontwikkelen:

  1. MPII

    MPII-dataset voor menselijke pose is een state-of-the-art benchmark voor de evaluatie van gearticuleerde schatting van menselijke pose. De dataset bevat ongeveer 25K beelden met meer dan 40K mensen met geannoteerde lichaamsgewrichten. In het algemeen omvat de dataset 410 menselijke activiteiten en elke afbeelding heeft een activiteitslabel.

  2. HUMANEVA

de HumanEva-I dataset bevat 7 gekalibreerde videosequenties die gesynchroniseerd zijn met 3D lichaamshoudingen. De database bevat 4 proefpersonen die 6 gemeenschappelijke acties uitvoeren (bijvoorbeeld wandelen, joggen, gebaren, enz.) die zijn opgesplitst in training, validatie en testen sets.

Ik vond DeepPose van Google als een zeer interessant onderzoekspaper met behulp van deep learning modellen voor pose schatting. Daarnaast kunt u meerdere onderzoeksdocumenten beschikbaar op de pose schatting te bezoeken om het beter te begrijpen.

Open-Source Computervisieprojecten voor emotieherkenning door gezichtsuitdrukkingen

gezichtsuitdrukkingen spelen een vitale rol in het proces van non-verbale communicatie en bij het identificeren van een persoon. Ze zijn erg belangrijk bij het herkennen van iemands emoties. Bijgevolg wordt informatie over gezichtsuitdrukkingen vaak gebruikt in automatische systemen van emotieherkenning.

emotieherkenning is een uitdagende taak omdat emoties kunnen variëren afhankelijk van de omgeving, het uiterlijk, de cultuur en de reactie van het gezicht, wat leidt tot dubbelzinnige gegevens.

het gezichtsexpressieherkenningssysteem is een meertraps proces dat bestaat uit gezichtsbeeldverwerking, extractie en classificatie.

bron

Hieronder is een dataset waarop u kunt oefenen:

  1. Real-world Affective Faces Database

Real-world Affective Faces Database (RAF-DB) is een grootschalige gezichtsuitdrukking database met ongeveer 30K groot-divers gezicht afbeeldingen. Het bestaat uit 29672 real-world beelden, en 7-dimensionale expressie distributie vector voor elke afbeelding,

u kunt deze bronnen lezen om uw begrip verder te vergroten-

  • Frame attention networks for facial expression recognition in video ‘ s
  • Region Attention Networks for Pose and Occlusion robuuste Gezichtsuitdrukkingsherkenning

End Notes

tot slot bespraken we in dit artikel 10 interessante computer vision projecten die je als beginner kunt implementeren. Dit is geen uitputtende lijst. Dus als je het gevoel dat we iets gemist, voel je vrij om toe te voegen in de reacties hieronder!

hier vermeld ik ook enkele nuttige CV-bronnen om u te helpen de deep learning en Computer vision wereld te verkennen:

  • hier is uw leerpad om Computer Vision onder de knie te krijgen in 2020
  • Computer Vision met behulp van Deep Learning 2.0 cursus
  • gecertificeerd programma: Computer Vision voor Beginners
  • aan de slag met neurale netwerken (Gratis)
  • convolutionele neurale netwerken (CNN) vanaf nul (gratis)

er is een groot verschil in de data science die we leren in cursussen en zelfpraktijk en degene die we in de industrie werken. Ik zou u aanraden om te gaan door middel van deze kristalheldere gratis cursussen om alles te begrijpen over analytics, machine learning, en kunstmatige intelligentie:

  1. Introduction to AI / ML Free Course / Mobile app
  2. Introduction to AI / ML for Business Leaders Mobile app
  3. Introduction to Business Analytics Free Course / Mobile app

ik hoop dat u de discussie nuttig vindt. Nu is het jouw beurt om zelf de implementatie van de computer vision te starten.

u kunt dit artikel ook lezen op onze mobiele APPGet it on Google Play

Geef een antwoord

Het e-mailadres wordt niet gepubliceerd.