一种基于形状库的目标检测器。

small-particle-detection的Python项目详细描述


spade:小颗粒检测

http://www-sop.inria.fr/morpheme/images/logo2.png

一种主要用于检测大小不大于 荧光显微镜图像上的少量像素(颗粒)。

它是标记点过程的简化版本。

要求

spade只在python 3.5中测试过,但应该可以在旧版本中使用。 唯一严格的要求是包装numpy。 为了充分利用铁锹,我们建议安装 scikit图片包和完整的scipy生态系统。

用法

在python脚本中

您可以使用pip安装包。其主要功能是 铲式探测模块。它需要图像、形状库和 阈值作为输入。典型用法如下

fromskimage.ioimportimread,imshowfromskimage.filtersimportthreshold_otsufromskimage.colorimportlabel2rgbfromnumpyimportpercentileimportmatplotlib.pyplotaspltfromspade.detection_2dimportspade2dfromspade.shapes.examplesimportpotatoids5x5_smallest4px# Load the example image.image=imread("example_2d.png")# Separate cell image from background, using by Otsu's thresholding method.cell=image>threshold_otsu(image)# Focus on brightest pixels onlypotential_centers=image>percentile(image[cell],99)# Detect particles.particles=spade2d(image=image,shapes_library=potatoids5x5_smallest4px,threshold=20,potential_centers=potential_centers,mask=cell)# Show detected particles as overlay on our original image.imshow(label2rgb(particles,image,bg_label=0))plt.show()

有关详细信息,请参见source dist的example文件夹中的示例 信息。注意,spade不需要matplotlibskipage。 去工作。

从命令行

还提供了一个命令行界面,可以如下使用:

python -m spade.cli INPUT_IMAGE THRESHOLD -o /path/to/output_image.png

使用-h启动此命令以获取有关其用法的详细信息。

作者和致谢

铲是由Nicolas CedilnikÉric DebreuveXavier DescombesMORPHEME team开发的。

如果您在科学研究中使用spade,请包括这个bibtex(或 等效)条目:

@misc{cedilnik2016spade,
  title={SPADE: Small particle detection}
  author={Cedilnik, Nicolas and Debreuve, Éric and Descombes, Xavier}
  url={https://pypi.python.org/pypi/small-particle-detection}
  year={2016}}

许可证

铁锹放在CeCILL-2.1 licence下面。

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
javascript问题:通过URL用网站数据填充Textview   java TabLayout Android,如何用几个标签填充整个屏幕宽度,并用大量标签滚动?   Eclipse Java运行的文件不再存在于我的工作区中   安装两个Java版本时,使用Java的windows链接不起作用   java将多个图形添加到单个JPanel   java Kafka ConsumerFactory,带有两个Desiarizer   使用反射更改java类超类   当一致性测试失败时,java有没有办法让堆栈跟踪显示在控制台中   java映射到基元类型的HashMap的快速替代方案是什么?   java关闭一个jframe所有剩余的打开jframe都将关闭。   java为什么不推荐“使用getString()获取设备标识符”?   java值比较和值赋值之间有什么性能差异吗?   Java实体数组到JavaScript数组   java使用流将一个列表转换为另一个列表   在JTree中保存对象,但更改显示的名称(java swing)?   java“Hello world”Android应用程序,文件尽可能少,没有IDE,只有文本编辑器   java在方法之间传递值   java如何为项目数组创建ParseQuery?