18 All-Time Classic Open Source Computer Vision Projects för nybörjare

översikt

  • open source computer vision projects är en stor segway till landning en roll i den djupa lärande industrin
  • börja arbeta på dessa 18 populära och all-time classic open source computer vision projects

introduktion

Datorsynsapplikationer är allestädes närvarande just nu. Jag kan ärligt talat inte komma ihåg förra gången jag gick igenom en hel dag utan att stöta på eller interagera med minst ett datorsynsanvändningsfall (hej ansiktsigenkänning på min telefon!).

men här är saken – människor som vill lära sig datorsyn tenderar att fastna i de teoretiska begreppen. Och det är den värsta vägen du kan ta! För att verkligen lära sig och behärska datorsyn måste vi kombinera teori med praktisk erfarenhet.

och det är där open source computer vision-projekt kommer in. Du behöver inte spendera en krona för att öva din dator vision färdigheter – du kan göra det sitter precis där du är just nu!

open-source computer vision projects

så i den här artikeln har jag samlat och skapat en lista över Open-Source Computer Vision projects baserat på olika tillämpningar av computer vision. Det finns mycket att gå igenom och det här är en ganska omfattande lista så låt oss gräva in!

om du är helt ny på datorsyn och djupt lärande och föredrar att lära dig i videoform, kolla in det här:

  • datorseende med hjälp av djup inlärning 2.0

de 18 Open Source Computer Vision-projekten är indelade i dessa kategorier:

  • Bildklassificering
  • ansiktsigenkänning
  • Neural Stilöverföring med GANs
  • Scentextdetektering
  • objektdetektering med DETR
  • semantisk segmentering
  • Vägfältdetektering i autonoma fordon
  • bildtextning
  • Human pose estimation Projects
  • Emotion recognition genom ansiktsuttryck

Open-Source Computer Vision projects for image classification

Bildklassificering är en grundläggande uppgift i datorsyn. Här är målet att klassificera en bild genom att tilldela en specifik etikett till den. Det är lätt för oss människor att förstå och klassificera de bilder vi ser. Men fallet är väldigt annorlunda för en maskin. Det är en betungande uppgift för en maskin att skilja mellan en bil och en elefant.

här är två av de mest framstående open source-projekten för bildklassificering:

  1. Cifar 10

    CIFAR-10 dataset är en samling bilder som vanligtvis används för att träna maskininlärning och datorsynalgoritmer. Det är en av de mest populära datamängderna för maskininlärningsforskning. Den innehåller 60,000, 32 xnumx xnumx färgbilder i 10 olika klasser. Klasserna representerar flygplan, bilar, fåglar, katter, rådjur, hundar, grodor, hästar, fartyg och lastbilar.

  2. ImageNet

    ImageNet dataset är en stor visuell databas för användning i datorvisionsforskning. Mer än 14 miljoner bilder har handannoterats av projektet för att ange vilka objekt som är avbildade och i minst en miljon av bilderna finns också avgränsningsrutor. ImageNet innehåller mer än 20.000 kategorier!

som nybörjare kan du börja med ett neuralt nätverk från början med Keras eller PyTorch. För bättre resultat och ökad inlärningsnivå kommer jag att rekommendera att använda överföringsinlärning genom förutbildade modeller som VGG-16, Restnet-50, Googlenet, etc.

 öppen källkod dator vision projekt -

jag rekommenderar att du går igenom artikeln nedan för att veta mer om bildklassificering:

  • topp 4 Förutbildade modeller för Bildklassificering med Python-kod

jag föreslår också att gå igenom nedanstående papper för en bättre förståelse av bildklassificering:

  • ImageNet klassificering med djupa Convolutional neurala nätverk
  • gå djupare med Convolutions
  • djup kvarvarande lärande för bildigenkänning

öppen källkod datorseende projekt för ansiktsigenkänning

ansiktsigenkänning är en av de framstående tillämpningar av datorseende. Den används för säkerhet, övervakning eller för att låsa upp dina enheter. Det är uppgiften att identifiera ansikten i en bild eller video mot en befintlig databas. Vi kan använda djupa inlärningsmetoder för att lära oss funktionerna i ansikten och känna igen dem.

