class Image – Image-objekti

Image on image-moduulin keskeinen tietotyyppi – muistissa oleva pikselipuskuri, jota jokainen piirtorutiini, jokainen suodatin, jokainen geometrinen muunnos ja jokainen piirteenpoimintarutiini käsittelee. Jokainen kehys, joka tulee ulos csi.CSI.snapshot()-kutsusta, on Image; samoin jokainen levyltä ladattu, JPEG- tai PNG-muodosta dekoodattu, numpy-tyylisestä ndarray-objektista varattu tai tyhjäksi piirtokankaaksi luotu kehys.

Image-objektia kuvaa kolme lukua – width, height ja pixformat – sekä yhtenäinen pikselipuskuri. Pikseliformaatti määrää sekä muistissa olevan asettelun että sen, mitkä operaatiot ovat käytettävissä:

  • BINARY (1 bpp) – 1 bitti per pikseli; morfologian ja kynnystyksen käyttämä.

  • GRAYSCALE (8 bpp) – 1 tavu per pikseli; useimpien CV-toimintojen (AprilTag, reunat, ORB, optinen virtaus) vakioformaatti.

  • RGB565 (16 bpp) – 2 tavua per pikseli (5R/6G/5B); oletusvärimuoto.

  • BAYER (8 bpp) – raakaa Bayer-mosaiikkidataa suoraan sensorilta. Useimmat CV-metodit eivät ole käytettävissä Bayer-kuville; debayeroi ensin muotoon GRAYSCALE / RGB565.

  • YUV422 (16 bpp) – 4:2:2 krominanssialinäytteistetty väri, kaksi tavua per pikseli. Vain osa metodeista toimii suoraan YUV422-muodossa.

  • JPEG / PNG – pakatut puskurit. Pikselitason operaatiot vaativat ensin to_grayscale() tai to_rgb565().

Mistä Image-objektit tulevat

Image-objektin voi hankkia neljällä tavalla:

  • Kameran kehyspuskuristacsi.CSI().snapshot() palauttaa seuraavan kaapatun kehyksen. Palautettu objekti on ohut kääre kameran kehyspuskurimuistin ympärillä, joten mikä tahansa piirto- tai suodatusoperaatio siihen muuttaa sitä, mitä lähetetään IDE:n esikatseluun ja näytölle.

  • Tiedostosta – anna polkumerkkijono Image-konstruktorille. BMP, PGM, PPM, JPEG ja PNG dekoodataan suoraan RAM-muistiin (tai kameran kehyspuskuriin, jos copy_to_fb=True).

  • ndarray-objektista – anna (h, w)- tai (h, w, 3)-muotoinen float32-taulukko. Pikselit skaalataan väliltä 0.0 -- 255.0 GRAYSCALE- tai RGB565-muotoon vastaavasti.

  • Tyhjä – anna (width, height, pixformat) varataksesi nollilla täytetyn piirtopinnan. Pakatuille pikseliformaateille (JPEG / PNG) vaaditaan buffer=-argumentti, joka sisältää pakatun tavuvirran.

Tyypillinen kaappaus-käsittely-näyttö-silmukka

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.

Indeksointi, pituus, iterointi ja tavumainen käyttö

  • Indeksointiimg[i] lukee pikselin i (lineaarisesti, rivi kerrallaan). img[i] = value kirjoittaa sen. Harmaasävy- / Bayer-pikselit ovat 8-bittisiä kokonaislukuja, RGB565- / YUV422-pikselit ovat 16-bittisiä pakattuja kokonaislukuja, binääripikselit ovat 0 / 1. JPEG- / PNG-kuville indeksiavaruus on pakattu tavuvirta, ei pikselit.

  • Pituuslen(img) palauttaa pikselien määrän pakkaamattomille formaateille tai tavumäärän pakatuille formaateille.

  • Iterointifor px in img: ... käy pikselitaulukon läpi samassa järjestyksessä kuin []-indeksointi.

  • TavumainenImage tarjoaa lukupuskuriprotokollan, joten voit antaa sen suoraan mille tahansa, joka ottaa vastaan bytes / bytearray -objektin (esim. uart.write(img), socket.send(img), hashlib.sha256(img)). Käytä bytearray() sen sijaan saadaksesi luku-/kirjoitusnäkymän.

Vihjeliput

Monet Image-metodit ottavat vastaan hint-argumentin, joka on seuraavien lippujen looginen TAI:

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

Jos arg on merkkijono, tämä luo uuden kuvaobjektin tiedostosta polussa arg. Tukee bmp/pgm/ppm/jpg/jpeg/png-kuvatiedostojen lataamista levyltä. Jos copy_to_fb on tosi, kuva kopioidaan kehyspuskuriin sen sijaan, että se varattaisiin keosta.

Jos arg on ndarray, tämä luo uuden kuvaobjektin ndarray-objektista. ndarray-objekteja, joiden muoto on (w, h), käsitellään harmaasävykuvina, (w, h, 3)-objekteja RGB565-kuvina. Vain float32-tyyppisiä ndarrays-objekteja tuetaan tällä hetkellä. Kun kuva luodaan tällä tavalla ja annat buffer-argumentin, sitä käytetään kuvadatan tallentamiseen sen sijaan, että tilaa varattaisiin keosta. Jos copy_to_fb on tosi, kuva kopioidaan kehyspuskuriin sen sijaan, että se varattaisiin keosta tai käytettäisiin buffer-puskuria.

Jos arg on int, sitä pidetään uuden kuvan leveytenä, ja sen jälkeen on annettava height-arvo ja format-arvo uuden tyhjän kuvaobjektin luomiseksi. format voi olla mikä tahansa kuvan pikseliformaatin arvo, kuten image.GRAYSCALE. Kuva alustetaan kaikki nollat -arvoiseksi. Huomaa, että pakatuille kuvaformaateille odotetaan buffer-arvoa. buffer-arvoa pidetään kuvadatan lähteenä kuvia tällä tavalla luotaessa. Jos sitä käytetään copy_to_fb-argumentin kanssa, buffer-puskurin data kopioidaan kehyspuskuriin. Jos haluat luoda JPEG-kuvan JPEG bytes()- tai bytearray()-objektista, voit antaa width, height, image.JPEG JPEG-kuvalle sekä asettaa buffer-arvoksi JPEG-tavuvirran luodaksesi JPEG-kuvan.

Kuvat tukevat ”[]”-notaatiota. Tee image[index] = 8/16-bit value asettaaksesi kuvapikselin tai image[index] saadaksesi kuvapikselin, joka on joko 8-bittinen arvo harmaasävy-/Bayer-kuville tai 16-bittinen arvo RGB565-/YUV-kuville. Binäärikuvat palauttavat 1-bittisen arvon.

JPEG-kuville ”[]” antaa sinun käyttää pakattua JPEG-kuvablobia tavutaulukkona. Datataulukon lukeminen ja kirjoittaminen on kuitenkin läpinäkymätöntä, koska JPEG-kuvat ovat pakattuja tavuvirtoja.

Kuvat tukevat myös lukupuskurioperaatioita. Voit antaa kuvia kaikenlaisille MicroPython-funktioille ikään kuin kuva olisi tavutaulukko-objekti. Erityisesti, jos haluat lähettää kuvan, voit vain antaa sen UART/SPI/I2C-kirjoitusfunktioille lähetettäväksi automaattisesti.

Perusmetodit

width() int

Palauttaa kuvan leveyden pikseleinä.

height() int

Palauttaa kuvan korkeuden pikseleinä.

format() int

Palauttaa image.GRAYSCALE harmaasävykuville, image.RGB565 RGB565-kuville, image.BAYER Bayer-kuviokuville ja image.JPEG JPEG-kuville.

size() int

Palauttaa kuvan koon tavuina.

bytearray() bytearray

Palauttaa bytearray-objektin, joka osoittaa kuvadataan tavutason luku-/kirjoituskäyttöä varten.

Muista

Kuvaobjektit muunnetaan automaattisesti bytes-objekteiksi, kun ne annetaan MicroPython-ajurille, joka vaatii bytes-tyyppisen objektin. Tämä on vain lukukäyttö. Kutsu bytearray() saadaksesi luku-/kirjoituskäytön.

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

Harmaasävykuville: Palauttaa harmaasävypikseliarvon sijainnissa (x, y). RGB565-kuville: Palauttaa RGB888-pikselikolmikon (r, g, b) sijainnissa (x, y). Bayer-kuviokuville: Palauttaa pikseliarvon sijainnissa (x, y).

Palauttaa None, jos x tai y on kuvan ulkopuolella.

x ja y voidaan antaa joko erikseen tai kolmikkona.

rgbtuple saa True-arvolla tämän metodin palauttamaan RGB888-kolmikon. Muuten tämä metodi palauttaa taustalla olevan pikselin kokonaislukuarvon. Eli RGB565-kuville tämä metodi palauttaa RGB565-arvon. Oletusarvoisesti True RGB565-kuville ja False muuten.

Ei tueta pakatuilla kuvilla.

Muista

Image.get_pixel() ja Image.set_pixel() ovat ainoat metodit, jotka antavat sinun käsitellä Bayer-kuviokuvia. Bayer-kuviokuvat ovat kirjaimellisia kuvia, joissa pikselit ovat R/G/R/G/jne. parillisilla riveillä ja G/B/G/B/jne. parittomilla riveillä. Jokainen pikseli on 8-bittinen. Jos kutsut tätä metodia rgbtuple-asetuksen ollessa asetettu, Image.get_pixel() debayeroi lähdekuvan kyseisessä pikselisijainnissa ja palauttaa kelvollisen RGB888-kolmikon pikselisijainnille.

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

Harmaasävykuville: Asettaa pikselin sijainnissa (x, y) harmaasävyarvoon pixel. RGB565-kuville: Asettaa pikselin sijainnissa (x, y) RGB888-kolmikkoon (r, g, b) pixel. Bayer-kuviokuville: Asettaa pikseliarvon sijainnissa (x, y) arvoon pixel.

Palauttaa kuvaobjektin, jotta voit kutsua toista metodia .-notaatiolla.

x ja y voidaan antaa joko erikseen tai kolmikkona.

pixel voi olla joko RGB888-kolmikko (r, g, b) tai taustalla oleva pikseliarvo (eli RGB565-arvo RGB565-kuville tai 8-bittinen arvo harmaasävykuville).

Ei tueta pakatuilla kuvilla.

Muista

Image.get_pixel() ja Image.set_pixel() ovat ainoat metodit, jotka antavat sinun käsitellä Bayer-kuviokuvia. Bayer-kuviokuvat ovat kirjaimellisia kuvia, joissa pikselit ovat R/G/R/G/jne. parillisilla riveillä ja G/B/G/B/jne. parittomilla riveillä. Jokainen pikseli on 8-bittinen. Jos kutsut tätä metodia RGB888-kolmikolla, kyseisen RGB888-kolmikon harmaasävyarvo poimitaan ja asetetaan pikselisijaintiin.

Muunnosmetodit

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

Palauttaa kuvasta luodun ndarray-objektin. Tämä toimii tällä hetkellä vain GRAYSCALE- tai RGB565-kuville.

dtype voi olla b, B tai f luomaan etumerkillisen 8-bittisen, etumerkittömän 8-bittisen tai 32-bittisen liukulukutyyppisen ndarray-objektin. GRAYSCALE-kuvat muunnetaan suoraan etumerkittömiksi 8-bittisiksi ndarray-objekteiksi. Etumerkillisille 8-bittisille ndarray-objekteille arvot (0:255) kuvataan väliin (-127:128). Liukulukutyyppisille 32-bittisille ndarray-objekteille arvot kuvataan väliin (0.0:255.0). RGB565-kuvat muunnetaan 3-kanavaisiksi ndarray-objekteiksi, ja sama edellä GRAYSCALE-kuville kuvattu prosessi sovelletaan jokaiseen kanavaan dtype-arvosta riippuen. Huomaa, että dtype ottaa vastaan myös b-, B- ja f-merkkien kokonaislukuarvot (esim. ord()) vastaavasti.

buffer, jos ei None, on bytearray-objekti, jota käytetään ndarray-objektin puskurina. Jos None, keosta varataan uusi puskuri ndarray-kuvadatan tallentamiseen. Voit käyttää buffer-argumenttia varataksesi ndarray-objektin suoraan esivarattuun puskuriin säästäen kekovarauksen ja kopiointioperaation.

Palautetulla ndarray-objektilla on muoto (height, width) GRAYSCALE-kuville ja (height, width, 3) RGB565-kuville.

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

Muuntaa kuvan bittikarttakuvaksi (1 bitti per pikseli).

x_scale ohjaa, kuinka paljon näytettävää kuvaa skaalataan x-suunnassa (float). Jos tämä arvo on negatiivinen, kuva käännetään vaakasuunnassa. Huomaa, että jos y_scale ei ole määritetty, se vastaa x_scale-arvoa kuvasuhteen säilyttämiseksi.

y_scale ohjaa, kuinka paljon näytettävää kuvaa skaalataan y-suunnassa (float). Jos tämä arvo on negatiivinen, kuva käännetään pystysuunnassa. Huomaa, että jos x_scale ei ole määritetty, se vastaa x_scale-arvoa kuvasuhteen säilyttämiseksi.

roi on lähdekuvan kohdealueen suorakulmiokolmikko (x, y, w, h), joka piirretään. Tämä antaa sinun poimia vain ROI:n pikselit skaalattavaksi ja piirrettäväksi kohdekuvaan.

rgb_channel on RGB-kanava (0=R, G=1, B=2), joka poimitaan RGB565-kuvasta (jos annettu) ja renderöidään kohdekuvaan. Esimerkiksi jos annat rgb_channel=1, tämä poimii lähde-RGB565-kuvan vihreän kanavan ja piirtää sen harmaasävynä kohdekuvaan.

alpha ohjaa, kuinka paljon lähdekuvasta sekoitetaan kohdekuvaan. Arvo 255 piirtää läpinäkymättömän lähdekuvan, kun taas alle 255 oleva arvo tuottaa sekoituksen lähde- ja kohdekuvan välillä. 0 ei muokkaa kohdekuvaa lainkaan.

color_palette, jos ei None, voi olla väripaletin enum-arvo tai kokonaisuudessaan 256 pikselin RGB565-kuva, jota käytetään värihakutauluna minkä tahansa lähdekuvan harmaasävyarvolle. Tämä sovelletaan rgb_channel-poiminnan jälkeen, jos sitä käytetään.

alpha_palette, jos ei None, voi olla kokonaisuudessaan 256 pikselin GRAYSCALE-kuva, jota käytetään alfapalettina, joka moduloi piirrettävän lähdekuvan alpha-arvoa pikselitasolla, jolloin voit ohjata pikselien alfa-arvoa tarkasti niiden harmaasävyarvon perusteella. Pikseliarvo 255 alfahakutaulussa on läpinäkymätön, kun taas mikä tahansa alle 255 oleva muuttuu läpinäkyvämmäksi aina 0:aan asti. Tämä sovelletaan rgb_channel-poiminnan jälkeen, jos sitä käytetään.

hint on kohdassa Vihjeliput lueteltujen lippujen looginen TAI (pois lukien image.BLACK_BACKGROUND, jota ei tueta tässä).

transform on 3x3 ndarray, jota käytetään perspektiivimuunnoksen suorittamiseen kuvalle. Tuetaan tällä hetkellä vain OpenMV Cam N6 -kamerassa, koska siinä on GPU, joka voi tehdä tämän laitteistossa.

copy luo True-arvolla syväkopion keosta muunnetusta kuvasta sen sijaan, että muuntaisi alkuperäisen kuvan paikallaan.

