Napravite vlastiti Neuralne slike pomoću DeepStyle & Ubuntu

  • Mark Lucas
  • 0
  • 4826
  • 297
Oglas

Neuronske mreže mogu učiniti puno. Oni mogu interpretirati slike, razumjeti naše glasove. 6 Google Now značajke koje će promijeniti način pretraživanja 6 Google Now značajke koje će se promijeniti kako pretražujete Možda već upotrebljavate Google Now na svom Android uređaju, ali dobivate li sve što možete to? Poznavanje ovih malih značajki može donijeti veliku razliku. i prevođenje razgovora Kako djeluje Skypeov Star Trek Translator kako djeluje Skypeov Star Trek Prevoditelj Skypeova nova značajka prevođenja nudi nešto o čemu su sanjali otkad je Star Trek - način bez napora za komuniciranje na više jezika. , Ali jeste li znali da se i oni mogu slikati?

Nedavni istraživački rad (pod naslovom “Neuralni algoritam umjetničkog stila“) započeo je buku internetske rasprave s nekoliko upečatljivih vizualnih primjera. Rad u osnovi govori o tehnici uvježbavanja duboke neuronske mreže Microsoft vs Google - Tko vodi utrku umjetne inteligencije? Microsoft vs Google - Tko vodi utrku umjetne inteligencije? Istraživači umjetne inteligencije ostvaruju opipljiv napredak, a ljudi opet počinju ozbiljno govoriti o AI. Dva titana koji predvode utrku umjetne inteligencije su Google i Microsoft. odvojiti umjetnički stil od strukture slike i kombinirati stil jedne slike sa strukturom druge. Rezultat svega ovoga je što možete trenirati ogromnu neurološku mrežu u koju se fotografije mogu pretvoriti “neuronske slike” koji izgledaju kao da su ih slikali poznati umjetnici - “digitalne krivotvorine,” da se tako izrazim.

Evo nekoliko primjera iz članka. Prva slika je original. Kasnije slike nastaju u rezultatima, a slika s koje je stil uzorkovan prikazana je minijaturno.

Izvorni istraživači, nažalost, nisu objavili svoj kod. Međutim, neki su neustrašivi programeri ponavljali svoje rezultate tijekom posljednjih nekoliko dana, a njihov je kôd dostupan, open source na Internetu. Sve što trebate za pokretanje je Linux stroj i malo strpljenja.

Danas ću vas provesti kako to učiniti i pokazati vam neke moje vlastite rezultate. To možete smatrati labavim nastavkom našeg tutorial DeepDream Stvaranje vlastitih snova o umjetnoj groznici s Googleovim „DeepDream“ stvaranjem vlastitih snova o umjetnoj groznici s Googleovim „DeepDream“ Jeste li vidjeli da trostruke slike izlaze iz DeepDream-a? Želite napraviti svoje? Ne tražite dalje! , Malo je komplicirano, ali svako tko ima Linux stroj može slijediti - ne treba iskustvo kodiranja.

Picasso svjetlosnu sliku pretvorio sam u Picassovu sliku uz #DeepStyle! pic.twitter.com/cjkEoIhVcF

- James Blaha (@jamesblaha) 5. rujna 2015

Postavljanje softvera

Prvo, ako vam se ne žuri ili nemate Linux uređaj, i dalje se možete igrati s DeepStyleom pomoću bot boba DeepForger Twitter (pošaljite mu sliku i stil, a na kraju će odgovoriti s rezultatima koje ste želite). Ako želite brzo obraditi više slika (i s većom kontrolom rezultata), pročitajte vodič.

Prvo provjerite imate li ažuriranu kopiju Ubuntu (14.04 je ono što sam koristio). Trebali biste imati barem nekoliko dodatnih svirki prostora na tvrdom disku. Više informacija potražite u našem vodiču o dual-boot Ubuntuu uz Windows Tired Of Windows 8? Kako dvostruko pokretanje sustava Windows i Ubuntu umorni od sustava Windows 8? Kako udvostručiti podizanje sustava Windows i Ubuntu Ako otkrijete da Windows 8 nije baš vaša šalica čaja i nema izvediv put za smanjivanje razine unaprijed, možda bi bilo dobro dvostruko podići Linux kako biste imali alternativu…. I trebat će vam korijenske povlastice, stoga se obavezno potrudite prije nego što nastavite.

Osnovni alati