det är en flerstegsprocess som består av följande steg:

  1. ansiktsigenkänning: det är det första steget och innebär att man lokaliserar en eller flera ansikten som finns i inmatningsbilden eller videon.
  2. Ansiktsinriktning: justering normaliserar ingångsytorna för att vara geometriskt förenliga med databasen.
  3. Feature Extraction: senare extraheras funktioner som kan användas i igenkänningsuppgiften.
  4. Funktionsigenkänning: utför matchning av inmatningsfunktionerna till databasen.

följande open source-dataset ger dig bra exponering för ansiktsigenkänning-

  1. MegaFace

    MegaFace är ett storskaligt offentligt ansiktsigenkänningsdataset som fungerar som ett av de viktigaste riktmärkena för kommersiella ansiktsigenkänningsproblem. Den innehåller 4 753 320 ansikten med 672 057 identiteter

  2. Labeled faces in wild home

    Labeled Faces in the Wild (LFW) är en databas med ansiktsfotografier utformade för att studera problemet med obestridd ansiktsigenkänning. Den har 13 233 bilder av 5 749 personer som upptäcktes och samlades in från webben. Dessutom har 1 680 av de personer som visas två eller flera distinkta bilder i datasetet.

för att ta projektet till ett avancerat stadium kan du dessutom använda förutbildade modeller som Facenet.

Facenet är en djup inlärningsmodell som ger enhetliga inbäddningar för ansiktsigenkänning, verifiering och klusteruppgift. Nätverket kartlägger varje ansiktsbild i euklidiskt utrymme så att avståndet mellan liknande bilder är mindre.

open source computer vision projects-facenet

Source

du kan enkelt använda förutbildade Facenet – modeller som finns i Keras och PyTorch för att skapa ditt eget ansiktsigenkänningssystem.

det finns några mer toppmoderna ansiktsigenkänningsmodeller som du kan experimentera med. Deepface är ett djupt CNN – baserat nätverk utvecklat av Facebook-forskare. Det var en viktig milstolpe i användningen av djupt lärande i en ansiktsigenkänningsuppgift.

för att bättre förstå utvecklingen inom ansiktsigenkänningsteknik under de senaste 30 åren, skulle jag uppmuntra dig att läsa ett intressant papper med titeln:

  • djup ansiktsigenkänning: en undersökning

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

Neural style transfer är en datorsynsteknik som återskapar innehållet i en bild i stil med den andra bilden. Det är en tillämpning av ett generativt kontradiktoriskt nätverk (GAN). Här tar vi två bilder – en innehållsbild och en stilreferensbild och blandar dem så att utmatningsbilden ser ut som en innehållsbild målad i referensbildens stil.

detta implementeras genom att optimera innehållsstatistiken för utmatningsbild som matchar innehållsbilden och Stilstatistiken till stilreferensbilden.

 Open-Source Computer Vision Projects-Neural Style Transfer med Gans

källa

här är listan över några fantastiska dataset att öva:

  1. COCO dataset

    ” COCO är en storskalig objektdetektering, segmentering och textning dataset. Bilderna i datauppsättningen är vardagliga föremål tagna från vardagliga scener. Ytterligare, det ger flera objekt märkning, segmentering mask anteckningar, bildtexter, och nyckelpunktsdetektering med totalt 81 kategorier, vilket gör det till en mycket mångsidig och multi-purpose dataset.

  2. ImageNet

    1. vi har redan nämnt detta ovan – ImageNet är otroligt flexibelt!

om du undrar hur du implementerar style transfer-modellen, här är en TensorFlow-handledning som kan hjälpa dig. Jag föreslår också att du läser följande papper om du vill gräva djupare i tekniken:

  • en lärd Representation för konstnärlig stil
  • oparad bild-till-bild-översättning med Cykelkonsistenta kontradiktoriska nätverk
  • överföring av Bildstil med Konvolutionella neurala nätverk

Open-Source Computer Vision Projects for Scene Text Detection

att upptäcka text i en viss scen är ett annat mycket intressant problem. Scentext är texten som visas på bilderna som tagits av en kamera i en utomhusmiljö. Till exempel nummerskyltar av bilar på vägar, skyltar på vägarna etc.

