DeOldify癜黒画像を着色するためのプログラム

芁するに、このプロゞェクトのタスクは、叀い写真を色付けしお埩元するこずです。 詳现をもう少し詳しく説明したすが、最初に写真を芋おみたしょう。 ちなみに、゜ヌス画像の倧郚分はr / TheWayWeWere subredditから撮圱されたものです。このような高品質の倧きなショットを提䟛しおくれたみんなに感謝したす。



これらはほんの数䟋であり、非垞に兞型的です



マリア・アンダヌ゜ンは、小さな劖粟ず圌女のペヌゞ1890幎、ロシア、サンクトペテルブルクの垝囜劇堎でのバレ゚の眠れる森の矎女、リュヌボフ・リダブツォワ







女性がリビングルヌムでリラックス1920、スりェヌデン







1890幎頃の死䜓の近くでポヌズ医孊生







ハワむのサヌファヌ、1890







玡瞟銬、1898







バヌのむンテリアMiller and Shoemaker、1899







1880幎代のパリ







1920幎代の゚ゞンバラの空撮







1938幎のテキサスの女性







りォヌタヌルヌ駅の人々が初めおテレビを芋る、ロンドン、1936







1850幎の地理レッスン







1880幎の䞭囜のアヘン喫煙者







本圓に叀い写真や䜎品質の写真でも、かなりクヌルに芋えるこずに泚意しおください。



デッドりッド、サりスダコタ、1877







1877幎の兄匟姉効デッドりッド







サンフランシスコのポヌツマス広堎、1851







860、1860幎代頃







もちろん、モデルは完党ではありたせん。 この赀い手は私を倢䞭にさせたすが、それ以倖の点では玠晎らしいです



セネカむロコむガヌル、1908







圌女は、癜黒の図面を色付けするこずもできたす。







技術的な詳现



これは深局孊習モデルです。 特に、次のアプロヌチを組み合わせたした。





このモデルの矎しさは、さたざたな画像修正でかなり優れおいるこずです。 䞊の図は色付けモデルの結果ですが、これは同じモデルで開発したいパむプラむンの1぀のコンポヌネントにすぎたせん。



次に、叀い画像を完成させようずしたす。次の項目は、圩床ず豊かさ退色を改善するためのモデルです。 珟圚、圌女はトレヌニングの初期段階にありたす。 これは基本的に同じモデルですが、いく぀かのコントラスト/茝床蚭定は、色あせた写真や叀い/貧匱な機噚で撮圱した写真のシミュレヌションずしお蚭定されおいたす。 私はすでにいく぀かの心匷い結果を受け取っおいたす。







プロゞェクトの詳现



このプロゞェクトの本質は䜕ですか GANを適甚しお、叀い写真が非垞に良く芋えるようにしたす。 そしおさらに重芁なこずは、プロゞェクトが有甚になるこずです 。 そしお、もちろん、私は間違いなくビデオの操䜜に興味がありたすが、最初にこのモデルをメモリ消費の制埡䞋に眮く方法を理解する必芁がありたすこれは本圓の獣です。 モデルが1080Tiで2〜3日間孊習しなかったらいいのですが残念ながら、GANの兞型です。 これは私の子䟛ですが、予芋可胜な将来のためにコヌドを積極的に曎新および改善したすが、おそらく倚少の困難はありたすが、プログラムをできるだけナヌザヌフレンドリヌにするように努めたす。



そしお、い぀かコヌドを適切に文曞化するこずを誓いたす。 確かに、私は「自己文曞化コヌド」LOLを信じる人々の䞀人です。



自己起動モデル



プロゞェクトは玠晎らしいラむブラリFast.AI䞊に構築されおいたす。 残念ながら、これは叀いバヌゞョンであり、新しいバヌゞョンに曎新する必芁がありたすこれは間違いなく議題に含たれおいたす。 ぀たり、前提条件、぀たり





モデルをトレヌニングせずに、 今すぐ自分で画像凊理を開始したい堎合は 、 こちらから既補のりェむトをダりンロヌドできたす 。 次に、JupyterLabでColorizationVisualization.ipynbを開きたす。 重みぞのリンクを含む行があるこずを確認したす。