Desno od šišmiša, ovo je projekt otvorenog koda, i mi ćemo ga htjeti imati Git instaliran. Git je zlatni standard za softver za nadzor verzija Što je Git i zašto biste trebali koristiti kontrolu verzije Ako ste programer Što je Git i zašto biste trebali koristiti kontrolu verzije Ako ste programer kao web programeri, puno vremena mi obično radimo na lokalnim razvojnim mjestima, a zatim samo prenosimo sve kad završimo. To je u redu kad ste samo vi, a promjene su male,… U Githubu se održava gotovo svaki projekt otvorenog koda koji vrijedi znati.

Da biste preuzeli i instalirali Git, samo otvorite terminal i utipkajte ga “sudo apt-get install git” i slažete se sa zahtjevima instalatora.

Sljedeće: idemo postavi neke alate za osnove potreban da bi softver radio.

Prvo instalirajte Lua. Ovo je jezik na kojem je alat napisan. Prilično je jednostavan. Samo upišite “sudo apt-get install lua5.2” i slijedite postupak instalacije.

Drugo, idemo po Luarocks. Ovo je alat koji olakšava instalaciju drugih alata (zar ne volite Linux?). Unesite ovaj “sudo apt-get install luarocks” i slijedite korake instalacije.

Treće, instalirat ćemo Luajit. Ovo je upravo pravovremeni prevodilac za Lua koji će nam život učiniti malo jednostavnijim. Samo upišite “sudo apt-get install luajit.”

Zasada je dobro.

Ja sam bot koji stvara krivotvorine na vašim fotografijama u stilu poznatih slikara. Kliknite za upute ispod! pic.twitter.com/3MpThDNwRE

- The Deep Forger (@DeepForger) 5. rujna 2015

okviri

Zatim ćemo instalirati Torch, znanstveni okvir računalnog i strojnog učenja koji čini okosnicu aplikacije. Nažalost, ovaj se ne može instalirati pomoću apt-get (standardni Ubuntu upravitelj paketa).

Srećom, oni imaju jednoredni instalacijski program koji koristi neku magiju naredbenog retka. Vratite se na svoj terminal i uđite “curl -s https://raw.githubusercontent.com/torch/ezinstall/master/install-all | udariti“.

Kad završite, utipkajte “luajit -ltorch“. Na ovaj će se način pojaviti sučelje baklje i provjeriti je li sve ispravno instalirano.

Izlazite iz toga.

Sad idemo instalirati loadcaffe - paket specifičan za neuronsku mrežu. Jedinu ovisnost instalirajte tako da upišete “sudo apt-get install libprotobuf-dev protobuf-prevoditelj“. Tada možete sami instalirati paket koristeći “sudo luarocks instalirati loadcaffe ".

@Johnicholas Vaša krivotvorina, avec stil Škole Rembrandta van Rijna. #DigitalArt #StyleNet pic.twitter.com/pf0sZxWkaT

- The Deep Forger (@DeepForger) 7. rujna 2015

Dvostruka provjera zavisnosti

Konačno ćemo unaprijediti neke stvari samo kako bismo osigurali da sve ide glatko.

Tip “sudo luarocks instalirati sliku” kako biste bili sigurni da je vaš paket slika ažuriran. Zatim unesite “luarocks instalirati nn” koji će isto učiniti za vaš 'nn' paket.

Instalacija dubokog stila

Dobro! U ovom smo trenutku spremni sami instalirati softver. Radi čistoće, stvorite novu mapu u vašem kućnom imeniku ('mkdir DeepStyle'). Zatim ga upišite koristeći “cd Deepstyle“. Sad upišite “klon sudo git https://github.com/jcjohnson/neural-style.git ".

Sljedeće, moramo preuzeti model. Napravite šalicu kave ili nešto slično, ovo će potrajati. Natrag na terminal i utipkajte “sudo sh modeli / download_models.sh“. To će započeti dugačak, složeni postupak preuzimanja. Ako ne uspije zbog pogreške u dopuštanju, pokušajte sebi dati dozvole za čitanje i pisanje u odgovarajuće mape, koristeći chmod.

@ 44thats44oars je naručio ovaj #ProceduralArt #NeuralArt. pic.twitter.com/tbMH7gsvc8

- The Deep Forger (@DeepForger) 6. rujna 2015

Korištenje dubokog stila

Ok, dobro je da krenemo. Upotreba softvera prilično je jednostavna.