copy_to_fb lataa True-arvolla kuvan suoraan kehyspuskuriin. copy_to_fb on etusijalla copy-argumenttiin nähden. Tällä ei ole erityisvaikutusta, jos kuva on jo kehyspuskurissa.

Muista

Bittikarttakuvat ovat kuin harmaasävykuvia, joilla on vain kaksi pikseliarvoa - 0 ja 1. Lisäksi bittikarttakuvat on pakattu siten, että ne tallentavat vain 1 bitin per pikseli, mikä tekee niistä hyvin pieniä. OpenMV-kuvakirjasto sallii bittikarttakuvien käytön kaikissa paikoissa, joissa sensor.GRAYSCALE- ja sensor.RGB565-kuvia voidaan käyttää. Monet operaatiot bittikarttakuville sovellettuna eivät kuitenkaan ole järkeviä, koska bittikarttakuvilla on vain 2 arvoa. OpenMV suosittelee bittikarttakuvien käyttöä mask-arvoina operaatioissa ja vastaavissa, koska ne mahtuvat MicroPython-kekoon varsin helposti. Lopuksi, bittikarttakuvan pikseliarvot 0 ja 1 tulkitaan mustaksi ja valkoiseksi, kun niitä sovelletaan sensor.GRAYSCALE- tai sensor.RGB565-kuviin. Kirjasto käsittelee muunnoksen automaattisesti.

Palauttaa kuvaobjektin, jotta voit kutsua toista metodia .-notaatiolla.

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

Muuntaa kuvan harmaasävykuvaksi (8 bittiä per pikseli).

x_scale ohjaa, kuinka paljon näytettävää kuvaa skaalataan x-suunnassa (float). Jos tämä arvo on negatiivinen, kuva käännetään vaakasuunnassa. Huomaa, että jos y_scale ei ole määritetty, se vastaa x_scale-arvoa kuvasuhteen säilyttämiseksi.

y_scale ohjaa, kuinka paljon näytettävää kuvaa skaalataan y-suunnassa (float). Jos tämä arvo on negatiivinen, kuva käännetään pystysuunnassa. Huomaa, että jos x_scale ei ole määritetty, se vastaa x_scale-arvoa kuvasuhteen säilyttämiseksi.

roi on lähdekuvan kohdealueen suorakulmiokolmikko (x, y, w, h), joka piirretään. Tämä antaa sinun poimia vain ROI:n pikselit skaalattavaksi ja piirrettäväksi kohdekuvaan.

rgb_channel on RGB-kanava (0=R, G=1, B=2), joka poimitaan RGB565-kuvasta (jos annettu) ja renderöidään kohdekuvaan. Esimerkiksi jos annat rgb_channel=1, tämä poimii lähde-RGB565-kuvan vihreän kanavan ja piirtää sen harmaasävynä kohdekuvaan.

alpha ohjaa, kuinka paljon lähdekuvasta sekoitetaan kohdekuvaan. Arvo 255 piirtää läpinäkymättömän lähdekuvan, kun taas alle 255 oleva arvo tuottaa sekoituksen lähde- ja kohdekuvan välillä. 0 ei muokkaa kohdekuvaa lainkaan.

color_palette, jos ei None, voi olla väripaletin enum-arvo tai kokonaisuudessaan 256 pikselin RGB565-kuva, jota käytetään värihakutauluna minkä tahansa lähdekuvan harmaasävyarvolle. Tämä sovelletaan rgb_channel-poiminnan jälkeen, jos sitä käytetään.

alpha_palette, jos ei None, voi olla kokonaisuudessaan 256 pikselin GRAYSCALE-kuva, jota käytetään alfapalettina, joka moduloi piirrettävän lähdekuvan alpha-arvoa pikselitasolla, jolloin voit ohjata pikselien alfa-arvoa tarkasti niiden harmaasävyarvon perusteella. Pikseliarvo 255 alfahakutaulussa on läpinäkymätön, kun taas mikä tahansa alle 255 oleva muuttuu läpinäkyvämmäksi aina 0:aan asti. Tämä sovelletaan rgb_channel-poiminnan jälkeen, jos sitä käytetään.

hint on kohdassa Vihjeliput lueteltujen lippujen looginen TAI (pois lukien image.BLACK_BACKGROUND, jota ei tueta tässä).

transform on 3x3 ndarray, jota käytetään perspektiivimuunnoksen suorittamiseen kuvalle. Tuetaan tällä hetkellä vain OpenMV Cam N6 -kamerassa, koska siinä on GPU, joka voi tehdä tämän laitteistossa.

copy luo True-arvolla syväkopion keosta muunnetusta kuvasta sen sijaan, että muuntaisi alkuperäisen kuvan paikallaan.

copy_to_fb lataa True-arvolla kuvan suoraan kehyspuskuriin. copy_to_fb on etusijalla copy-argumenttiin nähden. Tällä ei ole erityisvaikutusta, jos kuva on jo kehyspuskurissa.

Palauttaa kuvaobjektin, jotta voit kutsua toista metodia .-notaatiolla.

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

Muuntaa kuvan RGB565-kuvaksi (16 bittiä per pikseli).

x_scale ohjaa, kuinka paljon näytettävää kuvaa skaalataan x-suunnassa (float). Jos tämä arvo on negatiivinen, kuva käännetään vaakasuunnassa. Huomaa, että jos y_scale ei ole määritetty, se vastaa x_scale-arvoa kuvasuhteen säilyttämiseksi.

y_scale ohjaa, kuinka paljon näytettävää kuvaa skaalataan y-suunnassa (float). Jos tämä arvo on negatiivinen, kuva käännetään pystysuunnassa. Huomaa, että jos x_scale ei ole määritetty, se vastaa x_scale-arvoa kuvasuhteen säilyttämiseksi.

roi on lähdekuvan kohdealueen suorakulmiokolmikko (x, y, w, h), joka piirretään. Tämä antaa sinun poimia vain ROI:n pikselit skaalattavaksi ja piirrettäväksi kohdekuvaan.

rgb_channel on RGB-kanava (0=R, G=1, B=2), joka poimitaan RGB565-kuvasta (jos annettu) ja renderöidään kohdekuvaan. Esimerkiksi jos annat rgb_channel=1, tämä poimii lähde-RGB565-kuvan vihreän kanavan ja piirtää sen harmaasävynä kohdekuvaan.

alpha ohjaa, kuinka paljon lähdekuvasta sekoitetaan kohdekuvaan. Arvo 255 piirtää läpinäkymättömän lähdekuvan, kun taas alle 255 oleva arvo tuottaa sekoituksen lähde- ja kohdekuvan välillä. 0 ei muokkaa kohdekuvaa lainkaan.

color_palette, jos ei None, voi olla väripaletin enum-arvo tai kokonaisuudessaan 256 pikselin RGB565-kuva, jota käytetään värihakutauluna minkä tahansa lähdekuvan harmaasävyarvolle. Tämä sovelletaan rgb_channel-poiminnan jälkeen, jos sitä käytetään.

alpha_palette, jos ei None, voi olla kokonaisuudessaan 256 pikselin GRAYSCALE-kuva, jota käytetään alfapalettina, joka moduloi piirrettävän lähdekuvan alpha-arvoa pikselitasolla, jolloin voit ohjata pikselien alfa-arvoa tarkasti niiden harmaasävyarvon perusteella. Pikseliarvo 255 alfahakutaulussa on läpinäkymätön, kun taas mikä tahansa alle 255 oleva muuttuu läpinäkyvämmäksi aina 0:aan asti. Tämä sovelletaan rgb_channel-poiminnan jälkeen, jos sitä käytetään.

hint on kohdassa Vihjeliput lueteltujen lippujen looginen TAI (pois lukien image.BLACK_BACKGROUND, jota ei tueta tässä).

transform on 3x3 ndarray, jota käytetään perspektiivimuunnoksen suorittamiseen kuvalle. Tuetaan tällä hetkellä vain OpenMV Cam N6 -kamerassa, koska siinä on GPU, joka voi tehdä tämän laitteistossa.

copy luo True-arvolla syväkopion keosta muunnetusta kuvasta sen sijaan, että muuntaisi alkuperäisen kuvan paikallaan.

copy_to_fb lataa True-arvolla kuvan suoraan kehyspuskuriin. copy_to_fb on etusijalla copy-argumenttiin nähden. Tällä ei ole erityisvaikutusta, jos kuva on jo kehyspuskurissa.

Palauttaa kuvaobjektin, jotta voit kutsua toista metodia .-notaatiolla.

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

Muuntaa kuvan RGB565-sateenkaarikuvaksi (16 bittiä per pikseli).

x_scale ohjaa, kuinka paljon näytettävää kuvaa skaalataan x-suunnassa (float). Jos tämä arvo on negatiivinen, kuva käännetään vaakasuunnassa. Huomaa, että jos y_scale ei ole määritetty, se vastaa x_scale-arvoa kuvasuhteen säilyttämiseksi.

y_scale ohjaa, kuinka paljon näytettävää kuvaa skaalataan y-suunnassa (float). Jos tämä arvo on negatiivinen, kuva käännetään pystysuunnassa. Huomaa, että jos x_scale ei ole määritetty, se vastaa x_scale-arvoa kuvasuhteen säilyttämiseksi.

roi on lähdekuvan kohdealueen suorakulmiokolmikko (x, y, w, h), joka piirretään. Tämä antaa sinun poimia vain ROI:n pikselit skaalattavaksi ja piirrettäväksi kohdekuvaan.

rgb_channel on RGB-kanava (0=R, G=1, B=2), joka poimitaan RGB565-kuvasta (jos annettu) ja renderöidään kohdekuvaan. Esimerkiksi jos annat rgb_channel=1, tämä poimii lähde-RGB565-kuvan vihreän kanavan ja piirtää sen harmaasävynä kohdekuvaan.

alpha ohjaa, kuinka paljon lähdekuvasta sekoitetaan kohdekuvaan. Arvo 255 piirtää läpinäkymättömän lähdekuvan, kun taas alle 255 oleva arvo tuottaa sekoituksen lähde- ja kohdekuvan välillä. 0 ei muokkaa kohdekuvaa lainkaan.

color_palette, jos ei None, voi olla väripaletin enum-arvo tai kokonaisuudessaan 256 pikselin RGB565-kuva, jota käytetään värihakutauluna minkä tahansa lähdekuvan harmaasävyarvolle. Tämä sovelletaan rgb_channel-poiminnan jälkeen, jos sitä käytetään.

alpha_palette, jos ei None, voi olla kokonaisuudessaan 256 pikselin GRAYSCALE-kuva, jota käytetään alfapalettina, joka moduloi piirrettävän lähdekuvan alpha-arvoa pikselitasolla, jolloin voit ohjata pikselien alfa-arvoa tarkasti niiden harmaasävyarvon perusteella. Pikseliarvo 255 alfahakutaulussa on läpinäkymätön, kun taas mikä tahansa alle 255 oleva muuttuu läpinäkyvämmäksi aina 0:aan asti. Tämä sovelletaan rgb_channel-poiminnan jälkeen, jos sitä käytetään.

hint on kohdassa Vihjeliput lueteltujen lippujen looginen TAI (pois lukien image.BLACK_BACKGROUND, jota ei tueta tässä).

transform on 3x3 ndarray, jota käytetään perspektiivimuunnoksen suorittamiseen kuvalle. Tuetaan tällä hetkellä vain OpenMV Cam N6 -kamerassa, koska siinä on GPU, joka voi tehdä tämän laitteistossa.

copy luo True-arvolla syväkopion keosta muunnetusta kuvasta sen sijaan, että muuntaisi alkuperäisen kuvan paikallaan.

copy_to_fb lataa True-arvolla kuvan suoraan kehyspuskuriin. copy_to_fb on etusijalla copy-argumenttiin nähden. Tällä ei ole erityisvaikutusta, jos kuva on jo kehyspuskurissa.

Palauttaa kuvaobjektin, jotta voit kutsua toista metodia .-notaatiolla.

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

Muuntaa kuvan RGB565-ironbow-kuvaksi (16 bittiä per pikseli).

x_scale ohjaa, kuinka paljon näytettävää kuvaa skaalataan x-suunnassa (float). Jos tämä arvo on negatiivinen, kuva käännetään vaakasuunnassa. Huomaa, että jos y_scale ei ole määritetty, se vastaa x_scale-arvoa kuvasuhteen säilyttämiseksi.

y_scale ohjaa, kuinka paljon näytettävää kuvaa skaalataan y-suunnassa (float). Jos tämä arvo on negatiivinen, kuva käännetään pystysuunnassa. Huomaa, että jos x_scale ei ole määritetty, se vastaa x_scale-arvoa kuvasuhteen säilyttämiseksi.

roi on lähdekuvan kohdealueen suorakulmiokolmikko (x, y, w, h), joka piirretään. Tämä antaa sinun poimia vain ROI:n pikselit skaalattavaksi ja piirrettäväksi kohdekuvaan.

rgb_channel on RGB-kanava (0=R, G=1, B=2), joka poimitaan RGB565-kuvasta (jos annettu) ja renderöidään kohdekuvaan. Esimerkiksi jos annat rgb_channel=1, tämä poimii lähde-RGB565-kuvan vihreän kanavan ja piirtää sen harmaasävynä kohdekuvaan.

alpha ohjaa, kuinka paljon lähdekuvasta sekoitetaan kohdekuvaan. Arvo 255 piirtää läpinäkymättömän lähdekuvan, kun taas alle 255 oleva arvo tuottaa sekoituksen lähde- ja kohdekuvan välillä. 0 ei muokkaa kohdekuvaa lainkaan.

color_palette, jos ei None, voi olla väripaletin enum-arvo tai kokonaisuudessaan 256 pikselin RGB565-kuva, jota käytetään värihakutauluna minkä tahansa lähdekuvan harmaasävyarvolle. Tämä sovelletaan rgb_channel-poiminnan jälkeen, jos sitä käytetään.

alpha_palette, jos ei None, voi olla kokonaisuudessaan 256 pikselin GRAYSCALE-kuva, jota käytetään alfapalettina, joka moduloi piirrettävän lähdekuvan alpha-arvoa pikselitasolla, jolloin voit ohjata pikselien alfa-arvoa tarkasti niiden harmaasävyarvon perusteella. Pikseliarvo 255 alfahakutaulussa on läpinäkymätön, kun taas mikä tahansa alle 255 oleva muuttuu läpinäkyvämmäksi aina 0:aan asti. Tämä sovelletaan rgb_channel-poiminnan jälkeen, jos sitä käytetään.

hint on kohdassa Vihjeliput lueteltujen lippujen looginen TAI (pois lukien image.BLACK_BACKGROUND, jota ei tueta tässä).

transform on 3x3 ndarray, jota käytetään perspektiivimuunnoksen suorittamiseen kuvalle. Tuetaan tällä hetkellä vain OpenMV Cam N6 -kamerassa, koska siinä on GPU, joka voi tehdä tämän laitteistossa.

copy luo True-arvolla syväkopion keosta muunnetusta kuvasta sen sijaan, että muuntaisi alkuperäisen kuvan paikallaan.

copy_to_fb lataa True-arvolla kuvan suoraan kehyspuskuriin. copy_to_fb on etusijalla copy-argumenttiin nähden. Tällä ei ole erityisvaikutusta, jos kuva on jo kehyspuskurissa.

Palauttaa kuvaobjektin, jotta voit kutsua toista metodia .-notaatiolla.

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

Muuntaa kuvan RGB565-syvyyskuvaksi (16 bittiä per pikseli).

