Histogram of Oriented Gradients vs Edge Orientation Histograms

I am not clear about the difference between the HOG and EOH. Hog is based on image derivatives EOH is based on edge directions. It seems that HOG also somehow a representation of EOH.

Could you please give me some explanation about how EOH differs from HOG and the advantages over EOH compare to HOG. In what circumstances we can use EOH compare to HOG?


I think the main difference is that for a HOG, the actual gradient direction is calculated and then binned, where for an EOH the edge orientation is evaluated by searching the maximum response over a set of edge filter kernels. So you could say that HOG does the binning after the gradient computation, where EOH directly calculates the gradient in bins. Depending on the amount of bins you want, one will be faster than the other.

In an EOH, light-dark and dark-light edges are usually treated the same and the orientations are therefore in a range of 0 to pi, where in a HOG the bins usually span a full 2*pi. You can easily make an EOH do this too however.


Although, I don't think there is a unique definition of them, and details can vary at many levels (eg how to calculated orientations (or orientation gradients)), the key is that the histograms built by the Edge Orientation Histograms only take into consideration the gradient of the pixels that correspond to edges (which in turn are calculated with some other method, eg canny edges), whereas Histograms of Oriented Gradients take into consideration all the gradients of each pixel.

I might be wrong, but that is how I implemented the EOH: http://robertour.com/2012/01/26/edge-orientation-histograms-in-global-and-local-features/

链接地址: http://www.djcxy.com/p/10984.html

上一篇: 限制指针和内联

下一篇: 定向梯度直方图vs边缘定位直方图