extraction OpenCV bord
-
05-09-2019 - |
Question
J'ai une image et je veux créer un histogramme de bord. Je diviser l'image en blocs d'image 1100 et d'essayer de trouver bord et sa direction (horisontal, vertical, 45 ° en diagonale, diagonale ou non directionnel 135 °) dans chaque bloc.
Comment puis-je extraire ces informations sur les bords? Avez-vous des idées?
Cordialement!
La solution
J'ai trouvé la réponse dans cet article. L'utilisation efficace Edge MPEG-7 Histogramme par Won Descriptor
Mon but était de trouver les bords suivants:
Won diviser chaque bloc d'image en 4 parties, de calculer le niveau de gris moyen dans chacun d'eux et en utilisant les coefficients suivants:
Nous utilisons ces coefficients comme suit et obtenir 5 valeurs:
Utilisation seuillage nous estimons chaque type de bord:
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)
}
Les valeurs de seuil ont été sélectionnés par Savvas A. Chatzichristofis être:. TEdge = 14, T0 = 0,68, T1 = T2 = 0,98