Face Detection
Import KOI 2 Library
from future import *
from koi2 import KOI2
Serial Initialization
koi = KOI2(tx, rx)
Initializes the serial connection to KOI.
Parameters:
tx: TX Pin, use P2 for Robotbit EDU
rx: RX Pin, use P12 for Robotbit EDU
Select Face Mask Mode
koi.setModel(7)
Sets the KOI mode to Face Mask Detection.
Get Face Data
koi.xywh[0]
Returns data for the detected face.
Parameters:
data: The type of data to return.
0
X coordinates
1
Y coordinates
2
Width of face
3
Height of face
Get Mask Value
koi.strVal
Returns whether the face detected is wearing a mask.
Return Value:
"with-mask": Person is wearing mask
"without-mask": Person is not wearing mask
Sample Code: Mask Detection
from future import *
from koi2 import KOI2
koi = KOI2('P2', 'P12')
koi.setModel(7)
sleep(15)
koi.direction(2)
koi.mirror(0)
screen.sync = 0
while True:
koi.read_from_uart()
screen.fill((0, 0, 0))
screen.text(koi.strVal,5,10,2,(255, 255, 255))
screen.text(koi.xywh[0],5,40,1,(255, 255, 255))
screen.text(koi.xywh[1],5,60,1,(255, 255, 255))
screen.text(koi.xywh[2],5,80,1,(255, 255, 255))
screen.text(koi.xywh[3],5,100,1,(255, 255, 255))
screen.refresh()
Select Face Attribute Mode
koi.setModel(9)
Sets the KOI mode to Face Attribute Detection.
Get Face Data
koi.xywh[data]
Returns data for the detected face.
Parameters:
data: The type of data to return.
0
X coordinates
1
Y coordinates
2
Width of face
3
Height of face
Get Number of Faces
koi.getFaceAttr(attr)
Returns the number of faces detected.
Return Value: Integer
Parameters:
attr:
8
Total number of faces detected
9
Total number of male detected
10
Total number of open mouths detected
11
Total number of smiles detected
12
Total number of glasses detected
13
Total number of female detected
Get Attribute of Main Character
Returns the attribute of main character.
Return Value: Boolean
Parameters:
attr:
4
Whether the person is a male
5
Whether the person has an open mouth
6
Whether the person is smiling
7
Whether the person is wearing glasses
Sample Code: Face Attribute
from future import *
from koi2 import KOI2
koi = KOI2('P2', 'P12')
koi.setModel(9)
sleep(15)
koi.direction(2)
koi.mirror(0)
screen.sync = 0
while True:
koi.read_from_uart()
screen.fill((0, 0, 0))
screen.text(int(koi.getFaceAttr(4)),5,10,1,(255, 255, 255))
screen.text(koi.xywh[0],5,30,1,(255, 255, 255))
screen.text(koi.xywh[1],5,50,1,(255, 255, 255))
screen.text(koi.xywh[2],5,70,1,(255, 255, 255))
screen.text(koi.xywh[3],5,90,1,(255, 255, 255))
screen.refresh()
Last updated