klasa Image – objekt slike

Image je središnji tip podataka modula image – međuspremnik piksela u memoriji na kojem djeluje svaka rutina za crtanje, svaki filtar, svaka geometrijska transformacija i svaka rutina za izdvajanje značajki. Svaka sličica koja izlazi iz csi.CSI.snapshot() je Image; isto vrijedi za svaku sličicu učitanu s diska, dekodiranu iz JPEG-a ili PNG-a, dodijeljenu iz ndarray u stilu numpyja ili konstruiranu kao prazno platno za crtanje.

Image opisan je trima brojevima – width, height i pixformat – te kontinuiranim međuspremnikom piksela. Format piksela određuje i raspored u memoriji i koje su operacije dostupne:

  • BINARY (1 bpp) – 1 bit po pikselu; koristi se za morfologiju i određivanje praga.

  • GRAYSCALE (8 bpp) – 1 bajt po pikselu; kanonski format za većinu strojnog vida (AprilTag, rubovi, ORB, optički tok).

  • RGB565 (16 bpp) – 2 bajta po pikselu (5R/6G/5B); zadani format boje.

  • BAYER (8 bpp) – sirovi podaci Bayerova mozaika izravno sa senzora. Većina metoda strojnog vida nije dostupna na Bayerovim slikama; prvo izvršite debayering u GRAYSCALE / RGB565.

  • YUV422 (16 bpp) – boja s 4:2:2 poduzorkovanjem krominancije, dva bajta po pikselu. Samo neke metode rade izravno na YUV422.

  • JPEG / PNG – komprimirani međuspremnici. Operacije na razini piksela zahtijevaju da prvo pozovete to_grayscale() ili to_rgb565().

Odakle dolaze objekti Image

Postoje četiri načina za dobivanje objekta Image:

  • Iz međuspremnika slike kamerecsi.CSI().snapshot() vraća sljedeću snimljenu sličicu. Vraćeni objekt tanak je omotač oko memorije međuspremnika slike kamere, pa svaka operacija crtanja / filtriranja na njemu mijenja ono što se šalje na pregled u IDE-u i na zaslon.

  • Iz datoteke – proslijedite niz s putanjom konstruktoru Image. BMP, PGM, PPM, JPEG i PNG dekodiraju se izravno u RAM (ili u međuspremnik slike kamere ako je copy_to_fb=True).

  • Iz ndarray – proslijedite float32 polje oblika (h, w) ili (h, w, 3). Pikseli se skaliraju iz raspona 0.0 -- 255.0 u GRAYSCALE odnosno RGB565.

  • Prazno – proslijedite (width, height, pixformat) da biste dodijelili površinu za crtanje ispunjenu nulama. Za komprimirane formate piksela (JPEG / PNG) potreban je argument buffer= koji sadrži komprimirani niz bajtova.

Tipična petlja snimanja-obrade-prikaza

import csi
import image

sensor = csi.CSI()
sensor.reset()
sensor.pixformat(csi.RGB565)
sensor.framesize(csi.QVGA)

while True:
    img = sensor.snapshot()                    # capture
    for blob in img.find_blobs([(30, 100, 15, 127, 15, 127)]):  # process
        img.draw_rectangle(blob.rect)          # annotate
    # img is shown automatically in the IDE preview and on any
    # attached display.

Indeksiranje, duljina, iteracija i pristup nalik bajtovima

  • Indeksiranjeimg[i] čita piksel i (linearno, po recima). img[i] = value ga zapisuje. Pikseli za sive tonove / Bayer su 8-bitni cijeli brojevi, RGB565 / YUV422 pikseli su 16-bitni pakirani cijeli brojevi, a binarni pikseli su 0 / 1. Za JPEG / PNG slike indeksni je prostor komprimirani niz bajtova, a ne pikseli.

  • Duljinalen(img) vraća broj piksela za nekomprimirane formate ili broj bajtova za komprimirane formate.

  • Iteracijafor px in img: ... prolazi kroz polje piksela istim redoslijedom kao i indeksiranje [].

  • Nalik bajtovimaImage izlaže protokol međuspremnika za čitanje, pa ga možete izravno proslijediti svemu što prima bytes / bytearray (npr. uart.write(img), socket.send(img), hashlib.sha256(img)). Umjesto toga koristite bytearray() da biste dobili prikaz za čitanje/pisanje.

Zastavice za savjete (hint)

Mnoge metode Image prihvaćaju argument hint koji je logički OR sljedećih zastavica:

class image.Image(arg: str | int | ndarray, height: int = -1, pixformat: int = -1, *, buffer: bytes | bytearray | memoryview | None = None, copy_to_fb: bool = False)

Ako je arg niz, tada se stvara novi objekt slike iz datoteke na putanji arg. Podržava učitavanje bmp/pgm/ppm/jpg/jpeg/png slikovnih datoteka s diska. Ako je copy_to_fb istinit, slika se kopira u međuspremnik slike umjesto da se dodjeljuje na gomili (heap).

Ako je arg tipa ndarray, tada se stvara novi objekt slike iz ndarray. Objekti ndarray oblika (w, h) tretiraju se kao slike u sivim tonovima, a (w, h, 3) kao RGB565 slike. Trenutno su podržani samo ndarrays s pomičnim zarezom float32. Pri ovakvom stvaranju slike, ako proslijedite argument buffer, on će se koristiti za pohranu podataka slike umjesto dodjeljivanja prostora na gomili. Ako je copy_to_fb istinit, slika se kopira u međuspremnik slike umjesto da se dodjeljuje na gomili ili koristi buffer.

Ako je arg tipa int, tada se smatra širinom nove slike, a moraju uslijediti vrijednost height i vrijednost format za stvaranje novog praznog objekta slike. format može biti bilo koja vrijednost pixformata slike poput image.GRAYSCALE. Slika će se inicijalizirati na sve nule. Imajte na umu da se za komprimirane formate slike očekuje vrijednost buffer. buffer se na ovaj način smatra izvorom podataka slike za stvaranje slika. Ako se koristi s copy_to_fb, podaci iz buffer kopiraju se u međuspremnik slike. Ako želite stvoriti JPEG sliku iz JPEG bytes() ili bytearray() objekta, možete proslijediti width, height, image.JPEG za JPEG zajedno s postavljanjem buffer na JPEG niz bajtova kako biste stvorili JPEG sliku.

Slike podržavaju zapis „[]”. Učinite image[index] = 8/16-bit value za dodjeljivanje piksela slike ili image[index] za dobivanje piksela slike koji će biti ili 8-bitna vrijednost za slike u sivim tonovima/bayer ili 16-bitna vrijednost za RGB565/YUV slike. Binarne slike vraćaju 1-bitnu vrijednost.

Za JPEG slike „[]” vam omogućuje pristup komprimiranom blobu JPEG slike kao polju bajtova. Čitanje i pisanje u polje podataka, međutim, neprozirno je jer su JPEG slike komprimirani nizovi bajtova.

Slike također podržavaju operacije čitanja međuspremnika. Slike možete proslijediti svim mogućim MicroPython funkcijama kao da je slika objekt tipa polje bajtova. Konkretno, ako želite prenijeti sliku, možete je jednostavno proslijediti UART/SPI/I2C funkcijama za pisanje kako bi se automatski prenijela.

Osnovne metode

width() int

Vraća širinu slike u pikselima.

height() int

Vraća visinu slike u pikselima.

format() int

Vraća image.GRAYSCALE za slike u sivim tonovima, image.RGB565 za RGB565 slike, image.BAYER za slike s Bayerovim uzorkom i image.JPEG za JPEG slike.

size() int

Vraća veličinu slike u bajtovima.

bytearray() bytearray

Vraća objekt bytearray koji pokazuje na podatke slike za pristup čitanju/pisanju na razini bajtova.

Napomena

Objekti slike automatski se pretvaraju u objekte bytes kada se proslijede MicroPython upravljačkom programu koji zahtijeva objekt nalik bytes. Ovo je pristup samo za čitanje. Pozovite bytearray() za pristup čitanju/pisanju.

get_pixel(x: int, y: int, rgbtuple: bool | None = None) int | Tuple[int, int, int]

Za slike u sivim tonovima: Vraća vrijednost piksela u sivim tonovima na lokaciji (x, y). Za RGB565 slike: Vraća torku RGB888 piksela (r, g, b) na lokaciji (x, y). Za slike s Bayerovim uzorkom: Vraća vrijednost piksela na lokaciji (x, y).

Vraća None ako su x ili y izvan slike.

x i y mogu se proslijediti zasebno ili kao torka.

rgbtuple ako je True uzrokuje da ova metoda vrati torku RGB888. U protivnom ova metoda vraća cjelobrojnu vrijednost temeljnog piksela. Tj. za RGB565 slike ova metoda vraća RGB565 vrijednost. Zadano je True za RGB565 slike, a inače False.

Nije podržano na komprimiranim slikama.

Napomena

Image.get_pixel() i Image.set_pixel() jedine su metode koje vam omogućuju manipulaciju slikama s Bayerovim uzorkom. Slike s Bayerovim uzorkom doslovne su slike u kojima su pikseli R/G/R/G/itd. za parne retke i G/B/G/B/itd. za neparne retke. Svaki je piksel 8-bitni. Ako pozovete ovu metodu s postavljenim rgbtuple, tada će Image.get_pixel() izvršiti debayering izvorne slike na toj lokaciji piksela i vratiti valjanu RGB888 torku za tu lokaciju piksela.

set_pixel(x: int, y: int, pixel: int | Tuple[int, int, int]) Image

Za slike u sivim tonovima: Postavlja piksel na lokaciji (x, y) na vrijednost pixel u sivim tonovima. Za RGB565 slike: Postavlja piksel na lokaciji (x, y) na RGB888 torku (r, g, b) pixel. Za slike s Bayerovim uzorkom: Postavlja vrijednost piksela na lokaciji (x, y) na vrijednost pixel.

Vraća objekt slike kako biste mogli pozvati drugu metodu pomoću zapisa ..

x i y mogu se proslijediti zasebno ili kao torka.

