Skip to content

Commit c303246

Browse files
Update colordetect.py
1 parent 8b3b6e8 commit c303246

File tree

1 file changed

+16
-19
lines changed

1 file changed

+16
-19
lines changed

Diff for: colordetect.py

+16-19
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,8 @@
11
import RPi.GPIO as GPIO
2+
#CONNECT THESE TWO PINS TO ARDUINO PINS
23
pin=11
34
pin1=13
5+
#GPIO PINS TO SEND TWO BINARY DATA TO ARDUINO 10,01 OR 11 DEPENDING ON COLOR
46
GPIO.setmode(GPIO.BOARD)
57
GPIO.setwarnings(False)
68
GPIO.setup(pin,GPIO.OUT)
@@ -15,12 +17,15 @@
1517
cr=0
1618
cb=0
1719
cg=0
18-
ret,im = cap.read()
20+
ret,im = cap.read() #READ FRAMES
21+
hsv = cv2.cvtColor(im,cv2.COLOR_BGR2HSV) #CONVERT FRAMES FROM COLOR TO HSV
22+
#lower mask red (IF YOU WANT TO ADD RED COLOR TO THIS PROGROM UNCOMMENT IT)
23+
'''
24+
THE PIXELS IN THE IMAGE IN THE RANGE IN cv2.inRange() will be converted to white pixels and rest black
1925
20-
#frame=cv2.imread('1.2.jpg',1)
21-
hsv = cv2.cvtColor(im,cv2.COLOR_BGR2HSV)
22-
#lower mask red
23-
'''lower_red = np.array([0,50,50])
26+
27+
28+
lower_red = np.array([0,50,50])
2429
upper_red = np.array([20,255,255])
2530
mask0 = cv2.inRange(hsv, lower_red ,upper_red)
2631
@@ -45,25 +50,25 @@
4550
cv2.imshow('mask red',mask)
4651
#cv2.imshow('mask blue',maskb)
4752
#cv2.imshow('mask green',maskg)
48-
cr=cv2.countNonZero(mask)
53+
cr=cv2.countNonZero(mask) #COUNTS THE WHITE PIXELS IN IMAGE THAT CONTAINS WHITE AND BLACK PIXELS
4954
cb=cv2.countNonZero(maskb)
5055
cg=cv2.countNonZero(maskg)
5156
if(cb>4000):
52-
print 'blue'
57+
print 'blue' #SEND 1 0 TO ARDUINO
5358
GPIO.output(pin,GPIO.HIGH)
5459
GPIO.output(pin1,GPIO.LOW)
5560
time.sleep(1)
5661
GPIO.output(pin,GPIO.LOW)
5762
GPIO.output(pin1,GPIO.LOW)
5863
elif(cg>4000):
59-
print 'green'
64+
print 'green'#SEND 0 1 TO ARDUINO
6065
GPIO.output(pin,GPIO.LOW)
6166
GPIO.output(pin1,GPIO.HIGH)
6267
time.sleep(1)
6368
GPIO.output(pin,GPIO.LOW)
6469
GPIO.output(pin1,GPIO.LOW)
6570
elif(cr>8000):
66-
print 'yellow'
71+
print 'yellow' #SEND 1 1 TO ARDUINO
6772
GPIO.output(pin,GPIO.HIGH)
6873
GPIO.output(pin1,GPIO.HIGH)
6974
time.sleep(1)
@@ -75,16 +80,8 @@
7580
#print ('red=',cr)
7681
#print ('blue',cb)
7782
#print ('green',cg)
78-
if cv2.waitKey(1) & 0xff==ord('q'):
79-
80-
break
81-
82-
83-
84-
85-
86-
87-
83+
if cv2.waitKey(1) & 0xff==ord('q'):
84+
break
8885
#cv2.waitKey()
8986
cap.release()
9087
cv2.destroyAllWindows()

0 commit comments

Comments
 (0)