opencv

Sådan installeres OpenCV Ubuntu

Sådan installeres OpenCV Ubuntu

OpenCV er et open source-computersynsbibliotek tilgængeligt under BSD-licensen. Så det er gratis til akademisk og kommerciel brug. Biblioteket er skrevet i C og C++. Det kører på Linux, Windows, Mac OS, iOS og Android. Den har C-, C ++-, Java-, MATLAB- og Python-grænseflader. OpenCV har mere end 2.500 optimerede algoritmer til computersyn i realtid.

Målet med OpenCV-samfundet er at skabe en computersynsinfrastruktur, der giver udviklere mulighed for at oprette komplekse applikationer med relativ lethed. Biblioteket er designet til beregningseffektivitet til applikationer i realtid. Så det har en bred vifte af anvendelser inden for ansigtsgenkendelse, gestegenkendelse, medicinsk billeddannelse, interaktion mellem menneske og computer, bevægelsessporing, sikkerhedsovervågning, robotik, kamerakontrol og mere.

Udover computervisionskomponenterne har OpenCV også support til generel maskinlæring. Machine learning (ML) er en vigtig teknologi til computersynproblemer. Så ML-biblioteket gør OpenCV mere attraktivt for udviklere af computersyn.

Computervision og OpenCV

Computersyn blev oprettet med det mål at replikere menneskelige synsfunktioner. Det bruger algoritmer til at omdanne fangede billeder til data og gør det lettere at forstå visionsproblemer i den virkelige verden.

I tilfælde af menneskelig vision fungerer vores øjne som inputenheder. Derefter deler vores hjerner billedstrømmene i flere kanaler til behandling. Udover visuelle data tager den menneskelige hjerne også højde for andre sensoriske data og bruger dem til at forstå rumlig dybde. Det giver menneskelige hjerner mulighed for at forstå et tredimensionelt rum.

Når vi indsamler data gennem kameraer, får vi et todimensionalt billede af verden. Computersynsalgoritmer tager de to-dimensionelle billeder og bruger matematiske egenskaber til at finde ud af de tredimensionelle repræsentationer. Det er et ekstremt vanskeligt problem at løse.

Desuden bruger computersyn ofte andre kontekstuelle oplysninger til at overvinde begrænsningerne i to-dimensionelle billeder. Det tager højde for oplysninger som farve, lysstyrke eller kontrast. For eksempel, hvis en objektgenkendelsesalgoritme er på udkig efter et træbord, kan det sikkert fjerne eventuelle ikke-trærelaterede farver fra inputbillederne. Computervisionsalgoritmer fjerner også støj i inputdataene.

OpenCV-biblioteket er designet til at gøre implementeringen af ​​algoritmer til computersyn lettere. Det håndterer beregningskompleksitet, så udviklere kan koncentrere sig om opgaver på højt niveau.

Historien om OpenCV

I 1999 startede OpenCV hos Intel som et initiativ til at fremme CPU-intensive applikationer. Gary Bradski, der arbejdede hos Intel på det tidspunkt, bemærkede, at studerende ved MIT Media Lab delte biblioteker for at få et forspring i computersynsapplikationer. Dette inspirerede ideen til at opbygge en computersynsinfrastruktur, der let kan bruges.

Fra Intel flyttede OpenCV-projektet til Willow Garage, et robotforskningslaboratorium og teknologiinkubator med base i Menlo Park, Californien. I øjeblikket vedligeholdes OpenCV open source-projektet af Itseez, et skræddersyet computerudviklings- og konsulentfirma.

OpenCV version 1.0 blev udgivet i 2006. Den næste store version 2.0.0 kom i 2009. Den aktuelle større version 3.0.0 blev udgivet i 2015. Den seneste version til dato er OpenCV 3.3.0.

Brug af OpenCV

Biblioteket har vundet popularitet blandt forskere og akademikere. Det bruges ofte som et undervisningsværktøj til computersyn. Men OpenCV er robust nok til at understøtte virkelige problemer.

Du kan bruge OpenCV til ikke-kommercielle og kommercielle produkter. Det bruges af branchegiganter som Google, Yahoo, Microsoft, Intel, IBM, Sony, Honda og Toyota. Forskningsinstitutter ved førende universiteter som MIT, CMU, Stanford og Cambridge yder støtte til biblioteket. OpenCV Yahoo Group har 50.000 medlemmer over hele verden.

Installation af OpenCV

For at demonstrere installationen af ​​OpenCV bruger jeg Ubuntu 17.10 og udfører installationen i et nyt dockerbillede for at sikre, at der ikke er modstridende pakker til OpenCV dev-miljøet.  Her er min kommandolinje til dockeropsætning:

docker pull ubuntu
docker run -it 00fd29ccc6f1 bash
apt-get opdatering

Ok godt, nu har du et nyt miljø, lad os installere nogle krævede afhængigheder for at gøre miljøet brugbart.

apt-get install wget cmake g ++ unzip vim

Dernæst har vi brug for kildekoden til OpenCV. Du kan hente kildekoden fra hjemmesiden her og sikre, at du downloader den nyeste version.  Pak det ud, og opret derefter et build-bibliotek til CMake-systemet, og indtast biblioteket:

wget https: // github.com / opencv / opencv / arkiv / 3.3.1.lynlås
cd opencv-3.3.1
mkdir build
cd-opbygning

Dernæst kan vi bygge biblioteket og installere det i systemstien i dockerbilledet.  Hvis du ikke bruger docker, skal du beslutte dit build-præfiks, men ved hjælp af et dedikeret dockerbillede gør alt dette meget simpelt som vist nedenfor:

cmake ..
lave
foretage installation

For at kontrollere, at installationen og installationen var vellykket, kan vi skrive et trivielt C ++ - testprogram, der inkluderer et OpenCV-bibliotek, og derefter køre det.  Her er en eksempelkode, du kan bruge til at teste din installation:

#include "opencv2 / core / core.hpp "
#omfatte
int main ()

cv :: Point2f p (4, 5);
std :: cout << "Point output: " << p << std::endl;
returnere 0;

Du kan bygge og køre det sådan:

root @ 6d6b443afced: ~ / src # g ++ test.cpp-o test
root @ 6d6b443afced: ~ / src # ./prøve
Punkt output: [4, 5]

Tillykke med arbejdet, jobbet er gjort.

Næste skridt

OpenCV ansigtsgenkendelse

Referencer:

  • https: // opencv.org /
  • https: // opencv.org / om.html
  • https: // docs.opencv.org / 3.3.1 / d1 / dfb / intro.html
  • https: // da.wikipedia.org / wiki / OpenCV
Mus Sådan ændres mus og touchpad-indstillinger ved hjælp af Xinput i Linux
Sådan ændres mus og touchpad-indstillinger ved hjælp af Xinput i Linux
De fleste Linux-distributioner leveres som standard med "libinput" -biblioteket til at håndtere inputhændelser på et system. Det kan behandle inputhæn...
Mus Remap dine museknapper forskelligt til anden software med X-Mouse Button Control
Remap dine museknapper forskelligt til anden software med X-Mouse Button Control
Måske har du brug for et værktøj, der kan ændre din muses kontrol med hver applikation, du bruger. Hvis dette er tilfældet, kan du prøve en applikatio...
Mus Microsoft Sculpt Touch Wireless Mouse Review
Microsoft Sculpt Touch Wireless Mouse Review
Jeg har for nylig læst om Microsoft Sculpt Touch trådløs mus og besluttede at købe den. Efter at have brugt det et stykke tid besluttede jeg at dele m...