現(xiàn)在AI發(fā)展的如火如荼,,我們已逐步進(jìn)入智能時(shí)代,。雖然人工智能偏技術(shù)類,,學(xué)習(xí)和理解需要一定的技術(shù)背景和數(shù)學(xué)做支撐。但拆開看,,其原理,、方法、思路并不復(fù)雜,,「不懂技術(shù)」的產(chǎn)品經(jīng)理也能理解,。 人工智能牽扯很多學(xué)科,知識(shí)點(diǎn)盤根錯(cuò)節(jié),,需要具備多學(xué)科的知識(shí)儲(chǔ)備,。從學(xué)習(xí)路徑上看,比較適合做成系列,,從淺入深,,從基礎(chǔ)到應(yīng)用,逐漸深入,。但無形中提高了學(xué)習(xí)門檻,,降低了學(xué)習(xí)的興趣,導(dǎo)致很難堅(jiān)持,。 有感于此,,我想以一種輕松、探索的視角,,跟大家一起摸索,,用簡(jiǎn)單、直白的方式來學(xué)習(xí)AI,。這樣,,雖然會(huì)有錯(cuò)誤、遺漏等,,但學(xué)習(xí)難度會(huì)降低,,那就在過程中完善吧,,畢竟「模糊的正確大于精確的錯(cuò)誤」,。 一、人臉識(shí)別產(chǎn)品我們從人臉識(shí)別開始,,逐步了解其技術(shù)路徑的演變和原理等,,今天先從最簡(jiǎn)單的原理講起。 人臉識(shí)別其實(shí)很早就有了,,多年前就以人臉考勤的方式出現(xiàn),,但由于使用效果不好,用戶體驗(yàn)不佳,,逐步被市場(chǎng)淘汰,。 而這一波人工智能的火熱,,計(jì)算能力、模型等都是其重要推動(dòng)力,,但更重要的是產(chǎn)品能夠落地,,能夠在實(shí)際業(yè)務(wù)場(chǎng)景中使用。 尤其是人臉識(shí)別,,產(chǎn)品在識(shí)別精度,、速度、用戶友好度等多個(gè)方面都有明顯提升,,用戶和市場(chǎng)的接受度明顯上升,。 二、圖像表示了解人臉識(shí)別,,先要從圖像表示講起,。 大家都知道,計(jì)算機(jī)能夠識(shí)別和處理的是二進(jìn)制,,不管我們輸入的是文本,、圖像、聲音,,計(jì)算機(jī)都是用一定長(zhǎng)度的二進(jìn)制串進(jìn)行存儲(chǔ)和處理,。 我們先以黑白圖片為例,看看計(jì)算機(jī)是怎么表示的,。 計(jì)算機(jī)程序可以將黑白圖片可以表示為灰度圖像,。在灰度圖像中,一個(gè)像素使用8個(gè)比特位,,從而可以表示256個(gè)灰度階,,表示范圍是0-255。其中0代表純黑色,,255代表純白色,。 一個(gè)字節(jié)可以表示一個(gè)像素,那怎么表示一張圖片呢,,用矩陣進(jìn)行表示,。 簡(jiǎn)單來說,就是表格,,比如可以使用8行8列來表示一張8*8的灰度圖片,。 這樣我們就解決了圖像的表示問題,建立了圖像和矩陣的等價(jià)關(guān)系,。圖片可以轉(zhuǎn)化為矩陣,,通過矩陣也可以恢復(fù)原始圖片。 大家能算出來下面的矩陣表示什么嗎? 對(duì)的,,一眼就看出來了數(shù)字1,,看來大家都有搞AI的天賦,加油,。 三,、圖像識(shí)別通過矩陣表示圖像后,圖像的各種處理就轉(zhuǎn)化為數(shù)學(xué)問題,,可以使用數(shù)學(xué)的理論和方法進(jìn)行解決,,而這正是計(jì)算機(jī)所擅長(zhǎng)的。 我們輸入圖片,,希望計(jì)算機(jī)能夠?qū)?nèi)容識(shí)別出來,,將結(jié)果輸出。 仍以數(shù)字為例,,當(dāng)輸入圖片并用矩陣表示后,,通過將灰度值轉(zhuǎn)化為灰度,可以輕松辨識(shí)其所表示的內(nèi)容,。 但在計(jì)算機(jī)的世界里,,只有0和1。想要通過辨識(shí)矩陣內(nèi)容并將結(jié)果輸出,,就必須建立矩陣到結(jié)果的映射,。這樣,輸入一張圖片,,經(jīng)過處理和計(jì)算后,,才能輸出一個(gè)數(shù)字。 很樸素的想法就是將各個(gè)數(shù)字所代表的矩陣提前存放在計(jì)算機(jī)內(nèi),,當(dāng)輸入一張圖片后,,計(jì)算機(jī)通過計(jì)算,從而找到最適合的數(shù)字進(jìn)行輸出,。 舉個(gè)例子,,更容易理解一些。比如,,計(jì)算機(jī)內(nèi)部已經(jīng)存放了包含數(shù)字1和7以及它們所對(duì)應(yīng)的灰度矩陣,。 數(shù)字1 數(shù)字7 當(dāng)新輸入一張圖像后,程序會(huì)自動(dòng)計(jì)算它的矩陣與這些矩陣的相似度,。相似度計(jì)算可使用的公式很多,,比如可以使用百分比,距離等,。 簡(jiǎn)單起見,就使用兩個(gè)矩陣對(duì)應(yīng)元素之差的絕對(duì)值之和或者平方和等,計(jì)算機(jī)進(jìn)行快速運(yùn)算,,找到最相似的矩陣,,然后將其所代表的數(shù)字進(jìn)行輸出。 當(dāng)輸入以下內(nèi)容時(shí),,經(jīng)過簡(jiǎn)單計(jì)算,,可以知道輸出結(jié)果為 7。 四,、人臉表示既然可以用矩陣來表示圖片,,人臉也是照片,那么也可以用同樣的方法來進(jìn)行表示,,下面的這張人臉可以表示為: 人臉照片 矩陣表示 五,、人臉識(shí)別雖然被叫做人臉識(shí)別,但更準(zhǔn)確的名字應(yīng)該是「人臉比對(duì)」,。人臉識(shí)別的背后,,是一張待比對(duì)圖片和人臉底庫(kù)中的所有照片進(jìn)行比對(duì),從而判別圖片中人員的身份,。 一般來說,,待比對(duì)照片就是我們?cè)谌粘I钪斜桓鞣N設(shè)備所采集的照片,比如通過人臉識(shí)別考勤機(jī)抓拍的照片,。 由于環(huán)境,、姿勢(shì)等原因,采集的照片具有很大的差異,,導(dǎo)致比對(duì)成功率不高,。為了提升比對(duì)的成功率和速度,很多時(shí)候會(huì)同時(shí)抓拍多張人臉進(jìn)行識(shí)別,,但每次比對(duì)的時(shí)候輸入照片只有一張,。 所謂的人臉底庫(kù)就是我們?cè)谙到y(tǒng)中提前錄入的人臉照片,照片和我們的名字一一對(duì)應(yīng),。根據(jù)人臉底庫(kù)中照片數(shù)量的不同,,可以將人臉比對(duì)分為1:1和1:N,由于數(shù)量不同這兩種方法的計(jì)算量和計(jì)算方法也不盡相同,。 1. 1:11:1最常見的場(chǎng)景就是人證比對(duì),,比如我們?cè)诔烁哞F時(shí)所遇到的這種設(shè)備。 前面的1代表我們從設(shè)備中采集的照片,,而后面的1代表身份證中的照片,,通過將現(xiàn)場(chǎng)采集的照片和身份證中存放的照片進(jìn)行比對(duì),通過判別持證人是否為本人,。 這種情況下只涉及到兩張圖片的比對(duì),,計(jì)算量相對(duì)較小,。 可能用在火車票安檢等場(chǎng)景中,所以要求的精度較高,。 身份證中的照片像素較小,,通過市面上的身份證讀卡器讀取出來的照片僅為100*100像素左右,給精度帶來了一定的挑戰(zhàn),。 目前這個(gè)領(lǐng)域相對(duì)成熟,,使用場(chǎng)景正在逐步鋪開。 2. 1:N1:N是1張人臉和底庫(kù)中的N張人臉進(jìn)行比對(duì),。 比如在考勤機(jī)中,,我們的人臉底庫(kù)中包含全公司的所有人臉照片。當(dāng)上班打卡時(shí),,考勤機(jī)采集到人臉輸入系統(tǒng),,經(jīng)過比對(duì)后輸出員工身份。 這種情況下計(jì)算量相對(duì)較大,,時(shí)效性和識(shí)別精度太低又會(huì)影響用戶體驗(yàn),,所以廠商一般會(huì)綜合考慮權(quán)衡,在設(shè)備的參數(shù)中標(biāo)注所支持的人臉數(shù)量,。 這一波人工智能的發(fā)展,,帶動(dòng)了1:N領(lǐng)域人臉識(shí)別技術(shù)的進(jìn)步,更多的產(chǎn)品能夠在各個(gè)場(chǎng)景中落地,。比如智慧城市,、智慧家居等。 國(guó)內(nèi)廠商也借著這一波東風(fēng),,加快技術(shù)研發(fā)和產(chǎn)品落地,,誕生了著名的AI視覺四小龍等獨(dú)角獸。 今天梳理了人臉識(shí)別的基本原理,,整個(gè)實(shí)現(xiàn)過程雖然看起來很簡(jiǎn)單,,但技術(shù)卻在基本原理的基礎(chǔ)上持續(xù)完善和進(jìn)步,最終達(dá)到比較好的效果,。 下次我們將討論在復(fù)雜場(chǎng)景下人臉識(shí)別遇到的挑戰(zhàn)及解決方案,。 |
|