精品欧美一区二区三区在线观看 _久久久久国色av免费观看性色_国产精品久久在线观看_亚洲第一综合网站_91精品又粗又猛又爽_小泽玛利亚一区二区免费_91亚洲精品国偷拍自产在线观看 _久久精品视频在线播放_美女精品久久久_欧美日韩国产成人在线

用Python寫個簡單但強大的人臉識別系統

開發 后端 人臉識別
face_recognition對于公司或者是一些工程實踐性的應用場景來說是非常好用好上手的利器,不需要你有太多的理論基礎就可以比較輕松地去完成一個識別項目,所以今天我們專門來講解一下。

face_recognition是一個強大、簡單、易上手的人臉識別開源項目,并且配備了完整的開發文檔和應用案例,特別是兼容樹莓派系統。 face_recognition一經開源發布就得到的廣泛的熱捧,使用簡單,功能強大成為其非常顯著的標簽。face_recognition對于公司或者是一些工程實踐性的應用場景來說是非常好用好上手的利器,不需要你有太多的理論基礎就可以比較輕松地去完成一個識別項目,所以今天我們專門來講解一下。

首先,face_recognition項目開源地址在這里:

https://github.com/ageitgey/face_recognition

網上有比較完整的API說明以及實例應用,我這里就不多去說明了。首先,使用face_recognition需要安裝,可以通過 pip 完成。如果安裝遇到報錯可參考:

https://yishuihancheng.blog.csdn.net/article/details/102679177

安裝完成后就可以使用了,在編碼前可以通過簡單的測試來檢驗是否安裝成功,如下所示:

成功安裝后,就可以進入使用了。

