Python+AI で古い写真をカラー化

Python+AI で古い写真をカラー化

こんにちは、みんな。

今日も引き続き、興味深い AI プロジェクトを皆さんと共有したいと思います。

前回は、GAN (Generative Adversarial Network) を使用して静止画像をアニメーション化する方法を紹介しました。

今日は、古い写真をカラー化する NoGAN の画像強化技術を紹介します。効果は以下のとおりです。

オリジナル画像

着色後

NoGAN は、GAN のトレーニングに最も短い時間しかかからない新しいタイプの GAN です。

今日共有したプロジェクトは GitHub でオープンソース化されました。実行してみましょう。

1. 準備

まず、git clone コマンドを使用してソースコードをダウンロードします。

 git クローンhttps://github.com/jantic/DeOldify.git

プロジェクトのルート ディレクトリに入り、Python 依存パッケージをインストールします。

 pip3 インストール-r要件.txt

コードを記述してプロジェクトを実行する前に、事前トレーニング済みのモデルをダウンロードする必要があります。このプロジェクトでは、次の 3 つのモデルが提供されます。

モデル

違いは次のとおりです。

  • ColorizeArtistic_gen.pth: 興味深いディテールと鮮やかさを備えた最高品質の画像カラー化を実現します。このモデルは、UNet のバックボーンとして resnet34 を使用し、NoGAN を介して 5 回の批評事前トレーニング/GAN サイクルで再トレーニングされます。
  • ColorizeStable_gen.pth: 横向きと縦向きで最高の結果を達成します。このモデルは、UNet のバックボーンとして resnet101 を使用し、NoGAN を介して 3 つの批評的事前トレーニング/GAN サイクルで再トレーニングされます。
  • ColorizeVideo_gen.pth: スムーズなビデオ用に最適化されており、Inception Generator/Critic Pretrained/GAN NoGAN トレーニングのみを使用します。スムーズなスピードを追求したため、前2作よりもカラー数が少なくなっています。
  • ダウンロードしたモデル ファイルをプロジェクト ルート ディレクトリの models ディレクトリに配置します。

2. コードを書く

プロジェクトのルート ディレクトリと同じディレクトリに Python ファイルを作成し、ダウンロードしたモデル ファイルを読み込むコードを記述します。

 DeOldify .deoldify .generators からgen_inference_wide をインポートします
DeOldify.deoldify.filters からMasterFilter ColorizerFilter をインポートします

# モデルファイルを指定する
learn = gen_inference_wide ( root_folder = Path ( './DeOldify' ) weights_name = 'ColorizeVideo_gen' )

# モデルをロードする
deoldfly_model = MasterFilter ( [ ColorizerFilter ( learn = learn ) ] render_factor = 10 )

root_folder はプロジェクトのルート ディレクトリを指定し、weights_name は次に写真をカラー化するために使用するモデルを指定します。

古い写真を読み取ってカラー化します。

 cv2をインポート
numpyをnp としてインポートする
PIL インポート画像から

img = cv2.imread ( './images/origin.jpg' )
画像= cv2.cvtColor (画像 cv2.COLOR_BGR2RGB )
pil_img = Image.fromarray ( img )

フィルターされた画像= deoldfly_model .filter (
pil_img pil_img render_factor = 35 post_process = True


result_img = np .asarray (フィルターされた画像)
結果画像= cv2.cvtColor (結果画像, cv2.COLOR_RGB2BGR )
cv2 .imwrite ( 'deoldify.jpg' result_img )

cv2 を使用して古い写真を読み取り、PIL.Image モジュールを使用して写真をモデル入力に必要な形式に変換し、モデルに送信して色付けし、完了したら保存します。

上記のコードはプロジェクトのソースコードから抽出したものです。ご覧のとおり、コードの実行は非常に簡単です。

<<:  液体ロボットはマーケティングの策略か、それとも自動化の未来か?

>>:  セマンティックAIとデータ管理の5つのトレンド

ブログ    
ブログ    

推薦する

...

最先端技術の共有:脳の信号を音声に変換するAIアルゴリズムは、失語症の人が正常に話すことを助けることが期待されています

カリフォルニア大学サンフランシスコ校の神経科学者チームは、ネイチャー誌に最近発表した研究で、脳の活動...

英国を拠点とするサマドは、eVTOL飛行試験と新型貨物ドローンの開発を進めている。

英国を拠点とするサマド・エアロスペースは、E-スターリングeVTOL機の半分の規模の試作品の開発を進...

Xuelang Cloudは、世界人工知能会議アルゴリズムコンテストのBPAA産業トラックで世界トップ10に輝きました!

2021年7月6日、世界人工知能大会組織委員会事務局主催の第1回BPAA応用アルゴリズム実践モデル...

...

...

...

AIコンピューティングパワーの封鎖が激化しています!米国、中国によるアマゾン、マイクロソフトのクラウドサービスの利用を制限する計画

ウォールストリート・ジャーナルは7月4日、米国政府が中国企業による米国メーカーのクラウドコンピューテ...

知能ロボット連携システムとその主要技術

ロボットの知能化に向けた開発において、マルチロボット協働システムは包括的な技術統合プラットフォームで...

...

データと人工知能の整合性をどのように確保するか?

2022 年、データと AI はデジタル革命の新たな章の基盤を築き、ますます多くのグローバル企業に...

...

AI には明るい未来があります。これらの 5 つのことをうまく実行すれば、将来の市場で発言権を持つ可能性が高まります。

2021年の初め、AIの軌道は混乱していました。業界のスター企業から悪いニュースが続々と届き、上場...

Xunlei 創設者 Cheng Hao: 人工知能起業における 6 つの核心課題

[[205875]]まず第一に、今日ビジネスを始めようと決めたなら、インターネットよりも人工知能に重...

機械学習アルゴリズムにおける分類知識の要約

この記事では、機械学習アルゴリズムにおける非常に重要な知識である分類、つまり入力データが属するカテゴ...