[iOS] 使用Vision人臉偵測2 (Face Detection Using Vision)
此刻要記錄實作內容,才想起先前已寫過一篇,不過那篇是沒有原始碼,然而依舊可參考:[iOS] 使用Vision人臉偵測 (Face Detection Using Vision)。😎
此刻要記錄實作內容,才想起先前已寫過一篇,不過那篇是沒有原始碼,然而依舊可參考:[iOS] 使用Vision人臉偵測 (Face Detection Using Vision)。😎
早在2013年,我就把玩過iOS的人臉偵測 (Face Detection),當時覺得非常酷!因為已經能在手機上玩人臉偵測,回想2011年,我還在研究電腦上OpenCV,那時可是我研究所樂趣之一呢~
時光飛逝來到2017年,Apple在WWDC上發佈Vision Framework,裡頭實現更強大的人臉偵測。
JSON(JavaScript Object Notation)是一種輕量級的資料交換語言,以文字為基礎,且易於讓人閱讀。儘管JSON是Javascript的一個子集,但JSON是獨立於語言的文字格式,並且採用了類似於C語言家族的一些習慣。
不過目前C++並無內建函式可以解析JSON (Parse JSON),於是我便到GitHub找輕便好用的套件:JSON for Modern C++
上圖展示套件有四種方式來讀取JSON資料,因為我是要從檔案讀取來解析,所以足夠我使用囉~
先前介紹讀取檔案 (Read File),是以一行一行逐步讀取,現在我們想要一次讀取整個檔案為字串,再來做其它處理,這樣可以怎麼實作呢?
這個檔案內容是關於人臉資訊的JSON檔,包含年齡、性別、姿勢、種族、微笑等等量化資訊。
回顧之前使用OpenCV所做的人臉偵測 (Face Detection),當時只是覺得這門技術好厲害。如今我感興趣的平台是行動裝置,趁此拿來把玩一下,說不一定可以想出有趣的應用!
拿可愛學妹的相片來作實驗,效果好又賞心悅目:D~
(繼續閱讀…)
最近看噗浪,才知道韓國小姐已經開始選美了~看到網友合成的連續美女圖,乍看之下就是一個美女,衣服不斷地換和髮型不斷地換(評論曰:「這個人好忙,幹嘛一直換衣服。」),當下意識覺得這個美女真的很漂亮,直到瞄到網友的評論才真的相信原來都是不同人……每個人都這麼美,選美評審怎麼選?
去年已經寫過人臉偵測 (Face Detection),那是Sedir同學 (這裡幫她廣告一下~目前單身,想認識可留言或寄信給我)推薦我使用的程式碼,這次我自己試用OpenCV 2.4 beta裡的tutorial code,發現它多了人眼偵測 (Eye Detection),那就直接來玩這版的人臉偵測 (Face Detection)。
人臉偵測使用Haar features來辨別window中的影像是否為人臉特徵,然而以暴力法來做速度實在太慢,為什麼?因為必須掃描整張影像,而且影像裡人臉的特徵除了位置因素,還有大小和型態等因素需要考量,勢必得利用特殊計算方法,才能達到現在如數位相機的real-time人臉偵測,於是積分影像 (Integral Image)這個計算方法因應而生!
Written
on 2014 年 08 月 24 日