[#KINECTSDK] Update for Kinect Developer Toolkit 1.5.1

image

Buenas,

a simple and quick news from Redmond, has released an update for the ToolKit for developers in the SDK Kinect. It contains among other things an important actulización for Kinect Studio (of which spoke here) and improvements to the documentation, etc.

Worth download it and update it

Source: http://blogs.msdn.com/b/kinectforwindows/archive/2012/06/18/kinect-for-windows-developer-toolkit-update-v1-5-1.aspx

Saludos @ Home

El Bruno

image image image
Advertisements

[#KINECTSDK] HowTo: Use Kinect Studio to record and play a Kinect session

image

Buenas,

all those who develop applications with Kinect we know that heavier than this type of development is the way trial/error that you see facing. I.e., while the Kinect is a camera that detects people, each of the tests you want to do requires that you wear stand in front of the sensor and do the routine of the day. On occasions where things are not going so smooth as you would, so you get get up from the Chair several times per hour.

With the advent of version 1.5 of Kinect SDK, we have a new tool called Kinect Studio coming to save us this problem. Operation that has is very simple: it allows you to record a session with the kinect and then play the same times as necessary.

For this the first thing we see in its interface is a bar of recording and reproduction.

image

When we launched the application or if we pressed the button connect we will see that we have a list with all those processes that are accessing the sensor. The next step is to connect to this process and we can already begin to burn.

image

Once we’ve recorded a session with our sensor we can see it in the application. We will see the time that owns the recording and can guardala for use again. A fact to keep in mind is that the recordings are somewhat large size, for example a recording of ~ 10 seconds is stored in a file of approximately 350 MBs.

image

As well, now comes the best. If we want to play the test again in our application, we must only connect the same (in the status bar below see it is already connected) and to give the play see how our application receives data about the Kinect, no one made the monkey with the sensor.

image

At any time we can pause the playback, stop it or even put a way repetition that will allow us to merge our application process times.

And another detail to take into account, at any time have the possibility to see the view of the camera, the sensor of depth and a very vistozo 3D viewer to view data that is processing the Kinect.

image

Well, today I do not have time, but for the next, I promise you a video showing the Kinect Studio.

Saludos @ Home

El Bruno

image image image

[#TFSERVICE] Team Foundation Server has been released and now is free! (not for ever ;)

image

Buenas,

today had other things than write but this post from Brian Harry does to change the direction for a few minutes.The news is very quick to understand

Team Foundation Service (TFS on the Cloud) is now available so that anyone can test it. So you know, go tohttp://tfspreview.com/ and you get a trial account for now which is free.

As some will ask if this will be free for ever, because the answer is not. The licensing model is not yet closed, but initially there will be a model of free licensing and measured that add features, because it requeriran more €uros to pay them.

I’m quite happy with Team Foundation Service, now that in addition we can connect also from VS2008 well look, the growing family fits in a room not so tight.

Because well, there in the home are many shortcuts to material training, questions, etc. that help and much to start working.

Source: http://blogs.msdn.com/b/bharry/archive/2012/06/11/team-foundation-service-preview-is-public.aspx

Saludos @ Home

El Bruno

image image image

[# TFS11] VS2008 and TFS11? Oh Yeah Baby!

image

Buenas,

because lighter than water. So far couldn’t connect to TFS11 or Team Foundation Service (TFS on the cloud) using Visual Studio 2012 or Visual Studio 2010. Yesterday the great Brian Harry, says in this post we can already do the same from Visual Studio 2008. For this we have to apply this update on Visual Studio 2008 SP1.

Download; http://support.Microsoft.com/kb/2673642

Reference: http://blogs.msdn.com/b/bharry/archive/2012/06/09/update-for-vs-2008-and-tfs-11.aspx

Saludos @ Home

El Bruno

image image image

[# VS2012] HowTo: Convert to lowercase the menus in Visual Studio 2012

image

Buenas,

small tip from Saturday. If the second wrong makes you view in Visual Studio 2012 are the menus in uppercase, here you have a trick to change them

image

You just have to add an entry in the register.[HKEY_CURRENT_USER\Software\Microsoft\VisualStudio\11.0\General] create an entry of type DWord (32-bit) with the name [SuppressUppercaseConversion] and value = 1

image

Once added the entry, and restarted Visual Studio already only you ache the same icon.

image

Saludos @ Home

El Bruno

image image image

[#VS2012] Some improvements when you protect code against TFS in #VS2012

image

Buenas,

Now that I have done work (almost in extremis!) the facial for Windows Phone recognition but with Visual Studio 2010, I get to return to Visual Studio 2012 and talk a bit about the improvements that we have in this case when we do a CheckIn.

One of the most annoying things that we had at the time of a CheckIn is the association with WorkItems, and I say annoying because if we have many elements working for right of entry to which seek was a bit complicated so far.

Now with VS2012 friends from Redmond will have turned a little and have improved a poquillo.We now have the ability to mark consultations of WorkItems as Favorites and have them at hand within Team Explorer.

image

Then at the time of change in view of Pending Changes we have the following options to choose the corresponding WorkItems:

  • Enter the ID of the same
  • Drag and drop from the result of a query

For the 2nd option we had to return to the view of WorkItems, select the query, etc. Now we have in the Queries drop-down our favorite hand and voila! in 2 seconds we can already reach the WorkItem that we want.

image

By the way, this is not subject to any version of TFS, works as part of the IDE of Visual Studio 2012 with what can be also used with TFS2010.

 

Saludos @ Home

El Bruno

image image image

[# VS2012] There are many rumors about VS2012 and WP but less news than on the location of Atlantis

image

Buenas,

Disclaimer: When I wrote this post I was not at my 100% mental level. Thanks to @wasat I got more information and I still wait for some cool tools Open-mouthed smile

I do not understand very well that are passed by the head to our friends of MS with regard to development of Windows 8, Windows Phone and Visual Studio 2012 tools. VS11 Developer Preview and VS11 Beta versions, half who understood that the extensions might not exist to develop for WP but with a final version, they are not… scares me a little.

Once more have to be installed Side-By-Side VS2010 and VS2012 RC to be able to pull a few lines on WP… Worst thing is that neither seems to be much official information on dates of release, roadmap, etc. Except this thread of StackOverflow and a couple of articles, there is nothing of nothing…

Anger again… Angry smile

Saludos @ Home

El Bruno

image image image

[#EVENT] 2ND CODING DOJO OF MADNUG

image

Buenas,

After the good that we had in our first dojo and before the holidays arrive, we bring you the second edition which will go up a little level. For this occasion we will do the Randori modality:
The problem will be solve programming partner. (Pair Programming).
All attendees can help the couple.
Each couple will have 10 minutes to make progress in the solution of the kata using TDD.
At the end of the 10 minutes, the driver of the couple returns to the public, the co-pilot becomes driver and enters someone from the public as co-pilot.
As always the most important thing is to have fun, and this time you need.
The only thing you bring with you is your laptop and wanted to learn and influence.

Registry: https://msevents.microsoft.com/CUI/EventDetail.aspx?EventID = 1032515429 & Culture = en-us

Saludos @ Home

El Bruno

image image image

[#KINECTSDK] HowTo: Use Kinect as a green screen (III) Source Code

image

Buenas,

there are several people who have asked me the code source of the implementing screen green with Kinect, so here it is http://sdrv.Ms/KuC9Uz

And of course the previous post

image

 

Saludos @ Home

El Bruno

image image image

[#KINECTSDK] HowTo: Use Kinect as a green screen (II)

image

Buenas,

This is the 2nd part of the post where I show you how to use the House of Kinect as a green screen to plant our body image… then wherever we want.

In the previous post was an important part of analyzing that it was the process of each frame of the skeleton, camera and depth sensor.

   1: void SensorAllFramesReady(object sender, AllFramesReadyEventArgs e)

   2: {

   3:     if (_sensor == null) return;

   4:     var hasDepth = false;

   5:     var hasColor = false;

   6:     hasDepth = GetDepthFrame(e);

   7:     hasColor = GetColorFrame(e);

   8:     ProcessDepthFrame(hasDepth);

   9:     ProcessColorFrame(hasColor);

  10: }

As we shall see in the following code, the GetDepthFrame and GetColorFrame functions validate that we own camera and depth sensor, correct information before giving the process as valid.

Then the function ProcessDepthFrame undertakes a mapping of the points in the array of the camera and the array of the depth sensor that gives as a result an array where at each point know, information from the camera, away from the same sensor, if it relates to a player and also we link also it with a joint in the skeleton.

With this information, in the 2nd function ProcessColorFrame already can paint on bitmap for the background image, only the body of each player and leave the other bits in transparent mode.

   1: private void ProcessColorFrame(bool hasColor)

   2: {

   3:     if (!hasColor) return;

   4:     // Write the pixel data into our bitmap

   5:     _colorBitmap.WritePixels(new Int32Rect(0, 0, _colorBitmap.PixelWidth, _colorBitmap.PixelHeight), _colorPixels,

   6:                              _colorBitmap.PixelWidth*sizeof (int), 0);

   7:  

   8:     if (_playerOpacityMaskImage == null)

   9:     {

  10:         _playerOpacityMaskImage = new WriteableBitmap(_depthWidth, _depthHeight, 96, 96, PixelFormats.Bgra32, null);

  11:         imgMask.OpacityMask = new ImageBrush

  12:                                   {

  13:                                       ImageSource = _playerOpacityMaskImage

  14:                                   };

  15:     }

  16:  

  17:     _playerOpacityMaskImage.WritePixels(new Int32Rect(0, 0, _depthWidth, _depthHeight), _greenScreenPixelData,

  18:                                         _depthWidth*((_playerOpacityMaskImage.Format.BitsPerPixel + 7)/8), 0);

  19: }

  20:  

  21: private void ProcessDepthFrame(bool hasDepth)

  22: {

  23:     if (hasDepth)

  24:     {

  25:         _sensor.MapDepthFrameToColorFrame(DepthImageFormat.Resolution320x240Fps30, _depthPixels,

  26:                                           ColorImageFormat.RgbResolution640x480Fps30, _colorCoordinates);

  27:  

  28:         Array.Clear(_greenScreenPixelData, 0, _greenScreenPixelData.Length);

  29:  

  30:         for (var y = 0; y < _depthHeight; ++y)

  31:         {

  32:             for (var x = 0; x < _depthWidth; ++x)

  33:             {

  34:                 var depthIndex = x + (y*_depthWidth);

  35:                 var depthPixel = _depthPixels[depthIndex];

  36:                 var player = depthPixel & DepthImageFrame.PlayerIndexBitmask;

  37:                 if (player <= 0) continue;

  38:  

  39:                 var colorImagePoint = _colorCoordinates[depthIndex];

  40:                 var colorInDepthX = colorImagePoint.X/_colorToDepthDivisor;

  41:                 var colorInDepthY = colorImagePoint.Y/_colorToDepthDivisor;

  42:                 if (colorInDepthX <= 0 || colorInDepthX >= _depthWidth || colorInDepthY < 0 ||

  43:                     colorInDepthY >= _depthHeight) continue;

  44:                 var greenScreenIndex = colorInDepthX + (colorInDepthY*_depthWidth);

  45:                 _greenScreenPixelData[greenScreenIndex] = OpaquePixelValue;

  46:                 _greenScreenPixelData[greenScreenIndex - 1] = OpaquePixelValue;

  47:             }

  48:         }

  49:     }

  50: }

  51:  

  52: private bool GetColorFrame(AllFramesReadyEventArgs e)

  53: {

  54:     bool hasColor;

  55:     using (var colorFrame = e.OpenColorImageFrame())

  56:     {

  57:         if (colorFrame != null)

  58:         {

  59:             colorFrame.CopyPixelDataTo(_colorPixels);

  60:             hasColor = true;

  61:         }

  62:     }

  63:     return hasColor;

  64: }

  65:  

  66: private bool GetDepthFrame(AllFramesReadyEventArgs e)

  67: {

  68:     bool hasDepth;

  69:     using (var depthFrame = e.OpenDepthImageFrame())

  70:     {

  71:         if (depthFrame != null)

  72:         {

  73:             depthFrame.CopyPixelDataTo(_depthPixels);

  74:             hasDepth = true;

  75:         }

  76:     }

  77:     return hasDepth;

  78: }

Now if they have simplified you Risa

 

Saludos @ Home

El Bruno

image image image