x_scale ohjaa, kuinka paljon näytettävää kuvaa skaalataan x-suunnassa (float). Jos tämä arvo on negatiivinen, kuva käännetään vaakasuunnassa. Huomaa, että jos y_scale ei ole määritetty, se vastaa x_scale-arvoa kuvasuhteen säilyttämiseksi.

y_scale ohjaa, kuinka paljon näytettävää kuvaa skaalataan y-suunnassa (float). Jos tämä arvo on negatiivinen, kuva käännetään pystysuunnassa. Huomaa, että jos x_scale ei ole määritetty, se vastaa x_scale-arvoa kuvasuhteen säilyttämiseksi.

roi on lähdekuvan kohdealueen suorakulmiokolmikko (x, y, w, h), joka piirretään. Tämä antaa sinun poimia vain ROI:n pikselit skaalattavaksi ja piirrettäväksi kohdekuvaan.

rgb_channel on RGB-kanava (0=R, G=1, B=2), joka poimitaan RGB565-kuvasta (jos annettu) ja renderöidään kohdekuvaan. Esimerkiksi jos annat rgb_channel=1, tämä poimii lähde-RGB565-kuvan vihreän kanavan ja piirtää sen harmaasävynä kohdekuvaan.

alpha ohjaa, kuinka paljon lähdekuvasta sekoitetaan kohdekuvaan. Arvo 255 piirtää läpinäkymättömän lähdekuvan, kun taas alle 255 oleva arvo tuottaa sekoituksen lähde- ja kohdekuvan välillä. 0 ei muokkaa kohdekuvaa lainkaan.

color_palette, jos ei None, voi olla image.PALETTE_DEPTH tai kokonaisuudessaan 256 pikselin RGB565-kuva, jota käytetään värihakutauluna minkä tahansa lähdekuvan harmaasävyarvolle. Tämä sovelletaan rgb_channel-poiminnan jälkeen, jos sitä käytetään.

alpha_palette, jos ei None, voi olla kokonaisuudessaan 256 pikselin GRAYSCALE-kuva, jota käytetään alfapalettina, joka moduloi piirrettävän lähdekuvan alpha-arvoa pikselitasolla, jolloin voit ohjata pikselien alfa-arvoa tarkasti niiden harmaasävyarvon perusteella. Pikseliarvo 255 alfahakutaulussa on läpinäkymätön, kun taas mikä tahansa alle 255 oleva muuttuu läpinäkyvämmäksi aina 0:aan asti. Tämä sovelletaan rgb_channel-poiminnan jälkeen, jos sitä käytetään.

hint on kohdassa Vihjeliput lueteltujen lippujen looginen TAI (pois lukien image.BLACK_BACKGROUND, jota ei tueta tässä).

transform on 3x3 ndarray, jota käytetään perspektiivimuunnoksen suorittamiseen kuvalle. Tuetaan tällä hetkellä vain OpenMV Cam N6 -kamerassa, koska siinä on GPU, joka voi tehdä tämän laitteistossa.

copy luo True-arvolla syväkopion keosta muunnetusta kuvasta sen sijaan, että muuntaisi alkuperäisen kuvan paikallaan.

copy_to_fb lataa True-arvolla kuvan suoraan kehyspuskuriin. copy_to_fb on etusijalla copy-argumenttiin nähden. Tällä ei ole erityisvaikutusta, jos kuva on jo kehyspuskurissa.

Palauttaa kuvaobjektin, jotta voit kutsua toista metodia .-notaatiolla.

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

Muuntaa kuvan RGB565-tummien tapahtumien kuvaksi (16 bittiä per pikseli).

x_scale ohjaa, kuinka paljon näytettävää kuvaa skaalataan x-suunnassa (float). Jos tämä arvo on negatiivinen, kuva käännetään vaakasuunnassa. Huomaa, että jos y_scale ei ole määritetty, se vastaa x_scale-arvoa kuvasuhteen säilyttämiseksi.

y_scale ohjaa, kuinka paljon näytettävää kuvaa skaalataan y-suunnassa (float). Jos tämä arvo on negatiivinen, kuva käännetään pystysuunnassa. Huomaa, että jos x_scale ei ole määritetty, se vastaa x_scale-arvoa kuvasuhteen säilyttämiseksi.

roi on lähdekuvan kohdealueen suorakulmiokolmikko (x, y, w, h), joka piirretään. Tämä antaa sinun poimia vain ROI:n pikselit skaalattavaksi ja piirrettäväksi kohdekuvaan.

rgb_channel on RGB-kanava (0=R, G=1, B=2), joka poimitaan RGB565-kuvasta (jos annettu) ja renderöidään kohdekuvaan. Esimerkiksi jos annat rgb_channel=1, tämä poimii lähde-RGB565-kuvan vihreän kanavan ja piirtää sen harmaasävynä kohdekuvaan.

alpha ohjaa, kuinka paljon lähdekuvasta sekoitetaan kohdekuvaan. Arvo 255 piirtää läpinäkymättömän lähdekuvan, kun taas alle 255 oleva arvo tuottaa sekoituksen lähde- ja kohdekuvan välillä. 0 ei muokkaa kohdekuvaa lainkaan.

color_palette, jos ei None, voi olla väripaletin enum-arvo tai kokonaisuudessaan 256 pikselin RGB565-kuva, jota käytetään värihakutauluna minkä tahansa lähdekuvan harmaasävyarvolle. Tämä sovelletaan rgb_channel-poiminnan jälkeen, jos sitä käytetään.

alpha_palette, jos ei None, voi olla kokonaisuudessaan 256 pikselin GRAYSCALE-kuva, jota käytetään alfapalettina, joka moduloi piirrettävän lähdekuvan alpha-arvoa pikselitasolla, jolloin voit ohjata pikselien alfa-arvoa tarkasti niiden harmaasävyarvon perusteella. Pikseliarvo 255 alfahakutaulussa on läpinäkymätön, kun taas mikä tahansa alle 255 oleva muuttuu läpinäkyvämmäksi aina 0:aan asti. Tämä sovelletaan rgb_channel-poiminnan jälkeen, jos sitä käytetään.

hint on kohdassa Vihjeliput lueteltujen lippujen looginen TAI (pois lukien image.BLACK_BACKGROUND, jota ei tueta tässä).

transform on 3x3 ndarray, jota käytetään perspektiivimuunnoksen suorittamiseen kuvalle. Tuetaan tällä hetkellä vain OpenMV Cam N6 -kamerassa, koska siinä on GPU, joka voi tehdä tämän laitteistossa.

copy luo True-arvolla syväkopion keosta muunnetusta kuvasta sen sijaan, että muuntaisi alkuperäisen kuvan paikallaan.

copy_to_fb lataa True-arvolla kuvan suoraan kehyspuskuriin. copy_to_fb on etusijalla copy-argumenttiin nähden. Tällä ei ole erityisvaikutusta, jos kuva on jo kehyspuskurissa.

Palauttaa kuvaobjektin, jotta voit kutsua toista metodia .-notaatiolla.

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

Muuntaa kuvan RGB565-vaaleiden tapahtumien kuvaksi (16 bittiä per pikseli).

x_scale ohjaa, kuinka paljon näytettävää kuvaa skaalataan x-suunnassa (float). Jos tämä arvo on negatiivinen, kuva käännetään vaakasuunnassa. Huomaa, että jos y_scale ei ole määritetty, se vastaa x_scale-arvoa kuvasuhteen säilyttämiseksi.

y_scale ohjaa, kuinka paljon näytettävää kuvaa skaalataan y-suunnassa (float). Jos tämä arvo on negatiivinen, kuva käännetään pystysuunnassa. Huomaa, että jos x_scale ei ole määritetty, se vastaa x_scale-arvoa kuvasuhteen säilyttämiseksi.

roi on lähdekuvan kohdealueen suorakulmiokolmikko (x, y, w, h), joka piirretään. Tämä antaa sinun poimia vain ROI:n pikselit skaalattavaksi ja piirrettäväksi kohdekuvaan.

rgb_channel on RGB-kanava (0=R, G=1, B=2), joka poimitaan RGB565-kuvasta (jos annettu) ja renderöidään kohdekuvaan. Esimerkiksi jos annat rgb_channel=1, tämä poimii lähde-RGB565-kuvan vihreän kanavan ja piirtää sen harmaasävynä kohdekuvaan.

alpha ohjaa, kuinka paljon lähdekuvasta sekoitetaan kohdekuvaan. Arvo 255 piirtää läpinäkymättömän lähdekuvan, kun taas alle 255 oleva arvo tuottaa sekoituksen lähde- ja kohdekuvan välillä. 0 ei muokkaa kohdekuvaa lainkaan.

color_palette, jos ei None, voi olla väripaletin enum-arvo tai kokonaisuudessaan 256 pikselin RGB565-kuva, jota käytetään värihakutauluna minkä tahansa lähdekuvan harmaasävyarvolle. Tämä sovelletaan rgb_channel-poiminnan jälkeen, jos sitä käytetään.

alpha_palette, jos ei None, voi olla kokonaisuudessaan 256 pikselin GRAYSCALE-kuva, jota käytetään alfapalettina, joka moduloi piirrettävän lähdekuvan alpha-arvoa pikselitasolla, jolloin voit ohjata pikselien alfa-arvoa tarkasti niiden harmaasävyarvon perusteella. Pikseliarvo 255 alfahakutaulussa on läpinäkymätön, kun taas mikä tahansa alle 255 oleva muuttuu läpinäkyvämmäksi aina 0:aan asti. Tämä sovelletaan rgb_channel-poiminnan jälkeen, jos sitä käytetään.

hint on kohdassa Vihjeliput lueteltujen lippujen looginen TAI (pois lukien image.BLACK_BACKGROUND, jota ei tueta tässä).

transform on 3x3 ndarray, jota käytetään perspektiivimuunnoksen suorittamiseen kuvalle. Tuetaan tällä hetkellä vain OpenMV Cam N6 -kamerassa, koska siinä on GPU, joka voi tehdä tämän laitteistossa.

copy luo True-arvolla syväkopion keosta muunnetusta kuvasta sen sijaan, että muuntaisi alkuperäisen kuvan paikallaan.

copy_to_fb lataa True-arvolla kuvan suoraan kehyspuskuriin. copy_to_fb on etusijalla copy-argumenttiin nähden. Tällä ei ole erityisvaikutusta, jos kuva on jo kehyspuskurissa.

Palauttaa kuvaobjektin, jotta voit kutsua toista metodia .-notaatiolla.

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

Muuntaa kuvan JPEG-kuvaksi.

x_scale ohjaa, kuinka paljon näytettävää kuvaa skaalataan x-suunnassa (float). Jos tämä arvo on negatiivinen, kuva käännetään vaakasuunnassa. Huomaa, että jos y_scale ei ole määritetty, se vastaa x_scale-arvoa kuvasuhteen säilyttämiseksi.

y_scale ohjaa, kuinka paljon näytettävää kuvaa skaalataan y-suunnassa (float). Jos tämä arvo on negatiivinen, kuva käännetään pystysuunnassa. Huomaa, että jos x_scale ei ole määritetty, se vastaa x_scale-arvoa kuvasuhteen säilyttämiseksi.

roi on lähdekuvan kohdealueen suorakulmiokolmikko (x, y, w, h), joka piirretään. Tämä antaa sinun poimia vain ROI:n pikselit skaalattavaksi ja piirrettäväksi kohdekuvaan.

rgb_channel on RGB-kanava (0=R, G=1, B=2), joka poimitaan RGB565-kuvasta (jos annettu) ja renderöidään kohdekuvaan. Esimerkiksi jos annat rgb_channel=1, tämä poimii lähde-RGB565-kuvan vihreän kanavan ja piirtää sen harmaasävynä kohdekuvaan.

alpha ohjaa, kuinka paljon lähdekuvasta sekoitetaan kohdekuvaan. Arvo 255 piirtää läpinäkymättömän lähdekuvan, kun taas alle 255 oleva arvo tuottaa sekoituksen lähde- ja kohdekuvan välillä. 0 ei muokkaa kohdekuvaa lainkaan.

color_palette, jos ei None, voi olla väripaletin enum-arvo tai kokonaisuudessaan 256 pikselin RGB565-kuva, jota käytetään värihakutauluna minkä tahansa lähdekuvan harmaasävyarvolle. Tämä sovelletaan rgb_channel-poiminnan jälkeen, jos sitä käytetään.

alpha_palette, jos ei None, voi olla kokonaisuudessaan 256 pikselin GRAYSCALE-kuva, jota käytetään alfapalettina, joka moduloi piirrettävän lähdekuvan alpha-arvoa pikselitasolla, jolloin voit ohjata pikselien alfa-arvoa tarkasti niiden harmaasävyarvon perusteella. Pikseliarvo 255 alfahakutaulussa on läpinäkymätön, kun taas mikä tahansa alle 255 oleva muuttuu läpinäkyvämmäksi aina 0:aan asti. Tämä sovelletaan rgb_channel-poiminnan jälkeen, jos sitä käytetään.

hint on kohdassa Vihjeliput lueteltujen lippujen looginen TAI (pois lukien image.BLACK_BACKGROUND, jota ei tueta tässä).

transform on 3x3 ndarray, jota käytetään perspektiivimuunnoksen suorittamiseen kuvalle. Tuetaan tällä hetkellä vain OpenMV Cam N6 -kamerassa, koska siinä on GPU, joka voi tehdä tämän laitteistossa.

copy luo True-arvolla syväkopion keosta muunnetusta kuvasta sen sijaan, että muuntaisi alkuperäisen kuvan paikallaan.

copy_to_fb lataa True-arvolla kuvan suoraan kehyspuskuriin. copy_to_fb on etusijalla copy-argumenttiin nähden. Tällä ei ole erityisvaikutusta, jos kuva on jo kehyspuskurissa.

quality ohjaa JPEG-kuvan pakkauslaatua. Arvo voi olla välillä 0 ja 100.

subsampling voi olla:

Palauttaa kuvaobjektin, jotta voit kutsua toista metodia .-notaatiolla.

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

Muuntaa kuvan PNG-kuvaksi.

x_scale ohjaa, kuinka paljon näytettävää kuvaa skaalataan x-suunnassa (float). Jos tämä arvo on negatiivinen, kuva käännetään vaakasuunnassa. Huomaa, että jos y_scale ei ole määritetty, se vastaa x_scale-arvoa kuvasuhteen säilyttämiseksi.

y_scale ohjaa, kuinka paljon näytettävää kuvaa skaalataan y-suunnassa (float). Jos tämä arvo on negatiivinen, kuva käännetään pystysuunnassa. Huomaa, että jos x_scale ei ole määritetty, se vastaa x_scale-arvoa kuvasuhteen säilyttämiseksi.

roi on lähdekuvan kohdealueen suorakulmiokolmikko (x, y, w, h), joka piirretään. Tämä antaa sinun poimia vain ROI:n pikselit skaalattavaksi ja piirrettäväksi kohdekuvaan.

rgb_channel on RGB-kanava (0=R, G=1, B=2), joka poimitaan RGB565-kuvasta (jos annettu) ja renderöidään kohdekuvaan. Esimerkiksi jos annat rgb_channel=1, tämä poimii lähde-RGB565-kuvan vihreän kanavan ja piirtää sen harmaasävynä kohdekuvaan.

alpha ohjaa, kuinka paljon lähdekuvasta sekoitetaan kohdekuvaan. Arvo 255 piirtää läpinäkymättömän lähdekuvan, kun taas alle 255 oleva arvo tuottaa sekoituksen lähde- ja kohdekuvan välillä. 0 ei muokkaa kohdekuvaa lainkaan.

