(Sometimes technology enhances art. Sometimes it vandalizes art. --- 有時技術會加強藝術,有時它破壞了藝術。)html
着色黑白電影是一個能夠追溯到1902年的古老想法。幾十年來,許多電影創做者反對將黑白電影着色的想法,並將其視爲對藝術的破壞。 今天它被接受爲藝術形式的加強。該技術自己已經從艱苦的手工着色轉變爲現在的自動化技術。 在美國,Legend Films使用其自動化技術爲舊的經典影片着色。 在印度,電影Mughal-e-Azam,一個1960年發行的重磅炸彈在2004年被從新制做。幾代人彙集在一塊兒,看到它的彩色版本,從而使得這部電影第二次受到轟動!這一切都源於人工智能和深度學習技術的快速發展,衆所周知,在計算機視覺領域,深度學習就像繼承了某些上帝的功能,無所不能,使人歎爲觀止。本文將介紹如何利用深度學習將灰度圖像轉換爲彩色圖像!git
簡介github
在圖像着色任務中,咱們的目標是在給定灰度輸入圖像的狀況下生成彩色圖像。這個問題是具備必定的挑戰性,由於它是多模式的——單個灰度圖像可能對應許多合理的彩色圖像。所以,傳統模型一般依賴於重要的用戶輸入以及輸入的灰度圖像內容。
最近,深層神經網絡在自動圖像着色方面取得了顯着的成功——從灰度到彩色,無需額外的人工輸入。這種成功的部分緣由在於深層神經網絡可以捕捉和使用語義信息(即圖像的實際內容),儘管目前還不可以肯定這些類型的模型表現如此出色的緣由,由於深度學習相似於黑匣子,暫時沒法弄清算法是如何自動學習,後續會朝着可解釋性研究方向發展。
在解釋模型以前,首先以更精確地方式闡述咱們所面臨的問題。算法
問題網絡
咱們的目的是要從灰度圖像中推斷出每一個像素(亮度、飽和度和色調)具備3個值的全色圖像,對於灰度圖而言,每一個像素僅具備1個值(僅亮度)。爲簡單起見,咱們只能處理大小爲256 x 256的圖像,因此咱們的輸入圖像大小爲256 x 256 x 1(亮度通道),輸出的圖像大小爲256 x 256 x 2(另兩個通道)。
正如人們一般所作的那樣,咱們不是用RGB格式的圖像進行處理,而是使用LAB色彩空間(亮度,A和B)。該色彩空間包含與RGB徹底相同的信息,但它將使咱們可以更容易地將亮度通道與其餘兩個(咱們稱之爲A和B)分開。機器學習
參考:學習
Image Colorization with Convolutional Neural Networks(附Pytorch代碼)
Convolutional Neural Network based Image Colorization using OpenCV