Image Processing – Getting Started with Object Detection and Image Segmentation Algorithm

artificial intelligenceimage processing

Just getting started on a hobby object-detection project. My aim is to understand the underlying algorithms and to this end the overall accuracy of the results is (currently) more important than actual run-time.

I'm starting with trying to find a good image segmentation algorithm that provide a good jump-off point for the object detection phase. The target images would be "real-world" scenes.

I found two techniques which mirrored my thoughts on how to go about this:

  1. Graph-based Image Segmentation:
    http://www.cs.cornell.edu/~dph/papers/seg-ijcv.pdf

  2. Contour and Texture Analysis for Image Segmentation:
    http://www.eng.utah.edu/~bresee/compvision/files/MalikBLS.pdf

The first one was really intuitive to understand and seems simple enough to implement, while the second was closer to my initial thoughts on how to go about this (combine color/intensity and texture information to find regions). But it's an order of magnitude more complex (at least for me).

My question is – are there any other algorithms I should be looking at, that provide the kind of results that these two, specific papers have arrived at? Are there updated versions of these techniques already floating around?

Like I mentioned earlier, the goal is relative accuracy of image segmentation (with an eventual aim to achieve a degree of accuracy of object detection) over runtime, with the algorithm being able to segment an image into "naturally" or perceptually important components, as these two algorithms do (each to varying extents).

I found these two papers after a couple of days of refining my search terms and learning new ones relevant to the exact kind of techniques I was looking for. I have just about reached the end of my personal Google creativity, which is why I am finally here!

I do not know if this is a better fit for cstheory.stackexchange (or even cs.stackexchange). I looked, but cstheory seems more appropriate for intricate algorithmic discussions than a broad question like this. Also, I couldn't find any relevant tags there either! But please do move if appropriate.

Best Answer

Sounds like a fun project. I wonder if your "Google" strategy for refining terms included checking Google Scholar for papers that cite your two sources? For example, the first paper is cited by 1949 other articles, and the second one is cited by 717. Exploring the most highly-cited articles within those two lists should lead you to related and relevant approaches.

Good luck!

Related Topic