Konversi gambar ke rgb python

Pemrosesan citra diperlukan dalam banyak aplikasi. Artikel ini (dan beberapa artikel berikutnya) didedikasikan untuk menyoroti cara melakukan teknik pemrosesan gambar klasik dengan Python. Secara khusus, dalam artikel ini, kami akan membahas beberapa konversi/pemisahan warna

Gambar RGB (berwarna) memiliki tiga saluran, Merah, Biru dan Hijau. Gambar berwarna di OpenCV memiliki bentuk dalam format [H, W, C], di mana H, W, dan C adalah tinggi, lebar, dan jumlah saluran gambar. Ketiga saluran tersebut memiliki rentang nilai antara 0 dan 255

Gambar HSV juga memiliki tiga saluran, saluran Hue, Saturation dan Value. Di OpenCV, nilai saluran Hue berkisar dari 0 hingga 179, sedangkan saluran Saturasi dan Nilai berkisar dari 0 hingga 255

Di OpenCV, untuk mengonversi gambar RGB menjadi gambar HSV, kami menggunakan cv2. fungsi cvtColor(). Fungsi ini digunakan untuk mengonversi gambar dari satu ruang warna ke ruang warna lainnya

Fungsi ini membutuhkan dua argumen− pertama gambar input dan kedua metode konversi warna. Lihat sintaks yang diberikan di bawah ini −

cv2.cvtColor(bgr_img, cv2.COLOR_BGR2HSV)

Langkah

Untuk mengonversi gambar RGB menjadi gambar HSV, ikuti langkah-langkah yang diberikan di bawah ini −

Impor perpustakaan yang diperlukan. Dalam semua contoh Python berikut, pustaka Python yang diperlukan adalah OpenCV. Pastikan Anda sudah menginstalnya

import cv2
_

Baca gambar input RGB menggunakan cv2. imread(). Gambar RGB yang dibaca menggunakan metode ini adalah dalam format BGR. Secara opsional tetapkan gambar BGR baca ke bgr_img

bgr_img = cv2.imread('water.jpg')

Sekarang ubah gambar BGR ini menjadi gambar HSV seperti di bawah ini menggunakan cv2. fungsi cvtColor(). Secara opsional tetapkan gambar HSV yang dikonversi ke hsv_img

Modul menyediakan kelas dengan nama yang sama yang digunakan untuk merepresentasikan citra PIL. Modul ini juga menyediakan sejumlah fungsi pabrik, termasuk fungsi memuat gambar dari file, dan membuat gambar baru

Contoh

Buka, putar, dan tampilkan gambar (menggunakan penampil default)

Skrip berikut memuat gambar, memutarnya 45 derajat, dan menampilkannya menggunakan penampil eksternal (biasanya xv di Unix, dan program Paint di Windows)

from PIL import Image
with Image.open("hopper.jpg") as im:
    im.rotate(45).show()

Buat thumbnail

Skrip berikut membuat gambar mini yang bagus dari semua gambar JPEG di direktori saat ini dengan mempertahankan rasio aspek dengan resolusi maksimal 128x128

from PIL import Image
import glob, os

size = 128, 128

for infile in glob.glob("*.jpg"):
    file, ext = os.path.splitext(infile)
    with Image.open(infile) as im:
        im.thumbnail(size)
        im.save(file + ".thumbnail", "JPEG")
_

Fungsi

PIL. Gambar. buka(fp , mode='r', formats=None)

Membuka dan mengidentifikasi file gambar yang diberikan

Ini adalah operasi yang malas; . Lihat. Lihat

Parameter .
  • fp – Nama file (string), pathlib. Objek jalur atau objek file. Objek file harus menerapkan metode

    out = image1 * (1.0 - alpha) + image2 * alpha
    
    _3,
    out = image1 * (1.0 - alpha) + image2 * alpha
    
    4, dan
    out = image1 * (1.0 - alpha) + image2 * alpha
    
    5, dan dibuka dalam mode biner

  • modus – Modus. Jika diberikan, argumen ini harus “r”

  • format – Daftar atau kumpulan format untuk mencoba memuat file. Ini dapat digunakan untuk membatasi kumpulan format yang diperiksa. Lewati

    out = image1 * (1.0 - alpha) + image2 * alpha
    
    _6 untuk mencoba semua format yang didukung. Anda dapat mencetak kumpulan format yang tersedia dengan menjalankan
    out = image1 * (1.0 - alpha) + image2 * alpha
    
    7 atau menggunakan fungsi

Pengembalian .

Sebuah Objek

Menaikkan .
  • – Jika file tidak dapat ditemukan

  • – Jika gambar tidak dapat dibuka dan diidentifikasi

  • – Jika

    from PIL import Image
    import numpy as np
    im = Image.open("hopper.jpg")
    a = np.asarray(im)
    
    _0 bukan “r”, atau jika
    from PIL import Image
    import numpy as np
    im = Image.open("hopper.jpg")
    a = np.asarray(im)
    
    1 digunakan untuk
    from PIL import Image
    import numpy as np
    im = Image.open("hopper.jpg")
    a = np.asarray(im)
    
    2

  • – Jika

    from PIL import Image
    import numpy as np
    im = Image.open("hopper.jpg")
    a = np.asarray(im)
    
    3 bukan
    out = image1 * (1.0 - alpha) + image2 * alpha
    
    6, daftar atau tupel

Peringatan

Untuk melindungi dari potensi serangan DOS yang disebabkan oleh "bom dekompresi" (mis. e. file berbahaya yang didekompresi menjadi sejumlah besar data dan dirancang untuk mogok atau menyebabkan gangguan dengan menghabiskan banyak memori), Pillow akan mengeluarkan

from PIL import Image
import numpy as np
im = Image.open("hopper.jpg")
a = np.asarray(im)
5 jika jumlah piksel dalam gambar melebihi batas tertentu,

Ambang batas ini dapat diubah dengan pengaturan. Itu dapat dinonaktifkan dengan mengatur ________10______8

Jika diinginkan, peringatan dapat diubah menjadi kesalahan dengan

from PIL import Image
import numpy as np
im = Image.open("hopper.jpg")
a = np.asarray(im)
9 atau ditekan seluruhnya dengan
im = Image.fromarray(a)
0. Lihat juga untuk mengeluarkan peringatan ke fasilitas logging, bukan stderr

Jika jumlah piksel lebih besar dari dua kali , maka

im = Image.fromarray(a)
2 akan dimunculkan sebagai gantinya

Pengolahan citra

PIL. Gambar. alpha_composite(im1 , im2)

Komposit alfa im2 di atas im1

Parameter .
  • im1 – Gambar pertama. Harus memiliki mode RGBA

  • im2 – Gambar kedua. Harus memiliki mode RGBA, dan ukuran yang sama dengan gambar pertama

Pengembalian .

Sebuah Objek

PIL. Gambar. campuran(im1 , im2, alpha)

Membuat gambar baru dengan menginterpolasi antara dua gambar masukan, menggunakan alfa konstan

out = image1 * (1.0 - alpha) + image2 * alpha

Parameter .
  • im1 – Gambar pertama

  • im2 – Gambar kedua. Harus memiliki mode dan ukuran yang sama dengan gambar pertama

  • alpha – Faktor alfa interpolasi. Jika alfa adalah 0. 0, salinan gambar pertama dikembalikan. Jika alfa adalah 1. 0, salinan gambar kedua dikembalikan. Tidak ada batasan pada nilai alpha. Jika perlu, hasilnya dipotong agar sesuai dengan rentang keluaran yang diizinkan

Pengembalian .

Sebuah Objek

PIL. Gambar. komposit(gambar1 , gambar2, mask)

Buat gambar komposit dengan memadukan gambar menggunakan topeng transparansi

Parameter .
  • image1 – Gambar pertama

  • image2 – Gambar kedua. Harus memiliki mode dan ukuran yang sama dengan gambar pertama

  • topeng – Gambar topeng. Gambar ini dapat memiliki mode “1”, “L”, atau “RGBA”, dan harus memiliki ukuran yang sama dengan dua gambar lainnya

