Chrome papildinājums, kas analizē Facebook attēlus izmantojot JS, PHP un Python.

Šodien es uzrakstīju Chrome pluginu, kas man ļauj jebkura Facebook attēlam veidot tehnisko analīzi. Šeit ir piemērs – sievietes bilde. Šī bilde tiek sadalīta pikseļos. No šiem pikseļiem tiek atrasts, kurā vietā atrodas cilvēka seja. Tā pat var būt leņķī, kā redzam bildē, ne tieši uz priekšu skatoties. No šīs sejas tiek izvērtēts, kur ir acis, kur deguns, kur mute, kur sejas kontūras. No tā tiek izveidota tā kā sejas līniju karte. Un no tā savukārt tiek izvērtēts šī cilvēka dzimums, šajā gadījumā sieviete, aptuvenais vecums, emocijas. Kā tiek noteikts emocijas? Ir datubāze ar to, kura emocija, kādā veidā ietekmē sejas grimases. Piemēram, paceltas uzacis parasti ir priecīgākas vai bailīgas, uzacis uz leju ir dusmas. Pēc tā visa tiek salikta kopā šī proporcionālā emociju karte, kas šajā sejā ir atrasta. Un līdzīgā veidā arī par šo rasi. Tātad es jau pagājušajā reizē rādīju, kā tas strādā, bet šoreiz es parādīšu, kā es to uztaisīju ērtāk lietojamu caur Chrome pluginu un savu serveri. Atvērsim, teiksim, manu attēlu. Un te mēs redzam, ka te parādīsies poga Ambex Analyzer. Šī poga parādīsies tāpēc, ka es ar savu Chrome pluginu uztaisīju paplašinājumu Facebook platformai, lai katrreiz, kad tiek atvērta bilde vēl lielākā izmērā, šeit parādās poga, kas ir sasaistīta ar manu PHP serveri, kurā šī informācija tiks apstrādāta. Es nospiežu uz pogas Ambex Analyzer. Tiek atrasta mana seja, kur tieši tā atrodās. Es apvilku ar kvadrātu, lai būtu vieglāk saprotams. Tālāk pēc šī attēla tiek novērtēts, ka es esmu vīrietis, vecums tiek noteikts 25. Man pašam ir 32 gadi, bet nu 25 arī nav slikts vecums, ko noteikt, laikam es izskatos jaunāks. Un par emocijām es esmu simtprocentīgi priecīgs, tā vismaz šī programma saka. Un simtprocentīgi baltais, kas tā arī varētu būt. Bet paskatīsimies kādu interesantāku bildi. Teiksim, šī ir bilde, kura bija vienā žurnālā.

Un šajā bildē seja tiek noteikta pareizajā vietā, arī vecums vīrietis tai seko 24 gadīgs, kas ir interesanti, jo tā bilde ir senāk uzņemta. Un tālāk šeit ir jau emociju gamma: dusmas 14%, bailes 35%, skumjas 47%, mazliet neitralitātes (1%), un es esmu maksimāli balts, bet mazliet man kaut kas no spāņu un vidus austrumu rasēm arī atrasta, kas ir interesanti.

Tad kas šeit notika? Tad tajā brīdī, kad es nospiedu uz pogas Ambex Analyzer, uz manu PHP serveri aizies Pieprasījums. Attiecīgi, Jūs redzat, ka uz localhost/analyze.php tika aizsūtīts tas pats bildītes links. Šeit Jūs varat redzēt, kas notiek. Te ir mans analyze.Php.

Šeit šis links tiek saņems pa `img` GET parametru.

Tālāk tiek izpildīta Python komanda, attiecīgi es no PHP izpildu Python komandu, jo Python bibliotēka spēj, tās sejas apstrādāt, bet ar PHP tādas iespējas nav. Savienojot šīs programmas kopā, te mēs redzam kā Python komanda tiek izpildīta ar python.exe ar konkrēto analyzer.py parametru. Tālāk analyzer.py parametrs – tas ir tas, kuru šī programma rakstīja šajā šajā programmā šis DeepFace algoritms ir iekšā. Te mēs izmantojam šo test.Jpg attēlu, ko es lejupielādēju no PHP. Un tad tas tiek izanalizēts, un json rezultāts tiek atgriezts atpakaļ uz PHP. Tālāk šis json rezultāts tiek apstrādāts. Un šeit PHP pusē uzģenerēju HTML, CSS un visu to struktūru, ko jūs fiziski redzat šeit.

