GithubHelp home page GithubHelp logo

realtimebiomechanics / rtosim Goto Github PK

View Code? Open in Web Editor NEW
32.0 32.0 14.0 29.79 MB

The real-time OpenSim extension (RTOSIM) is a set of libraries in C++ that wrap OpenSim APIs to enable the real-time computation of inverse kinematics and inverse dynamics.

License: Apache License 2.0

CMake 7.92% C++ 89.35% C 2.73%

rtosim's People

Contributors

cpizzolato avatar elen4 avatar lucatagliapietra avatar monicareggiani avatar robertoroos avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar

rtosim's Issues

Help in using RTosim in a project

Good morning, I'm doing my master thesis in the development of a real-time system for biomechanical analysis in sports rehabilitation. After getting everything and install RTosim, what do I need to do? Thanks for the help

Client.h rename in Vicon Data Stream SDK

As discussed Claudio, it looks like in updated versions (not sure exactly when but at least from v1.7) Vicon has renamed the Client.h file to DataStreamClient.h

Inquiring about RTOSIM's Compatibility with Camera-Based Joint Position Data

Hello,

I am currently working on a project that involves analyzing human arm motion using OpenSim. As a newcomer to OpenSim, I have recently come across the RTOSIM library, which offers real-time inverse kinematics and inverse dynamics capabilities. However, I am unsure about its compatibility with my specific project requirements.

In my project, I intend to use a camera and neural network for joint position estimation rather than a motion capture system. The neural network will be used to process the camera data and estimate the joint positions. I am interested in using RTOSIM to connect joints' positions from camera and neural network with OpenSim and perform real-time inverse kinematics and inverse dynamics calculations on the human arm model. My main question is whether RTOSIM can handle joint position data from a camera instead of using motion capture system data?

Parametri rtosim

Bel lavoro!
Stavo provando a fare qualche simulazione e volevo capire meglio come settare i parametri dalla cmd.
Vorrei quindi sapere che tipo di valore accettano i seguenti comandi e se hanno un minimo e massimo (se sono numeri):

--fc
-a
-j
--push-frequency

Concurrency package

While trying to build from sources with cmake, I got this error above. I couldn't see any references to this package (Concurrency) in rtosim docs. Which package is this? This was made in ubuntu 16.04.

CMake Error at CMakeLists.txt:37 (find_package):
By not providing "FindConcurrency.cmake" in CMAKE_MODULE_PATH this project
has asked CMake to find a package configuration file provided by
"Concurrency", but CMake did not find one.

Could not find a package configuration file provided by "Concurrency" with
any of the following names:

ConcurrencyConfig.cmake
concurrency-config.cmake

Add the installation prefix of "Concurrency" to CMAKE_PREFIX_PATH or set
"Concurrency_DIR" to a directory containing one of the above files. If
"Concurrency" provides a separate development package or SDK, be sure it
has been installed.

-- Configuring incomplete, errors occurred!

LabStreamingLayer

Hi,

would it be possible to stream sensor data via TCP/IP using e.g. LabStreamingLayer?

All the best,

dermanu

Issue in building rtosim - QueuesToInverseDynamics.cpp

I am trying to build rtosim in Visual Studio 2019, after installing and checking all dependencies. I am facing an error which says:

Error (active) E0289 no instance of constructor "rtosim::QueueData::QueueData [with T=rtosim::GeneralisedCoordinatesData]" matches the argument list argument types are: (std::optionalrtosim::GeneralisedCoordinatesFrame)

location is line 69 on the QueuesToInverseDynamics.cpp

I have also attached a snapshot of the detailed message. I am fairly new to rtosim, CMake and C++, so apologies in advance if this is not really an issue.

Kindly let me know if there is any other information needed from my end.

Thanks.
error

Accessing OpenSim API ends the program when running rtosim_ik_from_file and rtosim_ik_id_from_nexus

I'm trying to perform inverse kinematics by running the rtosim_ik_id_from_nexus.exe executable in the command line, with appropriate arguments.

