I need a working application for computer vision template matching. It needs to be scale and rotation invariant. I want the template matching part to be based on two approaches : grayscale matching / NCC, and Edge based matching ( like shown on [login to view URL] ). My stackoverflow question ( [login to view URL] ) will further explain what I need this for.
I'm currently using OpenCV 4.2 in my project so if you want to use openCV, please use this version. The functions should take arguments for min ,max angle of rotation, possible scale difference for pyramid approach ( eg. 10 would mean the template found could be +- 10% the size of the template image ), matching threshold, the template image, and the scene image.
In case of edge based matching approach, the template input for the function will be and edge template image ( I can detect the edges of an image, manually remove the extra/non required edges, and send the required edge model as input to the function )
The expected response time should be less than 200-300 ms. The application would work on min i5 processor having atleast 4-8 GB ram.
I want the application to be using the simple NCC/grayscale matching/fourier analysis based matching approach and not the modern algos like SIFT, SURF, etc. Preferred language is C++ / C# / C++CLI as it is supposed to a part of a C# project.
I've attached the sample scene images and the corresponding templates. Feel free to contact me for any other details.