From 51781fb3d273bc839d9889dbf52ef321c975e759 Mon Sep 17 00:00:00 2001 From: Kevin Monpara Date: Sun, 21 Apr 2019 16:20:01 -0400 Subject: [PATCH] Merged Changes --- src/Sift_Distance.py | 28 ---------------------------- __main__.py => src/__main__.py | 22 ++++++++-------------- src/main.py | 20 -------------------- 3 files changed, 8 insertions(+), 62 deletions(-) delete mode 100644 src/Sift_Distance.py rename __main__.py => src/__main__.py (82%) delete mode 100644 src/main.py diff --git a/src/Sift_Distance.py b/src/Sift_Distance.py deleted file mode 100644 index 908de09..0000000 --- a/src/Sift_Distance.py +++ /dev/null @@ -1,28 +0,0 @@ -import numpy as np -import cv2 - - -def sift_distance(): - sift = cv2.xfeatures2d.SIFT_create() - original_kp, original_des = sift.detectAndCompute(left,None) - new_kp, new_des = sift.detectAndCompute(right,None) - - bf = cv2.BFMatcher() - matches = bf.knnMatch(original_des, new_des, k=2) - - # Apply ratio test - good = [] - for m, n in matches: - if m.distance < 0.3 * n.distance: - good.append([m]) - - # Featured matched keypoints from images 1 and 2 - pts1 = np.float32([original_kp[m.queryIdx].pt for m in good]) - pts2 = np.float32([new_kp[m.trainIdx].pt for m in good]) - - #convert to complex number - z1 = np.array([[complex(c[0],c[1]) for c in pts1]]) - z2 = np.array([[complex(c[0],c[1]) for c in pts2]]) - - # Distance between featured matched keypoints - FM_dist = abs(z2 - z1) diff --git a/__main__.py b/src/__main__.py similarity index 82% rename from __main__.py rename to src/__main__.py index 699c956..2f34760 100644 --- a/__main__.py +++ b/src/__main__.py @@ -2,6 +2,7 @@ import numpy as np import cv2 from matplotlib import pyplot as plt import os +import file_data def main(): @@ -9,11 +10,12 @@ def main(): images = readImages() #Read in data from Section001_Data.txt - loads, displacements, surface_area, length = readSpecimenData() + specimen, load_disp_data = file_data.read_file("../Section001_Data.txt") #Keep track of Stress and Strains stresses = [] strains = [] + #Get distances using sift distances = getSiftDistance(images[0], images[1]) @@ -31,15 +33,14 @@ def main(): """ for idx in range(0, len(images)-1): distances = getSiftDistance(images[idx], images[idx+1]) - strains.append(getStrain(loads[idx], surface_area)) - #stresses.append(getStress(length, ______)) + strains.append(getStrain(specimen.ol, load_disp_data[idx].disp)) + stresses.append(load_disp_data[idx].stress) youngs_mod = getYoungsModulus(strains[idx] / stress[idx]) """ def readImages(): - my_dir = os.path.dirname(os.path.realpath(__file__)) - image_dir = os.path.join(my_dir, "Images") + image_dir = '../images/' filenames = os.listdir(image_dir) images = [] @@ -47,15 +48,8 @@ def readImages(): images.append(cv2.imread(os.path.join(image_dir,file))) return images -def readSpecimenData(): - # TODO - return None, None, None, None - -def getStrain(load, surface_area): - return load / surface_area - -def getStress(length, change_in_length): - return change_in_length / length +def getStrain(length, displacement): + return displacement / length def getYoungsModulus(strain, stress): return strain / stress diff --git a/src/main.py b/src/main.py deleted file mode 100644 index d0034f2..0000000 --- a/src/main.py +++ /dev/null @@ -1,20 +0,0 @@ -############################################################# -# EECS 442: Computer Vision - W19 # -############################################################# -# Authors: Sravan Balaji & Kevin Monpara # -# Filename: main.py # -# Description: # -# # -############################################################# - -import file_data - - -def main(): - specimen, load_disp_data = file_data.read_file("../Section001_Data.txt") - - print("Done") - - -if __name__ == "__main__": - main()