mirror of
https://github.com/wassname/scikit-image.git
synced 2026-07-10 03:14:55 +08:00
f47312a3d1
Plugin is now added to the viewer using an inplace add on the viewer instead of on initialization of the plugin. This change means that operations requiring the viewer must be delayed until attach operation.
29 lines
945 B
Python
29 lines
945 B
Python
from skimage.filter import canny
|
|
|
|
from .overlayplugin import OverlayPlugin
|
|
from ..widgets import Slider, ComboBox
|
|
|
|
|
|
class CannyPlugin(OverlayPlugin):
|
|
|
|
name = 'Canny Filter'
|
|
|
|
def __init__(self, *args, **kwargs):
|
|
kwargs.setdefault('height', 100)
|
|
kwargs.setdefault('width', 400)
|
|
super(CannyPlugin, self).__init__(**kwargs)
|
|
|
|
self.add_widget(Slider('sigma', 0, 5, update_on='release'))
|
|
self.add_widget(Slider('low threshold', 0, 255, update_on='release'))
|
|
self.add_widget(Slider('high threshold', 0, 255, update_on='release'))
|
|
self.add_widget(ComboBox('color', self.color_names, ptype='plugin'))
|
|
|
|
def attach(self, image_viewer):
|
|
super(CannyPlugin, self).attach(image_viewer)
|
|
# Update image overlay to default slider values.
|
|
self.filter_image()
|
|
|
|
def image_filter(self, *args, **kwargs):
|
|
image = canny(*args, **kwargs)
|
|
self.overlay = image
|