Archive for the ‘Dutch’ Category

Tuesday, May 16th, 2006

Afronding

Ziezo…

Mijn thesis is afgerond! Ondertussen heeft de thesis een nieuwe naam:

Textuursynthese met Tegelingen

Vandaag werd de tekst gedrukt en morgen geef ik ze af. In de komende weken zal ik dan een presentatie geven over het onderwerp. Er moet alsook een cd-rom afgegeven worden met alle materiaal erop.

  • Ik zou graag iedereen willen bedanken die aan deze thesis hebben geholpen!
  • Hopelijk wordt deze thesis met een goed punt beoordeeld.
  • Op naar de laatste examens!
Tuesday, April 18th, 2006

Tease

Tease

Wednesday, March 29th, 2006

Sizing does matter!

Begin deze week heb ik de bug verholpen die verhinderde grotere afbeeldingen te synthetiseren. Bleek dat het een oude matrix die geïnitialiseerd werd, waardoor er een array ontstond van over 200 miljoen elementen. Dat gaf een klein foutje :p

Nu, eens die bug verholpen, kon ik onder andere dit uitbrengen:
strerry (256/32/30)* Het geeft met andere woorden, geen slechte resultaten, maar het kan beter!

Daarom heb ik vandaag de multilevel synthesis geïmplementeerd, waar men begint met kleine resolutie afbeeldingen en deze ingeeft als bron voor hun grotere varianten. Dit terwijl de neighborhood grootte ook varieert! En dit geeft verbluffende resultaten!!

De tijden voor deze resultaten varieren tussen de 4 en 15 minuten voor 36 iteraties, telkens met dezelfde levels! De eerste 30 iteraties zijn telkens onder de 20 minuten en geven resultaten gelijkwaardig aan de niet variabele versies! Enkel de text-test geeft nog wat vervelende resultaten, ik denk dat dit aan de energiefunctie kan liggen! Misschien vind ik dit nog!

Allezins veelbelovende resultaten!! Ik kan nu gaan beginnen met het integreren van de tilepacking! Hopen dat dit ook lukt!

In ander nieuws: mijn proefpresentatie zal plaatsvinden op woensdag 19 april tussen 14h en 16h te 200B. Wish me luck!

