Maskinelæring. Dyb læring. Naturlig sprogbehandling. Computer Vision. Automatisering. Stemmegenkendelse. Du har sikkert hørt alle disse og mange andre vilkår for nylig, alt under paraplyen af kunstig intelligens. Faktisk vokser feltet så hurtigt, det bliver stadig mere vanskeligt at negle ned en endelig definition. AI bliver en del af næsten alle aspekter af vores liv, fra E-handel Websites. og søgemaskiner for at låse op på din telefon.
Dine websteder og apps kan udnytte API'er til at trykke direkte ind i AI's kraft. Uden at skulle 'træne' AI-agenter, kan du drage fordel af massive mængder data, der allerede er analyseret. Google, Amazon, IBM og mange andre har skabt endepunkter for udviklere til at kroge ind og begynde at bruge AI med det samme.
På forsiden, kan du tilslutte talekommandoer, Chatbot-grænseflader eller reaktive WebGL-kreative elementer. På bagsiden bruger databaser intelligente algoritmer for at maksimere hastighed og analyse. API'er kan give et lag af abstraktion fra en bred vifte af AI-funktioner, fra forudsigelser til kollektiv træning.
Husk, hvis du laver dit websted mere komplekst, er det vigtigt, at du vurderer dit valg af Web Hosting. service for at sikre, at det kan klare det. Gør et websted fra bunden? Overveje at forenkle processen med en top Website Builder. . Og hvis du opretter en ny Design System , det er vigtigt at holde det sikkert og tilgængeligt i anstændigt Sky lagring .
Computer Vision er undersøgelsen og oprettelsen af kunstige systemer, der udvinder oplysninger fra billeder. Det kan også omfatte det mekaniske synssystem selv. Med hensyn til anerkendelse er det processen med at analysere og bestemme indholdet af et billede eller en serie af billeder (herunder video). Dette kan omfatte medicinske scanninger, fotos, 360 graders video og stort set enhver form for billedsprog, du kan forestille dig.
AI-Powered Computer Vision kan:
Der er masser af valg for Vision API'er, men vi bruger Google's Cloud Vision API. Google er vært for mange AI API'er, herunder naturlig sprogbehandling, stemme anerkendelse, dyb læring og vision.
Cloud Vision API gør det muligt for dine websteder og apps at forstå, hvad der er i et billede. Det vil klassificere indholdet i kategorier, mærkning alt det ser. Det giver også en tillid score, så du ved, hvor sandsynligt det er, at det det mener er i et billede, der faktisk vises der. Du kan bruge dette til at interagere intelligent om kameraindgang i AR- eller VIDEO apps. Du kan oprette værktøjer til at hjælpe dem, der er synshandicappede. Du kan skabe assistenter til at hjælpe med at identificere bygninger eller landemærker til turister. Mulighederne er uendelige.
Hvis du har brugt Googles API'er før, vil nogle af disse første trin være fortrolige. Som med andre Google-tjenester skal du oprette et Cloud-projekt. Gå til Google Cloud Platform Console og opret et nyt projekt eller vælg en eksisterende. Som de fleste af Googles tjenester er Cloud Vision API gratis at bruge, før du begynder at lave masser af API-anmodninger. Du skal muligvis indtaste faktureringsinfo, når du aktiverer API, men dette er ikke opladet med et lavt antal forespørgsler, og du kan fjerne tjenesterne, når du er færdig med test.
Gennemse API Library og vælg Cloud Vision API til dit projekt.
En gang aktiveret skal du se en lille grøn check, og meddelelsen 'API aktiveret' ved siden af den.
Derefter skal du oprette en Service Account. . Tænk på API som en webservice, du opretter. Da vi skal oprette brug som en typisk service, er dette den bedste praksis. Det fungerer også bedst med godkendelsesstrømmen.
Når du har et projekt med API-aktiveret og en servicekonto, kan du downloade din private nøgle som en JSON-fil. Vær opmærksom på placeringen af filen, så du kan bruge den i de næste trin.
Hvis du har problemer med de første par trin, er der En hurtigstartguide Det hjælper og slutter med download af JSON-nøglen.
Du skal indstille Google_Application_Credentials. Miljøvariabel, så det kan fås ved vores API-opkald. Dette peger på den JSON-fil, du lige har downloadet og sparer dig, at du skal skrive stien hver gang. Åbn et nyt terminal vindue og brug eksport Kommando som sådan:
export GOOGLE_APPLICATION_CREDENTIALS="/Users/[username]/Downloads/[file name].json"
Udskift [brugernavn] med dit brugernavn. Sørg for, at stien til det sted, du lagrede den private nøglefil, er korrekt. Udskift [filnavn] med din private nøglefil og brug stien til din fil.
På Windows kan du gøre det samme via kommandolinjen, som denne:
$env:GOOGLE_APPLICATION_CREDENTIALS="C:\Users\[username]\Downloads\[FILE_NAME].json"
Bemærk: Hvis du lukker dit terminal- eller konsolvindue, skal du muligvis køre det igen for at indstille variablen igen. Vi tilføjer dette i vores PHP kode kort så godt, så du behøver ikke bekymre dig om det igen.
Nu er du klar til at grave ind i Cloud Vision API. Du bruger krølle til at gøre hurtige test af API. Du kan også bruge denne metode fra din kode også.
Curl-anmodningerne kan laves på de fleste sprog, om det er PHP, Python eller Node. På denne måde kan du foretage opkaldet direkte i kommandolinjen eller tildele resultatet til en variabel på det sprog, du ønsker. Find nogle hurtige tips om at bruge krølle her .
Opret en simpel JSON-fil for at holde oplysningerne om anmodningen. Kald det Google_Vision.json. . Gem det lokalt til hvor du vil køre terminalkommandoer fra.
{
"Anmodninger": [
{
"billede":{
"kilde":{
"Imagehus":
"https://upload.wikimedia.org/wikipedia/commons/9/93/golden_retriever_carlos_%2810581910556%29.jpg"
}
},
"funktioner": [{
"Type": "type_unspecified",
"Maxresults": 50
},
{
"Type": "Landmark_Detection",
"Maxresults": 50
},
{
"Type": "Face_Detection",
"Maxresults": 50
}
{
"Type": "Label_Detection",
"Maxresults": 50
},
{
"Type": "Text_Detection",
"Maxresults": 50
},
{
"Type": "Safe_search_Detection",
"Maxresults": 50
},
{
"Type": "image_properties",
"Maxresults": 50
}
]
}
]
}
I ovenstående kode har du angivet et billede for at analysere, samt specifikke API-funktioner, der skal bruges, herunder ansigtsdetektering og vartegn detektion. Safe_search_Detection. er fantastisk til at vide, om billedet er sikkert og i hvilken kategori det tilhører, såsom voksenindhold eller voldeligt. Image_properties. fortæller dig om farver og pixel-niveau detaljer.
For at udføre CURL-kommandoen, i din terminal eller kommandolinjeinterface, skal du indtaste følgende.
Curl -x Post -H "Authorization: Bearer" $ (GCloud Auth Application-Standard Print-Access-TOKEN) -H "Indholdstype: Applikation / JSON; charset = UTF-8" - DATA-BINARY @ Google_Vision.json "https://vision.googleapis.com/v1/images:Annotate" & gt; Resultater
Ved at bruge & gt; resultater Syntaks, du har de resultater, der er gemt i en ny fil, der hedder resultater for dig. Du angav webadressen til API ( "https://vision.googleapis.com/v1/images:Annotate" ) og inkluderet dine JSON-data til STOLPE til det.
Du kan få bedt om første gang du bruger dette til at aktivere API eller tillade adgang. Svar Ja eller Y til den hurtige, og det skal returnere JSON.
Hvis du åbner resultatfilen, får du JSON-data resultater fra Vision API-anmodningen. Her er et uddrag:
{
"Responses": [
{
"LabelAnnotations": [
{
"MID": "/ M / 0BT9LR",
"Beskrivelse": "hund",
"Score": 0.982986,
"topicity": 0.982986
},
{
"Mid": "/ m / 01t032",
"Beskrivelse": "Golden Retriever",
"Score": 0.952482,
"topicity": 0.952482
},
{
...
Du ser nogle meget nyttige resultater med det samme. Under LabelAnnotations. node, du kan se en 98 procent match, som billedet indeholder en "hund" og en 95 procent match, at den indeholder en "golden retriever"! AI identificerede allerede indholdet af billedet og andre detaljer, herunder en "snout" og det faktum, at det er sandsynligt en "sportsgrenhund".
Dette krævede ingen træning fra din side på grund af det allerede uddannede Google Vision AI-system. Scanning gennem resultaterne, vil du se alt fra anbefalede afgrødeområder - til auto-beskæringsbilleder til emner - til utrolige detaljer af, hvad der er i billederne, herunder farver og indhold. Prøv det med andre billeder for at se, hvor kraftig API'en er.
Du kan fortsætte med at bruge denne metode til at teste de opkald, vi bruger. Du kan også oprette en lokal SDK på et sprog, du foretrækker, og integrerer det i din app.
Næste vil du lave en simpel web-baseret app for at vise, hvordan du integrerer API'en i dine projekter.
Der er en række SDK'er tilgængelige på en række sprog for at gøre integrationen nem. Du bruger PHP SDK til dette næste afsnit. Hvis du ønsker at finjustere koden, der følger på et andet sprog, er der en stor ressource af SDKS her .
Start med at sikre, at du har en projektmappe oprettet på din lokale eller fjernbetjening. Hvis du ikke har det allerede, få komponist og installer den til din projektmappe. Eventuelt kan du have komponist, der allerede er installeret globalt, og det er også fint.
Kør følgende komponistkommando for at installere leverandørfilerne til Cloud Vision SDK.
PHP -R "Kopier ('https://getcomposer.org/installer', 'Composer-setup.php');"
PHP-R "IF (Hash_File ('Sha384', 'Composer-Setup.php') === '93B54496392C0627746 70AC18B134C3B3A95E5A5E5C8
F1A9F115F203B75BF9A129D5DAA8BA6A13E2CC8A1DA080.
6388A8 ') {ECHO' installatør bekræftet '; } else {echo 'installatør korrupt'; Unlink ('Composer-setup.php'); } ekko php_eol; "
php composer-setup.php
php -r "Unlink ('Composer-setup.php');"
Php Composer.phar kræver Google / Cloud-Vision
Komponist Gør en leverandørmappe i din projektmappe og installerer alle afhængigheder for dig. Hvis du sidder fast ved at indstille dette op og vil bruge PHP, kan du tjekke ud dette Installation af komponist ressource. .
Opret en ny PHP-fil i din projektmappe. Sæt det op, men du kan lide, men inkludere en simpel HTML-formular til at uploade billeder til hurtig test. Her er en eksempel PHP-fil med formularen inkluderet:
& lt;! DOCTYPE HTML & GT;
& lt; html & gt;
& lt; hoved & gt;
& lt; Titel & GT; Net - Computer Vision Tutorial & LT; / Titel & GT;
& lt; / Head & GT;
& lt; body & gt;
& lt; form handling = "index.php" enctype = "multipart / form-data" metode = "post" & gt;
& lt; H1 & GT; Vælg billede / lt; / h1 & gt;
& lt; input type = "fil" navn = "fil" & gt; & lt; br / gt; & lt; BR / GT;
& lt; input type = "send" værdi = "upload billede" navn = "send" & gt; & lt; br / gt;
& lt; / form & gt;
& lt; div class = "resultater" & gt;
& lt;? php
// php kode går her //
hvis (! ISSET ($ _ POST ['send'])) {DIE (); }
? & gt;
& lt; / div & gt;
& lt; / body & gt;
& lt; / HTML & GT;
Koden indeholder en grundlæggende HTML-fil med en formular og en pladsholder til PHP-kode. Koden begynder at tjekke for eksistensen af billedet, indsendt fra formularen. Hvis det ikke er indsendt endnu, gør det ingenting.
Hvis du foretrækker at pege på billeder online eller på dit system, skal du springe over dette trin. Hvis du vil behandle billeder, du vælger, skal du tilføje denne kode for at gemme det valgte billede.
// Gem billede
$ FILEPATH = $ _FILES ["FILE"] ["NAME"];
hvis (move_uploaded_file ($ _ filer ["fil"] ["TMP_NAME"], $ FILEPATH)) {
ECHO "& lt; P & GT; & lt; img src =". $ FILEPATH. "STYLE = 'Bredde: 400px; Højde: Auto;' / & gt; & lt; / p & gt; ";
} ellers {
ekko "fejl !!";
}
Du skal indstille Google_Application_Credentials. variabel for det at godkende. I PHP bruger vi Putenv. kommando for at indstille en miljøvariabel. Tilføj denne kode Næste i din PHP-kode:
Putenv ('Google_Application_Credentials = / Brugere / RichardMattka / Downloads / Vision Tutorial 1-0F464A9A0F7B.JSON');
Udskift stien og filnavnet til din JSON-private nøglefil.
Tilføj biblioteket og initialisere LanguageClient. klasse i din kode. Tilføj denne kode næste:
kræver __dir__. '/vendor/autoload.php';
Brug Google \ Cloud \ Vision \ V1 \ ImageannotatorClient;
$ projektid = 'Vision-tutorial-1';
$ Imageannotator = New ImageannotatorClient ([
'projektid' = & gt; $ ProjectID.
]);
Start med at kræve, at sælgeren autoload. Dette er ens i Python eller Node, når du har brug for dine afhængigheder. Importer ImageannotatorClient. Dernæst for at gøre brug af klassen. Definer din projektid. . Hvis du ikke er sikker på, hvad dette er, skal du se det op i din Google Cloud-projektkonsol. Endelig oprette en ny ImageannotatorClient. objekt bruge dit projektid og tildele det til $ Imageannotator. variabel.
Begynd at indsende billedet til API til analyse. Du vil vise resultatet som JSON til skærmen for nu, men i praksis kan du vurdere resultaterne og bruge dem, som du ønsker.
Tilføj følgende for at indsende billedet til API.
$ image = File_Get_Contents ($ FILEPATH);
$ response = $ imageannotator- & gt; LabelDetction ($ image);
$ labels = $ response- & gt; getlabelannoNotations ();
foreach ($ etiketter som $ label) {
ekko "& lt; div class = 'resultat' & gt;";
$ resultat = $ label- & gt; getdescription ();
ekko $ resultat. "(". $ label- & gt; GetScore (). ")";
ekko "& lt; / div & gt;";
}
Dette sender indholdet fra den indsendte formular til Imageannotator. endepunkt og gemmer resultatet i $ Response. variabel. Det angiver Labeldetection. funktion. Du kan også bruge facedection. Vi LOGODETECTION Vi TextDetection. og mange andre funktioner. For en komplet liste, Tjek her .
Dernæst iterate over listen over etiketter. Dette er blot et eksempel for at vise, hvordan du bruger det: Du kan behandle det og reagere på resultaterne, men du har brug for.
Et andet hurtigt eksempel på, hvor kraftig API er løgn i facedection. fungere. Dette vil returnere følelsesdata samt placeringsoplysninger om hvor i billedet er ansigterne. Prøv denne kode for at se, hvordan det virker.
$ respons = $ imageannotator- & gt; facedection ($ image);
$ ansigter = $ response- & gt; getfaceAnalotations ();
$ likelihoodname = ['ukendt', 'very_unlikely', 'usandsynligt',
'Muligt', 'sandsynligvis', 'very_likely'];
// var_dump ($ etiketter);
foreach ($ ansigter som $ ansigt) {
ekko "& lt; div class = 'resultat' & gt;";
$ Anger = $ Face-& GT; Getangerlikihood ();
printf ("vrede:% s". php_eol, $ sandsynlighedsnavn [$ vrede]);
$ Joy = $ Face- & GT; GETJYLIKELIHOOD ();
printf ("glæde:% s". php_eol, $ sandsynlighedsnavn [$ glæde]);
$ hjørner = $ ansigt- & gt; getboundingpoly () - & gt; GetVertices ();
$ grænser = [];
foreach ($ hjørner som $ vertex) {
$ grænser [] = sprintf ('(% d,% d)', $ Vertex- & GT; getx (), $ Vertex- & Get; Gety ());
}
print ('grænser:'. Tilslut (',', $ grænser). php_eol);
ekko "& lt; / div & gt;";
}
Du starter ved at bruge facedection. Funktionen af annotatoren og passere i billedet som det foregående eksempel. Så får du raceannotiatater. . Du bruger en række responsvægte i mere almindeligt sprog, så du kan se sandsynligheden for visse følelser. Efter dette gentager du svaret som før. Du kontrollerer for to af flere mulige følelser, vrede og glæde, der returnerer resultaterne af dem. Dette vil også give dig hjørnerne af de afgrænsende kasser, der definerer hvert ansigt fundet.
Denne artikel blev oprindeligt offentliggjort i udstedelse 316 af net , verdens bedst sælgende magasin til webdesignere og udviklere. Køb problem 316 her eller Abonner her .
Relaterede artikler:
(Billedkredit: Jason Parnell-Brookes) Denne vejledning viser dig, hvordan du fjerner rynker i Photoshop. Men før vi ..
(Billedkredit: Getty billeder) Brain.js er en fantastisk måde at bygge et neuralt netværk på. Simpelthen sagt, et ..
Status er en stor del af en reaktionsapplikation, hvorfor Redux almindeligvis er parret med det. Disse data kommer ofte fra en da..
Hvis du nogensinde har ønsket at du kunne replikere virkningerne af en traditionel collage maker. i din W..
Animation på nettet er her for at blive. Det er i alt fra de subtile bevægelser, der hjælper med at bringe vores UI De..
Tilføjelse af effekter til tekst kan tilføje et helt nyt niveau af engagement og interesse. Virkninger som f.eks kineti..
Side 1 af 2: Forskellige typer frontend tests (og hvornår man skal bruge dem) ..
Før jeg begynder at arbejde på et personligt billede, begynder jeg normalt at tænke på, hvad jeg vil se i det færdige arbejd..