(Sometimes technology enhances art. Sometimes it vandalizes art. --- 有時技術會增強藝術,有時它破壞了藝術。)
着色黑白電影是一個可以追溯到1902年的古老想法。幾十年來,許多電影創作者反對將黑白電影着色的想法,並將其視為對藝術的破壞。 今天它被接受為藝術形式的增強。該技術本身已經從艱苦的手工着色轉變為如今的自動化技術。 在美國,Legend Films使用其自動化技術為舊的經典影片着色。 在印度,電影Mughal-e-Azam,一個1960年發行的重磅炸彈在2004年被重新制作。幾代人聚集在一起,看到它的彩色版本,從而使得這部電影第二次受到轟動!這一切都源於人工智能和深度學習技術的快速發展,眾所周知,在計算機視覺領域,深度學習就像繼承了某些上帝的功能,無所不能,令人嘆為觀止。本文將介紹如何利用深度學習將灰度圖像轉換為彩色圖像!
簡介
在圖像着色任務中,我們的目標是在給定灰度輸入圖像的情況下生成彩色圖像。這個問題是具有一定的挑戰性,因為它是多模式的——單個灰度圖像可能對應許多合理的彩色圖像。因此,傳統模型通常依賴於重要的用戶輸入以及輸入的灰度圖像內容。
最近,深層神經網絡在自動圖像着色方面取得了顯着的成功——從灰度到彩色,無需額外的人工輸入。這種成功的部分原因在於深層神經網絡能夠捕捉和使用語義信息(即圖像的實際內容),盡管目前還不能夠確定這些類型的模型表現如此出色的原因,因為深度學習類似於黑匣子,暫時無法弄清算法是如何自動學習,后續會朝着可解釋性研究方向發展。
在解釋模型之前,首先以更精確地方式闡述我們所面臨的問題。
問題
我們的目的是要從灰度圖像中推斷出每個像素(亮度、飽和度和色調)具有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