*(output size / neighborhood size / #iteraties)

Friday, March 24th, 2006

Animateratie

Hier is een eerste animateratie of hoe 10 iteraties en 23 minuten render tijd wat kunnen opleveren!

Bron                           Animateratie
Bron afbeelding Animateratie

En nu… snelheid…

UPDATE:
anderhalve minuut voor 30 frames:
stone1, jellybeans1, graphcut1

Wat blijft er nu nog te doen?

  • Slim eindigen van iteraties
  • Bug verhelpen dat grotere frames dan de source frame niet toelaat

Maar dat is voor later! Slaapwel !

Thursday, March 23rd, 2006

Matrices en Images

En we are back in business!!

Via een tip van mijn assistent, heb ik gevonden hoe ik mijn linear system of equations kan opstellen. Deze was namelijk te vinden in het PHD thesis van Kwatra! Na een week van studie op die thesis, kon ik dus deze week beginnen aan de implementatie. JOY!!

Eerst moest ik een matrix library vinden. Na heel wat zoeken, ben ik op een fantastische vergelijkingspagina terecht gekomen. Het is een echte aanrader! Eerst wat zitten knoeien met MTL en ITL, en hoewel deze erg goed leken, wou deze zelfs na verscheidene malen proberen, niet compileren in VS.NET! :-(

Uiteindelijk ben ik dus terecht gekomen bij de newmat library! Alles ging vlot tot ik een matrix vermenigvuldiging probeerde! Deze duurde voor 256*4096 (en dat was dan een kleine afbeelding) anderhalve minuut!!! En als je dan weet dat deze 256 keer of meer in de eerste iteratie van het algoritme zou voorkomen, dan kan je al 6 en half uur wachten voor een iteratie!! Net iets te lang dus! Na bespreking met de auteur, mijn begeleider en enkele vrienden, heb ik de methode wat aangepast, zonder matrix vermingvuldigingen en nu duurt een iteratie een fractie van een seconde!!! Als output krijg ik wel nog rubbish:

Bron                           Output
Bron afbeelding  Output afbeelding

Maar ik zit in alle geval terug in de goede richting!! HALLELUJA!

Nog enkele dankwoordjes:

  • Dank aan Björn-Ove Heimsund voor de vergelijkingspagina tip!
  • Dank aan de MTL en ITL mailing list!
  • Dank aan Robert Davies, de maker van newmat, voor de tips en het snel antwoorden op mijn emails!
  • Dank aan Nele en Chris voor het testen van matrices in Java en Fortran! :-p
  • En zoals altijd thx Ares voor de tips!
Thursday, March 9th, 2006

Linear System of Equations

Momenteel zit ik diep in de paper Texture Optimization for Example-Based Synthesis van Kwatra et all, meer bepaald met het pseudo algoritme te ontcijferen en te vertalen naar practische code. En het is daar dat het schoentje wringt. Ik begrijp hoe het algoritme in zijn werk gaat, maar nu moet ik dit gaan implementeren. Dit lijntje is momenteel de nagel van mijn doodskist:

xn+1 = argminx Et(x;{znp})

Dit is een minimalisatie probleem van de energie functie naar x. Het zou een stelsel vergelijkingen opleveren waaruit ik dan de minimale x kan halen. Hier zit ik vast. Hoe ik dit naar code kan omzetten. Ik ben aan het lezen in Numerical Recipes in C, maar vind nog geen afdoende oplossing. Hopelijk vind ik die vlug, want de tijd begint te dringen. Indien ik deze paper kan implementeren, kan ik aan het laatste vraagstuk beginnen, nl. het opstellen van tilepack (in omega-formaat) op zulk manier dat ik een quasi perfect beeld verkrijg. Veel stof dus!

Monday, February 27th, 2006

Expected Gentiles Maximization

Afgelopen week is gentiles dus upgedate, deze update omvat:

  • herwerking code
  • meerdere iteraties
  • error threshold
  • pacth transformaties

Deze week zal voorbestemd zijn aan het lezen van wat papers om te zien wat ik kan doen voor deel 2. Momenteel ben ik met Texture Optimization for Example-based Synthesis aan het bestuderen. Een techniek die werkt met Expectation Maximization te vinden in Machine Learning praktijken. Deze methode heeft mooie resultaten, ik ben aan het zien of ik deze voor tiles kan gebruiken, en zoja, hoe?

Sunday, February 19th, 2006

Episode 2

Hey everyone,

We zijn in het tweede semester, dus nog 3 maanden en het eindwerk moet af! Het begint te komen! Ik ben al een twee weken terug bezig met er in te komen, en heb al wat herschreven. Afgelopen vrijdag was er meeting met mijn begeleider. Ik moet nog wat meer eigen uitbreidingen in het project stoppen. Of althans voorbereidend werk. Ares stelde “3D-tiles” voor, maar ik moest nog wat zien of er nog andere mogelijkheden zijn. Deze week ga ik proberen gentiles up te graden, en gentext aan te passen.

Morgen krijg ik ook de uitslagen van vorige semester. Spannend! Dit semester is echter een zwaar semester, dus ik hoop alles rond te krijgen!

Sunday, January 15th, 2006

Happy 2006!

We zijn dus in 2006! Mijn laatste jaar als student licentiaat informatica in Leuven, als alles goed verloopt allezins! Dit is ook het jaar waarin dit eindwerk moet worden afgewerkt, meer bepaald: 15 mei 2006! Voorlopig zit ik goed op schema, alles wat moest gedaan worden, is af! De grote stukken implementatie zijn dus af!

Momenteel zit ik in examenperiode. Morgen is er mijn eerste examen: veilige software! Keep your fingers crossed! De examens eindigen 3 februari en het tweede deel zal dus daar ergens beginnen. Meer informatie binnen 3 weken dus!

Ondertussen als geschenkje, heb ik mijn blog naar versie 2 upgedate! Alles werkt goed, en ziet er piekfijn uit!

Veel succes aan onze blokkende medemensen!

Wednesday, December 21st, 2005

Wang viewing

Vanmiddag had ik mijn tweede presentatie over mijn thesis. Ik heb hieruit enkele waardevolle dingen uitgeleerd.
Enerzijds waarom juist een tilepacking nodig is en niet een tiling met alle tiles erin. Dit komt omdat de viewer mipmapping gebruikt. Als ik een gewone tiling gebruik, krijg ik artifacts bij het vergroten en verkleinen. Zonder mipmapping zou dit probleem niet voorvallen!
Anderzijds gaf mijn begeleider de terechte opmerking dat mijn wang viewer, die ik tijdens het voorbereiden van mijn presentatie had geïmplementeerd, niet totaal random was.

Duidelijk herhaling merkbaar!

Deze herhalingen was ik compleet uit het oog verloren, aangezien ik enkel gekeken had naar de correctheid van de tegeling. Op de presentatie werd mij duidelijk dat deze verre van random was. Eens thuis heb ik dit op 5 minuutjes opgelost door middel van een catmap. (10 tekens meer :p)

Wel random!!

Tijdens het tweede semester zal ik ook via andere methodes proberen om een geldige wang tiling in de viewer te krijgen. Ik denk onder andere aan het voorstel in het paper van Dutré en Lagae om met random hoekenparen te werken. Dit zou meer op de omega tiling methode moeten lijken. En eens zien of ik de waarde als texture kan doorgeven en wat de voordelen hiervan zijn inzage snelheid. Ook zal ik onderzoeken of ik een omega tilepack kan vinden zonder brute force!