Explication de routine 25-Machine-Learning->nnn_haar_smile_detection reconnaissance de sourire

(Remarque : cette routine sera supprimée dans la version 3.6.5 et ultérieure du micrologiciel et remplacée par TensorFlow Lite, qui donne de meilleurs résultats. Voir le didacticiel vidéo 42 - Détection de cible de réseau neuronal : https://singtown.com/learn/50918/ )

Tutoriel vidéo 23 - Détection des visages souriants : https://singtown.com/learn/50049/

Avant d'exécuter cette routine, veuillez enregistrer le fichier de réseau neuronal correspondant sur la carte mémoire SD OpenMV dans OpenMV IDE->Outils->Machine Vision->Bibliothèque réseau CNN.

# 笑脸识别例程
import sensor, time, image, os, nn

sensor.reset()                          # 复位并初始化传感器。

sensor.set_contrast(2)
sensor.set_pixformat(sensor.RGB565)     # Set pixel format to RGB565
#设置图像色彩格式,有RGB565色彩图和GRAYSCALE灰度图两种

sensor.set_framesize(sensor.QVGA)       # 将图像大小设置为QVGA (320x240)

sensor.skip_frames(time=2000)
sensor.set_auto_gain(False)

# 加载微笑检测网络
net = nn.load('/smile.network')

# 加载人脸Haar算子
face_cascade = image.HaarCascade("frontalface", stages=25)
print(face_cascade)

# FPS时钟
clock = time.clock()
while (True):
    clock.tick()

    # 捕获快照
    img = sensor.snapshot()

    # 识别人脸
    objects = img.find_features(face_cascade, threshold=0.75, scale_factor=1.25)

    # 检测笑脸
    for r in objects:
        # 调整大小和中心检测区域
        r = [r[0]+10, r[1]+25, int(r[2]*0.70), int(r[2]*0.70)]
        img.draw_rectangle(r)
        out = net.forward(img, roi=r, softmax=True)
        img.draw_string(r[0], r[1], ':)' if (out[0] > 0.8) else ':(', color=(255), scale=2)

    print(clock.fps())

Explication officielle de la fonction du document chinois OpenMV deSingtown Technology :

Explication officielle de la fonction du document chinois OpenMV deSingtown Technology :

results matching ""

    No results matching ""