Sadržaj:
- Korak 1: Proces stvaranja
- Korak 2: Kako to funkcionira?
- Korak 3: Šta radi?
- Korak 4: Zašto sam uspio?
- Korak 5: Poboljšanja i šta će učiniti buduće verzije?
Video: GET1033 Procesor kodirane slike Python: 5 koraka
2024 Autor: John Day | [email protected]. Zadnja izmjena: 2024-01-30 08:07
Ovaj projekt govori o stvaranju vlastitog procesora slike kodiranog pythonom za moj modul, GET1033 Exploring Computational Media Literacy. U početku će korisnik morati unijeti vlastitu fotografiju, a zatim odabrati filtre koje želi. Napravio sam 9 filtera koji prikazuju: Ulazna slika, Ogledalo, Stavi iza trake, Stavi iza prozirne trake, Kružna slika, Zamućenje, Rotacija, Promjena boje i Photoshop. Nakon odabira jednog od njih, izlazna slika će imati efekte. Kao što je prikazano na slici, to je filter za promjenu boje gdje otkrivam piksele zelene boje na slici i pretvaram ih u ružičastu boju.
Korak 1: Proces stvaranja
Korak 1: Preuzmite Python odavde!
Korak 2: Kodirajte ga!
Prije svega, uvezao sam nekoliko paketa sa unapred kodiranom funkcijom dostupnom za upotrebu u kodu. Paketi koje sam uvezao su Scipy, Matplot i Numpy.
Za Scipy sam uvezao razne rutine (MISC) i višedimenzionalnu obradu slika (NDIMAGE). MISC služi za čitanje i spremanje slike, dok je NDIMAGE za izvođenje gausovog filtra i rotiranje.
Za Matplotlib, to je biblioteka za iscrtavanje grafa u Pythonu koja pruža sučelje nalik MATLAB-u.
Za Numpy je to biblioteka koja podržava velike, višedimenzionalne nizove i matrice. Numpy je važan jer mi omogućuje efikasno uređivanje niza crvenih, zelenih i plavih (RGB) slika kada dodajem ili množim niz. Na primjer, A = [0, 1, 2] i uz prisustvo Numpyja, A*2 = [0, 2, 4] umjesto dobivanja A*2 = [0, 1, 2, 0, 1, 2].
Kad radim na filteru za promjenu boje, pokušavam pretvoriti zelenu kosu djevojčice u ružičastu boju. Dakle, ono što sam uradio je da otkrijem piksele zelene boje na slici i pomnožim ih sa (2, 0.2, 0.8). Tako ću dobiti djevojku ružičaste kose umjesto stvarne zelene kose.
Što se tiče Photoshopa, pokušavam zelenu pozadinu na slici Avengers zamijeniti slikom NUS -a. Dakle, ono što sam uradio je bilo množenje 0 na sve zelene piksele, a zatim dodavanje piksela slike NUS -a u zelene piksele. Tada ću dobiti sliku Osvetnika u NUS -u.
Priložio sam i svoj kod na GitHub i možete ga preuzeti ovdje!
Korak 2: Kako to funkcionira?
Dijagram toka je priložen kako bi pokazao kako cijeli kôd radi!
1. Prvo se od korisnika traži da unese sliku po svom izboru. 2. Tada će se prikazati lista filtera koje korisnik može izabrati. 3. Ako je korisnik unio '1' do '9', slika će se obraditi i ispisati prema svakom filteru.4. Ako je korisnik unio 'R', cijeli program će se poništiti i od korisnika će se tražiti da ponovo učita sliku.5. Ako je korisnik unio 'Q', program će tada izaći iz petlje.
Korak 3: Šta radi?
U ovom projektu postoji ukupno 9 filtera koje sam stvorio, naime
1. Prikaži ulaznu sliku - Za prikaz slike koja je učitana
2. Zrcalna slika - Reflektirano dupliranje objekta, ali je obrnuto u smjeru
3. Stavi iza trake - Umetanje crnih okomitih traka širine i razmaka 50 piksela.
4. Stavite iza prozirne šipke - Umetanje prozirnih okomitih šipki širine i razmaka jednakih 50 piksela
5. Slika kruga - Da biste napravili krug u sredini slike
6. Zamućivanje - Za zamućivanje slike
7. Rotacija - Za rotiranje slike za 45 stepeni
8. Promjena boje - Za promjenu zelene boje u ružičastu
9. Photoshop - Za promjenu dijela slike drugom slikom
Korak 4: Zašto sam uspio?
Ranije me zanimalo kako su Instagram i Snapchat došli do filtera za slike koji su ih učinili tako zanimljivim. Nakon predavanja i vodiča o proširenoj stvarnosti, htio sam učiniti nešto u vezi s tim, ali htio bih krenuti od osnove, a to je obrada slika jer sam slab u programiranju i želio bih naučiti Python kodiranje.
Korak 5: Poboljšanja i šta će učiniti buduće verzije?
Jedno od poboljšanja ovog projekta je stvaranje vlastitih filtera za lice u video zapisima uživo pomoću Pythona. Pokušao sam to kodirati, ali nisam uspio postići ništa zbog nedostatka znanja o programiranju i vremenskog ograničenja. Osim toga, procesor slike može biti „pametniji“gdje može automatski otkriti boje i promijeniti samo dijelove koje želimo. U jednom trenutku pokušavam promijeniti crnu kosu neke osobe u drugu boju. Na kraju sam promijenio boju očiju i kose u plavu, zbog čega slika izgleda vrlo čudno. Nadam se da ću uspjeti stvoriti vlastito lice
Preporučuje se:
Obrada slike s Raspberry Pi: Instaliranje OpenCV -a i Razdvajanje boja slike: 4 koraka
Obrada slike pomoću Raspberry Pi -a: Instaliranje OpenCV -a i odvajanje boja slike: Ovaj je post prvi od nekoliko vodiča za obradu slika koji slijede. Pažljivije ćemo pogledati piksele koji čine sliku, naučiti kako instalirati OpenCV na Raspberry Pi, a takođe ćemo napisati i testne skripte za snimanje slike, a takođe i
Procesor Raspberry PI Vision (SpartaCam): 8 koraka (sa slikama)
Raspberry PI Vision procesor (SpartaCam): Raspberry PI sistem procesora za vašeg prvog robota za takmičenje u robotici. O FIRST -u Sa Wikipedije, besplatne enciklopedije https://en.wikipedia.org/wiki/FIRST_Robotics_Compe … PRVO takmičenje u robotici (FRC) je međunarodno visoko s
Iron Man Reactor for fun (joystick za digitalni procesor pokreta): 7 koraka (sa slikama)
Iron Man Reactor for Fun (Joystick za digitalni procesor pokreta): Pozdrav dragi! Ovo je moje prvo uputstvo, pa se nadam vašoj naklonosti i povratnim informacijama! Projekt je interaktivna platforma za kućne zabave, natjecanja, događaje - samo za zabavu. Ovo su dva senzora pokreta izrađena po dizajnu reaktora Iron Man
NUESTRA PROCESADORA ORGÁNICA (NAŠ ORGANSKI PROCESOR): 4 koraka
NUESTRA PROCESADORA ORGÁNICA (NAŠ ORGANSKI PROCESOR): Problem de la proliferacije de los rezidua i mala iskorištenost provociran je zbog čega se ambijentalna kontaminacija odbacuje kada se poveća eniveles gradonačelnika. Somos capaces de percibir el día a día que los desperdicios sobre todo de la bas
Sklapanje matične ploče (minus procesor): 10 koraka
Sklapanje matične ploče (minus procesor): Pomoću ovog uputstva naučit ćete sastavljati različite, odvojive komponente. zbog nedostatka termalne paste neće biti montaže procesora