bihicheng / Chamfer-Matching

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Chamfer-Matching (work in progress abandoned)

Warning:

If you are looking for an efficent and working C++ implementation of the Chamfer matching method, you can directly look at the Fast Directional Chamfer Matching library. This repository is only intended for versioning purpose and internal developments.

Goals:

  • Detect a template image in a query image using only edge information:
    • detection at single scale.
    • detection at multiple scales.
    • detection at multiple scales and with rotation.
    • multiple detections at multiple scales and with rotation, highly cluttered background.
  • Detect in a query image the most probable template image and retrieve the corresponding pose (from the same object, multiple template images at different orientations are saved with the corresponding object pose)
    • detection at single scale.
    • detection at multiple scales.
    • detection at multiple scales and with rotation.
    • multiple detections at multiple scales and with rotation, highly cluttered background.

First result:

  • Template edges image:

Template edges image

  • Query edges image: Query edges image

  • Detection at single scale: Detection at single scale

References (non exhaustive):

Some available implementations in C++:

TODO:

  • Allow to detect a template image with a different orientation in the query image.
  • Speed-up the computation ! (Need to implement a different approach.)
  • Test the robustness of the detection.
  • Test the detection from multiple template images.

Ideas:

  • Add a pyramidal detection (coarse-to-fine approach).
  • Try to implement and use an integral distance transform image.

About

License:GNU General Public License v3.0


Languages

Language:C++ 99.3%Language:CMake 0.7%