face_recognition.py

# この作品はMITライセンスの下で提供されています。
# Copyright (c) 2013-2023 OpenMV LLC. 全著作権所有。
# https://github.com/openmv/openmv/blob/master/LICENSE
#
# LBP記述子による顔認識。
# Timo Ahonen氏の論文 "Face Recognition with Local Binary Patterns" を参照してください。
#
# この例を実行する前に:
# 1) AT&T顔データベースをダウンロードしてください http://www.cl.cam.ac.uk/Research/DTG/attarchive/pub/data/att_faces.zip
# 2) orl_faces ディレクトリを展開し、SDカードのルートにコピーしてください。
#
# 注記:これは上記論文の単なるPoC(概念実証)実装であり、実際の環境ではうまく動作しません。

import image

SUB = "s2"
NUM_SUBJECTS = 5
NUM_SUBJECTS_IMGS = 10

img = image.Image("orl_faces/%s/1.pgm" % (SUB)).mask_ellipse()
d0 = img.find_lbp(roi=(0, 0, img.width(), img.height()))
img = None

print("")
for s in range(1, NUM_SUBJECTS + 1):
    dist = 0
    for i in range(2, NUM_SUBJECTS_IMGS + 1):
        img = image.Image("orl_faces/s%d/%d.pgm" % (s, i)).mask_ellipse()
        d1 = img.find_lbp(roi=(0, 0, img.width(), img.height()))
        dist += image.match_descriptor(d0, d1)
    print("Average dist for subject %d: %d" % (s, dist / NUM_SUBJECTS_IMGS))

results matching ""

    No results matching ""