人臉識(shí)別之圖像預(yù)處理
編輯導(dǎo)讀:雖然技術(shù)的進(jìn)步,人臉識(shí)別在生活中的應(yīng)用越來越普遍。在上篇人臉識(shí)別的基本原理中,作者介紹了人臉識(shí)別背后的原理和方法,本文順著這個(gè)思路繼續(xù)完善人臉識(shí)別的基本產(chǎn)品原型,希望對(duì)你有幫助。
一、產(chǎn)品原型
簡(jiǎn)化的產(chǎn)品原型中包括識(shí)別前端和識(shí)別服務(wù)器兩部分。
識(shí)別前端承擔(dān)人臉照片采集和識(shí)別結(jié)果反饋職責(zé),是面向用戶交互的入口。目前主流的產(chǎn)品形態(tài)包括人臉考勤機(jī)、人證核驗(yàn)終端和人臉識(shí)別閘機(jī)等。
人臉識(shí)別服務(wù)器主要包括人臉底庫(kù)管理和識(shí)別算法管理,并基于產(chǎn)品特點(diǎn)包含對(duì)應(yīng)的業(yè)務(wù)模塊,如考勤報(bào)表、預(yù)警記錄等,實(shí)現(xiàn)基本的業(yè)務(wù)閉環(huán)。
目前的產(chǎn)品原型,已有了基本框架,但系統(tǒng)需求和設(shè)計(jì)較簡(jiǎn)單,無容錯(cuò)能力,用戶體驗(yàn)較差,離可用有較大的差距,需要繼續(xù)對(duì)需求深化和細(xì)化。
人臉識(shí)別在實(shí)際使用中可能出現(xiàn)以下情況:
- 采集到的人臉照片角度、大小等和預(yù)設(shè)的人臉底庫(kù)不一致,系統(tǒng)無法辨識(shí);
- 采集的人臉照片和人臉底庫(kù)像素不一致,系統(tǒng)無法進(jìn)行相似度計(jì)算;
- 環(huán)境、燈光等干擾造成成像質(zhì)量較差,導(dǎo)致漏識(shí)別、誤識(shí)別;
- 比對(duì)速度較慢,精準(zhǔn)度不夠,用戶使用抱怨多。
二、解決思路
在產(chǎn)品研發(fā)過程中,經(jīng)常會(huì)出現(xiàn)這種產(chǎn)品實(shí)際體驗(yàn)和預(yù)設(shè)體驗(yàn)不一致的狀況。當(dāng)發(fā)生這種情況時(shí),需要認(rèn)真分析原因,理順解決思路,不斷對(duì)產(chǎn)品迭代升級(jí)。
上面的問題其實(shí)可以分為兩類:
第一類是因?yàn)榄h(huán)境、距離、角度等因素干擾使得采集到的照片和系統(tǒng)底庫(kù)照片不一致,導(dǎo)致相似度計(jì)算有問題;
第二類問題是人臉相似度計(jì)算速度太慢、精度偏低。
其中第二種問題一般出現(xiàn)在算法層面,需要協(xié)同算法工程師進(jìn)行算法更新、升級(jí)進(jìn)行解決。
我們將目標(biāo)聚焦在第一類問題,即待識(shí)別照片和識(shí)別底庫(kù)不一致的情況。這種情況下,我們可以分別從采集照片和底庫(kù)照片兩個(gè)角度入手,提出針對(duì)性的解決思路:
思路一:限制通過前端采集到的照片,保持與人臉底庫(kù)的一致性。
比如,當(dāng)強(qiáng)制采集照片和底庫(kù)都采用身份證照片時(shí),系統(tǒng)比對(duì)通過率較高。類似的方法在較早的人臉考勤機(jī)中使用,通過限制用戶在打卡時(shí)的表情、距離、光線等提升精度,并強(qiáng)迫用戶通過同樣的前端采集并識(shí)別人臉,俗稱「同源識(shí)別」。
強(qiáng)迫用戶在人臉打卡時(shí)保持姿勢(shì)固定不動(dòng),用戶體驗(yàn)很差。目前市面上主流的人臉識(shí)別系統(tǒng)均采用「動(dòng)態(tài)識(shí)別技術(shù)」,不限制用戶保持靜止,在移動(dòng)過程中即可完成識(shí)別過程,并且不要求采集照片和識(shí)別照片同源。
思路二:增加底庫(kù)中照片的數(shù)量,將人員不同角度、環(huán)境、距離的照片都錄入系統(tǒng),提高比對(duì)的成功率。
這種做法操作難度很大,變量條件過多,基本無法實(shí)施。即使系統(tǒng)存儲(chǔ)了多張照片,問題沒有完全解決,識(shí)別精度并沒有明顯提升,且由于增大了數(shù)據(jù)量,增加了運(yùn)算的復(fù)雜性,降低運(yùn)算速度,系統(tǒng)響應(yīng)時(shí)間也相應(yīng)延長(zhǎng)。
既然沒有辦法限制采集照片和底庫(kù)照片,在基本不影響精度和速度的前提下,可以在采集和比對(duì)之間插入中間環(huán)節(jié),對(duì)照片進(jìn)行處理,使得兩者盡可能相似。
在人臉識(shí)別和其他圖像處理領(lǐng)域這是種通用做法,并有專業(yè)名稱叫做「圖像預(yù)處理」。不管是在傳統(tǒng)的人臉識(shí)別系統(tǒng)還是基于深度學(xué)習(xí)的人臉識(shí)別系統(tǒng)中,都少不了這個(gè)環(huán)節(jié)。對(duì)原有的系統(tǒng)設(shè)計(jì)更新如下。
接下來對(duì)圖像預(yù)處理所包含的內(nèi)容和需求做簡(jiǎn)單的介紹。
1)設(shè)置ROI
當(dāng)圖像內(nèi)容包含過多像素時(shí),系統(tǒng)很難定位到有效信息。比如,當(dāng)圖像整體像素大小為800*800,包含人臉的區(qū)域像素只有200×200,其他均為背景,直接比對(duì)效果很差??梢詫?duì)圖像進(jìn)行預(yù)處理,快速找到包含有效信息的目標(biāo)區(qū)域,即Region of Interest(ROI),「感興趣區(qū)域」。
在人臉識(shí)別系統(tǒng)中,可以對(duì)采集到的人臉照片,通過方框、圓、橢圓、不規(guī)則多邊形等方式勾勒出需要處理的區(qū)域,在這個(gè)區(qū)域內(nèi)進(jìn)行進(jìn)一步處理或者直接對(duì)比。
尋找ROI有很多方法,比如基于膚色。從顏色上看,不同顏色人種的膚色在照片上具有穩(wěn)定的特征,不會(huì)隨表情、角度、尺寸等而發(fā)生變化??梢愿鶕?jù)膚色屬性的這種特點(diǎn)和規(guī)律建模,快速識(shí)別到人臉ROI,從而將人臉區(qū)域和非人臉區(qū)域分開。
2)幾何變換
由于成像、采集角度等原因可能造成采集的人臉有一定的變形,對(duì)于肉眼來說這些變形并不會(huì)帶來太大的干擾,但對(duì)計(jì)算機(jī)來說卻是截然不同的。
這種情況叫做圖像的「幾何失真」,可以對(duì)圖像進(jìn)行縮放、翻轉(zhuǎn)、仿射、映射等幾何變換最大程度地消除。幾何變換通常不改變圖像的像素值,而是將像素進(jìn)行坐標(biāo)變換,改變像素之間的排列關(guān)系,進(jìn)而將注意力集中在圖像內(nèi)容本身的特征,而不是位置、角度、尺度等其他信息。
3)閾值處理
幾何變換由于不改變圖片的像素值,無法解決由于燈光等環(huán)境因素導(dǎo)致圖像呈現(xiàn)出不同情況。以灰度圖像為例,使用8bit表示某一像素時(shí),單像素就存在256個(gè)灰度階,直接利用灰度階進(jìn)行計(jì)算會(huì)帶來計(jì)算誤差。
這種情況下,需要對(duì)灰度階進(jìn)行限制,盡量將采集圖像和底庫(kù)照片的灰度階統(tǒng)一,從肉眼上圖片可能會(huì)有些失真,但不影響計(jì)算機(jī)的處理和識(shí)別??梢愿鶕?jù)實(shí)際情況,將256個(gè)灰度階劃分為幾個(gè)區(qū)間,將區(qū)間內(nèi)的像素指定為某一個(gè)像素值,減少不同灰度值所帶來的影響,這種處理方法稱為「閾值處理」。
4)噪聲去除
圖像在形成、傳輸過程中往往會(huì)受到干擾,在結(jié)果圖像中引入噪聲。輕度的噪聲信號(hào)不會(huì)干擾圖像的可觀測(cè)性,但當(dāng)噪聲嚴(yán)重時(shí),圖像中呈現(xiàn)出較多的無用信息,人臉無法識(shí)別或出現(xiàn)誤識(shí)別等情況。
在盡量保留圖像可觀測(cè)信息的情況下,檢測(cè)出現(xiàn)的噪聲并進(jìn)行過濾,這個(gè)過程叫做「圖像濾波」。圖像濾波是圖像預(yù)處理中不可缺少的環(huán)節(jié),一般通過構(gòu)造圖像濾波器進(jìn)行解決。濾波器可以高效地去除噪音,能夠保留圖像目標(biāo)的特征,并不會(huì)損壞圖像輪廓及邊緣。
對(duì)于圖片中經(jīng)常出現(xiàn)的噪聲,通過統(tǒng)計(jì)學(xué)手段可以發(fā)現(xiàn)其特點(diǎn),進(jìn)而開發(fā)出通用濾波器,比如均值、中值、方框、雙邊等濾波進(jìn)行噪音過濾。
當(dāng)然,有一些噪聲使用成熟的濾波技術(shù)去除時(shí)效果較差,而必須自行設(shè)計(jì)濾波,這種方法也被稱為「卷積技術(shù)」。
不管是在傳統(tǒng)機(jī)器學(xué)習(xí)還是基于深度學(xué)習(xí)的人臉識(shí)別系統(tǒng)中,都采用了卷積技術(shù),不同點(diǎn)在于值的填充方式。傳統(tǒng)系統(tǒng)由人工進(jìn)行設(shè)計(jì)并填充,而深度學(xué)習(xí)可以通過自動(dòng)學(xué)習(xí)得到所需要的值,處理起來更加靈活、高效。
5)其他處理
除了列舉到的常規(guī)預(yù)處理手段,人臉識(shí)別系統(tǒng)中還會(huì)用到其他預(yù)處理手段,比如顏色變換、圖像分割等。這些需求可以根據(jù)具體場(chǎng)景下圖像的特點(diǎn)和產(chǎn)品需求進(jìn)行細(xì)化,實(shí)現(xiàn)圖像更精細(xì)化的處理。
除了進(jìn)行圖像質(zhì)量處理,在產(chǎn)品設(shè)計(jì)時(shí)也需要考慮性能指標(biāo)。由于增加了預(yù)處理手段,可能會(huì)影響人臉識(shí)別速度,增大了系統(tǒng)響應(yīng)時(shí)間,所以必須在精度和速度之間取得平衡。
很多時(shí)候,往往是由用戶需求驅(qū)動(dòng)技術(shù)的進(jìn)步。對(duì)于人臉識(shí)別系統(tǒng)來說也是如此,為了增強(qiáng)抗干擾能力而增加了圖像預(yù)處理階段,雖并不完美但保證了產(chǎn)品的落地,驅(qū)動(dòng)技術(shù)尋找更優(yōu)的方案,達(dá)到產(chǎn)品和技術(shù)的良性互動(dòng)。
接下來,我們繼續(xù)從產(chǎn)品的角度對(duì)人臉識(shí)別進(jìn)行拆解,并提出完善思路。
作者:AIoT產(chǎn)品,10年B端產(chǎn)品設(shè)計(jì)經(jīng)驗(yàn);微信公眾號(hào):AIoT產(chǎn)品
本文由@AIoT產(chǎn)品 原創(chuàng)發(fā)布于人人都是產(chǎn)品經(jīng)理。未經(jīng)許可,禁止轉(zhuǎn)載
題圖來自Unsplash,基于CC0協(xié)議
學(xué)習(xí)了
大學(xué)教程