JGUI

Ideas and projects for Microsoft Kinect in ®Windows

 

  • 16 Nov. 2011
    Post Traumatic Rehabilitation Training, part 3

    Interface and distances calculation

    At the beginning, Kinect measures the patient body sizes,
    then the program will calculate the requested distances to target point for exercises.
    Each time when patient reaches the point, re-calculation will progress some distances.

     

  • 15 Nov. 2011
    Post Traumatic Rehabilitation Training, part 2

    The first video preview under editing

    Kinect issues already resolved:

  • high resolution camera image, 1080 pixels
  • camera image in portrait orientation, in real time refreshing
  • connecting skeleton framwork with HD camera image
  • superimposing text, form, picture over camera image
  • text-to-speech feedbacks with user activity... obviously

     

  • 11 Nov. 2011
    Post Traumatic Rehabilitation Training, part 1

    This is a project created because of medical purposes.
    Kinect measures the range of limbs moving in post traumatic patients, then a special algorithm will compose
    to force patient exercises, and bring back, or improve their agility.

    This project will run on portrait large scale monitor, or 2 or 3 monitors in vertical order,
    because we need to display a full human body in large scale, maybe 1:1.

    Under developing:

  • construct fullscreen interface for high resolution camera image

     

  • 11 Nov. 2011
    To wake up the monitor screen

    I do use Kinect to wake up my monitor from sleeping (power down after screensaver).
    This must be done when Kinect recognizes someone's body in front of his camera view.

    Open SDK's Sample Skeletal Viewer project.

    Open NuiImpl.cpp file

    Find the line:

    if (pSkel->eSkeletonPositionTrackingState[i] != NUI_SKELETON_POSITION_NOT_TRACKED)
    This is the moment when Kinect recognizes the body and construct skeletal data ready to display.

    Add the following inside the above function:

    if (b_monitoroff) 
    {
    	b_monitoroff = false;
    	
    	// force monitor power up
    	SendMessage(HWND_BROADCAST, WM_SYSCOMMAND, SC_MONITORPOWER, (LPARAM)-1);
    }
    
    Of course, declare: bool b_monitoroff; in the beginning of SkeletalViewer.h

    Open SkeletalViewer.cpp

    Find the main window (dialog) route function and add:

    case WM_SYSCOMMAND:
    	switch (wParam)
    	{
    		case (SC_MONITORPOWER):
    			else if (lParam!=-1 && !b_monitoroff)
    			{
    				// monitor power gone down
    				b_monitoroff = true;
    			}
    			break;
    		default:
    			return 0;
    	}
    	break;
    
    That's all! From now, when you monitor gone down (with or without screensaver),
    then when you will step beside Kinect camera, after a while the monitor will wake up.

    You can even add some feedback, sound or something on the screen, to inform user about such event.
    But there is small catch, depend from your Windows installation, and monitor type, there will some delay
    between the moment when Kinect recognized you and the monitor displays up.
    You cannot do anything additional after SendMessage(HWND_BROADCAST...
    because it's inside skeletal refreshing loop. But just use there: SetTimer(m_hWnd, 1, 100, NULL);
    and start to do something there when the timer will count down. I do some text-to-speech "Hello..." there.

    In the same idea I want to keep my monitor on, while I use Kinect. I'm sure you know pretty well, how to do so.
    If not: just send some keyboard event message every few seconds, right from the above code.

    This snippet of code is discussed social.msdn.microsoft.com

     

  • 07 Nov. 2011
    Microsoft Kinect SDK Beta

    Microsoft published Kinect SDK Beta2.
    I think this is a good moment to back to my projects for Kinect. Seriously from now.

    You can download and install: http://kinectforwindows.org/

    To make your own software, you need also DirectX SDK, Visual Studio 2010, or Express.

    To use other's software built on this Kinect SDK, you need at least DirectX runtime, Visual Studio runtime.

     

     


    Copyright © JGUI. All rights reserved. info@jgui.net

     
    Visit http://www.ipligence.com