We propose an algorithm to achieve geometric search. Our algorithm includes three phases: training phase, coarse phase, and fine phase. Instead of comparing the whole pattern with image like NCC (normalized cross-correlation) does, we extract some sample points along edges. This method reduces searching time because the number of comparisons is smaller than NCC. After matching, we have a list of possible instances with scores. Such score means the similarity between the pattern and the matched instance. We can compare these scores with a predefined threshold to decide a found instance to be a true instance or not.