OpenCV边缘提取

4

我有一张图片,想要创建一个边缘直方图。我将图像分成1100个图像块,并尝试在每个块中找到边缘及其方向(水平,垂直,45°对角线,135°对角线或非定向)。

如何提取有关边缘的信息?你有什么想法吗?

谢谢!

1个回答

9
我在这篇论文中找到了答案:Won的《高效使用MPEG-7边缘直方图描述符》。
我的目标是找到以下边缘: Edge types Won将每个图像块分成4个部分,计算每个部分的平均灰度级,并使用以下系数: coeffs 我们按照以下方式使用这些系数并获得5个值: indicators 通过阈值处理,我们估计每种类型的边缘:
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。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接