color_palette, jos ei None, voi olla väripaletin enum-arvo tai kokonaisuudessaan 256 pikselin RGB565-kuva, jota käytetään värihakutauluna minkä tahansa lähdekuvan harmaasävyarvolle. Tämä sovelletaan rgb_channel-poiminnan jälkeen, jos sitä käytetään.

alpha_palette, jos ei None, voi olla kokonaisuudessaan 256 pikselin GRAYSCALE-kuva, jota käytetään alfapalettina, joka moduloi piirrettävän lähdekuvan alpha-arvoa pikselitasolla, jolloin voit ohjata pikselien alfa-arvoa tarkasti niiden harmaasävyarvon perusteella. Pikseliarvo 255 alfahakutaulussa on läpinäkymätön, kun taas mikä tahansa alle 255 oleva muuttuu läpinäkyvämmäksi aina 0:aan asti. Tämä sovelletaan rgb_channel-poiminnan jälkeen, jos sitä käytetään.

hint on kohdassa Vihjeliput lueteltujen lippujen looginen TAI (pois lukien image.BLACK_BACKGROUND, jota ei tueta tässä).

transform on 3x3 ndarray, jota käytetään perspektiivimuunnoksen suorittamiseen kuvalle. Tuetaan tällä hetkellä vain OpenMV Cam N6 -kamerassa, koska siinä on GPU, joka voi tehdä tämän laitteistossa.

copy luo True-arvolla syväkopion keosta muunnetusta kuvasta sen sijaan, että muuntaisi alkuperäisen kuvan paikallaan.

copy_to_fb lataa True-arvolla kuvan suoraan kehyspuskuriin. copy_to_fb on etusijalla copy-argumenttiin nähden. Tällä ei ole erityisvaikutusta, jos kuva on jo kehyspuskurissa.

Palauttaa kuvaobjektin, jotta voit kutsua toista metodia .-notaatiolla.

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

Muuntaa kuvan JPEG-kuvaksi.

x_scale ohjaa, kuinka paljon näytettävää kuvaa skaalataan x-suunnassa (float). Jos tämä arvo on negatiivinen, kuva käännetään vaakasuunnassa. Huomaa, että jos y_scale ei ole määritetty, se vastaa x_scale-arvoa kuvasuhteen säilyttämiseksi.

y_scale ohjaa, kuinka paljon näytettävää kuvaa skaalataan y-suunnassa (float). Jos tämä arvo on negatiivinen, kuva käännetään pystysuunnassa. Huomaa, että jos x_scale ei ole määritetty, se vastaa x_scale-arvoa kuvasuhteen säilyttämiseksi.

roi on lähdekuvan kohdealueen suorakulmiokolmikko (x, y, w, h), joka piirretään. Tämä antaa sinun poimia vain ROI:n pikselit skaalattavaksi ja piirrettäväksi kohdekuvaan.

rgb_channel on RGB-kanava (0=R, G=1, B=2), joka poimitaan RGB565-kuvasta (jos annettu) ja renderöidään kohdekuvaan. Esimerkiksi jos annat rgb_channel=1, tämä poimii lähde-RGB565-kuvan vihreän kanavan ja piirtää sen harmaasävynä kohdekuvaan.

alpha ohjaa, kuinka paljon lähdekuvasta sekoitetaan kohdekuvaan. Arvo 255 piirtää läpinäkymättömän lähdekuvan, kun taas alle 255 oleva arvo tuottaa sekoituksen lähde- ja kohdekuvan välillä. 0 ei muokkaa kohdekuvaa lainkaan.

color_palette, jos ei None, voi olla väripaletin enum-arvo tai kokonaisuudessaan 256 pikselin RGB565-kuva, jota käytetään värihakutauluna minkä tahansa lähdekuvan harmaasävyarvolle. Tämä sovelletaan rgb_channel-poiminnan jälkeen, jos sitä käytetään.

alpha_palette, jos ei None, voi olla kokonaisuudessaan 256 pikselin GRAYSCALE-kuva, jota käytetään alfapalettina, joka moduloi piirrettävän lähdekuvan alpha-arvoa pikselitasolla, jolloin voit ohjata pikselien alfa-arvoa tarkasti niiden harmaasävyarvon perusteella. Pikseliarvo 255 alfahakutaulussa on läpinäkymätön, kun taas mikä tahansa alle 255 oleva muuttuu läpinäkyvämmäksi aina 0:aan asti. Tämä sovelletaan rgb_channel-poiminnan jälkeen, jos sitä käytetään.

hint on kohdassa Vihjeliput lueteltujen lippujen looginen TAI (pois lukien image.BLACK_BACKGROUND, jota ei tueta tässä).

transform on 3x3 ndarray, jota käytetään perspektiivimuunnoksen suorittamiseen kuvalle. Tuetaan tällä hetkellä vain OpenMV Cam N6 -kamerassa, koska siinä on GPU, joka voi tehdä tämän laitteistossa.

copy luo True-arvolla syväkopion keosta muunnetusta kuvasta sen sijaan, että muuntaisi alkuperäisen kuvan paikallaan.

copy_to_fb lataa True-arvolla kuvan suoraan kehyspuskuriin. copy_to_fb on etusijalla copy-argumenttiin nähden. Tällä ei ole erityisvaikutusta, jos kuva on jo kehyspuskurissa.

quality ohjaa JPEG-kuvan pakkauslaatua. Arvo voi olla välillä 0 ja 100.

subsampling voi olla:

Palauttaa kuvaobjektin, jotta voit kutsua toista metodia .-notaatiolla.

Muista

Image.compress on Image.to_jpeg-metodin alias.

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

Luo syväkopion kuvaobjektista.

x_scale ohjaa, kuinka paljon näytettävää kuvaa skaalataan x-suunnassa (float). Jos tämä arvo on negatiivinen, kuva käännetään vaakasuunnassa. Huomaa, että jos y_scale ei ole määritetty, se vastaa x_scale-arvoa kuvasuhteen säilyttämiseksi.

y_scale ohjaa, kuinka paljon näytettävää kuvaa skaalataan y-suunnassa (float). Jos tämä arvo on negatiivinen, kuva käännetään pystysuunnassa. Huomaa, että jos x_scale ei ole määritetty, se vastaa x_scale-arvoa kuvasuhteen säilyttämiseksi.

roi on lähdekuvan kohdealueen suorakulmiokolmikko (x, y, w, h), joka piirretään. Tämä antaa sinun poimia vain ROI:n pikselit skaalattavaksi ja piirrettäväksi kohdekuvaan.

rgb_channel on RGB-kanava (0=R, G=1, B=2), joka poimitaan RGB565-kuvasta (jos annettu) ja renderöidään kohdekuvaan. Esimerkiksi jos annat rgb_channel=1, tämä poimii lähde-RGB565-kuvan vihreän kanavan ja piirtää sen harmaasävynä kohdekuvaan.

alpha ohjaa, kuinka paljon lähdekuvasta sekoitetaan kohdekuvaan. Arvo 255 piirtää läpinäkymättömän lähdekuvan, kun taas alle 255 oleva arvo tuottaa sekoituksen lähde- ja kohdekuvan välillä. 0 ei muokkaa kohdekuvaa lainkaan.

color_palette, jos ei None, voi olla väripaletin enum-arvo tai kokonaisuudessaan 256 pikselin RGB565-kuva, jota käytetään värihakutauluna minkä tahansa lähdekuvan harmaasävyarvolle. Tämä sovelletaan rgb_channel-poiminnan jälkeen, jos sitä käytetään.

alpha_palette, jos ei None, voi olla kokonaisuudessaan 256 pikselin GRAYSCALE-kuva, jota käytetään alfapalettina, joka moduloi piirrettävän lähdekuvan alpha-arvoa pikselitasolla, jolloin voit ohjata pikselien alfa-arvoa tarkasti niiden harmaasävyarvon perusteella. Pikseliarvo 255 alfahakutaulussa on läpinäkymätön, kun taas mikä tahansa alle 255 oleva muuttuu läpinäkyvämmäksi aina 0:aan asti. Tämä sovelletaan rgb_channel-poiminnan jälkeen, jos sitä käytetään.

hint on kohdassa Vihjeliput lueteltujen lippujen looginen TAI (pois lukien image.BLACK_BACKGROUND, jota ei tueta tässä).

transform on 3x3 ndarray, jota käytetään perspektiivimuunnoksen suorittamiseen kuvalle. Tuetaan tällä hetkellä vain OpenMV Cam N6 -kamerassa, koska siinä on GPU, joka voi tehdä tämän laitteistossa.

copy_to_fb lataa True-arvolla kuvan suoraan kehyspuskuriin. Tällä ei ole erityisvaikutusta, jos kuva on jo kehyspuskurissa.

Palauttaa kuvaobjektin, jotta voit kutsua toista metodia .-notaatiolla.

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

Muokkaa kuvaa paikallaan muuttamatta taustalla olevaa kuvatyyppiä.

x_scale ohjaa, kuinka paljon näytettävää kuvaa skaalataan x-suunnassa (float). Jos tämä arvo on negatiivinen, kuva käännetään vaakasuunnassa. Huomaa, että jos y_scale ei ole määritetty, se vastaa x_scale-arvoa kuvasuhteen säilyttämiseksi.

y_scale ohjaa, kuinka paljon näytettävää kuvaa skaalataan y-suunnassa (float). Jos tämä arvo on negatiivinen, kuva käännetään pystysuunnassa. Huomaa, että jos x_scale ei ole määritetty, se vastaa x_scale-arvoa kuvasuhteen säilyttämiseksi.

roi on lähdekuvan kohdealueen suorakulmiokolmikko (x, y, w, h), joka piirretään. Tämä antaa sinun poimia vain ROI:n pikselit skaalattavaksi ja piirrettäväksi kohdekuvaan.

rgb_channel on RGB-kanava (0=R, G=1, B=2), joka poimitaan RGB565-kuvasta (jos annettu) ja renderöidään kohdekuvaan. Esimerkiksi jos annat rgb_channel=1, tämä poimii lähde-RGB565-kuvan vihreän kanavan ja piirtää sen harmaasävynä kohdekuvaan.

alpha ohjaa, kuinka paljon lähdekuvasta sekoitetaan kohdekuvaan. Arvo 255 piirtää läpinäkymättömän lähdekuvan, kun taas alle 255 oleva arvo tuottaa sekoituksen lähde- ja kohdekuvan välillä. 0 ei muokkaa kohdekuvaa lainkaan.

color_palette, jos ei None, voi olla väripaletin enum-arvo tai kokonaisuudessaan 256 pikselin RGB565-kuva, jota käytetään värihakutauluna minkä tahansa lähdekuvan harmaasävyarvolle. Tämä sovelletaan rgb_channel-poiminnan jälkeen, jos sitä käytetään.

alpha_palette, jos ei None, voi olla kokonaisuudessaan 256 pikselin GRAYSCALE-kuva, jota käytetään alfapalettina, joka moduloi piirrettävän lähdekuvan alpha-arvoa pikselitasolla, jolloin voit ohjata pikselien alfa-arvoa tarkasti niiden harmaasävyarvon perusteella. Pikseliarvo 255 alfahakutaulussa on läpinäkymätön, kun taas mikä tahansa alle 255 oleva muuttuu läpinäkyvämmäksi aina 0:aan asti. Tämä sovelletaan rgb_channel-poiminnan jälkeen, jos sitä käytetään.

hint on kohdassa Vihjeliput lueteltujen lippujen looginen TAI (pois lukien image.BLACK_BACKGROUND, jota ei tueta tässä).

transform on 3x3 ndarray, jota käytetään perspektiivimuunnoksen suorittamiseen kuvalle. Tuetaan tällä hetkellä vain OpenMV Cam N6 -kamerassa, koska siinä on GPU, joka voi tehdä tämän laitteistossa.

copy luo True-arvolla syväkopion keosta muunnetusta kuvasta sen sijaan, että muuntaisi alkuperäisen kuvan paikallaan.

copy_to_fb lataa True-arvolla kuvan suoraan kehyspuskuriin. copy_to_fb on etusijalla copy-argumenttiin nähden. Tällä ei ole erityisvaikutusta, jos kuva on jo kehyspuskurissa.

Palauttaa kuvaobjektin, jotta voit kutsua toista metodia .-notaatiolla.

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

Muokkaa kuvaa paikallaan muuttamatta taustalla olevaa kuvatyyppiä.

x_scale ohjaa, kuinka paljon näytettävää kuvaa skaalataan x-suunnassa (float). Jos tämä arvo on negatiivinen, kuva käännetään vaakasuunnassa. Huomaa, että jos y_scale ei ole määritetty, se vastaa x_scale-arvoa kuvasuhteen säilyttämiseksi.

y_scale ohjaa, kuinka paljon näytettävää kuvaa skaalataan y-suunnassa (float). Jos tämä arvo on negatiivinen, kuva käännetään pystysuunnassa. Huomaa, että jos x_scale ei ole määritetty, se vastaa x_scale-arvoa kuvasuhteen säilyttämiseksi.

roi on lähdekuvan kohdealueen suorakulmiokolmikko (x, y, w, h), joka piirretään. Tämä antaa sinun poimia vain ROI:n pikselit skaalattavaksi ja piirrettäväksi kohdekuvaan.

rgb_channel on RGB-kanava (0=R, G=1, B=2), joka poimitaan RGB565-kuvasta (jos annettu) ja renderöidään kohdekuvaan. Esimerkiksi jos annat rgb_channel=1, tämä poimii lähde-RGB565-kuvan vihreän kanavan ja piirtää sen harmaasävynä kohdekuvaan.

alpha ohjaa, kuinka paljon lähdekuvasta sekoitetaan kohdekuvaan. Arvo 255 piirtää läpinäkymättömän lähdekuvan, kun taas alle 255 oleva arvo tuottaa sekoituksen lähde- ja kohdekuvan välillä. 0 ei muokkaa kohdekuvaa lainkaan.

color_palette, jos ei None, voi olla väripaletin enum-arvo tai kokonaisuudessaan 256 pikselin RGB565-kuva, jota käytetään värihakutauluna minkä tahansa lähdekuvan harmaasävyarvolle. Tämä sovelletaan rgb_channel-poiminnan jälkeen, jos sitä käytetään.

alpha_palette, jos ei None, voi olla kokonaisuudessaan 256 pikselin GRAYSCALE-kuva, jota käytetään alfapalettina, joka moduloi piirrettävän lähdekuvan alpha-arvoa pikselitasolla, jolloin voit ohjata pikselien alfa-arvoa tarkasti niiden harmaasävyarvon perusteella. Pikseliarvo 255 alfahakutaulussa on läpinäkymätön, kun taas mikä tahansa alle 255 oleva muuttuu läpinäkyvämmäksi aina 0:aan asti. Tämä sovelletaan rgb_channel-poiminnan jälkeen, jos sitä käytetään.

hint on kohdassa Vihjeliput lueteltujen lippujen looginen TAI (pois lukien image.BLACK_BACKGROUND, jota ei tueta tässä).

transform on 3x3 ndarray, jota käytetään perspektiivimuunnoksen suorittamiseen kuvalle. Tuetaan tällä hetkellä vain OpenMV Cam N6 -kamerassa, koska siinä on GPU, joka voi tehdä tämän laitteistossa.

copy luo True-arvolla syväkopion keosta muunnetusta kuvasta sen sijaan, että muuntaisi alkuperäisen kuvan paikallaan.

