Orvosi képfeldolgozás és vizualizáció - Loványi kérdések

A VIK Wikiből
Ugrás a navigációhoz Ugrás a kereséshez

Ez az oldal a korábbi SCH wiki-ről lett áthozva. Az eredeti változata itt érhető el.

Ha úgy érzed, hogy bármilyen formázási vagy tartalmi probléma van vele, akkor kérlek javíts rajta egy rövid szerkesztéssel.

Ha nem tudod, hogyan indulj el, olvasd el a migrálási útmutatót


Tartalomjegyzék

Orvosi képfeldolgozás - Loványi ellenőrző kérdései

1. Különböző orvosi kép modalitások rövid jellemzése, összehasonlításuk

  • Transzmissziós elvű eljárások (pl. CT) - szöveten áthaladó sugár azzal kölcsönhatásba lép, tulajdonság változik
  • Emissziós elv (pl. PET) - vizsgálandó szövetbe sugárzó anyagot juttatunk - sugárzás mértékét mérjük
  • Indukált emisszió (pl. MRT) - vizsgált szövet tulajdonságok külső gerjesztés hatására változnak

2. Multimodális képfeldolgozás jelentősége, példákkal alátámasztva

  • Például: Térbeli emberi mozgás követése
    • Optikai követés: sok pont, de bonyolultabb feldolgozás
    • Ultrahangos követés: robosztus, de csak a markereket
    • Szenzorfúzió: kamera + ultrahang

3. Orvosi képek regisztrációja, Főtengely regisztrációs algoritmus

Ezen a helyen volt linkelve a par1.JPG nevű kép a régi wiki ezen oldaláról. (Kérlek hozd át ezt a képet ide, különben idővel el fog tűnni a régi wikivel együtt)


Ezen a helyen volt linkelve a par2.JPG nevű kép a régi wiki ezen oldaláról. (Kérlek hozd át ezt a képet ide, különben idővel el fog tűnni a régi wikivel együtt)

4. Képfeldolgozás általános lépéseinek rövid bemutatása – algoritmikuspéldákkal illusztrálva

  • előfeldolgozás
  • (jellemző/objektum) detektálás
  • szegmentálás
  • analízis, osztályozás, diagnosztika

5. Digitális kép reprezentációja: „mit” „hogyan” mérjünk a képen? Globális vs.lokális képjellemzők, „kívánatos” tulajdonságok

  • Képreprezentáció
    • Belső reprezentáció: régió-alapú (amikor az intenzitás, szín, textúra, stb. a fontos)
    • Külső reprezentáció: régió-határ alapú (amikor az alak, él, stb. a fontos)
  • Képjellemzők kívánatos tuljadonságai
    • Hatékony implmentáció
    • Hatékony osztályozás
    • Méret invariancia
    • Transzláció invariancia
    • Rotáció invariancia
    • ...
  • Globális vs Lokális
    • hmm?...

6. Régió határ mértékek (éldetektálás, kontúrkövetés, lánckód, signature,...)

  • Lánckód
    • Külső reprezentáció - régió határokat írja le
    • Közelítés egyenes szegmensekkel
    • 4 vagy 8 szomszédos képmodell
    • Implementáció
      • Kezdőpont megkeresése
      • Óramutató járásával egyező vagy ellentétes irányban elfordulva a következő szomszédos pont megkeresése és összekötés
    • Gyorsabb implementáció
      • Éldetektált kép durvább raszter szerű újramintavételezése
      • Amelyik rasztert érinti az eredeti régióhatár - megjelölve, összekötés
    • Érzékeny a kezdőpontválasztásra, rotációra, méretre egyaránt
  • Lenyomat (signature)
    • 1-dimenziós régió-határ mérték
    • Egy egyszerű implementáció: súlyponttól való távolság a szög függvényében
    • Transzláció invariáns
    • Rotáció invariáns: pl. legyen a legtávolabbi pont a kezdőpont
    • Skálázás invariáns: pl. távolság normálás
  • További régió-határ mértékek:
    • régió-határ hossz
    • görbület
    • átmérő

