我有 50 个图像,并通过将它们分为两个类(皮肤和伤口)并存储它们各自的绿色 channel 值,创建了每个图像的绿色 channel 数据库。
另外,我有 1600 个伤口像素值和 3000 个皮肤像素值。
现在我必须在 matlab 中使用贝叶斯分类,使用我拥有的数据库对新(测试)图像中的皮肤和伤口像素进行分类。我尝试过内置命令 diaglinear
但结果很差,导致很多错误分类。
此外,我不知道它是否是正态分布,因此无法使用高斯估计来查找数据的条件概率密度函数。
有什么方法可以进行像素级分类吗?
如果问题中有任何不清楚的部分,请询问。
我正在寻求帮助。提前致谢。
最佳答案
如果您确实想使用像素级分类(非常简单,但为什么不呢?)尝试使用 hist()/imhist() 探索像素值分布。它可能会给你关于高斯性的线索...... 其次,如果您有曲线拟合工具箱,您可以使用 fit() 手动将您的值拟合到一些适当的曲线(高斯?)(或者再次手动执行)。然后将曲线乘以伤口/皮肤的概率(如果您喜欢它作为 MAP 分类器),最后找到它们的交点。沃埃拉!你有你的决策值V。 若曦皮肤 否则 -> 伤口
关于matlab - matlab中的贝叶斯分类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11243490/