PIL. Gambar. eval(gambar , *args)

Menerapkan fungsi (yang harus mengambil satu argumen) ke setiap piksel dalam gambar yang diberikan. Jika gambar memiliki lebih dari satu pita, fungsi yang sama diterapkan ke setiap pita. Perhatikan bahwa fungsi dievaluasi sekali untuk setiap kemungkinan nilai piksel, sehingga Anda tidak dapat menggunakan komponen acak atau generator lainnya

Parameter .
  • gambar – Gambar masukan

  • function – Objek fungsi, mengambil satu argumen bilangan bulat

Pengembalian .

Sebuah Objek

PIL. Gambar. menggabungkan(mode , band)

Gabungkan satu set gambar band tunggal menjadi gambar multiband baru

Parameter .
  • mode – Mode yang akan digunakan untuk gambar keluaran. Lihat.

  • band – Urutan yang berisi satu gambar pita tunggal untuk setiap pita dalam gambar keluaran. Semua band harus memiliki ukuran yang sama

Pengembalian .

Sebuah Objek

Membangun gambar

PIL. Gambar. baru(mode , ukuran, color=0)

Membuat gambar baru dengan mode dan ukuran yang diberikan

Parameter .
  • mode – Mode yang akan digunakan untuk gambar baru. Melihat.

  • ukuran – Sebuah 2-tupel, berisi (lebar, tinggi) dalam piksel

  • color – Warna apa yang digunakan untuk gambar. Standarnya adalah hitam. Jika diberikan, ini harus berupa nilai integer tunggal atau floating point untuk mode single-band, dan tuple untuk mode multi-band (satu nilai per band). Saat membuat gambar RGB, Anda juga dapat menggunakan string warna yang didukung oleh modul ImageColor. Jika warnanya Tidak Ada, gambar tidak diinisialisasi

Pengembalian .

Sebuah Objek

PIL. Gambar. fromarray(obj , mode=None)

Membuat memori gambar dari objek yang mengekspor antarmuka array (menggunakan protokol buffer)

Jika

im = Image.fromarray(a)
_8 tidak bersebelahan, maka metode
im = Image.fromarray(a)
9 dipanggil dan digunakan

Jika Anda memiliki gambar di NumPy

from PIL import Image
import numpy as np
im = Image.open("hopper.jpg")
a = np.asarray(im)

Kemudian ini dapat digunakan untuk mengonversinya menjadi gambar Bantal

im = Image.fromarray(a)

Parameter .
  • obj – Objek dengan antarmuka array

  • modus –

    Mode opsional untuk digunakan saat membaca ________18______8. Akan ditentukan dari jenis jika

    out = image1 * (1.0 - alpha) + image2 * alpha
    
    6

    Ini tidak akan digunakan untuk mengonversi data setelah membaca, tetapi akan digunakan untuk mengubah cara membaca data

    from PIL import Image
    import numpy as np
    a = np.full((1, 1), 300)
    im = Image.fromarray(a, mode="L")
    im.getpixel((0, 0))  # 44
    im = Image.fromarray(a, mode="RGB")
    im.getpixel((0, 0))  # (44, 1, 0)
    

    Melihat. untuk informasi umum tentang mode

Pengembalian .

Objek gambar

Baru di versi 1. 1. 6

PIL. Gambar. daribyte(mode , ukuran, data, decoder_name='raw', *args)

Membuat salinan memori gambar dari data piksel dalam buffer

Dalam bentuknya yang paling sederhana, fungsi ini membutuhkan tiga argumen (mode, ukuran, dan data piksel yang belum dikemas)

Anda juga dapat menggunakan dekoder piksel apa pun yang didukung oleh PIL. Untuk informasi lebih lanjut tentang dekoder yang tersedia, lihat bagian ini

Perhatikan bahwa fungsi ini hanya menerjemahkan data piksel, bukan keseluruhan gambar. Jika Anda memiliki seluruh gambar dalam sebuah string, bungkus dalam sebuah objek, dan gunakan untuk memuatnya

Parameter .
  • mode – Mode gambar. Melihat.

  • ukuran – Ukuran gambar

  • data – Buffer byte yang berisi data mentah untuk mode tertentu

  • decoder_name – Dekoder apa yang digunakan

  • args – Parameter tambahan untuk dekoder yang diberikan

Pengembalian .

Sebuah Objek

PIL. Gambar. frombuffer(mode , ukuran, data, decoder_name='raw', *args)

Membuat data piksel referensi memori gambar dalam buffer byte

Fungsi ini mirip dengan , tetapi menggunakan data dalam buffer byte, jika memungkinkan. Ini berarti perubahan pada objek penyangga asli tercermin dalam gambar ini). Tidak semua mode dapat berbagi memori;

Perhatikan bahwa fungsi ini hanya menerjemahkan data piksel, bukan keseluruhan gambar. Jika Anda memiliki seluruh file gambar dalam sebuah string, bungkus dalam sebuah objek, dan gunakan untuk memuatnya

Dalam versi saat ini, parameter default yang digunakan untuk dekoder "mentah" berbeda dari yang digunakan untuk. Ini adalah bug, dan mungkin akan diperbaiki di rilis mendatang. Rilis saat ini mengeluarkan peringatan jika Anda melakukan ini; . Lihat di bawah untuk detailnya

Parameter .
  • mode – Mode gambar. Melihat.

  • ukuran – Ukuran gambar

  • data – Sebuah byte atau objek buffer lain yang berisi data mentah untuk mode tertentu

  • decoder_name – Dekoder apa yang digunakan

  • argumen –

    Parameter tambahan untuk decoder yang diberikan. Untuk pembuat enkode default ("mentah"), Anda disarankan untuk memberikan kumpulan parameter lengkap

    frombuffer(mode, size, data, "raw", mode, 0, 1)
    

Pengembalian .

Sebuah Objek

Baru di versi 1. 1. 4

Menghasilkan gambar

PIL. Gambar. effect_mandelbrot(ukuran , luas, quality)

Hasilkan set Mandelbrot yang mencakup batas tertentu

Parameter .
  • size – Ukuran yang diminta dalam piksel, sebagai 2-tuple. (lebar tinggi)

  • jangkauan – Jangkauan untuk menutupi, sebagai 4-tupel. (x0, y0, x1, y1)

  • kualitas – Kualitas

PIL. Gambar. efek_noise(ukuran , sigma)

Hasilkan noise Gaussian yang berpusat di sekitar 128

Parameter .
  • size – Ukuran yang diminta dalam piksel, sebagai 2-tuple. (lebar tinggi)

  • sigma – Standar deviasi kebisingan

PIL. Gambar. gradien_linear(mode)

Hasilkan gradien linier 256x256 dari hitam ke putih, atas ke bawah

Parameter .

mode – mode masukan

PIL. Gambar. radial_gradient(mode)

Hasilkan gradien radial 256x256 dari hitam ke putih, tengah ke tepi

Parameter .

mode – mode masukan

Mendaftar plugin

Catatan

Fungsi-fungsi ini untuk digunakan oleh pembuat plugin. Penulis aplikasi dapat mengabaikannya

PIL. Gambar. register_open(id , pabrik, accept=None)

Daftarkan plugin file gambar. Fungsi ini tidak boleh digunakan dalam kode aplikasi

Parameter .
  • id – Pengidentifikasi format gambar

  • pabrik – Metode pabrik file gambar

  • accept – Fungsi opsional yang dapat digunakan untuk menolak gambar dengan format lain dengan cepat

PIL. Gambar. register_mime(id , mimetype)

Mendaftarkan jenis MIME gambar. Fungsi ini tidak boleh digunakan dalam kode aplikasi

Parameter .
  • id – Pengidentifikasi format gambar

  • mimetype – Jenis MIME gambar untuk format ini

PIL. Gambar. register_save(id , driver)