7. Régió mértékek (terület, kompaktság,...)

  • Régió mértékek:
    • régió terület
    • kompaktság mérték = kerület^2/terület
    • Régió intenzitás átlag/max/min érték
    • Átlagérték alatti/feletti pixelek aránya

8. Régió topológiai mértékek (Euler szám,...)

  • Régiók szakítását/összekötését nem okozó deformációkra érzéketlen
  • V-Q+F=C-H=E
  • V = sarkok száma
  • Q = élek száma
  • F = poligonok száma
  • C = egybefüggő régiók száma
  • H = lyukak száma
  • E = Euler szám
Ezen a helyen volt linkelve a euler.JPG nevű kép a régi wiki ezen oldaláról. (Kérlek hozd át ezt a képet ide, különben idővel el fog tűnni a régi wikivel együtt)

9. BLOB jellemzők, döntési stratégiák jellemzőtérben

  • BLOB jellemzők:
    • pixelek száma
    • Lyukak száma
    • Objektumok területe
    • Lyukak területe
    • Teljes terület (lyuk+obj)
    • Kerület = kontúr hoszza
    • Befoglaló keret
      • Bal felső sarok pozíciója
      • Befoglaló keret szélessége, magassága
    • Súlypont
    • Kompaktság
    • körkörösség
    • legnagyobb távolság(Feret átmérő)
    • Orientáció (Feret átmérő orientációja)
    • Alak (befoglaló keret oldalainak aránya, illeszkedés téglalapba, ellipszisbe)
  • Döntési stratégiák:
    • A jellemzőtérben egy Modell és BLOB közötti távolság mérték meghatározása
    • Jellemző illesztés (több dimenziós jellemző térben, azaz jellemző hipertérben)
    • Euklideszi távolság, vagy egyes jellemzők nagyobb súllyal való figyelembevétele

10. Ideális pin-hole kamera modell, közelítés a valósághoz

https://wiki.sch.bme.hu/bin/view/Infoszak/IpariKepfeldolgozasEllenorzo02#11_Pin_hole_kamera_model

11. 2D kép(ek)ből 3D információ: mik a robusztus jellemzők, 5 alapelv rövidbemutatása

  • ha van mélységinformáció (pl. lézeres letapogatás), abból következtethetünk a 3D információkra


Ezen a helyen volt linkelve a robosztus.png nevű kép a régi wiki ezen oldaláról. (Kérlek hozd át ezt a képet ide, különben idővel el fog tűnni a régi wikivel együtt)


  • 5 alapelv:
    • shape from shading: árnyalásból
    • shape from texture: texturából
    • shape from stereo: 2 kép diszparitásából, epipoláris geometria
    • shape from structured lighting: 1 kamera + 1 aktív megvilágítás
    • shape from motio: mozgásból, optikai áramlás

12. Epipoláris geometria

  • motivációja: hol érdemes keresni (a másik képen) az összetartozó pontpárokat


Ezen a helyen volt linkelve a epipol.png nevű kép a régi wiki ezen oldaláról. (Kérlek hozd át ezt a képet ide, különben idővel el fog tűnni a régi wikivel együtt)


13. Optikai áramlás

  • nagyon magas szintű, robosztus képjellemző, de nehezen is számítható
  • az információ inkább a mozgásról, mint a látványról szól
  • az alábbi jellemzők lefelé haladva egyre robosztusabbak, de egyre nehezebben is számíthatók (fent alacsony, lent magas szintű képjellemzők):
    • intenzitás
    • szín
    • él
    • sarokpont
    • blobok
    • aktív kontúr
    • textúra
    • optikai áramlás
  • "shape from motion"
  • mérjük az intenzitások elmozgását a képen
  • ennek segítségével szegmentálhatunk:
    • mozgó nézőpont esetén: relatív álló/mozgó síkokat, "közel/távol"
    • álló nézőpont esetén: a képen mozgó objektumokat

