Showing posts with label English. Show all posts
Showing posts with label English. Show all posts
Apr 13, 2016
May 15, 2015
Lat's Play with OpenGL - 1
OpenGL Introduction
OpenGL is graphic library for cross platform 3D graphics. This is same as Direct3D in directx library. There are many tutorials and example videos to learn OpenGL. In this post I am trying to make a short note to cover up most import points, I have learnt.
Glut
Glut is tool for creating windows and handling inputs. Use FreeGlut pre build libs for your projects.
Glew
This is openGL extension manager and lat us easily call openGL extensions without having declare DLL entry points.
May 10, 2015
Problem with Visual Studio Immediate Exit ?
Hello,
I have faced this problem many times. Specially in visual C++ programming.
Here, few things we can to avoid this issue.
I have faced this problem many times. Specially in visual C++ programming.
Here, few things we can to avoid this issue.
- Simple, cool way is press CTRL + F5. This is also known Debug-> Start without debugging.
- Add system("pause"); at the end of your code.
- This is also mentioned in many places over the web. Somehow I tested this on my Visual C++ console application and it wasn't work for me. I am leaving this to you for trying out...
properties -> configuration proprieties -> linker -> system
select CONSOLE(/SUBSYSTEM:CONSOLE) in subsystem option.
Also I have seen added logically correct coding tips end of the code. But according to me those looks like unprofessional !
while(1) { }
cin.get();
for(;;) ;
std::getchar();
May 27, 2012
Wiimote Head Tracking
This post is related with my undergraduate research. I am reading about human-computer interaction in a head oriented way. So I have to implement a head tracking system with wiimote. Here I am sharing my experience with 6DOF head tracking system. Try it...And Enjoy.. :)
I investigated vision based tracking and sensor based tracking with FreeTrack. Hope you may also helpful.
I utilized available head tracking APIs to implement the head tracking system.
Following were some APIs I have identified in literature review.
- Glove PIE emulator
- FaceTrackNoIR
- Wiimote Head Tracker
- FreeTrack
FreeTrack is a popular head tracking SDK which is
distributed under GPL. It has been used in large number of games, simulations and it has a good community support. Hence it is improving day by day and
requirement for the implementation has a good documentation. It uses several
vision based algorithms for head tracking. You can go through tutorials over there and it is quite easy to implement.
I investigated vision based tracking and sensor based tracking with FreeTrack. Hope you may also helpful.
Vision based tracking (Active maker)
In literature review I found that there are significant research studies have been conducted for active marker based tracking. Hence
I try to implement a head tracking system with four LED bulbs and for the
calibration. I used FreeTrack SDK. In this case I noted that tracking system is
fast and enough to emulate mouse function as shown in figure 1.
But this approach has lot of background limitations. See
figure 2.
According to figure 2. (a) and (b), several other locations
in the environment are detected as the marker points by the camera. This is
because several points are illuminated in the image due to lighter background.
Hence the position and orientation calculations are incorrect and getting unexpected
rotations when it is emulating in the virtual environment. Therefore this
system is limited to use in a darker environment.
And this system is heavily affected by the frame rate the camera
which is used to stream the images. If the camera has low frame rate (bellow 20
Fps), the head tracking system unable to capture quick head rotations (see
figure 2. (c)).
Sensor based tracking
Wiimote IR camara
has a good frame rate that is approximate to 120-160 Fps. Hence wii mote
tracking is really faster than vision based tracking where we used webcam for the
tracking system. Wiimote is capable for tracking up to 4 IR LEDs but here I focused on the different implementation setup. Most of the wiimote head tracking
systems are motivated by Jhoney Lee’s head tracking approach which wiimote
keeps stationary and a dynamic 2 LED sensor bar. It is only capable of 3DOF
tracking but here we proposed a novel way to 6DOF head tracking.
One limitation
of these systems is IR lights get invisible when rotating the head therefore wii
registered other LED in to the invisible point. Hence the calculation becomes incorrect
and user’s looking direction is messed due to wrong emulation. In this research
we proposed a model 3LEDs as it is enough to tack head position and orientation
simultaneously.
![]() |
| Figure 3: Hardware assembly for head tracking system |
According to figure 3, the hardware set up is easy to use
and it is not cumbersome as other head tracking systems. When using this system
user need to wear base ball cap and realistically look at here and there in the
virtual environment. As LED points are always in front to the wiimote I did
not encounter any LED invisibility problem. In this approach has no background
limitation as we encountered in vision based tracking system.
As mentioned earlier, wiimote should be placed in a proper
place as IR lights are fitting with wii resolution (1024x768).
![]() |
| Figure 5: Wiimote placement - bird's view |
Here is the virtual environment we have used to test the
head tracking system.
![]() |
| Figure 6: Virtual environment for experiment with the head tracking system |
Challenges have to be overcome
- Tracking speed should be smooth with the view point movement in the virtual environment
- Mouse emulation is not realistic as actual mouse looking. This is because tracking system is unable to provide acceleration when moving head here and there.
These are several findings I have mentioned. Try it and extend it...I used this work in a virtual world based application area. If you gain any knowledge wrt my work, Please cite my publication at IEEE.
Subscribe to:
Posts (Atom)