Provjerite jeste li u Imenik DeepStyle / neuronskog stila u terminalu. Sada će vam trebati neke slike za rad. Preuzmite ih s Interneta (ili što već), a zatim ih kopirajte u Mapa DeepStyle / neuronskog stila pomoću preglednika datoteka.

Sada možete koristiti naredbeni redak za obradu pojedinačnih slika. Format je prilično jednostavan:

th neural_style.lua -style_image YOURPAINTINGHERE.jpg - content_image YOURPHOTOHERE.jpg -gpu -1

(Očito, morat ćete zamijeniti komade u SVIMA CAPS imenima vaših datoteka).

Time će se pokrenuti neuronska mreža. Trajat će oko sat vremena, pljuštajući nove djelomično konvergirane slike svakih nekoliko minuta dok se ne završi. -gpu -1 zastava sprečava da pokuša pristup vašem GPU-u.

Nakon nekoliko sati pokušaja (i nekoliko puta zavirivanja u operativni sustav) nisam uspio dobiti Ubuntu i CUDA da se lijepo igraju sa svojim GPU-om (NVIDIA GTX 970). Ako imate više sreće s tim, morat ćete instalirati CUDA i cudann.torch (za više informacija pogledajte github repo). Ako ne, to je u redu - i dalje će raditi koristeći vaš CPU; bit će samo malo sporije.

Ako imate bilo kakvih problema kako ovo sve raditi, samo me pitajte u komentarima, a ja ću dati sve od sebe da vam pomognem.

Rezultati

Evo nekoliko slika koje sam stvorio u posljednjih nekoliko dana. Rezultati su pomiješani, ali mnogi od njih su prilično impresivni.

Kliknite ovdje za punu rezoluciju.

Ovo je moj prijatelj Zack na planinarskom putovanju u Yellowstone. Stil proizlazi iz apstraktne slike, koju je stvorila Theresa Paden. Bilo mi je znatiželjno vidjeti kako će sustav raditi koristeći sliku sa apsolutno nikakvom strukturom. Rezultati su prilično uredni i definitivno se mogu vidjeti sličnosti sa stilskom slikom.

Kliknite ovdje za punu rezoluciju.

Ovaj dolazi iz ljubaznosti jednog od mojih najdražih umjetnika, Charlesa Demuth-a (vidi: Tamjan nove crkve i sliku 5 u zlatu). Zanimljivo je da je Demuth jedna od glavnih vizualnih inspiracija za umjetnost Team Fortress 2 Team Fortress 2: Igra s parom bez igranja Morate igrati Team Fortress 2: Besplatna igra parova koju morate igrati je Tvrđava 2 samo brza igra za testiranje grafike i performansi ili je to vrijedi igrati više puta? , kao što vidite iz slike stila.

Nahranio sam ga slikom Jersey Cityja koju sam našao na Wikimediji. Rezultati su ... prilično dobri. Nije se ukazao na uglast Demuthov stil, ali je zasigurno pokupio mekan, teksturiran izgled i paletu boja.

Kliknite ovdje za punu rezoluciju.

Ovaj je pokušaj generiranja sintetičkog O'Keeffea, koristeći prilično svjetovnu sliku nekih cvjetova koje sam pronašao. Rezultati su, iskreno, spektakularni. Estetski, ovo je jedan od mojih najdražih rezultata. Bogatstvo boja i oblika O'Keeffea jasno dolazi do izražaja. Slojeviti rubovi cvjetnih latica postaju rubovi lišća u pozadini. Cvjetovi se sami otapaju u bojama, postajući gotovo apstraktni.

Bilo bi dobro slikati kad bi to učinio čovjek. Vrlo sam u iskušenju potrošiti nekoliko dana na stvaranje verzije ove rezolucije veće razlučivosti i uramiti je.

Kliknite ovdje za punu rezoluciju.

Evo moje prijateljice Shannon u kostimu za Noć vještica, u Picassovom tisku. Zanimljivo je da je uređaj odlučio donji dio lica obojiti bijelim (slično kao u rasporedu u Picassovom komadu u boji). Nisam siguran je li to bila slučajnost ili ne, ali rezultati su upečatljivi. Čini se da je također ispravno identificirala Shannonovu kosu na lijevoj strani i ponovno je nacrtala pomoću boje i crte s kose na slici. Ditto za svoj šešir.

Ovo je jedan od dijelova gdje počinju postajati jasna ograničenja tehnike. Da je Picasso zapravo slikao Shannon, on bi izbacio strukturu njezina lica i iskrivio crte lica kako bi postigao željeni efekt. Ovaj sustav ne razumije takve vrste koncepata visoke razine i može oponašati samo površne aspekte stila, poput tamnih, kutnih linija i palete boja.

