nipy / nipype

Workflows and interfaces for neuroimaging packages
https://nipype.readthedocs.org/en/latest/
Other
745 stars 529 forks source link

In-node reporting #2553

Open effigies opened 6 years ago

effigies commented 6 years ago

In niworkflows, we've implemented a reporting mechanism that allows interfaces to generate images or HTML snippets to describe what was done and allow a user to assess the quality.

The approach can be seen in the ReportCapableInterface, which adds _post_run_hook and _generate_report methods which have access to both the inputs and the outputs of the interface.

We currently use these as mixins to augment standard nipype interfaces, but they could as easily be used in built-in interfaces as well.

Is this something worth trying to bring upstream - both the reporting mechanism itself and the specific report generation code for various operations (e.g. registration and segmentation)?

satra commented 6 years ago

@effigies - we talked about this a long time back as an option - it's just that what people want reported varies quite a bit depending on the interface and in many cases it was more appropriate for workflows than interfaces.

i think the general concept can be brought over.

we would need to think about running as interface and running as node concepts and where these outputs go.

satra commented 6 years ago

we can start seeing how this can be useful to extend both the interface and workflow specs for 2.0.

it would also be good to think about sending these as bson or some such messages to a local/remote server for monitoring purposes.

but in general +1 for bringing the mixin upstream.