 AimerNeige ревизій цього gist 2 years ago. До ревизії
                
                AimerNeige ревизій цього gist 2 years ago. До ревизії
                
                    1 file changed, 47 insertions
hsv.py(файл створено)
| @@ -0,0 +1,47 @@ | |||
| 1 | + | # -*- coding: utf-8 -*- | |
| 2 | + | # more detail at this video | |
| 3 | + | # https://www.youtube.com/watch?v=xjrykYpaBBM | |
| 4 | + | import cv2 | |
| 5 | + | import numpy as np | |
| 6 | + | ||
| 7 | + | ||
| 8 | + | def empty(v): | |
| 9 | + | pass | |
| 10 | + | ||
| 11 | + | ||
| 12 | + | img = cv2.imread("./test.jpg") | |
| 13 | + | # img = cv2.resize(img, (0, 0), fx=0.3, fy=0.3) | |
| 14 | + | ||
| 15 | + | cv2.namedWindow('TrackBar') | |
| 16 | + | cv2.resizeWindow('TrackBar', 640, 320) | |
| 17 | + | ||
| 18 | + | cv2.createTrackbar('Hue Min', 'TrackBar', 0, 179, empty) | |
| 19 | + | cv2.createTrackbar('Hue Max', 'TrackBar', 179, 179, empty) | |
| 20 | + | cv2.createTrackbar('Sat Min', 'TrackBar', 0, 255, empty) | |
| 21 | + | cv2.createTrackbar('Sat Max', 'TrackBar', 255, 255, empty) | |
| 22 | + | cv2.createTrackbar('Val Min', 'TrackBar', 0, 255, empty) | |
| 23 | + | cv2.createTrackbar('Val Max', 'TrackBar', 255, 255, empty) | |
| 24 | + | ||
| 25 | + | hsv = cv2.cvtColor(img, cv2.COLOR_BGR2HSV) | |
| 26 | + | ||
| 27 | + | while True: | |
| 28 | + | h_min = cv2.getTrackbarPos('Hue Min', 'TrackBar') | |
| 29 | + | h_max = cv2.getTrackbarPos('Hue Max', 'TrackBar') | |
| 30 | + | s_min = cv2.getTrackbarPos('Sat Min', 'TrackBar') | |
| 31 | + | s_max = cv2.getTrackbarPos('Sat Max', 'TrackBar') | |
| 32 | + | v_min = cv2.getTrackbarPos('Val Min', 'TrackBar') | |
| 33 | + | v_max = cv2.getTrackbarPos('Val Max', 'TrackBar') | |
| 34 | + | print(h_min, h_max, s_min, s_max, v_min, v_max) | |
| 35 | + | ||
| 36 | + | lower = np.array([h_min, s_min, v_min]) | |
| 37 | + | upper = np.array([h_max, s_max, v_max]) | |
| 38 | + | ||
| 39 | + | mask = cv2.inRange(hsv, lower, upper) | |
| 40 | + | result = cv2.bitwise_and(img, img, mask=mask) | |
| 41 | + | ||
| 42 | + | cv2.imshow('img', img) | |
| 43 | + | cv2.imshow('hsv', hsv) | |
| 44 | + | cv2.imshow('mask', mask) | |
| 45 | + | cv2.imshow('result', result) | |
| 46 | + | ||
| 47 | + | cv2.waitKey(1) | |
    
    
                            
                            Новіше
    
    
    Пізніше