Mendaftarkan fungsi penyimpanan gambar. Fungsi ini tidak boleh digunakan dalam kode aplikasi

Parameter .
  • id – Pengidentifikasi format gambar

  • driver – Fungsi untuk menyimpan gambar dalam format ini

PIL. Gambar. register_save_all(id , pengemudi)

Mendaftarkan fungsi gambar untuk menyimpan semua bingkai dari format multibingkai. Fungsi ini tidak boleh digunakan dalam kode aplikasi

Parameter .
  • id – Pengidentifikasi format gambar

  • driver – Fungsi untuk menyimpan gambar dalam format ini

PIL. Gambar. register_extension(id , ekstensi)

Mendaftarkan ekstensi gambar. Fungsi ini tidak boleh digunakan dalam kode aplikasi

Parameter .
  • id – Pengidentifikasi format gambar

  • ekstensi – Ekstensi yang digunakan untuk format ini

PIL. Gambar. register_extensions(id , ekstensi)

Mendaftarkan ekstensi gambar. Fungsi ini tidak boleh digunakan dalam kode aplikasi

Parameter .
  • id – Pengidentifikasi format gambar

  • ekstensi – Daftar ekstensi yang digunakan untuk format ini

PIL. Gambar. ekstensi_terdaftar()

Mengembalikan kamus yang berisi semua ekstensi file milik plugin terdaftar

PIL. Gambar. register_decoder(nama , decoder)

Mendaftarkan decoder gambar. Fungsi ini tidak boleh digunakan dalam kode aplikasi

Parameter .
  • name – Nama decoder

  • decoder – A callable(mode, args) yang mengembalikan ImageFile. objek PyDecoder

Baru di versi 4. 1. 0

PIL. Gambar. register_encoder(nama , encoder)

Mendaftarkan encoder gambar. Fungsi ini tidak boleh digunakan dalam kode aplikasi

Parameter .
  • nama – Nama pembuat enkode

  • encoder – Sebuah callable(mode, args) yang mengembalikan ImageFile. objek PyEncoder

Baru di versi 4. 1. 0

Kelas Citra

kelas PIL. Gambar. Gambar

Kelas ini mewakili objek gambar. Untuk membuat objek, gunakan fungsi pabrik yang sesuai. Hampir tidak ada alasan untuk memanggil konstruktor Gambar secara langsung

Sebuah instance dari kelas memiliki metode berikut. Kecuali dinyatakan lain, semua metode mengembalikan instance baru dari kelas, menyimpan gambar yang dihasilkan

Gambar. alpha_composite(im , dest=(0, 0), source=(0, 0))

Analog Gambar 'di tempat'. alpha_composite. Komposit gambar ke gambar ini

Parameter .
  • im - image ke komposit lebih dari yang satu ini

  • dest – Opsional 2 tuple (kiri, atas) yang menentukan sudut kiri atas pada gambar (tujuan) ini

  • sumber – Opsional 2 tupel (kiri, atas) untuk sudut kiri atas di gambar sumber overlay, atau 4 tupel (kiri, atas, kanan, bawah) untuk batas persegi panjang sumber

Catatan Kinerja. Saat ini tidak diterapkan di tempat di lapisan inti

Gambar. terapkan_transparansi()

Jika gambar mode P memiliki kunci "transparansi" di kamus info, hapus kuncinya dan alih-alih terapkan transparansi ke palet. Jika tidak, gambar tidak berubah

Gambar. konversi(mode=Tidak ada . WEB, matrix=None, dither=None, palette=Palette.WEB , warna=256)

Mengembalikan salinan yang dikonversi dari gambar ini. Untuk mode “P”, metode ini menerjemahkan piksel melalui palet. Jika mode dihilangkan, mode dipilih sehingga semua informasi dalam gambar dan palet dapat direpresentasikan tanpa palet

Versi saat ini mendukung semua kemungkinan konversi antara "L", "RGB" dan "CMYK". The

frombuffer(mode, size, data, "raw", mode, 0, 1)
7 argument only supports “L” and “RGB”

When translating a color image to greyscale (mode “L”), the library uses the ITU-R 601-2 luma transform

L = R * 299/1000 + G * 587/1000 + B * 114/1000

Metode default untuk mengonversi gambar skala abu-abu (“L”) atau “RGB” menjadi gambar bilevel (mode “1”) menggunakan dither Floyd-Steinberg untuk memperkirakan tingkat luminositas gambar asli. Jika dither adalah

out = image1 * (1.0 - alpha) + image2 * alpha
6, semua nilai yang lebih besar dari 127 diatur ke 255 (putih), semua nilai lainnya menjadi 0 (hitam). Untuk menggunakan ambang lain, gunakan metode ini

When converting from “RGBA” to “P” without a

frombuffer(mode, size, data, "raw", mode, 0, 1)
7 argument, this passes the operation to , and
L = R * 299/1000 + G * 587/1000 + B * 114/1000
2 and
L = R * 299/1000 + G * 587/1000 + B * 114/1000
3 are ignored

Saat mengonversi dari "PA", jika ada palet "RGBA", saluran alfa dari gambar akan digunakan sebagai pengganti nilai dari palet

Parameter .
  • mode – Mode yang diminta. Lihat.

  • matriks – Sebuah matriks konversi opsional. Jika diberikan, ini harus berupa 4- atau 12-tuple yang berisi nilai floating point

  • dither – Metode dithering, digunakan saat mengonversi dari mode "RGB" ke "P" atau dari "RGB" atau "L" ke "1". Metode yang tersedia adalah atau (default). Note that this is not used when

    frombuffer(mode, size, data, "raw", mode, 0, 1)
    
    7 is supplied

  • palet – Palet untuk digunakan saat mengonversi dari mode “RGB” ke “P”. Palet yang tersedia adalah atau

  • colors – Number of colors to use for the palette. Defaults to 256

Return type .

Pengembalian .

Sebuah Objek

The following example converts an RGB image (linearly calibrated according to ITU-R 709, using the D65 luminant) to the CIE XYZ color space

rgb2xyz = (
    0.412453, 0.357580, 0.180423, 0,
    0.212671, 0.715160, 0.072169, 0,
    0.019334, 0.119193, 0.950227, 0)
out = im.convert("RGB", rgb2xyz)

Image. copy()

Copies this image. Use this method if you wish to paste things into an image, but still retain the original

Return type .

Pengembalian .

Sebuah Objek

Image. crop(box=None)

Returns a rectangular region from this image. The box is a 4-tuple defining the left, upper, right, and lower pixel coordinate. See

Note. Prior to Pillow 3. 4. 0, this was a lazy operation

Parameter .

box – The crop rectangle, as a (left, upper, right, lower)-tuple

Return type .

Pengembalian .

Sebuah Objek

This crops the input image with the provided coordinates

from PIL import Image

with Image.open("hopper.jpg") as im:

    # The crop method from the Image module takes four coordinates as input.
    # The right can also be represented as (left+width)
    # and lower can be represented as (upper+height).
    (left, upper, right, lower) = (20, 20, 100, 100)

    # Here the image "im" is cropped and assigned to new variable im_crop
    im_crop = im.crop((left, upper, right, lower))

Image. draft(mode , size)

Configures the image file loader so it returns a version of the image that as closely as possible matches the given mode and size. For example, you can use this method to convert a color JPEG to greyscale while loading it

If any changes are made, returns a tuple with the chosen

from PIL import Image
import numpy as np
im = Image.open("hopper.jpg")
a = np.asarray(im)
0 and
rgb2xyz = (
    0.412453, 0.357580, 0.180423, 0,
    0.212671, 0.715160, 0.072169, 0,
    0.019334, 0.119193, 0.950227, 0)
out = im.convert("RGB", rgb2xyz)
7 with coordinates of the original image within the altered one

Perhatikan bahwa metode ini memodifikasi objek pada tempatnya. If the image has already been loaded, this method has no effect

Note. This method is not implemented for most images. It is currently implemented only for JPEG and MPO images

