我有一张图像,我想创建一个边缘直方图。我将图像分成 1100 个图像块,并尝试在每个块中找到边缘及其方向(水平、垂直、45° 对角线、135° 对角线或非定向)。
如何提取有关边缘的信息?你有什么想法?
问候!
我有一张图像,我想创建一个边缘直方图。我将图像分成 1100 个图像块,并尝试在每个块中找到边缘及其方向(水平、垂直、45° 对角线、135° 对角线或非定向)。
如何提取有关边缘的信息?你有什么想法?
问候!
我在这篇论文中找到了答案:Efficient Use of MPEG-7 Edge Histogram Descriptor by Won。
我的目标是找到以下优势:
将每个图像块分成 4 个部分,计算每个部分的平均灰度,并使用以下系数:
我们如下使用这个系数并得到 5 个值:
使用阈值,我们估计每种类型的边缘:
program SetEdgeType(max, m_nd, m_h, m_v, m_d_45, m_d_135)
{
if (max < TEdge) then EdgeHisto(0)++
else
{
if (m_nd > T0) then EdgeHisto(1)++
if (m_h > T1) then EdgeHisto(2)++
if (m_v > T1) then EdgeHisto(3)++
if (m_d_45 > T2) then EdgeHisto(4)++
if (m_d_135 > T2) then EdgeHisto(5)++
}
endif
return(EdgeHisto)
}
Savvas A. Chatzichristofis 将阈值选择为:TEdge=14,T0=0.68,T1=T2=0.98。