Kpek kpfeldolgozs SzirmayKalos Lszl Kpek a kpszintzisben Geometriai
Képek, képfeldolgozás Szirmay-Kalos László
Képek a képszintézisben Geometriai model scanner Transzformáció vágás raszterizáció (x, y, szín) Kép (textúra) (akár float) Pixel műveletek Digitális fényképezőgép fájl Rasztertár (8 bit)
Képek, képformátumok l l l Fej: – típus, méret (szélesség, magasság) – bit-per-pixel, indexelt-valós szín, lookup tábla Törzs: – szélesség x magasság db pixel (R, G, B) vagy idx – Tömörítés (run length, LZW, Huffmann, FFT, wavelet) Standard formátumok: – TARGA, GIF, JPEG, TIFF, BMP, PCX – GIF, MPG, AVI, . . .
TARGA Fej: 0 0 2 9 db 0 Szélesség alsó bájt Szélesség felső bájt Magasság alsó bájt Magasság felső bájt Bit-per-pixel: 24 32 Törzs: b 1 g 1 r 1 b 2 g 2 r 2 …
Grafika - képfeldolgozás Textúrák Grafika Geometriai leírás Kép Alakfelismerés I(x, y) diszkrét
Képfeldolgozás Kép Diszkrét f(u, v) 2 D tömb Képfeldolgozás • Kép ábrázolhatósága • Kép javítás • Alakfelismerés előkészítése • Információ rejtés, stb. Kép Diszkrét g(u, v) 2 D tömb
Kvantálás 8 bit: 256 szín 4 bit: 16 szín 3 bit: 8 szín
Dither + eredeti jel = zaj hozzákeverés kvantálás aluláteresztô szűrés n+d bit x 0 x 1 y 0 y 1 dither RAM d bit n bit d bit rasztertár szem monitor
Fekete-fehér dither Véletlen zaj halftone Kis periódusú mátrix dither 0 12 3 15 8 4 11 7 2 14 1 13 10 6 1 9 16 5 Nagyperiódusú egyenletes sorozat
Színes dither Véletlen zaj Mátrix dither
Tone mapping HRDI(R, G, B) LDRI(r, g, b) konverzió 1. Luminancia: I = 0. 21 R + 0. 72 G + 0. 07 B 2. 3. Adaptációs lum: I’ Relatív lum: Ir = 4. 5. I I’ Megjelenített lum: Megjelenített szín: Ir +Glow D= 1+ Ir D (r, g, b) = (R, G, B, ) I
Fényesség transzformációk: g(u, v) = H(f(u, v)) g f
Hisztogram Alacsony kontraszt Alacsony fényerő
Hisztogram kiegyenlítés
Hisztogram kiegyenlítés p f f p(x)dx = g( f ) p g g f dg = p(f) df
Szűrés g(x) = w(t) · f(x-t) dt g(i, j) = w(di, dj) f(i-di, j-dj)
Aluláteresztő szűrőtípusok w(x) = sinc( x) doboz kúp W(f) Ideális aluláteresztő B-spline Gauss
Postprocessing HDRI Postprocessing Mélység értékek Textúrák Tone mapping Glow Depth of field 8 bit R, G, B kép Frame buffer
Render a full screen quad: gl. Begin(GL_QUADS); gl. Tex. Coord 2 f(1, 1); gl. Vertex 4 f(-1, 0, 1); gl. Tex. Coord 2 f(1, 0); gl. Vertex 4 f(-1, 1, 0, 1); gl. Tex. Coord 2 f(0, 0); gl. Vertex 4 f( 1, 1, 0, 1); gl. Tex. Coord 2 f(0, 1); gl. Vertex 4 f( 1, -1, 0, 1); gl. End( ); Postprocessing Vertex shader: HDRI Mélység értékek textúrák void main ( in float 4 Pos : POSITION, in float 2 Tex : TEXCOORD 0, out float 4 h. Pos : POSITION, out float 2 o. Tex : TEXCOORD 0 ) { h. Pos = Pos; o. Tex = Tex; } Fragment shader: float 4 main ( in float 2 Tex : TEXCOORD 0) : COLOR { color = Filtered colors in the neighborhood of Tex; } 8 bit R, G, B kép Frame buffer
Glow
Mélységélesség (Depth of field) k z P d Éles kép circle of confusion r r képsík D lencse tárgy Fokális sík
Mélységélesség
- Slides: 22