In the process of trying to estimate whether a ROI contains [Japanese] text, I need to get a rough count of edges, hopefully binned by length and/or orientation... I think this would give me strong-enough features to judge if the ROI is likely to contain text or not.

However, I can't seem to figure out an efficient (this eventually has to work on a video stream) way to get such a histogram (or even just a count of edges for certain length/orientation threshold): Hough transforms will tend to focus on certain shapes (lines etc.) while Canny and Sobel will detect any type, but their output is not particularly useful for counting...

I would appreciate any suggestion or hint at some algorithm I can use, to quickly extract a list of edges from an image...


1 Answer 1


I don't know if OpenCV has some implementation - but i can provide you with a pointer of algorithm for this.

MPEG 7 provides a fairly well defined (and well thought out) edge histogram descriptor [EHD] which essentially serves your purpose.

You can refer to this: Efficient Use of MPEG-7 Edge Histogram Descriptor which i think is an excellent paper on this.

If you want to see some implementation of MPEG-7 you can find it on JOANNEUM RESEARCH MPEG 7 page.

For more information on MPEG-7: List of possible image features for content based image retrieval

  • $\begingroup$ Thanks for the answer. Although it is not quite what I need (the MPEG7 algorithm only gives edge bins for small area of the screen, since it is based on a rather simple subdivision of each area), it is close enough, so I'll accept it... $\endgroup$
    – Dave
    Commented Feb 20, 2012 at 7:48
  • $\begingroup$ Incidentally, it turned out that the exact algorithm was described (with more detail than the above papers) on SO: stackoverflow.com/questions/909542/opencv-edge-extraction $\endgroup$
    – Dave
    Commented Feb 20, 2012 at 7:49

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.