14. Éldetektálás konvolúcióval

  • mi az él? => olyan hely, ahol nagy a gradiens
  • ekkor viszont négy eltérő fizikai jelenség is eredményezhet élet a képen
    • felületi szín/intenzitás
    • felületi normális
    • mélységérték
    • megvilágítás (pl. becsillogások)
  • a cél lokálisan maximális gradiens-értékek keresése
    • megfelelően mátrixszal konvolválunk (középen nagy érték, körülötte kisebbek)
    • lehetséges vízszintesen és függőlegesen egymás után keresni
    • a kapott eredményt küszöbözni kell ("mennyire nagy gradiens számít élnek?")
      • a küszöböt algoritmus-szinten, automatikusan meghatározni nem triviális feladat!

15. Morfológiai alapfogalmak (Hit and Fit, erózió, dilatáció, nyitás, zárás, csontváz)

  • dilatáció
    • "Hit" műveleten alapul
    • ha ha egyetlen 1-es a SE-ből illeszkedik a bemeneti képre => kimenet=1, egyébként kimenet=0
    • (diák 16-23-ig)
    • az objektum nagyobb lesz, a lyukak betömődnek
  • erózió
    • "Fit" műveleten alapul
    • ha az összes 1-es a SE-ből illeszkedik a bemeneti képre => kimenet=1, egyébként kimenet=0
    • (diák 25-32-ig)
    • az objektum kisebb lesz
  • negált képen dilatáció = erózió!
  • strukturáló elemben (SE) lehet "don't care"
  • kontúr megkeresése
    • bemeneti kép dilatációja
    • bemeneti kép kivonása a dilatált kéből
    • marad az élkép
  • nyitás - objektumok szeparálása, kis objektumok eltüntetése (jobb mint egy sima erózió)
    • motiváció: a kis (zaj) objektumok kiszedése, DE a megőrzendő objektum mérete és formája változatlan maradjon!
    • nyitás = erózió + dilatáció
    • ugyanazzal a SE-mel
    • [math]f(x,y) (o) SE = (f(x,y) (-) SE) (+) SE[/math]
    • idempotens
  • zárás - lyukak betömése (jobb mint csak a dilatáció)
    • motiváció: betömni a lyukakat, DE megtartani az eredeti méretet és formát
    • zárás = dilatáció + erózió
    • szintén ugyanazzal a SE-mel
    • [math]f(x,y) (.) = (f(x,y) (+) SE) (-) SE[/math]
    • idempotens
  • CSONTVÁZ:
    • Definíció 1: a maximális méretű, még az objektumba foglalható diszkek súlypontjával
    • Definíció 2: azok a pontok, amelyek az objektum határvonalain lévő 2 ponttól azonos minimális távolságra fekszenek
    • Meghatározás 1: erózió és dilatáció műveletekkel
    • Meghatározás 2: erózió sorozatával; leállítási kritérium - amikor az erózió mindkét oldalról azonos pillanatban ér el egy pontot (_"préritűz" algoritmus_)
    • már nagyon kis zaj hatására sokat változik

16. Egy video-rate morfológiai célhardver algoritmusai (struktúra vektor,kontúrkövetés, geometriai, topológiai leírás, ...)

  • struktúra vektor:
    • Geometriai jellemzők meghatározása konvolúcióval
    • 2x2-es bináris ablak, 16 lehetséges topológia: csupán ezek számosságából meglepően sok minden származtatható (v0..v15)
    • A fólián egy lehetséges halmaza 10 független geometriai jellemzőnek (ezek az egyes topológiák összegeként állnak elő, pl. vizszintes vetülete a kerületnek: Pn=v2+v6+v10+v14, stb.)
    • Az eauler szám kivételével "ránézésre" értelmezhetőek a képletek
  • kontúrkövetés:
    • Kontúr sokkal több, mint az él: ez globális információ, de a célhardver egyszerre NEM lát többet 2 sornál (ez nagyon lokális).
    • Bináris képen az él értelmezése: fehér/fekete v. fekete/fehér átmenet a sorokban.
    • Algoritmus szemléltetése: aktuális/előző tárolt sor = sáv, sávba belépő/kilépő élpontok, követő pont kijelölés stratégia
    • Objektum/lyuk esetén a kontúr körbejárási iránya változik! Soron belül a kontúrok egymásba ágyazódását jelzi.
  • topológiai leírás:
    • Külső és belső kontúrokat címkézzük
    • "üres" kontúr (nem vesz körül más kontúr(oka)t) "típusa" = 1
    • Az algoritmus:
      • Ha az n kontúr k db kontúrt vesz körül:
        • type(n)= %5Cnormalsize%5C%21%5Cprod_%7Bi%3D1%7D%5E%7Bk%7D%20p%28type%28m_%7Bi%7D%29%20.gif
        • Pl. ha egy A kontúr tartalmaz egy több kontúrt nem tartalmazó (type=1) és két olyan kontúrt, amik egy újabb kontúrt tartalmaznak (type=2): type(A)=2*3*3=18
          • típus : 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
          • prímszámok: 1 2 3 5 7 11 13 17 19 23 29 31 37 39 41 43 47 53 59
    • A visszaállítás menete: a kontúr "értékének" prímszámokra való bontása.
      • pl. A=413 --> =7*59 -->4-es és 18-as típusú kontúrok vannak benne.
      • a 4-es típusú csakis 2 db 1-es típusúból állhat elő, stb.
  • geometriai leírás:
    • struktúravektorból származtatható?, lásd ott

