2016-07-04 3 views
0

я использовать этот скрипт для определения цвета:OpenCV обнаружение питона цвета с булевой выходом

# импортировать необходимые пакеты

import numpy as np 
    import argparse 
    import cv2 

# построить аргумент синтаксический разбор и разбор аргументов

ap = argparse.ArgumentParser() 
ap.add_argument("-i", "--image", help = "path to the image") 
args = vars(ap.parse_args()) 

# загрузить изображение

image = cv2.imread(args["image"]) 

# определить список границ

boundaries = [ 
     ([100,50,220],[135,80,245]), 
] 

# цикл по границам

for (lower, upper) in boundaries: 
     # create NumPy arrays from the boundaries 
     lower = np.array(lower, dtype = "uint8") 
     upper = np.array(upper, dtype = "uint8") 

     # find the colors within the specified boundaries and apply 
     # the mask 
     mask = cv2.inRange(image, lower, upper) 
     output = cv2.bitwise_and(image, image, mask = mask) 
     print (output) 

     # show the images 
     cv2.imshow("images", np.hstack([image, output])) 
     cv2.waitKey(0) 

Мне нужна логическая переменная для цвета обнаружить или нет. Как я могу это сделать?

С уважением Томас

ответ

1

здесь мое собственное решение:

# импортировать необходимые пакеты

import shutil 
import numpy as np 
import argparse 
import cv2 

# построить аргумент синтаксический разбор и разбор аргументов

ap = argparse.ArgumentParser() 
ap.add_argument("-i", "--image", help = "path to the image") 
args = vars(ap.parse_args()) 

# нагрузки изображение

image = cv2.imread(args["image"]) 

# определить список границ

boundaries = [ 
     ([100,50,220],[135,80,245]), 
] 

# цикл по границам

for (lower, upper) in boundaries: 

# создать Numpy массивы от границ

lower = np.array(lower, dtype = "uint8") 
    upper = np.array(upper, dtype = "uint8") 

# найти цвета в пределах заданные границы и применить маску

 mask = cv2.inRange(image, lower, upper) 
     if np.sum(mask) < 100: 
     shutil.move(args["image"], "/temp/") 

С уважением Томас

 Смежные вопросы

  • Нет связанных вопросов^_^