Parameter .
  • mode – The requested mode

  • size – Ukuran yang diminta dalam piksel, sebagai 2-tuple. (lebar tinggi)

Image. effect_spread(distance)

Randomly spread pixels in an image

Parameter .

jarak – Jarak untuk menyebarkan piksel

Image. entropy(mask=None , extrema=None)

Calculates and returns the entropy for the image

A bilevel image (mode “1”) is treated as a greyscale (“L”) image by this method

If a mask is provided, the method employs the histogram for those parts of the image where the mask image is non-zero. The mask image must have the same size as the image, and be either a bi-level image (mode “1”) or a greyscale image (“L”)

Parameter .
  • mask – An optional mask

  • extrema – An optional tuple of manually-specified extrema

Pengembalian .

A float value representing the image entropy

Image. filter(filter)

Filters this image using the given filter. For a list of available filters, see the module

Parameter .

filter – Filter kernel

Pengembalian .

Sebuah Objek

This blurs the input image using a filter from the

rgb2xyz = (
    0.412453, 0.357580, 0.180423, 0,
    0.212671, 0.715160, 0.072169, 0,
    0.019334, 0.119193, 0.950227, 0)
out = im.convert("RGB", rgb2xyz)
9 module

from PIL import Image
import glob, os

size = 128, 128

for infile in glob.glob("*.jpg"):
    file, ext = os.path.splitext(infile)
    with Image.open(infile) as im:
        im.thumbnail(size)
        im.save(file + ".thumbnail", "JPEG")
0

Image. frombytes(data , decoder_name='raw' , *args)

Loads this image with pixel data from a bytes object

This method is similar to the function, but loads data into this image instead of creating a new image object

Image. getbands()

Returns a tuple containing the name of each band in this image. For example,

from PIL import Image

with Image.open("hopper.jpg") as im:

    # The crop method from the Image module takes four coordinates as input.
    # The right can also be represented as (left+width)
    # and lower can be represented as (upper+height).
    (left, upper, right, lower) = (20, 20, 100, 100)

    # Here the image "im" is cropped and assigned to new variable im_crop
    im_crop = im.crop((left, upper, right, lower))
3 on an RGB image returns (“R”, “G”, “B”)

Pengembalian .

A tuple containing band names

Return type .

This helps to get the bands of the input image

from PIL import Image
import glob, os

size = 128, 128

for infile in glob.glob("*.jpg"):
    file, ext = os.path.splitext(infile)
    with Image.open(infile) as im:
        im.thumbnail(size)
        im.save(file + ".thumbnail", "JPEG")
1

Image. getbbox()

Calculates the bounding box of the non-zero regions in the image

Pengembalian .

The bounding box is returned as a 4-tuple defining the left, upper, right, and lower pixel coordinate. See . If the image is completely empty, this method returns None

This helps to get the bounding box coordinates of the input image

from PIL import Image
import glob, os

size = 128, 128

for infile in glob.glob("*.jpg"):
    file, ext = os.path.splitext(infile)
    with Image.open(infile) as im:
        im.thumbnail(size)
        im.save(file + ".thumbnail", "JPEG")
2

Image. getchannel(channel)

Returns an image containing a single channel of the source image

Parameter .

channel – What channel to return. Could be index (0 for “R” channel of “RGB”) or channel name (“A” for alpha channel of “RGBA”)

Pengembalian .

An image in “L” mode

New in version 4. 3. 0

Image. getcolors(maxcolors=256)

Returns a list of colors used in this image

The colors will be in the image’s mode. For example, an RGB image will return a tuple of (red, green, blue) color values, and a P image will return the index of the color in the palette

Parameter .

maxcolors – Maximum number of colors. If this number is exceeded, this method returns None. The default limit is 256 colors

Pengembalian .

An unsorted list of (count, pixel) values

Image. getdata(band=None)

Returns the contents of this image as a sequence object containing pixel values. The sequence object is flattened, so that values for line one follow directly after the values of line zero, and so on

Note that the sequence object returned by this method is an internal PIL data type, which only supports certain sequence operations. To convert it to an ordinary sequence (e. g. for printing), use

from PIL import Image

with Image.open("hopper.jpg") as im:

    # The crop method from the Image module takes four coordinates as input.
    # The right can also be represented as (left+width)
    # and lower can be represented as (upper+height).
    (left, upper, right, lower) = (20, 20, 100, 100)

    # Here the image "im" is cropped and assigned to new variable im_crop
    im_crop = im.crop((left, upper, right, lower))
4

Parameter .

band – What band to return. The default is to return all bands. To return a single band, pass in the index value (e. g. 0 untuk mendapatkan pita "R" dari gambar "RGB")

Pengembalian .

A sequence-like object

Image. getexif()Image. getextrema()

Gets the minimum and maximum pixel values for each band in the image

Pengembalian .

Untuk gambar single-band, 2-tuple berisi nilai piksel minimum dan maksimum. Untuk gambar multi-band, sebuah tuple berisi satu 2-tuple untuk setiap band

