我知道编辑这个网站吗?

就地清洗

info

文件

CIP update site

来源

https://github.com/benoalo/CIP

类别

Scripting


/media/cip-basic-concept.png

Figure 1: CIP is a simple toolbox to learn and prototype image analysis workflow in ImageJ. It hides ImageJ complexity while making it easy to combine ImageJ packages for more specific tasks.

CIP:经典图像处理

经典图像处理(CIP)是一个图像处理工具箱,提供在 ImageJ 中编写脚本的功能。其主要目标是促进图像分析工作流程的构建,并提供一个可访问的入口点来学习此类工作流程的编程。 CIP 还特别关注用户体验,这应该清楚地体现在库的主要功能中:

  • 集成到 ImageJ 生态系统:CIP 可以轻松地与其他 ImageJ 1.x 和 ImageJ2 插件结合使用。例如,它可以无缝处理所有常见的 imageJ 图像类型(ImagePlus、Dataset、ImgPlus、Img),无需任何转换。

  • 其功能的可发现性:CIP 提供完整的用户文档,解释功能的使用、详细说明其参数并提供说明。为了允许直观的学习,函数参数可以被命名或可选,而相似的函数将具有相似的签名。出于同样的原因,2D 和 3D 图像可以使用相同的函数进行处理。

  • 使用简单性:学习编程要求很高,CIP 的目标是在开始编写脚本时隐藏不必要的困难。例如,CIP 不需要导入类和包。它还仅使用 3 种主要数据类型:图像、区域表,以简化数据表示。最后,CIP 函数永远不会修改函数输入,因此您始终知道数据发生了什么。

  • 一套必要的工具:CIP 收集了 10% 的可以完成工作的工具,让人们可以直接找到他需要的工具。所选择的功能也被社区很好地采用,以方便交流和理解。最后,CIP 提供每个工作流程所需的基本可视化和测量工具。

开始使用

安装

如果您想在 ImageJ 脚本编辑器中使用 CIP,只需将 CIP 更新站点添加到您的 imageJ 安装中(instruction to follow an update site),重新启动 imagej,打开脚本编辑器即可。如需灵感,可以查看第 example scripts 之一。

如果有人想贡献或只是玩弄该库的源代码,则可以在 project repository 上找到其源代码和在 IDE 中设置的项目的说明。

文档组织

要使用 CIP 构建脚本,请遵循以下示例之一或尝试 repository 示例之一。

要获取有关功能的信息,请点击 categories 部分中功能表中的链接,或直接转到类别页面之一:FormatFilterMathSegmentAssess

有关参数、参数类型、可选参数或必需参数以及更多参数的信息,请参阅第 Parameters 页面。

工具类别

图像分析工作流程要求用户执行定型步骤:增强信号、定义和表征区域、可视化和评估结果。这一重复过程允许为每个任务创建一个函数,并将这些函数组织到具有相似角色、输入和输出的类别中:格式、过滤器、分段、数学、评估。

cip-generic-pipeline

Figure 2: Many analysis workflow are composed of generic tasks.

  • Format:这些函数用于管理图像数据、组合它们或降低它们的维度。它们将一张或多张图像作为输入,并返回一张图像作为输出。这些函数通常会提供大小和/或维度可能与输入不同的输出

  • Filter:滤镜作用于图像灰度。他们创建与输入大小相同的输出图像。过滤器用于消除噪声、过滤掉不需要的背景或增强感兴趣的特征,例如斑点和线条。

  • Math运算和函数:这些类别收集了常见的数学运算,例如加法、减法或三角函数。它们可以与标量、图像或图像和标量组合使用。当与图像一起使用时,操作按像素应用。

  • Segmentation:分割函数允许定义图像中的区域。应用于输入图像时,它们创建所谓的标签图像,该图像定义对象所在的像素。每个区域都有一个特定的标签(一个整数值),可用于稍后检索对象。分水岭、阈值点和线检测可以在此处找到。
  • Assess:该类别中有促进数据可视化的工具以及图像处理完成后每个管道中都需要的措施。

下表提供了函数用户文档的链接。

过滤 细分 格式 数学 评估 实验
gauss threshold create addsub measure track
erosion maxima duplicate muldiv show  
dilation watershed slice cossintan region  
§§§20§§§ §§§21§§§ §§§22§§§ §§§23§§§、§§§24§§§、§§§25§§§ §§§26§§§  
§§§27§§§     §§§28§§§、§§§29§§§ §§§30§§§  
§§§31§§§     §§§32§§§、§§§33§§§ §§§34§§§  
§§§35§§§     §§§36§§§、§§§37§§§、§§§38§§§ §§§39§§§  
§§§40§§§     §§§41§§§、§§§42§§§ §§§43§§§  
§§§44§§§     §§§45§§§、§§§46§§§ §§§47§§§  
        §§§48§§§  

脚本示例

以下脚本讲述了如何分割图像中的二维对象并将其可视化。工作流程如图3所示。

cip-example-2d

Figure 3: Example a workflow performing the cropping, filtering segmentation and visualisation of a 2D image. Raw data: Platynereis embryo, acquisition: Mette Handberg-Thorsager from Tomancak lab, MPI-CBG, Dresden in collaboration with Keller lab, HHMI - Janelia Research Campus

以下脚本显示了 3D 细胞核分割以及细胞核大小的测量和显示。工作流程如 图 4 所示。

cip-example-3d

Figure 4: Example a workflow performing the cropping, filtering segmentation and visualisation of a 2D image. Raw data: Platynereis embryo, acquisition: Mette Handberg-Thorsager from Tomancak lab, MPI-CBG, Dresden in collaboration with Keller lab, HHMI - Janelia Research Campus

发展计划

本提供节了主要的开发方向以及我们打算按类别实现的功能列表

过滤 解析 格式 数学 评估
变更 重构 连接 逻辑时序  
拉普拉斯 边缘   比较运算符  
粗麻布        
填充孔        

引用

历史

  • 2017-12-20:版本0.1.0,CIP的第一个公共版本在CIP更新站点上提供。该预计将开发中

  • 2018-01-29:版本0.1.1,添加帮助功能

  • 2018-05-03:版本 0.1.2,对一些函数签名进行最小一致性兼容更新以保持一致性。 cip.show(handle*,region*,…) 等于 cip.show(region*,handle,…),如果没有提供句柄,区域将显示在当前图像上。更新 create、slice 和 show 函数的参数名称。

  • 2018-05-28:版本0.2.0,跟踪、分水岭和顶点更新
    • add an experimental cip.track function allowing to track regions in a list of labelmap. it uses trackmate LapTracker below the hood thus allowing splitting, merging and discontinous tracks. resulting track can be visualized with cip.show both in trackscheme or hyperstack viewer.
    • cip.watershed(img, threshold, …) labeling is more consistant, each connected component (region) has a distinct label and region with height inferior to hMin are no displayed. This feature was added with ImgAlgo-0.1.1.jar
    • the multiscale maxima detection was debugged and now give consistant results. It works in 2d/3d and takes into account data anisotropy. As an experiment it is possible to return multiscale maxima detection as a list of measures. multiscale maxima debugging also occured in ImgAlgo-0.1.2.jar update.
    • corresponding documentation is on the work
  • 2018-06-11:版本0.2.1修正了阻止3d区域可视化的回归

  • 2018-06-19:版本0.2.2错误修改
    • correct a bug in median measure
    • cip.project(…): change outputType parameter name to output
    • cip.project(…): correct a bug preventing to use output=’both’