eisen-ai / eisen-core

Core functionality of Eisen
MIT License
41 stars 10 forks source link

Add random spatial and intensity transforms #20

Open jordanpn opened 4 years ago

jordanpn commented 4 years ago

It would be very helpful to have support for various spatial and intensity transforms, similar to what is already available in torchio transforms and MONAI. Supporting torchio in eisen-extras may be the most sensible way to go, imo.

The specific transforms I am interested in include:

Note: 4D in my definition means supporting multichannel data (e.g. T1 and T2 channel) and applying the same 3D transform to each channel.

fepegar commented 4 years ago

Let me know if you need anything :)

jordanpn commented 4 years ago

Awesome, thanks!

faustomilletari commented 4 years ago

@fepegar would you be okay with having wrappers that facilitate use of TorchIo transforms into Eisen? I would ideally propose to place them in Eisen-extras and introduce TorchIo as a requirement for eisen-extras

fepegar commented 4 years ago

Yes, that sounds good. I'm also happy to adapt some aspects of the library if that would help integration.

jordanpn commented 4 years ago

Hi Fernando, just wanted to ask, did you make any progress on the wrapper implementation? I may take a stab at it if you haven't started yet.

fepegar commented 4 years ago

Hi @jordanpn, I've obviously misunderstood the plan here, I didn't know you were expecting me to work on this.

faustomilletari commented 4 years ago

Totally my fault here. I was supposed to get this done. I will try it tomorrow morning because I have been on vacation. Let’s get it done. I would love your help for review of the PR! Thanks for the patience

jordanpn commented 4 years ago

Thank you, I am happy to help with the PR review and testing!

faustomilletari commented 4 years ago

Thanks @jordanpn . @fepegar could we talk on slack or email? I might have a couple questions!

faustomilletari commented 4 years ago

This is the slack link https://join.slack.com/t/eisen-ai/shared_invite/enQtOTIwOTg0ODc2MDY3LWE5MGVlNTgxZTBmNjM5NGU2OWRhYzdiMzAzNzRmMGZlZWJlZmEzZDcyNWE4ZTQ5OGM4NDk5N2E5NTEyYzE3NGI

faustomilletari commented 4 years ago

Please refer to this PR https://github.com/eisen-ai/eisen-extras/pull/1

RespectKnowledge commented 4 years ago

Hi, This is excellent framework. I have one question, How can I prepare json file for custom dataset to use your framework. Thanks

faustomilletari commented 4 years ago

The typical form for a json dataset is a list of dictionaries. Each entry of the list contains a dictionary. In the dictionary you can store whatever you want. Typically we store paths to files. Eg. [{“image”: “path-to-image.jpg”, “label”: 7}, ...]