# -*- coding: utf-8 -*-
"""
Created on Thu Nov 22 09:21:04 2018

@author: pivatom
"""

import numpy as np
import cv2

min_seg_threshold = 1.05
max_seg_threshold = 4

def calcSkinSample(event, x, y, flags, param):
    if event == cv2.EVENT_FLAG_LBUTTON:
        sample = img[x:x+10, y:y+10]
        min = 255
        max = 0
        for line in sample:
            avg = np.sum(line)/10
            if avg < min:
                min = avg
            if avg > max:
                max = avg
        min_seg_threshold = min
        max_seg_threshold = max

def draw_rect(event, x, y, flags, param):
    if event == cv2.EVENT_FLAG_LBUTTON:
        print("LbuttonClick")
        cv2.rectangle(img, (x,y), (x+10, y+10), (0,0,255), 3)

img = cv2.imread('H:\car\GestureRecognition\IMG_0818.png', 1)

# Downscale the image
img = cv2.resize(img, None, fx=0.1, fy=0.1, interpolation = cv2.INTER_AREA)

cv2.namedWindow("Hand")
cv2.setMouseCallback("Hand", draw_rect)

# prevent divide by zero, by just forcing pixel to be ignored.
#np.where(img[:,:,1] == 0, 0, img[:,:,1])
#img[(img[:,:,2]/img[:,:,1] > min_seg_threshold) & (img[:,:,2]/img[:,:,1] < max_seg_threshold)] = [255,255,255]

while(1):
    cv2.imshow("Hand", img)
    if cv2.waitKey(0):
        break
cv2.destroyAllWindows()