Gambar. getpalette(mode mentah=')

Mengembalikan palet gambar sebagai daftar

Parameter .

mode mentah –

Mode untuk mengembalikan palet.

out = image1 * (1.0 - alpha) + image2 * alpha
6 akan mengembalikan palet dalam mode saat ini

Baru di versi 9. 1. 0

Pengembalian .

Daftar nilai warna [r, g, b, …], atau Tidak ada jika gambar tidak memiliki palet

Gambar. getpixel(xy)

Mengembalikan nilai piksel pada posisi tertentu

Parameter .

xy – Koordinat, diberikan sebagai (x, y). Melihat

Pengembalian .

Nilai piksel. Jika gambar adalah gambar multi-layer, metode ini mengembalikan sebuah tuple

Gambar. dapatkan proyeksi()

Dapatkan proyeksi ke sumbu x dan y

Pengembalian .

Dua urutan, yang menunjukkan di mana terdapat piksel bukan nol di sepanjang sumbu X dan sumbu Y

Gambar. histogram(topeng=Tidak ada, extrema=None)

Mengembalikan histogram untuk gambar. Histogram dikembalikan sebagai daftar jumlah piksel, satu untuk setiap nilai piksel pada gambar sumber. Hitungan dikelompokkan menjadi 256 nampan untuk setiap band, meskipun gambar memiliki lebih dari 8 bit per band. Jika gambar memiliki lebih dari satu pita, histogram untuk semua pita digabungkan (misalnya, histogram untuk gambar "RGB" berisi 768 nilai)

A bilevel image (mode “1”) is treated as a greyscale (“L”) image by this method

Jika topeng disediakan, metode mengembalikan histogram untuk bagian gambar di mana gambar topeng bukan nol. Gambar topeng harus memiliki ukuran yang sama dengan gambar, dan berupa gambar dua tingkat (mode "1") atau gambar skala abu-abu ("L")

Parameter .
  • mask – An optional mask

  • extrema – An optional tuple of manually-specified extrema

Pengembalian .

Daftar yang berisi jumlah piksel

Gambar. tempel(im , kotak=None, mask=None)

Tempelkan gambar lain ke dalam gambar ini. Argumen kotak adalah 2-tupel yang memberikan sudut kiri atas, 4-tupel yang menentukan koordinat piksel kiri, atas, kanan, dan bawah, atau Tidak ada (sama dengan (0, 0)). Lihat. Jika diberikan 4-tuple, ukuran gambar yang ditempel harus sesuai dengan ukuran wilayah

Jika mode tidak cocok, gambar yang ditempel akan dikonversi ke mode gambar ini (lihat metode untuk detailnya)

Alih-alih gambar, sumbernya bisa berupa bilangan bulat atau tuple yang berisi nilai piksel. Metode kemudian mengisi daerah dengan warna yang diberikan. Saat membuat gambar RGB, Anda juga dapat menggunakan string warna yang didukung oleh modul ImageColor

Jika topeng diberikan, metode ini hanya memperbarui wilayah yang ditunjukkan oleh topeng. Anda dapat menggunakan gambar "1", "L", "LA", "RGBA" atau "RGBa" (jika ada, pita alfa digunakan sebagai topeng). Di mana topengnya 255, gambar yang diberikan disalin apa adanya. Di mana topeng adalah 0, nilai saat ini dipertahankan. Nilai perantara akan menggabungkan kedua gambar, termasuk saluran alfa jika ada

Lihat apakah Anda ingin menggabungkan gambar sehubungan dengan saluran alfa mereka

Parameter .
  • im – Gambar sumber atau nilai piksel (integer atau tuple)

  • kotak –

    4-tuple opsional yang memberikan wilayah untuk ditempelkan. Jika 2-tuple digunakan sebagai gantinya, itu diperlakukan sebagai sudut kiri atas. Jika dihilangkan atau Tidak ada, sumber disisipkan ke sudut kiri atas

    Jika sebuah gambar diberikan sebagai argumen kedua dan tidak ada yang ketiga, kotak defaultnya adalah (0, 0), dan argumen kedua ditafsirkan sebagai gambar topeng

  • mask – Gambar mask opsional

Gambar. poin(lut , mode=None)

Memetakan gambar ini melalui tabel atau fungsi pencarian

Parameter .
  • lut –

    Tabel pencarian, berisi 256 (atau 65536 jika self. mode==”I” dan mode == “L”) nilai per pita pada gambar. Fungsi dapat digunakan sebagai gantinya, harus mengambil satu argumen. Fungsi ini dipanggil sekali untuk setiap kemungkinan nilai piksel, dan tabel yang dihasilkan diterapkan ke semua pita gambar

    Itu juga bisa menjadi objek

    from PIL import Image
    import glob, os
    
    size = 128, 128
    
    for infile in glob.glob("*.jpg"):
        file, ext = os.path.splitext(infile)
        with Image.open(infile) as im:
            im.thumbnail(size)
            im.save(file + ".thumbnail", "JPEG")
    
    _3

  • mode – Mode keluaran (default sama dengan masukan). Dalam versi saat ini, ini hanya dapat digunakan jika gambar sumber memiliki mode "L" atau "P", dan keluarannya memiliki mode "1" atau mode gambar sumber adalah "I" dan mode keluarannya adalah "L"

Pengembalian .

Sebuah Objek

Gambar. putalpha(alfa)

Menambahkan atau mengganti lapisan alfa pada gambar ini. Jika gambar tidak memiliki lapisan alfa, gambar akan dikonversi ke "LA" atau "RGBA". Lapisan baru harus "L" atau "1"

Parameter .

alpha – Lapisan alfa baru. Ini bisa berupa gambar "L" atau "1" yang memiliki ukuran yang sama dengan gambar ini, atau bilangan bulat atau nilai warna lainnya

Gambar. putdata(data , skala . 0=1.0 , diimbangi=0. 0)

Menyalin data piksel dari objek urutan yang diratakan ke dalam gambar. Nilai harus dimulai dari sudut kiri atas (0, 0), berlanjut ke akhir baris, diikuti langsung oleh nilai pertama baris kedua, dan seterusnya. Data akan dibaca sampai gambar atau urutan berakhir. Skala dan nilai offset digunakan untuk menyesuaikan nilai urutan. pixel = value*scale + offset

Parameter .
  • data – A flattened sequence object

  • scale – An optional scale value. The default is 1. 0

  • offset – An optional offset value. The default is 0. 0

Image. putpalette(data , rawmode='RGB')

Attaches a palette to this image. The image must be a “P”, “PA”, “L” or “LA” image

The palette sequence must contain at most 256 colors, made up of one integer value for each channel in the raw mode. For example, if the raw mode is “RGB”, then it can contain at most 768 values, made up of red, green and blue values for the corresponding pixel index in the 256 colors. If the raw mode is “RGBA”, then it can contain at most 1024 values, containing red, green, blue and alpha values

Alternatively, an 8-bit string may be used instead of an integer sequence

Parameter .
  • data – A palette sequence (either a list or a string)

  • rawmode – The raw mode of the palette. Baik "RGB", "RGBA", atau mode yang dapat diubah menjadi "RGB" atau "RGBA" (mis. g. “R”, “BGR;15”, “RGBA;L”)

Image. putpixel(xy , value)

Modifies the pixel at the given position. The color is given as a single numerical value for single-band images, and a tuple for multi-band images. In addition to this, RGB and RGBA tuples are accepted for P and PA images

Note that this method is relatively slow. For more extensive changes, use or the module instead

See

Parameter .
  • xy – The pixel coordinate, given as (x, y). See

  • value – The pixel value

Image. quantize(colors=256 , method=None , kmeans=0 , palette=None , dither=Dither. FLOYDSTEINBERG)

Convert the image to ‘P’ mode with the specified number of colors

Parameter .
  • colors – The desired number of colors, <= 256

  • method –

    (median cut), (maximum coverage), (fast octree), (libimagequant; check support using with

    from PIL import Image
    import glob, os
    
    size = 128, 128
    
    for infile in glob.glob("*.jpg"):
        file, ext = os.path.splitext(infile)
        with Image.open(infile) as im:
            im.thumbnail(size)
            im.save(file + ".thumbnail", "JPEG")
    
    10)

    By default, will be used

    The exception to this is RGBA images. and do not support RGBA images, so is used by default instead

  • kmeans – Integer

  • palette – Quantize to the palette of given

  • dither – Dithering method, used when converting from mode “RGB” to “P” or from “RGB” or “L” to “1”. Available methods are or (default)

Pengembalian .

A new image

Image. reduce(factor , box=None)

Returns a copy of the image reduced

from PIL import Image
import glob, os

size = 128, 128

for infile in glob.glob("*.jpg"):
    file, ext = os.path.splitext(infile)
    with Image.open(infile) as im:
        im.thumbnail(size)
        im.save(file + ".thumbnail", "JPEG")
18 times. If the size of the image is not dividable by
from PIL import Image
import glob, os

size = 128, 128

for infile in glob.glob("*.jpg"):
    file, ext = os.path.splitext(infile)
    with Image.open(infile) as im:
        im.thumbnail(size)
        im.save(file + ".thumbnail", "JPEG")
18, the resulting size will be rounded up

Parameter .
  • factor – A greater than 0 integer or tuple of two integers for width and height separately

  • box – An optional 4-tuple of ints providing the source image region to be reduced. The values must be within

    from PIL import Image
    import glob, os
    
    size = 128, 128
    
    for infile in glob.glob("*.jpg"):
        file, ext = os.path.splitext(infile)
        with Image.open(infile) as im:
            im.thumbnail(size)
            im.save(file + ".thumbnail", "JPEG")
    
    20 rectangle. If omitted or
    out = image1 * (1.0 - alpha) + image2 * alpha
    
    6, the entire source is used

Image. remap_palette(dest_map , source_palette=None)

Rewrites the image to reorder the palette

Parameter .
  • dest_map – A list of indexes into the original palette. e. g.

    from PIL import Image
    import glob, os
    
    size = 128, 128
    
    for infile in glob.glob("*.jpg"):
        file, ext = os.path.splitext(infile)
        with Image.open(infile) as im:
            im.thumbnail(size)
            im.save(file + ".thumbnail", "JPEG")
    
    22 would swap a two item palette, and
    from PIL import Image
    import glob, os
    
    size = 128, 128
    
    for infile in glob.glob("*.jpg"):
        file, ext = os.path.splitext(infile)
        with Image.open(infile) as im:
            im.thumbnail(size)
            im.save(file + ".thumbnail", "JPEG")
    
    23 is the identity transform

  • source_palette – Bytes or None

Pengembalian .

Sebuah Objek

Image. resize(size , resample=None , box=None , reducing_gap=None)

Returns a resized copy of this image

Parameter .
  • size – Ukuran yang diminta dalam piksel, sebagai 2-tuple. (lebar tinggi)

  • resample – An optional resampling filter. This can be one of , , , , or . If the image has mode “1” or “P”, it is always set to . If the image mode specifies a number of bits, such as “I;16”, then the default filter is . Otherwise, the default filter is . See.

  • box – An optional 4-tuple of floats providing the source image region to be scaled. The values must be within (0, 0, width, height) rectangle. If omitted or None, the entire source is used

  • reducing_gap – Apply optimization by resizing the image in two steps. First, reducing the image by integer times using . Second, resizing using regular resampling. The last step changes size no less than by

    from PIL import Image
    import glob, os
    
    size = 128, 128
    
    for infile in glob.glob("*.jpg"):
        file, ext = os.path.splitext(infile)
        with Image.open(infile) as im:
            im.thumbnail(size)
            im.save(file + ".thumbnail", "JPEG")
    
    35 times.
    from PIL import Image
    import glob, os
    
    size = 128, 128
    
    for infile in glob.glob("*.jpg"):
        file, ext = os.path.splitext(infile)
        with Image.open(infile) as im:
            im.thumbnail(size)
            im.save(file + ".thumbnail", "JPEG")
    
    35 may be None (no first step is performed) or should be greater than 1. 0. The bigger
    from PIL import Image
    import glob, os
    
    size = 128, 128
    
    for infile in glob.glob("*.jpg"):
        file, ext = os.path.splitext(infile)
        with Image.open(infile) as im:
            im.thumbnail(size)
            im.save(file + ".thumbnail", "JPEG")
    
    35, the closer the result to the fair resampling. The smaller
    from PIL import Image
    import glob, os
    
    size = 128, 128
    
    for infile in glob.glob("*.jpg"):
        file, ext = os.path.splitext(infile)
        with Image.open(infile) as im:
            im.thumbnail(size)
            im.save(file + ".thumbnail", "JPEG")
    
    35, the faster resizing. With
    from PIL import Image
    import glob, os
    
    size = 128, 128
    
    for infile in glob.glob("*.jpg"):
        file, ext = os.path.splitext(infile)
        with Image.open(infile) as im:
            im.thumbnail(size)
            im.save(file + ".thumbnail", "JPEG")
    
    35 greater or equal to 3. 0, the result is indistinguishable from fair resampling in most cases. The default value is None (no optimization)

Pengembalian .

Sebuah Objek

This resizes the given image from

from PIL import Image
import glob, os

size = 128, 128

for infile in glob.glob("*.jpg"):
    file, ext = os.path.splitext(infile)
    with Image.open(infile) as im:
        im.thumbnail(size)
        im.save(file + ".thumbnail", "JPEG")
41 to
from PIL import Image
import glob, os

size = 128, 128

for infile in glob.glob("*.jpg"):
    file, ext = os.path.splitext(infile)
    with Image.open(infile) as im:
        im.thumbnail(size)
        im.save(file + ".thumbnail", "JPEG")
42

from PIL import Image
import glob, os

size = 128, 128

for infile in glob.glob("*.jpg"):
    file, ext = os.path.splitext(infile)
    with Image.open(infile) as im:
        im.thumbnail(size)
        im.save(file + ".thumbnail", "JPEG")
4

Image. rotate(angle , resample=Resampling. NEAREST , expand=0 , center=None , translate=None , fillcolor=None)

Returns a rotated copy of this image. This method returns a copy of this image, rotated the given number of degrees counter clockwise around its centre

Parameter .
  • sudut – Dalam derajat berlawanan arah jarum jam

  • resample – An optional resampling filter. This can be one of (use nearest neighbour), (linear interpolation in a 2x2 environment), or (cubic spline interpolation in a 4x4 environment). If omitted, or if the image has mode “1” or “P”, it is set to . See

  • expand – Optional expansion flag. If true, expands the output image to make it large enough to hold the entire rotated image. If false or omitted, make the output image the same size as the input image. Note that the expand flag assumes rotation around the center and no translation

  • center – Optional center of rotation (a 2-tuple). Origin is the upper left corner. Default is the center of the image

  • translate – An optional post-rotate translation (a 2-tuple)

  • fillcolor – An optional color for area outside the rotated image

Pengembalian .

Sebuah Objek

This rotates the input image by

from PIL import Image
import glob, os

size = 128, 128

for infile in glob.glob("*.jpg"):
    file, ext = os.path.splitext(infile)
    with Image.open(infile) as im:
        im.thumbnail(size)
        im.save(file + ".thumbnail", "JPEG")
48 degrees counter clockwise

from PIL import Image
import glob, os

size = 128, 128

for infile in glob.glob("*.jpg"):
    file, ext = os.path.splitext(infile)
    with Image.open(infile) as im:
        im.thumbnail(size)
        im.save(file + ".thumbnail", "JPEG")
5

Image. save(fp , format=None , **params)

Saves this image under the given filename. If no format is specified, the format to use is determined from the filename extension, if possible

Keyword options can be used to provide additional instructions to the writer. If a writer doesn’t recognise an option, it is silently ignored. The available options are described in the image format documentation for each writer.

You can use a file object instead of a filename. In this case, you must always specify the format. The file object must implement the

from PIL import Image
import glob, os

size = 128, 128

for infile in glob.glob("*.jpg"):
    file, ext = os.path.splitext(infile)
    with Image.open(infile) as im:
        im.thumbnail(size)
        im.save(file + ".thumbnail", "JPEG")
49,
from PIL import Image
import glob, os

size = 128, 128

for infile in glob.glob("*.jpg"):
    file, ext = os.path.splitext(infile)
    with Image.open(infile) as im:
        im.thumbnail(size)
        im.save(file + ".thumbnail", "JPEG")
50, and
from PIL import Image
import glob, os

size = 128, 128

for infile in glob.glob("*.jpg"):
    file, ext = os.path.splitext(infile)
    with Image.open(infile) as im:
        im.thumbnail(size)
        im.save(file + ".thumbnail", "JPEG")
51 methods, and be opened in binary mode

Parameter .
  • fp – A filename (string), pathlib. Path object or file object

  • format – Optional format override. If omitted, the format to use is determined from the filename extension. If a file object was used instead of a filename, this parameter should always be used

  • params – Extra parameters to the image writer

Pengembalian .

None

Menaikkan .
  • – If the output format could not be determined from the file name. Gunakan opsi format untuk menyelesaikan ini

  • – If the file could not be written. The file may have been created, and may contain partial data

Image. seek(frame)

Seeks to the given frame in this sequence file. If you seek beyond the end of the sequence, the method raises an

from PIL import Image
import glob, os

size = 128, 128

for infile in glob.glob("*.jpg"):
    file, ext = os.path.splitext(infile)
    with Image.open(infile) as im:
        im.thumbnail(size)
        im.save(file + ".thumbnail", "JPEG")
52 exception. Saat file sequence dibuka, library secara otomatis mencari ke frame 0

See

Jika ditentukan, mengacu pada jumlah frame yang tersedia

Parameter .

frame – Frame number, starting at 0

Menaikkan .

– If the call attempts to seek beyond the end of the sequence

Image. show(title=None)

Menampilkan gambar ini. Metode ini terutama ditujukan untuk keperluan debugging

Metode ini memanggil secara internal. Anda dapat menggunakan untuk mengganti perilaku defaultnya

Gambar pertama disimpan ke file sementara. Secara default, itu akan dalam format PNG

Di Unix, gambar kemudian dibuka menggunakan utilitas tampilan, eog atau xv, tergantung mana yang dapat ditemukan

Di macOS, gambar dibuka dengan aplikasi Pratinjau asli

Di Windows, gambar dibuka dengan utilitas tampilan PNG standar

Parameter .

judul – Judul opsional yang digunakan untuk jendela gambar, jika memungkinkan

Gambar. pisah()

Pisahkan gambar ini menjadi beberapa band. Metode ini mengembalikan tupel band gambar individual dari sebuah gambar. Misalnya, memisahkan gambar "RGB" membuat tiga gambar baru yang masing-masing berisi salinan salah satu band asli (merah, hijau, biru)

Jika Anda hanya membutuhkan satu band, metode bisa lebih nyaman dan lebih cepat

Pengembalian .

Tuple yang berisi band

Gambar. beri tahu()

Mengembalikan nomor bingkai saat ini. Lihat

Jika ditentukan, mengacu pada jumlah frame yang tersedia

Pengembalian .

Nomor bingkai, dimulai dengan 0

Gambar. thumbnail(ukuran , sampel ulang . BICUBIC=Resampling.BICUBIC , mengurangi_celah=2. 0)

Jadikan gambar ini menjadi thumbnail. Metode ini memodifikasi gambar agar berisi versi thumbnail-nya sendiri, tidak lebih besar dari ukuran yang diberikan. Metode ini menghitung ukuran thumbnail yang sesuai untuk mempertahankan aspek gambar, memanggil metode untuk mengonfigurasi pembaca file (jika ada), dan akhirnya mengubah ukuran gambar

Perhatikan bahwa fungsi ini memodifikasi objek pada tempatnya. Jika Anda juga perlu menggunakan gambar beresolusi penuh, terapkan metode ini ke salah satu gambar asli

Parameter .
  • size – Ukuran yang diminta dalam piksel, sebagai 2-tuple. (lebar tinggi)

  • resample – Filter resampling opsional. Ini bisa menjadi salah satu dari , , , , atau. Jika dihilangkan, defaultnya adalah. (sebelum versi 2. 5. 0). Lihat.

  • reduce_gap – Terapkan pengoptimalan dengan mengubah ukuran gambar dalam dua langkah. Pertama, kurangi gambar dengan bilangan bulat menggunakan atau untuk gambar JPEG. Kedua, mengubah ukuran menggunakan resampling biasa. Langkah terakhir mengubah ukuran tidak kurang dari

    from PIL import Image
    import glob, os
    
    size = 128, 128
    
    for infile in glob.glob("*.jpg"):
        file, ext = os.path.splitext(infile)
        with Image.open(infile) as im:
            im.thumbnail(size)
            im.save(file + ".thumbnail", "JPEG")
    
    35 kali.
    from PIL import Image
    import glob, os
    
    size = 128, 128
    
    for infile in glob.glob("*.jpg"):
        file, ext = os.path.splitext(infile)
        with Image.open(infile) as im:
            im.thumbnail(size)
            im.save(file + ".thumbnail", "JPEG")
    
    _35 mungkin Tidak ada (tidak ada langkah pertama yang dilakukan) atau harus lebih besar dari 1. 0. Semakin besar
    from PIL import Image
    import glob, os
    
    size = 128, 128
    
    for infile in glob.glob("*.jpg"):
        file, ext = os.path.splitext(infile)
        with Image.open(infile) as im:
            im.thumbnail(size)
            im.save(file + ".thumbnail", "JPEG")
    
    _35, semakin dekat hasilnya dengan resampling yang adil. Semakin kecil
    from PIL import Image
    import glob, os
    
    size = 128, 128
    
    for infile in glob.glob("*.jpg"):
        file, ext = os.path.splitext(infile)
        with Image.open(infile) as im:
            im.thumbnail(size)
            im.save(file + ".thumbnail", "JPEG")
    
    _35, semakin cepat mengubah ukuran. Dengan
    from PIL import Image
    import glob, os
    
    size = 128, 128
    
    for infile in glob.glob("*.jpg"):
        file, ext = os.path.splitext(infile)
        with Image.open(infile) as im:
            im.thumbnail(size)
            im.save(file + ".thumbnail", "JPEG")
    
    _35 lebih besar atau sama dengan 3. 0, hasilnya tidak dapat dibedakan dari resampling yang adil dalam banyak kasus. Nilai standarnya adalah 2. 0 (sangat dekat dengan resampling yang adil sementara masih lebih cepat dalam banyak kasus)

Pengembalian .

None

Gambar. tobitmap(nama=')

Mengembalikan gambar yang dikonversi ke bitmap X11

Catatan

Metode ini hanya berfungsi untuk gambar mode “1”.

Parameter .

name – Awalan nama yang akan digunakan untuk variabel bitmap

Pengembalian .

Sebuah string yang berisi bitmap X11

Menaikkan .

– Jika modenya bukan “1”

Gambar. tobyte(encoder_name=', *args)

Kembalikan gambar sebagai objek byte

Peringatan

Metode ini mengembalikan data gambar mentah dari penyimpanan internal. Untuk data gambar terkompresi (mis. g. PNG, JPEG) menggunakan , dengan parameter BytesIO untuk data dalam memori

Parameter .
  • encoder_name –

    Encoder apa yang digunakan. Standarnya adalah menggunakan pembuat enkode "mentah" standar

    Daftar pembuat enkode C dapat dilihat di bawah bagian codec dari larik fungsi di

    from PIL import Image
    import glob, os
    
    size = 128, 128
    
    for infile in glob.glob("*.jpg"):
        file, ext = os.path.splitext(infile)
        with Image.open(infile) as im:
            im.thumbnail(size)
            im.save(file + ".thumbnail", "JPEG")
    
    79. Pembuat enkode Python terdaftar di dalam plugin yang relevan

  • args – Argumen ekstra untuk encoder

Pengembalian .

Sebuah objek

Gambar. transformasi(ukuran , metode . TERDEKAT, data=None, resample=Resampling.NEAREST , isi=1, fillcolor=None)

Mengubah gambar ini. Metode ini membuat gambar baru dengan ukuran yang diberikan, dan mode yang sama seperti aslinya, dan menyalin data ke gambar baru menggunakan transformasi yang diberikan.

Parameter .
  • size – Ukuran output dalam piksel, sebagai 2-tuple. (lebar tinggi)

  • method –

    Metode transformasi. Ini adalah salah satu dari (memotong subregion persegi panjang), (transformasi affine), (transformasi perspektif), (memetakan segiempat menjadi persegi panjang), atau (memetakan sejumlah segiempat sumber dalam satu operasi)

    Itu juga bisa menjadi objek

    from PIL import Image
    import glob, os
    
    size = 128, 128
    
    for infile in glob.glob("*.jpg"):
        file, ext = os.path.splitext(infile)
        with Image.open(infile) as im:
            im.thumbnail(size)
            im.save(file + ".thumbnail", "JPEG")
    
    _6

    Mungkin juga objek dengan metode

    from PIL import Image
    import glob, os
    
    size = 128, 128
    
    for infile in glob.glob("*.jpg"):
        file, ext = os.path.splitext(infile)
        with Image.open(infile) as im:
            im.thumbnail(size)
            im.save(file + ".thumbnail", "JPEG")
    
    _87 yang mengembalikan tuple yang memasok nilai
    from PIL import Image
    import glob, os
    
    size = 128, 128
    
    for infile in glob.glob("*.jpg"):
        file, ext = os.path.splitext(infile)
        with Image.open(infile) as im:
            im.thumbnail(size)
            im.save(file + ".thumbnail", "JPEG")
    
    88 dan
    from PIL import Image
    import glob, os
    
    size = 128, 128
    
    for infile in glob.glob("*.jpg"):
        file, ext = os.path.splitext(infile)
        with Image.open(infile) as im:
            im.thumbnail(size)
            im.save(file + ".thumbnail", "JPEG")
    
    89 baru

    from PIL import Image
    import glob, os
    
    size = 128, 128
    
    for infile in glob.glob("*.jpg"):
        file, ext = os.path.splitext(infile)
        with Image.open(infile) as im:
            im.thumbnail(size)
            im.save(file + ".thumbnail", "JPEG")
    
    _7

  • data – Data ekstra untuk metode transformasi

  • resample – Filter resampling opsional. Itu bisa salah satu dari (gunakan tetangga terdekat), (interpolasi linier dalam lingkungan 2x2), atau (interpolasi spline kubik dalam lingkungan 4x4). Jika dihilangkan, atau jika gambar memiliki mode "1" atau "P", maka akan diatur ke. Melihat.

  • isi – Jika

    from PIL import Image
    import glob, os
    
    size = 128, 128
    
    for infile in glob.glob("*.jpg"):
        file, ext = os.path.splitext(infile)
        with Image.open(infile) as im:
            im.thumbnail(size)
            im.save(file + ".thumbnail", "JPEG")
    
    88 adalah sebuah objek, ini adalah salah satu argumen yang diberikan padanya. Kalau tidak, itu tidak digunakan

  • fillcolor – Warna isian opsional untuk area di luar transformasi pada gambar keluaran

Pengembalian .

Sebuah Objek

Gambar. transpose(metode)

Transpose gambar (balik atau putar dalam langkah 90 derajat)

Parameter .

metode – Salah satu dari , , , , , atau

Pengembalian .

Mengembalikan salinan terbalik atau diputar dari gambar ini

Ini membalik gambar masukan dengan menggunakan metode

from PIL import Image
import glob, os

size = 128, 128

for infile in glob.glob("*.jpg"):
    file, ext = os.path.splitext(infile)
    with Image.open(infile) as im:
        im.thumbnail(size)
        im.save(file + ".thumbnail", "JPEG")
_8

Gambar. verifikasi()

Memverifikasi isi file. Untuk data yang dibaca dari file, metode ini mencoba menentukan apakah file tersebut rusak, tanpa benar-benar mendekode data gambar. Jika metode ini menemukan masalah, itu memunculkan pengecualian yang sesuai. Jika Anda perlu memuat gambar setelah menggunakan metode ini, Anda harus membuka kembali file gambar

Gambar. memuat()

Mengalokasikan penyimpanan untuk gambar dan memuat data piksel. Dalam kasus normal, Anda tidak perlu memanggil metode ini, karena kelas Gambar secara otomatis memuat gambar yang dibuka saat diakses pertama kali

Jika file yang terkait dengan gambar dibuka oleh Pillow, maka metode ini akan menutupnya. Pengecualian untuk ini adalah jika gambar memiliki banyak bingkai, dalam hal ini file akan dibiarkan terbuka untuk operasi pencarian. Lihat untuk informasi lebih lanjut

Pengembalian .

Objek akses gambar

Return type .

atau

Gambar. tutup()

Menutup penunjuk file, jika memungkinkan

Operasi ini akan menghancurkan inti gambar dan melepaskan memorinya. Data gambar tidak akan dapat digunakan setelahnya

Fungsi ini diperlukan untuk menutup gambar yang memiliki banyak bingkai atau belum dibaca dan ditutup filenya dengan metode ini. Lihat untuk informasi lebih lanjut

Atribut Gambar

Contoh kelas memiliki atribut berikut

Gambar. nama file.

Nama file atau path dari file sumber. Hanya gambar yang dibuat dengan fungsi pabrik

out = image1 * (1.0 - alpha) + image2 * alpha
08 yang memiliki atribut nama file. Jika inputnya adalah objek seperti file, atribut nama file diatur ke string kosong

Gambar. format. Opsional[]

Format file dari file sumber. Untuk gambar yang dibuat oleh pustaka itu sendiri (melalui fungsi pabrik, atau dengan menjalankan metode pada gambar yang sudah ada), atribut ini disetel ke

Gambar. mode.

Modus gambar. Ini adalah string yang menentukan format piksel yang digunakan oleh gambar. Nilai umumnya adalah "1", "L", "RGB", atau "CMYK. Lihat untuk daftar lengkap

Gambar. ukuran. []

Ukuran gambar, dalam piksel. Ukuran diberikan sebagai 2-Tuple (lebar, tinggi)

Gambar. lebar.

Lebar gambar, dalam piksel

Gambar. tinggi.

Tinggi gambar, dalam piksel

Gambar. palet. Opsional[]

Tabel palet warna, jika ada. Jika mode adalah "P" atau "PA", ini harus menjadi turunan dari kelas. Jika tidak, itu harus diatur ke

Gambar. info.

Kamus menyimpan data yang terkait dengan gambar. Kamus ini digunakan oleh penangan file untuk menyampaikan berbagai informasi non-gambar yang dibaca dari file. Lihat dokumentasi untuk berbagai penangan file untuk detailnya

Sebagian besar metode mengabaikan kamus saat mengembalikan gambar baru; . Jika Anda memerlukan informasi tersebut nanti, simpan referensi ke kamus info yang dikembalikan dari metode terbuka

Kecuali disebutkan di tempat lain, kamus ini tidak memengaruhi penyimpanan file

Gambar. dianimasi.

out = image1 * (1.0 - alpha) + image2 * alpha
12 jika gambar ini memiliki lebih dari satu bingkai, atau
out = image1 * (1.0 - alpha) + image2 * alpha
13 sebaliknya

Atribut ini hanya ditentukan oleh plugin gambar yang mendukung gambar animasi. Plugin dapat membiarkan atribut ini tidak terdefinisi jika tidak mendukung pemuatan gambar animasi, meskipun format yang diberikan mendukung gambar animasi

Mengingat bahwa atribut ini tidak ada untuk semua gambar, gunakan

out = image1 * (1.0 - alpha) + image2 * alpha
14 untuk memeriksa apakah Pillow mengetahui banyak bingkai dalam gambar terlepas dari formatnya

Lihat juga

, dan

Gambar. n_frame.

Jumlah bingkai dalam gambar ini

Atribut ini hanya ditentukan oleh plugin gambar yang mendukung gambar animasi. Plugin dapat membiarkan atribut ini tidak terdefinisi jika tidak mendukung pemuatan gambar animasi, meskipun format yang diberikan mendukung gambar animasi

Karena atribut ini tidak ada untuk semua gambar, gunakan

out = image1 * (1.0 - alpha) + image2 * alpha
18 untuk memeriksa jumlah bingkai yang diketahui Pillow dalam gambar terlepas dari formatnya

Lihat juga

, dan

Kelas

kelas PIL. Gambar. Exif

Basis.

bigtiff = Salahendian = Noneget_ifd(tag)hide_offsets()load(data)load_from_fp(fp, offset=None)tobytes(offset=8)class PIL.Image.ImagePointHandler

Digunakan sebagai mixin dengan transformasi titik (untuk digunakan dengan )

kelas PIL. Gambar. ImageTransformHandler

Digunakan sebagai mixin oleh transformasi geometri (untuk digunakan dengan )

Konstanta

PIL. Gambar. TIDAK ADAPIL. Gambar. MAX_IMAGE_PIXELS

Setel ke 89.478.485, kira-kira 0. 25GB untuk gambar 24-bit (3 bpp). Lihat untuk informasi lebih lanjut tentang bagaimana ini digunakan

Bagaimana cara mengonversi gambar ke RGB dengan Python?

Kita dapat menggunakan metode cvtColor() untuk mengonversi gambar BGR ke RGB dan sebaliknya. Parameter. cv2. COLOR_BGR2RGB – gambar BGR dikonversi ke RGB.

Bagaimana cara mengonversi gambar ke RGB?

Untuk mengonversi gambar ke mode warna RGB di Photoshop, buka gambar di Photoshop dan buka Image > Mode > RGB Color . Ini akan mengonversi gambar dari mode warnanya saat ini ke RGB.

Bagaimana cara mendapatkan warna RGB dengan Python?

Fungsi sederhana untuk mengonversi nilai RGB menjadi nama warna untuk berbagai kombinasi. .
RGB →(0. 255. 0), Kode Hex →#00FF00, Nama Warna →kapur
RGB →(178,34,34), Kode Hex →#B22222, Nama Warna → batu api

Bagaimana cara mengubah mode warna JPEG ke RGB?

Cara mengonversi JPG ke RGB .
Unggah file jpg Pilih file dari Komputer, Google Drive, Dropbox, URL atau dengan menyeretnya ke halaman
Pilih "to rgb" Pilih rgb atau format lain yang Anda inginkan (mendukung lebih dari 200 format)
Unduh rgb Anda