copy_to_fb lataa True-arvolla kuvan suoraan kehyspuskuriin. copy_to_fb on etusijalla copy-argumenttiin nähden. Tällä ei ole erityisvaikutusta, jos kuva on jo kehyspuskurissa.

Palauttaa kuvaobjektin, jotta voit kutsua toista metodia .-notaatiolla.

Muista

Image.scale on Image.crop-metodin alias.

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

Tallentaa kopion kuvasta tiedostojärjestelmään polkuun path.

Tukee bmp/pgm/ppm/jpg/jpeg-kuvatiedostoja. Huomaa, ettet voi tallentaa JPEG-pakattuja kuvia pakkaamattomaan formaattiin.

roi on kohdealueen suorakulmio (x, y, w, h), josta tallennetaan. Jos ei määritetty, se vastaa kuvasuorakulmiota, joka kopioi koko kuvan. Tämä argumentti ei koske JPEG-kuvia.

quality on JPEG-pakkauslaatu, jota käytetään kuvan tallentamiseen JPEG-muotoon, jos kuva ei ole jo pakattu (0-100) (int).

Palauttaa kuvaobjektin, jotta voit kutsua toista metodia .-notaatiolla.

flush() None

Päivittää IDE:n kehyspuskurin kameran kehyspuskurissa olevalla kuvalla.

Piirtometodit

clear(mask: Image | None = None) Image

Asettaa kaikki kuvan pikselit nollaksi (erittäin nopea).

mask on toinen kuva, jota käytetään operaation pikselitason maskina. Maskin tulisi olla kuva, jossa on vain mustia tai valkoisia pikseleitä, ja sen tulisi olla samankokoinen kuin käsiteltävä kuva. Vain maskissa asetetut pikselit muokataan.

Palauttaa kuvaobjektin, jotta voit kutsua toista metodia .-notaatiolla.

Ei tueta pakatuilla kuvilla.

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

Piirtää viivan pisteestä (x0, y0) pisteeseen (x1, y1) kuvaan. Voit antaa x0, y0, x1, y1 joko erikseen tai kolmikkona (x0, y0, x1, y1).

color on RGB888-kolmikko harmaasävy- tai RGB565-kuville. Oletusarvoisesti valkoinen. Voit kuitenkin antaa myös taustalla olevan pikseliarvon (0-255) harmaasävykuville tai RGB565-arvon RGB565-kuville.

thickness ohjaa, kuinka paksu viiva on pikseleinä.

Palauttaa kuvaobjektin, jotta voit kutsua toista metodia .-notaatiolla.

Ei tueta pakatuilla kuvilla tai Bayer-kuvilla.

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

Piirtää suorakulmion kuvaan. Voit antaa x, y, w, h joko erikseen tai kolmikkona (x, y, w, h).

color on RGB888-kolmikko harmaasävy- tai RGB565-kuville. Oletusarvoisesti valkoinen. Voit kuitenkin antaa myös taustalla olevan pikseliarvon (0-255) harmaasävykuville tai RGB565-arvon RGB565-kuville.

thickness ohjaa, kuinka paksuja viivat ovat pikseleinä.

Anna fill-arvoksi True täyttääksesi suorakulmion.

Palauttaa kuvaobjektin, jotta voit kutsua toista metodia .-notaatiolla.

Ei tueta pakatuilla kuvilla tai Bayer-kuvilla.

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

Piirtää ympyrän kuvaan. Voit antaa x, y, radius joko erikseen tai kolmikkona (x, y, radius).

color on RGB888-kolmikko harmaasävy- tai RGB565-kuville. Oletusarvoisesti valkoinen. Voit kuitenkin antaa myös taustalla olevan pikseliarvon (0-255) harmaasävykuville tai RGB565-arvon RGB565-kuville.

thickness ohjaa, kuinka paksuja reunat ovat pikseleinä.

Anna fill-arvoksi True täyttääksesi ympyrän.

Palauttaa kuvaobjektin, jotta voit kutsua toista metodia .-notaatiolla.

Ei tueta pakatuilla kuvilla tai Bayer-kuvilla.

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

Piirtää ellipsin kuvaan. Voit antaa cx, cy, rx, ry ja kierron (asteina) joko erikseen tai kolmikkona (cx, yc, rx, ry, rotation).

color on RGB888-kolmikko harmaasävy- tai RGB565-kuville. Oletusarvoisesti valkoinen. Voit kuitenkin antaa myös taustalla olevan pikseliarvon (0-255) harmaasävykuville tai RGB565-arvon RGB565-kuville.

thickness ohjaa, kuinka paksuja reunat ovat pikseleinä.

Anna fill-arvoksi True täyttääksesi ellipsin.

Palauttaa kuvaobjektin, jotta voit kutsua toista metodia .-notaatiolla.

Ei tueta pakatuilla kuvilla tai Bayer-kuvilla.

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

Piirtää 8x10-tekstiä alkaen sijainnista (x, y) kuvassa. Voit antaa x, y joko erikseen tai kolmikkona (x, y).

text on merkkijono, joka kirjoitetaan kuvaan. \n-, \r- ja \r\n-rivinvaihdot siirtävät kursorin seuraavalle riville.

color on RGB888-kolmikko harmaasävy- tai RGB565-kuville. Oletusarvoisesti valkoinen. Voit kuitenkin antaa myös taustalla olevan pikseliarvon (0-255) harmaasävykuville tai RGB565-arvon RGB565-kuville.

scale-arvoa voidaan kasvattaa kuvan tekstin koon kasvattamiseksi/pienentämiseksi. Voit antaa nollaa suurempia kokonaisluku- tai liukulukuarvoja.

x_spacing antaa sinun lisätä (jos positiivinen) tai vähentää (jos negatiivinen) x-pikseleitä merkkien välissä.

y_spacing antaa sinun lisätä (jos positiivinen) tai vähentää (jos negatiivinen) y-pikseleitä merkkien välissä (monirivisessä tekstissä).

mono_space on oletusarvoisesti True, mikä pakottaa tekstin kiinteävälitykseksi. Suurille tekstikertoimille tämä näyttää kamalalta. Aseta False saadaksesi muuttuvaleveyksisen merkkivälityksen, joka näyttää PALJON paremmalta.

char_rotation voi olla 0, 90, 180, 270 kiertämään jokaista merkkijonon merkkiä tämän verran.

char_hmirror peilaa True-arvolla kaikki merkkijonon merkit vaakasuunnassa.

char_vflip kääntää True-arvolla kaikki merkkijonon merkit pystysuunnassa.

string_rotation voi olla 0, 90, 180, 270 kiertämään merkkijonoa tämän verran.

string_hmirror peilaa True-arvolla merkkijonon vaakasuunnassa.

string_vflip kääntää True-arvolla merkkijonon pystysuunnassa.

Palauttaa kuvaobjektin, jotta voit kutsua toista metodia .-notaatiolla.

Ei tueta pakatuilla kuvilla tai Bayer-kuvilla.

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

Piirtää ristin sijaintiin x, y. Voit antaa x, y joko erikseen tai kolmikkona (x, y).

color on RGB888-kolmikko harmaasävy- tai RGB565-kuville. Oletusarvoisesti valkoinen. Voit kuitenkin antaa myös taustalla olevan pikseliarvon (0-255) harmaasävykuville tai RGB565-arvon RGB565-kuville.

size ohjaa, kuinka pitkälle ristin viivat ulottuvat.

thickness ohjaa, kuinka paksuja reunat ovat pikseleinä.

Palauttaa kuvaobjektin, jotta voit kutsua toista metodia .-notaatiolla.

Ei tueta pakatuilla kuvilla tai Bayer-kuvilla.

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

Piirtää nuolen pisteestä (x0, y0) pisteeseen (x1, y1) kuvaan. Voit antaa x0, y0, x1, y1 joko erikseen tai kolmikkona (x0, y0, x1, y1).

color on RGB888-kolmikko harmaasävy- tai RGB565-kuville. Oletusarvoisesti valkoinen. Voit kuitenkin antaa myös taustalla olevan pikseliarvon (0-255) harmaasävykuville tai RGB565-arvon RGB565-kuville.

thickness ohjaa, kuinka paksu viiva on pikseleinä.

Palauttaa kuvaobjektin, jotta voit kutsua toista metodia .-notaatiolla.

Ei tueta pakatuilla kuvilla tai Bayer-kuvilla.

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

Piirtää tunnistustuloksen kuvaan. detection on 6-osainen kolmikko (rx, ry, rw, rh, cx, cy), joka kuvaa rajaavaa suorakulmiota ja keskipistettä (tyypillisesti NN- tai väriseurantakoodin palauttama).

color1 on suorakulmion väri ja color2 on keskipisteristin väri. size on keskipisteristin koko, thickness ohjaa ääriviivan leveyttä ja fill täyttää suorakulmion.

label, jos annettu, piirretään suorakulmion lähelle siirrettynä label_offset-arvolla (x, y).

Palauttaa kuvaobjektin, jotta voit kutsua toista metodia .-notaatiolla.

Ei tueta pakatuilla kuvilla tai Bayer-kuvilla.

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

Piirtää viivareunat metodien, kuten blob.corners, palauttaman kulmalistan väliin. Kulmat on neliarvoinen kolmikko kaksiarvoisia x/y-kolmikoita. Esim. [(x1,y1),(x2,y2),(x3,y3),(x4,y4)].

color on RGB888-kolmikko harmaasävy- tai RGB565-kuville. Oletusarvoisesti valkoinen. Voit kuitenkin antaa myös taustalla olevan pikseliarvon (0-255) harmaasävykuville tai RGB565-arvon RGB565-kuville.

size, jos suurempi kuin 0, saa kulmat piirtymään säteeltään size-kokoisina ympyröinä.

thickness ohjaa, kuinka paksu viiva on pikseleinä.

Anna fill-arvoksi True täyttääksesi kulmaympyrät, jos ne piirretään.

Palauttaa kuvaobjektin, jotta voit kutsua toista metodia .-notaatiolla.

Ei tueta pakatuilla kuvilla tai Bayer-kuvilla.

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

Piirtää image-kuvan, jonka vasen yläkulma alkaa sijainnista x, y. Voit antaa x, y joko erikseen tai kolmikkona (x, y). Tämä metodi käsittelee automaattisesti annetun kuvan renderöinnin oikeaan pikseliformaattiin kohdekuvaa varten samalla kun se käsittelee rajauksen saumattomasti.

Voit myös antaa polun kuvaobjektin sijaan, jolloin tämä metodi lataa kuvan automaattisesti levyltä ja käyttää sitä yhdessä vaiheessa. Esim. draw_image("test.jpg").

x_scale ohjaa, kuinka paljon näytettävää kuvaa skaalataan x-suunnassa (float). Jos tämä arvo on negatiivinen, kuva käännetään vaakasuunnassa. Huomaa, että jos y_scale ei ole määritetty, se vastaa x_scale-arvoa kuvasuhteen säilyttämiseksi.

y_scale ohjaa, kuinka paljon näytettävää kuvaa skaalataan y-suunnassa (float). Jos tämä arvo on negatiivinen, kuva käännetään pystysuunnassa. Huomaa, että jos x_scale ei ole määritetty, se vastaa x_scale-arvoa kuvasuhteen säilyttämiseksi.

roi on lähdekuvan kohdealueen suorakulmiokolmikko (x, y, w, h), joka piirretään. Tämä antaa sinun poimia vain ROI:n pikselit skaalattavaksi ja piirrettäväksi kohdekuvaan.

rgb_channel on RGB-kanava (0=R, G=1, B=2), joka poimitaan RGB565-kuvasta (jos annettu) ja renderöidään kohdekuvaan. Esimerkiksi jos annat rgb_channel=1, tämä poimii lähde-RGB565-kuvan vihreän kanavan ja piirtää sen harmaasävynä kohdekuvaan.

alpha ohjaa, kuinka paljon lähdekuvasta sekoitetaan kohdekuvaan. Arvo 255 piirtää läpinäkymättömän lähdekuvan, kun taas alle 255 oleva arvo tuottaa sekoituksen lähde- ja kohdekuvan välillä. 0 ei muokkaa kohdekuvaa lainkaan.

color_palette, jos ei None, voi olla väripaletin enum-arvo tai kokonaisuudessaan 256 pikselin RGB565-kuva, jota käytetään värihakutauluna minkä tahansa lähdekuvan harmaasävyarvolle. Tämä sovelletaan rgb_channel-poiminnan jälkeen, jos sitä käytetään.

alpha_palette, jos ei None, voi olla kokonaisuudessaan 256 pikselin GRAYSCALE-kuva, jota käytetään alfapalettina, joka moduloi piirrettävän lähdekuvan alpha-arvoa pikselitasolla, jolloin voit ohjata pikselien alfa-arvoa tarkasti niiden harmaasävyarvon perusteella. Pikseliarvo 255 alfahakutaulussa on läpinäkymätön, kun taas mikä tahansa alle 255 oleva muuttuu läpinäkyvämmäksi aina 0:aan asti. Tämä sovelletaan rgb_channel-poiminnan jälkeen, jos sitä käytetään.

hint on kohdassa Vihjeliput lueteltujen lippujen looginen TAI (mukaan lukien image.BLACK_BACKGROUND, jota tuetaan tässä).

transform on 3x3 ndarray, jota käytetään perspektiivimuunnoksen suorittamiseen kuvalle. Tuetaan tällä hetkellä vain OpenMV Cam N6 -kamerassa, koska siinä on GPU, joka voi tehdä tämän laitteistossa.

Palauttaa kuvaobjektin, jotta voit kutsua toista metodia .-notaatiolla.

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

Piirtää avainpisteobjektin avainpisteet kuvaan. Voit myös antaa listan kolmiarvoisia kolmikoita, jotka sisältävät (x, y, rotation_angle_in_degrees), käyttääksesi tätä metodia uudelleen avainpistemerkkien piirtämiseen, jotka ovat ympyrä, jossa on viiva osoittamassa tiettyyn suuntaan.

color on RGB888-kolmikko harmaasävy- tai RGB565-kuville. Oletusarvoisesti valkoinen. Voit kuitenkin antaa myös taustalla olevan pikseliarvon (0-255) harmaasävykuville tai RGB565-arvon RGB565-kuville.

size ohjaa, kuinka suuria avainpisteet ovat.

thickness ohjaa, kuinka paksu viiva on pikseleinä.

Anna fill-arvoksi True täyttääksesi avainpisteet.

Palauttaa kuvaobjektin, jotta voit kutsua toista metodia .-notaatiolla.

Ei tueta pakatuilla kuvilla tai Bayer-kuvilla.

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

Vuototäyttää kuvan alueen alkaen sijainnista x, y. Voit antaa x, y joko erikseen tai kolmikkona (x, y).

seed_threshold ohjaa, kuinka erilainen mikä tahansa täyttöalueen pikseli voi olla alkuperäisestä aloituspikselistä.

floating_threshold ohjaa, kuinka erilainen mikä tahansa täyttöalueen pikseli voi olla mistä tahansa naapuripikselistä.

color on RGB888-kolmikko harmaasävy- tai RGB565-kuville. Oletusarvoisesti valkoinen. Voit kuitenkin antaa myös taustalla olevan pikseliarvon (0-255) harmaasävykuville tai RGB565-arvon RGB565-kuville.

Anna invert-arvoksi True värittääksesi uudelleen kaiken vuototäytön yhdistetyn alueen ulkopuolella.

Anna clear_background-arvoksi True nollataksesi loput pikselit, joita vuototäyttö ei värittänyt uudelleen.

