-
Notifications
You must be signed in to change notification settings - Fork 84
Pillow atsakymai
DonatasNoreika edited this page Aug 3, 2023
·
4 revisions
from PIL import Image
im = Image.open("logo.png")
box = (0, 28, 128, 100)
region = im.crop(box)
region.save('logo_cropped.png')
from PIL import Image, ImageEnhance
import os
def enhance_image(pic, contrast, color, sharpness, brightness, save=False):
im = Image.open(pic)
enh = ImageEnhance.Contrast(im)
im = enh.enhance(contrast)
enh = ImageEnhance.Color(im)
im = enh.enhance(color)
enh = ImageEnhance.Brightness(im)
im = enh.enhance(brightness)
enh = ImageEnhance.Sharpness(im)
im = enh.enhance(sharpness)
if save:
loc = os.path.splitext(pic)[0]
ext = os.path.splitext(pic)[1]
im.save(f'{loc}_modified{ext}')
im.show()
enhance_image('dog.jpg', 2, 0, 5, 1, True)
from PIL import Image, ImageEnhance
import os
def get_list(folder):
files = os.listdir(folder)
images = []
for file in files:
if file.endswith((".jpg", ".png")):
images.append(file)
return images
def pic_resize(pic, height):
width = round(pic.size[1] / pic.size[0] * height)
pic = pic.resize((height, width))
return pic
def optimize_images(folder, height):
try:
os.mkdir(f"{folder}\optimized")
except:
print("Toks katalogas jau yra")
logo = Image.open("logo_cropped.png")
for image in get_list(folder):
pic = Image.open(f"{folder}\{image}")
pic = pic_resize(pic, height)
logo_location = (pic.size[0] - logo.size[0], pic.size[1] - logo.size[1], pic.size[0], pic.size[1])
pic.paste(logo, logo_location, logo)
filename = os.path.splitext(image)[0]
extension = os.path.splitext(image)[1]
pic.save(f"{folder}\optimized\{filename}_optimized{extension}")
from PIL import Image
def ribos(sk):
if sk < 0:
return 0
elif sk > 255:
return 255
return sk
def adjust_colors(img, r, g, b):
img = Image.open(img)
data = img.getdata()
new_data = []
for pixel in data:
red = ribos(pixel[0] + r)
green = ribos(pixel[1] + g)
blue = ribos(pixel[2] + b)
new_pixel = (red, green, blue)
new_data.append(new_pixel)
img.putdata(new_data)
return img
new_img = adjust_colors('dog.jpg', 0, 0 , +80)
new_img.show()
from PIL import Image
def turn_binary(img, r, g, b):
img = Image.open(img)
data = img.getdata()
new_data = []
black = 0, 0, 0
white = 255, 255, 255
for pixel in data:
if pixel[0] >= r or pixel[1] >= g or pixel[2] >= b:
new_data.append(white)
else:
new_data.append(black)
img.putdata(new_data)
return img
image = turn_binary('dog.jpg', 255, 255, 8)
image.show()
© Donatas Noreika ir Jotautas Treigys
Dekoratoriai
Iteratoriai ir generatoriai
RegEx
Pillow
NumPy
Pandas
- Pandas I
- Užduotys I
- Atsakymai I
- Pandas II
- Užduotys II
- Atsakymai II
- Pandas III
- Užduotys III
- Atsakymai III
Seaborn
Mašininis mokymasis
- 1 Tiesinės regresijos modelis
- 1 Užduotis
- 1 Atsakymas
- 2 Modeliai - klasifikatoriai
- 2 Užduotis
- 2 Atsakymas
- 3 Modeliai praktikoje
- 3 Užduotis (atnaujinta), atsakymas
- 3 Užduotis
- 3 Atsakymas (kodas su komentarais)
Requests, JSON, API
Web Scraping (Beautiful Soup)
Duomenų bazės
- SQL 1
- Užduotys
- Atsakymai
- SQL 2
- Užduotys
- Atsakymai
- SQL 3
- Užduotys
- Atsakymai
- SQL 4
- Užduotis
- SQL per Python
- Užduotis
- ORM 1
- Užduotys
- ORM 2
- Užduotis
- Atsakymas
Flask
- Įžanga
- Užduotys
- I dalis
- Užduotis
- I dalies kodas (atsakymas)
- II dalis
- Užduotis
- Atsakymas (kodas)
- III dalis
- Užduotis
- Atsakymas
- IV dalis
- Užduotis
- Atsakymas
- Flask Many2one, CRUD
- Flask One2many, many2many CRUD
- Flask: REST API kūrimas
- Flask: API su One2many (kodas)
- Flask: vartotojai
- Flask: nuotraukos pridėjimas, admin puslapis, puslapiavimas
- Flask: password reset, error pages
- Flask: projekto sutvarkymas
- Flask diegimas į serverį
Django
- 1. Įžanga, Modeliai
- 2. Administratoriaus svetainė
- 3. Šablonai
- 4. Views
- 5. Puslapiavimas, Paieška, Nuotraukos
- 6. Autorizacija
- 7. Vartotojai II, HTML laukai
- 8. Registracija, Formos
- 9. Vartotojo profilis
- 10. Create, Update, Delete rodinių klasės
- 11. Vertimai
- Užduotis: Autoservisas
- Biblioteka: kodas iki 6-tos dalies
- Biblioteka: kodas nuo 6-tos dalies
- Django diegimas į serverį
- Django diegimas į serverį 2
Django REST
Odoo
- Kurso programa: projektų valdymas
- 1 pamoka
- 2 pamoka
- 3 pamoka
- 4 pamoka
- 5 pamoka
- 6 pamoka
- 7 pamoka
- 8 pamoka
- 9 pamoka
Linux