Es šo gribēju parādīt, jo šis ir labs piemērs, kā Tu vari ķēdītē saslēgt vairākas programmas, vairākas programmēšanas valodas un vairākus risinājums, lai maksimāli ērti dabūtu savu risinājumu. Paskatīsimies vēl piemēru, teiksim, rekur ir Barack Obama. Paskatīsimies, ko sistēma mums pateiks. Viņam ir 93% skumjas atrastas šajā bildē. Vecums 35. Tas gan mazliet par jaunu. Vīrietis tas ir skaidrs. Un tālāk mēs redzam ka afro amerikānis viņš noteic, ka uz 69 procentiem. Tātad rases šis algoritms tīri labi saprot. Paskatīsimies vēl kādu, te būs Shakira. Un paskatīsimies kādu Shakiras bildi. Teiksim rekur viens attēls. Nospiežam Ambex Analyzer, un mēs redzam, ka vecums noteikts 31, Sieviete tātad dusmas 53% šeit viņas sejai noteikts. Tālāk skumjas 35 procenti, aziātu 23%, bet visvairāk latino, spāņu, būtībā dominējošā rase tika noteikta kā spāņu rase, kas ir atbilstoši. Paskatāmies vēl vienu. Džekijs Čans paskatīsimies kādu no viņa attēliem. Paņemsim šo un izanalizēsim, un mēs redzam, ka viņš novērtēts kā vīrietis 38 gadus vecs. Emocijas: prieks 98% viņa sejā ir atrodams, mazliet ir neitralitāte. Te mēs redzam pašu Džekiju Čanu, un viņš kā aziāts novērtēts uz 86%.

Šī ir jaudīga platforma, jaudīgs rīks, tas saucās Deep face. Kā jau rādīja šajā pitona programmā. Un te es gribēju parādīt to, kā jebkuru rīku, ko Tu atrodi, var īstenot caur bibliotēku un apstrādāt. Tu vari saslēgt ar datiem, kurus Tu apstrādā, teiksim ar datubāzēm vai ar sistēmām, kuras Tu ikdienā lieto, un veikt kaut kādas izmaiņas.

Te es arī parādīšu, kā es uzrakstīju šo Chrome pluggin. Es izmantoju tampermonkey, jo ar to JavaScript var viegli veikt jebkādus Chrome papildinājumus nu vispār tie Chrome pluggin tāpat ir taisīti JavaScript, bet caur šo programmu tas ir vieglāk, ja Tu vari vienkārši jebkurai mājaslapai uzstādīt atbilstošu skriptu. Es šeit ielādēju J Query un ar to arī uztaisīju, lai tiktu atrasts, kurā vietā šis – media-vc-image – šis attēls, kas ir tas lielais atvērums. Tālāk es uztaisīju, lai links ved uz šo localhost/analyze – attiecīgi manu lokālo PHP serveri. Tālāk es uztaisīju šo pogu Ambex Analyzer. Re kur a target, konkrētie parametri un funkcijas, un katru sekundi viņš pārbauda, vai gadījumā neparādās jauna bilde, kurai šādu pogu var pievienot. es kādā video varu arī parādīt, kā veido šādus Chrome pluginus , ja jums interesē, jo tas ļauj jums paplašināt jebkuras mājaslapas funkcionalitāti ar papildus lietām. Un Ja jums ir savs PHP serveris, kurā jūs varat šos datus apstrādāt un glabā datubāzē. Tas var veidot gan efektīvus skrāpētājus, gan efektīvus automatizācijas rīkus, un vispār tas ļauj atvieglot darbus, kas regulāri jādara.

Leave a Reply

Your email address will not be published. Required fields are marked *