mask on toinen kuva, jota käytetään operaation pikselitason maskina. Maskin tulisi olla kuva, jossa on vain mustia tai valkoisia pikseleitä, ja sen tulisi olla samankokoinen kuin käsiteltävä kuva. Vain maskissa asetetut pikselit arvioidaan vuototäytön aikana.

Palauttaa kuvaobjektin, jotta voit kutsua toista metodia .-notaatiolla.

Ei tueta pakatuilla kuvilla tai Bayer-kuvilla.

Tämä metodi ei ole käytettävissä OpenMV Cam M4 -kamerassa.

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

Rasteroi tapahtuma-ndarrayn (sellaisena kuin csi.IOCTL_GENX320_READ_EVENTS sen täyttää) Image-objektiin visualisointia varten. Kuvapuskurin täytyy olla 320x320 GRAYSCALE-kuva.

Jokaiselle csi.PIX_ON_EVENT-riville tapahtuman pikseliin lisätään +contrast; jokaiselle csi.PIX_OFF_EVENT-riville pikseliin lisätään -contrast. Laukaisutapahtumat jätetään huomiotta. Pikseliarvot rajataan väliin 0-255.

clear nollaa True-arvolla kuvapuskurin brightness-arvoon ennen piirtämistä — jokaisesta kehyksestä tulee tuore vain-tapahtumarenderöinti. Aseta False kerätäksesi tapahtumia useiden kutsujen yli (hyödyllistä pitkän valotuksen liikejäljille).

brightness ohjaa keskiharmaata perustasoa, johon puskuri nollataan, kun clear on True. Oletus 128 asettaa ON-tapahtumat kirkkaaseen päähän ja OFF-tapahtumat tummaan päähän yhtä suurella liikkumavaralla.

contrast ohjaa, kuinka paljon kukin tapahtuma siirtää pikseliään — suuremmat arvot saavat tapahtumat erottumaan, mutta saturoituvat nopeasti, kun monta tapahtumaa osuu samaan pikseliin.

Maskausmetodit

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

Nollaa kuvan suorakulmaisen osan. Jos argumentteja ei anneta, tämä metodi nollaa kuvan keskiosan.

Palauttaa kuvaobjektin, jotta voit kutsua toista metodia .-notaatiolla.

Ei tueta pakatuilla kuvilla tai Bayer-kuvilla.

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

Nollaa kuvan ympyränmuotoisen osan. Jos argumentteja ei anneta, tämä metodi nollaa kuvan keskiosan.

Palauttaa kuvaobjektin, jotta voit kutsua toista metodia .-notaatiolla.

Ei tueta pakatuilla kuvilla tai Bayer-kuvilla.

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

Nollaa kuvan ellipsinmuotoisen osan. Jos argumentteja ei anneta, tämä metodi nollaa kuvan keskiosan.

Palauttaa kuvaobjektin, jotta voit kutsua toista metodia .-notaatiolla.

Ei tueta pakatuilla kuvilla tai Bayer-kuvilla.

Binäärimetodit

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

Asettaa kaikki kuvan pikselit mustaksi tai valkoiseksi sen mukaan, onko kukin pikseli jonkin thresholds-argumentin kynnyskolmikon sisällä.

thresholds on lista (lo, hi)-kolmikoita harmaasävykuville tai (l_lo, l_hi, a_lo, a_hi, b_lo, b_hi)-kolmikoita RGB565-kuville. Vaihtuneet min/max-arvot korjataan automaattisesti; puuttuvat komponentit oletusarvona maksimialueeseen.

invert kääntää kynnystäsmäytyksen.

zero nollaa True-arvolla kynnystetyt pikselit ja jättää muut koskemattomiksi.

mask on binäärikuva, jota käytetään pikselitason maskina; vain maskissa asetetut pikselit muokataan.

to_bitmap muuntaa True-arvolla kuvadatan 1-bitti-per-pikseli-bittikartaksi. Hyvin pienille kuville tämä saattaa vaatia copy=True.

copy palauttaa True-arvolla uuden kuvan keosta sen sijaan, että muokkaisi lähdekuvaa.

Palauttaa kuvaobjektin, jotta voit kutsua toista metodia .-notaatiolla.

Ei tueta pakatuilla kuvilla tai Bayer-kuvilla.

invert() Image

Kääntää kaikki kuvan pikseliarvot (jokaisesta pikselistä tulee 255 - pixel 8-bittisille kanaville).

Palauttaa kuvaobjektin, jotta voit kutsua toista metodia .-notaatiolla.

Ei tueta pakatuilla kuvilla tai Bayer-/YUV-kuvilla.

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

Tekee loogisen JA:n tämän kuvan ja toisen kuvan välillä.

image voi olla kuvaobjekti, polku pakkaamattomaan kuvatiedostoon (bmp/pgm/ppm) tai skalaariarvo (RGB888-kolmikko tai taustalla oleva pikseliarvo).

mask on binäärikuva, jota käytetään pikselitason maskina; vain maskissa asetetut pikselit muokataan.

Palauttaa kuvaobjektin, jotta voit kutsua toista metodia .-notaatiolla.

Ei tueta pakatuilla kuvilla tai Bayer-kuvilla.

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

Tekee loogisen EI-JA:n (NAND) tämän kuvan ja toisen kuvan välillä.

image voi olla kuvaobjekti, polku pakkaamattomaan kuvatiedostoon (bmp/pgm/ppm) tai skalaariarvo (RGB888-kolmikko tai taustalla oleva pikseliarvo).

mask on binäärikuva, jota käytetään pikselitason maskina; vain maskissa asetetut pikselit muokataan.

Palauttaa kuvaobjektin, jotta voit kutsua toista metodia .-notaatiolla.

Ei tueta pakatuilla kuvilla tai Bayer-kuvilla.

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

Tekee loogisen TAI:n tämän kuvan ja toisen kuvan välillä.

image voi olla kuvaobjekti, polku pakkaamattomaan kuvatiedostoon (bmp/pgm/ppm) tai skalaariarvo (RGB888-kolmikko tai taustalla oleva pikseliarvo).

mask on binäärikuva, jota käytetään pikselitason maskina; vain maskissa asetetut pikselit muokataan.

Palauttaa kuvaobjektin, jotta voit kutsua toista metodia .-notaatiolla.

Ei tueta pakatuilla kuvilla tai Bayer-kuvilla.

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

Tekee loogisen EI-TAI:n (NOR) tämän kuvan ja toisen kuvan välillä.

image voi olla kuvaobjekti, polku pakkaamattomaan kuvatiedostoon (bmp/pgm/ppm) tai skalaariarvo (RGB888-kolmikko tai taustalla oleva pikseliarvo).

mask on binäärikuva, jota käytetään pikselitason maskina; vain maskissa asetetut pikselit muokataan.

Palauttaa kuvaobjektin, jotta voit kutsua toista metodia .-notaatiolla.

Ei tueta pakatuilla kuvilla tai Bayer-kuvilla.

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

Tekee loogisen poissulkevan TAI:n (XOR) tämän kuvan ja toisen kuvan välillä.

image voi olla kuvaobjekti, polku pakkaamattomaan kuvatiedostoon (bmp/pgm/ppm) tai skalaariarvo (RGB888-kolmikko tai taustalla oleva pikseliarvo).

mask on binäärikuva, jota käytetään pikselitason maskina; vain maskissa asetetut pikselit muokataan.

Palauttaa kuvaobjektin, jotta voit kutsua toista metodia .-notaatiolla.

Ei tueta pakatuilla kuvilla tai Bayer-kuvilla.

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

Tekee loogisen poissulkevan EI-TAI:n (XNOR) tämän kuvan ja toisen kuvan välillä.

image voi olla kuvaobjekti, polku pakkaamattomaan kuvatiedostoon (bmp/pgm/ppm) tai skalaariarvo (RGB888-kolmikko tai taustalla oleva pikseliarvo).

mask on binäärikuva, jota käytetään pikselitason maskina; vain maskissa asetetut pikselit muokataan.

Palauttaa kuvaobjektin, jotta voit kutsua toista metodia .-notaatiolla.

Ei tueta pakatuilla kuvilla tai Bayer-kuvilla.

ISP-metodit

awb(max: bool = False) Image

Suorittaa automaattisen valkotasapainon kuvalle gray-world-algoritmilla. Toimii RAW Bayer- tai RGB565-kuvilla. Ei vaikutusta binääri-/harmaasävykuviin.

max käyttää True-arvolla white-patch-algoritmia sen sijaan.

Palauttaa kuvaobjektin, jotta voit kutsua toista metodia .-notaatiolla.

Ei tueta pakatuilla tai YUV-kuvilla.

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

Kertoo annetun liukulukutyyppisen värinkorjausmatriisin kuvan kanssa. Matriisit voivat olla 3x3 tai 3x4 (siirtosarakkeella), sisäkkäisenä listana tai litteänä listana:

