woensdag 3 december 2008

Nieuwe mutaties

Omdat we caustic perturbations niet juist hebben gekregen, hebben we besloten om een ander type mutaties te gebruiken in ons algoritme. Deze mutaties staan beschreven in de volgende paper : A Simple and Robust Mutation Strategy for the Metropolis Light Transport Algorithm. Deze mutaties worden niet gedaan in de ruimte van paden, maar in de ruimte van random getallen.

Om dit te kunnen doen wordt een path eerst getransformeerd naar de ruimte van random getallen. Daarna worden de verkregen random getallen gemuteerd. Op het einde wordt de nieuwe reeks random getallen weer getransformeerd naar een path.

Het voordeel van deze nieuwe methode is dat ze zeer robuust en eenvoudig te implementeren is. Een groot bijkomend voordeel is dat de acceptance probability zeer gemakkelijk te bepalen is, wat bij caustic perturbations voor ons zeer moeilijk bleek te zijn. Het nadeel is dat elke mutatie opnieuw een geheel path moet construeren. Er is dus geen sprake van hergebruik van vorige paden, wat wel het geval was bij lens en caustic perturbations. Dit maakt deze methode inherent trager.

We hebben onze ERPT implementatie aangepast om ook dit nieuw type mutatie te gebruiken. Hieronder volgen een aantal resultaten :


Scene op (relatief) lage kwaliteit

De zelfde scene op hogere kwaliteit

De bunny scene met dit keer juiste caustics

Op deze afbeeldingen is ook te zien dat bepaalde nadelen, (zoals de vlekken in de hoeken van de box) grotendeels verdwenen zijn. Dit is te danken aan het feit dat nu de mutaties van dit soort paden ook een hoge acceptance probability krijgen. De paar vlekken die nog te zien zijn, zijn te wijten aan caustics.

Geen opmerkingen: