870 likes | 1.03k Views
Képoperációk. Vámossy Zoltán 2004 (Bebis, Ribeiro, Trucco Vierri és Cohen alapján). CV rendszer általános modellje. Képoperációk osztályozása. Képtérben történő műveletek Pont alapú transzformációk Maszk, vagy ablak alapú transzformációk Teljes képre vonatkozó transzformációk
E N D
Képoperációk Vámossy Zoltán 2004 (Bebis, Ribeiro, Trucco Vierri és Cohen alapján)
Képoperációk osztályozása • Képtérben történő műveletek • Pont alapú transzformációk • Maszk, vagy ablak alapú transzformációk • Teljes képre vonatkozó transzformációk • Geometriai transzformációk • Frekvencia tartományban módszerek
Pont alapú módszerek • g(x,y) = T[f(x,y)], T egy pixelen operál • Legegyszerűbb, elemi képfeldolgozási műveletek • Intenzitás transzformáció, ami egy régi értéket egy újra cserél valamilyen fgv. alapján • Általában a kontraszt fokozására használják
Pont alapú: identitás, v. egység • g(x,y) = f(x,y)
Pont alapú: negálás • g(x, y) = 255 - f(x, y) • Sötét háttérben szürke, vagy fehér elemek kiemelésére
Pont alapú: kontraszt növ./csökk. • Szürkeségi értékek nyújtása úgy, hogy több információt lássunk
Pont alapú: intenzitás szintre vágás 1. • Az intenzitás értékek egy tartományát emeli ki
Pont alapú: intenzitás szintre vágás 2. • Dupla küszöbölés
Pont alapú: kontraszt nyújtás • Nagyobb kontraszt érdekében: sötétítés m alatt, világosítás m fölött
Pont alapú: nem lineáris transzformációk • A hatvány és gyök függvényeket is alkalmazhatunk transzformálásra
Pont alapú: nem lineáris transzformációk • Tetszőleges fgv-t használhatunk, ami 1 -> 1, vagy sok -> 1 leképzést hajt végre • Logaritmikus skálázás: sötét régiókat jobban szét húzza, világosakat tömöríti g(x, y) = c * log [1.0 + f(x, y)], ahol c konstans
Logaritmikus tr. példa • Fourier transzformáció esetében • Széles intenzitás spektrumot le lehet fedni
Hatvány és gyök függvények • g(x, y) = c * f(x, y)γ, ahol c és γ pozitív konstans • Gamma értékétől függően vagy a sötét értékeket transzformálja világosabbá, vagy fordítva
Gamma korrekció • Gamma különböző értékeinél ugyanaz az MRI kép (γ < 1, 0.6, 0.4, 0.3), illetve (γ > 1, 3, 4, 5)
Pont alapú: hisztogram műveletek • Alacsony kontrasztú képek, vagy túl sötétek, vagy túl világosak, vagy csak egy szűk intenzitás tartományban jellemzőek a szürkeségi értékek • Magas kontrasztú képek nagy sötét és nagy világos foltokat tartalmaznak • Jó kontrasztú képek • Intenzitások széles tartománya • Általában nincs domináns intenzitás érték
Pont alapú: hisztogram műveletek • A hisztogram – az intenzitások gyakorisága – a kép kontrasztosságáról ad információt • Halmozott hisztogram: az adott szintig az intenzitások hány százalékát tartalmazza a kép
Pont alapú: hisztogram széthúzás • Lineáris skálázás • A képen előforduló [min, max] intervallumot skálázza a [0, L - 1] teljes intervallumra.
Pont alapú: hisztogram széthúzás • Tudjuk, hogy 0 = a * min + b és L - 1 = a * max + b • Ezérta = (L - 1) / (max - min)b = -min * a = -min * (L - 1) / (max - min) • Végüls = T(r) = (L - 1)(r - min) / (max - min)
Pont alapú: kontraszt széthúzás • Lineáris skálázás, hasonlít a hisztogram széthúzáshoz, de • A képen előforduló [min, max] intervallum helyett egy [low, high] intervallumot skáláz a [0, L - 1] teljes intervallumra.
Pont alapú: hisztogram kiegyenlítés • A hisztogram kiegyenlítés olyan transzformáció, amely az intenzitás szinteket úgy transzformálja, hogy az egyenletes legyen • Gyakorlatban ez nem működik
Pont alapú: hisztogram kiegyenlítés • Eredeti hisztogram • Cél
Pont alapú: hisztogram kiegyenlítés • Eredeti hisztogram • Cél • Monoton nő, eléri a maximális intenzitás értéket
Pont alapú: hisztogram kiegyenlítés • Színes kép esetén színenként is végezhetjük • Lokálisan is végezhető, kisebb képrészekre
Bit-síkonkénti vágás I. • A bitsíkok közül a magasabbak tartalmazzák a lényegi információ javarészét • A szteganográfia alapja: alacsonyabb bitekben idegen adatot tárolunk
Bit-síkonkénti vágás (példa) 7 6 5 4 3 2 1 0
Teljes képre vonatkozó transzformációk • Az eredmény pixelérték olyan műveleten alapszik, amely két vagy több képet használ • Általában minden output pixel ugyanabban a helyzetben marad
Teljes képre: összeadás • Két képen lévő információ kombinálásakor hasznos • O(r, c) = a * I1(r, c) + (1-a) * I2(r, c)
Teljes képre: átlagolás • Képminőség javítható több kép átlagával O(r, c) = I(r, c) + n(r, c), n additív zaj • Sok zajos kép esetén a zaj átlaga 0, a várható érték maga a kép
Teljes képre: kivonás • Változásdetektálás • O(r, c) = |I1(r, c) - I2(r, c)|
Teljes képre: szorzás/osztás • Fényesség beállításra használható
Teljes képre: and/or I. • AND: Kép adott részének kimaszkolása • Or: másik kép adott részének hozzáadása
Teljes képre: and/or II. • AND • OR
Geometriai transzformációk • Eltolás: r’ = r + tr c’ = c + tc • Skálázás r’ = sr r c’ = sc tc • Elforgatás r’ = r0 + (r - r0)cos(β) - (c - c0)sin(β) c’ = c0 + (r - r0)sin(β) + (c - c0)cos(β) • Affin transzformáció r’ = a11r + a12c + b1 c’ = a21r + a22c + b2
Geometriai tr.: problémák • A transzformált pixelkoordináták nem a képen belülre esnek • A transzformált pixelkoordináták nem egészek • Nem felel meg kölcsönösen egymásnak az input kép minden pixele az output minden pixelének
Geometriai tr.: 3. probléma • Megoldás: az outputból kiindulva az inverz transzformációval számoljunk
Geometriai tr.: 2. probléma • A környező pixelekből interpolálunk • 0-ad rendű interpoláció (nearest neighbor)
Geometriai tr.: 2. probléma • A környező pixelekből interpolálunk • Magasabb rendű interpoláció (bicubic, spline stb.)
Geometriai tr.: 2. probléma Spline függvények – Interpoláció Ez a rész innen származik: Bruce Cohen http://www.cgl.ucsf.edu/home/bic
Célok • Diszkrét adatok interpolációja folytonos függvényekkel • Az egy dimenziós technika átvitele két dimenzióba
Résztémák • Pontok összekötése – szakaszonként folytonos lineáris interpoláció • Minden részintervallumra lineáris egyenlet meghatározása az adatokból • Az így kapott “Spline bázisfüggvények” lineáris kombinációja • Vonaldarabkák összekötése – sima, szakaszonként másodrendű interpoláció • A függvényadat és a meredekség használata a harmadrendű interpolációhoz minden intervallumban • Lineáris kombinációjaa “Cubic spline bázisfüggvényeknek” • 2D interpoláció
Pontok összekötése Írjunk egy formulát 5 adatpont összekötésére szakaszonként lineáris interpolációs függvénnyel
Interpoláció lineáris spline bázissal A “lineáris spline függvény” megközelítés magába foglalja “bázisfüggvények”megválasztásátúgy, hogy az interpolációs függvényegyszerű lineáris kombinációval írható le: