【问题标题】:Opencv Edge extractionOpencv边缘提取
【发布时间】:2010-10-28 21:57:52
【问题描述】:

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

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

问候!

【问题讨论】:

    标签: image image-processing opencv edge-detection


    【解决方案1】:

    我在这篇论文中找到了答案: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。

    【讨论】:

      猜你喜欢
      • 2016-06-13
      • 2018-10-24
      • 1970-01-01
      • 2012-09-12
      • 1970-01-01
      • 2012-01-28
      • 2017-07-06
      • 2013-09-12
      • 2017-01-02
      相关资源
      最近更新 更多