No Skeleton Tracking features using Kinect and Image Acquisition Toolbox
3 views (last 30 days)
Show older comments
Elio De Gani
on 31 Oct 2015
Commented: Alessandra Martinez
on 19 Jan 2023
Hi, I'm trying tu use Image Acquisition Toolbox and a Kinect V1 sensor to do Real Time skeleton tracking. But I have an Error, and I can't seem to find an answer on internet.So first of all this my code:
%Traqueur de Squelette
%Initialisation des variables
imaqreset;
Video = videoinput('kinect',1,'RGB_640x480'); %Video des Couleurs
Profondeurs = videoinput('kinect',2,'Depth_640x480'); %Video des Profondeurs
%Definition Trigger
triggerconfig(Profondeurs,'manual');
Profondeurs.FramesPerTrigger = 1;
Profondeurs.TriggerRepeat = 100;
set(getselectedsource(Profondeurs),'TrackingMode','Skeleton')
%Demarage Capteur de Profondeur
start(Profondeurs);
himg = figure;
%Calcul Squelette
while ishandle(himg)
trigger(Profondeurs);
[depthMap,~,depthMetaData] = getdata(Profondeurs);
if sum(depthMetaData.IsSkeletonTracked > 0)
skeletonJoints = depthMetaData.JointDepthindeices(:,:,depthMetaData.IsSkeletonTracked);
imshow(depthMap,[0 4096]);
hold on;
plot(skeletonJoints(:,1),skeletonJoints(:,2),'*');
hold off;
else
imshow(depthMap,[0 4096]);
end
end
stop(Profondeurs)
And this is the Error I get:
Error using Kinect_SkeletonTest (line 12)
The name 'TrackingMode' is not an accessible property for an instance of class 'videosource'.
It seems like I cannot acces the skeleton tracking features even though I can acces the Color Video and the Depth Video just fine. I tried to type the following command to troubleshoot my problem: getselectedsource(depthVideo);
This is what i'm supposed to get (according to other people who tried doing the same thing as me):
getselectedsource(depthVideo);
ans =
General Settings:
Parent = [1x1 videoinput]
Selected = on
SourceName = DepthSource
Tag =
Type = videosource
Device Specific Properties:
Accelerometer = [0.0 -1.0 0.0]
BodyPosture = Standing
CameraElevationAngle = 4
DepthMode = Default
FrameRate = 30
IREmitter = on
SkeletonsToTrack = [1x0 double]
TrackingMode = off
And this is what I personally get:
getselectedsource(depthVideo);
ans =
Display Summary for Video Source Object:
General Settings:
Parent = [1x1 videoinput]
Selected = on
SourceName = Depth Source
Tag = [0x0 string]
Type = videosource
Device Specific Properties:
Accelerometer = [-0.09768 -0.95238 -0.21856]
CameraElevationAngle = 13
FrameRate = 30.0918
IREmitter = on
As you can see, many Device Specific Properties are not accessible on my device. And they are all related to skeleton tracking. It seems like my kinect doesn't even have any Skeleton Tracking features. Does anyone know this issue and how to fix it?
Sorry for the French Commentaries in the Code, and the bad English. Thank You for taking time to read my problem.
0 Comments
Accepted Answer
Madhura Suresh
on 2 Nov 2015
Edited: Madhura Suresh
on 2 Nov 2015
Hi Elio,
1. What version of MATLAB are you using?
2. Is your sensor a Kinect for Windows Sensor or an XBOX sensor? Your sensor will have the word Kinect emblazoned on it if it is a KFW sensor.
3. What do you see in Kinect Explorer(its an application that is installed with the Kinect driver)? Do you see more properties than what you see in MATLAB?
5 Comments
Walter Roberson
on 20 Oct 2017
Support for Kinect V2 was added to a later release; however, the later releases do not support Kinect for XBox at all.
More Answers (3)
Unice Marasgian
on 13 Jul 2017
Hi! I tried using this code with a Kinect V2 sensor. But there was a time lag present on the frames (not realtime). So I would like to ask if there is also time lag present when you used a Kinect V1 sensor. Thanks!
1 Comment
Khan Rafin Ahmed
on 20 Oct 2017
Hello there,
I have also face this similar issue with the R2017 version of MatLab. Coudln't get a fix. But solved my problem was to run the code on previous version of Matlab like R2015a. MATLab functions are updated with every new version. Hence one code which runs on 2015 one doesn't run on 2017. They are independent. & Yes you can have both MatLab installed in the same computer and run them both.
0 Comments
Andrei
on 2 Aug 2018
This error can occur in either of the following two situations: 1. Using a Kinect for XBox 360 device, which is unsupported. 2. Using a Kinect v2 device with code written for Kinect for Windows Sensor v1.
0 Comments
See Also
Categories
Find more on Acquisition Using Kinect for Windows Hardware in Help Center and File Exchange
Products
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!