texten i scenbilder varierar i form, typsnitt, färg och position. Komplikationen i erkännande av scentext ökar ytterligare genom ojämn belysning och fokus.

 Open-Source Computer Vision Projects-Scene Text Detection

följande populära datamängder hjälper dig att berika dina färdigheter i att analysera Scene text Detection:

  1. SVHN

    Street View House Numbers (SVHN) dataset är en av de mest populära open source dataset där ute. Det har använts i neurala nätverk som skapats av Google för att läsa Husnummer och matcha dem med deras geolokationer. Detta är ett bra riktmärkesdataset att leka med, lära och träna modeller som exakt identifierar gatunummer. Denna dataset innehåller över 600k märkta verkliga bilder av husnummer tagna från Google Street View.

  2. SceneText Dataset

    scene text dataset består av 3000 bilder tagna i olika miljöer, inklusive utomhus och inomhus scener under olika ljusförhållanden. Bilder fångades antingen genom användning av en högupplöst digitalkamera eller en lågupplöst mobiltelefonkamera. Dessutom har alla bilder storleksändrats till 640 480 kcal.

vidare är scentextdetektering en tvåstegsprocess som består av Textdetektering i bild-och textigenkänning. För textdetektering hittade jag en toppmodern djup inlärningsmetod öst (effektiv noggrann Scentextdetektor). Den kan hitta horisontella och roterade avgränsningslådor. Du kan använda den i kombination med vilken textigenkänningsmetod som helst.

här är några andra intressanta artiklar om scentextdetektering:

  • upptäcka Text i naturlig bild med Connectionist Text Proposal Network
  • COCO-Text: Dataset och riktmärke för Textdetektering och erkännande i naturliga bilder

Open-Source Computer Vision projekt för objektdetektering med DETR

objektdetektering är uppgiften att förutsäga varje objekt av intresse som finns i bilden genom en avgränsningsruta tillsammans med korrekta etiketter på dem.

för några månader tillbaka öppnade Facebook sin object detection framework-DEtection TRansformer (detr). DETR är en effektiv och innovativ lösning på problem med objektdetektering. Det effektiviserar utbildningen pipeline genom att visa objektdetektering som en direkt uppsättning förutsägelse problem. Vidare antar den en kodare-avkodararkitektur baserad på Transformers.

Open Source Computer Vision Projects-Object Detection med detr

för att veta mer om DERT, här är paper och Colab notebook.

diversifiera din portfölj genom att arbeta med följande öppna dataset för objektdetektering:

  1. Open Images

    Open Image är en datauppsättning av ~9M bilder som kommenteras med bildnivåetiketter, objektbegränsningsrutor, objektsegmenteringsmasker, visuella relationer och lokaliserade berättelser. Datauppsättningen är uppdelad i en träningsuppsättning (9 011 219 bilder), en valideringsuppsättning (41 620 bilder) och en testuppsättning (125 436 bilder).

  2. MS-COCO

    MS-COCO är en storskalig dataset som populärt används för problem med objektdetektering. Den består av 330K bilder med 80 objektkategorier med 5 bildtexter per bild och 250 000 personer med viktiga punkter.

du kan läsa följande resurser för att lära dig mer om objektdetektering:

  • en steg – för-steg introduktion till de grundläggande Objektdetekteringsalgoritmerna
  • en praktisk Guide till objektdetektering med den populära Yolo Framework
  • Facebook AI lanserar DEtection TRansformer (DETR) – en Transformatorbaserad Objektdetekteringsmetod!

Open Source Computer Vision-projekt för semantisk segmentering

när vi pratar om fullständig scenförståelse i datorsynsteknik kommer semantisk segmentering in i bilden. Det är uppgiften att klassificera alla pixlar i en bild i relevanta klasser av objekten.

 Open-Source Computer Vision Projects-semantisk segmentering

nedan är listan över open-source dataset att öva detta ämne:

  1. CamVid

    denna databas är en av de första semantiskt segmenterade datamängderna som släpps. Detta används ofta i (realtid)semantisk segmenteringsforskning. Datauppsättningen innehåller:

    • 367 träningspar
    • 101 valideringspar
    • 233 testpar
  2. Cityscapes

    denna dataset är ett bearbetat delprov av original cityscapes. Datauppsättningen har stillbilder från de ursprungliga videorna, och de semantiska segmenteringsetiketterna visas i bilder tillsammans med originalbilden. Detta är en av de bästa datamängderna för semantiska segmenteringsuppgifter. Den har 2975 utbildningsbildfiler och 500 valideringsbildfiler vardera av 256 512 pixlar