The program starts, but when it accesses OpenSim API using the getCoordinateNamesFromModel() function (line 130 in https://github.com/RealTimeBiomechanics/rtosim/blob/master/src/mainInverseKinematicsInverseDynamicsFromNexus.cpp), I just get the message "Loaded model 3DGaitModel2392 from file gait2392_simbody.osim" in the command line and the program stops without going any further.
If I try to run this program again repeatedly, approximately every twentieth time I run the program it gets further to getMarkerNamesFromModel() (line 131), printing another "Loaded model 3DGaitModel2392 from file gait2392_simbody.osim" message in the command line and then nothing happens. I don't get an error message or anything, it just seems like the program stops after accessing OpenSim API (although it randomly makes it to the next step the API is accessed and then stops there).

I tried also with rtosim_ik_from_file.exe and I ran into the same issue where I get the message about the model having been loaded.

I'm not sure if this is an issue with the rtosim package, the OpenSim API or something on my end, but I would appreciate it if anyone could help me with this.

Cannot create output directory

I have correctly compiled, build and installed rtosim.
Unfortunatly I am not able to run any of the examples. All the examples return
"Cannot create output directory", even if the output directory is created together with an empty output file.
I am exectuting the examples with admin privileges, in a not protected folder.

What am I doing wrong?

thanks

VICON STREAM SDK

Screenshot (954)
When I try to compile rtosim, I get this error:
CMake Error at examples/exampleViconNexus/CMakeLists.txt:18 (target_link_libraries):
Target "exampleViconNexus" links to:

rtb::rtosim

but the target was not found. Possible reasons include:

* There is a typo in the target name.
* A find_package call is missing for an IMPORTED target.
* An ALIAS target is missing.

If I don't add vicon, no problem in the generation.
Any help? Thanks

Procedure entry point could not be located when running rtosim_ik_from_nexus.exe and other executables

Hi!

After building the solution and attempting to run examples (of my own, because for some reason Vicon Virtual System 1.4.1 couldn't send the provided test data to Vicon Nexus) I get an error when I try to execute rtosim_ik_from_nexus.exe:
image
The error is in Finnish but translates to "The procedure entry point ?replace@ObjectGroup@OpenSim@@QEAAXPEBVObject@2@PEAV32@@z could not be located in the dynamic link library C:\Program Files (x86)\RTOSIM\bin\rtosim_ik_id_from_nexus.exe".

I get similar errors while trying to execute rtosim_id_from_file.exe, rtosim_ik_from_file.exe and rtosim_ik_id_from_file.exe, although the procedure entry points are slightly different and the dynamic link library refers to the executable I'm attempting to execute.

If you've run into similar issues, please let me know if and how you've solved them.

I didn't follow all of the versions given in the readme because they were outdated for many dependencies. Some of the versions I used were Simbody 3.7 without patching (because patching replaced some files which resulted in Visual Studio being unable to build the solution), Visual Studio 2019 and Vicon Datastream SDK 1.9.0.

Thanks in advance!

Random seg fault with rtosim_ik_id

Hi,

Thank you for the nice work!

I was able to test rtosim ik and id on Arch Linux, however, I have encountered a random seg fault when executing rtosim_ik_id. It seems that there is some thread synchronization problem that can manifest randomly. Please see the attached file, which depicts one correct execution and 2 seg faults at different places.

I will look into the problem and if you have some clue where the problem may reside please let me know.

Regards,
Dimitar

seg_fault.txt

Code fails to compile on VS 2019

Nice work, the code fails to compile out of the box on VS 2019 because std::bind is not found due to missing #include I can open a PR if you agree.

rtosim_ik_id_from_nexus.exe cannot read command line argument values if their names include whitespaces

Hi,
This is something I noticed while trying to run my own data with rtosim_ik_id_from_nexus.exe:
If you run the executable from the command line and provide paths with parameters and those paths include whitespaces, for example
rtosim_ik_id_from_nexus.exe --model "C:/Folder Name/myModel.osim"
then mainInverseKinematicsInverseDynamicsFromNexus.cpp fails to read the argument correctly because po.getParameter("--model"); will only return "C:/Folder", meaning that the whitespace in the name ends the string. This is not a major issue, but I thought I'd bring it up anyway. I haven't checked the other executables to see if they have a similar issue, but if they accept command line arguments similarly, they probably do.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo 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.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.