Comments (11)
Thanks for the feedback. We will follow up with the Azure Kinect team and get back to you.
from psi.
Reported the issue to the Azure Kinect team: microsoft/Azure-Kinect-Sensor-SDK#1304
from psi.
I traced the problem to a typo in the platform declaration in the .csproj
files. The SDK checks the $(Platform)
property https://github.com/microsoft/Azure-Kinect-Sensor-SDK/blob/release/1.3.x/src/csharp/k4a.props.
They check for the property $(Platform)
but there is a typo in both Sources/Kinect/Microsoft.Psi.AzureKinect.x64/Microsoft.Psi.AzureKinect.x64.csproj
and Samples/AzureKinectSample/AzureKinectSample.csproj
that specifies the platform as <Platforms>x64</Platforms>
. Changing both to <Platform>x64</Platform>
solve the problem.
I don't know why this is a problem in Linux but not Windows.
from psi.
I tested the Sample application and besides the body tracking, everything works correctly.
If I include the body tracking code, I'll get the following error:
/onnxruntime_src/onnxruntime/core/providers/cuda/cuda_call.cc:97 bool onnxruntime::CudaCall(ERRTYPE, const char*, const char*, ERRTYPE, const char*) [with ERRTYPE = cudaError; bool THRW = true] /onnxruntime_src/onnxruntime/core/providers/cuda/cuda_call.cc:91 bool onnxruntime::CudaCall(ERRTYPE, const char*, const char*, ERRTYPE, const char*) [with ERRTYPE = cudaError; bool THRW = true] CUDA failure 10: invalid device ordinal ; GPU=0 ; hostname=TBD-Beetle ; expr=cudaSetDevice(device_id_);
Stacktrace:
Stacktrace:
[2020-06-17 17:02:46.889] [error] [t=9234] [K4ABT] /home/vsts/work/1/s/src/TrackerHost/TrackerHost.cpp (157): Create(). /onnxruntime_src/onnxruntime/core/providers/cuda/cuda_call.cc:97 bool onnxruntime::CudaCall(ERRTYPE, const char*, const char*, ERRTYPE, const char*) [with ERRTYPE = cudaError; bool THRW = true] /onnxruntime_src/onnxruntime/core/providers/cuda/cuda_call.cc:91 bool onnxruntime::CudaCall(ERRTYPE, const char*, const char*, ERRTYPE, const char*) [with ERRTYPE = cudaError; bool THRW = true] CUDA failure 10: invalid device ordinal ; GPU=0 ; hostname=TBD-Beetle ; expr=cudaSetDevice(device_id_);
Stacktrace:
Stacktrace:
[2020-06-17 17:02:46.889] [error] [t=9234] [K4ABT] /home/vsts/work/1/s/src/sdk/k4abt.cpp (38): tracker->Create(sensor_calibration, config) returned failure in k4abt_tracker_create()
It seemed to be an issue in the proprietary body tracking component. I'm using CUDA 10.2, and a search on the internet suggest it might be caused by different CUDA versions. I was able to use Azure Kinect's Body Tracking through the ROS driver, so it's probably not cause by the hardware.
from psi.
Thanks for reporting and investigating the build problem. $(Platforms) is actually a list of available platform configurations. The reason it worked on Windows and not on Linux is because the Visual Studio solution sets the Platform to x64. We will change it as you suggest.
As for the body tracking issue, not quite sure what is going on here. It looks as though you have already installed both the Azure Kinect Sensor SDK and Body SDK.
Could you try running with body tracking in CPU mode by changing the CpuOnlyMode
property in the AzureKinectBodyTrackerConfiguration
to true
?
from psi.
No problem, thanks for looking into it! I'm still really unfamiliar with VS build process.
I have both SDK installed through the Ubuntu package manager. These are the packages that I have:
libk4a1.3/bionic,now 1.3.0 amd64 [installed,automatic]
libk4a1.3-dev/bionic,now 1.3.0 amd64 [installed]
libk4abt1.0/bionic,now 1.0.0 amd64 [installed,automatic]
libk4abt1.0-dev/bionic,now 1.0.0 amd64 [installed]
I tried both CPU & GPU versions and both throw the same error. The error is thrown at line 116 in psi/Sources/Kinect/Microsoft.Psi.AzureKinect.x64/AzureKinectBodyTracker.cs
when the Tracker is created. I also doubled check that the configuration variables was propagated down correctly.
from psi.
I also had the same problem on Ubuntu 18.04. How is the problem solved now?
from psi.
@KevinHwangAi I haven't tried the latest version, but I believe the body tracking component is still broken (It is caused by an external SDK). The other parts of the component (rgb image, depth image, etc) works, just not the body tracker.
from psi.
Now our development is on hold and we have to consider a new direction. I hope the Microsoft team can solve this problem as soon as possible.
from psi.
any update?
from psi.
Thanks for the reminder. It looks like there is a new version of the Azure Kinect body tracker SDK, and thankfully it is available via Nuget this time. We will update our \psi component and test to see if it fixes the Linux issue. I'll follow up on this thread to let you know the results, but feel free to also try updating the package reference in a local fork/clone of the repo if you'd like to test it yourself in the meantime.
from psi.
Related Issues (20)
- [Bug]: Hitting an exception when attempting to start hololenscaptureapp in hololens2 using VS2022 HOT 5
- Memory usage of SharedImagePool keeps growing HOT 3
- Poor Serialization Performance for the Diagnostics's `TrackMessageSize` HOT 4
- [Question] Subpipline stop without stopping parent pipline HOT 5
- .NET Native Support
- PsiStoreReader has an inconsistent output for indexed entries on different projects (DotNet vs. UWP) same x64 architecture HOT 2
- Could not load file or assembly 'Microsoft.Psi.Media_Interop.Windows.x64, Version=0.18.72.1, Culture=neutral, PublicKeyToken=null' or one of its dependencies. HOT 2
- PsiStudio not displaying correctly properties with new visualizers HOT 4
- Connecting windows C# and Ubuntu py with interop HOT 2
- If operator to compare to ip producer variables in order to send a specific frame HOT 2
- [whoisusing] MIT Interactive Robotics Group
- Exporting audio and video from PSI store HOT 4
- Using Kinect and a Webcam HOT 3
- sigma exception when connecting to server HOT 3
- [Bug] Diagnostics crash HOT 7
- How to Determine if a Message is the Last Message? HOT 2
- Pipeline still accessing PSIStore after leaving call (PSIBot) HOT 1
- Error: Invalid Index Entry HOT 2
- PsiStoreTool runtime error
- Microsoft.Psi.Language.csproj needs to be included in Sigma.sln
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from psi.