iOS CoreImage之臉部識別

2021-06-15 05:50:36 字數 1253 閱讀 5335

coreimage乙個好玩的地方就是它可以檢測出一張人物上左眼、右眼以及嘴的詳細位置。請注意這裡使用的是「檢測」而不是「識別」。coreimage目前還沒有辦法識別人臉僅僅是檢測出人臉的眼嘴位置。

它的使用也是比較方便快捷的。核心**如下:

//建立cidetector物件,options使用nsdictionary設定採用高品質還是低品質,這裡使用低品質。

cidetector *detector = [cidetector detectoroftype:cidetectortypeface context:nil options:[nsdictionary dictionarywithobject:cidetectoraccuracylow forkey:cidetectoraccuracy]];

//返回陣列中包含臉部特徵資訊

nsarray *facefeatures = [detector featuresinimage:begingimage];

for (cifacefeature *facefeature in facefeatures)

//右眼的判斷

if (facefeature.hasrighteyeposition)

//嘴的判斷

if (facefeature.hasmouthposition)

}self.imageview.image = image;

[self.imageview sizetofit];

//旋轉

self.imageview.transform = cgaffinetransformmakescale(1, -1);

self.view.transform = cgaffinetransformmakescale(1, -1);

需要注意的是:ciimage的座標系和uikit的座標系是不同的。ciimage的座標系原點在螢幕的左下角,而uikit的座標系原點在螢幕的左上角,所以座標系需要經過變換。

效果圖:

另外就是做了一下**人物、動物的試驗,coreimage的效果很不錯,只有在人物的上顯示了標記。

識別出臉部以及給臉部打馬賽克

識別出臉部以及給臉部打馬賽克 原始 打馬後的 1.通過cidetector來識別出臉部獲取相關資料 2.將 coreimage座標轉換為uikit座標 3.將臉部區域進行截圖 4.將截圖進行打馬處理 各位喜聞樂見 核心原始碼 uiimageview facedetect.h facedetectio...

Python 人物臉部識別

示例 import cv2 import screeninfo classifier cv2.cascadeclassifier r opencv master data haarcascades haarcascade frontalface default.xml 讀取本地用於識別的 重置大小與...

OpenCV 臉部跟蹤 3

前面一篇文章我們生成了臉部特徵的線性形狀模型,本章來學習一下顯示線性形狀的 線性模型類的結構如下 class shape model 我們生成的線性形狀模型用矩陣v表示,它是152 18,前四列是旋轉縮放矩陣r,接著是保留的14副特徵影象。通過下面的 計算平移和縮放 float scale calc...