點擊上方“算法猿的成長“,關注公衆號,選擇加“星標“或“置頂”
總第 145 篇文章,本文大約 2100 字,閱讀大約需要 7 分鐘
前言
今天要介紹的是 Github 上一個基於深度學習的超分辨率工具--SRZoo,並且它還提供了多個預訓練模型。Github 地址:
https://github.com/idearibosome/srzoo?u=2181051220&m=4512180215508847&cu=2181051220&ru=1402400261&rm=4512148967116203
簡介
SRZoo 是一個基於深度學習的圖像超分辨率的工具和模型庫,它提供了多種圖像超分辨率領域目前性能最好的預訓練模型。
它的主要功能包括:
SRZoo 提供了多種超分辨率方法的官方預訓練模型;
通過 SRZoo,可以非常容易就通過提供的超分辨率方法來獲取超分辨率(super-resolved)的圖片;
可以在不同配置環境下使用超分辨率模型,比如支持 CUDA 的 GPUs 以及通過 TensorFlow.js 的瀏覽器;
可以在相同評估標準和環境下對比超分辨率方法的性能。
在下面這篇論文中,你可以瞭解更多我們的動機以及一些對 SRZoo 的細節描述,比如性能比較等:
J.-H. Choi, J.-H. Kim, J.-S. Lee. SRZoo: an integrated repository for super-resolution using deep learning. IEEE International Conference on Acoustics, Speech, and Signal Processing (ICASSP), May 2020
論文地址:
https://doi.org/10.1109/ICASSP40776.2020.9054533
arxiv 的地址:
https://arxiv.org/abs/2006.01339
使用要求
Python3.6 或者更新的版本
TensorFlow1.12 或者更新版本
預訓練的超分辨率模型
下面是提供的一些預訓練模型,模型的參數都在自模型算法的作者。如果你有用到這些模型算法,請加上對論文的引用。
超分辨率圖片檢索
在 SRZoo 中通過 get_sr.py
代碼提供了一個簡單的圖像搜索,使用例子:
python get_sr.py --config_path=configs/edsr.json --model_path=edsr_x4.pb --input_path=LR --output_path=SR --scale=4
參數說明:
config_path
:模型配置文件路徑model_path
:預訓練模型文件路徑input_path
:輸入的低分辨率圖片的路徑output_path
:輸出的超分辨率圖片的保存路徑scale
:提高的倍數self_ensemble
:指定是否應用geometric self-ensemble
方法(http://openaccess.thecvf.com/content_cvpr_2017_workshops/w12/papers/Lim_Enhanced_Deep_Residual_CVPR_2017_paper.pdf)cuda_device
:指定採用的 GPU 設備索引(需要將環境變量設置爲CUDA_VISIBLE_DEVICE
)
注意:部分模型由於不同維度順序問題,只能在 GPU 上運行。
性能評價
在獲取到超分辨率圖片後,可以通過代碼evaluate_sr.py
進行性能的評價,使用例子:
python evaluate_sr.py --sr_path=SR --truth_path=HR
參數說明:
sr_path
:超分辨率圖片路徑truth_path
:真實圖片的路徑shave_borders
:圖像邊界需要修正的像素的數量。通常設置爲增大尺寸的倍數(upscaling factor)color_mode
:顏色轉換模式。ycbcry
:YCbCr 顏色空間的 Y 通道RGB
:RGB 顏色空間的 RGB 通道evaluators
:以逗號分隔的評估方法。主要採用文件夾evaluators
裏的評估方法output_name
:輸出的 CSV 文件的路徑
這裏你可以自定義自己的評估方法,通過繼承基類BaseEvaluator
,代碼是保存在文件夾evaluators/
。
模型轉換
也可以對其他預訓練的超分辨率模型進行轉換。詳情可以查看文件夾converter
中的信息。另外,根據config
文件夾的內容來編寫你需要進行轉換的模型的配置信息。
其他
圖像降低(downscaling)工具
SRZoo 對於評估超分辨率模型也提供了降低工具(downscaling utilities),具體可以查看 utils/downscale
文件夾
採用其他的圖像處理模型
SRZoo 可以應用於輸入輸出都是圖像的模型,因此也可以在簡單做了一些修改後應該其他的圖像處理算法。作爲一個概念驗證,我們提供了一個基於 SRZoo 的預訓練圖像壓縮模型,模型算法來自:
https://github.com/fab-jul/imgcomp-cvpr
使用結果:
如果要應用這些模型,可以簡單地將 upscaling factor
設置爲 1,比如get_sr.py
中的參數--scale
。
不過目前只支持在 GPU上運行這些模型。
最近滴滴雲推出了多個基於 NVIDIA vGPU 的新型實例,包括計算型、渲染型和遊戲型三大類,支持的 GPU包括 Tesla P4、P40、T4 等,可以選擇包年、包月或者按照小時購買使用時間,非常靈活方便。
現在填寫我的滴滴雲專屬 AI 大師碼:9192,可以享受 9 折優惠。
滴滴雲官網地址:
www.didiyun.com
精選AI文章
2. 是選擇Keras還是PyTorch開始你的深度學習之旅呢?
7. 10個實用的機器學習建議
8. 實戰|手把手教你訓練一個基於Keras的多標籤圖像分類器
精選python文章
1. python數據模型
4. Jupyter 進階教程
精選教程資源文章
1. [資源分享] TensorFlow 官方中文版教程來了
2. [資源]推薦一些Python書籍和教程,入門和進階的都有!
3. [Github項目推薦] 推薦三個助你更好利用Github的工具
5. GitHub上有哪些比較好的計算機視覺/機器視覺的項目?
歡迎關注我的微信公衆號--算法猿的成長,或者掃描下方的二維碼,大家一起交流,學習和進步!
如果覺得不錯,在看、轉發就是對小編的一個支持!