33PVR – Počítačové vidění a virtuální realita – DU-03

Domácí úloha č.3: Umístění nového objektu do videosekvence nasnímané pohybující se kamerou

Zimní semestr 2009/2010.

Zadání

Vstup: Videosekvence scény se zdí.

Úkol: Po ručním zadání pozice na zdi v prvním snímku videosekvence umístěte automatizovaně do v±ech následujících snímků va±i fotografii. Fotografii umístěte na zeď zhruba na pozici nápisu UAS tak, aby zabírala celou vý±ku zdi.

+ =

Uzávěrka pro odevzdání

Zprávu spolu se zdrojovým kódem nahrajte v odpovídajícím formátu, viz. zde, do odevzdávacího systému do 16.12. 23:59.

Podrobnosti

Abychom byli schopni umístit fotografii vµdy na stejné místo na zdi, bude nutné sledovat pohyb označené části zdi během celé sekvence. K tomu vyuµijeme kódy, které jsme naprogramovali v minulých cvičeních.

Sledování pohybu zdi ve videosekvenci

  1. Definujme: Označme i-tý snímek videosekvence jako Ii a snímek následující Ij. Označme Li body, které leµí na zdi v obraze Ii.
  2. V prvním snímku videosekvnce (I1) vyznačíme (ručně) oblast zdi (Z).
  3. Ve snímcích I1 a I2 detekujeme rohy. Označme P1 a P2 mnoµinu bodů (rohů) detekovaných v obraze I1 a I2. Označme L1 mnoµinu bodů leµících uvnitř oblasti Z v obraze I1, tj. mnoµinu bodů leµících na zdi v prvním obraze.
  4. Pomocí metody z předchozího cvičení nalezneme homografii H1 svazující souřadný systém zdi v obraze I1 se souředným systémem zdi v obraze I2.
  5. Dále je třeba určit, které z bodů P2 leµí na zdi, tj. určit L2. To můµeme udělat tak, µe body P1 transformuje nalezenou homografií H1. Mnoµinu L2 budou tvořit v±echny body z P2, které leµí blízko některého z bodů H1*P1.
  6. Při určovná homografie svazující následující dvojice obrazů postupujeme obdobně. Pro určení homografie Hi svazující souřadný systém i-tého snímku (Ii) s následujícím (Ij) pouµijeme body Li a body Pj detekované ve snímku Ij. Tedy: Li, Pj => Hi.
  7. Obdobně, mnoµinu Lj budou tvořit v±echny body z Pj, které leµí blízko některého z bodů Hi*Pi.

Poznámka

Pokud bude pohyb kamery malý nebo µádný (coµ nastává ke konci sekvence), nebude podmínka popsaná v bodech 5-7 k určení Lj stačit. V±echny body v obraze budou v takovém případě nalezené homografii vyhovovat. Doporučujeme tedy k podmínce z bodů 5-7 přidat doplňující podmínku na výběr bodů vymezených přímkami omezujícími vr±ek a spodek zdi.

Jsou-li p1 a p2 (p3 a p4) homogenní souřadnice bodů, budou homogenní souřadnice přímky jimi určené rovny:

Dále platí:

Je-li l1 homogenní souřadnice přímky, H matice homografie, potom obraz přímky l spočítáme podle:

Důkaz:

Pokud chceme zachovat orientaci l1 vzhledem k p1 a p2, je nutno matici homografie normalizovat (vynásobit konstantou), tak aby prvek (3,3) byl kladný.

Určení pozice pro vloµení fotografie

  1. V prvním snímku sekvence označíme (ručně) na zdi pozici čtyř bodů Q, které mají odpovídat pozici rohů vkládané fotografie.
  2. Transformace fotografie vkládané do prvního obrázku sekvence je daná homografií H0, která je učená korespondencí bodů Q vyznačených ve scéně a rohů fotografie v jejím původním souřadném systému.
  3. Je-li Hi homografie svazující souřadný systém zdi v i-tém obrázku sekvence se souřadným systémem zdi v následujícím obrázku, je transformace fotografie vkládané do i-tého obrázku určená homografí Hi*...*H2*H1*H0.

Maskování zákrytů

Ke konci sekvence se před zdí pohybují pánové zrovna v místech kam chceme vloµit fotografii. Aby byl filmový trik dokonalý, je třeba zařídit, aby byla fotografie vloµena pouze do míst, která pánové nezakrývají.

+ + =

K tomu nám poslouµí maska, kterou získáme např. oprahováním rozdílu mezi prvním snímkem, na kterém je zeď vidět celá, a snímkem do kterého právě vkládáme fotografii. Jak toto optimálně provést popisuje samostatný dokument.

Trénovací data: zde.

Způsob odevzdání

Protoµe obrázky mohou být veliké, do závěrečné zprávy vloµte pouze zpracované snímky č. 0, 200, 400, 600, 800 a 980. Dále někam na web umístěte v±echny zpracované snímky a do zprávy vloµte příslu±ný odkaz.

Bonus

Jak jste si v±imli, sekvence obrázků obsahuje pouze kaµdý desátý snímek. Na stránce s daty je v±ak také AVI soubor. Kdo zpracuje video celé a do zprávy vloµí odkaz na AVI soubor s výslednou sekvencí, získává 2b navíc.

K převedení AVI na sekvenci obrázků poslouµí program VirtualDub (File/Export/Image Sequence). K vytvoření AVI poslouµí také VirtualDub, stačí otevřít první obrázek sekvence, potom zvolit kodek (Video/Compression) a uloµit jako AVI (File/Save as Avi).

Odkazy

Časový harmonogram

Tato úloha se můµe zdát být jednodu±±í, neµ předchozí dvě, protoµe v±echny základní bloky jiµ máte připraveny. Její sloµitost spočívá v sestaveníD:\Documents\Tex\pvr-seq jednotlivých bloků do funkčního celku a vyladění různých parametrů programu, proto domácí práci rozhodně nepodceňte.

  1. Během 9. a 10. týdne (tj. cvičení 19.11. a 26.11) byste měli mít hotové sledování zdi a vloµení fotografie (bez maskování popředí).
  2. Během 11. a 12. týdne (tj. cvičení 3.12. a 10.12) byste měli dokončit vkládání fotografie vč. vymaskování pánů v popředí.

Tím budete mít dostatek času na sepsání zprávy. Kdo bude rychlej±í, tím lépe pro něj.

Parametry pouľité vyučujícím

Zde je popis nastavení parametrů pouľitých vyučujícím.

Poslední změna 20. 12. 2009