matheiszr / kepfeldolgozas

MIT License
0 stars 1 forks source link

Input kép feldolgozás #3

Open pataiadam opened 8 years ago

pataiadam commented 8 years ago
pataiadam commented 7 years ago

Pseudo:

A képek előfeldolgozása

preprocess(img):
  gray = cv2.cvtColor(img,cv2.COLOR_BGR2GRAY)
  blur = cv2.GaussianBlur(gray,(5,5),2 )
  thresh = cv2.adaptiveThreshold(blur,255,1,1,11,1)
  return thresh

A feldolgozott képeket átadjuk ennek:

imgdiff(img1,img2):
  img1 = cv2.GaussianBlur(img1,(5,5),5)
  img2 = cv2.GaussianBlur(img2,(5,5),5)    
  diff = cv2.absdiff(img1,img2)  
  diff = cv2.GaussianBlur(diff,(5,5),5)    
  flag, diff = cv2.threshold(diff, 200, 255, cv2.THRESH_BINARY) 
  return np.sum(diff)  

Ez visszaadja a legjobban hasonlító kártyákat

find_closest_card(training,img):
  features = preprocess(img)
  return sorted(training.values(), key=lambda x:imgdiff(x[1],features))[0][0]