pixel može biti ili RGB888 torka (r, g, b) ili temeljna vrijednost piksela (tj. RGB565 vrijednost za RGB565 slike ili 8-bitna vrijednost za slike u sivim tonovima.

Nije podržano na komprimiranim slikama.

Napomena

Image.get_pixel() i Image.set_pixel() jedine su metode koje vam omogućuju manipulaciju slikama s Bayerovim uzorkom. Slike s Bayerovim uzorkom doslovne su slike u kojima su pikseli R/G/R/G/itd. za parne retke i G/B/G/B/itd. za neparne retke. Svaki je piksel 8-bitni. Ako pozovete ovu metodu s RGB888 torkom, vrijednost te RGB888 torke u sivim tonovima izdvaja se i postavlja na lokaciju piksela.

Metode pretvorbe

to_ndarray(dtype: str, buffer: bytes | bytearray | memoryview | None = None) ndarray

Vraća objekt ndarray stvoren iz slike. Ovo trenutno radi samo za GRAYSCALE ili RGB565 slike.

dtype može biti b, B ili f za stvaranje ndarray s predznakom od 8 bitova, bez predznaka od 8 bitova ili 32-bitnog s pomičnim zarezom. GRAYSCALE slike izravno se pretvaraju u objekte ndarray bez predznaka od 8 bitova. Za objekte ndarray s predznakom od 8 bitova vrijednosti (0:255) preslikavaju se u (-127:128). Za 32-bitne float objekte ndarray vrijednosti se preslikavaju u (0.0:255.0). RGB565 slike pretvaraju se u tro-kanalne objekte ndarray i isti se postupak opisan gore za GRAYSCALE slike primjenjuje na svaki kanal ovisno o dtype. Imajte na umu da dtype također prihvaća cjelobrojne vrijednosti (npr. ord()) za b, B odnosno f.

buffer ako nije None jest objekt bytearray koji se koristi kao međuspremnik za ndarray. Ako je None, novi međuspremnik dodjeljuje se na gomili za pohranu podataka slike ndarray. Možete koristiti argument buffer za izravno dodjeljivanje ndarray u unaprijed dodijeljeni međuspremnik, čime štedite dodjelu na gomili i operaciju kopiranja.

Vraćeni ndarray ima oblik (height, width) za GRAYSCALE slike i (height, width, 3) za RGB565 slike.

to_bitmap(x_scale: float = 1.0, y_scale: float = 1.0, roi: Tuple[int, int, int, int] | None = None, rgb_channel: int = -1, alpha: int = 255, color_palette: int | Image | None = None, alpha_palette: Image | None = None, hint: int = 0, transform: ndarray | None = None, copy: bool = False, copy_to_fb: bool = False) Image

Pretvara sliku u bitmap sliku (1 bit po pikselu).

x_scale kontrolira koliko se prikazana slika skalira u smjeru x (float). Ako je ova vrijednost negativna, slika će se vodoravno preokrenuti. Imajte na umu da ako y_scale nije naveden, on će se podudarati s x_scale kako bi se zadržao omjer stranica.

y_scale kontrolira koliko se prikazana slika skalira u smjeru y (float). Ako je ova vrijednost negativna, slika će se okomito preokrenuti. Imajte na umu da ako x_scale nije naveden, on će se podudarati s x_scale kako bi se zadržao omjer stranica.

roi je torka pravokutnika područja interesa (x, y, w, h) izvorne slike za crtanje. To vam omogućuje izdvajanje samo piksela unutar ROI-ja za skaliranje i crtanje na odredišnoj slici.

rgb_channel je RGB kanal (0=R, G=1, B=2) koji se izdvaja iz RGB565 slike (ako je proslijeđena) i renderira na odredišnoj slici. Na primjer, ako proslijedite rgb_channel=1, ovo će izdvojiti zeleni kanal izvorne RGB565 slike i nacrtati ga u sivim tonovima na odredišnoj slici.

alpha kontrolira koliko se izvorne slike stapa u odredišnu sliku. Vrijednost 255 crta neprozirnu izvornu sliku, dok vrijednost niža od 255 daje stapanje između izvorne i odredišne slike. 0 rezultira nikakvom izmjenom odredišne slike.

color_palette ako nije None može biti enum palete boja ili RGB565 slika od ukupno 256 piksela koja se koristi kao tablica za pretraživanje boja na vrijednosti u sivim tonovima bilo koje izvorne slike. Primjenjuje se nakon izdvajanja rgb_channel ako se ono koristi.

alpha_palette ako nije None može biti GRAYSCALE slika od ukupno 256 piksela koja se koristi kao alfa paleta koja modulira vrijednost alpha izvorne slike koja se crta na razini pojedinog piksela, omogućujući vam preciznu kontrolu alfa vrijednosti piksela na temelju njihove vrijednosti u sivim tonovima. Vrijednost piksela 255 u alfa tablici za pretraživanje neprozirna je, dok sve manje od 255 postaje sve prozirnije do 0. Primjenjuje se nakon izdvajanja rgb_channel ako se ono koristi.

hint je logički OR zastavica navedenih u Zastavice za savjete (isključujući image.BLACK_BACKGROUND koji ovdje nije podržan).

transform je ndarray 3x3 koji se koristi za izvođenje perspektivne transformacije na slici. Trenutno podržano samo na OpenMV Cam N6 jer ima GPU koji to može učiniti hardverski.

copy ako je True stvara duboku kopiju na gomili pretvorene slike umjesto pretvaranja izvorne slike na mjestu.

copy_to_fb ako je True, slika se učitava izravno u međuspremnik slike. copy_to_fb ima prednost pred copy. Ovo nema poseban učinak ako je slika već u međuspremniku slike.

Napomena

Bitmap slike su poput slika u sivim tonovima sa samo dvije vrijednosti piksela - 0 i 1. Dodatno, bitmap slike pakirane su tako da pohranjuju samo 1 bit po pikselu, što ih čini vrlo malima. OpenMV biblioteka slika dopušta korištenje bitmap slika na svim mjestima gdje se mogu koristiti sensor.GRAYSCALE i sensor.RGB565 slike. Međutim, mnoge operacije primijenjene na bitmap slike nemaju smisla jer bitmap slike imaju samo 2 vrijednosti. OpenMV preporučuje korištenje bitmap slika za vrijednosti mask u operacijama i sličnima jer prilično lako stanu na MicroPython gomilu. Naposljetku, vrijednosti piksela bitmap slike 0 i 1 tumače se kao crna i bijela kada se primjenjuju na sensor.GRAYSCALE ili sensor.RGB565 slike. Biblioteka automatski obrađuje pretvorbu.

Vraća objekt slike kako biste mogli pozvati drugu metodu pomoću zapisa ..

to_grayscale(x_scale: float = 1.0, y_scale: float = 1.0, roi: Tuple[int, int, int, int] | None = None, rgb_channel: int = -1, alpha: int = 255, color_palette: int | Image | None = None, alpha_palette: Image | None = None, hint: int = 0, transform: ndarray | None = None, copy: bool = False, copy_to_fb: bool = False) Image

Pretvara sliku u sliku u sivim tonovima (8 bitova po pikselu).

x_scale kontrolira koliko se prikazana slika skalira u smjeru x (float). Ako je ova vrijednost negativna, slika će se vodoravno preokrenuti. Imajte na umu da ako y_scale nije naveden, on će se podudarati s x_scale kako bi se zadržao omjer stranica.

y_scale kontrolira koliko se prikazana slika skalira u smjeru y (float). Ako je ova vrijednost negativna, slika će se okomito preokrenuti. Imajte na umu da ako x_scale nije naveden, on će se podudarati s x_scale kako bi se zadržao omjer stranica.

roi je torka pravokutnika područja interesa (x, y, w, h) izvorne slike za crtanje. To vam omogućuje izdvajanje samo piksela unutar ROI-ja za skaliranje i crtanje na odredišnoj slici.

rgb_channel je RGB kanal (0=R, G=1, B=2) koji se izdvaja iz RGB565 slike (ako je proslijeđena) i renderira na odredišnoj slici. Na primjer, ako proslijedite rgb_channel=1, ovo će izdvojiti zeleni kanal izvorne RGB565 slike i nacrtati ga u sivim tonovima na odredišnoj slici.

alpha kontrolira koliko se izvorne slike stapa u odredišnu sliku. Vrijednost 255 crta neprozirnu izvornu sliku, dok vrijednost niža od 255 daje stapanje između izvorne i odredišne slike. 0 rezultira nikakvom izmjenom odredišne slike.

color_palette ako nije None može biti enum palete boja ili RGB565 slika od ukupno 256 piksela koja se koristi kao tablica za pretraživanje boja na vrijednosti u sivim tonovima bilo koje izvorne slike. Primjenjuje se nakon izdvajanja rgb_channel ako se ono koristi.

alpha_palette ako nije None može biti GRAYSCALE slika od ukupno 256 piksela koja se koristi kao alfa paleta koja modulira vrijednost alpha izvorne slike koja se crta na razini pojedinog piksela, omogućujući vam preciznu kontrolu alfa vrijednosti piksela na temelju njihove vrijednosti u sivim tonovima. Vrijednost piksela 255 u alfa tablici za pretraživanje neprozirna je, dok sve manje od 255 postaje sve prozirnije do 0. Primjenjuje se nakon izdvajanja rgb_channel ako se ono koristi.

hint je logički OR zastavica navedenih u Zastavice za savjete (isključujući image.BLACK_BACKGROUND koji ovdje nije podržan).

transform je ndarray 3x3 koji se koristi za izvođenje perspektivne transformacije na slici. Trenutno podržano samo na OpenMV Cam N6 jer ima GPU koji to može učiniti hardverski.

copy ako je True stvara duboku kopiju na gomili pretvorene slike umjesto pretvaranja izvorne slike na mjestu.

copy_to_fb ako je True, slika se učitava izravno u međuspremnik slike. copy_to_fb ima prednost pred copy. Ovo nema poseban učinak ako je slika već u međuspremniku slike.

Vraća objekt slike kako biste mogli pozvati drugu metodu pomoću zapisa ..

to_rgb565(x_scale: float = 1.0, y_scale: float = 1.0, roi: Tuple[int, int, int, int] | None = None, rgb_channel: int = -1, alpha: int = 255, color_palette: int | Image | None = None, alpha_palette: Image | None = None, hint: int = 0, transform: ndarray | None = None, copy: bool = False, copy_to_fb: bool = False) Image

Pretvara sliku u RGB565 sliku (16 bitova po pikselu).

x_scale kontrolira koliko se prikazana slika skalira u smjeru x (float). Ako je ova vrijednost negativna, slika će se vodoravno preokrenuti. Imajte na umu da ako y_scale nije naveden, on će se podudarati s x_scale kako bi se zadržao omjer stranica.

y_scale kontrolira koliko se prikazana slika skalira u smjeru y (float). Ako je ova vrijednost negativna, slika će se okomito preokrenuti. Imajte na umu da ako x_scale nije naveden, on će se podudarati s x_scale kako bi se zadržao omjer stranica.

roi je torka pravokutnika područja interesa (x, y, w, h) izvorne slike za crtanje. To vam omogućuje izdvajanje samo piksela unutar ROI-ja za skaliranje i crtanje na odredišnoj slici.

rgb_channel je RGB kanal (0=R, G=1, B=2) koji se izdvaja iz RGB565 slike (ako je proslijeđena) i renderira na odredišnoj slici. Na primjer, ako proslijedite rgb_channel=1, ovo će izdvojiti zeleni kanal izvorne RGB565 slike i nacrtati ga u sivim tonovima na odredišnoj slici.

alpha kontrolira koliko se izvorne slike stapa u odredišnu sliku. Vrijednost 255 crta neprozirnu izvornu sliku, dok vrijednost niža od 255 daje stapanje između izvorne i odredišne slike. 0 rezultira nikakvom izmjenom odredišne slike.

color_palette ako nije None može biti enum palete boja ili RGB565 slika od ukupno 256 piksela koja se koristi kao tablica za pretraživanje boja na vrijednosti u sivim tonovima bilo koje izvorne slike. Primjenjuje se nakon izdvajanja rgb_channel ako se ono koristi.

alpha_palette ako nije None može biti GRAYSCALE slika od ukupno 256 piksela koja se koristi kao alfa paleta koja modulira vrijednost alpha izvorne slike koja se crta na razini pojedinog piksela, omogućujući vam preciznu kontrolu alfa vrijednosti piksela na temelju njihove vrijednosti u sivim tonovima. Vrijednost piksela 255 u alfa tablici za pretraživanje neprozirna je, dok sve manje od 255 postaje sve prozirnije do 0. Primjenjuje se nakon izdvajanja rgb_channel ako se ono koristi.

hint je logički OR zastavica navedenih u Zastavice za savjete (isključujući image.BLACK_BACKGROUND koji ovdje nije podržan).

transform je ndarray 3x3 koji se koristi za izvođenje perspektivne transformacije na slici. Trenutno podržano samo na OpenMV Cam N6 jer ima GPU koji to može učiniti hardverski.

copy ako je True stvara duboku kopiju na gomili pretvorene slike umjesto pretvaranja izvorne slike na mjestu.

copy_to_fb ako je True, slika se učitava izravno u međuspremnik slike. copy_to_fb ima prednost pred copy. Ovo nema poseban učinak ako je slika već u međuspremniku slike.

Vraća objekt slike kako biste mogli pozvati drugu metodu pomoću zapisa ..

to_rainbow(x_scale: float = 1.0, y_scale: float = 1.0, roi: Tuple[int, int, int, int] | None = None, rgb_channel: int = -1, alpha: int = 255, color_palette: int | Image = PALETTE_RAINBOW, alpha_palette: Image | None = None, hint: int = 0, transform: ndarray | None = None, copy: bool = False, copy_to_fb: bool = False) Image

Pretvara sliku u RGB565 sliku duginih boja (16 bitova po pikselu).

x_scale kontrolira koliko se prikazana slika skalira u smjeru x (float). Ako je ova vrijednost negativna, slika će se vodoravno preokrenuti. Imajte na umu da ako y_scale nije naveden, on će se podudarati s x_scale kako bi se zadržao omjer stranica.

y_scale kontrolira koliko se prikazana slika skalira u smjeru y (float). Ako je ova vrijednost negativna, slika će se okomito preokrenuti. Imajte na umu da ako x_scale nije naveden, on će se podudarati s x_scale kako bi se zadržao omjer stranica.

roi je torka pravokutnika područja interesa (x, y, w, h) izvorne slike za crtanje. To vam omogućuje izdvajanje samo piksela unutar ROI-ja za skaliranje i crtanje na odredišnoj slici.

rgb_channel je RGB kanal (0=R, G=1, B=2) koji se izdvaja iz RGB565 slike (ako je proslijeđena) i renderira na odredišnoj slici. Na primjer, ako proslijedite rgb_channel=1, ovo će izdvojiti zeleni kanal izvorne RGB565 slike i nacrtati ga u sivim tonovima na odredišnoj slici.

alpha kontrolira koliko se izvorne slike stapa u odredišnu sliku. Vrijednost 255 crta neprozirnu izvornu sliku, dok vrijednost niža od 255 daje stapanje između izvorne i odredišne slike. 0 rezultira nikakvom izmjenom odredišne slike.

color_palette ako nije None može biti enum palete boja ili RGB565 slika od ukupno 256 piksela koja se koristi kao tablica za pretraživanje boja na vrijednosti u sivim tonovima bilo koje izvorne slike. Primjenjuje se nakon izdvajanja rgb_channel ako se ono koristi.

alpha_palette ako nije None može biti GRAYSCALE slika od ukupno 256 piksela koja se koristi kao alfa paleta koja modulira vrijednost alpha izvorne slike koja se crta na razini pojedinog piksela, omogućujući vam preciznu kontrolu alfa vrijednosti piksela na temelju njihove vrijednosti u sivim tonovima. Vrijednost piksela 255 u alfa tablici za pretraživanje neprozirna je, dok sve manje od 255 postaje sve prozirnije do 0. Primjenjuje se nakon izdvajanja rgb_channel ako se ono koristi.

hint je logički OR zastavica navedenih u Zastavice za savjete (isključujući image.BLACK_BACKGROUND koji ovdje nije podržan).

transform je ndarray 3x3 koji se koristi za izvođenje perspektivne transformacije na slici. Trenutno podržano samo na OpenMV Cam N6 jer ima GPU koji to može učiniti hardverski.

copy ako je True stvara duboku kopiju na gomili pretvorene slike umjesto pretvaranja izvorne slike na mjestu.

copy_to_fb ako je True, slika se učitava izravno u međuspremnik slike. copy_to_fb ima prednost pred copy. Ovo nema poseban učinak ako je slika već u međuspremniku slike.

Vraća objekt slike kako biste mogli pozvati drugu metodu pomoću zapisa ..

to_ironbow(x_scale: float = 1.0, y_scale: float = 1.0, roi: Tuple[int, int, int, int] | None = None, rgb_channel: int = -1, alpha: int = 255, color_palette: int | Image = PALETTE_IRONBOW, alpha_palette: Image | None = None, hint: int = 0, transform: ndarray | None = None, copy: bool = False, copy_to_fb: bool = False) Image

Pretvara sliku u RGB565 ironbow sliku (16 bitova po pikselu).

x_scale kontrolira koliko se prikazana slika skalira u smjeru x (float). Ako je ova vrijednost negativna, slika će se vodoravno preokrenuti. Imajte na umu da ako y_scale nije naveden, on će se podudarati s x_scale kako bi se zadržao omjer stranica.

y_scale kontrolira koliko se prikazana slika skalira u smjeru y (float). Ako je ova vrijednost negativna, slika će se okomito preokrenuti. Imajte na umu da ako x_scale nije naveden, on će se podudarati s x_scale kako bi se zadržao omjer stranica.

roi je torka pravokutnika područja interesa (x, y, w, h) izvorne slike za crtanje. To vam omogućuje izdvajanje samo piksela unutar ROI-ja za skaliranje i crtanje na odredišnoj slici.

rgb_channel je RGB kanal (0=R, G=1, B=2) koji se izdvaja iz RGB565 slike (ako je proslijeđena) i renderira na odredišnoj slici. Na primjer, ako proslijedite rgb_channel=1, ovo će izdvojiti zeleni kanal izvorne RGB565 slike i nacrtati ga u sivim tonovima na odredišnoj slici.

alpha kontrolira koliko se izvorne slike stapa u odredišnu sliku. Vrijednost 255 crta neprozirnu izvornu sliku, dok vrijednost niža od 255 daje stapanje između izvorne i odredišne slike. 0 rezultira nikakvom izmjenom odredišne slike.

color_palette ako nije None može biti enum palete boja ili RGB565 slika od ukupno 256 piksela koja se koristi kao tablica za pretraživanje boja na vrijednosti u sivim tonovima bilo koje izvorne slike. Primjenjuje se nakon izdvajanja rgb_channel ako se ono koristi.

alpha_palette ako nije None može biti GRAYSCALE slika od ukupno 256 piksela koja se koristi kao alfa paleta koja modulira vrijednost alpha izvorne slike koja se crta na razini pojedinog piksela, omogućujući vam preciznu kontrolu alfa vrijednosti piksela na temelju njihove vrijednosti u sivim tonovima. Vrijednost piksela 255 u alfa tablici za pretraživanje neprozirna je, dok sve manje od 255 postaje sve prozirnije do 0. Primjenjuje se nakon izdvajanja rgb_channel ako se ono koristi.

hint je logički OR zastavica navedenih u Zastavice za savjete (isključujući image.BLACK_BACKGROUND koji ovdje nije podržan).

transform je ndarray 3x3 koji se koristi za izvođenje perspektivne transformacije na slici. Trenutno podržano samo na OpenMV Cam N6 jer ima GPU koji to može učiniti hardverski.

copy ako je True stvara duboku kopiju na gomili pretvorene slike umjesto pretvaranja izvorne slike na mjestu.

copy_to_fb ako je True, slika se učitava izravno u međuspremnik slike. copy_to_fb ima prednost pred copy. Ovo nema poseban učinak ako je slika već u međuspremniku slike.

Vraća objekt slike kako biste mogli pozvati drugu metodu pomoću zapisa ..

to_depth(x_scale: float = 1.0, y_scale: float = 1.0, roi: Tuple[int, int, int, int] | None = None, rgb_channel: int = -1, alpha: int = 255, color_palette: int | Image = PALETTE_IRONBOW, alpha_palette: Image | None = None, hint: int = 0, transform: ndarray | None = None, copy: bool = False, copy_to_fb: bool = False) Image

Pretvara sliku u RGB565 sliku dubine (16 bitova po pikselu).

x_scale kontrolira koliko se prikazana slika skalira u smjeru x (float). Ako je ova vrijednost negativna, slika će se vodoravno preokrenuti. Imajte na umu da ako y_scale nije naveden, on će se podudarati s x_scale kako bi se zadržao omjer stranica.

y_scale kontrolira koliko se prikazana slika skalira u smjeru y (float). Ako je ova vrijednost negativna, slika će se okomito preokrenuti. Imajte na umu da ako x_scale nije naveden, on će se podudarati s x_scale kako bi se zadržao omjer stranica.

roi je torka pravokutnika područja interesa (x, y, w, h) izvorne slike za crtanje. To vam omogućuje izdvajanje samo piksela unutar ROI-ja za skaliranje i crtanje na odredišnoj slici.

rgb_channel je RGB kanal (0=R, G=1, B=2) koji se izdvaja iz RGB565 slike (ako je proslijeđena) i renderira na odredišnoj slici. Na primjer, ako proslijedite rgb_channel=1, ovo će izdvojiti zeleni kanal izvorne RGB565 slike i nacrtati ga u sivim tonovima na odredišnoj slici.

alpha kontrolira koliko se izvorne slike stapa u odredišnu sliku. Vrijednost 255 crta neprozirnu izvornu sliku, dok vrijednost niža od 255 daje stapanje između izvorne i odredišne slike. 0 rezultira nikakvom izmjenom odredišne slike.

color_palette ako nije None može biti image.PALETTE_DEPTH ili RGB565 slika od ukupno 256 piksela koja se koristi kao tablica za pretraživanje boja na vrijednosti u sivim tonovima bilo koje izvorne slike. Primjenjuje se nakon izdvajanja rgb_channel ako se ono koristi.

alpha_palette ako nije None može biti GRAYSCALE slika od ukupno 256 piksela koja se koristi kao alfa paleta koja modulira vrijednost alpha izvorne slike koja se crta na razini pojedinog piksela, omogućujući vam preciznu kontrolu alfa vrijednosti piksela na temelju njihove vrijednosti u sivim tonovima. Vrijednost piksela 255 u alfa tablici za pretraživanje neprozirna je, dok sve manje od 255 postaje sve prozirnije do 0. Primjenjuje se nakon izdvajanja rgb_channel ako se ono koristi.

hint je logički OR zastavica navedenih u Zastavice za savjete (isključujući image.BLACK_BACKGROUND koji ovdje nije podržan).

transform je ndarray 3x3 koji se koristi za izvođenje perspektivne transformacije na slici. Trenutno podržano samo na OpenMV Cam N6 jer ima GPU koji to može učiniti hardverski.

copy ako je True stvara duboku kopiju na gomili pretvorene slike umjesto pretvaranja izvorne slike na mjestu.

copy_to_fb ako je True, slika se učitava izravno u međuspremnik slike. copy_to_fb ima prednost pred copy. Ovo nema poseban učinak ako je slika već u međuspremniku slike.

Vraća objekt slike kako biste mogli pozvati drugu metodu pomoću zapisa ..

to_evt_dark(x_scale: float = 1.0, y_scale: float = 1.0, roi: Tuple[int, int, int, int] | None = None, rgb_channel: int = -1, alpha: int = 255, color_palette: int | Image = PALETTE_IRONBOW, alpha_palette: Image | None = None, hint: int = 0, transform: ndarray | None = None, copy: bool = False, copy_to_fb: bool = False) Image

Pretvara sliku u RGB565 sliku tamnih događaja (16 bitova po pikselu).

x_scale kontrolira koliko se prikazana slika skalira u smjeru x (float). Ako je ova vrijednost negativna, slika će se vodoravno preokrenuti. Imajte na umu da ako y_scale nije naveden, on će se podudarati s x_scale kako bi se zadržao omjer stranica.

y_scale kontrolira koliko se prikazana slika skalira u smjeru y (float). Ako je ova vrijednost negativna, slika će se okomito preokrenuti. Imajte na umu da ako x_scale nije naveden, on će se podudarati s x_scale kako bi se zadržao omjer stranica.

roi je torka pravokutnika područja interesa (x, y, w, h) izvorne slike za crtanje. To vam omogućuje izdvajanje samo piksela unutar ROI-ja za skaliranje i crtanje na odredišnoj slici.

rgb_channel je RGB kanal (0=R, G=1, B=2) koji se izdvaja iz RGB565 slike (ako je proslijeđena) i renderira na odredišnoj slici. Na primjer, ako proslijedite rgb_channel=1, ovo će izdvojiti zeleni kanal izvorne RGB565 slike i nacrtati ga u sivim tonovima na odredišnoj slici.

alpha kontrolira koliko se izvorne slike stapa u odredišnu sliku. Vrijednost 255 crta neprozirnu izvornu sliku, dok vrijednost niža od 255 daje stapanje između izvorne i odredišne slike. 0 rezultira nikakvom izmjenom odredišne slike.

color_palette ako nije None može biti enum palete boja ili RGB565 slika od ukupno 256 piksela koja se koristi kao tablica za pretraživanje boja na vrijednosti u sivim tonovima bilo koje izvorne slike. Primjenjuje se nakon izdvajanja rgb_channel ako se ono koristi.

alpha_palette ako nije None može biti GRAYSCALE slika od ukupno 256 piksela koja se koristi kao alfa paleta koja modulira vrijednost alpha izvorne slike koja se crta na razini pojedinog piksela, omogućujući vam preciznu kontrolu alfa vrijednosti piksela na temelju njihove vrijednosti u sivim tonovima. Vrijednost piksela 255 u alfa tablici za pretraživanje neprozirna je, dok sve manje od 255 postaje sve prozirnije do 0. Primjenjuje se nakon izdvajanja rgb_channel ako se ono koristi.

hint je logički OR zastavica navedenih u Zastavice za savjete (isključujući image.BLACK_BACKGROUND koji ovdje nije podržan).

transform je ndarray 3x3 koji se koristi za izvođenje perspektivne transformacije na slici. Trenutno podržano samo na OpenMV Cam N6 jer ima GPU koji to može učiniti hardverski.

copy ako je True stvara duboku kopiju na gomili pretvorene slike umjesto pretvaranja izvorne slike na mjestu.

copy_to_fb ako je True, slika se učitava izravno u međuspremnik slike. copy_to_fb ima prednost pred copy. Ovo nema poseban učinak ako je slika već u međuspremniku slike.

Vraća objekt slike kako biste mogli pozvati drugu metodu pomoću zapisa ..

to_evt_light(x_scale: float = 1.0, y_scale: float = 1.0, roi: Tuple[int, int, int, int] | None = None, rgb_channel: int = -1, alpha: int = 255, color_palette: int | Image = PALETTE_IRONBOW, alpha_palette: Image | None = None, hint: int = 0, transform: ndarray | None = None, copy: bool = False, copy_to_fb: bool = False) Image

Pretvara sliku u RGB565 sliku svijetlih događaja (16 bitova po pikselu).

x_scale kontrolira koliko se prikazana slika skalira u smjeru x (float). Ako je ova vrijednost negativna, slika će se vodoravno preokrenuti. Imajte na umu da ako y_scale nije naveden, on će se podudarati s x_scale kako bi se zadržao omjer stranica.

y_scale kontrolira koliko se prikazana slika skalira u smjeru y (float). Ako je ova vrijednost negativna, slika će se okomito preokrenuti. Imajte na umu da ako x_scale nije naveden, on će se podudarati s x_scale kako bi se zadržao omjer stranica.

roi je torka pravokutnika područja interesa (x, y, w, h) izvorne slike za crtanje. To vam omogućuje izdvajanje samo piksela unutar ROI-ja za skaliranje i crtanje na odredišnoj slici.

rgb_channel je RGB kanal (0=R, G=1, B=2) koji se izdvaja iz RGB565 slike (ako je proslijeđena) i renderira na odredišnoj slici. Na primjer, ako proslijedite rgb_channel=1, ovo će izdvojiti zeleni kanal izvorne RGB565 slike i nacrtati ga u sivim tonovima na odredišnoj slici.

alpha kontrolira koliko se izvorne slike stapa u odredišnu sliku. Vrijednost 255 crta neprozirnu izvornu sliku, dok vrijednost niža od 255 daje stapanje između izvorne i odredišne slike. 0 rezultira nikakvom izmjenom odredišne slike.

color_palette ako nije None može biti enum palete boja ili RGB565 slika od ukupno 256 piksela koja se koristi kao tablica za pretraživanje boja na vrijednosti u sivim tonovima bilo koje izvorne slike. Primjenjuje se nakon izdvajanja rgb_channel ako se ono koristi.

alpha_palette ako nije None može biti GRAYSCALE slika od ukupno 256 piksela koja se koristi kao alfa paleta koja modulira vrijednost alpha izvorne slike koja se crta na razini pojedinog piksela, omogućujući vam preciznu kontrolu alfa vrijednosti piksela na temelju njihove vrijednosti u sivim tonovima. Vrijednost piksela 255 u alfa tablici za pretraživanje neprozirna je, dok sve manje od 255 postaje sve prozirnije do 0. Primjenjuje se nakon izdvajanja rgb_channel ako se ono koristi.

hint je logički OR zastavica navedenih u Zastavice za savjete (isključujući image.BLACK_BACKGROUND koji ovdje nije podržan).

transform je ndarray 3x3 koji se koristi za izvođenje perspektivne transformacije na slici. Trenutno podržano samo na OpenMV Cam N6 jer ima GPU koji to može učiniti hardverski.

copy ako je True stvara duboku kopiju na gomili pretvorene slike umjesto pretvaranja izvorne slike na mjestu.

copy_to_fb ako je True, slika se učitava izravno u međuspremnik slike. copy_to_fb ima prednost pred copy. Ovo nema poseban učinak ako je slika već u međuspremniku slike.

Vraća objekt slike kako biste mogli pozvati drugu metodu pomoću zapisa ..

to_jpeg(x_scale: float = 1.0, y_scale: float = 1.0, roi: Tuple[int, int, int, int] | None = None, rgb_channel: int = -1, alpha: int = 255, color_palette: int | Image | None = None, alpha_palette: Image | None = None, hint: int = 0, transform: ndarray | None = None, copy: bool = False, copy_to_fb: bool = False, quality: int = 90, subsampling: int = 0) Image

Pretvara sliku u JPEG sliku.

x_scale kontrolira koliko se prikazana slika skalira u smjeru x (float). Ako je ova vrijednost negativna, slika će se vodoravno preokrenuti. Imajte na umu da ako y_scale nije naveden, on će se podudarati s x_scale kako bi se zadržao omjer stranica.

y_scale kontrolira koliko se prikazana slika skalira u smjeru y (float). Ako je ova vrijednost negativna, slika će se okomito preokrenuti. Imajte na umu da ako x_scale nije naveden, on će se podudarati s x_scale kako bi se zadržao omjer stranica.

roi je torka pravokutnika područja interesa (x, y, w, h) izvorne slike za crtanje. To vam omogućuje izdvajanje samo piksela unutar ROI-ja za skaliranje i crtanje na odredišnoj slici.

rgb_channel je RGB kanal (0=R, G=1, B=2) koji se izdvaja iz RGB565 slike (ako je proslijeđena) i renderira na odredišnoj slici. Na primjer, ako proslijedite rgb_channel=1, ovo će izdvojiti zeleni kanal izvorne RGB565 slike i nacrtati ga u sivim tonovima na odredišnoj slici.

alpha kontrolira koliko se izvorne slike stapa u odredišnu sliku. Vrijednost 255 crta neprozirnu izvornu sliku, dok vrijednost niža od 255 daje stapanje između izvorne i odredišne slike. 0 rezultira nikakvom izmjenom odredišne slike.

color_palette ako nije None može biti enum palete boja ili RGB565 slika od ukupno 256 piksela koja se koristi kao tablica za pretraživanje boja na vrijednosti u sivim tonovima bilo koje izvorne slike. Primjenjuje se nakon izdvajanja rgb_channel ako se ono koristi.

alpha_palette ako nije None može biti GRAYSCALE slika od ukupno 256 piksela koja se koristi kao alfa paleta koja modulira vrijednost alpha izvorne slike koja se crta na razini pojedinog piksela, omogućujući vam preciznu kontrolu alfa vrijednosti piksela na temelju njihove vrijednosti u sivim tonovima. Vrijednost piksela 255 u alfa tablici za pretraživanje neprozirna je, dok sve manje od 255 postaje sve prozirnije do 0. Primjenjuje se nakon izdvajanja rgb_channel ako se ono koristi.

hint je logički OR zastavica navedenih u Zastavice za savjete (isključujući image.BLACK_BACKGROUND koji ovdje nije podržan).

transform je ndarray 3x3 koji se koristi za izvođenje perspektivne transformacije na slici. Trenutno podržano samo na OpenMV Cam N6 jer ima GPU koji to može učiniti hardverski.

copy ako je True stvara duboku kopiju na gomili pretvorene slike umjesto pretvaranja izvorne slike na mjestu.

copy_to_fb ako je True, slika se učitava izravno u međuspremnik slike. copy_to_fb ima prednost pred copy. Ovo nema poseban učinak ako je slika već u međuspremniku slike.

quality kontrolira kvalitetu kompresije jpeg slike. Vrijednost može biti između 0 i 100.

subsampling može biti:

Vraća objekt slike kako biste mogli pozvati drugu metodu pomoću zapisa ..

to_png(x_scale: float = 1.0, y_scale: float = 1.0, roi: Tuple[int, int, int, int] | None = None, rgb_channel: int = -1, alpha: int = 255, color_palette: int | Image | None = None, alpha_palette: Image | None = None, hint: int = 0, transform: ndarray | None = None, copy: bool = False, copy_to_fb: bool = False) Image

Pretvara sliku u PNG sliku.

x_scale kontrolira koliko se prikazana slika skalira u smjeru x (float). Ako je ova vrijednost negativna, slika će se vodoravno preokrenuti. Imajte na umu da ako y_scale nije naveden, on će se podudarati s x_scale kako bi se zadržao omjer stranica.

y_scale kontrolira koliko se prikazana slika skalira u smjeru y (float). Ako je ova vrijednost negativna, slika će se okomito preokrenuti. Imajte na umu da ako x_scale nije naveden, on će se podudarati s x_scale kako bi se zadržao omjer stranica.

roi je torka pravokutnika područja interesa (x, y, w, h) izvorne slike za crtanje. To vam omogućuje izdvajanje samo piksela unutar ROI-ja za skaliranje i crtanje na odredišnoj slici.

rgb_channel je RGB kanal (0=R, G=1, B=2) koji se izdvaja iz RGB565 slike (ako je proslijeđena) i renderira na odredišnoj slici. Na primjer, ako proslijedite rgb_channel=1, ovo će izdvojiti zeleni kanal izvorne RGB565 slike i nacrtati ga u sivim tonovima na odredišnoj slici.

alpha kontrolira koliko se izvorne slike stapa u odredišnu sliku. Vrijednost 255 crta neprozirnu izvornu sliku, dok vrijednost niža od 255 daje stapanje između izvorne i odredišne slike. 0 rezultira nikakvom izmjenom odredišne slike.

color_palette ako nije None može biti enum palete boja ili RGB565 slika od ukupno 256 piksela koja se koristi kao tablica za pretraživanje boja na vrijednosti u sivim tonovima bilo koje izvorne slike. Primjenjuje se nakon izdvajanja rgb_channel ako se ono koristi.

alpha_palette ako nije None može biti GRAYSCALE slika od ukupno 256 piksela koja se koristi kao alfa paleta koja modulira vrijednost alpha izvorne slike koja se crta na razini pojedinog piksela, omogućujući vam preciznu kontrolu alfa vrijednosti piksela na temelju njihove vrijednosti u sivim tonovima. Vrijednost piksela 255 u alfa tablici za pretraživanje neprozirna je, dok sve manje od 255 postaje sve prozirnije do 0. Primjenjuje se nakon izdvajanja rgb_channel ako se ono koristi.

hint je logički OR zastavica navedenih u Zastavice za savjete (isključujući image.BLACK_BACKGROUND koji ovdje nije podržan).

transform je ndarray 3x3 koji se koristi za izvođenje perspektivne transformacije na slici. Trenutno podržano samo na OpenMV Cam N6 jer ima GPU koji to može učiniti hardverski.

copy ako je True stvara duboku kopiju na gomili pretvorene slike umjesto pretvaranja izvorne slike na mjestu.

copy_to_fb ako je True, slika se učitava izravno u međuspremnik slike. copy_to_fb ima prednost pred copy. Ovo nema poseban učinak ako je slika već u međuspremniku slike.

Vraća objekt slike kako biste mogli pozvati drugu metodu pomoću zapisa ..

compress(x_scale: float = 1.0, y_scale: float = 1.0, roi: Tuple[int, int, int, int] | None = None, rgb_channel: int = -1, alpha: int = 255, color_palette: int | Image | None = None, alpha_palette: Image | None = None, hint: int = 0, transform: ndarray | None = None, copy: bool = False, copy_to_fb: bool = False, quality: int = 90, subsampling: int = 0) Image

Pretvara sliku u JPEG sliku.

x_scale kontrolira koliko se prikazana slika skalira u smjeru x (float). Ako je ova vrijednost negativna, slika će se vodoravno preokrenuti. Imajte na umu da ako y_scale nije naveden, on će se podudarati s x_scale kako bi se zadržao omjer stranica.

y_scale kontrolira koliko se prikazana slika skalira u smjeru y (float). Ako je ova vrijednost negativna, slika će se okomito preokrenuti. Imajte na umu da ako x_scale nije naveden, on će se podudarati s x_scale kako bi se zadržao omjer stranica.

roi je torka pravokutnika područja interesa (x, y, w, h) izvorne slike za crtanje. To vam omogućuje izdvajanje samo piksela unutar ROI-ja za skaliranje i crtanje na odredišnoj slici.

rgb_channel je RGB kanal (0=R, G=1, B=2) koji se izdvaja iz RGB565 slike (ako je proslijeđena) i renderira na odredišnoj slici. Na primjer, ako proslijedite rgb_channel=1, ovo će izdvojiti zeleni kanal izvorne RGB565 slike i nacrtati ga u sivim tonovima na odredišnoj slici.

alpha kontrolira koliko se izvorne slike stapa u odredišnu sliku. Vrijednost 255 crta neprozirnu izvornu sliku, dok vrijednost niža od 255 daje stapanje između izvorne i odredišne slike. 0 rezultira nikakvom izmjenom odredišne slike.

color_palette ako nije None može biti enum palete boja ili RGB565 slika od ukupno 256 piksela koja se koristi kao tablica za pretraživanje boja na vrijednosti u sivim tonovima bilo koje izvorne slike. Primjenjuje se nakon izdvajanja rgb_channel ako se ono koristi.

alpha_palette ako nije None može biti GRAYSCALE slika od ukupno 256 piksela koja se koristi kao alfa paleta koja modulira vrijednost alpha izvorne slike koja se crta na razini pojedinog piksela, omogućujući vam preciznu kontrolu alfa vrijednosti piksela na temelju njihove vrijednosti u sivim tonovima. Vrijednost piksela 255 u alfa tablici za pretraživanje neprozirna je, dok sve manje od 255 postaje sve prozirnije do 0. Primjenjuje se nakon izdvajanja rgb_channel ako se ono koristi.

hint je logički OR zastavica navedenih u Zastavice za savjete (isključujući image.BLACK_BACKGROUND koji ovdje nije podržan).

transform je ndarray 3x3 koji se koristi za izvođenje perspektivne transformacije na slici. Trenutno podržano samo na OpenMV Cam N6 jer ima GPU koji to može učiniti hardverski.

copy ako je True stvara duboku kopiju na gomili pretvorene slike umjesto pretvaranja izvorne slike na mjestu.

copy_to_fb ako je True, slika se učitava izravno u međuspremnik slike. copy_to_fb ima prednost pred copy. Ovo nema poseban učinak ako je slika već u međuspremniku slike.

quality kontrolira kvalitetu kompresije jpeg slike. Vrijednost može biti između 0 i 100.

subsampling može biti:

Vraća objekt slike kako biste mogli pozvati drugu metodu pomoću zapisa ..

Napomena

Image.compress je alias za Image.to_jpeg.

copy(x_scale: float = 1.0, y_scale: float = 1.0, roi: Tuple[int, int, int, int] | None = None, rgb_channel: int = -1, alpha: int = 255, color_palette: int | Image | None = None, alpha_palette: Image | None = None, hint: int = 0, transform: ndarray | None = None, copy_to_fb: bool = False) Image

Stvara duboku kopiju objekta slike.

x_scale kontrolira koliko se prikazana slika skalira u smjeru x (float). Ako je ova vrijednost negativna, slika će se vodoravno preokrenuti. Imajte na umu da ako y_scale nije naveden, on će se podudarati s x_scale kako bi se zadržao omjer stranica.

y_scale kontrolira koliko se prikazana slika skalira u smjeru y (float). Ako je ova vrijednost negativna, slika će se okomito preokrenuti. Imajte na umu da ako x_scale nije naveden, on će se podudarati s x_scale kako bi se zadržao omjer stranica.

roi je torka pravokutnika područja interesa (x, y, w, h) izvorne slike za crtanje. To vam omogućuje izdvajanje samo piksela unutar ROI-ja za skaliranje i crtanje na odredišnoj slici.

rgb_channel je RGB kanal (0=R, G=1, B=2) koji se izdvaja iz RGB565 slike (ako je proslijeđena) i renderira na odredišnoj slici. Na primjer, ako proslijedite rgb_channel=1, ovo će izdvojiti zeleni kanal izvorne RGB565 slike i nacrtati ga u sivim tonovima na odredišnoj slici.

alpha kontrolira koliko se izvorne slike stapa u odredišnu sliku. Vrijednost 255 crta neprozirnu izvornu sliku, dok vrijednost niža od 255 daje stapanje između izvorne i odredišne slike. 0 rezultira nikakvom izmjenom odredišne slike.

color_palette ako nije None može biti enum palete boja ili RGB565 slika od ukupno 256 piksela koja se koristi kao tablica za pretraživanje boja na vrijednosti u sivim tonovima bilo koje izvorne slike. Primjenjuje se nakon izdvajanja rgb_channel ako se ono koristi.

alpha_palette ako nije None može biti GRAYSCALE slika od ukupno 256 piksela koja se koristi kao alfa paleta koja modulira vrijednost alpha izvorne slike koja se crta na razini pojedinog piksela, omogućujući vam preciznu kontrolu alfa vrijednosti piksela na temelju njihove vrijednosti u sivim tonovima. Vrijednost piksela 255 u alfa tablici za pretraživanje neprozirna je, dok sve manje od 255 postaje sve prozirnije do 0. Primjenjuje se nakon izdvajanja rgb_channel ako se ono koristi.

hint je logički OR zastavica navedenih u Zastavice za savjete (isključujući image.BLACK_BACKGROUND koji ovdje nije podržan).

transform je ndarray 3x3 koji se koristi za izvođenje perspektivne transformacije na slici. Trenutno podržano samo na OpenMV Cam N6 jer ima GPU koji to može učiniti hardverski.

copy_to_fb ako je True, slika se učitava izravno u međuspremnik slike. Ovo nema poseban učinak ako je slika već u međuspremniku slike.

Vraća objekt slike kako biste mogli pozvati drugu metodu pomoću zapisa ..

crop(x_scale: float = 1.0, y_scale: float = 1.0, roi: Tuple[int, int, int, int] | None = None, rgb_channel: int = -1, alpha: int = 255, color_palette: int | Image | None = None, alpha_palette: Image | None = None, hint: int = 0, transform: ndarray | None = None, copy: bool = False, copy_to_fb: bool = False) Image

Mijenja sliku na mjestu bez promjene temeljnog tipa slike.

x_scale kontrolira koliko se prikazana slika skalira u smjeru x (float). Ako je ova vrijednost negativna, slika će se vodoravno preokrenuti. Imajte na umu da ako y_scale nije naveden, on će se podudarati s x_scale kako bi se zadržao omjer stranica.

y_scale kontrolira koliko se prikazana slika skalira u smjeru y (float). Ako je ova vrijednost negativna, slika će se okomito preokrenuti. Imajte na umu da ako x_scale nije naveden, on će se podudarati s x_scale kako bi se zadržao omjer stranica.

roi je torka pravokutnika područja interesa (x, y, w, h) izvorne slike za crtanje. To vam omogućuje izdvajanje samo piksela unutar ROI-ja za skaliranje i crtanje na odredišnoj slici.

rgb_channel je RGB kanal (0=R, G=1, B=2) koji se izdvaja iz RGB565 slike (ako je proslijeđena) i renderira na odredišnoj slici. Na primjer, ako proslijedite rgb_channel=1, ovo će izdvojiti zeleni kanal izvorne RGB565 slike i nacrtati ga u sivim tonovima na odredišnoj slici.

alpha kontrolira koliko se izvorne slike stapa u odredišnu sliku. Vrijednost 255 crta neprozirnu izvornu sliku, dok vrijednost niža od 255 daje stapanje između izvorne i odredišne slike. 0 rezultira nikakvom izmjenom odredišne slike.

color_palette ako nije None može biti enum palete boja ili RGB565 slika od ukupno 256 piksela koja se koristi kao tablica za pretraživanje boja na vrijednosti u sivim tonovima bilo koje izvorne slike. Primjenjuje se nakon izdvajanja rgb_channel ako se ono koristi.

alpha_palette ako nije None može biti GRAYSCALE slika od ukupno 256 piksela koja se koristi kao alfa paleta koja modulira vrijednost alpha izvorne slike koja se crta na razini pojedinog piksela, omogućujući vam preciznu kontrolu alfa vrijednosti piksela na temelju njihove vrijednosti u sivim tonovima. Vrijednost piksela 255 u alfa tablici za pretraživanje neprozirna je, dok sve manje od 255 postaje sve prozirnije do 0. Primjenjuje se nakon izdvajanja rgb_channel ako se ono koristi.

hint je logički OR zastavica navedenih u Zastavice za savjete (isključujući image.BLACK_BACKGROUND koji ovdje nije podržan).

transform je ndarray 3x3 koji se koristi za izvođenje perspektivne transformacije na slici. Trenutno podržano samo na OpenMV Cam N6 jer ima GPU koji to može učiniti hardverski.

copy ako je True stvara duboku kopiju na gomili pretvorene slike umjesto pretvaranja izvorne slike na mjestu.

copy_to_fb ako je True, slika se učitava izravno u međuspremnik slike. copy_to_fb ima prednost pred copy. Ovo nema poseban učinak ako je slika već u međuspremniku slike.

Vraća objekt slike kako biste mogli pozvati drugu metodu pomoću zapisa ..

scale(x_scale: float = 1.0, y_scale: float = 1.0, roi: Tuple[int, int, int, int] | None = None, rgb_channel: int = -1, alpha: int = 255, color_palette: int | Image | None = None, alpha_palette: Image | None = None, hint: int = 0, transform: ndarray | None = None, copy: bool = False, copy_to_fb: bool = False) Image

Mijenja sliku na mjestu bez promjene temeljnog tipa slike.

x_scale kontrolira koliko se prikazana slika skalira u smjeru x (float). Ako je ova vrijednost negativna, slika će se vodoravno preokrenuti. Imajte na umu da ako y_scale nije naveden, on će se podudarati s x_scale kako bi se zadržao omjer stranica.

y_scale kontrolira koliko se prikazana slika skalira u smjeru y (float). Ako je ova vrijednost negativna, slika će se okomito preokrenuti. Imajte na umu da ako x_scale nije naveden, on će se podudarati s x_scale kako bi se zadržao omjer stranica.

roi je torka pravokutnika područja interesa (x, y, w, h) izvorne slike za crtanje. To vam omogućuje izdvajanje samo piksela unutar ROI-ja za skaliranje i crtanje na odredišnoj slici.

rgb_channel je RGB kanal (0=R, G=1, B=2) koji se izdvaja iz RGB565 slike (ako je proslijeđena) i renderira na odredišnoj slici. Na primjer, ako proslijedite rgb_channel=1, ovo će izdvojiti zeleni kanal izvorne RGB565 slike i nacrtati ga u sivim tonovima na odredišnoj slici.

alpha kontrolira koliko se izvorne slike stapa u odredišnu sliku. Vrijednost 255 crta neprozirnu izvornu sliku, dok vrijednost niža od 255 daje stapanje između izvorne i odredišne slike. 0 rezultira nikakvom izmjenom odredišne slike.

color_palette ako nije None može biti enum palete boja ili RGB565 slika od ukupno 256 piksela koja se koristi kao tablica za pretraživanje boja na vrijednosti u sivim tonovima bilo koje izvorne slike. Primjenjuje se nakon izdvajanja rgb_channel ako se ono koristi.

alpha_palette ako nije None može biti GRAYSCALE slika od ukupno 256 piksela koja se koristi kao alfa paleta koja modulira vrijednost alpha izvorne slike koja se crta na razini pojedinog piksela, omogućujući vam preciznu kontrolu alfa vrijednosti piksela na temelju njihove vrijednosti u sivim tonovima. Vrijednost piksela 255 u alfa tablici za pretraživanje neprozirna je, dok sve manje od 255 postaje sve prozirnije do 0. Primjenjuje se nakon izdvajanja rgb_channel ako se ono koristi.

hint je logički OR zastavica navedenih u Zastavice za savjete (isključujući image.BLACK_BACKGROUND koji ovdje nije podržan).

transform je ndarray 3x3 koji se koristi za izvođenje perspektivne transformacije na slici. Trenutno podržano samo na OpenMV Cam N6 jer ima GPU koji to može učiniti hardverski.

copy ako je True stvara duboku kopiju na gomili pretvorene slike umjesto pretvaranja izvorne slike na mjestu.

copy_to_fb ako je True, slika se učitava izravno u međuspremnik slike. copy_to_fb ima prednost pred copy. Ovo nema poseban učinak ako je slika već u međuspremniku slike.

Vraća objekt slike kako biste mogli pozvati drugu metodu pomoću zapisa ..

Napomena

Image.scale je alias za Image.crop.

save(path: str, roi: Tuple[int, int, int, int] | None = None, quality: int = 50) Image

Sprema kopiju slike u datotečni sustav na path.

Podržava bmp/pgm/ppm/jpg/jpeg slikovne datoteke. Imajte na umu da ne možete spremiti jpeg komprimirane slike u nekomprimirani format.

roi je pravokutnik područja interesa (x, y, w, h) iz kojeg se sprema. Ako nije naveden, jednak je pravokutniku slike koji kopira cijelu sliku. Ovaj argument nije primjenjiv za JPEG slike.

quality je kvaliteta jpeg kompresije koja se koristi za spremanje slike u jpeg format ako slika već nije komprimirana (0-100) (int).

Vraća objekt slike kako biste mogli pozvati drugu metodu pomoću zapisa ..

flush() None

Ažurira međuspremnik slike u IDE-u slikom iz međuspremnika slike na kameri.

Metode crtanja

clear(mask: Image | None = None) Image

Postavlja sve piksele u slici na nulu (vrlo brzo).

mask je druga slika koja se koristi kao maska na razini piksela za operaciju. Maska bi trebala biti slika sa samo crnim ili bijelim pikselima i trebala bi biti iste veličine kao slika nad kojom se operacija izvodi. Mijenjaju se samo pikseli postavljeni u maski.

Vraća objekt slike kako biste mogli pozvati drugu metodu pomoću zapisa ..

Nije podržano na komprimiranim slikama.

draw_line(x0: int, y0: int, x1: int, y1: int, color: int | Tuple[int, int, int] | None = None, thickness: int = 1) Image

Crta liniju od (x0, y0) do (x1, y1) na slici. Možete proslijediti x0, y0, x1, y1 zasebno ili kao torku (x0, y0, x1, y1).

color je RGB888 torka za slike u sivim tonovima ili RGB565 slike. Zadano je bijela. Međutim, možete također proslijediti temeljnu vrijednost piksela (0-255) za slike u sivim tonovima ili RGB565 vrijednost za RGB565 slike.

thickness kontrolira koliko je linija debela u pikselima.

Vraća objekt slike kako biste mogli pozvati drugu metodu pomoću zapisa ..

Nije podržano na komprimiranim slikama ili bayer slikama.

draw_rectangle(x: int, y: int, w: int, h: int, color: int | Tuple[int, int, int] | None = None, thickness: int = 1, fill: bool = False) Image

Crta pravokutnik na slici. Možete proslijediti x, y, w, h zasebno ili kao torku (x, y, w, h).

color je RGB888 torka za slike u sivim tonovima ili RGB565 slike. Zadano je bijela. Međutim, možete također proslijediti temeljnu vrijednost piksela (0-255) za slike u sivim tonovima ili RGB565 vrijednost za RGB565 slike.

thickness kontrolira koliko su linije debele u pikselima.

Proslijedite fill postavljen na True za ispunjavanje pravokutnika.

Vraća objekt slike kako biste mogli pozvati drugu metodu pomoću zapisa ..

Nije podržano na komprimiranim slikama ili bayer slikama.

draw_circle(x: int, y: int, radius: int, color: int | Tuple[int, int, int] | None = None, thickness: int = 1, fill: bool = False) Image

Crta krug na slici. Možete proslijediti x, y, radius zasebno ili kao torku (x, y, radius).

color je RGB888 torka za slike u sivim tonovima ili RGB565 slike. Zadano je bijela. Međutim, možete također proslijediti temeljnu vrijednost piksela (0-255) za slike u sivim tonovima ili RGB565 vrijednost za RGB565 slike.

thickness kontrolira koliko su rubovi debeli u pikselima.

Proslijedite fill postavljen na True za ispunjavanje kruga.

Vraća objekt slike kako biste mogli pozvati drugu metodu pomoću zapisa ..

Nije podržano na komprimiranim slikama ili bayer slikama.

draw_ellipse(cx: int, cy: int, rx: int, ry: int, rotation: int, color: int | Tuple[int, int, int] | None = None, thickness: int = 1, fill: bool = False) Image

Crta elipsu na slici. Možete proslijediti cx, cy, rx, ry i rotaciju (u stupnjevima) zasebno ili kao torku (cx, yc, rx, ry, rotation).

color je RGB888 torka za slike u sivim tonovima ili RGB565 slike. Zadano je bijela. Međutim, možete također proslijediti temeljnu vrijednost piksela (0-255) za slike u sivim tonovima ili RGB565 vrijednost za RGB565 slike.

thickness kontrolira koliko su rubovi debeli u pikselima.

Proslijedite fill postavljen na True za ispunjavanje elipse.

Vraća objekt slike kako biste mogli pozvati drugu metodu pomoću zapisa ..

Nije podržano na komprimiranim slikama ili bayer slikama.

draw_string(x: int, y: int, text: str, color: int | Tuple[int, int, int] | None = None, scale: float = 1, x_spacing: int = 0, y_spacing: int = 0, mono_space: bool = True, char_rotation: int = 0, char_hmirror: bool = False, char_vflip: bool = False, string_rotation: int = 0, string_hmirror: bool = False, string_vflip: bool = False) Image

Crta tekst 8x10 počevši od lokacije (x, y) na slici. Možete proslijediti x, y zasebno ili kao torku (x, y).

text je niz koji se zapisuje na sliku. Završetci redaka \n, \r i \r\n pomiču kursor u sljedeći redak.

color je RGB888 torka za slike u sivim tonovima ili RGB565 slike. Zadano je bijela. Međutim, možete također proslijediti temeljnu vrijednost piksela (0-255) za slike u sivim tonovima ili RGB565 vrijednost za RGB565 slike.

scale se može povećati za povećanje/smanjenje veličine teksta na slici. Možete proslijediti cjelobrojne ili vrijednosti s pomičnim zarezom veće od 0.

x_spacing vam omogućuje dodavanje (ako je pozitivno) ili oduzimanje (ako je negativno) x piksela između znakova.

y_spacing vam omogućuje dodavanje (ako je pozitivno) ili oduzimanje (ako je negativno) y piksela između znakova (za tekst u više redaka).

mono_space zadano je True što prisiljava tekst na fiksni razmak. Za velike razmjere teksta to izgleda grozno. Postavite na False da biste dobili razmak znakova bez fiksne širine koji izgleda PUNO bolje.

char_rotation može biti 0, 90, 180, 270 za rotaciju svakog znaka u nizu za tu vrijednost.

char_hmirror ako je True vodoravno zrcali sve znakove u nizu.

char_vflip ako je True okomito preokreće sve znakove u nizu.

string_rotation može biti 0, 90, 180, 270 za rotaciju niza za tu vrijednost.

string_hmirror ako je True vodoravno zrcali niz.

string_vflip ako je True okomito preokreće niz.

Vraća objekt slike kako biste mogli pozvati drugu metodu pomoću zapisa ..

Nije podržano na komprimiranim slikama ili bayer slikama.

draw_cross(x: int, y: int, color: int | Tuple[int, int, int] | None = None, size: int = 5, thickness: int = 1) Image

Crta križić na lokaciji x, y. Možete proslijediti x, y zasebno ili kao torku (x, y).

color je RGB888 torka za slike u sivim tonovima ili RGB565 slike. Zadano je bijela. Međutim, možete također proslijediti temeljnu vrijednost piksela (0-255) za slike u sivim tonovima ili RGB565 vrijednost za RGB565 slike.

size kontrolira koliko se daleko protežu linije križića.

thickness kontrolira koliko su rubovi debeli u pikselima.

Vraća objekt slike kako biste mogli pozvati drugu metodu pomoću zapisa ..

Nije podržano na komprimiranim slikama ili bayer slikama.

draw_arrow(x0: int, y0: int, x1: int, y1: int, color: int | Tuple[int, int, int] | None = None, thickness: int = 1) Image

Crta strelicu od (x0, y0) do (x1, y1) na slici. Možete proslijediti x0, y0, x1, y1 zasebno ili kao torku (x0, y0, x1, y1).

color je RGB888 torka za slike u sivim tonovima ili RGB565 slike. Zadano je bijela. Međutim, možete također proslijediti temeljnu vrijednost piksela (0-255) za slike u sivim tonovima ili RGB565 vrijednost za RGB565 slike.

thickness kontrolira koliko je linija debela u pikselima.

Vraća objekt slike kako biste mogli pozvati drugu metodu pomoću zapisa ..

Nije podržano na komprimiranim slikama ili bayer slikama.

draw_detection(detection: Tuple[int, int, int, int, int, int], color1: int | Tuple[int, int, int] | None = None, color2: int | Tuple[int, int, int] | None = None, size: int = 5, thickness: int = 1, fill: bool = False, label: str | None = None, label_offset: Tuple[int, int] | None = None) Image

Crta rezultat detekcije na slici. detection je torka od 6 elemenata (rx, ry, rw, rh, cx, cy) koja opisuje granični pravokutnik i centroid (obično vraćeno kodom neuronske mreže ili praćenja boje).

color1 je boja pravokutnika, a color2 je boja križića centroida. size je veličina križića centroida, thickness kontrolira širinu obruba, a fill ispunjava pravokutnik.

label ako je proslijeđena crta se blizu pravokutnika, pomaknuta za label_offset (x, y).

Vraća objekt slike kako biste mogli pozvati drugu metodu pomoću zapisa ..

Nije podržano na komprimiranim slikama ili bayer slikama.

draw_edges(corners: List[Tuple[int, int]], color: int | Tuple[int, int, int] | None = None, size: int = 0, thickness: int = 1, fill: bool = False) Image

Crta rubne linije između popisa kutova koji vraćaju metode poput blob.corners. Corners je torka od četiri vrijednosti koje su torke x/y od dvije vrijednosti. Npr. [(x1,y1),(x2,y2),(x3,y3),(x4,y4)].

color je RGB888 torka za slike u sivim tonovima ili RGB565 slike. Zadano je bijela. Međutim, možete također proslijediti temeljnu vrijednost piksela (0-255) za slike u sivim tonovima ili RGB565 vrijednost za RGB565 slike.

size ako je veći od 0 uzrokuje da se kutovi crtaju kao krugovi polumjera size.

thickness kontrolira koliko je linija debela u pikselima.

Proslijedite fill postavljen na True za ispunjavanje krugova kutova ako se crtaju.

Vraća objekt slike kako biste mogli pozvati drugu metodu pomoću zapisa ..

Nije podržano na komprimiranim slikama ili bayer slikama.

draw_image(image: Image, x: int = 0, y: int = 0, x_scale: float = 1.0, y_scale: float = 1.0, roi: Tuple[int, int, int, int] | None = None, rgb_channel: int = -1, alpha: int = 255, color_palette: int | Image | None = None, alpha_palette: Image | None = None, hint: int = 0, transform: ndarray | None = None, mask: Image | None = None) Image

Crta image čiji gornji lijevi kut započinje na lokaciji x, y. Možete proslijediti x, y zasebno ili kao torku (x, y). Ova metoda automatski obrađuje renderiranje proslijeđene slike u ispravan format piksela za odredišnu sliku, istovremeno besprijekorno obrađujući obrezivanje.

Možete također proslijediti putanju umjesto objekta slike da bi ova metoda automatski učitala sliku s diska i upotrijebila je u jednom koraku. Npr. draw_image("test.jpg").

x_scale kontrolira koliko se prikazana slika skalira u smjeru x (float). Ako je ova vrijednost negativna, slika će se vodoravno preokrenuti. Imajte na umu da ako y_scale nije naveden, on će se podudarati s x_scale kako bi se zadržao omjer stranica.

y_scale kontrolira koliko se prikazana slika skalira u smjeru y (float). Ako je ova vrijednost negativna, slika će se okomito preokrenuti. Imajte na umu da ako x_scale nije naveden, on će se podudarati s x_scale kako bi se zadržao omjer stranica.

roi je torka pravokutnika područja interesa (x, y, w, h) izvorne slike za crtanje. To vam omogućuje izdvajanje samo piksela unutar ROI-ja za skaliranje i crtanje na odredišnoj slici.

rgb_channel je RGB kanal (0=R, G=1, B=2) koji se izdvaja iz RGB565 slike (ako je proslijeđena) i renderira na odredišnoj slici. Na primjer, ako proslijedite rgb_channel=1, ovo će izdvojiti zeleni kanal izvorne RGB565 slike i nacrtati ga u sivim tonovima na odredišnoj slici.

alpha kontrolira koliko se izvorne slike stapa u odredišnu sliku. Vrijednost 255 crta neprozirnu izvornu sliku, dok vrijednost niža od 255 daje stapanje između izvorne i odredišne slike. 0 rezultira nikakvom izmjenom odredišne slike.

color_palette ako nije None može biti enum palete boja ili RGB565 slika od ukupno 256 piksela koja se koristi kao tablica za pretraživanje boja na vrijednosti u sivim tonovima bilo koje izvorne slike. Primjenjuje se nakon izdvajanja rgb_channel ako se ono koristi.

alpha_palette ako nije None može biti GRAYSCALE slika od ukupno 256 piksela koja se koristi kao alfa paleta koja modulira vrijednost alpha izvorne slike koja se crta na razini pojedinog piksela, omogućujući vam preciznu kontrolu alfa vrijednosti piksela na temelju njihove vrijednosti u sivim tonovima. Vrijednost piksela 255 u alfa tablici za pretraživanje neprozirna je, dok sve manje od 255 postaje sve prozirnije do 0. Primjenjuje se nakon izdvajanja rgb_channel ako se ono koristi.

hint je logički OR zastavica navedenih u Zastavice za savjete (uključujući image.BLACK_BACKGROUND koji je ovdje podržan).

transform je ndarray 3x3 koji se koristi za izvođenje perspektivne transformacije na slici. Trenutno podržano samo na OpenMV Cam N6 jer ima GPU koji to može učiniti hardverski.

Vraća objekt slike kako biste mogli pozvati drugu metodu pomoću zapisa ..

draw_keypoints(keypoints: kp_desc | List[Tuple[int, int, int]], color: int | Tuple[int, int, int] | None = None, size: int = 10, thickness: int = 1, fill: bool = False) Image

Crta ključne točke objekta ključnih točaka na slici. Možete također proslijediti popis torki od tri vrijednosti koje sadrže (x, y, kut_rotacije_u_stupnjevima) za ponovnu upotrebu ove metode za crtanje glifova ključnih točaka koji su krug s linijom usmjerenom u određenom smjeru.

color je RGB888 torka za slike u sivim tonovima ili RGB565 slike. Zadano je bijela. Međutim, možete također proslijediti temeljnu vrijednost piksela (0-255) za slike u sivim tonovima ili RGB565 vrijednost za RGB565 slike.

size kontrolira koliko su velike ključne točke.

thickness kontrolira koliko je linija debela u pikselima.

Proslijedite fill postavljen na True za ispunjavanje ključnih točaka.

Vraća objekt slike kako biste mogli pozvati drugu metodu pomoću zapisa ..

Nije podržano na komprimiranim slikama ili bayer slikama.

flood_fill(x: int, y: int, seed_threshold: float = 0.05, floating_threshold: float = 0.05, color: int | Tuple[int, int, int] | None = None, invert: bool = False, clear_background: bool = False, mask: Image | None = None) Image

Ispunjava regiju slike poplavom (flood fill) počevši od lokacije x, y. Možete proslijediti x, y zasebno ili kao torku (x, y).

seed_threshold kontrolira koliko se bilo koji piksel u području ispune može razlikovati od izvornog početnog piksela.

floating_threshold kontrolira koliko se bilo koji piksel u području ispune može razlikovati od bilo kojeg susjednog piksela.

color je RGB888 torka za slike u sivim tonovima ili RGB565 slike. Zadano je bijela. Međutim, možete također proslijediti temeljnu vrijednost piksela (0-255) za slike u sivim tonovima ili RGB565 vrijednost za RGB565 slike.

Proslijedite invert kao True za ponovno bojenje svega izvan povezanog područja ispune poplavom.

Proslijedite clear_background kao True za postavljanje na nulu ostalih piksela koje ispuna poplavom nije ponovno obojila.

mask je druga slika koja se koristi kao maska na razini piksela za operaciju. Maska bi trebala biti slika sa samo crnim ili bijelim pikselima i trebala bi biti iste veličine kao slika nad kojom se operacija izvodi. Pri ispunjavanju poplavom procjenjuju se samo pikseli postavljeni u maski.

Vraća objekt slike kako biste mogli pozvati drugu metodu pomoću zapisa ..

Nije podržano na komprimiranim slikama ili bayer slikama.

Ova metoda nije dostupna na OpenMV Cam M4.

draw_event_histogram(array: ndarray, clear: bool = True, brightness: int = 128, contrast: int = 16) Image

Rasterizira ndarray događaja (kako ga puni csi.IOCTL_GENX320_READ_EVENTS) na Image radi vizualizacije. Međuspremnik slike mora biti GRAYSCALE slika 320x320.

Za svaki redak csi.PIX_ON_EVENT pikselu događaja dodaje se +contrast; za svaki redak csi.PIX_OFF_EVENT pikselu se dodaje -contrast. Događaji okidača (trigger) ignoriraju se. Vrijednosti piksela ograničene su na 0-255.

clear ako je True resetira međuspremnik slike na brightness prije crtanja — svaka sličica postaje svjež prikaz samo događaja. Postavite na False za akumuliranje događaja kroz više poziva (korisno za tragove kretanja s dugom ekspozicijom).

brightness kontrolira osnovnu srednje sivu vrijednost na koju se međuspremnik resetira kada je clear True. Zadana vrijednost 128 stavlja ON događaje na svijetli kraj, a OFF događaje na tamni kraj s jednakim slobodnim prostorom.

contrast kontrolira koliko svaki događaj pomiče svoj piksel — veće vrijednosti čine da događaji iskaču, po cijenu brzog zasićenja kada mnogi događaji slete na isti piksel.

Metode maskiranja

mask_rectangle(x: int, y: int, w: int, h: int) Image

Postavlja na nulu pravokutni dio slike. Ako nisu navedeni argumenti, ova metoda postavlja na nulu središte slike.

Vraća objekt slike kako biste mogli pozvati drugu metodu pomoću zapisa ..

Nije podržano na komprimiranim slikama ili bayer slikama.

mask_circle(x: int, y: int, radius: int) Image

Postavlja na nulu kružni dio slike. Ako nisu navedeni argumenti, ova metoda postavlja na nulu središte slike.

Vraća objekt slike kako biste mogli pozvati drugu metodu pomoću zapisa ..

Nije podržano na komprimiranim slikama ili bayer slikama.

mask_ellipse(x: int, y: int, radius_x: int, radius_y: int, rotation_angle_in_degrees: int) Image

Postavlja na nulu dio slike u obliku elipse. Ako nisu navedeni argumenti, ova metoda postavlja na nulu središte slike.

Vraća objekt slike kako biste mogli pozvati drugu metodu pomoću zapisa ..

Nije podržano na komprimiranim slikama ili bayer slikama.

Binarne metode

binary(thresholds: List[Tuple[int, int]], invert: bool = False, zero: bool = False, mask: Image | None = None, to_bitmap: bool = False, copy: bool = False) Image

Postavlja sve piksele u slici na crno ili bijelo ovisno o tome je li svaki piksel unutar jedne od torki praga u thresholds.

thresholds je popis torki (lo, hi) za slike u sivim tonovima ili torki (l_lo, l_hi, a_lo, a_hi, b_lo, b_hi) za RGB565 slike. Zamijenjene min/max vrijednosti automatski se ispravljaju; komponente koje nedostaju zadano poprimaju maksimalni raspon.

invert invertira podudaranje praga.

zero ako je True, postavlja na nulu piksele koji prolaze prag, a ostale ostavlja netaknutima.

mask je binarna slika koja se koristi kao maska na razini piksela; mijenjaju se samo pikseli postavljeni u maski.

to_bitmap ako je True, pretvara podatke slike u bitmap od 1 bita po pikselu. Za vrlo male slike ovo može zahtijevati copy=True.

copy ako je True, vraća novu sliku na gomili umjesto mijenjanja izvorne slike.

Vraća objekt slike kako biste mogli pozvati drugu metodu pomoću zapisa ..

Nije podržano na komprimiranim slikama ili bayer slikama.

invert() Image

Invertira sve vrijednosti piksela u slici (svaki piksel postaje 255 - pixel za 8-bitne kanale).

Vraća objekt slike kako biste mogli pozvati drugu metodu pomoću zapisa ..

Nije podržano na komprimiranim slikama ili bayer/yuv slikama.

b_and(image: Image, mask: Image | None = None) Image

Logički izvodi AND ove slike s drugom slikom.

image može biti objekt slike, putanja do nekomprimirane slikovne datoteke (bmp/pgm/ppm) ili skalarna vrijednost (RGB888 torka ili temeljna vrijednost piksela).

mask je binarna slika koja se koristi kao maska na razini piksela; mijenjaju se samo pikseli postavljeni u maski.

Vraća objekt slike kako biste mogli pozvati drugu metodu pomoću zapisa ..

Nije podržano na komprimiranim slikama ili bayer slikama.

b_nand(image: Image, mask: Image | None = None) Image

Logički izvodi NAND ove slike s drugom slikom.

image može biti objekt slike, putanja do nekomprimirane slikovne datoteke (bmp/pgm/ppm) ili skalarna vrijednost (RGB888 torka ili temeljna vrijednost piksela).

mask je binarna slika koja se koristi kao maska na razini piksela; mijenjaju se samo pikseli postavljeni u maski.

Vraća objekt slike kako biste mogli pozvati drugu metodu pomoću zapisa ..

Nije podržano na komprimiranim slikama ili bayer slikama.

b_or(image: Image, mask: Image | None = None) Image

Logički izvodi OR ove slike s drugom slikom.

image može biti objekt slike, putanja do nekomprimirane slikovne datoteke (bmp/pgm/ppm) ili skalarna vrijednost (RGB888 torka ili temeljna vrijednost piksela).

mask je binarna slika koja se koristi kao maska na razini piksela; mijenjaju se samo pikseli postavljeni u maski.

Vraća objekt slike kako biste mogli pozvati drugu metodu pomoću zapisa ..

Nije podržano na komprimiranim slikama ili bayer slikama.

b_nor(image: Image, mask: Image | None = None) Image

Logički izvodi NOR ove slike s drugom slikom.

image može biti objekt slike, putanja do nekomprimirane slikovne datoteke (bmp/pgm/ppm) ili skalarna vrijednost (RGB888 torka ili temeljna vrijednost piksela).

mask je binarna slika koja se koristi kao maska na razini piksela; mijenjaju se samo pikseli postavljeni u maski.

Vraća objekt slike kako biste mogli pozvati drugu metodu pomoću zapisa ..

Nije podržano na komprimiranim slikama ili bayer slikama.

b_xor(image: Image, mask: Image | None = None) Image

Logički izvodi XOR ove slike s drugom slikom.

image može biti objekt slike, putanja do nekomprimirane slikovne datoteke (bmp/pgm/ppm) ili skalarna vrijednost (RGB888 torka ili temeljna vrijednost piksela).

mask je binarna slika koja se koristi kao maska na razini piksela; mijenjaju se samo pikseli postavljeni u maski.

Vraća objekt slike kako biste mogli pozvati drugu metodu pomoću zapisa ..

Nije podržano na komprimiranim slikama ili bayer slikama.

b_xnor(image: Image, mask: Image | None = None) Image

Logički izvodi XNOR ove slike s drugom slikom.

image može biti objekt slike, putanja do nekomprimirane slikovne datoteke (bmp/pgm/ppm) ili skalarna vrijednost (RGB888 torka ili temeljna vrijednost piksela).

mask je binarna slika koja se koristi kao maska na razini piksela; mijenjaju se samo pikseli postavljeni u maski.

Vraća objekt slike kako biste mogli pozvati drugu metodu pomoću zapisa ..

Nije podržano na komprimiranim slikama ili bayer slikama.

ISP metode

awb(max: bool = False) Image

Izvodi automatsko balansiranje bijele boje na slici pomoću algoritma gray-world. Radi na RAW Bayer ili RGB565 slikama. Nema učinka na binarne slike/slike u sivim tonovima.

max ako je True, umjesto toga koristi algoritam white-patch.

Vraća objekt slike kako biste mogli pozvati drugu metodu pomoću zapisa ..

Nije podržano na komprimiranim ili yuv slikama.

ccm(matrix: List[List[float]]) Image

Množi proslijeđenu matricu korekcije boja s pomičnim zarezom sa slikom. Matrice mogu biti 3x3 ili 3x4 (sa stupcem pomaka), u obliku ugniježđenog popisa ili ravnog popisa:

[[rr, rg, rb], [gr, gg, gb], [br, bg, bb]]
[[rr, rg, rb, ro], [gr, gg, gb, go], [br, bg, bb, bo]]
[rr, rg, rb, ro, gr, gg, gb, go, br, bg, bb, bo]

Vraća objekt slike kako biste mogli pozvati drugu metodu pomoću zapisa ..

Nije podržano na komprimiranim slikama ili bayer/yuv slikama.

gamma(gamma: float = 1.0, contrast: float = 1.0, brightness: float = 0.0) Image

Podešava gamu, kontrast i svjetlinu slike.

gamma primjenjuje pow(pixel, 1/gamma) nakon normalizacije. Vrijednosti veće od 1.0 posvjetljuju; manje od 1.0 zatamnjuju.

contrast primjenjuje pixel * contrast nakon normalizacije.

brightness primjenjuje pixel + brightness nakon normalizacije.

Vraća objekt slike kako biste mogli pozvati drugu metodu pomoću zapisa ..

Nije podržano na komprimiranim ili bayer/yuv slikama.

gamma_corr(gamma: float = 1.0, contrast: float = 1.0, brightness: float = 0.0) Image

Alias za Image.gamma.

Matematičke metode

negate() Image

Alias za Image.invert.

replace(image: Image | None = None, **kwargs) Image

Alias za Image.draw_image(). Zamjenjuje ovu sliku s image (ili transformira ovu sliku na mjestu ako je image izostavljen) koristeći standardne ključne argumente draw_image. Argument transform je ndarray 3x3 koji opisuje perspektivnu transformaciju (podržano samo na OpenMV kamerama s omogućenim ULAB).

assign(image: Image | None = None, **kwargs) Image

Alias za Image.replace().

set(image: Image | None = None, **kwargs) Image

Alias za Image.replace().

add(image: Image, mask: Image | None = None) Image

Dodaje sliku ovoj slici piksel po piksel.

image može biti objekt slike, putanja do nekomprimirane slikovne datoteke (bmp/pgm/ppm) ili skalarna vrijednost (RGB888 torka ili temeljna vrijednost piksela).

mask je binarna slika koja se koristi kao maska na razini piksela; mijenjaju se samo pikseli postavljeni u maski.

Vraća objekt slike kako biste mogli pozvati drugu metodu pomoću zapisa ..

Nije podržano na komprimiranim slikama ili bayer slikama.

sub(image: Image, mask: Image | None = None) Image

Oduzima image od ove slike piksel po piksel (self - image).

image može biti objekt slike, putanja do nekomprimirane slikovne datoteke (bmp/pgm/ppm) ili skalarna vrijednost (RGB888 torka ili temeljna vrijednost piksela).

mask je binarna slika koja se koristi kao maska na razini piksela; mijenjaju se samo pikseli postavljeni u maski.

Ova metoda također prihvaća puni skup ključnih argumenata Image.draw_image() (x, y, x_scale, y_scale, roi, rgb_channel, alpha, color_palette, alpha_palette, hint, transform).

Nije podržano na komprimiranim slikama ili bayer slikama.

rsub(image: Image, mask: Image | None = None) Image

Obrnuto oduzimanje: zamjenjuje ovu sliku s image - self piksel po piksel. Inače identično Image.sub().

min(image: Image, mask: Image | None = None) Image

Vraća minimalnu sliku dviju slika piksel po piksel.

image može biti objekt slike, putanja do nekomprimirane slikovne datoteke (bmp/pgm/ppm) ili skalarna vrijednost (RGB888 torka ili temeljna vrijednost piksela).

mask je binarna slika koja se koristi kao maska na razini piksela; mijenjaju se samo pikseli postavljeni u maski.

Vraća objekt slike kako biste mogli pozvati drugu metodu pomoću zapisa ..

Nije podržano na komprimiranim slikama ili bayer slikama.

max(image: Image, mask: Image | None = None) Image

Vraća maksimalnu sliku dviju slika piksel po piksel.

image može biti objekt slike, putanja do nekomprimirane slikovne datoteke (bmp/pgm/ppm) ili skalarna vrijednost (RGB888 torka ili temeljna vrijednost piksela).

mask je binarna slika koja se koristi kao maska na razini piksela; mijenjaju se samo pikseli postavljeni u maski.

Vraća objekt slike kako biste mogli pozvati drugu metodu pomoću zapisa ..

Nije podržano na komprimiranim slikama ili bayer slikama.

difference(image: Image, mask: Image | None = None) Image

Vraća sliku apsolutne razlike između dviju slika (npr. ||a-b||).

image može biti objekt slike, putanja do nekomprimirane slikovne datoteke (bmp/pgm/ppm) ili skalarna vrijednost (RGB888 torka ili temeljna vrijednost piksela).

mask je binarna slika koja se koristi kao maska na razini piksela; mijenjaju se samo pikseli postavljeni u maski.

Vraća objekt slike kako biste mogli pozvati drugu metodu pomoću zapisa ..

Nije podržano na komprimiranim slikama ili bayer slikama.

blend(image: Image, x: int = 0, y: int = 0, alpha: int = 128, mask: Image | None = None, **kwargs) Image

Alias za Image.draw_image(). Alfa-stapa image u ovu sliku. alpha je cijeli broj 0-256; vrijednosti bliže 256 favoriziraju izvornu sliku. Prihvaća sve ključne argumente Image.draw_image().

histeq(adaptive: bool = False, clip_limit: float = -1, mask: Image | None = None) Image

Izvodi izjednačavanje histograma na slici radi normalizacije kontrasta i svjetline.

adaptive ako je True, izvodi adaptivno izjednačavanje histograma (sporije, ali općenito bolje).

clip_limit ograničava kontrast u adaptivnoj varijanti (mala vrijednost poput 10 daje dobre CLAHE rezultate).

mask je binarna slika koja se koristi kao maska na razini piksela; mijenjaju se samo pikseli postavljeni u maski.

Vraća objekt slike kako biste mogli pozvati drugu metodu pomoću zapisa ..

Nije podržano na komprimiranim slikama ili bayer slikama.

Metode filtriranja

erode(size: int, threshold: int | None = None, mask: Image | None = None) Image

Uklanja piksele s rubova segmentiranih područja. Konvoluira jezgru ((size*2)+1)x((size*2)+1) preko slike, brišući središnji piksel ako je više od threshold susjeda obrisano (djeluje kao standardna erozija ako je threshold None).

mask je binarna slika koja se koristi kao maska na razini piksela; mijenjaju se samo pikseli postavljeni u maski.

Vraća objekt slike kako biste mogli pozvati drugu metodu pomoću zapisa ..

Nije podržano na komprimiranim slikama ili bayer/yuv slikama.

dilate(size: int, threshold: int | None = None, mask: Image | None = None) Image

Dodaje piksele rubovima segmentiranih područja. Konvoluira jezgru ((size*2)+1)x((size*2)+1) preko slike, postavljajući središnji piksel ako je više od threshold susjeda postavljeno (djeluje kao standardna dilatacija ako je threshold None).

mask je binarna slika koja se koristi kao maska na razini piksela; mijenjaju se samo pikseli postavljeni u maski.

Vraća objekt slike kako biste mogli pozvati drugu metodu pomoću zapisa ..

Nije podržano na komprimiranim slikama ili bayer/yuv slikama.

open(size: int, threshold: int | None = None, mask: Image | None = None) Image

Izvodi eroziju pa dilataciju. Vidi Image.erode() i Image.dilate().

mask je binarna slika koja se koristi kao maska na razini piksela; mijenjaju se samo pikseli postavljeni u maski.

Nije podržano na komprimiranim slikama ili bayer/yuv slikama.

close(size: int, threshold: int | None = None, mask: Image | None = None) Image

Izvodi dilataciju pa eroziju. Vidi Image.dilate() i Image.erode().

mask je binarna slika koja se koristi kao maska na razini piksela; mijenjaju se samo pikseli postavljeni u maski.

Nije podržano na komprimiranim slikama ili bayer/yuv slikama.

top_hat(size: int, threshold: int | None = None, mask: Image | None = None) Image

Vraća razliku slike i slike obrađene s Image.open().

mask je binarna slika koja se koristi kao maska na razini piksela; mijenjaju se samo pikseli postavljeni u maski.

Nije podržano na komprimiranim slikama ili bayer/yuv slikama.

black_hat(size: int, threshold: int | None = None, mask: Image | None = None) Image

Vraća razliku slike i slike obrađene s Image.close().

mask je binarna slika koja se koristi kao maska na razini piksela; mijenjaju se samo pikseli postavljeni u maski.

Nije podržano na komprimiranim slikama ili bayer/yuv slikama.

mean(size: int, threshold: bool | None = False, offset: int | None = 0, invert: bool | None = False, mask: Image | None = None) Image

Standardni filtar zamućenja srednje vrijednosti pomoću box filtra.

size je veličina jezgre. Koristite 1 (jezgra 3x3), 2 (jezgra 5x5) itd.

threshold ako je True, adaptivno postavlja prag izlaza filtra na binarnu sliku. offset pomiče binarizaciju (negativno čini više piksela bijelim, pozitivno čini manje). invert invertira binarni izlaz.

mask je binarna slika koja se koristi kao maska na razini piksela; mijenjaju se samo pikseli postavljeni u maski.

Vraća objekt slike kako biste mogli pozvati drugu metodu pomoću zapisa ..

Nije podržano na komprimiranim slikama ili bayer/yuv slikama.

median(size: int, percentile: float | None = 0.5, threshold: bool | None = False, offset: int | None = 0, invert: bool | None = False, mask: Image | None = None) Image

Pokreće percentilni filtar na slici (medijan po zadanome).

size je veličina jezgre. Koristite 1 (jezgra 3x3), 2 (jezgra 5x5) itd.

percentile je percentil koji se bira iz svake jezgre (0 = min, 0.5 = medijan, 1.0 = max). Zadano je 0.5.

threshold ako je True, adaptivno postavlja prag izlaza filtra na binarnu sliku. offset pomiče binarizaciju (negativno čini više piksela bijelim, pozitivno čini manje). invert invertira binarni izlaz.

mask je binarna slika koja se koristi kao maska na razini piksela; mijenjaju se samo pikseli postavljeni u maski.

Vraća objekt slike kako biste mogli pozvati drugu metodu pomoću zapisa ..

Nije podržano na komprimiranim slikama ili bayer/yuv slikama.

mode(size: int, threshold: bool | None = False, offset: int | None = 0, invert: bool | None = False, mask: Image | None = None) Image

Zamjenjuje svaki piksel modom njegovih susjeda. Može proizvesti artefakte na rubovima RGB slike zbog nelinearne operacije.

size je veličina jezgre. Koristite 1 (jezgra 3x3), 2 (jezgra 5x5) itd.

threshold ako je True, adaptivno postavlja prag izlaza filtra na binarnu sliku. offset pomiče binarizaciju (negativno čini više piksela bijelim, pozitivno čini manje). invert invertira binarni izlaz.

mask je binarna slika koja se koristi kao maska na razini piksela; mijenjaju se samo pikseli postavljeni u maski.

Vraća objekt slike kako biste mogli pozvati drugu metodu pomoću zapisa ..

Nije podržano na komprimiranim slikama ili bayer/yuv slikama.

midpoint(size: int, bias: float | None = 0.5, threshold: bool | None = False, offset: int | None = 0, invert: bool | None = False, mask: Image | None = None) Image

Pokreće filtar središnje točke na slici. Ovaj filtar pronalazi središnju točku ((max-min)/2) susjedstva svakog piksela u slici.

size je veličina jezgre. Koristite 1 (jezgra 3x3), 2 (jezgra 5x5) itd.

bias kontrolira miješanje min/max. 0 za filtriranje samo minimuma, 1.0 za filtriranje samo maksimuma. Korištenjem bias možete min/max filtrirati sliku.

threshold ako je True, adaptivno postavlja prag izlaza filtra na binarnu sliku. offset pomiče binarizaciju (negativno čini više piksela bijelim, pozitivno čini manje). invert invertira binarni izlaz.

mask je binarna slika koja se koristi kao maska na razini piksela; mijenjaju se samo pikseli postavljeni u maski.

Vraća objekt slike kako biste mogli pozvati drugu metodu pomoću zapisa ..

Nije podržano na komprimiranim slikama ili bayer/yuv slikama.

morph(size: int, kernel: list, mul: float | None = 1.0, add: float | None = 0.0, threshold: bool | None = False, offset: int | None = 0, invert: bool | None = False, mask: Image | None = None) Image

Konvoluira sliku s proizvoljnom jezgrom filtra.

size kontrolira veličinu jezgre, koja mora imati ((size*2)+1)x((size*2)+1) elemenata.

kernel je jezgra s kojom se konvoluira, kao ravan 1D popis/torka od ((size*2)+1)*((size*2)+1) elemenata ili kao 2D popis/torka s ((size*2)+1) redaka od ((size*2)+1) elemenata.

mul je multiplikativni razmjer kontrasta (zadano 1.0).

add je aditivni pomak svjetline (zadano 0.0).

threshold ako je True, adaptivno postavlja prag izlaza filtra na binarnu sliku. offset pomiče binarizaciju (negativno čini više piksela bijelim, pozitivno čini manje). invert invertira binarni izlaz.

mask je binarna slika koja se koristi kao maska na razini piksela; mijenjaju se samo pikseli postavljeni u maski.

Vraća objekt slike kako biste mogli pozvati drugu metodu pomoću zapisa ..

Nije podržano na komprimiranim slikama ili bayer/yuv slikama.

gaussian(size: int, unsharp: bool | None = False, mul: float | None = 1.0, add: float | None = 0.0, threshold: bool | None = False, offset: int | None = 0, invert: bool | None = False, mask: Image | None = None) Image

Konvoluira sliku s gaussovom jezgrom zaglađivanja.

size je veličina jezgre. Koristite 1 (jezgra 3x3), 2 (jezgra 5x5) itd.

unsharp ako je True, izvodi operaciju unsharp maske (izoštrava rubove) umjesto običnog gaussovog zamućenja.

mul je multiplikativni razmjer kontrasta (zadano 1.0).

add je aditivni pomak svjetline (zadano 0.0).

threshold ako je True, adaptivno postavlja prag izlaza filtra na binarnu sliku. offset pomiče binarizaciju (negativno čini više piksela bijelim, pozitivno čini manje). invert invertira binarni izlaz.

mask je binarna slika koja se koristi kao maska na razini piksela; mijenjaju se samo pikseli postavljeni u maski.

Vraća objekt slike kako biste mogli pozvati drugu metodu pomoću zapisa ..

Nije podržano na komprimiranim slikama ili bayer/yuv slikama.

laplacian(size: int, sharpen: bool | None = False, mul: float | None = 1.0, add: float | None = 0.0, threshold: bool | None = False, offset: int | None = 0, invert: bool | None = False, mask: Image | None = None) Image

Konvoluira sliku s laplaceovom jezgrom za detekciju rubova.

size je veličina jezgre. Koristite 1 (jezgra 3x3), 2 (jezgra 5x5) itd.

sharpen ako je True, izoštrava sliku umjesto izlaza sirovog odziva ruba bez postavljenog praga.

mul je multiplikativni razmjer kontrasta (zadano 1.0).

add je aditivni pomak svjetline (zadano 0.0).

threshold ako je True, adaptivno postavlja prag izlaza filtra na binarnu sliku. offset pomiče binarizaciju (negativno čini više piksela bijelim, pozitivno čini manje). invert invertira binarni izlaz.

mask je binarna slika koja se koristi kao maska na razini piksela; mijenjaju se samo pikseli postavljeni u maski.

Vraća objekt slike kako biste mogli pozvati drugu metodu pomoću zapisa ..

Nije podržano na komprimiranim slikama ili bayer/yuv slikama.

bilateral(size: int, color_sigma: float | None = 0.1, space_sigma: float | None = 1.0, threshold: bool | None = False, offset: int | None = 0, invert: bool | None = False, mask: Image | None = None) Image

Konvoluira sliku s bilateralnim filtrom (zaglađivanje uz očuvanje rubova).

size je veličina jezgre. Koristite 1 (jezgra 3x3), 2 (jezgra 5x5) itd.

color_sigma kontrolira toleranciju podudaranja boja; veće vrijednosti proizvode više zamućenja boje.

space_sigma kontrolira prostorno zamućenje; veće vrijednosti proizvode više zamućenja piksela.

threshold ako je True, adaptivno postavlja prag izlaza filtra na binarnu sliku. offset pomiče binarizaciju (negativno čini više piksela bijelim, pozitivno čini manje). invert invertira binarni izlaz.

mask je binarna slika koja se koristi kao maska na razini piksela; mijenjaju se samo pikseli postavljeni u maski.

Vraća objekt slike kako biste mogli pozvati drugu metodu pomoću zapisa ..

Nije podržano na komprimiranim slikama ili bayer/yuv slikama.

Geometrijske metode

linpolar(reverse: bool = False, *, x: int | None = None, y: int | None = None) Image

Ponovno projicira sliku iz kartezijevih koordinata u linearne polarne koordinate.

Postavite reverse=True za ponovnu projekciju u suprotnom smjeru.

x i y određuju koordinatu središta transformacije u pikselima slike. Ako je x jednak None (zadano), postavlja se na polovicu širine slike; jednako tako y zadano poprima polovicu visine slike.

Linearna polarna ponovna projekcija pretvara rotaciju slike u translaciju po x.

Nije podržano na komprimiranim slikama ili bayer slikama.

Ova metoda nije dostupna na OpenMV Cam M4.

logpolar(reverse: bool = False, *, x: int | None = None, y: int | None = None) Image

Ponovno projicira sliku iz kartezijevih koordinata u logaritamske polarne koordinate.

Postavite reverse=True za ponovnu projekciju u suprotnom smjeru.

x i y određuju koordinatu središta transformacije u pikselima slike. Ako je x jednak None (zadano), postavlja se na polovicu širine slike; jednako tako y zadano poprima polovicu visine slike.

Logaritamska polarna ponovna projekcija pretvara rotaciju slike u translaciju po x, a skaliranje/zumiranje u translaciju po y.

Nije podržano na komprimiranim slikama ili bayer slikama.

Ova metoda nije dostupna na OpenMV Cam M4.

lens_corr(strength: float = 1.8, zoom: float = 1.0, x_corr: float = 0.0, y_corr: float = 0.0) Image

Izvodi korekciju leće za uklanjanje efekta ribljeg oka sa slike uzrokovanog izobličenjem leće.

strength je float koji definira koliko ukloniti efekt ribljeg oka sa slike. Isprobajte zadano 1.8, a zatim povećavajte ili smanjujte odatle dok slika ne izgleda dobro.

zoom je iznos zumiranja slike. Zadano 1.0.

x_corr pomak piksela s pomičnim zarezom od središta. Može biti negativan ili pozitivan.

y_corr pomak piksela s pomičnim zarezom od središta. Može biti negativan ili pozitivan.

Vraća objekt slike kako biste mogli pozvati drugu metodu pomoću zapisa ..

Nije podržano na komprimiranim slikama ili bayer slikama.

rotation_corr(x_rotation: float = 0.0, y_rotation: float = 0.0, z_rotation: float = 0.0, x_translation: float = 0.0, y_translation: float = 0.0, zoom: float = 1.0, fov: float = 60.0, corners: List[Tuple[int, int]] | None = None) Image

Ispravlja probleme perspektive u slici izvođenjem 3D rotacije međuspremnika slike.

x_rotation je broj stupnjeva za rotaciju slike u međuspremniku slike oko x osi (tj. ovo zakreće sliku gore i dolje).

y_rotation je broj stupnjeva za rotaciju slike u međuspremniku slike oko y osi (tj. ovo zakreće sliku lijevo i desno).

z_rotation je broj stupnjeva za rotaciju slike u međuspremniku slike oko z osi (tj. ovo zakreće sliku na mjestu).

x_translation je broj jedinica za pomicanje slike lijevo ili desno nakon rotacije. Budući da se ova translacija primjenjuje u 3D prostoru, jedinice nisu pikseli…

y_translation je broj jedinica za pomicanje slike gore ili dolje nakon rotacije. Budući da se ova translacija primjenjuje u 3D prostoru, jedinice nisu pikseli…

zoom je iznos zumiranja slike. Zadano 1.0.

fov je vidno polje koje se koristi za internu 2D->3D projekciju. Kako se fov približava 0, slika se postavlja u beskonačnost; kako se približava 180, slika se postavlja unutar gledišta.

corners je popis od četiri torke (x, y) koje se koriste za izgradnju homografije od 4 točke koja preslikava kutove u (0, 0), (image_width-1, 0), (image_width-1, image_height-1) i (0, image_height-1) prije primjene 3D rotacije. Korisno za transformacije pogleda iz ptičje perspektive.

Vraća objekt slike kako biste mogli pozvati drugu metodu pomoću zapisa ..

Nije podržano na komprimiranim slikama ili bayer slikama.

Ova metoda nije dostupna na OpenMV Cam M4.

Get metode

get_similarity(image: Image, x: int = 0, y: int = 0, x_scale: float = 1.0, y_scale: float = 1.0, roi: Tuple[int, int, int, int] | None = None, rgb_channel: int = -1, alpha: int = 255, color_palette: int | Image | None = None, alpha_palette: Image | None = None, hint: int = 0, transform: ndarray | None = None, dssim: bool = False) Similarity

Računa sličnost između dviju slika pomoću indeksa strukturalne sličnosti (SSIM). SSIM se kreće od -1 (suprotno) do 1 (identično). Vraća objekt image.similarity.

image je slika za usporedbu (objekt slike ili niz s putanjom, npr. "test.jpg").

x, y, x_scale, y_scale, roi, rgb_channel, alpha, color_palette, alpha_palette, hint i transform prihvaćaju iste vrijednosti kao Image.draw_image().

dssim ako je True, umjesto toga vraća indeks strukturalne nesličnosti (DSSIM), gdje 0 znači identično, a 1 znači potpuno različito.

get_histogram(thresholds: List[Tuple[int, int]] | None = None, invert: bool = False, roi: Tuple[int, int, int, int] | None = None, bins: int = -1, l_bins: int = -1, a_bins: int = -1, b_bins: int = -1, difference: Image | None = None) histogram

Računa normalizirani histogram na svim kanalima boja za roi i vraća objekt image.histogram. Dostupno i kao Image.get_hist() ili Image.histogram().

thresholds je popis torki (lo, hi) za slike u sivim tonovima ili torki (l_lo, l_hi, a_lo, a_hi, b_lo, b_hi) za RGB565 slike. Ako je proslijeđeno, histogram se računa samo nad pikselima unutar pragova.

invert invertira podudaranje praga.

roi je torka pravokutnika područja interesa (x, y, w, h). Zadano je pravokutnik slike.

bins (sivi tonovi) ili l_bins/a_bins/b_bins (RGB565) postavljaju broj pretinaca histograma po kanalu. Mora biti veće od 2. Zadano je maksimalni broj pretinaca po kanalu.

difference se može postaviti na objekt slike za rad na razlici između trenutne slike i te slike bez dodatnog međuspremnika.

Nije podržano na komprimiranim slikama ili bayer slikama.

get_statistics(thresholds: List[Tuple[int, int]] | None = None, invert: bool = False, roi: Tuple[int, int, int, int] | None = None, bins: int = -1, l_bins: int = -1, a_bins: int = -1, b_bins: int = -1, difference: Image | None = None) statistics

Računa srednju vrijednost, medijan, mod, standardnu devijaciju, min, max, donji kvartil i gornji kvartil za sve kanale boja za roi i vraća objekt image.statistics. Dostupno i kao Image.get_stats() ili Image.statistics().

thresholds je popis torki (lo, hi) za slike u sivim tonovima ili torki (l_lo, l_hi, a_lo, a_hi, b_lo, b_hi) za RGB565 slike. Ako je proslijeđeno, statistika se računa samo nad pikselima unutar pragova.

invert invertira podudaranje praga.

roi je torka pravokutnika područja interesa (x, y, w, h). Zadano je pravokutnik slike.

bins (sivi tonovi) ili l_bins/a_bins/b_bins (RGB565) postavljaju broj pretinaca histograma po kanalu. Mora biti veće od 2. Zadano je maksimalni broj pretinaca po kanalu.

difference se može postaviti na objekt slike za rad na razlici između trenutne slike i te slike bez dodatnog međuspremnika.

Nije podržano na komprimiranim slikama ili bayer slikama.

get_regression(thresholds: List[Tuple[int, int]], invert: bool = False, roi: Tuple[int, int, int, int] | None = None, x_stride: int = 2, y_stride: int = 1, area_threshold: int = 10, pixels_threshold: int = 10, target_size: Tuple[int, int] = (80, 60)) line

Računa linearnu regresiju (Theil-Sen) na svim pikselima u slici koji prolaze prag. Vraća objekt image.line ili None ako linija nije pronađena.

thresholds je popis torki (lo, hi) za slike u sivim tonovima ili torki (l_lo, l_hi, a_lo, a_hi, b_lo, b_hi) za RGB565 slike.

invert invertira podudaranje praga.

roi je torka pravokutnika područja interesa (x, y, w, h). Zadano je pravokutnik slike.

x_stride i y_stride kontroliraju koliko se piksela preskače pri procjeni slike.

area_threshold minimalna površina graničnog okvira; manji rezultati vraćaju None.

pixels_threshold minimalni broj piksela koji prolaze prag; manji rezultati vraćaju None.

target_size je torka (w, h). ROI se po površini smanjuje da stane unutar ove veličine prije pokretanja algoritma O(N^2). Zadano je (80, 60).

Nije podržano na komprimiranim slikama ili bayer slikama.

Metode detekcije

find_blobs(thresholds: List[Tuple[int, int]], invert: bool = False, roi: Tuple[int, int, int, int] | None = None, x_stride: int = 2, y_stride: int = 1, area_threshold: int = 10, pixels_threshold: int = 10, merge: bool = False, margin: int = 0, threshold_cb: Callable | None = None, merge_cb: Callable | None = None, x_hist_bins_max: int = 0, y_hist_bins_max: int = 0) List[blob]

Pronalazi sve mrlje (povezane regije piksela koje prolaze test praga) u slici i vraća popis objekata image.blob.

thresholds je popis torki (lo, hi) za slike u sivim tonovima ili torki (l_lo, l_hi, a_lo, a_hi, b_lo, b_hi) za RGB565 slike (LAB kanali). Može se proslijediti do 32 torke. Zamijenjene min/max vrijednosti automatski se ispravljaju; komponente koje nedostaju zadano poprimaju maksimalni raspon.

invert invertira podudaranje praga.

roi je torka pravokutnika područja interesa (x, y, w, h). Zadano je pravokutnik slike.

x_stride i y_stride kontroliraju koliko se piksela preskače pri traženju mrlje. Povećajte ako se zna da su mrlje velike.

area_threshold minimalna površina graničnog okvira; manje mrlje se filtriraju.

pixels_threshold minimalni broj piksela koji prolaze prag; manje mrlje se filtriraju.

merge ako je True spaja mrlje čiji se granični pravokutnici sijeku. margin povećava/smanjuje granične pravokutnike koji se koriste za presijecanje. Spojene mrlje izvode OR svojih bitnih vektora code (jedan bit po pragu).

threshold_cb se poziva za svaku mrlju nakon postavljanja praga; vratite True za zadržavanje, False za filtriranje.

merge_cb se poziva za svaki par mrlja koje će se spojiti; vratite True za dopuštanje spajanja, False za sprječavanje.

x_hist_bins_max ako nije nula, popunjava svaku mrlju projekcijom x_histogram s ovim brojem pretinaca.

y_hist_bins_max ako nije nula, popunjava svaku mrlju projekcijom y_histogram s ovim brojem pretinaca.

Nije podržano na komprimiranim slikama ili bayer slikama.

find_lines(roi: Tuple[int, int, int, int] | None = None, x_stride: int = 2, y_stride: int = 1, threshold: int = 1000, theta_margin: int = 25, rho_margin: int = 25) List[line]

Pronalazi sve beskonačne linije u slici pomoću houghove transformacije. Vraća popis objekata image.line.

roi je torka pravokutnika područja interesa (x, y, w, h). Zadano je pravokutnik slike.

x_stride i y_stride kontroliraju koliko se piksela preskače tijekom houghove transformacije.

threshold minimalna magnituda linije (zbroj sobelovih magnituda duž linije); linije ispod toga se filtriraju.

theta_margin i rho_margin kontroliraju spajanje: linije unutar ovih pragova se spajaju.

Nije podržano na komprimiranim slikama ili bayer slikama.

Ova metoda nije dostupna na OpenMV Cam M4.

find_line_segments(roi: Tuple[int, int, int, int] | None = None, merge_distance: int = 0, max_theta_difference: int = 15) List[line]

Pronalazi segmente linija u slici. Vraća popis objekata image.line.

roi je torka pravokutnika područja interesa (x, y, w, h). Zadano je pravokutnik slike.

merge_distance je maksimalna udaljenost u pikselima između dvaju segmenata da bi se spojili.

max_theta_difference je maksimalna razlika thete u stupnjevima između segmenata da bi se spojili.

Ova metoda nije dostupna na OpenMV Cam M4.

find_circles(roi: Tuple[int, int, int, int] | None = None, x_stride: int = 2, y_stride: int = 1, threshold: int = 2000, x_margin: int = 10, y_margin: int = 10, r_margin: int = 10, r_min: int = 2, r_max: int | None = None, r_step: int = 2) List[circle]

Pronalazi krugove u slici pomoću houghove transformacije. Vraća popis objekata image.circle.

roi je torka pravokutnika područja interesa (x, y, w, h). Zadano je pravokutnik slike.

x_stride i y_stride kontroliraju koliko se piksela preskače tijekom houghove transformacije.

threshold minimalna magnituda kruga (zbroj sobelovih magnituda duž kruga); krugovi ispod toga se filtriraju.

x_margin, y_margin i r_margin kontroliraju spajanje: krugovi unutar ovih pragova se spajaju.

r_min minimalni polumjer kruga. Zadano je 2.

r_max maksimalni polumjer kruga. Zadano je min(roi.w/2, roi.h/2).

r_step veličina koraka polumjera. Zadano je 2.

Ova metoda nije dostupna na OpenMV Cam M4.

find_rects(roi: Tuple[int, int, int, int] | None = None, threshold: int = 1000) List[rect]

Pronalazi pravokutnike u slici pomoću apriltag algoritma za detekciju četverokuta. Vraća popis objekata image.rect.

roi je torka pravokutnika područja interesa (x, y, w, h). Zadano je pravokutnik slike.

threshold minimalna magnituda ruba (zbroj sobelovih magnituda duž rubova pravokutnika); pravokutnici ispod toga se filtriraju.

Ova metoda nije dostupna na OpenMV Cam M4.

find_qrcodes(roi: Tuple[int, int, int, int] | None = None) List[qrcode]

Pronalazi sve qrcode unutar roi i vraća popis objekata image.qrcode.

roi je torka pravokutnika područja interesa (x, y, w, h). Zadano je pravokutnik slike.

Ova metoda nije dostupna na OpenMV Cam M4.

find_apriltags(roi: Tuple[int, int, int, int] | None = None, families: int = TAG36H11, fx: float | None = None, fy: float | None = None, cx: float | None = None, cy: float | None = None) List[apriltag]

Pronalazi sve apriltagove unutar roi i vraća popis objekata image.apriltag.

roi je torka pravokutnika područja interesa (x, y, w, h). Zadano je pravokutnik slike.

families je bitmaska obitelji oznaka za dekodiranje. To je logički OR sljedećeg:

Zadano je image.TAG36H11. Vrijeme detekcije skalira se s brojem omogućenih obitelji.

fx i fy su žarišne duljine kamere po X i Y u pikselima.

cx i cy su središte slike, obično image.width()/2 i image.height()/2.

Nije podržano na komprimiranim slikama.

Ova metoda nije dostupna na OpenMV Cam M4.

find_datamatrices(roi: Tuple[int, int, int, int] | None = None, effort: int = 200) List[datamatrix]

Pronalazi sve datamatrice unutar roi i vraća popis objekata image.datamatrix.

roi je torka pravokutnika područja interesa (x, y, w, h). Zadano je pravokutnik slike.

effort kontrolira koliko vremena utrošiti na pokušaj pronalaženja podudaranja matrica podataka. Veće vrijednosti poboljšavaju detekciju po cijenu brzine sličica. Vrijednosti ispod ~160 ne uspijevaju detektirati; vrijednosti iznad ~240 daju sve manje koristi. Zadano je 200.

Ova metoda nije dostupna na OpenMV Cam M4.

find_barcodes(roi: Tuple[int, int, int, int] | None = None) List[barcode]

Pronalazi sve 1D barkodove unutar roi i vraća popis objekata image.barcode. Skenira i vodoravno i okomito.

Podržani tipovi barkodova: image.EAN2, image.EAN5, image.EAN8, image.UPCE, image.ISBN10, image.UPCA, image.EAN13, image.ISBN13, image.I25, image.DATABAR (RSS-14), image.DATABAR_EXP (RSS-Expanded), image.CODABAR, image.CODE39, image.PDF417, image.CODE93, image.CODE128.

roi je torka pravokutnika područja interesa (x, y, w, h). Zadano je pravokutnik slike.

Ova metoda nije dostupna na OpenMV Cam M4.

find_displacement(template: Image, roi: Tuple[int, int, int, int] | None = None, template_roi: Tuple[int, int, int, int] | None = None, logpolar: bool = False, fix_rotation_scale: bool = False) displacement

Pronalazi pomak translacije ove slike od template pomoću fazne korelacije. Vraća objekt image.displacement.

roi je pravokutnik područja interesa (x, y, w, h). Zadano je pravokutnik slike.

template_roi je područje interesa predloška. Zadano je pravokutnik slike predloška. roi i template_roi moraju imati istu širinu i visinu.

logpolar ako je True vraća promjenu rotacije/razmjera umjesto translacije po x/y.

fix_rotation_scale ako je True, računa pomak nakon poravnavanja rotacije i razmjera (ima smisla samo kada je logpolar=False).

Napomena

Koristite ovu metodu na veličinama slike koje su potencija broja 2 (npr. sensor.B64X64).

Nije podržano na komprimiranim slikama ili bayer slikama. Nije dostupno na OpenMV Cam M4.

find_template(template: Image, threshold: float, roi: Tuple[int, int, int, int] | None = None, step: int = 2, search: int = SEARCH_EX) Tuple[int, int, int, int] | None

Pokušava pronaći prvu lokaciju u slici gdje se template podudara pomoću normalizirane unakrsne korelacije. Vraća torku graničnog okvira (x, y, w, h) ili None.

template je slika u sivim tonovima za podudaranje s ovom slikom.

threshold je vrijednost (0.0-1.0). Veće vrijednosti smanjuju lažno pozitivne rezultate i detekcije; manje vrijednosti čine suprotno.

roi je torka pravokutnika područja interesa (x, y, w, h). Zadano je pravokutnik slike.

step je broj piksela koji se preskaču tijekom traženja (koristi se samo u načinu image.SEARCH_EX).

search je image.SEARCH_DS (brže dijamantno pretraživanje) ili image.SEARCH_EX (iscrpno pretraživanje).

Radi samo na slikama u sivim tonovima.

find_features(cascade: Cascade, threshold: float = 0.5, scale: float = 1.5, roi: Tuple[int, int, int, int] | None = None) List[Tuple[int, int, int, int]]

Pretražuje sliku za područjima koja se podudaraju s proslijeđenom Haar Cascade i vraća popis torki graničnih okvira (x, y, w, h). Vraća prazan popis ako značajke nisu pronađene.

cascade je objekt Haar Cascade (vidi image.HaarCascade()).

threshold (0.0-1.0). Niže vrijednosti povećavaju stopu detekcije i stopu lažno pozitivnih rezultata.

scale mora biti veći od 1.0. Veće vrijednosti rade brže, ali proizvode lošija podudaranja.

roi je torka pravokutnika područja interesa (x, y, w, h). Zadano je pravokutnik slike.

find_eye(roi: Tuple[int, int, int, int]) Tuple[int, int]

Traži zjenicu u torki područja interesa (x, y, w, h) oko oka. Vraća (x, y) lokaciju zjenice ili (0, 0) ako nije pronađena.

roi je torka pravokutnika područja interesa (x, y, w, h).

Radi samo na slikama u sivim tonovima.

find_lbp(roi: Tuple[int, int, int, int]) lbp_descriptor

Izdvaja LBP (local-binary-patterns) ključne točke iz područja interesa. Koristite image.match_descriptor() za usporedbu dvaju deskriptora.

roi je torka pravokutnika područja interesa (x, y, w, h).

Radi samo na slikama u sivim tonovima.

find_keypoints(roi: Tuple[int, int, int, int] | None = None, threshold: int = 20, normalized: bool = False, scale_factor: float = 1.5, max_keypoints: int = 100, corner_detector: int = CORNER_AGAST) kp_descriptor | None

Izdvaja ORB ključne točke iz područja interesa. Koristite image.match_descriptor() za usporedbu dvaju deskriptora. Vraća None ako ključne točke nisu pronađene.

roi je torka pravokutnika područja interesa (x, y, w, h). Zadano je pravokutnik slike.

threshold (0-255) kontrolira broj izdvojenih kutova. Niži pragovi proizvode više kutova. Koristite ~20 za AGAST, ~60-80 za FAST.

normalized ako je True, onemogućuje izdvajanje ključnih točaka u više razlučivosti.

scale_factor mora biti veći od 1.0. Veće vrijednosti rade brže, ali proizvode lošija podudaranja.

max_keypoints je maksimalni broj ključnih točaka koje se zadržavaju.

corner_detector je image.CORNER_FAST ili image.CORNER_AGAST.

Radi samo na slikama u sivim tonovima.

find_edges(edge_type: int, threshold: Tuple[int, int] = (100, 200)) Image

Pretvara sliku u crno-bijelu ostavljajući samo rubove kao bijele piksele.

  • image.EDGE_SIMPLE - Jednostavni algoritam visokopropusnog filtra s pragom.

  • image.EDGE_CANNY - Cannyjev algoritam za detekciju rubova.

threshold je torka od dvije vrijednosti koja sadrži niski prag i visoki prag. Kvalitetu rubova možete kontrolirati podešavanjem ovih vrijednosti. Zadano je (100, 200).

Radi samo na slikama u sivim tonovima.

find_hog(roi: Tuple[int, int, int, int] | None = None, size: int = 8) Image

Zamjenjuje piksele u ROI-ju HOG (histogram of orientated gradients) linijama.

roi je torka pravokutnika područja interesa (x, y, w, h). Ako nije naveden, jednak je pravokutniku slike. Operacija se izvodi samo nad pikselima unutar roi.

Radi samo na slikama u sivim tonovima.

Ova metoda nije dostupna na OpenMV Cam M4.

stereo_disparity(reversed: bool = False, max_disparity: int = 64, threshold: int = 64) Image

Uzima dvostruko široku sliku u sivim tonovima koja sadrži izlaz dvaju senzora kamere postavljenih jedan pored drugog i zamjenjuje jednu polovicu slikom stereo disparitet (svaki piksel predstavlja dubinu). Npr. za dvije kamere 320x240 proslijedite sliku 640x240.

reversed Po zadanome lijeva slika uspoređuje se s desnom i desna se slika zamjenjuje. Postavite na True za usporedbu desno->lijevo i zamjenu lijeve slike.

max_disparity je maksimalna udaljenost (1-255) za traženje podudarnog bloka piksela pomoću zbroja apsolutnih razlika. Veće vrijednosti traju eksponencijalno dulje, ali proizvode izlaz veće kvalitete.

threshold ako je zbroj apsolutnih razlika između dvaju blokova manji ili jednak ovom pragu, smatraju se podudarnima.

Pokreće selektivno pretraživanje na slici i vraća popis torki graničnih okvira (x, y, w, h) prijedloga objekata.

threshold je prag segmentacije; veće vrijednosti proizvode manje/veće regije.

size je minimalna veličina regije nakon spajanja.

a1, a2, a3 su težine sličnosti boje/teksture/veličine koje se koriste pri spajanju regija.