JES är en programmeringsmiljö som innehåller både ett programmeringsområde och en egen kommandorad. Du kan använda JES för att redigera bilder, videor och ljud.
Det finns många olika sätt att redigera ett foto med JES. Detta inkluderar att lägga till ett gråskalefilter eller ett negativt filter. Du kan också spegla bilden eller förbättra en viss färg.
Hur man skapar bilder i gråskala
Många lättanvända fotoredigeringsappar låter dig redigera bilder på olika sätt. En av dessa inkluderar att lägga till ett gråskalefilter. I JES kan du redigera bilder för att använda ett gråskalefilter genom att ändra färgen på varje pixel för att använda vit, grå eller svart.
JES använder programmeringsspråket Jython, som är väldigt likt Python och följer samma indragsregler. Om det behövs kan du titta på några användbara Python-kommandon för nybörjare för att få upp farten.
- Skapa en ny funktion som heter makeGrayscalePicture():
defmakeGrayscalePicture():
- Inuti den nya funktionen, använd pickAFile()-funktionen för att be användaren att välja en bild. Använd funktionen makePicture() för att skapa ett bildobjekt från den valda filen:
fil = pickAFile()
pic = makePicture (fil) - Använd funktionen getPixels() för att få en array av alla pixlar inuti den valda bilden:
pixlar = getPixels (bild)
- Använd en for-loop för att gå igenom varje pixel i bilden:
för pixlar i pixlar:
- Inuti for-loopen får du RGB-värdet för pixeln. Du kan lagra de röda, gröna och blå värdena för färgen i olika variabler.
r = getRed (pixel)
g = getGreen (pixel)
b = getBlue (pixel) - Beräkna medelvärdet för varje färg. Du kan göra detta genom att lägga till de röda, gröna och blå värdena och dividera summan med 3:
genomsnitt = (r + g + b) / 3
- Ställ in alla röda, gröna och blå värden till samma värde. Detta kommer att göra pixeln grå.
setRed (pixel, genomsnitt)
setGreen (pixel, genomsnitt)
setBlue (pixel, genomsnitt) - Visa bilden efter for-loopen:
show(bild)
- Klicka på Ladda program knappen, placerad mellan programmeringsområdet och kommandoraden.
- Kör funktionen med hjälp av kommandoradsområdet:
makeGrayscalePicture()
- Använd filutforskaren för att välja en bild. Klicka på Öppen.
- Vänta tills funktionen har avslutat behandlingen av bilden. Ett nytt fönster öppnas för att visa den nya gråskalebilden.
Hur man skapar negativa bilder
En negativ bild är en bild där de ljusa områdena i fotot ser mörkare ut och de mörka delarna av fotot ser ljusare ut. Du kan skapa den här effekten genom att ändra de röda, gröna och blå värdena för varje pixel.
- Skapa en ny funktion som heter makeNegativePicture():
defmakeNegativePicture():
- Inuti den nya funktionen, använd pickAFile()-funktionen för att be användaren att välja en bild. Använd funktionen makePicture() för att skapa ett bildobjekt från den valda filen:
fil = pickAFile()
pic = makePicture (fil) - Använd funktionen getPixels() för att få en array av alla pixlar inuti den valda bilden:
pixlar = getPixels (bild)
- Använd en for-loop för att gå igenom varje pixel i bilden:
för pixlar i pixlar:
- Inuti for-loopen får du de röda, gröna och blå värdena för pixeln:
r = getRed (pixel)
g = getGreen (pixel)
b = getBlue (pixel) - För att skapa den negativa effekten, få det motsatta värdet av färgen på RGB-spektrumet. Till exempel, om det röda värdet är 100, skulle det motsatta värdet vara 255 - 100, vilket är 155.
nyRöd = 255 - r
nyBlå = 255 - g
nyGrön = 255 - b - Byt ut färgen på pixeln med de nya röda, gröna och blå värdena:
setRed (pixel, newRed)
setBlue (pixel, newBlue)
setGreen (pixel, newGreen) - Visa bilden efter for-loopen:
show(bild)
- Klicka på Ladda program knappen, placerad mellan programmeringsområdet och kommandoraden.
- Kör funktionen makeNegativePicture() från kommandoraden:
makeNegativePicture()
- Använd filutforskaren för att välja en bild. Klicka på Öppen.
- Ett nytt fönster öppnas för att visa negativbilden.
Hur man förbättrar en viss färg i en bild
Du kan också använda JES för att förbättra specifika färger i en bild. Du kan till exempel dubbla det röda värdet för varje pixel för att få bilden att se mer röd ut.
- Skapa en ny funktion som heter alterReds():
defalterReds():
- Inuti den nya funktionen, använd pickAFile()-funktionen för att be användaren att välja en bild. Använd funktionen makePicture() för att skapa ett bildobjekt från den valda filen:
fil = pickAFile()
pic = makePicture (fil) - Använd funktionen getPixels() för att få en array av alla pixlar inuti den valda bilden:
pixlar = getPixels (bild)
- Använd en for-loop för att gå igenom varje pixel i bilden:
för pixlar i pixlar:
- Inuti for-loopen får du bara det röda värdet på pixeln:
r = getRed (pixel)
- Dubbla det röda värdet och lagra det i en ny variabel:
förstärktRöd = r*2
- Ersätt det röda värdet för pixeln med det nya, förbättrade värdet. Som ett exempel, om det ursprungliga RGB-värdet för pixeln var rgb (100, 50, 50), skulle det nya värdet vara rgb (200, 50, 50).
setRed (pixel, enhancedRed)
- Visa bilden efter for-loopen:
show(bild)
- Klicka på Ladda program knappen, placerad mellan programmeringsområdet och kommandoraden.
- Kör funktionen med hjälp av kommandoradsområdet:
alterReds()
- Använd filutforskaren för att välja en bild. Klicka på Öppen.
- Ett nytt fönster öppnas för att visa den redigerade bilden.
Hur man speglar en bild
För att spegla en bild måste varje pixel på bildens vänstra sida exakt matcha den motsatta pixeln på höger sida.
Du kan göra detta genom att skapa en ny tom bild med vit bakgrund. Du kan sedan kopiera varje pixel för att skapa den nya spegelbilden.
- Skapa en ny funktion som heter mirror():
defspegel():
- Inuti den nya funktionen, använd pickAFile()-funktionen för att be användaren att välja en bild. Använd funktionen makePicture() för att skapa ett bildobjekt från den valda filen:
fil = pickAFile()
pic = makePicture (fil) - Få höjd och bredd på den valda bilden:
width = getWidth (bild)
höjd = getHeight (bild) - Använd funktionen makeEmptyPicture() för att skapa en tom bild. En tom bild är en bild med vit bakgrund. Dubbla bredden så att du får plats med originalbilden på vänster sida och den vända bilden på höger sida:
mirroredPic = makeEmptyPicture (bredd*2, höjd)
- Skapa en for-loop för att gå igenom varje x- och y-koordinater i originalbilden. Inuti for-loopen, få pixeln lagrad på den platsen:
för x i intervallet (0, bredd):
för y inom intervallet (0, höjd):
originalPix = getPixel (bild, x, y) - Fortfarande inne i for-loopen, få pixeln i den nya tomma bilden på samma x- och y-plats. Detta kommer att vara den vänstra sidan av den spegelvända bilden:
leftMirrorPixel = getPixel (spegelbild, x, y)
- Kopiera färgen på den ursprungliga pixeln till pixeln på vänster sida av den nya bilden:
setColor (leftMirrorPixel, getColor (originalPix))
- Gör samma sak för höger sida. Y-koordinaten kommer att vara densamma. Eftersom x-koordinaten kommer från höger sida, subtrahera x-koordinaten från den nya spegelbildens fulla bredd:
rightMirrorPixel = getPixel (spegelbild, (bredd*2)-x-1, y)
- Kopiera färgen på den ursprungliga pixeln till pixeln på höger sida av den nya bilden:
setColor (högerMirrorPixel, getColor (originalPix))
- Visa bilden efter for-loopen:
show(spegelbild)
- Klicka på Ladda program knappen, placerad mellan programmeringsområdet och kommandoraden.
- Kör funktionen mirror() från kommandoraden:
spegel()
- Använd filutforskaren för att välja en bild. Klicka på Öppen.
- Ett nytt fönster öppnas för att visa den spegelvända bilden.
Redigera bilder med JES
Nu förstår du förhoppningsvis hur du redigerar foton i JES med en mängd olika tekniker. Det här är inte de enda teknikerna du kan tillämpa på foton, så du kan experimentera mer med andra möjligheter i JES.
Om du vill förbättra dina Python-färdigheter är korta och roliga projekt ett bra sätt att förstå nyckelbegrepp i Python.