From a6293fd84b1b393f5a2ed00f07131dc13371554b Mon Sep 17 00:00:00 2001 From: Tony S Yu Date: Sat, 8 Jun 2013 19:11:33 -0500 Subject: [PATCH] Add example of connecting plugins to CollectionViewer --- viewer_examples/plugins/collection_plugin.py | 33 ++++++++++++++++++++ 1 file changed, 33 insertions(+) create mode 100644 viewer_examples/plugins/collection_plugin.py diff --git a/viewer_examples/plugins/collection_plugin.py b/viewer_examples/plugins/collection_plugin.py new file mode 100644 index 00000000..f29b0132 --- /dev/null +++ b/viewer_examples/plugins/collection_plugin.py @@ -0,0 +1,33 @@ +""" +================= +Collection plugin +================= + +Demo of a CollectionViewer for viewing collections of images with the +`autolevel` rank filter connected as a plugin. + +""" +from skimage import data +from skimage.filter import rank +from skimage.morphology import disk + +from skimage.viewer import CollectionViewer +from skimage.viewer.widgets import Slider +from skimage.viewer.plugins.base import Plugin + + +# Wrap autolevel function to make the disk size a filter argument. +def autolevel(image, disk_size): + return rank.autolevel(image, disk(disk_size)) + + +img_collection = [data.camera(), data.coins(), data.text()] + +plugin = Plugin(image_filter=autolevel) +plugin += Slider('disk_size', 2, 8, value_type='int', update_on='release') +plugin.name = "Autolevel" + +viewer = CollectionViewer(img_collection) +viewer += plugin + +viewer.show()