Mooie resultaten met weinig moeite: Dieptemappen met stroke-based invoer

Details

Author: Patrik Goorts

Supervisor: Philippe Bekaert

Mentors: Mark Gerrits and Bert de Decker

Language: Dutch

Year: 2009

Link: http://patrikgoorts.com/Publications/Thesis%20Goorts%20Patrik%20-%20Dieptemappen%20met%20stroke-based%20invoer.pdf

Bibtex

@mastersthesis{goorts2009depthmaps,
title={{Mooie resultaten met weinig moeite: Dieptemappen met stroke-based invoer}},
author={Goorts, Patrik and De Decker, Bert and Gerrits, Mark and Bekaert, Philippe},
month={June},
school={Universiteit Hasselt},
year={2009}
}

Abstract

In deze thesis wordt het omzetten van 2D afbeeldingen naar 3D afbeeldingen onderzocht, meer bepaald het omzetten naar een dieptemap. Dit is een grijswaardeafbeelding, waarbij elke pixel een diepte van de overeenkomstige pixel voorstelt. De dieptemap wordt berekend met behulp van extra invoer van de gebruiker. Deze kan strokes tekenen op de afbeelding die de eigenschappen op deze plaats aangeeft, bijvoorbeeld absolute diepte of oriëntatie. De oplossing wordt bekomen door voor een gegenereerde oplossing te berekenen hoe fout deze is, gegeven de strokes van de gebruiker. Door deze fout iteratief te verminderen, kan een oplossing berekend worden.

In het eerste deel wordt een literatuurstudie gemaakt over het maken van dieptemappen door het annoteren van afbeeldingen. Er wordt gekeken naar technieken voor het minimaliseren van functies, met aandacht voor het minimaliseren via graph cuts. Enkele graph cut algoritmen worden besproken. Als tweede worden toepassingen behandeld die gebruik maken van annotaties op afbeeldingen, zoals het inkleuren, herbelichten en corrigeren van afbeeldingen en het segmenteren in lagen. Deze toepassingen maken vaak gebruik van de besproken minimalisatietechnieken. Als derde worden algoritmen besproken voor het maken van dieptemappen en modellen. Deze bevatten stereo afbeeldingen, afbeeldingen met speciale belichting, . . . . Tenslotte wordt gekeken naar het creëren van dieptemappen met invoer van de gebruiker. Deze technieken zijn momenteel nog jong en er zijn veel uitbreidingen mogelijk.

In het tweede deel wordt een nieuwe methode voorgesteld. In deze methode kan de gebruiker strokes tekenen op een afbeelding. Deze strokes stellen absolute diepte voor of een oriëntatie. Deze strokes worden vervolgens gepropageerd naar de rest van de pixels in hetzelfde segment in de afbeelding. De gebruiker kan verschillende dieptes tekenen in één segment, zodat er ook gradiënten getekend kunnen worden in plaats van alleen lijnen van één kleur. Dit soort invoer is nog niet eerder gebruikt.

Voor een bepaalde dieptemap kunnen we nu berekenen hoe fout deze is. Deze fout noemt men de energie en moet zo minimaal mogelijk zijn. Het berekenen van deze energie gebeurt met behulp van de afbeelding, de ingegeven strokes en extra berekende informatie. Deze informatie bestaat uit de randen in de afbeelding en de afstand tot de dichtsbijzijnde stroke. De randen zijn nodig om de afbeelding in te delen in segmenten. Er worden geen absolute randen gebruikt, maar een kans op een rand, zodat ook vage randen worden herkend. De afstanden zijn nodig als er verschillende dieptes zijn getekend in één segment.

Gegeven deze informatie, kan er een nieuwe dieptemap berekend worden. Dit gebeurt door iteratief pixels van diepte te wisselen totdat er geen pixels meer gewisseld kunnen worden. Om te bepalen welke pixels mogen wisselen, wordt de afbeelding voorgesteld als een gelabelde graaf met twee extra knopen die twee verschillende dieptes voorstellen. De labels op de bogen staan in functie van de energiefunctie. Door het berekenen van een min-cut van de graaf zullen de pixels in twee groepen worden gedeeld, waarbij elke knoop bij één van de twee dieptes hoort. Hieruit kan bepaald worden welke pixels van dieptewaarde kunnen wisselen. Door dit repetitief voor elk paar dieptes te doen, zal er een optimale oplossing bekomen worden.