Sisukord:
- Samm: selle valmistamise protsess
- 2. samm: kuidas see toimib?
- 3. samm: mida see teeb?
- 4. samm: miks ma selle tegin?
- Samm: täiustused ja tulevased versioonid?
Video: GET1033 Pythoni kodeeritud pildiprotsessor: 5 sammu
2024 Autor: John Day | [email protected]. Viimati modifitseeritud: 2024-01-30 08:48
Selle projekti eesmärk on luua oma mooduli GET1033 Exploring Computational Media Literacy jaoks oma pythoni kodeeritud pildiprotsessor. Esialgu peab kasutaja sisestama oma foto ja seejärel valima soovitud filtrid. Lõin 9 filtrit, mis on järgmised: sisendpildi kuvamine, peegel, riba taha panemine, läbipaistva riba taha panemine, ringpilt, hägusus, pööramine, värvi muutmine ja Photoshop. Pärast ühe valimist on väljundpildil efektid. Nagu pildil näidatud, on see värvimuutmise filter, kus tuvastan pildil rohelised värvipikslid ja teisendan need roosaks.
Samm: selle valmistamise protsess
Samm: laadige Python siit alla!
Samm: kodeerige see!
Esiteks importisin koodis kasutamiseks paar pakki, millel oli eelkodeeritud funktsioon. Minu imporditud paketid on Scipy, Matplot ja Numpy.
Scipy jaoks importisin mitmesugused rutiinid (MISC) ja mitmemõõtmeline pilditöötlus (NDIMAGE). MISC on pildi lugemiseks ja salvestamiseks, NDIMAGE aga gaussi filtri tegemiseks ja pööramiseks.
Matplotlibi jaoks on see raamatukogu graafiku joonistamiseks Pythonis, mis pakub MATLAB-tüüpi liidest.
Numpy jaoks on see raamatukogu, mis toetab suuri, mitmemõõtmelisi massiive ja maatrikseid. Numpy on oluline, kuna see võimaldab mul massiivi lisades või korrutades tõhusalt redigeerida piltide punase, rohelise ja sinise (RGB) massiivi. Näiteks A = [0, 1, 2] ja Numpy juuresolekul A*2 = [0, 2, 4] selle asemel, et saada A*2 = [0, 1, 2, 0, 1, 2].
Värvi muutmise filtri kallal töötades üritan tüdruku rohelised juuksed roosaks muuta. Niisiis avastasin pildil rohelised värvipikslid ja korrutasin need (2, 0,2, 0,8). Seega saan ma roheliste juuste asemel roosade juustega tüdruku.
Mis puudutab Photoshopit, siis proovin Avengersi pildi rohelise tausta asendada NUS -i pildiga. Niisiis korrutasin kõikide roheliste pikslitega 0 ja lisasin seejärel rohelistele pikslitele NUS -pildi pikslid. See annab mulle pildi Avengersist NUS -is.
Lisasin oma koodi ka GitHubile ja saate selle siit alla laadida!
2. samm: kuidas see toimib?
Lisatud on vooskeem, mis näitab, kuidas kogu kood töötab!
1. Esiteks palutakse kasutajal sisestada valitud pilt. 2. Seejärel kuvatakse filtrite loend, mille vahel kasutaja saab valida. 3. Kui kasutaja sisestas '1' kuni '9', töödeldakse ja väljastatakse pilt vastavalt igale filtrile.4. Kui kasutaja sisestas 'R', lähtestatakse kogu programm ja kasutajal palutakse pilt uuesti üles laadida. Kui kasutaja sisestas 'Q', siis programm väljub tsüklist.
3. samm: mida see teeb?
Selles projektis on minu loodud 9 filtrit, nimelt
1. Kuva sisendpilt - üleslaaditud pildi kuvamiseks
2. Peegelpilt - objekti peegeldatud dubleerimine, kuid see on vastupidises suunas
3. Pane riba taha - mustade vertikaalsete ribade sisestamine, mille laius ja vahe on 50 pikslit.
4. Pange läbipaistva riba taha - läbipaistvate vertikaalsete ribade sisestamine, mille laius ja vahe on 50 pikslit
5. Ringjoon - pildi tegemiseks ringi keskele
6. Hägusus - pildi hägustamiseks
7. Pööramine - pildi pööramiseks 45 kraadi võrra
8. Värvi muutmine - rohelise värvi muutmiseks roosaks
9. Photoshop - pildi osa muutmiseks teise pildiga
4. samm: miks ma selle tegin?
Varem olen uudishimulik, kuidas Instagram ja Snapchat pakkusid piltide jaoks filtrid, mis muutsid need nii huvitavaks. Pärast liitreaalsuse loengut ja õpetust tahtsin teha midagi sellega seotud, kuid tahaksin alustada põhitõdest, milleks on pilditöötlus, kuna olen programmeerimises nõrk ja tahaksin õppida Pythoni kodeerimist.
Samm: täiustused ja tulevased versioonid?
Üks selle projekti täiustusi on luua oma näofiltrid otsevideotesse Pythoni abil. Proovisin seda kodeerida, kuid ei suutnud ühtegi neist programmeerimisteadmiste ja ajapiirangu tõttu saavutada. Peale selle võib pildiprotsessor olla "targem", kus see tuvastab automaatselt värvid ja muudab ainult soovitud osi. Ühel korral üritan muuta inimese mustad juuksed teise värviga. Lõpuks muudan nii silmade kui ka juuste värvi siniseks, mis muudab pildi väga kummaliseks. Loodan, et suudan oma näo luua
Soovitan:
Kaustade sünkroonimine Pythoni abil: 5 sammu
Kaustade sünkroonimine Pythoni abil: see juhend näitab teile, kuidas hoida kahte kausta (ja kõiki nende kaustu) sünkroonis, nii et üks on teise otsene koopia. Ideaalne töö varundamiseks nii kohapeal, pilve-/võrguserverisse kui ka USB -draivi. Programmeerimise kogemus puudub
DIY GPS-jälgija --- Pythoni rakendus: 5 sammu (piltidega)
DIY GPS Tracker --- Pythoni rakendus: osalesin kaks nädalat tagasi jalgrattasõidul. Pärast lõpetamist tahtsin kontrollida marsruuti ja kiirust, millega sel ajal sõitsin. Kahjuks seda ei saavutatud. Nüüd kasutan ESP32 -d GPS -jälgija tegemiseks ja võtan selle oma jalgrattatee salvestamiseks
Pythoni kasutamine mitte-inglise klaviatuuripaigutuste õppimiseks: 8 sammu
Pythoni kasutamine mitte-inglise klaviatuuripaigutuste õppimiseks: Tere, ma olen Julien! Olen informaatikatudeng ja täna näitan teile, kuidas saate Pythoni abil õpetada endale mitte-inglise keele klaviatuuripaigutust. Tänapäeval toimub palju keeleõpet veebis ja üks asi, mida inimesed saavad
Sonic Pi "Twinkle Twinkle Little Star" kodeeritud laul Macile: 6 sammu
Sonic Pi "Twinkle Twinkle Little Star" kodeeritud laul Macile: Need on põhilised juhised, kuidas kodeerida " Twinkle Twinkle Little Star " Macis Sonic Pi
Dekoodri visiitkaart - QR -kodeeritud salajane sõnum: 6 sammu (piltidega)
Dekoodri visiitkaart - QR -koodiga salajane sõnum: hea visiitkaart võib aidata teil kontakte hoida, ennast ja oma äri reklaamida ning sõpru leida. Kui loote isikliku visiitkaardi, mis hõlmab adressaati teie kaardi aktiivset tõlkimist, mäletab ta tõenäolisemalt