viewer.plugins
Module: viewer.plugins
skimage.viewer.plugins.CannyPlugin(* args,...) | Canny滤镜插件显示图像的边缘。 |
---|---|
skimage.viewer.plugins.ColorHistogram(max_pct) | |
skimage.viewer.plugins.Crop(maxdist) | |
skimage.viewer.plugins.LabelPainter(MAX_RADIUS) | |
skimage.viewer.plugins.LineProfile(...) | 用于计算图像上扫描线下插值强度的插件。 |
skimage.viewer.plugins.Measure(maxdist) | |
skimage.viewer.plugins.OverlayPlugin(** kwargs) | 用于ImageViewer的插件,在主图像顶部显示覆盖图。 |
skimage.viewer.plugins.PlotPlugin(...) | ImageViewer的插件包含剧情画布。 |
skimage.viewer.plugins.Plugin(...) | 与ImageViewer交互的插件的基类。 |
skimage.viewer.plugins.base | 与ImageViewer交互的插件的基类。 |
skimage.viewer.plugins.canny | |
skimage.viewer.plugins.color_histogram | |
skimage.viewer.plugins.crop | |
skimage.viewer.plugins.labelplugin | |
skimage.viewer.plugins.lineprofile | |
skimage.viewer.plugins.measure | |
skimage.viewer.plugins.overlayplugin | |
skimage.viewer.plugins.plotplugin | |
CannyPlugin
class skimage.viewer.plugins.CannyPlugin(*args, **kwargs)
[source]
Bases: skimage.viewer.plugins.overlayplugin.OverlayPlugin
Canny滤镜插件显示图像的边缘。
__init__(*args, **kwargs)
[source]attach(image_viewer)
[source]name = 'Canny Filter'
ColorHistogram
class skimage.viewer.plugins.ColorHistogram(max_pct=0.99, **kwargs)
[source]
基地: skimage.viewer.plugins.plotplugin.PlotPlugin
__init__(max_pct=0.99, **kwargs)
[source]ab_selected(extents)
[source]attach(image_viewer)
[source]help()
[source]name = 'Color Histogram'output()
[source]
返回图像蒙版和直方图数据。
返回: | mask:布尔数组,与图像形状相同所选像素。data:dict描述直方图和选定区域的数据。该字典包含:'bins':float数组a和b通道的bin边界。'hist':二维浮点数组标准化的直方图。'edges':浮点数组的元组沿着每个维'extent'的bin边:浮点元组选择区域的左边和右边以及顶部和底部。 |
---|
- '
b
in':浮点数组两个a
和b
通道的b
in边界。
- 'hist':二维浮点数组标准化的直方图。
- '边缘':浮点数组的元组沿着每个维度的边沿
- 'extents':float的元组所选区域的左右和顶部和底部。
Crop
class skimage.viewer.plugins.Crop(maxdist=10, **kwargs)
[source]
基地: skimage.viewer.plugins.base.Plugin
__init__(maxdist=10, **kwargs)
[source]attach(image_viewer)
[source]crop(extents)
[source]help()
[source]name = 'Crop'reset()
[source]
LabelPainter
class skimage.viewer.plugins.LabelPainter(max_radius=20, **kwargs)
[source]
基地: skimage.viewer.plugins.base.Plugin
__init__(max_radius=20, **kwargs)
[source]attach(image_viewer)
[source]help()
[source]labelname = 'LabelPainter'on_enter(overlay)
[source]radius
LineProfile
class skimage.viewer.plugins.LineProfile(maxdist=10, epsilon='deprecated', limits='image', **kwargs)
[source]
基地: skimage.viewer.plugins.plotplugin.PlotPlugin
用于计算图像上扫描线下插值强度的插件。
有关更多详细信息,请参阅PlotPlugin和Plugin类。
参数: | maxdist:float选择扫描线终点时允许的最大像素距离。限制:绘制轮廓的元组或{None,'image','dtype'}(最小,最大)强度限制。定义了以下特殊值:无:基于沿选定扫描线的最小/最大强度进行重新调整。'图像':基于图像中的最小/最大强度的固定比例。'dtype':基于图像dtype的最小/最大强度的固定比例。 |
---|
__init__(maxdist=10, epsilon='deprecated', limits='image', **kwargs)
[source]attach(image_viewer)
[source]get_profiles()
[source]
返回所选行的强度分布。
返回: | end_points:(2,2)数组该行的位置((x1,y1),(x2,y2))结束。配置文件:1d阵列列表强度值的配置文件。长度1(灰度)或3(rgb)。 |
---|
help()
[source]line_changed(end_points)
[source]name = 'Line Profile'output()
[source]
返回画出的线和结果扫描。
返回: | line_image:(M,N)uint8数组,与图像形状相同数组0,扫描线设置为255.如果线工具的线宽大于1,则将被轮廓化的多边形内的值设置为128. scan: (P,)或(P,3)int或float的数组扫描整个图像的值。 |
---|
reset_axes(scan_data)
[source]
测量
class skimage.viewer.plugins.Measure(maxdist=10, **kwargs)
[source]
基地: skimage.viewer.plugins.base.Plugin
__init__(maxdist=10, **kwargs)
[source]attach(image_viewer)
[source]help()
[source]line_changed(end_points)
[source]name = 'Measure'
OverlayPlugin
class skimage.viewer.plugins.OverlayPlugin(**kwargs)
[source]
基地: skimage.viewer.plugins.base.Plugin
用于ImageViewer的插件,在主图像顶部显示覆盖图。
基本插件类直接在查看器上显示过滤后的图像。OverlayPlugin将使用透明色彩贴图覆盖图像。
有关更多详细信息,请参阅基类插件类。
属性
覆盖 | (数组)重叠显示在图像的顶部。此叠加层默认为具有从0到1线性变化的alpha值的彩色映射。 |
---|---|
颜色 | (int)重叠的颜色。 |
__init__(**kwargs)
[source]attach(image_viewer)
[source]closeEvent(event)
[source]colorcolors = {'red': (1, 0, 0), 'yellow': (1, 1, 0), 'green': (0, 1, 0), 'cyan': (0, 1, 1)}display_filtered_image(image)
[source]
将过滤图像显示为查看器中图像顶部的覆盖图。
filtered_image
返回过滤的图像。
从插件保存时使用此“过滤图像”。
output()
[source]
返回重叠的图像。
返回: | 叠加:阵列,形状与图像相同当前显示叠加。数据:无 |
---|
overlay
PlotPlugin
class skimage.viewer.plugins.PlotPlugin(image_filter=None, height=150, width=400, **kwargs)
[source]
基地: skimage.viewer.plugins.base.Plugin
ImageViewer的插件包含剧情画布。
包含Matplotlib绘图画布的插件的基类,可以显示图像直方图。
有关更多详细信息,请参阅基类插件类。
__init__(image_filter=None, height=150, width=400, **kwargs)
[source]add_plot()
[source]add_tool(tool)
[source]attach(image_viewer)
[source]redraw()
[source]
重绘plot。
remove_tool(tool)
[source]
Plugin
class skimage.viewer.plugins.Plugin(image_filter=None, height=0, width=400, useblit=True, dock='bottom')
[source]
基地: object
与ImageViewer交互的插件的基类。
插件将图像过滤器(或其他功能)连接到图像查看器。请注意,
插件在没有
图像查看器的情况下
被初始化,
并在稍后的步骤中被附加。详细信息请参见下面的示例
参数: | image_viewer:ImageViewer包含用于测量/操作的图像的窗口。image_filter:函数被调用以在图像查看器中更新图像的函数。例如,如果您有一个从图像中提取信息并且不处理它的插件,则此值可以为None。或者,可以将此函数定义为Plugin子类中的方法。height,width:int插件窗口的大小(以像素为单位)。请注意,Qt会自动调整窗口大小以适应组件。因此,如果您添加了多行组件,您可以保留高度= 0并让Qt确定最终高度。useblit:bool如果为True,则使用blitting来加速动画。仅在某些Matplotlib后端可用。如果为None,则在使用Agg后端时设置为True。如果您在图像查看器上绘制,这只会起作用。 |
---|
例子
>>> from skimage.viewer import ImageViewer
>>> from skimage.viewer.widgets import Slider
>>> from skimage import data
>>>
>>> plugin = Plugin(image_filter=lambda img,
... threshold: img > threshold)
>>> plugin += Slider('threshold', 0, 255)
>>>
>>> image = data.coins()
>>> viewer = ImageViewer(image)
>>> viewer += plugin
>>> thresholded = viewer.show()[0][0]
该插件将image_filter
根据参数类型自动委派参数,即ptype
(必需参数的小部件必须按照它们在函数中出现的顺序添加)。附加到查看器的图像会自动作为第一个参数传递
给过滤器函数。
#TODO:添加标志,以便默认情况下不会将图像传递给过滤器功能。
ptype = ‘kwarg’
是大多数小部件的默认设置,所以在这里没有必要。
属性
image_viewer | (ImageViewer)包含用于测量的图像的窗口。 |
---|---|
name | (str)插件的名称。这显示为窗口标题。 |
artist | (列表)Matplotlib艺术家和canvastools列表。任何由该插件创建的艺术家都应该添加到该列表中,以便在清理完成后关闭。 |
__init__(image_filter=None, height=0, width=400, useblit=True, dock='bottom')
[source]add_widget(widget)
[source]
将小部件添加到插件。
或者,插件的__add__
方法被重载以添加小部件:
plugin += Widget(...)
小部件可以调整插件的过滤器函数或参数的必需或可选参数。这由Widget指定ptype
。
attach(image_viewer)
[source]
将插件附加到ImageViewer。
请注意,当插件添加到ImageViewer时,ImageViewer会自动调用此方法。例如:
viewer += Plugin(...)
还请注意,会attach
自动调用过滤器函数,以便图像与附加小部件指定的过滤值相匹配。
clean_up()
[source]closeEvent(event)
[source]
关闭所有来自ImageViewer的艺术家和活动。
请注意,艺术家必须附加到self.artists
。
display_filtered_image(image)
[source]
在图像查看器上显示已过滤的图像。
如果您不想简单地将显示的图像替换为已过滤的图像(例如,要显示透明覆盖图),则可以覆盖此方法。
filter_image(*widget_arg)
[source]
调用image_filter
小部件参数和kwargs
注意:display_filtered_image可以
自动调用。
filtered_image
返回过滤的图像。
image_changed = Noneimage_viewer = 'Plugin is not attached to ImageViewer'name = 'Plugin'output()
[source]
返回插件的表示和数据。
返回: | 图像:数组,形状与self.image_viewer.image相同,或者无过滤的图像。数据:无与插件关联的任何数据。 |
---|
笔记
派生类应该重写此方法以返回包含相同形状图像的叠加层
和数据
对象的元组。其中任何一个都是可选的:如果您不想返回值,则返回None
。
remove_image_artists()
[source]
删除连接到图像查看器的艺术家。
show(main_window=True)
[source]
显示插件。
update_plugin(name, value)
[source]
更新插件本身的关键字参数。
通常将这些参数实现为类属性,以便它们更新图像或其他组件。