Colorful Image Colorization
圖片的顏色上色,主要使用到了CNN卷積神經網絡,作者在ImageNet數據集上進行了大量的訓練,并將此問題使用在分類任務中,以解決問題的潛在的不確定性,并在訓練時使用顏色重新平衡的損失函數方法來增加顏色的多樣性。該算法在測試時作為CNN中的前饋通道實現,并在超過一百萬個彩色圖像上進行了訓練。且使用“著色圖靈測試”評估算法。
此算法作者為了訓練神經網絡,從imageNet數據集上搜集大量的數據,并將所有搜集的圖像從圖片的RGB空間轉換為Lab空間。
與RGB三種顏色空間類似,Lab空間具有3個通道,但是與RGB不同,Lab空間對顏色的編碼為:
- The L channel :代表顏色的亮度
- The a channel :綠-紅
- The b channel :藍-黃
Lab顏色空間是根據Commission International Eclairage(CIE)在1931年所制定的一種測定顏色的國際標準建立的。于1976年被改進,并且命名的一種色彩模式。Lab顏色模型彌補了RGB和CMYK兩種色彩模式的不足。它是一種設備無關的顏色模型,也是一種基于生理特征的顏色模型。 [1] Lab顏色模型由三個要素組成,一個要素是亮度(L),a 和b是兩個顏色通道。a包括的顏色是從深綠色(低亮度值)到灰色(中亮度值)再到亮粉紅色(高亮度值);b是從亮藍色(低亮度值)到灰色(中亮度值)再到黃色(高亮度值)。因此,這種顏色混合后將產生具有明亮效果的色彩。
由于L通道僅編碼強度,因此神經網絡可以將L通道用作為網絡的灰度輸入
神經網絡訓練學習并預測a、b通道。 給定輸入L通道和預測的ab通道,3中通道合并便可以生成彩色的圖片
以上知識點是圖片上色的主要過程,當我們分享對象檢測與人臉識別時,我們總是把圖片檢測與人臉識別的圖片與視頻分開,其視頻識別過程其實就是圖片視頻的連續檢測,再把圖片合成視頻(現在的視頻一般1秒鐘有60幀的畫面),若你的電腦配置能夠達到此計算速度,或者稍微差點,其識別的視頻都可以很流暢的運行,上期文章分享了如何把一張黑白的圖片轉換為彩色照片,本期基于上次的代碼來進行黑白視頻的轉換
彩色圖片
黑白視頻轉換為彩色視頻
黑白視頻的輸入可以來源于輸入的視頻或者攝像頭
如果沒有輸入視頻,便打開系統設置的默認的攝像頭
初始化系統模型,獲取ab通道信息
我們在while死循環中從視頻中獲取獲取幀畫面,使用圖片的上色技巧來上色,最后再實時把圖片顯示以達到顯示視頻的結果
以上便是黑白視頻轉換為彩色視頻的全部代碼,小伙伴們可以直接修改輸入視頻的地址來進行自己視頻的轉換