Innehållsförteckning:
- Steg 1: Processen att göra det
- Steg 2: Hur fungerar det?
- Steg 3: Vad gör det?
- Steg 4: Varför klarade jag det?
- Steg 5: Förbättringar och vad kommer de framtida versionerna att göra?
Video: GET1033 Python -kodad bildprocessor: 5 steg
2024 Författare: John Day | [email protected]. Senast ändrad: 2024-01-30 12:45
Detta projekt handlar om att skapa min egen pythonkodade bildprocessor för min modul, GET1033 Exploring Computational Media Literacy. Till en början måste användaren mata in ett eget foto och sedan välja de filter han vill ha. Jag skapade 9 filter som är: Visa inmatningsbilden, Mirror, Put Behind Bar, Put Behind Transparent Bar, Circle Picture, Oskärpa, Rotation, Ändra färg och Photoshop. Efter att ha valt en av dem kommer utdatabilden att få effekterna. Som visas på bilden är det filtret för färgbyte där jag upptäcker de gröna färgpixlarna i bilden och konverterar dem till rosa färg.
Steg 1: Processen att göra det
Steg 1: Ladda ner Python härifrån!
Steg 2: Koda det!
Först och främst importerade jag några paket med förkodad funktion som kan användas i koden. Paketen jag importerade är Scipy, Matplot och Numpy.
För Scipy importerade jag Miscellaneous Routines (MISC) och Multi-dimensionell bildbehandling (NDIMAGE). MISC är för att läsa och spara bilden medan NDIMAGE är att utföra gaussiskt filter och rotera.
För Matplotlib är det ett bibliotek för att plotta diagram i Python som ger ett MATLAB-liknande gränssnitt.
För Numpy är det ett bibliotek som kan hantera stora, flerdimensionella matriser och matriser. Numpy är viktigt eftersom det gör att jag kan redigera arrayen med rött, grönt och blått (RGB) på bilderna effektivt när jag lägger till eller multiplicerar arrayen. Till exempel A = [0, 1, 2] och med närvaron av Numpy, A*2 = [0, 2, 4] istället för att få A*2 = [0, 1, 2, 0, 1, 2].
När jag arbetar med filtret för färgbyte försöker jag göra om tjejens gröna hår till rosa färg. Så det jag gjorde var att upptäcka de gröna färgpixlarna på bilden och multiplicera dem med (2, 0,2, 0,8). Således kommer jag att skaffa en rosa hårflicka istället för det faktiska gröna håret.
När det gäller Photoshop försöker jag ersätta den gröna bakgrunden i Avengers -bilden med en bild av NUS. Så det jag gjorde var att multiplicera 0 till alla gröna pixlar och sedan lägga till pixlarna på bilden av NUS till de gröna pixlarna. Detta kommer då att ge mig en bild av Avengers i NUS.
Jag bifogade också min kod på GitHub och du kan ladda ner den här!
Steg 2: Hur fungerar det?
Flödesschemat bifogas för att visa hur hela koden fungerar!
1. Först uppmanas användaren att mata in en valfri bild. 2. Den visar sedan listan över filter som användaren kan välja mellan. 3. Om användaren angav "1" till "9", kommer bilden att bearbetas och matas ut enligt varje filter. Om användaren anger "R" kommer hela programmet att återställas och användaren ombeds ladda upp en bild igen. Om användaren har angett 'Q' kommer programmet att lämna slingan.
Steg 3: Vad gör det?
I det här projektet finns det totalt 9 filter som jag skapade, nämligen
1. Visa inmatningsbilden - För att visa bilden som laddas upp
2. Spegelbild - En reflekterad dubblering av ett objekt men vänds i riktning
3. Put Behind Bar - Infoga svarta vertikala staplar med bredd och avstånd lika med 50 pixlar.
4. Put Behind Transparent Bar - Infoga transparenta vertikala staplar med bredd och avstånd lika med 50 pixlar
5. Cirkelbild - För att göra en cirkel i mitten av bilden
6. Oskärpa - För att göra bilden suddig
7. Rotation - Rotera bilden med 45 grader
8. Ändra färg - För att ändra grön färg till rosa färg
9. Photoshop - För att ändra en del av en bild med en annan bild
Steg 4: Varför klarade jag det?
Tidigare är jag nyfiken på hur Instagram och Snapchat kom med filter för bilderna som gjorde dem så intressanta. Efter föreläsningen och handledningen om Augmented Reality ville jag göra något relaterat till det men jag skulle vilja utgå från det grundläggande som är bildbehandling eftersom jag är svag i programmering och skulle vilja lära mig Python -kodning.
Steg 5: Förbättringar och vad kommer de framtida versionerna att göra?
En av förbättringarna för detta projekt är att skapa mina egna ansiktsfilter i livevideor med Python. Jag försökte koda detta men jag kunde inte uppnå någon av dem på grund av bristande programmeringskunskap och tidsbegränsning. Bortsett från det kan bildprocessorn vara "smartare" där den automatiskt kan upptäcka färgerna och bara ändra de delar vi vill ha. Det finns en gång när jag försöker ändra en persons svarta hår till en annan färg. Jag slutar ändra både ögon och hårfärg till blått vilket gör att bilden ser väldigt konstig ut. Jag hoppas att jag kan skapa mitt eget ansikte
Rekommenderad:
Arduino Car Reverse Parking Alert System - Steg för steg: 4 steg
Arduino Car Reverse Parking Alert System | Steg för steg: I det här projektet kommer jag att utforma en enkel Arduino Car Reverse Parking Sensor Circuit med Arduino UNO och HC-SR04 Ultrasonic Sensor. Detta Arduino -baserade bilomvändningsvarningssystem kan användas för autonom navigering, robotavstånd och andra
Steg för steg PC -byggnad: 9 steg
Steg för steg PC -byggnad: Tillbehör: Hårdvara: ModerkortCPU & CPU -kylarePSU (strömförsörjningsenhet) Lagring (HDD/SSD) RAMGPU (krävs inte) CaseTools: Skruvmejsel ESD -armband/mathermisk pasta med applikator
Tre högtalarkretsar -- Steg-för-steg handledning: 3 steg
Tre högtalarkretsar || Steg-för-steg-handledning: Högtalarkretsen förstärker ljudsignalerna som tas emot från miljön till MIC och skickar den till högtalaren varifrån förstärkt ljud produceras. Här visar jag dig tre olika sätt att göra denna högtalarkrets med:
Steg-för-steg-utbildning i robotik med ett kit: 6 steg
Steg-för-steg-utbildning i robotik med ett kit: Efter ganska många månader av att bygga min egen robot (se alla dessa), och efter att två gånger ha misslyckats med delar, bestämde jag mig för att ta ett steg tillbaka och tänka om min strategi och riktning. De flera månaders erfarenhet var ibland mycket givande och
Akustisk levitation med Arduino Uno Steg-för-steg (8-steg): 8 steg
Akustisk levitation med Arduino Uno Steg-för-steg (8-steg): ultraljudsgivare L298N Dc kvinnlig adapter strömförsörjning med en manlig DC-pin Arduino UNOBreadboardHur det fungerar: Först laddar du upp kod till Arduino Uno (det är en mikrokontroller utrustad med digital och analoga portar för att konvertera kod (C ++)