【问题标题】:Find nanoparticles寻找纳米粒子
【发布时间】:2011-11-23 03:09:24
【问题描述】:

我需要一些帮助。我有这个样本:

这是一块塑料,里面有一些纳米颗粒(你可以看到小黑点)。谁能帮我找出一个快速而肮脏的算法,我可以在其中找到粒子并将它们着色为另一种颜色。

【问题讨论】:

  • 在您做任何其他事情之前 - 如果可能,请获得更好的图像,并改善焦点、对比度和亮度。左右边缘是否会从图像中预先裁剪出来?如果不是,它们是否处于固定位置,以便算法可以有效地预先裁剪它们?
  • 我什至无法手动找到这些粒子的边界 - 对我来说或多或少有点模糊。在尝试应用任何算法之前,也许您应该先使用一些标准成像软件来增强对比度并运行边缘检测过滤器。
  • “又快又脏的算法”?在图像处理方面? :-) 伙计,你正试图在当前 CS 的前沿完成任务!但我喜欢天真。比如:“我做了两个 for 循环,就是这样.. :-)”。
  • 我的 2 美分来了。首先,这是我们拥有的图像,我们无法制作新图像。其次,分辨率(不是像素大小)在 40 nm 左右,是 X 射线图像。有问题的粒子是简单的小暗区,它们不是很大。因为它是 X 射线图像,因此样品是部分透明的,所以不像重新着色黑色那样简单地读取,因为颗粒更密集的区域会因为密度差异而不是因为颗粒而变得更暗
  • @Markus:不要评论你自己的问题。用新信息更新问题。

标签: algorithm image matlab physics


【解决方案1】:

又快又脏……好吧 :)

  1. [可选] 更加模糊
  2. 找到以下局部最小值:
    • 2.2。是

【讨论】:

  • 谢谢,我正在寻找这样的东西。它不必完美或快速。
【解决方案2】:

您说的是“快速而肮脏”,但鉴于这是 matlab,您可能不会注意到最佳解决方案与“快速而肮脏的解决方案”之间的区别。这可能是完成任务的最佳方式:尺度空间斑点检测。使用拉普拉斯方法是最简单的。

首先对图像进行高斯模糊处理,使图像的 sigma 接近预期的纳米粒子标准偏差:即屏幕宽度的四分之一。

那么你的斑点将是拉普拉斯算子最负的点;确保它具有比其周围点更大的幅度,然后进行简单的阈值处理。要查看如何在 matlab 中实现此功能,请访问:

http://dl.acm.org/citation.cfm?id=363419.363423

大约只有 10 行代码。

此外,请记住在处理传输而不是反射时使用对数(分贝)刻度。

【讨论】:

    【解决方案3】:

    这不在 Matlab 中,但 WolframBlog 为 Mathematica 提供了类似的内容,它可能满足您的需求。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-07-14
      • 1970-01-01
      • 1970-01-01
      • 2013-04-10
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-11-05
      相关资源
      最近更新 更多