Google 超分辨率技术 RAISR
Google 超分辨率技術 RAISR:模糊圖片瞬間變清晰,運算速度快十倍
Everyday the web is used to share and store millions of pictures, enabling one to explore the world, research new topics of interest, or even share a vacation with friends and family. However, many of these images are either limited by the resolution of the device used to take the picture, or purposely degraded in order to accommodate the constraints of cell phones, tablets, or the networks to which they are connected. With the ubiquity of high-resolution displays for home and mobile devices, the demand for high-quality versions of low-resolution images, quickly viewable and shareable from a wide variety of devices, has never been greater.With “RAISR: Rapid and Accurate Image Super-Resolution”, we introduce a technique that incorporates machine learning in order to produce high-quality versions of low-resolution images. RAISR produces results that are comparable to or better than the currently available super-resolution methods, and does so roughly 10 to 100 times faster, allowing it to be run on a typical mobile device in real-time. Furthermore, our technique is able to avoid recreating the aliasing artifacts that may exist in the lower resolution image.Upsampling, the process of producing an image of larger size with significantly more pixels and higher image quality from a low quality image, has been around for quite a while. Well-known approaches to upsampling are linear methods which fill in new pixel values using simple, and fixed, combinations of the nearby existing pixel values. These methods are fast because they are fixed linear filters (a constant convolution kernel applied uniformly across the image). But what makes these upsampling methods fast, also makes them ineffective in bringing out vivid details in the higher resolution results. As you can see in the example below, the upsampled image looks blurry – one would hesitate to call it enhanced.
| Left: Low-res original, Right: simple (bicubic) upsampled version (2x). Image Credit:Masa Ushioda/Seapics/Solent News |
| Collection of learned 11x11 filters for 3x super-resolution. Filters can be learned for a range of super-resolution factors, including fractional ones. Note that as the angle of the edge changes, we see the angle of the filter rotate as well. Similarly, as the strength increases, the sharpness of the filters increases, and the anisotropy of the filter increases with rising coherence. |
| Top:?RAISR algorithm at run-time, applied to a cheap upscaler’s output.Bottom:?Low-res original (left), bicubic upsampler 2x (middle), RAISR output (right) |
| Top: Original, Bottom: RAISR super-resolved 2x.Original image?from?Andrzej Dragan |
| Left: Original, Right: RAISR super-resolved 3x. Image courtesy ofMarc Levoy |
| Example of aliasing artifacts seen on the lower right (Image source) |
| Left: Low res original, with strong aliasing. Right: RAISR output, removing aliasing. |
每天都有數以百萬計的圖片在網絡上被分享、儲存,用戶借此探索世界,研究感興趣的話題,或者與朋友家人分享假期照片。問題是,大量的圖片要嘛被照相設備的像素所限制,要嘛在手機、平板或網絡限制下被人為壓縮,降低了畫質。
如今高分辨率顯示屏幕正在家庭和移動設備上普及,因此,把低分辨率圖片轉化為高清晰版本,并可在多種設備上查看和分享,正在成為一項巨大的需求。日前,Google 推出了一項新技術 RAISR,其全稱是“Rapid and Accurate Image Super-Resolution”,意為“快速、精確的超分辨率技術”。
RAISR 這項技術能利用機器學習,把低分辨率圖片轉為高分辨率圖片。它的效果能達到甚至超過現在的超分辨率解決方案,同時速度提升大約 10 至 100 倍,且能夠在普通的移動設備上運行。而且,Google 的技術可以避免產生混疊效應(aliasing artifacts)。
之前已經具有透過升采樣方式,把低分辨率圖片重建為尺寸更大、像素更多、更高畫質圖片的技術。最廣為人知的升采樣方式是線性方法,即透過把已知的像素值進行簡單、固定的組合,以添加新的像素值。因為使用固定的線性過濾器(一個恒定卷積核對整個圖片的無差別處理),該方法速度很快。但是它對于重建高清作品里生動的細節有些力不從心。正如下面這張圖片,升采樣的圖片看起來很模糊,很難稱得上畫質提升。
▲ 左為原始圖片;右為升采樣處理后圖片。
對于 RAISR,Google 另辟蹊徑得采用機器學習,用一對低分辨率、高分辨率圖片訓練該程序,以找出能選擇性應用于低分辨率圖片中每個像素的過濾器,這樣能生成媲美原始圖片的細節。目前有兩種訓練 RAISR 的方法:
- 第一種是“直接”方式,過濾器在成對高、低分辨率圖片中直接學習。
- 第二種方法需要先對低分辨率圖片應用低功耗的的升采樣,然后在升采樣圖片和高分辨率圖片的組合中學習過濾器。
- “直接”方式處理起來更快,但第二種方法照顧到了非整數范圍的因素,并且更好地利用硬件性能。
無論是哪種方式,RAISR 的過濾器都是根據圖像的邊緣特征訓練的:亮度和色彩梯度、平實和紋理區域等。這又受到方向(direction,邊緣角度)、強度(strength,更銳利的邊緣強度更高)和黏性(coherence,一項量化邊緣方向性的指標)的影響。以下是一組 RAISR 過濾器,從一萬對高、低分辨率圖片中學習得到(低分辨率圖片經過升采樣)。該訓練過程耗費約 1 小時。
注:3 倍超分辨率學習,獲得的 11×11 過濾器集合。過濾器可以從多種超分辨率因素中學習獲得,包括部分超分辨率。注意當圖中邊緣角度變化時,過濾器角度也跟著旋轉。相似的,當強度提高時,過濾器的銳利度也跟著提高;黏性提高時,過濾器的非均相性(anisotropy)也提高。
從左至右,學習得到的過濾器與處理后的邊緣方向有選擇性的呼應。舉例來說,最底一行中間的過濾器最適合強水平邊緣(90 度梯度角),并具有高黏性(直線的而非彎曲的邊緣)。如果這個水平邊緣是低對比度的,那么如同圖中最上一行,另一個過濾器就被選擇。
實際使用中,RAISR 會在已經學習到的過濾器列表中選擇最合適的過濾器, 應用于低分辨率圖片的每一個像素周圍。當這些過濾器被應用于更低畫質的圖像時,它們會重建出相當于原始分辨率的細節,這大幅優于線性、雙三(bicubic)、蘭索斯(Lancos)解析方式。
▲ RAISR 演算法運行圖式下:原始圖像(左),2 倍雙三解析(中),RAISR 效果(右)。
一些運用 RAISR 進行圖片增強的范例:
▲ 上:原始圖片,下:RAISR 2 倍超分辨率效果。
▲ 左:原始圖片,右:RAISR 3 倍超分辨率效果。
超分辨率技術更復雜的地方在于如何避免混疊效應,例如龜紋(Moire patterns)和高頻率內容在低分辨率下渲染產生的鋸齒(對圖像人為降級的情形)。這些混疊效應的產物會因對應部分的形狀不同而變化,并且很難消除。
▲ 左:正常圖像;右:右下角有龜紋(混疊效應)的圖像。
線性方法很難恢復圖像結構,但是 RAISR 可以。下面是一個例子,左邊是低分辨率的原始圖片,左 3 和左 5 有很明顯的空間頻率混淆(aliased spatial frequencies),而右側的 RAISR 圖像恢復了其原始結構。RAISR 的過濾器學習方法還有一項重要的優點:用戶可以把消除噪音以及各類壓縮演算法的產物做為訓練的一部分。當 RAISR 被提供相應的范例后, 它可以在圖片銳化之外學會消除這些效果,并把這些功能加入過濾器。
▲ 左:有強混疊效應的原始圖片;右:RAISR 處理后效果。
超分辨率技術利用不同的方法已經有了不少進展。如今,透過把機器學習與多年來不斷發展的成像技術相結合,圖像處理技術有了長足的進步,并帶來許多好處。舉例來說,除了放大手機上的圖片,用戶還可以在低分辨率和超高清下捕捉、儲存、傳輸圖像,使用更少的移動網絡數據和儲存空間,而且不會產生肉眼能觀察到的畫質降低。
小結:自從喬布斯 2010 年在 iPhone 4s 上推出“視網膜屏幕”概念之后,數碼產品市場開啟了一場超高清顯示革命。如今,家用顯示器逐步走向 4K,各大手機廠商也競相推出 2K 旗艦機。但 2K、4K 內容的缺乏一直是困擾行業發展的痛點。之前的超分辨率技術受成本、硬件限制,主要應用于專業領域,未能大范圍普及。
此次 Google RAISR 大幅降低了圖像增強的時間成本和硬件要求,有望實現超分辨率技術在消費領域的應用,把充斥網絡的低畫質圖片轉化為高清圖片,大幅提高視覺效果和用戶體驗。雷鋒網十分期待將來 RAISR 在移動設備的應用,例如把消費者手機拍攝的照片轉化為媲美單反畫質的高清美圖。
- RAISR: Rapid and Accurate Image Super Resolution
- Enhance! RAISR Sharp Images with Machine Learning
(本文由?雷鋒網授權轉載;首圖來源:Flickr/Carlos LunaCC BY 2.0)
下面是對該論文的摘要介紹:
論文:RAISR:快速且準確的圖像超分辨率(RAISR: Rapid and Accurate Image Super Resolution)
給定一張圖像,我們希望能得到一張其對應的更大尺寸、有顯著更多像素、更高圖像質量的版本。這個問題通常被稱為單圖像超像素問題(Single Image Super-Resolution (SISR) problem)。其思路是:使用足夠多的訓練數據(對應的低分辨率和高分辨率圖像對),我們就可以訓練出一組過濾器(filter,即一種映射),當我們將其應用于一張非訓練集的圖像時,它就能產生一張該圖像的更高分辨率的版本,其中的學習(learning)部分最好應選擇低復雜度(low complexity)的。在我們提出的方法中,運行時間(run-time)比目前可用的最佳競爭方法快 1 到 2 個數量級,同時我們的方法還能得到可與當前最佳結果媲美甚至更好的結果。
一個與上述問題緊密相關的主題是圖像銳化(image sharpening)和對比度增強(contrast enhancement),即通過增強基本的細節(一個大范圍的頻率)來提升模糊圖像的視覺質量。我們的方法還額外包含了一種極其有效的用來生成比輸入模糊圖像顯著更加銳利的圖像的方式,且不需要引入暈圈(halo)和噪聲放大(noise amplification)。我們還闡釋了:除了單純的興趣之外,這種有效的銳化算法還可被用作一種預處理步驟,可用于產生帶有內置銳化和對比度增強效果的更有效的放大過濾器(upscaling filter)。
Google 又玩黑科技,用機器學習幫你節省 75% 流量
在最專業的圖片處理軟件 Photoshop 中,當你導出圖片時,有一個叫“存儲為網頁所用格式”的選項,它清楚地列出了你可以保存的圖片品質,以及圖片在不同帶寬下的加載時間。這是因為在網絡上,圖片的品質和加載速度是特別需要平衡的。更清晰,品質更好的圖片往往有更大的尺寸,但它會讓加載速度變慢,消耗更多流量。對網站開發者來說,這意味著更高的成本,當然,對我們來說,這意味著更高的流量費。
在更小的尺寸內提供更高的品質,是圖片壓縮領域恒久的課題。Google 就一直致力于此,2010 年,它就推出了一種叫 WebP 的新圖片格式,相比 JEPG,可以在相同的品質內把把圖片大小減少 40%。
現在,Google 要用新的機器學習技術,讓這一步走得更遠。
1 月 11 日,Google+ 團隊在其官方博客介紹了一種叫 RAISR(Rapid and Accurate Image Super Resolution)的新技術,它使用機器學習方法,訓練系統分析同一張圖片的高質量版本和低質量版本,找出高質量版本更好的原因,再在低質量版本模擬出高質量版本圖片的效果。
和這個過程類似的是對圖片的銳化和增強對比度的操作,即通過放大底層細節,來改善模糊圖片的質量。但是,銳化同時增加圖像的噪點,讓圖片看起來有很多小顆粒,經常使用 Photoshop 處理照片的同學應該深有體會。Google 表示,自己使用的方法可以在不增加噪點和顆粒的情況下改善圖片清晰度。
在 Photoshop 中對一張圖片多次應用銳化后,圖片中會出現大量噪點
在 RAISR 的論文中,作者表示,使用這種方法,運行時間比目前最好的圖片壓縮方法快一到兩個數量級,同時,它產生的圖片效果和最好的辦法相當,甚至更好。
現在,這個系統已經可以用于訓練庫之外的圖片,也就是說,當系統遇到一張從未見過的圖片時,也能按照同樣的方法,用更小的尺寸模擬出高質量圖片。
2016 年 11 月,RAISR 被引入了 Google+ 中,最理想的狀況下,它可以節省 75% 的流量。
現在,RAISR 技術僅在 Android 設備用戶訪問 Google+ 時啟用。即便如此,Google 說,現在每周也有超過 10 億張圖片用了這項技術,幫助用戶節省了約 1/3 的流量。很快,它也被用于更多的 Google 產品。
總結
以上是生活随笔為你收集整理的Google 超分辨率技术 RAISR的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: [转】:VS 2010 : 如何开发和部
- 下一篇: 使用反射操作Array类型