för att läsa mer om semantisk segmentering rekommenderar jag följande artikel:

  • semantisk segmentering: introduktion till den djupa Inlärningstekniken bakom Google Pixels kamera!

här är några papper tillgängliga med kod för semantisk segmentering:

  • Kodare-avkodare med Atrous separerbar faltning för semantisk Bildsegmentering
  • DeepLab: Semantisk Bildsegmentering med djupa Faltningsnät, Atrous faltning och helt anslutna CRF: er

Open Source Computer Vision-projekt för Vägfältdetektering i autonoma fordon

en autonom bil är ett fordon som kan känna av sin miljö och fungera utan mänsklig inblandning. De skapar och underhåller en karta över sin omgivning baserat på en mängd olika sensorer som passar i olika delar av fordonet.

dessa fordon har radarsensorer som övervakar positionen för närliggande fordon. Medan videokamerorna upptäcker trafikljus, läser vägskyltar, spårar andra fordon och lidar (light detection and ranging) sensorer studsar ljuspulser från bilens omgivning för att mäta avstånd, upptäcka vägkanter och identifiera körfältmarkeringar

Körfältdetektering är en viktig del av dessa fordon. I vägtransporter är en körfält en del av en körväg som är avsedd att användas av en enda rad fordon för att kontrollera och vägleda förare och minska trafikkonflikter.

det är ett spännande projekt att lägga till i din datavetenskapares CV. Följande är några datamängder tillgängliga att experimentera med-

  1. TUsimple

    denna dataset var en del av Tusimple Lane Detection Challenge. Den innehåller 3626 videoklipp med 1 sek varaktighet vardera. Var och en av dessa videoklipp innehåller 20 bilder med en kommenterad sista bildruta. Den består av tränings-och testdataset med 3626 videoklipp, 3626 kommenterade ramar i träningsdataset och 2782 videoklipp för testning.

om du letar efter en handledning för att utveckla projektet, kolla artikeln nedan-

  • praktisk handledning om Realtidsfildetektering med OpenCV (självkörande bilprojekt!)

Open-Source Computer Vision projekt för bildtexter

har du någonsin önskat någon teknik som kan bildtext dina sociala medier bilder eftersom varken du eller dina vänner har möjlighet att komma med en cool bildtext? Djupt lärande för bildtexter kommer till din räddning.

bildtextning är processen att generera en textbeskrivning för en bild. Det är en kombinerad uppgift för datorsyn och naturlig språkbehandling (NLP).

Datorsynsmetoder hjälper till att förstå och extrahera funktionen från inmatningsbilderna. Vidare konverterar NLP bilden till textbeskrivningen i rätt ordordning.


följande är några användbara datamängder för att smutsa händerna med bildtexter:

  1. COCO Caption

    COCO är storskalig objektdetektering, segmentering och textning dataset. Den består av of330K bilder (> 200K märkt) med 1,5 miljoner objektinstanser och 80 objektkategorier ges 5 bildtexter per bild.

  2. Flicker 8K dataset

    det är en bildtextkorpus bestående av 158,915 crowd-sourced bildtexter som beskriver 31,783 bilder. Detta är en förlängning av Flickr 8K Dataset. De nya bilderna och bildtexterna fokuserar på människor som gör vardagliga aktiviteter och evenemang.

om du letar efter genomförandet av projektet föreslår jag att du tittar på följande artikel:

  • Automatisk bildtextning med Deep Learning (CNN och LSTM) i PyTorch

jag föreslår också att du går igenom detta framträdande papper om bildtextning.

Open-Source Computer Vision projekt för mänsklig pose Estimation

Human Pose Estimation är en intressant tillämpning av datorseende. Du måste ha hört talas om Posenet, som är en öppen källkodsmodell för mänsklig poseuppskattning. I korthet är pose estimation en datorvisionsteknik för att härleda ställningen för en person eller ett objekt som finns i bilden/videon.

