: [1]
   
: Code explanation  ( 5649 )
0 and 1 Guest are viewing this topic.
*
Karma: +0/-0
: 4
Offline Offline
« : January 13, 2008, 07:02:00 PM »

Hi, i just read a post about the math behind the whiteboard, and I too can't figure it out. I read the whole project code and I understand almost everything, except some particular C# stuff which I believe I can find in some tutorials. My problem is with the Warper.cs file.

I see the identity matrix is set and that the source matrix is formed with 4 points (x0,y0 through x3,y3) and I understand the matrix multiplication function , the thing is, I can't seem to figure out what does the computeSquareToQuad, computeQuadToSquare and warp functions do.

I believe they are supposed to translate the IR led's position to screen coordinates, am I right? can someone explain the math behind it or point me into the right direction to read some literature please?

I would like to study the possibility of using 2 Wiimotes, one on top and one sideways on the board so as to increase resolution but first I gotta see the math behind it.

Thanks a lot!
*
Karma: +2/-1
: 89
Offline Offline
« #1 : January 14, 2008, 09:53:53 AM »

... Isn't the source documentated?
Lol, you dont see that much.

wiipen
point ATM: building V2
V1: 1 LED on 1 AAA battery feed
V2: 1 LED on USB feed
V2 will be remodded too V3
V3: 1 LED on USB feed /w LMB and RMB
V4: 1 LED WIRELESS /w LMB and RMB
V5: we'll see :3
Vmany: Bluetooth IR pen with mouse functions.
*
Karma: +0/-0
: 4
Offline Offline
« #2 : January 14, 2008, 05:07:16 PM »

It is documented, but not the math parts. I just need to know roughly what's Warper.cs job inside the program, the particular math I can figure out. For example "Warper.cs will take a matrix with the IR points and multiply it with whatever to get a matrix with this and that characteristics so it can be mapped to the screen". Or something similar.
*
Karma: +1/-0
: 8
Offline Offline
« #3 : January 17, 2008, 11:10:12 AM »

As far as I can tell it uses a process called "pixel coordinate translation" using a stereo camera algorithm but with the Z(depth) component fixed. The use of stereo algorith gives a better output but is far more complex than a single camera translation. If you wanted to add a second remote control the warper.cs class would need to be changed considerably to accept parameters from both controls; also the maths may require more calibration points, depending on whether both cameras are lookingat the same screen or will they be used with a fixed depth (as is the case now) but to extend the whiteboard area.

*
Karma: +0/-0
: 4
Offline Offline
« #4 : January 23, 2008, 11:50:29 AM »

Hey, thanks a lot luke. I will look into this technique and post anything new that I can figure out.

Again, thanks a lot!
*
Karma: +0/-0
: 4
Offline Offline
« #5 : April 16, 2008, 08:21:40 AM »

Hello,

Anyone know about any document who explain the theory behind the calibration method that Johnny Lee uses? I've implemented the code in Delphi and that works great! But i really need to understand what the algebrics functions do... Excuse me for my english! :D

Thanks for help,

acosta11
: [1]
   
 
:  

Clicky Web Analytics