OpenMA / openma

Library to explore, process, and analyze movement acquisition data
Other
45 stars 9 forks source link

Thank you for openma #83

Open extraymond opened 7 years ago

extraymond commented 7 years ago

Sorry this seems not the right place to post this, but I can't really find any way to contact. So apologize if needed.

I really like the idea of open source biomechanics toolkit so thanks for your effort!

I would like to know if there is any status updates about openma. I'm a master student just getting into the filed of sports biomechanics, I have preliminary experience in python. If there's anything I can help, just let me know, I would like to volunteer.

marnunez commented 6 years ago

@Alzathar has ceased working in OpenMA since the last commit. The company he works for, Solution Moveck Inc., is offering an enhanced, closed-sourced solution, along with a new version of Mokka. These will not be added to OpenMA, though.

extraymond commented 6 years ago

Thanks for your update, this clears thing a ton, was really curious what happened after a ambitious announcement for OpenMA along with it's new website.

Since you mentioned Mokka, is there any info about the new release? Since its an open source project, is the new release going to be merged back to the master branch, or stays wild as a fork?

marnunez commented 6 years ago

If I'm not mistaken, any further development from @Alzathar and Moveck will be closed-sourced. The sells representative explained to me that even thought they started as an open source project, interest on it wasn't big enough for it to be profitable within an open sourced model. It is a real shame though, this might be the best conceived approach I've seen to tackling real world gaitlab problems, without ties to any specific vendor. But sadly, she's right. There were very few contributors to this project apart from himself. The most mature project I've seen using OpenMA is @aaa34169's pyCGM2.

Funny thing is, BTKToolkit is still widely used: pyCGM2 uses it, the newest Opensim 4.x uses it, basically anyone trying to read or edit C3Ds uses it, even thought it's been unsupported for some years now. The old mailing list is still active, with new people asking about old problems.

extraymond commented 6 years ago

I see. I agree that it's a real pity.

Since they're not clearly stating their OSS license version, maybe it won't violate it via being a closed source downstream, but I highly doubt that's the case.

A vendor independent ecosystem would be remarkably nice, considering how VR and IOT devices are impacting the world.

Thanks for your update, this is sad but mayb finally I have to make a decision whether to learn opensim or dive into BTKToolkit.

I wondered how is the ecosystem around motion analysis so closed. Everything is mostly tied to vendor specification and hardware. And they never seem to let others play with their toys.

marnunez commented 6 years ago

BTKToolkit and OpenSIM are different solutions for different problems. Luckily for us, both have working Python wrappers, and they play along very nicely. BTK is already included as a third party addition to the newest OpenSIM, so there goes your decision: you'll very likely have to learn both.

marnunez commented 6 years ago

Oh, and they do state their license. BSD 2.0

extraymond commented 6 years ago

I see, thanks for your reply.

jjnurminen commented 5 years ago

Funny thing is, BTKToolkit is still widely used: pyCGM2 uses it, the newest Opensim 4.x uses it, basically anyone trying to read or edit C3Ds uses it, even thought it's been unsupported for some years now. The old mailing list is still active, with new people asking about old problems.

Sorry for jumping the thread...

I've written a gait analysis package (https://github.com/jjnurminen/gaitutils) that aims to offer a convenient API for trial/gait cycle level data, as well as automatic processing and visualization tools. I've relied on btk for reading c3d files. However I noted that btk does not work on Python 3. This is probably going to cause problems to me and others in the near future.

It seems that the btk Python bindings are autogenerated by SWIG from the C++ interfaces. I have no experience with SWIG, but I imagine that recreating the bindings for Python 3 shouldn't be too much work (can anybody confirm this?)

Instead of trying to fix btk, I've also considered writing a lightweight native Python library for reading c3ds, or maybe forking https://github.com/EmbodiedCognition/py-c3d, which seems to be rather well written (but probably does not support all c3d features). Of course, validation of such a library would mean some extra work, whereas btk is already kind of established.

Also, to stay somewhat on-topic, do OpenMA Python bindings support (64-bit) Python 3? Due to trying out PyCGM2, I'm getting somewhat into OpenMA too.

Thanks!

@marnunez @aaa34169

jimmyDunne commented 5 years ago

You could also try https://github.com/pyomeca/ezc3d. It is relatively new but has an active development team and is opensource.

jjnurminen commented 5 years ago

@jimmyDunne thanks for the suggestion, looks like a nice project. That's in C++ though, so it would be a bit harder for me to contribute.

Also, SWIG is great but sometimes I long for native Python APIs. For example my btk code for getting the 'body mass' subject parameter ended up looking like this:

meta = acq.GetMetaData()
bodymass = meta.FindChild("PROCESSING").value().FindChild("Bodymass").value().GetInfo().ToDouble()[0]

Not sure if it's due to btk or SWIG though...