1、定位圖像中的人臉 

  1. def demoFunc():  
  2.     '''  
  3.     在一張包含人臉的圖片中圈出來人臉  
  4.     '''  
  5.     image = face_recognition.load_image_file("test.jpg")  
  6.     face_locations = face_recognition.face_locations(image)  
  7.     for one in face_locations:     
  8.         y0, x1, y1, x0=one  
  9.         cv2.rectangle(image, pt1=(x0, y0), pt2=(x1, y1), color=(0, 0, 255), thickness=3 
  10.     cv2.imshow('aaa', image)  
  11.     if cv2.waitKey(0) & 0xFF == ord('q'):  
  12.         cv2.destroyAllWindows() 

從網上隨便找了一張圖片,如下所示:

定位結果如下所示:

感覺還是很強大的,當然了,在我實踐的過程中也發現了部分圖像識別檢測人臉失敗的問題,這個畢竟不是一個百分之百的問題,face_recognition更像是一個基礎框架,幫助我們更加高效地去構建自己的人臉識別的相關應用。

2、切割圖像中的每個人臉保存本地 

  1. def demoFunc():  
  2.     '''  
  3.     圖片中人臉截圖保存  
  4.     '''  
  5.     img = cv2.imread("test.jpg")  
  6.     image = face_recognition.load_image_file("test.jpg")  
  7.     face_locations = face_recognition.face_locations(image)  #(top, right, bottom, left)  
  8.     for i in range(len(face_locations)):  
  9.         y0, x1, y1, x0 = face_locations[i]  
  10.         cropped = img.crop((x0,y0,x1,y1))  # (left, upper, right, lower)  左上角  右下角  
  11.         cropped.save(str(i)+"_.jpg") 
  12.         cropped.show() 

使用的原始圖像同上,結果如下所示:

五張人臉都檢測成功,并且保存成功,這里主要是要注意一些face_locations這個函數的返回結果,返回的子列表中每個子列表包含4個元素,分別是單張人臉圖像的左上頂點和右下頂點坐標,主要需要注意的是這四個參數的順序,我給出來的結果中(x0,y0)表示左上頂點的坐標,(x1,y1)表示右下頂點的坐標。

3、將圖像中的每個人臉編碼成一個128維的向量 

  1. def demoFunc():  
  2.     '''  
  3.     將圖片中的每張人臉編碼成一個128維長度的向量  
  4.     '''  
  5.     image = face_recognition.load_image_file("cl.jpg")  
  6.     face_locations = face_recognition.face_locations(image)  #(top, right, bottom, left)   
  7.     face_encodings = face_recognition.face_encodings(image, face_locations)  #將單個人臉數據轉化為一個128維的向量  
  8.     for one in face_encodings:  
  9.         print('one: ',one) 

進行到這里就不得不去講一下face_recognition的一些應用原理,下面是我的一些總結,如有不當歡迎指教。

face_recognition模塊人臉識別應用實現的原理:

(1) 給定想要識別的人臉的圖片并對其進行編碼(每個人只需要一張),并將這些不同的人臉編碼構建成一個列表。編碼其實就是將人臉圖片映射成一個128維的特征向量。

(2) 計算圖像向量之間的相似度根據閾值或者是容錯度來決定是否是同一個人

(3) 輸出識別結果標簽。

毫不夸張地說,face_recognition整個的核心就在于這一塊的向量化處理中,輸入的每一張人臉圖像都會被轉化為一個128維的特征向量進行存儲,128維特征向量的生成也是一個算法在里面的感興趣的話可以去查一下深入了解一下,我這里就不展開了,之后的人臉識別就轉化為了兩個人臉圖像之間向量相似度的問題了。

這里使用一張成龍大哥的圖像來進行測試,原始圖像如下所示:

向量化結果如下:

如果自己想要構建自己的個性化應用的話一般會選擇在這里進行改造,首先就是需要保存這里的特征向量。

4、輸入兩張人臉圖像,判斷是否是同一個人 

  1. def demoFunc(one_pic='c1.jpg',two_pic='c2.jpg'):  
  2.     '''  
  3.     給定兩張圖片,判斷是否是同一個人  
  4.     '''  
  5.     chenglong = face_recognition.load_image_file(one_pic)  
  6.     unknown_image = face_recognition.load_image_file(two_pic)  
  7.     biden_encoding = face_recognition.face_encodings(chenglong)[0]  
  8.     unknown_encoding = face_recognition.face_encodings(unknown_image)[0]  
  9.     results = face_recognition.compare_faces([biden_encoding], unknown_encoding)  
  10.     print('results: ',results)  
  11.     return results[0] 

這里其實跟上面第三部分的有點相似,這部分是建立在第三部分基礎上的只不過是自帶了compare_faces這個相似度計算接口,這里其實可以自己去實現替換的。

同樣,使用了兩張成龍大哥的圖像來進行測試,原始圖像如下所示:

測試結果如下:

5、臉部關鍵點識別和標注 

  1. def demoFunc(pic_path='cl.jpg'):  
  2.     '''  
  3.     臉部關鍵點識別、標注  
  4.     '''  
  5.     image = face_recognition.load_image_file(pic_path)  
  6.     face_landmarks_list = face_recognition.face_landmarks(image)  
  7.     print("I found {} face(s) in this photograph.".format(len(face_landmarks_list)))  
  8.     pil_image = Image.fromarray(image)  
  9.     d = ImageDraw.Draw(pil_image)  
  10.     for face_landmarks in face_landmarks_list:  
  11.         for facial_feature in face_landmarks.keys():  
  12.             print("The {} in this face has the following points: {}".format(facial_feature, face_landmarks[facial_feature]))  
  13.         for facial_feature in face_landmarks.keys():  
  14.             d.line(face_landmarks[facial_feature], width=5 
  15.     pil_image.show() 

臉部的關鍵點包括:鼻子、嘴巴、眼睛、眉毛等,這里還是用的上面成龍大哥的圖片,下面的結果輸出:

6、化妝

這部分是建立在第五部分基礎上的,得到的面部的特征以后就可以進行自動化妝了,下面是具體的實現: 

  1. def demoFunc(pic_path="haiwang.jpg"):  
  2.     '''  
  3.     化妝  
  4.     '''  
  5.     image = face_recognition.load_image_file(pic_path)  
  6.     face_landmarks_list = face_recognition.face_landmarks(image)  
  7.     pil_image = Image.fromarray(image)  
  8.     for face_landmarks in face_landmarks_list:  
  9.         demo = ImageDraw.Draw(pil_image, 'RGBA')  
  10.         demo.polygon(face_landmarks['left_eyebrow'], fill=(68, 54, 39, 128))  
  11.         demo.polygon(face_landmarks['right_eyebrow'], fill=(68, 54, 39, 128)) 
  12.         demo.line(face_landmarks['left_eyebrow'], fill=(68, 54, 39, 150), width=2 
  13.         demo.line(face_landmarks['right_eyebrow'], fill=(68, 54, 39, 150), width=2 
  14.         demo.polygon(face_landmarks['top_lip'], fill=(150, 0, 0, 128))  
  15.         demo.polygon(face_landmarks['bottom_lip'], fill=(150, 0, 0, 128))  
  16.         demo.line(face_landmarks['top_lip'], fill=(150, 0, 0, 64), width=2 
  17.         demo.line(face_landmarks['bottom_lip'], fill=(150, 0, 0, 64), width=2 
  18.         demo.polygon(face_landmarks['left_eye'], fill=(255, 255, 255, 30))  
  19.         demo.polygon(face_landmarks['right_eye'], fill=(255, 255, 255, 30))  
  20.         demo.line(face_landmarks['left_eye'] + [face_landmarks['left_eye'][0]], fill=(0, 0, 0, 110), width=2 
  21.         demo.line(face_landmarks['right_eye'] + [face_landmarks['right_eye'][0]], fill=(0, 0, 0, 110), width=2 
  22.         pil_image.show() 

這里使用海王的一張圖片來進行測試,原始圖像如下所示:

處理后結果如下:

還可以是這樣的:

7、基于face_recognition構建自己的簡單人臉識別應用

上面介紹了很多face_recognition的應用,這里才是最重要的內容我覺得是這樣的,基于已有的功能來實現我們自己的個性化應用,我這里只是簡單的拋磚引玉,給出來自己的最最簡單的實現: 

  1. def faceRecognitionDemo(picDir='data/'test_pic='test.png'):  
  2.     '''  
  3.     基于 face_recognition 構建人臉識別模塊  
  4.     '''  
  5.     pic_list=os.listdir(picDir)  
  6.     for one_pic in pic_list:  
  7.         one_pic_path=picDir+one_pic  
  8.         one_res=demo6(one_pic=one_pic_path,two_pic=test_pic 
  9.         one_name=one_pic.split('.')[0].strip()  
  10.         if one_res:  
  11.             print('This Person is: ', one_name)  
  12.             break  
  13.         else:  
  14.             print('This Person is not: ', one_name) 

data文件夾數據截圖如下:

test.png內容如下:

結果輸出如下:

當然了,實時計算肯定當前的計算方式不能滿足的,這個只是一個最簡單的應用而已,只想在這里拋磚引玉,這里是通過調用了face_recognition接口的形式來完成相似判定的工作的,還有一種非常常見的辦法就是在得到人臉圖像的128維特征向量之后就可以將人臉識別問題轉化為基于機器學習模型的一個簡單分類問題了,比如:SVM、RF、GBDT等都可以非常出色地完成上面的任務。

好了本文就到這里結束了,歡迎交流! 

 

責任編輯:龐桂玉 來源: Crossin的編程教室
相關推薦

2019-08-13 09:35:13

人工智能人臉識別技術

2020-10-25 19:12:01

人臉識別AI人工智能

2021-11-03 13:32:28

MetaFacebook人臉識別

2018-05-11 14:10:17

Python人臉識別

2021-11-03 10:49:33

人臉識別人工智能技術

2019-06-25 13:47:50

人臉識別AI人工智能

2017-03-20 08:58:02

Python人臉識別AI

2022-05-06 10:21:22

Python人臉識別

2024-06-12 12:57:12

2020-08-13 10:01:49

工具代碼開發

2018-11-06 21:00:09

Python編程語言人臉識別

2021-03-09 11:20:05

人臉識別人工智能AI

2020-12-03 09:47:20

人臉識別系統

2021-06-24 13:15:35

開源技術 圖像識別

2024-11-01 07:00:00

人臉識別Python機器學習

2024-06-12 08:10:08

2024-09-30 06:04:02

人臉識別Python機器學習

2015-07-20 09:52:22

NEC

2019-12-04 14:05:03

人臉識別AI人工智能

2020-12-23 08:29:08

人臉識別AI人工智能
點贊
收藏

51CTO技術棧公眾號

日韩欧美国产1| 成人免费在线播放视频| 国产精品爱啪在线线免费观看| 成年人深夜视频| 国产aⅴ一区二区三区| 最新日韩在线| 色系列之999| 日本道中文字幕| yiren22亚洲综合| 亚洲线精品一区二区三区八戒| 国产欧美精品在线| 全网免费在线播放视频入口| 日韩有码中文字幕在线| 3d动漫精品啪啪1区2区免费| av动漫在线看| wwwav在线| 久久久久久久av麻豆果冻| 91在线高清视频| 欧美一级淫片免费视频黄| 综合日韩在线| 在线播放日韩av| 中文字幕一区二区人妻电影丶| 久久99亚洲网美利坚合众国| 久久精品视频一区二区| 99久久精品免费看国产四区| 小泽玛利亚一区二区三区视频| 精品国产123区| 亚洲大胆美女视频| 日韩视频在线观看一区二区三区| 8888四色奇米在线观看| 91丨九色porny丨蝌蚪| 成人片在线免费看| 国产农村老头老太视频| 青青国产91久久久久久| 日本国产高清不卡| 日本一级片免费看| 狠色狠色综合久久| 欧美成人免费播放| 日韩亚洲欧美中文字幕| 欧美精品一区二区三区中文字幕| 91成人在线精品| aa在线观看视频| 3344国产永久在线观看视频| 亚洲男帅同性gay1069| 在线观看一区欧美| av电影在线观看| 国产日韩成人精品| 日韩福利影院| 成全电影播放在线观看国语| wwww国产精品欧美| 欧美精品免费观看二区| 欧美日韩国产综合视频| 久久日一线二线三线suv| 久久99精品国产一区二区三区 | 亚洲视频图片小说| 亚洲一区二区三区欧美| 日韩专区在线| 亚洲欧美日韩一区二区三区在线观看| 翡翠波斯猫1977年美国| 午夜老司机福利| 成人午夜视频福利| 精品伦理一区二区三区| 麻豆app在线观看| 久久久久久**毛片大全| 欧美一区二区三区四区在线观看地址 | 无码人妻久久一区二区三区蜜桃| 中文在线资源| 91黄色免费版| 成人综合久久网| 欧美精品三级在线| 精品国产91洋老外米糕| 一区二区三区免费在线观看视频| 综合久久伊人| 日韩美一区二区三区| 国产xxxx视频| 国产剧情在线观看一区| 久久久av网站| 免费一级片视频| 校园春色综合网| 国产精品欧美日韩一区二区| 国产免费久久久| 成人av电影在线观看| 欧美亚洲另类久久综合| 久久综合之合合综合久久| 亚洲一区二区三区在线看| 91黄色小网站| 国产高清精品二区| 日韩成人中文字幕| 中国1级黄色片| 国内精品99| 国产精品91免费在线| 国产福利第一视频| 久久综合视频网| 国产树林野战在线播放| 日韩电影免费看| 91精品国产色综合久久| av无码一区二区三区| 色乱码一区二区三区网站| 色综合男人天堂| 神马久久久久久久| 国产不卡一区视频| 亚欧洲精品在线视频免费观看| 欧美孕妇性xxxⅹ精品hd| 日韩毛片视频在线看| 拔插拔插海外华人免费| 伊人久久精品| 亚洲一二在线观看| 黄色片视频网站| 国产乱子轮精品视频| 色大师av一区二区三区| 国产精品13p| 日韩一级在线观看| 一二三四国产精品| 国产精品美女| 国产厕所精品在线观看| 免费**毛片在线| 91福利资源站| 成年人网站免费看| 亚洲无线视频| **亚洲第一综合导航网站| 国产三级在线免费| 狠狠色狠狠色综合日日五| 人妻少妇偷人精品久久久任期| swag国产精品一区二区| 精品国产一区久久久| 最近免费中文字幕大全免费版视频| 久久久夜夜夜| 国产高清在线一区二区| 国产在线观看免费麻豆| 欧美三级韩国三级日本三斤| 一本加勒比北条麻妃| 欧美二区不卡| 午夜精品一区二区三区在线视 | 欧美色老头old∨ideo| av网页在线观看| 欧美日韩蜜桃| 亚洲一区二区中文| 国产人成网在线播放va免费| 欧美区视频在线观看| 色婷婷国产精品免| 日韩av午夜在线观看| 欧美日韩一区在线视频| 性感女国产在线| 日韩激情av在线免费观看| 免费看一级一片| 国产成人免费av在线| 黄黄视频在线观看| 永久免费精品视频| 欧美精品电影在线| 无码精品在线观看| 精品国产精品自拍| 成年人免费观看视频网站| 久久亚洲影院| 亚洲日本无吗高清不卡| 久久麻豆视频| 久久综合国产精品台湾中文娱乐网 | 成人免费在线观看av| 国产精品午夜一区二区欲梦| www.亚洲.com| 欧美精品久久一区| 青青草免费av| aaa欧美日韩| 成年人视频在线免费| av伊人久久| 国产在线观看不卡| av网址在线播放| 欧美精品一区二区三区高清aⅴ | 日本黄色三级网站| 国产综合激情| 国产日韩欧美一区二区| 国产福利片在线观看| 亚洲人成电影网站色…| 中文字幕乱码无码人妻系列蜜桃| 91玉足脚交白嫩脚丫在线播放| 一卡二卡3卡四卡高清精品视频| аⅴ资源天堂资源库在线| 亚洲免费视频网站| 国产剧情久久久| 亚洲高清久久久| 欧美a在线播放| 国产大陆精品国产| 日本黄网站免费| 一本一道久久a久久精品蜜桃 | 欧美激情一区二区三区全黄| 久草福利视频在线| 欧美精品三级| 欧美一区2区三区4区公司二百| 特黄毛片在线观看| 综合欧美国产视频二区| 国产乱淫a∨片免费观看| 午夜伊人狠狠久久| 黄色一级片一级片| 成人综合在线网站| 日日噜噜噜噜久久久精品毛片| 91精品国产自产精品男人的天堂 | av在线免费观看网站| 日韩一区二区在线观看视频播放| 2014亚洲天堂| 成人aaaa免费全部观看| 亚洲国产成人va在线观看麻豆| 欧美精品momsxxx| 91网免费观看| 草莓视频成人appios| 久久久久久久成人| 亚乱亚乱亚洲乱妇| 亚洲欧美中文字幕在线一区| 午夜精品在线播放| 欧美美女激情18p| 丁香社区五月天| 天天综合网天天综合色| 劲爆欧美第一页| 中文字幕一区在线观看| 久久偷拍免费视频| 成人动漫视频在线| 亚洲欧美一区二区三区不卡| 视频在线在亚洲| 韩日视频在线观看| 91久久国产| 日韩欧美视频第二区| 欧美成人午夜77777| 成人黄色网免费| 99久久久国产精品免费调教网站 | 欧美成人一区二区三区片免费| 久久久久久久九九九九| 国产精品丝袜黑色高跟| 中文字幕第4页| 久久在线观看免费| 黄色国产在线观看| 粉嫩一区二区三区性色av| 91亚洲一区二区| 激情综合亚洲精品| 国产九九热视频| 人人狠狠综合久久亚洲| 国产熟人av一二三区| 午夜一区在线| 国产精品第12页| 老司机午夜精品视频在线观看| 异国色恋浪漫潭| 欧美岛国激情| 一区二区三区在线视频111| 日韩大片在线播放| 午夜精品福利一区二区| 精品久久国产| 日韩欧美一区二区三区四区五区| 欧洲精品99毛片免费高清观看| 国产+人+亚洲| 大香伊人中文字幕精品| 久久久久久久久久久91| 波多野结衣中文字幕久久| 久久久久五月天| 大菠萝精品导航| 777精品视频| 亚洲欧美一区二区三区| 日韩免费观看在线观看| 78精品国产综合久久香蕉| 国产精品久久久久久亚洲调教 | 最新国产精品自拍| 高清久久久久久| 中国极品少妇videossexhd| 99久久99久久综合| 一区二区黄色片| 国产午夜亚洲精品理论片色戒| 黄色激情在线观看| 91在线一区二区| 性猛交ⅹxxx富婆video| 综合久久久久综合| 国产性生活网站| 欧美性生交xxxxxdddd| 中文字幕人妻色偷偷久久| 欧美年轻男男videosbes| www.欧美国产| 日韩av中文字幕在线播放| 国产三级电影在线| 久久影院模特热| 免费毛片b在线观看| 国产精品久久在线观看| 伊人久久影院| 奇米精品在线| 一区二区国产在线| 亚洲自偷自拍熟女另类| 美女国产一区二区三区| 免费欧美一级片| 26uuu亚洲综合色| 中文字幕观看av| 精品久久久久久久久国产字幕| 久久久一二三区| 在线观看日产精品| 精品国产无码一区二区三区| 亚洲美女av网站| 午夜激情在线| 国产成人av在线播放| 日韩免费成人| 秋霞毛片久久久久久久久| 中文字幕乱码亚洲无线精品一区| 影音先锋在线亚洲| 亚洲高清电影| 日韩av一卡二卡三卡| aaa欧美色吧激情视频| 多男操一女视频| 一本大道久久a久久精品综合 | 欧美精品自拍偷拍| 亚洲av激情无码专区在线播放| 日韩www在线| 97超碰人人在线| 欧美最猛性xxxx| 日韩欧美另类中文字幕| 亚洲国产精品综合| 亚洲尤物精选| 久久久午夜精品福利内容| 亚洲视频在线观看一区| 无码人妻aⅴ一区二区三区有奶水| 欧美性xxxx极品高清hd直播| 国产wwwxxx| 最近中文字幕mv在线一区二区三区四区| 成人好色电影| 91av在线影院| 动漫av一区| 黄色www在线观看| 日本亚洲天堂网| 久久久久亚洲av无码专区桃色| 97国产一区二区| 青青草免费av| 日韩一级免费观看| 久cao在线| 国产精品久久久久久五月尺| 久久99高清| 一本大道熟女人妻中文字幕在线| 日韩电影在线一区二区| 一女三黑人理论片在线| 亚洲成av人片一区二区| 亚洲精品国产精品国| 久久国产精彩视频| 婷婷丁香久久| 亚洲一区二区三区精品视频| 美女视频黄久久| 人与嘼交av免费| 欧美日韩一区不卡| 午夜视频成人| 国产欧美日韩精品丝袜高跟鞋| 凹凸av导航大全精品| 亚洲精品天堂成人片av在线播放 | 亚洲精品高清在线观看| 亚洲综合一区中| 日韩在线视频网| 91精品麻豆| www.激情网| 国产成人福利片| 国产成人精品亚洲男人的天堂| 欧美日韩一区久久| 日本中文字幕在线视频| 成人h片在线播放免费网站| 亚洲精品在线观看91| 亚洲三级在线视频| 亚洲一区在线看| 凸凹人妻人人澡人人添| 午夜伦理精品一区| 日韩中文av| 中文字幕在线导航| 国产精品不卡在线| 99视频免费看| 午夜免费日韩视频| 亚洲色图美女| 久久国产精品国产精品| 亚洲乱码日产精品bd| 免费观看毛片网站| 日本视频久久久| 久久亚洲专区| 国产伦理在线观看| 一本一道久久a久久精品| 99re热久久这里只有精品34| 91九色国产视频| 日韩一区二区免费看| 精品成人无码一区二区三区| 91精品国产乱码| 日本不卡1234视频| 午夜精品一区二区在线观看| 国产麻豆欧美日韩一区| 日韩精品一区二区三区国语自制| 日韩三级在线观看| 高潮在线视频| 国产精华一区二区三区| 久久xxxx| 免费在线观看h片| 国产丝袜精品第一页| 亚洲狼人在线| 国产l精品国产亚洲区久久| 国产精品毛片a∨一区二区三区| 国内av在线播放| 久久99热精品这里久久精品| 免费视频亚洲| 欧美性猛交乱大交| 91久久精品网| 免费污视频在线观看| 日韩免费中文专区| 99久久精品情趣| 中文字幕一级片| 91成人免费观看网站| 中文字幕一区二区三区乱码图片| 免费人成视频在线播放| 欧美性猛交xxxx免费看漫画|