Commit 4e85fd35 authored by Anders Langlie's avatar Anders Langlie 🦀
Browse files

Merge branch '44-make-matching-more-efficient' into 'master'

Resolve "Make matching more efficient"

Closes #44

See merge request !47
parents 4a65aeb2 58a802d3
......@@ -5,12 +5,10 @@ import glob
min_good_match = 15
match_dist = 0.75
def match_single_image(input_image, match_image):
bf = cv2.BFMatcher()
input_salamander = create_salamander_image(input_image)
match_salamander = create_salamander_image(match_image)
match = bf.knnMatch(input_salamander.descriptors, match_salamander.descriptors, k=2)
def match_single_image(input_salamander, match_salamander):
match = cv2.BFMatcher().knnMatch(input_salamander.descriptors, match_salamander.descriptors, k=2)
goodmatch = []
for m, n in match:
......@@ -20,15 +18,18 @@ def match_single_image(input_image, match_image):
return True, len(goodmatch)
return False, 0
def match_file_structure(input_image: str, match_directory: str):
best_match = -1
match_count = 0
# check if input path is valid:
if os.path.isfile(input_image):
input_salamander = create_salamander_image(input_image)
for folder in os.listdir(match_directory):
name_list = glob.glob(os.path.join(match_directory, folder, "*_str.*"))
for filename in name_list:
res, num_matches = match_single_image(input_image, filename)
res, num_matches = match_single_image(input_salamander, create_salamander_image(filename))
if res and num_matches > match_count:
match_count = num_matches
best_match = int(folder)
......
......@@ -9,7 +9,7 @@ import algorithm.dsift as dsift
import algorithm.segmentation as segmentation
def create_salamander_image(filename: str):
print("Processing image " + filename)
#print("Processing image " + filename)
salamander_image = SalamanderImage(filename)
salamander_image.filename = filename
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment