Satura rādītājs:
- 1. solis: tā izgatavošanas process
- 2. darbība. Kā tas darbojas?
- 3. darbība: ko tas dara?
- 4. solis: Kāpēc man tas izdevās?
- 5. solis: uzlabojumi un ko darīs nākamās versijas?
Video: GET1033 Python kodēts attēlu procesors: 5 soļi
2024 Autors: John Day | [email protected]. Pēdējoreiz modificēts: 2024-01-30 10:56
Šis projekts ir par sava python kodēta attēlu procesora izveidi savam modulim GET1033 Exploring Computational Media Literacy. Sākumā lietotājam būs jāievada savs fotoattēls un pēc tam jāizvēlas vajadzīgie filtri. Es izveidoju 9 filtrus, kas ir: parādīt ievades attēlu, spoguli, ielikt aiz joslas, ievietot aiz caurspīdīgās joslas, apļa attēlu, izplūšanu, rotāciju, krāsas maiņu un Photoshop. Izvēloties vienu no tiem, izvades attēlam būs efekti. Kā parādīts attēlā, tas ir krāsu maiņas filtrs, kurā es atklāju zaļās krāsas pikseļus attēlā un pārvēršu tos rozā krāsā.
1. solis: tā izgatavošanas process
1. darbība: lejupielādējiet Python no šejienes!
2. darbība: kodējiet to!
Pirmkārt, es importēju dažus iepakojumus ar iepriekš kodētu funkciju, ko var izmantot kodā. Manis importētie iepakojumi ir Scipy, Matplot un Numpy.
Skipijam es importēju dažādas darbības (MISC) un daudzdimensiju attēlu apstrādi (NDIMAGE). MISC ir paredzēts attēla lasīšanai un saglabāšanai, turpretim NDIMAGE ir paredzēts gausa filtram un pagriešanai.
Matplotlib tā ir bibliotēka grafika zīmēšanai Python, kas nodrošina MATLAB līdzīgu saskarni.
Numpy tas ir bibliotēka, kas var atbalstīt lielus, daudzdimensiju masīvus un matricas. Numpy ir svarīgs, jo tas ļauj man efektīvi rediģēt attēlu sarkano, zaļo un zilo (RGB) masīvu, pievienojot vai reizinot masīvu. Piemēram, A = [0, 1, 2] un Numpy klātbūtnē A*2 = [0, 2, 4], nevis A*2 = [0, 1, 2, 0, 1, 2].
Strādājot pie krāsu maiņas filtra, es mēģinu meitenes zaļos matus pārvērst rozā krāsā. Tātad, tas, ko es darīju, bija atklāt zaļās krāsas pikseļus attēlā un reizināt tos ar (2, 0,2, 0,8). Tādējādi es dabūšu rozā matu meiteni, nevis faktiskos zaļos matus.
Kas attiecas uz Photoshop, es cenšos aizstāt zaļo fonu Avengers attēlā ar NUS attēlu. Tātad, es izdarīju, reizinot 0 ar visiem zaļajiem pikseļiem un pēc tam pievienojot NUS attēla pikseļus zaļajiem pikseļiem. Tādējādi es iegūstu priekšstatu par Atriebējiem NUS.
Es arī pievienoju savu kodu GitHub, un jūs varat to lejupielādēt šeit!
2. darbība. Kā tas darbojas?
Blokshēma ir pievienota, lai parādītu, kā darbojas viss kods!
1. Pirmkārt, lietotājs tiek aicināts ievadīt izvēlēto attēlu. 2. Pēc tam tiks parādīts to filtru saraksts, no kuriem lietotājs var izvēlēties. 3. Ja lietotājs ievadīja “1” līdz “9”, attēls tiks apstrādāts un izvadīts atbilstoši katram filtram.4. Ja lietotājs ievadīja “R”, visa programma tiks atiestatīta un lietotājam tiks lūgts augšupielādēt attēlu vēlreiz. Ja lietotājs ievadīja “Q”, programma izies no cilpas.
3. darbība: ko tas dara?
Šajā projektā es kopā izveidoju 9 filtrus, proti
1. Parādīt ievades attēlu - lai parādītu augšupielādēto attēlu
2. Spoguļattēls - atspoguļota objekta dublēšanās, bet ir apgriezta virzienā
3. Ielieciet aiz joslas - ievietojiet melnas vertikālas joslas, kuru platums un atstarpes ir vienādas ar 50 pikseļiem.
4. Ielieciet aiz caurspīdīgās joslas - ievietojiet caurspīdīgas vertikālas joslas, kuru platums un attālums ir vienāds ar 50 pikseļiem
5. Apļa attēls - lai attēla centrā izveidotu apli
6. Izplūšana - lai aizmiglotu attēlu
7. Rotācija - lai pagrieztu attēlu par 45 grādiem
8. Krāsu maiņa - lai mainītu zaļo krāsu uz rozā krāsu
9. Photoshop - lai mainītu attēla daļu ar citu attēlu
4. solis: Kāpēc man tas izdevās?
Iepriekš mani interesēja, kā Instagram un Snapchat nāca klajā ar filtriem attēliem, kas padarīja tos tik interesantus. Pēc lekcijas un apmācības par paplašināto realitāti es gribēju darīt kaut ko ar to saistītu, bet es gribētu sākt no pamata, kas ir attēlu apstrāde, jo esmu vāja programmēšanā un vēlētos iemācīties Python kodēšanu.
5. solis: uzlabojumi un ko darīs nākamās versijas?
Viens no šī projekta uzlabojumiem ir izveidot savus sejas filtrus tiešraides videoklipos, izmantojot Python. Es mēģināju to kodēt, bet nevienu no tiem nevarēju sasniegt programmēšanas zināšanu trūkuma un laika ierobežojuma dēļ. Turklāt attēlu procesors var būt “gudrāks”, kur tas var automātiski noteikt krāsas un mainīt tikai tās detaļas, kuras mēs vēlamies. Ir viena reize, kad es mēģinu mainīt cilvēka melnos matus uz citu krāsu. Es galu galā mainu gan acu, gan matu krāsu uz zilu, tāpēc attēls izskatās ļoti dīvains. Es ceru, ka man izdosies izveidot savu seju
Ieteicams:
Raspberry PI Vision procesors (SpartaCam): 8 soļi (ar attēliem)
Raspberry PI Vision Processor (SpartaCam): Raspberry PI redzes procesora sistēma jūsu PIRMAJAM robotikas sacensību robotam. Par FIRST No Wikipedia bezmaksas enciklopēdijas https://en.wikipedia.org/wiki/FIRST_Robotics_Compe..PIRMĀS Robotikas sacensības (FRC) ir starptautisks vidusskolas
UCL-IIoT-Strongbox ar RFID un LCD ekrānu (kodēts, MySQL): 5 soļi
UCL-IIoT-Strongbox ar RFID un LCD ekrānu (Nodered, MySQL): Arduino projekts ar RFID skeneri un LCD. Ievads Lai pabeigtu mūsu kursu ar mikro kontrolieriem, precīzāk, ar Arduino Mega, ko mēs izmantojām. Mums ir uzdots izveidot projektu, kas ietver mūsu Arduino Mega, izņemot
NUESTRA PROCESADORA ORGÁNICA (MŪSU ORGANISKAIS PROCESORS): 4 soļi
NUESTRA PROCESADORA ORGÁNICA (MŪSU ORGANISKAIS PROCESORS): Elpro de la proliferación de los residuos y su mala utilización provocó que se descuidara el entorno ambiental contaminando cada vez en niveles de mēra magnitud. Somos capaces de percibir el día a día que los desperdicios sobre todo de la bas
Mātesplates montāža (mīnus procesors): 10 soļi
Mātesplates montāža (mīnus procesors): Izmantojot šo pamācību, jūs iemācīsities salikt dažādas, noņemamas sastāvdaļas. termopasta pieejamības trūkuma dēļ procesora montāža nenotiks
Dekodētāja vizītkarte - QR kodēts slepens ziņojums: 6 soļi (ar attēliem)
Dekodētāja vizītkarte - QR kodēta slepena ziņa: laba vizītkarte var palīdzēt uzturēt kontaktus, reklamēt sevi un savu biznesu un iegūt draugus. Izveidojot personisku vizītkarti, kurā saņēmējs aktīvi tulko jūsu karti, viņš, visticamāk, atcerēsies jūsu