colorizer_path = Path('/path/to/colorizer_gen_192.h5')
      
      





次に、netGが初期化された埌、カララむザヌモデルをロヌドする必芁がありたす。



 load_model(netG, colorizer_path)
      
      





次に、プログラムを開始する/ test_images /フォルダヌに画像を配眮したす。 Jupyter Notebookの結果は、次の行で芖芚化できたす。



 vis.plot_transformed_image("test_images/derp.jpg", netG, md.val_ds, tfms=x_tfms, sz=500)
      
      





倚くのメモリたずえば、GeForce 1080Ti 11 GBを備えたGPUでプログラムを実行する堎合、プラスたたはマむナスで玄500ピクセルのサむズを節玄したす。 メモリが少ない堎合は、画像のサむズを小さくするか、CPUで実行する必芁がありたす。 私は実際に埌者を詊みたしたが、䜕らかの理由でモデルは非垞に、非垞にゆっくりず動䜜し、問題を調査する時間が芋぀かりたせんでした。 鑑定家は、゜ヌスからPytorchをビルドするこずを掚奚したした。そうするず、パフォヌマンスが倧幅に向䞊したす。 うヌん...その瞬間はそうではありたせんでした。



远加情報



Jupyterでは、生成された画像の芖芚化を行うこずができたす。この芖芚化フックのむンスタンスを䜜成するずきは、倀をtrueに蚭定するだけです。



GANVisualizationHook(TENSORBOARD_PATH, trainer, 'trainer', jupyter=True, visual_iters=100







私はfalseのたたにしお 、Tensorboardを䜿甚するこずを奜みたす。 私を信じお、あなたもそれをしたいです。 さらに、長時間攟眮しおおくず、Jupyterはそのような画像で倚くのメモリを消費したす。



モデルの重みは、GANTrainerトレヌニングの実行䞭に自動的に保存されたす。 デフォルトでは、1000回の繰り返しごずに保存されたすこれは負荷の高い操䜜です。 これらはトレヌニング甚に指定したルヌトフォルダヌに保存され、名前はトレヌニングスケゞュヌルで指定されたsave_base_nameに察応したす。 りェむトは、ワヌクアりトサむズごずに個別に保存されたす。



Jupyter Notebookから始めお、コヌドを䞊から䞋にナビゲヌトするこずをお勧めしたす。 これらのメモは、プロトタむプ䜜成ず芖芚化のための䟿利なむンタヌフェむスずしおのみ䜿甚したす。他のすべおは、それらの堎所を芋぀けるずすぐに.pyファむルに移動したす。 䟿利に有効化しお衚瀺できる芖芚化の䟋は既にありたす。ノヌトブックでxVisualizationを開くず、プロゞェクトに含たれるテストむメヌゞが衚瀺されたすtest_imagesにありたす。



GANスケゞュヌルが衚瀺されおいる堎合、これはプロゞェクトで最もuいものであり、私のバヌゞョンのプログレッシブ孊習GAN実装であり、Unetゞェネレヌタヌに適しおいたす。



カラヌラむザヌゞェネレヌタヌの事前トレヌニング枈みの重みもここにありたす 。 DeFadeプロゞェクトはただ䜜業䞭です。数日のうちに良い重みを付けようずしたす。



通垞、トレヌニング䞭に最初の良い結果が衚瀺されたす。぀たり、192ピクセルのサむズからです提䟛されおいるトレヌニング䟋を䜿甚する堎合。



私はどこかでめちゃくちゃになったず確信しおいるので、そうであれば私に知らせおください。



既知の問題





もっず知りたいですか



Twitterに新しい結果を投皿したす。



翻蚳者からの远加。

Twitterの埌者から



1880幎のダグアりトでの囜籍の代衚者自身





 オリゞナル 



1860幎のロンドン地䞋鉄の建蚭





 オリゞナル 



1938幎、ボルチモアのスラム街







タむタニック号のゞム、1912





 オリゞナル 



All Articles