來(lái)自安徽的年輕人朱林,是一名老照片“復(fù)活”老師,他專門制作動(dòng)態(tài)老照片。他手術(shù)后,黃色模糊的老照片不僅變得清晰了,還眨了眨眼睛,笑了笑,搖了搖頭。清明前夕,很多人發(fā)現(xiàn)了他已故親人的照片,感動(dòng)得熱淚盈眶。
這張照片是人工智能技術(shù)合成的,不同于傳統(tǒng)人工智能修復(fù)的老照片。這張照片就像哈利波特魔法世界的魔法照片一樣令人感動(dòng)和微笑。這是一種重塑失去親人的方式,非常生動(dòng),真的比照片好得多。
那么這張照片用的是什么技術(shù)呢?
其實(shí)圖像識(shí)別技術(shù)本身原理并不復(fù)雜,信息處理是這項(xiàng)技術(shù)的重點(diǎn)。近年來(lái),由于深度學(xué)習(xí)的發(fā)展,圖像識(shí)別的準(zhǔn)確率有了很大的提高。深度學(xué)習(xí)可以通過(guò)對(duì)大量圖像數(shù)據(jù)信息特征的積累和分析,自動(dòng)完成特征提取、圖像匹配等任務(wù)。
其中常見(jiàn)的修復(fù)方法包括:
1.偏微分方程方法
貝塔米奧利用偏微分方程(PDE)對(duì)圖像進(jìn)行修復(fù),取得了良好的效果。用戶需要指定待修復(fù)區(qū)域,算法將待修復(fù)區(qū)域邊界輪廓外的信息沿輪廓法線方向擴(kuò)散到中間待修復(fù)像素。該算法利用局部顏色的平滑性沿等值線擴(kuò)散,并考慮各向異性擴(kuò)散來(lái)保證邊緣邊界的連續(xù)性。但是這種方法計(jì)算不穩(wěn)定。
2.基于曲率的全局變分方法和擴(kuò)散模型
total變分方法(TV)采用歐拉-拉格朗日方程和各向異性擴(kuò)散,基于曲率擴(kuò)散模型(CDD,曲率驅(qū)動(dòng)擴(kuò)散)方法是全局變分方法的擴(kuò)展,它考慮了擴(kuò)散過(guò)程中輪廓的幾何信息(曲率),可以處理大面積,但邊界往往模糊。
3.利用高斯卷乘積檢驗(yàn)進(jìn)行圖像濾波的方法
采用高斯卷積核對(duì)圖像進(jìn)行濾波,可以快速修復(fù)受損區(qū)域。但是,該算法只考慮了受損區(qū)域邊緣周圍的圖像顏色值,使得它只適用于受損區(qū)域?yàn)?~3像素寬的情況。
4.紋理合成方法
紋理合成法可以去除圖像中的大塊斑塊,但由于算法運(yùn)行時(shí)間與掩膜面積不成正比而是與圖像大小成正比,修復(fù)時(shí)間相對(duì)較長(zhǎng)。
講了常見(jiàn)的修復(fù)方法之后,再來(lái)講講如何搭建程序。
1.圖像處理的第一步:
首先,我們使用常見(jiàn)的OpenCV處理方法來(lái)處理圖片。第一步是將圖片二值化,創(chuàng)建結(jié)構(gòu)元素。
2.擴(kuò)大維修區(qū)域:
根據(jù)相鄰像素值識(shí)別并擴(kuò)展修復(fù)區(qū)域,通過(guò)補(bǔ)償像素值達(dá)到修復(fù)圖片的效果。函數(shù)cv2.inpaint()主要涉及兩個(gè)算法。
一種算法是從區(qū)域的邊界開(kāi)始,然后進(jìn)入?yún)^(qū)域,逐漸填充邊界內(nèi)的所有內(nèi)容。它需要在鄰近像素周圍的小鄰域內(nèi)進(jìn)行修復(fù)。該像素由鄰域中所有已知像素的歸一化加權(quán)和代替。選擇重量是一個(gè)重要的問(wèn)題。對(duì)于點(diǎn)附近的像素、邊界附近的法線和邊界輪廓上的像素,給出了更多的權(quán)重。
另一種是基于流體動(dòng)力學(xué)和使用偏微分方程;驹瓌t是幽默。它首先沿著已知區(qū)域的邊緣行進(jìn)到未知區(qū)域(因?yàn)檫吘壥沁B續(xù)的)。它繼續(xù)等待照片(連接相同強(qiáng)度的點(diǎn)的線,就像輪廓連接相同高度的點(diǎn)一樣),同時(shí)在修復(fù)區(qū)域的邊界匹配梯度向量。為此,使用了流體動(dòng)力學(xué)的一些方法。獲得顏色后,填充顏色以減少該區(qū)域的最小差異。
但是用AI修復(fù)老照片需要一些程序代碼。雖然有人會(huì)在網(wǎng)上和你分享,但如果你想要更有優(yōu)勢(shì)的話還是可以去研究一下。
投稿郵箱:chuanbeiol@163.com 詳情請(qǐng)?jiān)L問(wèn)川北在線:http://m.sanmuled.cn/