2

假设我们有许多彩色图像是一些纹理图案的例子。这种纹理被某些外来物体“破坏”的情况很少见。检测这些罕见异常的最佳方法是什么?如何检测纹理中断

我想过培训CNN,但好例子的数量远远超过了坏例子,所以我有我的疑惑。我开始研究灰度共生矩阵(GLCM)和局部二元模式(LBP),但我认为颜色信息可以在确定中断发生中起重要作用。我能否从这些提取的特征(GLCM或LBP)中找到分布并计算新图像属于此分布的概率?

感谢您的帮助!

+0

你能分享一些样本图片吗? – Tonechas

+0

@tonechas不幸的是,我不能,这是关于具体的,因为我可以得到关于这个问题 –

+1

没有更多的信息很难回答这个问题,但你看看法律的纹理措施?老歌,但可能有用。无论使用何种技术,都取决于您的应用。自然或制造的物体/场景?来自相机的实时图像或具有不同分辨率/质量的图像文件?如果您无法透露详细信息,那么可以考虑花费一天的时间在当地的工程图书馆中查看教科书,论文和会议文件(这些文件常常在线付费)。有几次,我发现几本没有提及的书籍帮助我解决了奇怪的问题。 – Rethunk

回答

1

如果没有看到一些示例图像很难找出问题所在。原则上,可以使用各种方法来检测纹理中断,即GLCM特征,LBP,Law的掩模,矢量量化等。测量局部熵是一种可行的方法。考虑下面的图像,其中,我们可以清楚区分两种类型的纹理:

square textured object on a textured background

下面的代码片断中读取图像,计算局部熵用于在圆形邻域的每个像素或给定半径25和显示结果:

from skimage import io 
from skimage.filters.rank import entropy 
from skimage.morphology import disk 

img = io.imread('https://i.stack.imgur.com/Wv74a.png') 
R = 25 
filtered = entropy(img, disk(R)) 
io.imshow(filtered) 

它清楚地从局部熵值可以被用于检测纹理破坏所得熵地图射出。

local entropy values