innan vi diskuterar arbetet med pose estimering, låt oss först förstå ‘Human Pose Skeleton’. Det är uppsättningen Koordinater för att definiera en persons ställning. Ett par koordinater är en lem. Vidare utförs pose-uppskattning genom att identifiera, lokalisera och spåra de viktigaste punkterna hos människor utgör skelett i en bild eller video.

källa

följande är några dataset om du vill utveckla en pose-uppskattningsmodell:

  1. Mpii

    Mpii Human Pose dataset är ett toppmodernt riktmärke för utvärdering av artikulerad mänsklig poseuppskattning. Datasetet innehåller cirka 25k-bilder som innehåller över 40k-personer med kommenterade kroppsfogar. Sammantaget täcker datasetet 410 mänskliga aktiviteter och varje bild har en aktivitetsetikett.

  2. HUMANEVA

HumanEva – i-dataset innehåller 7 kalibrerade videosekvenser som är synkroniserade med 3D-kroppsställningar. Databasen innehåller 4 ämnen som utför 6 vanliga åtgärder (t.ex. promenader, jogging, gester etc.) som är uppdelade i tränings -, validerings-och testuppsättningar.

jag hittade DeepPose av Google som ett mycket intressant forskningspapper med djupa inlärningsmodeller för pose estimering. Dessutom kan du besöka flera forskningsrapporter tillgängliga på pose uppskattning för att förstå det bättre.

Open Source Computer Vision-projekt för Känslighetsigenkänning genom ansiktsuttryck

ansiktsuttryck spelar en viktig roll i processen för icke-verbal kommunikation, liksom för att identifiera en person. De är mycket viktiga för att känna igen en persons känslor. Följaktligen används information om ansiktsuttryck ofta i automatiska system för känslighetsigenkänning.

Emotion Recognition är en utmanande uppgift eftersom känslor kan variera beroende på miljö, utseende, kultur och ansiktsreaktion vilket leder till tvetydiga data.

ansiktsuttrycksigenkänningssystemet är en flerstegsprocess som består av ansiktsbildbehandling, extraktion av funktioner och klassificering.

källa

nedan är en dataset du kan öva på:

  1. verkliga affektiva ansikten databas

Real-world Affective Faces Database (RAF-DB) är en storskalig ansiktsuttrycksdatabas med cirka 30k stora ansiktsbilder. Den består av 29672 verkliga bilder och 7-dimensionell uttrycksfördelningsvektor för varje bild,

du kan läsa dessa resurser för att öka din förståelse ytterligare-

  • Frame attention networks för ansiktsuttrycksigenkänning i Videor
  • Region Attention Networks för Pose och ocklusion Robust Ansiktsuttrycksigenkänning

End Notes

avslutningsvis diskuterade vi i den här artikeln 10 intressanta datorvisionsprojekt som du kan implementera som nybörjare. Detta är inte en uttömmande lista. Så om du känner att vi missat något, gärna lägga i kommentarerna nedan!

här listar jag också några användbara CV-resurser som hjälper dig att utforska den djupa inlärnings-och Datorvisionvärlden:

  • här är din inlärningsväg till Master Computer Vision i 2020
  • Computer Vision using Deep Learning 2.0 Course
  • certifierat Program: Datorseende för nybörjare
  • komma igång med neurala nätverk (Gratis)
  • Convolutional neurala nätverk (CNN) från början (gratis)

det är stor skillnad i datavetenskapen vi lär oss i kurser och självpraxis och den vi arbetar i branschen. Jag rekommenderar dig att gå igenom dessa kristallklara gratiskurser för att förstå allt om analys, maskininlärning och artificiell intelligens:

  1. introduktion till AI / ML gratis kurs / mobilapp
  2. introduktion till AI/ML för företagsledare mobilapp
  3. introduktion till Business Analytics gratis kurs | mobilapp

jag hoppas att du hittar diskussionen användbar. Nu är det din tur att starta implementeringen av datorvisionen på egen hand.

du kan också läsa den här artikeln på vår mobilapp hämta den på Google Play

Lämna ett svar

Din e-postadress kommer inte publiceras.