資源|深度學習中的代碼資源庫(一)圖像處理篇

本文是集智小仙女為大家整理的代碼資源庫—圖像處理篇,收集了大量深度學習項目圖像處理領域的代碼鏈接。包括圖像識別,圖像生成,看圖說話等等方向的代碼,所有代碼均按照所屬技術領域附有鏈接。大家同時可戳知乎中的鏈接索引,直接進入相應鏈接。知乎:https://zhuanlan.zhihu.com/p/28601032?utm_source=wechat_session&utm_medium=social

1、 圖像生成

1.1 繪畫風格到圖片的轉換:Neural Style

1.2 圖像類比轉換:image-analogies

1.3 根據塗鴉生成圖片:Neural Doodle

1.4 匹根據塗鴉類比圖片:Sketchy

1.5 根據圖片生成鉛筆畫:Pencil

1.6 手寫文字模擬:rnnlib

1.7 轉換風景圖片:Transient Attributes for High-Level Understanding and Editing of Outdoor Scenes

1.8 圖片變Emojis表情:What emojis will the Emojini 3000 grant your photos?

1.9 增加圖片分辨率:srez

1.10 圖片自動上色:Colornet

1.11 生成可愛的動漫頭像:AnimeGAN

1.12 騾子變斑馬:CycleGAN and pix2pix in PyTorch

1.13 強大的圖像生成器:DiscoGAN in PyTorch

1.14 使用RNN生成手寫數字:DRAW implmentation

1.15 使用CNN來放大圖片:waifu2x

2、 看圖說話

2.1 根據圖片生成一段描述:Show and Tell

2.2 根據圖片講故事:neural-storyteller

2.3 根據圖片將故事2:NeuralTalk2

2.4 識別圖片中的文字:CRNN for image-based sequence recognition

3、 圖像識別

3.1 用於物體識別的全卷積網絡:PyTorch-FCN

3.2 引入注意力的卷積網絡:Attention Transfer

3.3 物體識別實例:Deep-Learning

3.4 物體識別API:Tensorflow Object Detection API

3.5 推理場景結構:SfMLearner

3.6 用於分辨色情圖像的open_nsfw

3.7 人臉識別:Open Face

3.8 易用人臉識別:Face_recognition

3.9 快速人臉識別:MobileID

3.10 圖像識別框架1:AlexNet & VGG Net & GoogleNet & ResNet

3.11 圖像識別框架2:ResNeXt & RCNN & YOLO & SqueezeNet & SegNet

3.12 預訓練的圖像識別模型:functional-zoo

3.13 預定義的CNN過濾器: PyScatWave

3.14 計算圖片中物體的相似度:Conditional Similarity Networks (CSNs)

