com技术内幕 代码_CFan科学院:零门槛极速抠图技术探秘
將照片中的人或物從背景中分離出來(lái),俗稱摳圖。要實(shí)現(xiàn)完美的摳圖,沒(méi)有一定的PS(Photoshop)基礎(chǔ)是根本無(wú)法實(shí)現(xiàn)的,不過(guò)現(xiàn)在有個(gè)名為Remove.bg的網(wǎng)站,號(hào)稱5秒鐘就可以完成復(fù)雜的摳圖,徹底將摳圖難度降到了零門(mén)檻!這個(gè)工具到底是怎么實(shí)現(xiàn)極速摳圖的呢?讓我們一探其背后的技術(shù)內(nèi)幕。
摳圖曾經(jīng)是技術(shù)活
平時(shí)我們拍攝的圖片,前景的人或物往往是和作為背景的風(fēng)景緊密結(jié)合在一起的,要想實(shí)現(xiàn)精準(zhǔn)摳圖并不容易,需要經(jīng)過(guò)一系列精細(xì)的操作(圖1)。
圖1 摳圖步驟圖解
我們以通道摳頭發(fā)絲操作為例。首先需要找出對(duì)象最清晰的通道,接著復(fù)制通道,再對(duì)通道的色階進(jìn)行調(diào)整,然后使用畫(huà)筆工具涂抹人物以及需要的頭發(fā)部分,最后進(jìn)行反向選擇、圖層復(fù)制等操作才能完成一次摳圖操作(圖2)。過(guò)程中,因?yàn)轭^發(fā)絲比較細(xì)小而且混亂,光是涂抹選取就需要花費(fèi)大量的時(shí)間。
圖2 通道摳圖操作
除了上面的介紹外,如果摳取復(fù)雜背景的圖片,還可能需要多種工具結(jié)合在一起使用,這就必須了解蒙版、通道、快速選擇、圖層模式等等知識(shí)。正是因?yàn)閾笀D的專業(yè)性很強(qiáng),因此對(duì)于普通人來(lái)說(shuō)要想熟練掌握摳圖技巧,就得反復(fù)不斷的練習(xí),這絕對(duì)是件技術(shù)活。
極速摳圖讓普通人變身PS大神
大部分人并沒(méi)有時(shí)間花費(fèi)在摳圖學(xué)習(xí)上,所以各種摳圖工具應(yīng)運(yùn)而生,其中比較引人注目的是新近出現(xiàn)的Remove.bg網(wǎng)站,他們聲稱可以將這個(gè)復(fù)雜的技術(shù)活零門(mén)檻化。在網(wǎng)站的演示中可以看到,即使是類似頭發(fā)絲的高難度摳圖操作,通過(guò)網(wǎng)站的處理也可以輕松完成(圖3)。
圖3 網(wǎng)站摳圖演示
Remove.bg的極速摳圖,其實(shí)是借助具有深度學(xué)習(xí)功能的Python工具來(lái)實(shí)現(xiàn)的。Python是一種程序開(kāi)發(fā)語(yǔ)言,經(jīng)常被設(shè)計(jì)用于編寫(xiě)自動(dòng)化腳本(Shell),通過(guò)一系列的腳本代碼實(shí)現(xiàn)很多自動(dòng)操作,摳圖便是它在圖像領(lǐng)域中的一個(gè)典型應(yīng)用(圖4)。
圖4 Python語(yǔ)言
在Python摳圖處理的腳本中,腳本代碼首先選定要抽取對(duì)象的區(qū)域,通過(guò)一定的算法將圖像識(shí)別為區(qū)域內(nèi)(前景)和區(qū)域外(背景)兩部分。接著基于選定區(qū)域,其中的Grabcut算法會(huì)對(duì)圖像背景和前景進(jìn)行分割,同時(shí)循環(huán)處理前景內(nèi)容,將其中的前景提取出來(lái)并將背景內(nèi)容刪除,從而實(shí)現(xiàn)摳圖(圖5)。
當(dāng)然僅僅依靠腳本無(wú)法完全實(shí)現(xiàn)對(duì)任意圖像背景和前景進(jìn)行分割,為了能夠讓腳本有著更高效和精準(zhǔn)的處理功能。Remove.bg將Python自動(dòng)處理腳本和深度機(jī)器學(xué)習(xí)結(jié)合起來(lái),為了讓腳本可以精準(zhǔn)識(shí)別出前景物件,開(kāi)發(fā)者預(yù)先借助一些機(jī)器學(xué)習(xí)庫(kù)和Python框架來(lái)制定一些算法,如Scikit和Tensorflow機(jī)器學(xué)習(xí)算法。這些算法可以自動(dòng)檢測(cè)輸入中的模式,這樣開(kāi)發(fā)者先將一些圖片給算法學(xué)習(xí),輸入很多前后景混合的人物照片讓機(jī)器學(xué)習(xí)。以輸入斑馬在草原上的照片為例,算法可以將照片中的老虎和草原環(huán)境識(shí)別出來(lái)(圖6)。
圖6 機(jī)器算法
為了讓算法擁有更高的識(shí)別能力,開(kāi)發(fā)者還準(zhǔn)備了很多類似的斑馬圖片,比如斑馬在動(dòng)物園中、籠子里、樹(shù)叢中的各種圖片供機(jī)器學(xué)習(xí)。利用深度學(xué)習(xí)和神經(jīng)網(wǎng)絡(luò),通過(guò)海量圖片的學(xué)習(xí)和自我糾錯(cuò),使得機(jī)器算法最終對(duì)各種照片中的前景后景能精準(zhǔn)識(shí)別出來(lái)。
最后開(kāi)發(fā)者將這套算法生成的模型部署在Remove.bg服務(wù)器端,用戶只要通過(guò)網(wǎng)站上傳圖片,網(wǎng)站后臺(tái)的算法就可以實(shí)現(xiàn)對(duì)照片前景后景的準(zhǔn)確識(shí)別并實(shí)現(xiàn)摳圖,用戶只需稍等片刻,然后下載處理好的摳圖就可以了(圖7)。
圖7 Remove.bg摳圖流程圖解
Python不僅僅會(huì)摳圖
如上所述,借助Remove.bg網(wǎng)站,普通人通過(guò)部署在網(wǎng)站的算法服務(wù)就可以實(shí)現(xiàn)快速摳圖,這樣大大降低摳圖的技術(shù)難度。比如想在朋友圈滿足下自己在全球各地的旅游美圖,那么只要自拍一張人物照,然后上傳摳圖,并將摳圖貼在國(guó)外旅游景點(diǎn)上就OK了。當(dāng)然也可以進(jìn)行各種惡搞特效制作。
其實(shí)不僅僅是摳圖,Python的自動(dòng)處理腳本還可以應(yīng)用到更多的領(lǐng)域。比如可以借助腳本對(duì)照片中人物臉部的識(shí)別,結(jié)合人臉識(shí)別技術(shù)快速在眾多的監(jiān)控照片中提取犯罪嫌疑人照片。再比如將其應(yīng)用到網(wǎng)站購(gòu)物上,通過(guò)自動(dòng)識(shí)別將各大購(gòu)物網(wǎng)站同類商品全部提取出來(lái)供我們選擇、參考,我們的生活將因此而越來(lái)越便利。
總結(jié)
以上是生活随笔為你收集整理的com技术内幕 代码_CFan科学院:零门槛极速抠图技术探秘的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 透明怎么弄_最新版微信如何设置透明背景?
- 下一篇: b500k带开关电位器内部构造_R138