OpenCVSharp Matching Algorithm Enhancement

Job ID: 39631493

Budget: $150 – $200 USD

I need an expert to improve an OpenCVSharp matching algorithm. The primary goal is to enhance accuracy, especially in matching geometric shapes. The project will be divided into four stages. The code language is C#

Current Issues:
- Slow processing speed
- Inaccurate matching

Ideal Skills and Experience:
- Proficiency in OpenCV and OpenCVSharp
- Experience with algorithms for geometric shape matching
- Strong background in performance optimization
- Ability to analyze and reduce false positives

Stage #1:
Matching several geometric part images with the initial image which has many geometric parts inside. Initial image is generally 2000px by 15000px. and geometric part images are starting from 80x80 goes up to 1500x300px. Geometric part images are simple black geometric shapes.

Stage#2:
Define the tolerance by inner and outer offsets. Define COG and angle of rotation. Some parts have same geometry but different hole positions. Define blob properties such as number of edges, edge lengths, hole no , hole diameters, perimeter, area , etc. Matching settings are going to be adjusted.

Stage#3:
Connected edge and neighbor edge length implementation and matching. Defining inner contours or holes and changing matching accordingly. Generate settings so that user can pick just match with outer contours or match by checking inner contours or holes. Some parts has shifts in COG points. Need to be checked and optimized.

Stage#4:
Fine tuning and implementing to our existing code. Speed optimization. Adding reference point to the image and detect it on every image. Timing counters need to be added to the code.


Each stage is going to be a milestone. In order to check the code is running correctly, on each stage 10 different sets of initial images are going to be tested.