3.15 量子化學中的神經信息傳遞(?_?;Neural Message Passing for Quantum Chemistry

4 、圖像理解

4.1 Visual Question Answering in Pytorch

4.2 Facebook看圖答題:Clevr-IEP

1

圖像生成

繪畫風格到圖片的轉換:Neural Style

https://github.com/jcjohnson/neural-style

這個項目是用 Torch 對 Leon A. Gatys, Alexander S. Ecker, 和 Matthias Bethge 等人的論文“A Neural Algorithm of Artistic Style”的一個實現。論文中提出一種算法,用卷積神經網絡將一幅圖像的內容與另一幅圖像的風格進行組合。

圖像類比轉換:image-analogies

https://github.com/awentzonline/image-analogies

“神經圖像類比”(neural image analogies)這個項目基本上是 A. Hertzmann et. al(2001)的論文“Image Analogies”的一個實現。在這個項目中,我們使用了 VGG16 的特徵,利用 Chuan Li, Michael Wand (2016) 的論文“Combining Markov Random Fields and Convolutional Neural Networks for Image Synthesis”中描述的方法進行patch的匹配和混合。初始代碼改編自 Keras 的“神經風格遷移”示例。

根據塗鴉生成圖片:Neural Doodle

https://github.com/alexjc/neural-doodle

使用深度神經網絡把你的二流塗鴉變成藝術一般的作品!這個項目是 Champandard(2016)的論文 “Semantic Style Transfer and Turning Two-Bit Doodles into Fine Artworks”的一個實現,基於 Chuan Li 和 Michael Wand(2016)在論文“Combining Markov Random Fields and Convolutional Neural Networks for Image Synthesis”中提出的 Neural Patches 算法。

根據塗鴉類比圖片:Sketchy

https://github.com/janesjanes/sketchy

這個項目可以根據用戶手繪的塗鴉,匹配出類似的圖片。

根據圖片生成鉛筆畫:Pencil

https://github.com/fumin/pencil

把一副圖像變成鉛筆水粉畫。

手寫文字模擬:rnnlib

https://github.com/szcom/rnnlib

這個項目可以做到手寫文字模擬。

轉換風景圖片:Transient Attributes for High-Level Understanding and Editing of Outdoor Scenes

http://transattr.cs.brown.edu

這個項目可以識別和理解圖片中的風景,並且可以根據用戶提出的條件,定向改變原風景畫中的環境(比如more night)

圖片變Emojis表情:What emojis will the Emojini 3000 grant your photos?

http://engineering.curalate.com/2016/01/20/emojinet.html

將用戶提供的圖片轉化成相關的表情圖標

增加圖片分辨率:srez

https://github.com/david-gpu/srez

srez(super-resolution through deep learning),即通過深度學習實現圖像超分辨率。這個項目是利用深度學習將 16x16 的圖像分辨率增加 4 倍,基於用來訓練神經網絡的數據集,所得到的圖像具有鮮明的特徵。

圖片自動上色:Colornet

https://github.com/pavelgonchar/colornet

Colornet 是一個給灰度圖像自動上色的神經網絡。

生成可愛的動漫頭像:AnimeGAN

https://github.com/jayleicn/animeGAN

使用PyTorch實現的GAN,可以自定義生成漂亮的動漫妹子頭像,附帶訓練數據集哦!

騾子變斑馬:CycleGAN and pix2pix in PyTorch

https://github.com/junyanz/pytorch-CycleGAN-and-pix2pix.git

圖到圖的翻譯,著名的 CycleGAN 以及 pix2pix 的PyTorch 實現。

強大的圖像生成器:DiscoGAN in PyTorch

https://github.com/carpedm20/DiscoGAN-pytorch.git

《Learning to Discover Cross-Domain Relations with Generative Adversarial Networks》的 PyTorch 實現。

使用RNN生成手寫數字:DRAW implmentation

https://github.com/skaae/lasagne-draw

使用RNN生成手寫體數字。

使用CNN來放大圖片:waifu2x

https://github.com/nagadomi/waifu2x

使用CNN來放大圖片,與普通圖片放大不同的是,使用CNN“生成”放大,使低分辨率的圖片在放大後也不會出現像素鋸齒。

2

看圖說話

根據圖片生成一段描述:Show and Tell

https://github.com/tensorflow/models/tree/master/im2txt

這是 Oriol Vinyals et. al.(2016)的論文“Show and Tell: Lessons learned from the 2015 MSCOCO Image Captioning Challenge”的用TensorFlow實現的 image-to-text 圖片說明生成模型。

根據圖片講故事:neural-storyteller

https://github.com/ryankiros/neural-storyteller

Neural-storyteller 是一個能夠根據圖像內容生成一個小故事的循環神經網絡。這個 GitHub 庫裡包含了使用任意圖像生成故事的代碼,以及用於訓練新模型的說明。

根據圖片將故事2:NeuralTalk2

https://github.com/karpathy/neuraltalk2

循環神經網絡(RNN)可以用於給圖像取標題。NeuralTalk2 比原始版本的 NeuralTalk 更快而且性能更好。與原來的 NeuralTalk 相比,NeuralTalk2 的實現是批量的,可以使用 Torch 在 GPU上運行,並且支持 CNN 微調。這些都使得語言模型(~100x)的訓練速度大大加快,但由於我們還有一個 VGGNet,因此總體上的提升沒有很多。但是這仍然是個好模型,可以在 2~3 天裡訓練好,而且表現出的性能非常好。

識別圖片中的文字:CRNN for image-based sequence recognition

https://github.com/bgshih/crnn.git

這個是 Convolutional Recurrent Neural Network (CRNN) 的 PyTorch 實現。CRNN 由一些CNN,RNN和CTC組成,常用於基於圖像的序列識別任務,例如場景文本識別和OCR。

3

圖像識別

用於物體識別的全卷積網絡:PyTorch-FCN

https://github.com/wkentaro/pytorch-fcn.git

一個性能出眾的物體識別全卷積神經網絡,使用PyTorch實現。

引入注意力的卷積網絡:Attention Transfer

https://github.com/szagoruyko/attention-transfer.git

論文 "Paying More Attention to Attention: Improving the Performance of Convolutional Neural Networks via Attention Transfer" 的PyTorch實現。

物體識別實例:Deep-Learning

https://github.com/priya-dwivedi/Deep-Learning/blob/master/Object_Detection_Tensorflow_API.ipynb

一個基於Ipython Notebook的物體識別實例,使用了Tensorflow Object Dectection API

物體識別API:Tensorflow Object Detection API

https://github.com/tensorflow/models/tree/master/object_detection

Google Tensorflow Object Dectection API 的開源代碼。

推理場景結構:SfMLearner

https://github.com/tinghuiz/SfMLearner

用單張圖片推理場景結構:UC Berkeley提出3D景深聯合學習方法

用於分辨色情圖像的open_nsfw

https://github.com/yahoo/open_nsfw

這是雅虎構建的用於檢測圖片是否包含不適宜工作場所(NSFW)內容的深度神經網絡項目,GitHub 庫中包含了網絡的 Caffe 模型的代碼。檢測具有攻擊性或成人內容的圖像是研究人員進行了幾十年的一個難題。隨著計算機視覺技術和深度學習的發展,算法已經成熟,雅虎的這個模型能以更高的精度分辨色情圖像。 由於 NSFW 界定其實是很主觀的,有的人反感的東西可能其他人並不覺得如何。雅虎的這個深度神經網絡只關注NSFW內容的一種類型,即色情圖片,所以該模型不適用於檢測素描、文字、動畫、暴力圖片等內容。

人臉識別:Open Face

https://github.com/cmusatyalab/openface

OpenFace 是一個使用深度神經網絡,用 Python 和 Torch 實現人臉識別的項目。神經網絡模型基於 Google Florian Schroff 等人的 CVPR 2015 論文“FaceNet: A Unified Embedding for Face Recognition and Clustering” ,Torch 讓網絡可以在 CPU 或 CUDA 上運行。

易用人臉識別:Face_recognition

https://github.com/ageitgey/face_recognition#face-recognition

這也提供了一個簡單的 face_recognition 命令行工具,你可以打開命令行中任意圖像文件夾,進行人臉識別!

快速人臉識別:MobileID

https://github.com/liuziwei7/mobile-id

據說是個超級快速的人臉識別程序,可以用在手機上

圖像識別框架1:AlexNet & VGG Net & GoogleNet & ResNet

AlexNet

https://gist.github.com/JBed/c2fb3ce8ed299f197eff

VGG Ne

https://github.com/fchollet/keras/blob/master/keras/applications/vgg16.py

GoogleNet

https://github.com/fchollet/keras/blob/master/keras/applications/inception_v3.py

ResNet

https://github.com/fchollet/keras/blob/master/keras/applications/resnet50.py

圖像識別框架2:ResNeXt & RCNN & YOLO & SqueezeNet & SegNet

ResNeXt

https://github.com/titu1994/Keras-ResNeXt

RCNN (基於區域的 CNN)

https://github.com/yhenon/keras-frcnn

YOLO (You Only Look once)

https://github.com/allanzelener/YAD2K

SqueezeNet

https://github.com/rcmalli/keras-squeezenet

SegNet

https://github.com/imlab-uiip/keras-segnet

預訓練的圖像識別模型:functional-zoo

https://github.com/szagoruyko/functional-zoo.git

由PyTorch和Tensorflow實現的常用圖像識別模型包含預訓練參數。

預定義的CNN過濾器: PyScatWave

https://github.com/edouardoyallon/pyscatwave

一套預定義的filter,用於增強圖像識別的效果。

計算圖片中物體的相似度:Conditional Similarity Networks (CSNs)

https://github.com/andreasveit/conditional-similarity-networks.git

《Conditional Similarity Networks》的PyTorch實現,可以根據不同的條件計算圖片中物體的相似度。

量子化學中的神經信息傳遞(Neural Message Passing for Quantum Chemistry)

https://github.com/priba/nmp_qc.git

論文《Neural Message Passing for Quantum Chemistry》的PyTorch實現,講的是量子化學裡的神經信息傳遞!聽起來碉堡了。

4

圖像理解

Visual Question Answering in Pytorch

https://github.com/Cadene/vqa.pytorch.git

一個PyTorch實現的優秀視覺推理問答系統,是基於論文《MUTAN: Multimodal Tucker Fusion for Visual Question Answering》實現的。項目中有詳細的配置使用方法說明。

Facebook看圖答題:Clevr-IEP

https://github.com/facebookresearch/clevr-iep.git

Facebook Research 論文《Inferring and Executing Programs for Visual Reasoning》的PyTorch實現,講的是一個可以基於圖片進行關係推理問答的網絡。

更多關於深度學習項目的代碼鏈接,視頻類、聲音類、語言類、遊戲類、文本類等,關注公眾號我們會持續更新,敬請期待......


自學容易走彎路?

快來跟張江教授學習深度學習&PyTorch吧!

集智AI學園重磅推出系列直播課

重磅系列課:火炬上的深度學習(上)

http://campus.swarma.org/gapp=120

更有強大的助教團隊

李周園

清華大學博士、荷蘭Wageningen大學WIMEK學者,遙感數據挖掘方向。

胡勝

中國地質大學(武漢)碩士、攻讀博士,空間數據挖掘和智慧交通方向,熟悉Python語言。

孫穎寶

荷蘭Wageningen大學遙感與地理信息實驗室研究生,熟悉R、Python語言。

蘇尚君

前運維開發工程師、現Udacity機器學習課程助教,熟悉Python語言,GitHub用戶、有“簡書”技術專欄。

任偉

中國科學院大學博士,氣候系統與碳循環方向,有深度學習技術基礎,熟悉數據挖掘與空間分析。

張慶逸

學生,有編程工作經驗,瞭解Python語言。

打包組課只需499¥

可開發票

團購享優惠

推薦閱讀

吐血整理:PyTorch項目代碼與資源列表|集智AI學園

Flownetwork:流網絡的開源Python包

重磅課程:火炬(pytorch)上的深度學習

三國鼎立——機器翻譯模型最新發展|集智AI學園

各領域公開數據集下載|資源

你的免費GPU計算平臺-Floyd使用教程(下)|集智AI學園

吐血推薦:超級好用的深度學習雲平臺Floyd|集智AI學園


關注集智AI學園公眾號

獲取更多更有趣的AI教程吧!

搜索微信公眾號:swarmAI

集智AI學園QQ群:426390994

學園網站:campus.swarma.org

相關推薦

推薦中...