17. Invariáns makrojellemzők

  • meghatározhatók Fourier-transzformációval
  • Feldolgozás általános lépései
    • 1. lépés: kontúr menti újra mintavételezéssel a digitalizálás "zaja" kiszedhető
    • 2. lépés: Fourier transzformáció
    • 3. lépés: szűrés frekvencia/térbeli tartományban - pl. nagy rendszámú együttható elhagyása
    • 4. lépés: alakegyütthatók - kontúrok invariáns alak jellemzőinek meghatározása
  • *Alkalmazhatósági feltétel*: az információ zöme a régió határra, a kontúr alakjában koncentrálódjon (pl. a régión belüli textúra ne legyen releváns)

18. Orvosi képek tömörítése iránti igény (miért?, hogyan?)

  • fontos pl. képi adatbázisok, telediagnosztika, elektronikus páciens adatok portabilitása miatt
  • tömörítsünk, DE meg kell őrizni a részleteket: egyes alkalmazásoknál (pl. mammográfiás felvételek) a lokális részletek (mikro-kalcifikációk) alapvető fontosságúak!
  • ebből következően célszerű alkalmazás-specifikus algoritmusokat használni
  • esetleg -- szintén alkalmazástól függően -- az 'érdekes' részeket veszteségmentese, az 'érdektelen' részeket veszteségesen kódolhatjuk

19. JPEG

  • "Joint Photographic Expert Group"
  • veszteséges, veszteségmentes
  • intraframe (képbeli) kódolás
  • "jó" természetes képekre, kevésbé jó szövegre, vonalas ábrákra
  • DCT-t használ (diszkrét koszínusz transzformáció)
    • hasonlóan a DFT-hez (diszkrét Fourier) tértranszformáció, de kevesebb koefficienssel jobb közelítést ad

* a DCT-koefficiensek valós értékűek, szemben a DFT komplex értékeivel

  • 8x8-as blokkonként DCT
  • blokkon belül zig-zag szkennelés
    • hogy miért? -- alacsonyfrekvenciás koefficiensek a vektor elejére kerülnek

* 8x8 => 1x64 vektor

20. Vektorkvantálás

  • a vektorkvantálás a négyszintű modellből (pixel-blokk-kontextus-tartalom szint) a blokkszinten működik
  • egy-egy blokkot a szótárban található hozzá legközelebbi szomszédjával helyettesítünk, majd ennek az indexét tároljuk
  • dekódoláskor a szótárban keressük az indexet, majd helyreállítjuk a blokkot
  • ha fel tudjuk osztani a képet 'érdekes' és 'nem érdekes' részekre, az adaptív blokkméret nagyon jó eredményre vezethet!
  • átvitel zajos csatornán:
    • a hibásan átvitt indexek miatt egy-egy átviteli hiba nagyon látványos blokk-hibát eredményez a képen

* ennek elkerülésére a szótárt tartsuk rendezetten (pl. Kohonen-háló)

  • kontextus szinten véges állapotú vektorkvantálást (Finite State VQ, FSVQ) használhatunk
    • ekkor az adott helyre a szótárnak csak az előző blokkok ismeretében szóbajöhető rész-szótárból választunk indexet