Kliknite ovdje za punu rezoluciju.

Prilično izraženo: slika Eiffelovog tornja i Van Goghove slike drugo Zvjezdana noć. Dobar je posao pretvoriti oblak u Van Gogh-ey stilu, unatoč nepostojanju oblaka na originalnoj slici. Također se dobro bavi prevođenjem scene iz dana u noć.

Nisam bio siguran zašto je odlučio da vrh Fiffel tornja postane vatreni stup. Izgleda cool, ali nije stvarno opravdano iz ulaznih podataka. Tada sam shvatio da stilska slika ima trinaest dugih, okomitih žutih pruga u obliku refleksija u vodi. To je prilično masivan skup, s obzirom na tako malo podataka o treningu. Jadnica je vjerojatno naučila da svaki okomiti rub visokog kontrasta mora biti jedno od tih odraza. Možete vidjeti više tuđih okomitih pruga u oblacima.

Kliknite ovdje za punu rezoluciju.

Ista Van Goghova slika, ali ovaj put sam joj dao nekoliko stvarnih zvijezda da slikaju. U ovom slučaju, stubovi dio maglice Eagle. Sviđaju mi ​​se rezultati - iako, još jednom, možete vidjeti njegovu opsesiju žutim prugama. Svaki okomiti dio stupa postaje svijetla, blještavo žuta linija. Jasno je da je uznemirio i zeleni, što se nije dogodilo u podacima sa treninga, i daje sve od sebe da biste ga se riješili u korist plave i crne.

Tehnologija

Neki su rezultati iz ovoga izuzetno uvjerljivi, mada tehnika ima jasna ograničenja. Neke slike imaju loš sastav, a sustav ima poteškoća s apstraktnijim umjetnicima poput Picassa - koji su voljeli iskriviti njegov predmet i raspršiti njegove značajke. Algoritam uzima svoje kutne crte i sukobljava boje, ali još uvijek je rob piksela vrijednosti slike. Nema razumijevanja da biste trebali odstupiti predaleko od izvornog materijala.

Ono što me uzbuđuje u svemu tome je što ne mislim da su ta ograničenja temeljna.

Pristup koji se ovdje koristi - osposobljavanje mreže na jednoj slici i pomoću nje za izgradnju druge - u osnovi je vrsta haka. Mreži pruža vrlo malo podataka za rad. Naprednija verzija ove aplikacije koristila bi mrežu koja sadrži podatke o mnogim slikama, a možda čak i stvarnim slikama, kako bi joj pružila obilje konteksta o slici koju pokušava “boja.”

Duboko shvaćanje stila može postojati samo u širem kontekstu. Ne možete ga zaključiti iz jedne slike. Dizajn arhitekture koja sustavu daje pristup širim podacima mogao bi mu omogućiti više “čovjeka kao” razumijevanje slike i kako umjetnici predstavljaju različite elemente stvarnog svijeta. Takva mreža mogla bi stvoriti apstraktnije slike i boljeg sastava. Takvi bi algoritmi prestali biti cool igračka (poput ove) i postali bi način proizvodnje stvarne, originalne umjetnosti.

Što je na neki način vrlo osebujna misao.

Izrada vlastitih slika

Ako dobijete razočaravajući rezultat, možete se malo poigrati s opcijama kako biste pokušali ostvariti uvjerljive rezultate. Potpuni popis nalazi se na Githubu. Važni su

  • -content_weight-vrijednost Koliko treba težiti termin rekonstrukcije sadržaja. Zadano je 5e0.
  • -style_weight-vrijednost: Koliku težinu dati slici stila. Zadano je 1e2.
  • -style_scale - vrijednost: Koliki bi broj slikovnih zakrpa trebao sustav analizirati (veće postaje apstraktnije). Zadano je 1,0.

Nakon što sve postignete na zadovoljstvo, u komentarima objavite svoje najzanimljivije slike. Stvarno me zanima što vi smislite.

Slikovni krediti: slikar ljudskog mozga putem Shutterstoka




Još ne komentari

O modernoj tehnologiji, jednostavnoj i pristupačnoj.
Vaš vodič u svijetu moderne tehnologije. Naučite kako koristiti tehnologije i uređaje koji nas okružuju svaki dan i naučite kako otkriti zanimljivosti na Internetu.