【问题标题】:Identifying a skin disease using image processing使用图像处理识别皮肤病
【发布时间】:2016-03-11 18:49:00
【问题描述】:

我目前有 2 个独立的数据集,分别属于 2 种不同的皮肤病。我画了一个abstract image differentiating the 2 diseases on MS Paint.Disease 1 的形状往往比Disease 2 更圆,而且纹理也有差异。

使用 Matlab 上的纹理过滤器和分割函数,我能够定位 Disease 12 的疾病区域(并在其周围绘制边框)。我的问题是如何区分这两种疾病?有没有我可以使用的功能,或者我最好在数据集上使用某种形式的机器学习。

任何建议都是有帮助的,因为我才刚开始使用 Matlab。

【问题讨论】:

  • 我认为这是只有你才能回答的问题。您必须一遍又一遍地检查数据,并寻找可靠不同的特征。您必须花费数小时和数小时来翻阅它。你已经注意到纹理是不同的。这是一个好的开始。它们有何不同?如果你用文字来描述它,你会如何描述它的区别?如果您要编写伪代码,您将如何描述差异?一旦你有了这些答案,你就可以开始研究各种算法,编码等等。
  • @kkuilla 我发现的两种疾病之间的主要区别是disease1 几乎总是以圆形出现,而disease 2 的形状是随机的,可能会随机取一个圆形的形状。在纹理方面,disease 1 在红色斑块的中间有一个白色的形成。你能建议一个开始的地方,一个可能仅就这些特征而言的算法吗?即形状、颜色和质地? (我已经在 Matlab 中使用过纹理过滤器。)
  • 如果你有足够的数据,你总是可以把神经网络扔到这样的问题上……

标签: matlab image-processing machine-learning computer-vision matlab-cvst


【解决方案1】:

是的,我会说纹理表征:

  1. 大小区域矩阵(对同质/异质描述非常有效)
  2. Haralick(共现矩阵)
  3. 游程长度矩阵
  4. 本地二进制模式(现在广泛使用)。
  5. 如果您认为形状相关,则用于表征形状的形状索引。

然后您使用您选择的分类器(神经网络、SVM 等)。

另一种解决方案可能是使用卷积神经网络,但这需要更多的工作和数据。但是非常高效。

【讨论】:

  • 谢谢,这些纹理特征函数是否已经在 Matlab 中可用?
  • Haralick 当然,我猜你也会找到 LBP,当然还有 RLM。但我对 SZM 有疑问。
  • 正如在另一篇文章中所说,对于 LBP:extractLBPFeatures
【解决方案2】:

您可以使用regionprops 函数计算各种形状特征,例如面积、周长、偏心率等。特别是偏心率会告诉您形状与圆的接近程度。

对于纹理特征,请尝试计算机视觉系统工具箱中的 extractHOGFeaturesextractLBPFeatures 函数。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2015-11-24
    • 1970-01-01
    • 2019-04-27
    • 2012-12-06
    • 2018-05-11
    • 2015-12-23
    • 2012-10-26
    • 1970-01-01
    相关资源
    最近更新 更多