[[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]

Palauttaa kuvaobjektin, jotta voit kutsua toista metodia .-notaatiolla.

Ei tueta pakatuilla kuvilla tai Bayer-/YUV-kuvilla.

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

Säätää kuvan gammaa, kontrastia ja kirkkautta.

gamma soveltaa pow(pixel, 1/gamma) normalisoinnin jälkeen. Yli 1.0 olevat arvot kirkastavat; alle 1.0 olevat tummentavat.

contrast soveltaa pixel * contrast normalisoinnin jälkeen.

brightness soveltaa pixel + brightness normalisoinnin jälkeen.

Palauttaa kuvaobjektin, jotta voit kutsua toista metodia .-notaatiolla.

Ei tueta pakatuilla tai Bayer-/YUV-kuvilla.

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

Image.gamma-metodin alias.

Matemaattiset metodit

negate() Image

Image.invert-metodin alias.

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

Image.draw_image()-metodin alias. Korvaa tämän kuvan image-kuvalla (tai muuntaa tämän kuvan paikallaan, jos image jätetään pois) käyttäen draw_image-metodin vakioavainsana-argumentteja. transform-argumentti on 3x3 ndarray, joka kuvaa perspektiivimuunnoksen (tuetaan vain OpenMV-kameroissa, joissa ULAB on käytössä).

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

Image.replace()-metodin alias.

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

Image.replace()-metodin alias.

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

Lisää kuvan pikseli kerrallaan tähän kuvaan.

image voi olla kuvaobjekti, polku pakkaamattomaan kuvatiedostoon (bmp/pgm/ppm) tai skalaariarvo (RGB888-kolmikko tai taustalla oleva pikseliarvo).

mask on binäärikuva, jota käytetään pikselitason maskina; vain maskissa asetetut pikselit muokataan.

Palauttaa kuvaobjektin, jotta voit kutsua toista metodia .-notaatiolla.

Ei tueta pakatuilla kuvilla tai Bayer-kuvilla.

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

Vähentää image-kuvan pikseli kerrallaan tästä kuvasta (self - image).

image voi olla joko kuvaobjekti, polku pakkaamattomaan kuvatiedostoon (bmp/pgm/ppm) tai skalaariarvo (RGB888-kolmikko tai taustalla oleva pikseliarvo).

mask on binäärikuva, jota käytetään pikselitason maskina; vain maskissa asetetut pikselit muokataan.

Tämä metodi ottaa vastaan myös Image.draw_image()-metodin koko avainsana-argumenttijoukon (x, y, x_scale, y_scale, roi, rgb_channel, alpha, color_palette, alpha_palette, hint, transform).

Ei tueta pakatuilla kuvilla tai Bayer-kuvilla.

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

Käänteinen vähennys: korvaa tämän kuvan image - self -laskulla pikseli kerrallaan. Muuten identtinen Image.sub()-metodin kanssa.

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

Palauttaa kahden kuvan minimikuvan pikseli kerrallaan.

image voi olla kuvaobjekti, polku pakkaamattomaan kuvatiedostoon (bmp/pgm/ppm) tai skalaariarvo (RGB888-kolmikko tai taustalla oleva pikseliarvo).

mask on binäärikuva, jota käytetään pikselitason maskina; vain maskissa asetetut pikselit muokataan.

Palauttaa kuvaobjektin, jotta voit kutsua toista metodia .-notaatiolla.

Ei tueta pakatuilla kuvilla tai Bayer-kuvilla.

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

Palauttaa kahden kuvan maksimikuvan pikseli kerrallaan.

image voi olla kuvaobjekti, polku pakkaamattomaan kuvatiedostoon (bmp/pgm/ppm) tai skalaariarvo (RGB888-kolmikko tai taustalla oleva pikseliarvo).

mask on binäärikuva, jota käytetään pikselitason maskina; vain maskissa asetetut pikselit muokataan.

Palauttaa kuvaobjektin, jotta voit kutsua toista metodia .-notaatiolla.

Ei tueta pakatuilla kuvilla tai Bayer-kuvilla.

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

Palauttaa kahden kuvan absoluuttisen erotuskuvan (esim. ||a-b||).

image voi olla kuvaobjekti, polku pakkaamattomaan kuvatiedostoon (bmp/pgm/ppm) tai skalaariarvo (RGB888-kolmikko tai taustalla oleva pikseliarvo).

mask on binäärikuva, jota käytetään pikselitason maskina; vain maskissa asetetut pikselit muokataan.

Palauttaa kuvaobjektin, jotta voit kutsua toista metodia .-notaatiolla.

Ei tueta pakatuilla kuvilla tai Bayer-kuvilla.

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

Image.draw_image()-metodin alias. Alfasekoittaa image-kuvan tähän kuvaan. alpha on kokonaisluku 0-256; 256:tta lähempänä olevat arvot suosivat lähdekuvaa. Ottaa vastaan kaikki Image.draw_image()-metodin avainsana-argumentit.

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

Suorittaa histogrammin tasoituksen kuvalle kontrastin ja kirkkauden normalisoimiseksi.

adaptive suorittaa True-arvolla adaptiivisen histogrammin tasoituksen (hitaampi mutta yleensä parempi).

clip_limit rajoittaa kontrastia adaptiivisessa variantissa (pieni arvo kuten 10 tuottaa hyviä CLAHE-tuloksia).

mask on binäärikuva, jota käytetään pikselitason maskina; vain maskissa asetetut pikselit muokataan.

Palauttaa kuvaobjektin, jotta voit kutsua toista metodia .-notaatiolla.

Ei tueta pakatuilla kuvilla tai Bayer-kuvilla.

Suodatusmetodit

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

Poistaa pikseleitä segmentoitujen alueiden reunoilta. Konvoloi ((size*2)+1)x((size*2)+1)-ytimen kuvan yli tyhjentäen keskipikselin, jos useampi kuin threshold naapuria on tyhjä (toimii standardina eroosiona, jos threshold on None).

mask on binäärikuva, jota käytetään pikselitason maskina; vain maskissa asetetut pikselit muokataan.

Palauttaa kuvaobjektin, jotta voit kutsua toista metodia .-notaatiolla.

Ei tueta pakatuilla kuvilla tai Bayer-/YUV-kuvilla.

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

Lisää pikseleitä segmentoitujen alueiden reunoille. Konvoloi ((size*2)+1)x((size*2)+1)-ytimen kuvan yli asettaen keskipikselin, jos useampi kuin threshold naapuria on asetettu (toimii standardina dilaationa, jos threshold on None).

mask on binäärikuva, jota käytetään pikselitason maskina; vain maskissa asetetut pikselit muokataan.

Palauttaa kuvaobjektin, jotta voit kutsua toista metodia .-notaatiolla.

Ei tueta pakatuilla kuvilla tai Bayer-/YUV-kuvilla.

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

Suorittaa eroosion ja sitten dilaation. Katso Image.erode() ja Image.dilate().

mask on binäärikuva, jota käytetään pikselitason maskina; vain maskissa asetetut pikselit muokataan.

Ei tueta pakatuilla kuvilla tai Bayer-/YUV-kuvilla.

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

Suorittaa dilaation ja sitten eroosion. Katso Image.dilate() ja Image.erode().

mask on binäärikuva, jota käytetään pikselitason maskina; vain maskissa asetetut pikselit muokataan.

Ei tueta pakatuilla kuvilla tai Bayer-/YUV-kuvilla.

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

Palauttaa kuvan ja Image.open()-käsitellyn kuvan erotuskuvan.

mask on binäärikuva, jota käytetään pikselitason maskina; vain maskissa asetetut pikselit muokataan.

Ei tueta pakatuilla kuvilla tai Bayer-/YUV-kuvilla.

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

Palauttaa kuvan ja Image.close()-käsitellyn kuvan erotuskuvan.

mask on binäärikuva, jota käytetään pikselitason maskina; vain maskissa asetetut pikselit muokataan.

Ei tueta pakatuilla kuvilla tai Bayer-/YUV-kuvilla.

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

Standardi keskiarvosumennussuodatin laatikkosuodatinta käyttäen.

size on ytimen koko. Käytä 1 (3x3-ydin), 2 (5x5-ydin) jne.

threshold kynnystää True-arvolla adaptiivisesti suodattimen ulostulon binäärikuvaksi. offset siirtää binarisointia (negatiivinen tekee enemmän pikseleistä valkoisia, positiivinen tekee vähemmän). invert kääntää binääriulostulon.

mask on binäärikuva, jota käytetään pikselitason maskina; vain maskissa asetetut pikselit muokataan.

Palauttaa kuvaobjektin, jotta voit kutsua toista metodia .-notaatiolla.

Ei tueta pakatuilla kuvilla tai Bayer-/YUV-kuvilla.

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

Suorittaa persentiilisuodattimen kuvalle (oletuksena mediaani).

size on ytimen koko. Käytä 1 (3x3-ydin), 2 (5x5-ydin) jne.

percentile on kustakin ytimestä valittava persentiili (0 = min, 0.5 = mediaani, 1.0 = max). Oletusarvoisesti 0.5.

threshold kynnystää True-arvolla adaptiivisesti suodattimen ulostulon binäärikuvaksi. offset siirtää binarisointia (negatiivinen tekee enemmän pikseleistä valkoisia, positiivinen tekee vähemmän). invert kääntää binääriulostulon.

mask on binäärikuva, jota käytetään pikselitason maskina; vain maskissa asetetut pikselit muokataan.

Palauttaa kuvaobjektin, jotta voit kutsua toista metodia .-notaatiolla.

Ei tueta pakatuilla kuvilla tai Bayer-/YUV-kuvilla.

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

Korvaa jokaisen pikselin sen naapureiden moodilla. Saattaa tuottaa artefakteja RGB-kuvan reunoissa epälineaarisen operaation vuoksi.

size on ytimen koko. Käytä 1 (3x3-ydin), 2 (5x5-ydin) jne.

threshold kynnystää True-arvolla adaptiivisesti suodattimen ulostulon binäärikuvaksi. offset siirtää binarisointia (negatiivinen tekee enemmän pikseleistä valkoisia, positiivinen tekee vähemmän). invert kääntää binääriulostulon.

mask on binäärikuva, jota käytetään pikselitason maskina; vain maskissa asetetut pikselit muokataan.

Palauttaa kuvaobjektin, jotta voit kutsua toista metodia .-notaatiolla.

Ei tueta pakatuilla kuvilla tai Bayer-/YUV-kuvilla.

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

Suorittaa keskipistesuodattimen kuvalle. Tämä suodatin etsii kunkin pikselin naapuruston keskipisteen ((max-min)/2) kuvassa.

size on ytimen koko. Käytä 1 (3x3-ydin), 2 (5x5-ydin) jne.

bias ohjaa min/max-sekoitusta. 0 vain min-suodatukseen, 1.0 vain max-suodatukseen. Käyttämällä bias-arvoa voit min/max-suodattaa kuvan.

threshold kynnystää True-arvolla adaptiivisesti suodattimen ulostulon binäärikuvaksi. offset siirtää binarisointia (negatiivinen tekee enemmän pikseleistä valkoisia, positiivinen tekee vähemmän). invert kääntää binääriulostulon.

mask on binäärikuva, jota käytetään pikselitason maskina; vain maskissa asetetut pikselit muokataan.

Palauttaa kuvaobjektin, jotta voit kutsua toista metodia .-notaatiolla.

Ei tueta pakatuilla kuvilla tai Bayer-/YUV-kuvilla.

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

Konvoloi kuvan mielivaltaisella suodatinytimellä.

size ohjaa ytimen kokoa, jonka täytyy olla ((size*2)+1)x((size*2)+1) alkiota.

kernel on konvoloitava ydin, joko litteänä 1D-listana/kolmikkona, jossa on ((size*2)+1)*((size*2)+1) alkiota, tai 2D-listana/kolmikkona, jossa on ((size*2)+1) riviä ((size*2)+1) alkiota.

mul on multiplikatiivinen kontrastikerroin (oletus 1.0).

add on additiivinen kirkkaussiirtymä (oletus 0.0).

threshold kynnystää True-arvolla adaptiivisesti suodattimen ulostulon binäärikuvaksi. offset siirtää binarisointia (negatiivinen tekee enemmän pikseleistä valkoisia, positiivinen tekee vähemmän). invert kääntää binääriulostulon.

mask on binäärikuva, jota käytetään pikselitason maskina; vain maskissa asetetut pikselit muokataan.

Palauttaa kuvaobjektin, jotta voit kutsua toista metodia .-notaatiolla.

Ei tueta pakatuilla kuvilla tai Bayer-/YUV-kuvilla.

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

Konvoloi kuvan pehmentävällä Gaussin ytimellä.

size on ytimen koko. Käytä 1 (3x3-ydin), 2 (5x5-ydin) jne.

unsharp suorittaa True-arvolla unsharp mask -operaation (terävöittää reunoja) tavallisen Gaussin sijaan.

mul on multiplikatiivinen kontrastikerroin (oletus 1.0).

add on additiivinen kirkkaussiirtymä (oletus 0.0).

threshold kynnystää True-arvolla adaptiivisesti suodattimen ulostulon binäärikuvaksi. offset siirtää binarisointia (negatiivinen tekee enemmän pikseleistä valkoisia, positiivinen tekee vähemmän). invert kääntää binääriulostulon.

mask on binäärikuva, jota käytetään pikselitason maskina; vain maskissa asetetut pikselit muokataan.

Palauttaa kuvaobjektin, jotta voit kutsua toista metodia .-notaatiolla.

Ei tueta pakatuilla kuvilla tai Bayer-/YUV-kuvilla.

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

Konvoloi kuvan reunoja tunnistavalla Laplace-ytimellä.

size on ytimen koko. Käytä 1 (3x3-ydin), 2 (5x5-ydin) jne.

sharpen terävöittää True-arvolla kuvaa sen sijaan, että ulostaisi raa’an kynnystämättömän reunavasteen.

mul on multiplikatiivinen kontrastikerroin (oletus 1.0).

add on additiivinen kirkkaussiirtymä (oletus 0.0).

threshold kynnystää True-arvolla adaptiivisesti suodattimen ulostulon binäärikuvaksi. offset siirtää binarisointia (negatiivinen tekee enemmän pikseleistä valkoisia, positiivinen tekee vähemmän). invert kääntää binääriulostulon.

mask on binäärikuva, jota käytetään pikselitason maskina; vain maskissa asetetut pikselit muokataan.

Palauttaa kuvaobjektin, jotta voit kutsua toista metodia .-notaatiolla.

Ei tueta pakatuilla kuvilla tai Bayer-/YUV-kuvilla.

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

Konvoloi kuvan bilateraalisuodattimella (reunoja säilyttävä pehmennys).

size on ytimen koko. Käytä 1 (3x3-ydin), 2 (5x5-ydin) jne.

color_sigma ohjaa värintäsmäystoleranssia; suuremmat arvot tuottavat enemmän värisumennusta.

space_sigma ohjaa spatiaalista sumennusta; suuremmat arvot tuottavat enemmän pikselisumennusta.

threshold kynnystää True-arvolla adaptiivisesti suodattimen ulostulon binäärikuvaksi. offset siirtää binarisointia (negatiivinen tekee enemmän pikseleistä valkoisia, positiivinen tekee vähemmän). invert kääntää binääriulostulon.

mask on binäärikuva, jota käytetään pikselitason maskina; vain maskissa asetetut pikselit muokataan.

Palauttaa kuvaobjektin, jotta voit kutsua toista metodia .-notaatiolla.

Ei tueta pakatuilla kuvilla tai Bayer-/YUV-kuvilla.

Geometriset metodit

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

Uudelleenprojisoi kuvan karteesisista koordinaateista lineaarisiin napakoordinaatteihin.

Aseta reverse=True uudelleenprojisoidaksesi vastakkaiseen suuntaan.

x ja y määrittävät muunnoksen keskikoordinaatin kuvapikseleinä. Jos x on None (oletus), se asetetaan kuvan leveyden puolikkaaksi; vastaavasti y oletusarvona kuvan korkeuden puolikkaaksi.

Lineaarinen napauudelleenprojisointi muuttaa kuvan kierron x-siirtymäksi.

Ei tueta pakatuilla kuvilla tai Bayer-kuvilla.

Tämä metodi ei ole käytettävissä OpenMV Cam M4 -kamerassa.

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

Uudelleenprojisoi kuvan karteesisista koordinaateista logaritmisiin napakoordinaatteihin.

Aseta reverse=True uudelleenprojisoidaksesi vastakkaiseen suuntaan.

x ja y määrittävät muunnoksen keskikoordinaatin kuvapikseleinä. Jos x on None (oletus), se asetetaan kuvan leveyden puolikkaaksi; vastaavasti y oletusarvona kuvan korkeuden puolikkaaksi.

Logaritminen napauudelleenprojisointi muuttaa kuvan kierron x-siirtymäksi ja skaalauksen/zoomauksen y-siirtymäksi.

Ei tueta pakatuilla kuvilla tai Bayer-kuvilla.

Tämä metodi ei ole käytettävissä OpenMV Cam M4 -kamerassa.

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

Suorittaa linssikorjauksen kuvan poiskalansilmäisyyttämiseksi linssin vääristymän vuoksi.

strength on float, joka määrittää kuinka paljon kuvaa poiskalansilmäistetään. Kokeile oletusarvona 1.8 ja kasvata tai pienennä siitä, kunnes kuva näyttää hyvältä.

zoom on määrä, jolla kuvaan zoomataan. Oletusarvona 1.0.

x_corr liukulukutyyppinen pikselisiirtymä keskeltä. Voi olla negatiivinen tai positiivinen.

y_corr liukulukutyyppinen pikselisiirtymä keskeltä. Voi olla negatiivinen tai positiivinen.

Palauttaa kuvaobjektin, jotta voit kutsua toista metodia .-notaatiolla.

Ei tueta pakatuilla kuvilla tai Bayer-kuvilla.

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

Korjaa kuvan perspektiiviongelmia tekemällä kehyspuskurin 3D-kierron.

x_rotation on asteiden määrä, jolla kehyspuskurissa olevaa kuvaa kierretään x-akselin ympäri (eli tämä pyörittää kuvaa ylös ja alas).

y_rotation on asteiden määrä, jolla kehyspuskurissa olevaa kuvaa kierretään y-akselin ympäri (eli tämä pyörittää kuvaa vasemmalle ja oikealle).

z_rotation on asteiden määrä, jolla kehyspuskurissa olevaa kuvaa kierretään z-akselin ympäri (eli tämä pyörittää kuvaa paikallaan).

x_translation on yksiköiden määrä, jolla kuvaa siirretään vasemmalle tai oikealle kierron jälkeen. Koska tämä siirto sovelletaan 3D-avaruudessa, yksiköt eivät ole pikseleitä…

y_translation on yksiköiden määrä, jolla kuvaa siirretään ylös tai alas kierron jälkeen. Koska tämä siirto sovelletaan 3D-avaruudessa, yksiköt eivät ole pikseleitä…

zoom on määrä, jolla kuvaan zoomataan. Oletusarvona 1.0.

fov on näkökenttä, jota käytetään sisäiseen 2D->3D-projektioon. Kun fov lähestyy 0:aa, kuva asetetaan äärettömyyteen; kun se lähestyy 180:tä, kuva asetetaan näkymäalueen sisään.

corners on lista neljästä (x, y) -kolmikosta, joita käytetään 4-pisteisen homografian rakentamiseen, joka kuvaa kulmat pisteisiin (0, 0), (image_width-1, 0), (image_width-1, image_height-1) ja (0, image_height-1) ennen 3D-kierron soveltamista. Hyödyllinen lintuperspektiivimuunnoksissa.

Palauttaa kuvaobjektin, jotta voit kutsua toista metodia .-notaatiolla.

Ei tueta pakatuilla kuvilla tai Bayer-kuvilla.

Tämä metodi ei ole käytettävissä OpenMV Cam M4 -kamerassa.

Get-metodit

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

Laskee kahden kuvan välisen samankaltaisuuden käyttäen rakenteellista samankaltaisuusindeksiä (SSIM). SSIM vaihtelee välillä -1 (vastakkainen) ja 1 (identtinen). Palauttaa image.similarity-objektin.

image on kuva, johon verrataan (kuvaobjekti tai polkumerkkijono, esim. "test.jpg").

x, y, x_scale, y_scale, roi, rgb_channel, alpha, color_palette, alpha_palette, hint ja transform ottavat vastaan samat arvot kuin Image.draw_image().

dssim palauttaa True-arvolla rakenteellisen erilaisuusindeksin (DSSIM) sen sijaan, jossa 0 tarkoittaa identtistä ja 1 tarkoittaa täysin erilaista.

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

Laskee normalisoidun histogrammin kaikille värikanaville roi-alueelta ja palauttaa image.histogram-objektin. Saatavilla myös nimellä Image.get_hist() tai Image.histogram().

thresholds on lista (lo, hi)-kolmikoita harmaasävykuville tai (l_lo, l_hi, a_lo, a_hi, b_lo, b_hi)-kolmikoita RGB565-kuville. Jos annettu, histogrammi lasketaan vain kynnysarvojen sisällä olevista pikseleistä.

invert kääntää kynnystäsmäytyksen.

roi on kohdealueen suorakulmiokolmikko (x, y, w, h). Oletusarvona kuvasuorakulmio.

bins (harmaasävy) tai l_bins/a_bins/b_bins (RGB565) asettavat histogrammilokeroiden määrän per kanava. Täytyy olla suurempi kuin 2. Oletusarvona maksimilokeromäärä per kanava.

difference voidaan asettaa kuvaobjektiksi, jolloin operoidaan nykyisen kuvan ja kyseisen kuvan välisellä erotuksella ilman ylimääräistä puskuria.

Ei tueta pakatuilla kuvilla tai Bayer-kuvilla.

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

Laskee keskiarvon, mediaanin, moodin, keskihajonnan, minimin, maksimin, alemman kvartiilin ja ylemmän kvartiilin kaikille värikanaville roi-alueelta ja palauttaa image.statistics-objektin. Saatavilla myös nimellä Image.get_stats() tai Image.statistics().

thresholds on lista (lo, hi)-kolmikoita harmaasävykuville tai (l_lo, l_hi, a_lo, a_hi, b_lo, b_hi)-kolmikoita RGB565-kuville. Jos annettu, tilastot lasketaan vain kynnysarvojen sisällä olevista pikseleistä.

invert kääntää kynnystäsmäytyksen.

roi on kohdealueen suorakulmiokolmikko (x, y, w, h). Oletusarvona kuvasuorakulmio.

bins (harmaasävy) tai l_bins/a_bins/b_bins (RGB565) asettavat histogrammilokeroiden määrän per kanava. Täytyy olla suurempi kuin 2. Oletusarvona maksimilokeromäärä per kanava.

difference voidaan asettaa kuvaobjektiksi, jolloin operoidaan nykyisen kuvan ja kyseisen kuvan välisellä erotuksella ilman ylimääräistä puskuria.

Ei tueta pakatuilla kuvilla tai Bayer-kuvilla.

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

Laskee lineaarisen regression (Theil-Sen) kaikille kuvan kynnystetyille pikseleille. Palauttaa image.line-objektin tai None, jos viivaa ei löytynyt.

thresholds on lista (lo, hi)-kolmikoita harmaasävykuville tai (l_lo, l_hi, a_lo, a_hi, b_lo, b_hi)-kolmikoita RGB565-kuville.

invert kääntää kynnystäsmäytyksen.

roi on kohdealueen suorakulmiokolmikko (x, y, w, h). Oletusarvona kuvasuorakulmio.

x_stride ja y_stride ohjaavat, kuinka monta pikseliä ohitetaan kuvaa arvioitaessa.

area_threshold minimi rajauslaatikon pinta-ala; pienemmät tulokset palauttavat None.

pixels_threshold minimi kynnystettyjen pikselien määrä; pienemmät tulokset palauttavat None.

target_size on (w, h)-kolmikko. ROI aluepohjaisesti pienennetään mahtumaan tämän koon sisään ennen O(N^2)-algoritmin suorittamista. Oletusarvona (80, 60).

Ei tueta pakatuilla kuvilla tai Bayer-kuvilla.

Tunnistusmetodit

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]

