2024-07-08
한어Русский языкEnglishFrançaisIndonesianSanskrit日本語DeutschPortuguêsΕλληνικάespañolItalianoSuomalainenLatina
OpenCV:ssäfilter2D
Toiminto on erittäin tehokas työkalu kuvien taivuttamiseen erilaisten lineaaristen suodattimien käyttämiseksi. Tämä toiminto käsittelee kuvan jokaisen pikselin ja muokkaa kuvan ominaisuuksia konvoloimalla sen tietyllä konvoluutioytimellä (tai suodattimella).Seuraavassa on kysefilter2D
Toiminnon yksityiskohtainen esittely:
OpenCV:ssäfilter2D
Toiminnon prototyyppi on seuraava:
void cv::filter2D(InputArray src, OutputArray dst, int ddepth, InputArray kernel,
Point anchor = Point(-1,-1), double delta = 0,
int borderType = BORDER_DEFAULT);
src
Niissä on sama koko ja sama määrä kanavia.dst
aiemmin lisätty suodatettuihin pikseleihin.BORDER_CONSTANT
、BORDER_REPLICATE
、BORDER_REFLECT
odota.filter2D
Funktio itse asiassa suorittaa konvoluutiooperaation (vaikka teknisesti se laskee korrelaation tiukan konvoluution sijaan, koska kyseessä ei ole ytimen kääntäminen). Konvoluutiooperaatio sisältää konvoluutioytimen "liukumisen" syötekuvan yli, kunkin konvoluutioytimen kanssa samankokoisen alimatriisin vastaavien elementtien kertomisen ja tulosten lisäämisen. Tämä prosessi luo uuden pikseliarvon, joka sijoitetaan vastaavaan kohtaan tulostekuvassa. Kun konvoluutioydin liukuu koko syöttökuvan yli, tätä prosessia toistetaan, kunnes täydellinen tulostekuva on luotu.
Muuttamalla konvoluutioytimen,filter2D
Toiminnot voivat saada aikaan erilaisia kuvankäsittelytehosteita, mukaan lukien, mutta ei rajoittuen:
filter2D
Itse funktio ei suoraan luo Gaussin ytimiä, mutta se voidaan välittäägetGaussianKernel
funktio luo Gaussin ytimen ja käyttääfilter2D
Suorita Gaussin suodatus.Seuraava on käyttöäfilter2D
Esimerkkikoodi funktion keskiarvosuodatuksesta (Python-versio):
#include