<kbd id="afajh"><form id="afajh"></form></kbd>
<strong id="afajh"><dl id="afajh"></dl></strong>
    <del id="afajh"><form id="afajh"></form></del>
        1. <th id="afajh"><progress id="afajh"></progress></th>
          <b id="afajh"><abbr id="afajh"></abbr></b>
          <th id="afajh"><progress id="afajh"></progress></th>

          基于深度學(xué)習(xí)的畸變校正

          共 6499字,需瀏覽 13分鐘

           ·

          2023-09-06 22:55

          點(diǎn)擊上方小白學(xué)視覺(jué)”,選擇加"星標(biāo)"或“置頂

              
              
                 
                 
          重磅干貨,第一時(shí)間送達(dá) 


          編者薦語(yǔ)

           

          透鏡由于制造精度以及組裝工藝的偏差會(huì)引入畸變,導(dǎo)致原始圖像的失真。鏡頭的畸變分為徑向畸變和切向畸變兩類。以往的文章一般是通過(guò)傳統(tǒng)方式進(jìn)行推導(dǎo),本次我們嘗試使用深度學(xué)習(xí)來(lái)完成這一步驟。


          手機(jī)中的計(jì)算攝影4-超廣角畸變校正中,我為你描述了廣角鏡頭的鏡頭畸變校正和透視畸變校正,尤其是花了很多篇幅講述施易昌等人的論文如何校正因?yàn)橥敢暬儗?dǎo)致的人臉拉伸現(xiàn)象。

          然而,正如我文章中所講,這個(gè)方法依然有它的不足之處:

          • 沒(méi)有準(zhǔn)確的人臉Mask就無(wú)法進(jìn)行校正

          • 校正只針對(duì)人臉,會(huì)出現(xiàn)頭小身大的現(xiàn)象

          • 某些情況下無(wú)法保證直線不彎曲,有些時(shí)候還無(wú)法很好的校正人臉

          • 速度慢,單張圖像需要接近1秒鐘完成

          那么如何解決這些問(wèn)題呢?今天要介紹的方法,就是嘗試對(duì)上述缺陷進(jìn)行改進(jìn)。

          一. 第一個(gè)基于深度學(xué)習(xí)的畸變校正算法

          我們先來(lái)想想為什么施易昌等人的方法存在一定缺陷

          1. 需要FOV信息作為輸入,作者提到他們用到了圖像的EXIF信息來(lái)獲取焦距和傳感器信息,但我們都知道很多圖像在傳輸和保存過(guò)程中是丟失了這些信息的

          2. 因?yàn)樗麄兊乃惴ㄖ会槍?duì)人臉區(qū)域采用球極投影進(jìn)行校正,因此一定需要輸入人臉的Mask,而這個(gè)Mask是通過(guò)專門訓(xùn)練的人臉?lè)指罹W(wǎng)絡(luò)計(jì)算出來(lái)的。很顯然,這里帶來(lái)了兩個(gè)問(wèn)題:

          • 算法需要額外的外部輸入,增加了復(fù)雜度

          • 外部輸入的質(zhì)量高低決定了人臉校正的效果好壞

          3. 整個(gè)算法包含多個(gè)可調(diào)整的參數(shù)。但作者只在20張圖像上進(jìn)行了參數(shù)的調(diào)整,然后在167張圖像上進(jìn)行了仔細(xì)的驗(yàn)證,最后在4131張圖像上觀察是否有明顯的錯(cuò)誤。總體來(lái)說(shuō),真正用于檢驗(yàn)并調(diào)整參數(shù)只有不到兩百?gòu)垐D像,確實(shí)可能有泛化性問(wèn)題。

          4. 另外目標(biāo)函數(shù)也是非常復(fù)雜的,因此最優(yōu)化也比較慢。

          針對(duì)這幾個(gè)問(wèn)題,潛在的解決方案有:

          1. 完全不用相機(jī)內(nèi)參數(shù)輸入,將背景的鏡頭畸變校正也整合到流程中,用一些圖像上的特征來(lái)約束鏡頭畸變校正

          2. 將人臉校正所需的Mask的計(jì)算整合到整個(gè)流程中,不需要外部輸入

          3. 使用大量的圖像來(lái)驗(yàn)證算法的泛化性和有效性

          曠視研究院的譚婧、趙姍等人在2021年CVPR發(fā)表的文章,就很好的把這幾個(gè)方案整合到了一起:

          這篇文章展示了第一個(gè)用深度學(xué)習(xí)來(lái)完成的自動(dòng)去畸變算法,其中用兩個(gè)子網(wǎng)絡(luò)分別完成鏡頭畸變的校正和透視畸變的校正,而且它不需要相機(jī)的畸變參數(shù),效果據(jù)作者描述比施易昌等人的方法更好。

          這里,LineNet用于進(jìn)行鏡頭畸變校正,經(jīng)過(guò)LineNet后直線被校直。而ShapeNet則用于進(jìn)行人臉的球極畸變校正。通過(guò)兩個(gè)注意力模塊LAM(Line Attention Module)和FAM(Face Attention Module),圖像中的直線和人臉被特意強(qiáng)調(diào)。由于訓(xùn)練數(shù)據(jù)有人臉和直線的標(biāo)注信息,因此訓(xùn)練出的網(wǎng)絡(luò)不需要外部的相機(jī)參數(shù)及人臉Mask也能夠進(jìn)行很好的校正,最后得到了和施易昌等方法相當(dāng),甚至某些情況下更好的結(jié)果。

          接下來(lái)我從訓(xùn)練和驗(yàn)證數(shù)據(jù)、損失函數(shù)、評(píng)價(jià)指標(biāo)、網(wǎng)絡(luò)結(jié)構(gòu)等幾個(gè)方面概略的介紹一下。

          1.1 訓(xùn)練和驗(yàn)證數(shù)據(jù)

          譚婧等的方法總體上來(lái)說(shuō)是一種監(jiān)督型的訓(xùn)練方法,因此需要一個(gè)帶有Ground Truth信息的數(shù)據(jù)集。然而以前從來(lái)沒(méi)有廣角畸變校正的標(biāo)準(zhǔn)數(shù)據(jù)集,因此作者用5個(gè)超廣角的拍照手機(jī),在各種場(chǎng)景下進(jìn)行采集,制作了一個(gè)超過(guò)5000張圖像的數(shù)據(jù)集,每張圖像的人像分布在1到6人之間。由于有這幾個(gè)相機(jī)的畸變參數(shù),因此可以很容易的獲得鏡頭畸變校正的map,作為L(zhǎng)ineNet訓(xùn)練時(shí)的Ground Truth。

          接下來(lái),為了獲得每張圖像對(duì)應(yīng)的透視畸變校正后的圖像,作者們基于施易昌等的方法開發(fā)了一個(gè)自動(dòng)化的校正工具,其中刻意在原方法的目標(biāo)函數(shù)的基礎(chǔ)上添加了一個(gè)人臉附近的直線約束,使得能夠更好的保持人臉附近的直線。

          作者們還開發(fā)了一個(gè)微調(diào)工具,可以基于Mesh來(lái)對(duì)圖像的局部進(jìn)行微調(diào)。通過(guò)聯(lián)合使用校正工具+微調(diào)工具,她們得到了一個(gè)效果很好的數(shù)據(jù)集,下圖d是最終手動(dòng)優(yōu)化后的效果,可以看到它確實(shí)比施易昌等的方法結(jié)果好(圖b),例如這里人臉附近的大樓陽(yáng)臺(tái)保持了直線。


          下面展示了數(shù)據(jù)集中需要包括的內(nèi)容

          • 輸入的圖像(完全未經(jīng)畸變校正)

          • 經(jīng)過(guò)鏡頭畸變校正后的圖像(此時(shí)直線被校直)

          • 經(jīng)過(guò)透視畸變校正后的圖像(此時(shí)背景直線校直,且人臉畸變被消除)

          • 人臉Mask

          • 直線標(biāo)注信息

          • 鏡頭畸變校正Map

          • 透視畸變校正Map

          1.2 評(píng)價(jià)方法和指標(biāo)

          為了評(píng)價(jià)算法的效果,作者引入了兩個(gè)評(píng)價(jià)指標(biāo): LineAcc(評(píng)價(jià)直線的保直度),以及ShapeAcc(評(píng)價(jià)人臉校正的準(zhǔn)確度)。簡(jiǎn)單說(shuō)來(lái),LineAcc計(jì)算的是已標(biāo)注的線段在校正后圖像上的像素點(diǎn)的平均夾角,夾角越小,直線越直。而ShapeAcc則是計(jì)算校正前后人臉上每個(gè)關(guān)鍵點(diǎn)與中心點(diǎn)形成的線段的夾角,夾角越小,人臉效果越接近Ground Truth。

          下圖說(shuō)明作者的最終輸出在LineAcc和ShapeAcc兩方面均超過(guò)了輸入,且達(dá)到了較好的平衡。

          1.3 網(wǎng)絡(luò)結(jié)構(gòu)

          如前所述,作者的網(wǎng)絡(luò)結(jié)構(gòu)如下圖所示,其中

          • LineNet用于進(jìn)行鏡頭畸變校正,經(jīng)過(guò)LineNet后直線被校直

          • ShapeNet則用于進(jìn)行人臉的球極畸變校正。

          • 通過(guò)兩個(gè)注意力模塊LAM(Line Attention Module)和FAM(Face Attention Module),圖像中的直線和人臉被特意強(qiáng)調(diào)

          • TM用于保持LineNet和ShapeNet在背景區(qū)域的一致性

          1.4 損失函數(shù)

          下面是LineNet和ShapeNet的損失函數(shù),其中下標(biāo)flow代表在計(jì)算map表的一致性,而下標(biāo)proj和下標(biāo)out則用于表示計(jì)算image的一致性。而2,s2則表示分別計(jì)算原始的L2 Loss,以及先對(duì)圖像或map做Sobel計(jì)算,然后再計(jì)算L2 Loss。

          類似的,兩個(gè)注意力模塊LAM和FAM也有自己的損失函數(shù):

          這幾個(gè)損失函數(shù)之和構(gòu)成了最終的損失函數(shù),用于約束整個(gè)網(wǎng)絡(luò)的訓(xùn)練

          1.5 結(jié)果展示

          我們先來(lái)看看作者展示的效果,這里圖(a)是利用相機(jī)參數(shù)進(jìn)行鏡頭畸變校正后的結(jié)果,圖(b)是在此基礎(chǔ)上進(jìn)行球極投影校正的結(jié)果,圖(c)是施易昌等人的方法,圖(d)則是譚婧等的方法。

          我們用動(dòng)圖比較下兩個(gè)方法,可以看到對(duì)于某些圖片,譚婧等的方法明顯更好

          不過(guò)仔細(xì)看別的圖,會(huì)發(fā)現(xiàn)和施易昌的方法一樣,譚婧等的方法也會(huì)有一些缺陷,施易昌等的方法過(guò)于強(qiáng)調(diào)人臉,使得背景可能彎曲,而譚婧等的方法則強(qiáng)調(diào)了背景的直線,但人臉表現(xiàn)不夠完美:


          1.6 小結(jié),及實(shí)際項(xiàng)目中的好處

          公平的說(shuō),這種基于深度學(xué)習(xí)的方案依然有這樣那樣的效果問(wèn)題。但我得承認(rèn),它確實(shí)從整體方法上前進(jìn)了一大步。讓我們回顧施易昌等人的方案在哪些地方做的不夠好,再看看新方案是否解決了這些問(wèn)題:

          為什么我說(shuō)用深度學(xué)習(xí)的方案,理論上可以做到更快呢?因?yàn)楝F(xiàn)在各種計(jì)算框架,以及硬件芯片本身,對(duì)卷積神經(jīng)網(wǎng)絡(luò)的運(yùn)算已經(jīng)做到了很好的優(yōu)化了,而許多傳統(tǒng)優(yōu)化算法由于計(jì)算方法的復(fù)雜和非統(tǒng)一性,很難做到大幅的性能提升。在實(shí)際項(xiàng)目中,我們對(duì)譚婧等的網(wǎng)絡(luò)架構(gòu)做了裁剪優(yōu)化,經(jīng)過(guò)良好的配置,在模型算力要求高達(dá)1.8GFlops的情況下,在高通8250平臺(tái)只需要不到40ms即可完成推理運(yùn)算,這相比起施易昌等需要接近1s才能完成運(yùn)算來(lái)說(shuō),是巨大的性能提升——這就是目前很多計(jì)算機(jī)視覺(jué)、計(jì)算攝影學(xué)的算法由傳統(tǒng)算法改為統(tǒng)一的深度學(xué)習(xí)算法的一大收益!

          二. 改進(jìn)方案,以及第一個(gè)半監(jiān)督學(xué)習(xí)的畸變校正算法

          然而,為什么基于深度學(xué)習(xí)的方法在實(shí)測(cè)效果上并未比施易昌等的方法好多少呢?我認(rèn)為主要有兩個(gè)原因:

          • 深度學(xué)習(xí)方法需要大量數(shù)據(jù)來(lái)訓(xùn)練,而數(shù)據(jù)非常昂貴

          • 譚婧等所用的評(píng)判結(jié)果好壞的標(biāo)準(zhǔn)和人類的主觀感受還無(wú)法完全一致

          我們先來(lái)看看評(píng)價(jià)方法和標(biāo)準(zhǔn)的缺陷,如下圖所示,作者們用的評(píng)價(jià)方法是采樣圖像上的特定的線段,希望這些線段與Ground Truth之間的夾角越小越好。那么這里就可能存在這些采樣的線段不足以描述人類的主觀感受這樣的問(wèn)題了,比如是不是當(dāng)發(fā)生畸變時(shí),有更多的無(wú)法簡(jiǎn)單用線段的偏轉(zhuǎn)來(lái)描述的特征?這是一個(gè)非常本質(zhì)和深入的問(wèn)題,可以留待將來(lái)進(jìn)行更深入的研究。

          更現(xiàn)實(shí)的問(wèn)題是,不管是用于訓(xùn)練,還是用于驗(yàn)證和評(píng)價(jià),數(shù)據(jù)都非常寶貴。高質(zhì)量的數(shù)據(jù)非常難于得到。幾乎對(duì)每一張樣本圖像,都需要手工進(jìn)行調(diào)整,以得到它去掉畸變后的完美圖像——這實(shí)際上是一個(gè)非常主觀的事情。昂貴的數(shù)據(jù)采集手段,使得譚婧等最終得到的是大概5000張圖像的數(shù)據(jù)集。實(shí)際上,這些數(shù)據(jù)集很可能因?yàn)闀r(shí)間和精力原因,存在一定的瑕疵,影響最終的效果。

          那么,有沒(méi)有可能降低對(duì)數(shù)據(jù)采集的需求呢?半監(jiān)督學(xué)習(xí)是一個(gè)可能的方向,下面這篇曠視研究院的預(yù)印版文章(arxiv.org/abs/2109.0802)可供參考:

          作者們的想法也很簡(jiǎn)單,他們?cè)诰W(wǎng)絡(luò)訓(xùn)練過(guò)程中加入了一個(gè)分割的任務(wù),使得分割任務(wù)去分割校正map中的各個(gè)部分(不同方向的大位移以及小位移)。那么分割結(jié)果和校正map之間就建立起了某種關(guān)系,另外分割結(jié)果、校正map與各自的Ground Truth之間也有約束關(guān)系?,F(xiàn)在加入沒(méi)有標(biāo)注過(guò)的數(shù)據(jù),這些數(shù)據(jù)經(jīng)過(guò)網(wǎng)絡(luò)推理后也會(huì)得到分割圖和校正map。作者認(rèn)為這兩者之間的關(guān)系應(yīng)該和有標(biāo)注的數(shù)據(jù)對(duì)應(yīng)的信息有相同的約束關(guān)系——就用這個(gè)約束去迭代優(yōu)化網(wǎng)絡(luò)。

          聽起來(lái),跟模型蒸餾頗有異曲同工之妙,文章中也展示了挺不錯(cuò)的效果,例如下圖中的效果,確實(shí)相比譚婧和施易昌等人的方法有了提升。

          三. 總結(jié)

          到此為止,我已經(jīng)介紹了第1個(gè)基于優(yōu)化算法的自動(dòng)畸變校正算法(手機(jī)中的計(jì)算攝影4-超廣角畸變校正),第1個(gè)基于深度學(xué)習(xí)的畸變校正算法,以及第1個(gè)基于半監(jiān)督學(xué)習(xí)思想的畸變校正算法。從工程上講,利用這些技術(shù),已經(jīng)能夠開發(fā)出比較符合當(dāng)前手機(jī)客戶需求的產(chǎn)品了。事實(shí)上正如我文章里所講,我們開發(fā)的基于深度學(xué)習(xí)的畸變校正算法已經(jīng)能夠在不到100ms時(shí)間內(nèi)完成全流程的計(jì)算和圖像變換了

          然而,不管是哪種方法,目前都還有前進(jìn)的空間,有一些圖像上表現(xiàn)依然還不夠好。除了人臉之外,人的身體、腳等區(qū)域與人臉的一致性還需要加強(qiáng)。但過(guò)于強(qiáng)調(diào)這些區(qū)域之間的一致性,又會(huì)使得網(wǎng)絡(luò)學(xué)習(xí)起來(lái)比較困難。

          與此同時(shí),盡管算法運(yùn)行已經(jīng)足夠快了,但要真正流暢的用在視頻拍攝方面,還需要解決視頻幀之間的時(shí)域相關(guān)性,否則會(huì)產(chǎn)生抖動(dòng),同時(shí)速度還需要加快,才能適用于當(dāng)前大分辨率的視頻錄制上。

          所以你現(xiàn)在在用的手機(jī),基本上還沒(méi)有解決好”超廣角畸變校正“這個(gè)問(wèn)題,比如下面的圖示就能看出iPhone12和小米11都沒(méi)有把這個(gè)問(wèn)題解決好,其實(shí)最新的iPhone13 Pro也在這個(gè)問(wèn)題上沒(méi)有提升。希望之后,能在更多的手機(jī)產(chǎn)品上看到這個(gè)問(wèn)題更好的解決方案吧!

          四. 參考資料

          1. 手機(jī)中的計(jì)算攝影4-超廣角畸變校正

          2. YiChang Shih, Wei-Sheng Lai, Chia-Kai Liang,     and Chia Kai Liang.     Distortion-free wide-angle portraits on camera phones. ACM Trans. Graphics, 38(4):1–12, 2019

          3. Jing Tan, Shan Zhao, Pengfei Xiong, Jiangyu     Liu, Haoqiang Fan, and Shuaicheng Liu. Practical wide-angle portraits     correction with deep structured models. In Proc. CVPR, pages 3498–3506, 2021.

          4. https://arxiv.org/abs/2109.08024


          —THE END—

          一個(gè)專注于計(jì)算機(jī)視覺(jué)與機(jī)器學(xué)習(xí)的公眾號(hào),努力將分享變成一種習(xí)慣!

             
             
          下載1:OpenCV-Contrib擴(kuò)展模塊中文版教程
          在「小白學(xué)視覺(jué)」公眾號(hào)后臺(tái)回復(fù):擴(kuò)展模塊中文教程,即可下載全網(wǎng)第一份OpenCV擴(kuò)展模塊教程中文版,涵蓋擴(kuò)展模塊安裝、SFM算法、立體視覺(jué)、目標(biāo)跟蹤、生物視覺(jué)、超分辨率處理等二十多章內(nèi)容。

          下載2:Python視覺(jué)實(shí)戰(zhàn)項(xiàng)目52講
          小白學(xué)視覺(jué)公眾號(hào)后臺(tái)回復(fù):Python視覺(jué)實(shí)戰(zhàn)項(xiàng)目,即可下載包括圖像分割、口罩檢測(cè)、車道線檢測(cè)、車輛計(jì)數(shù)、添加眼線、車牌識(shí)別、字符識(shí)別、情緒檢測(cè)、文本內(nèi)容提取、面部識(shí)別等31個(gè)視覺(jué)實(shí)戰(zhàn)項(xiàng)目,助力快速學(xué)校計(jì)算機(jī)視覺(jué)。

          下載3:OpenCV實(shí)戰(zhàn)項(xiàng)目20講
          小白學(xué)視覺(jué)公眾號(hào)后臺(tái)回復(fù):OpenCV實(shí)戰(zhàn)項(xiàng)目20講,即可下載含有20個(gè)基于OpenCV實(shí)現(xiàn)20個(gè)實(shí)戰(zhàn)項(xiàng)目,實(shí)現(xiàn)OpenCV學(xué)習(xí)進(jìn)階。

          交流群


          歡迎加入公眾號(hào)讀者群一起和同行交流,目前有SLAM、三維視覺(jué)、傳感器、自動(dòng)駕駛、計(jì)算攝影、檢測(cè)、分割、識(shí)別、醫(yī)學(xué)影像、GAN算法競(jìng)賽等微信群(以后會(huì)逐漸細(xì)分),請(qǐng)掃描下面微信號(hào)加群,備注:”昵稱+學(xué)校/公司+研究方向“,例如:”張三 + 上海交大 + 視覺(jué)SLAM“。請(qǐng)按照格式備注,否則不予通過(guò)。添加成功后會(huì)根據(jù)研究方向邀請(qǐng)進(jìn)入相關(guān)微信群。請(qǐng)勿在群內(nèi)發(fā)送廣告,否則會(huì)請(qǐng)出群,謝謝理解~



          瀏覽 295
          點(diǎn)贊
          評(píng)論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報(bào)
          評(píng)論
          圖片
          表情
          推薦
          點(diǎn)贊
          評(píng)論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報(bào)
          <kbd id="afajh"><form id="afajh"></form></kbd>
          <strong id="afajh"><dl id="afajh"></dl></strong>
            <del id="afajh"><form id="afajh"></form></del>
                1. <th id="afajh"><progress id="afajh"></progress></th>
                  <b id="afajh"><abbr id="afajh"></abbr></b>
                  <th id="afajh"><progress id="afajh"></progress></th>
                  日韩在线观看网站 | 亚洲人妻中文字幕 | 先锋影音麻豆粉嫩AV | 无码人妻一区二区三区精品不付款 | 日韩视频-熊猫成人网 |