odlgroup / odl

Operator Discretization Library https://odlgroup.github.io/odl/
Mozilla Public License 2.0
372 stars 105 forks source link

Placement of phantoms in the library #463

Closed adler-j closed 8 years ago

adler-j commented 8 years ago

Currently all phantoms are accessible under odl.util. As the number of phantom grows with relatively high speed right now I am considering if we should formalize this a bit more.

One option would be to put them under odl.phantom, that way we could also separate them a bit (like having CT phantoms SPECT phantoms in different files). It would also be easier to find what phantoms are available.

Another option is to start naming them something that starts with phantom_, this does however feel a bit arbitrary: odl.util.phantom_shepp_logan etc.

A final issue is that it seems we may want to add images to the library as phantoms. We need to discuss in what cases we should do this, and some limitations on the images

kohr-h commented 8 years ago

I think odl.phantom or odl.phantoms would be the natural place for those guys.

Regarding images, I am very reluctant to include any at all. If an image is to be added, it better have a real extra value that none of the existing phantoms can provide. Regarding 3d volumes, even stronger objection. I don't want git clone to take minutes.

If we really want to have examples using digital 2d and 3d data (not programmatically created), we should create a separate repository odl_test_data or whatever, and refer to that in example code that potentially uses such data.