Sunday, January 30, 2011

DEPTH MAP RECONSTRUCTION USING GRAPH CUTS ALGORITHM FOR 3D MODELING

ABSTRACT

Depth map reconstruction is the most method in 3D modeling from 2D images, because depth map has depth information from the images. There are so many researchs about reconstruction images into 3D in different methods. This thesis developed a 3D modeling software using energy-based graph cuts algorithm that reconstructs depth map from six images, and models it in 3D space.
Three major step in this thesis are camera calibration, depth map reconstruction, and 3D modeling. Camera calibration method used to estimate intrinsic and extrinsic camera parameters that used to get correlation points in the depth map reconstruction process. Depth map reconstruction process was comparing the depth configuration that estimated before, with new depth value. Comparing process in depth map reconstruction solved by energy minimizing with graph cuts algorithm. The energy function that used was data and smoothness energy. 3D modeling method that used was triangle mesh and it implemented with OpenGL.
The result showed that the depth map which reconstructed is not good enough, it has 43.3% average error and 36.99 MSE. The average execution time in all conditions is about 310.03 detik using images of 320x240 pixels in 2GHz Intel Core2Duo processor and 2GB of RAM.


Friday, February 5, 2010

Numbers To Words Multi-Language On PHP

It's probably lots of them when u seacrh it. But it has some simplicity on it to add new knowledge about the spelling word of some x digits number.
To build this algorithm, it's important to recognizing the pattern of spelling words for some numbers.

212           =>   two hundred twelve
345867     =>   three hundred forty five thousand eight hundred sixty seven

By those numbers and the translation in words, It could conclude that : 
  • there is some exceptions in the pattern
    ex :    10 => ten            not    onety
             12 => twelve       not    ten two
             20 => twenty       not    twoty
    by this conclution the dictionary (knowledge) to build have to give the knowledgement about those exceptions
  • there id repetition pattern in word "hundred" before and after "thousand". For that reason, it could simplify to devide the algorithm that translate 3 digits numbers from the global algorithm that translate x digits numbers.
My implementation is write down below :

Friday, January 8, 2010

Resolving JQuery.validate as my necessary part:2

After the Resolving JQuery.validate as my necessary, It still have some trouble. When selecting the "0" value of "select" (* Dropdown in HTML), the highlight was appear ( the satisfied in the part 1 solution ), but it still appear when i had changing it with not "0" or "" value. Fiuh.....observing and debugging again in this JQuery.validation.

{ Indonesian version : http://faridjauhari.wordpress.com/2009/12/31/edit-jquery-validate-2/ }

Finally,...Gotcha.....

The solution is adding "onchange function" as the default action in the extends class, that will extend to any input (* HTML tag :< input /> ) in the form that applying the JQuery.validation.

Thursday, January 7, 2010

Resolving JQuery.validate as my necessary

In the original JQuery.validate, 'required' action consider that the empty value of select (* dropdown in HTML) is just "". Value "0" considered this value not empty, so the 'required' action of JQuery.validate doesn't take it.
My necessary is the 'required' action is taking action when the value of select (* dropdown in HTML) was "0".

{Indonesian version : http://faridjauhari.wordpress.com/2009/12/31/jquery-validate-customize/}

The solution is making some changes in the 'required' action in "prototype" class of JQuery.validate. You can observed the changes below :

Wednesday, January 6, 2010

Last KeyUp Event (JQuery)....

In some cases while developing web, I had an idea to optimize the validation. I think that was so wasting to check an input when keyup. Why spent many times to check if the result is the same as did it in one last time.
To get the last keyup, it have to delay the check process until the last keyup. To delay some process, we need timers. I prefer to use JQuery.timers, cause i have applying JQuery library before and the timers can be an object on the element.    

{Indonesian Version : http://faridjauhari.wordpress.com/2009/12/31/event-keyup-terakhir/}

This code is an example of my implementation :