Etsii kaikki blobit (yhtenäiset pikselialueet, jotka läpäisevät kynnystestin) kuvasta ja palauttaa listan image.blob-objekteja.

thresholds on lista (lo, hi)-kolmikoita harmaasävykuville tai (l_lo, l_hi, a_lo, a_hi, b_lo, b_hi)-kolmikoita RGB565-kuville (LAB-kanavat). Enintään 32 kolmikkoa voidaan antaa. Vaihtuneet min/max-arvot korjataan automaattisesti; puuttuvat komponentit oletusarvona maksimialueeseen.

invert kääntää kynnystäsmäytyksen.

roi on kohdealueen suorakulmiokolmikko (x, y, w, h). Oletusarvona kuvasuorakulmio.

x_stride ja y_stride ohjaavat, kuinka monta pikseliä ohitetaan blobia etsittäessä. Kasvata, jos blobien tiedetään olevan suuria.

area_threshold minimi rajauslaatikon pinta-ala; pienemmät blobit suodatetaan.

pixels_threshold minimi kynnystettyjen pikselien määrä; pienemmät blobit suodatetaan.

merge yhdistää True-arvolla blobit, joiden rajaavat suorakulmiot leikkaavat toisensa. margin kasvattaa/pienentää leikkaukseen käytettyjä rajaavia suorakulmioita. Yhdistetyt blobit TAI-operoivat code-bittivektorinsa yhteen (yksi bitti per kynnysarvo).

threshold_cb kutsutaan blobia kohti kynnystyksen jälkeen; palauta True säilyttääksesi, False suodattaaksesi.

merge_cb kutsutaan kutakin yhdistettävää blobiparia kohti; palauta True salliaksesi yhdistämisen, False estääksesi sen.

x_hist_bins_max, jos nollasta poikkeava, täyttää kunkin blobin x_histogram-projektiolla käyttäen tämän verran lokeroita.

y_hist_bins_max, jos nollasta poikkeava, täyttää kunkin blobin y_histogram-projektiolla käyttäen tämän verran lokeroita.

Ei tueta pakatuilla kuvilla tai Bayer-kuvilla.

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]

Etsii kaikki äärettömät viivat kuvasta käyttäen Hough-muunnosta. Palauttaa listan image.line-objekteja.

roi on kohdealueen suorakulmiokolmikko (x, y, w, h). Oletusarvona kuvasuorakulmio.

x_stride ja y_stride ohjaavat, kuinka monta pikseliä ohitetaan Hough-muunnoksen aikana.

threshold minimi viivan magnitudi (Sobel-magnitudien summa viivaa pitkin); tämän alle jäävät viivat suodatetaan pois.

theta_margin ja rho_margin ohjaavat yhdistämistä: näiden kynnysarvojen sisällä olevat viivat yhdistetään.

Ei tueta pakatuilla kuvilla tai Bayer-kuvilla.

Tämä metodi ei ole käytettävissä OpenMV Cam M4 -kamerassa.

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

Etsii viivasegmentit kuvasta. Palauttaa listan image.line-objekteja.

roi on kohdealueen suorakulmiokolmikko (x, y, w, h). Oletusarvona kuvasuorakulmio.

merge_distance on suurin pikselietäisyys kahden segmentin välillä yhdistettäväksi.

max_theta_difference on suurin theeta-ero asteina segmenttien välillä yhdistettäväksi.

Tämä metodi ei ole käytettävissä OpenMV Cam M4 -kamerassa.

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]

Etsii ympyrät kuvasta käyttäen Hough-muunnosta. Palauttaa listan image.circle-objekteja.

roi on kohdealueen suorakulmiokolmikko (x, y, w, h). Oletusarvona kuvasuorakulmio.

x_stride ja y_stride ohjaavat, kuinka monta pikseliä ohitetaan Hough-muunnoksen aikana.

threshold minimi ympyrän magnitudi (Sobel-magnitudien summa ympyrää pitkin); tämän alle jäävät ympyrät suodatetaan pois.

x_margin, y_margin ja r_margin ohjaavat yhdistämistä: näiden kynnysarvojen sisällä olevat ympyrät yhdistetään.

r_min minimi ympyrän säde. Oletusarvona 2.

r_max maksimi ympyrän säde. Oletusarvona min(roi.w/2, roi.h/2).

r_step säteen askelkoko. Oletusarvona 2.

Tämä metodi ei ole käytettävissä OpenMV Cam M4 -kamerassa.

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

Etsii suorakulmiot kuvasta käyttäen AprilTag-nelikulmiotunnistusalgoritmia. Palauttaa listan image.rect-objekteja.

roi on kohdealueen suorakulmiokolmikko (x, y, w, h). Oletusarvona kuvasuorakulmio.

threshold minimi reunan magnitudi (Sobel-magnitudien summa suorakulmion reunoja pitkin); tämän alle jäävät suorakulmiot suodatetaan pois.

Tämä metodi ei ole käytettävissä OpenMV Cam M4 -kamerassa.

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

Etsii kaikki QR-koodit roi-alueen sisältä ja palauttaa listan image.qrcode-objekteja.

roi on kohdealueen suorakulmiokolmikko (x, y, w, h). Oletusarvona kuvasuorakulmio.

Tämä metodi ei ole käytettävissä OpenMV Cam M4 -kamerassa.

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]

Etsii kaikki AprilTag-tunnisteet roi-alueen sisältä ja palauttaa listan image.apriltag-objekteja.

roi on kohdealueen suorakulmiokolmikko (x, y, w, h). Oletusarvona kuvasuorakulmio.

families on tunnisteperheiden bittimaski dekoodattavaksi. Se on seuraavien looginen TAI:

Oletusarvona image.TAG36H11. Tunnistusaika skaalautuu käytössä olevien perheiden määrän mukaan.

fx ja fy ovat kameran X- ja Y-polttovälit pikseleinä.

cx ja cy ovat kuvan keskipiste, tyypillisesti image.width()/2 ja image.height()/2.

Ei tueta pakatuilla kuvilla.

Tämä metodi ei ole käytettävissä OpenMV Cam M4 -kamerassa.

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

Etsii kaikki datamatriisit roi-alueen sisältä ja palauttaa listan image.datamatrix-objekteja.

roi on kohdealueen suorakulmiokolmikko (x, y, w, h). Oletusarvona kuvasuorakulmio.

effort ohjaa, kuinka paljon aikaa käytetään datamatriisitäsmäysten etsimiseen. Suuremmat arvot parantavat tunnistusta kuvataajuuden kustannuksella. Alle ~160 olevat arvot eivät onnistu tunnistamaan; yli ~240 olevat arvot tuottavat vähenevää hyötyä. Oletusarvona 200.

Tämä metodi ei ole käytettävissä OpenMV Cam M4 -kamerassa.

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

Etsii kaikki 1D-viivakoodit roi-alueen sisältä ja palauttaa listan image.barcode-objekteja. Skannaa sekä vaaka- että pystysuunnassa.

Tuetut viivakooditypit: 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 on kohdealueen suorakulmiokolmikko (x, y, w, h). Oletusarvona kuvasuorakulmio.

Tämä metodi ei ole käytettävissä OpenMV Cam M4 -kamerassa.

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

Etsii tämän kuvan siirtymäsiirtymän template-mallista käyttäen vaihekorrelaatiota. Palauttaa image.displacement-objektin.

roi on kohdealueen suorakulmio (x, y, w, h). Oletusarvona kuvasuorakulmio.

template_roi on mallin kohdealue. Oletusarvona mallikuvan suorakulmio. roi ja template_roi täytyy olla samanleveyksisiä ja -korkuisia.

logpolar palauttaa True-arvolla kierto-/skaalausmuutoksen x/y-siirtymän sijaan.

fix_rotation_scale laskee True-arvolla siirtymän kierron ja skaalauksen kohdistamisen jälkeen (merkityksellinen vain kun logpolar=False).

Muista

Käytä tätä metodia kahden potenssin kuvakoilla (esim. sensor.B64X64).

Ei tueta pakatuilla kuvilla tai Bayer-kuvilla. Ei käytettävissä OpenMV Cam M4 -kamerassa.

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

Yrittää löytää ensimmäisen sijainnin kuvasta, jossa template täsmää käyttäen normalisoitua ristikorrelaatiota. Palauttaa rajauslaatikkokolmikon (x, y, w, h) tai None.

template on harmaasävykuva, johon täsmätään tätä kuvaa vasten.

threshold on arvo (0.0-1.0). Suuremmat arvot vähentävät vääriä positiivisia ja tunnistuksia; pienemmät arvot tekevät päinvastoin.

roi on kohdealueen suorakulmiokolmikko (x, y, w, h). Oletusarvona kuvasuorakulmio.

step on ohitettavien pikselien määrä etsittäessä (käytetään vain image.SEARCH_EX-tilassa).

search on image.SEARCH_DS (nopeampi timanttihaku) tai image.SEARCH_EX (tyhjentävä haku).

Toimii vain harmaasävykuvilla.

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]]

Etsii kuvasta annettua Haar-kaskadia vastaavat alueet ja palauttaa listan rajauslaatikkokolmikoita (x, y, w, h). Palauttaa tyhjän listan, jos piirteitä ei löydy.

cascade on Haar Cascade -objekti (katso image.HaarCascade()).

threshold (0.0-1.0). Pienemmät arvot nostavat tunnistustaajuutta ja väärien positiivisten taajuutta.

scale täytyy olla suurempi kuin 1.0. Suuremmat arvot toimivat nopeammin mutta tuottavat heikompia täsmäyksiä.

roi on kohdealueen suorakulmiokolmikko (x, y, w, h). Oletusarvona kuvasuorakulmio.

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

Etsii pupillia silmän ympärillä olevasta kohdealueen (x, y, w, h) -kolmikosta. Palauttaa pupillin (x, y) -sijainnin tai (0, 0), jos sitä ei löydy.

roi on kohdealueen suorakulmiokolmikko (x, y, w, h).

Toimii vain harmaasävykuvilla.

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

Poimii LBP (local-binary-patterns) -avainpisteet kohdealueelta. Käytä image.match_descriptor() kahden kuvaajan vertaamiseen.

roi on kohdealueen suorakulmiokolmikko (x, y, w, h).

Toimii vain harmaasävykuvilla.

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

Poimii ORB-avainpisteet kohdealueelta. Käytä image.match_descriptor() kahden kuvaajan vertaamiseen. Palauttaa None, jos avainpisteitä ei löytynyt.

roi on kohdealueen suorakulmiokolmikko (x, y, w, h). Oletusarvona kuvasuorakulmio.

threshold (0-255) ohjaa poimittujen kulmien määrää. Pienemmät kynnysarvot tuottavat enemmän kulmia. Käytä ~20 AGAST:lle, ~60-80 FAST:lle.

normalized poistaa True-arvolla käytöstä moniresoluutioisen avainpisteiden poiminnan.

scale_factor täytyy olla suurempi kuin 1.0. Suuremmat arvot toimivat nopeammin mutta tuottavat heikompia täsmäyksiä.

max_keypoints on säilytettävien avainpisteiden maksimimäärä.

corner_detector on image.CORNER_FAST tai image.CORNER_AGAST.

Toimii vain harmaasävykuvilla.

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

Muuttaa kuvan mustavalkoiseksi jättäen vain reunat valkoisina pikseleinä.

  • image.EDGE_SIMPLE - Yksinkertainen kynnystetty ylipäästösuodatinalgoritmi.

  • image.EDGE_CANNY - Cannyn reunantunnistusalgoritmi.

threshold on kaksiarvoinen kolmikko, joka sisältää alakynnyksen ja yläkynnyksen. Voit ohjata reunojen laatua säätämällä näitä arvoja. Oletusarvona (100, 200).

Toimii vain harmaasävykuvilla.

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

Korvaa ROI:n pikselit HOG (histogram of orientated gradients) -viivoilla.

roi on kohdealueen suorakulmiokolmikko (x, y, w, h). Jos ei määritetty, se vastaa kuvasuorakulmiota. Vain roi-alueen sisällä olevia pikseleitä käsitellään.

Toimii vain harmaasävykuvilla.

Tämä metodi ei ole käytettävissä OpenMV Cam M4 -kamerassa.

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

Ottaa kaksinkertaisen levyisen harmaasävykuvan, joka sisältää kahden vierekkäisen kamerasensorin ulostulon, ja korvaa toisen puoliskon stereodisparitettikuvalla (jokainen pikseli edustaa syvyyttä). Esim. kahdelle 320x240-kameralle anna 640x240-kuva.

reversed Oletusarvoisesti vasenta kuvaa verrataan oikeaan ja oikea kuva korvataan. Aseta True verrataksesi oikea->vasen ja korvataksesi vasemman kuvan.

max_disparity on suurin etäisyys (1-255), jolla etsitään täsmäävää pikselilohkoa käyttäen absoluuttisten erojen summaa. Suuremmat arvot vievät eksponentiaalisesti kauemmin mutta tuottavat laadukkaamman ulostulon.

threshold jos absoluuttisten erojen summa kahden lohkon välillä on pienempi tai yhtä suuri kuin tämä kynnysarvo, niiden katsotaan täsmäävän.

Suorittaa selektiivisen haun kuvalle ja palauttaa listan rajauslaatikkokolmikoita (x, y, w, h) ehdotetuista objekteista.

threshold on segmentointikynnys; suuremmat arvot tuottavat vähemmän/suurempia alueita.

size on minimi aluekoko yhdistämisen jälkeen.

a1, a2, a3 ovat väri-/tekstuuri-/kokosamankaltaisuuspainot, joita käytetään alueita yhdistettäessä.