AIで顔を向けると微笑み返してくれるポートレート! – 機能とセットアップ編 –

はじめに

ハリーポッターに出てくる動く肖像画を参考に顔を向けると微笑み返してくれるポートレートを作ってみました。ぜひお試しを!

複数記事に分けて解説しています.

AIで顔を向けると微笑み返してくれるポートレート! – 機能とセットアップ編 –
AIで顔を向けると微笑み返してくれるポートレート! – 作成編 –
AIで顔を向けると微笑み返してくれるポートレート! – 検証編 –

顔を向けると微笑み返してくれるポートレートとは?

StyleGAN2で肖像画用に顔画像を生成しています. WEBカメラで周囲の映像を取り込み, dlibで顔の向きを検知し, 肖像画に顔が向けられたとき, StyleGAN2で顔画像が笑顔になるように表情編集しています.

システム定義

StyleGAN2で顔画像を生成, 編集する演算を行うPC, 顔画像を表示するディスプレイ, 周囲の映像を取り込むWEBカメラから構成されています.

実装した機能

  • 顔を向けると, 微笑むようにする
  • 一定時間経つと, 別の人に変わるようにする

準備したもの

ディスプレイ

Androidのタブレットを用いました.

フォトフレーム

フォトフレーム

WEBカメラ

USBカメラ

セットアップ

まずはstylegan2を実行することができる環境を用意するため, Dockerfileを取得します.

# get Dockerfile
git clone https://github.com/tech-life-hacking/stylegan2encoder.git

次にdockerfileからdockerイメージの作成, コンテナの起動をします.

# building dockerfile
docker build --pull --rm -f Dockerfile -t dockerfile:latest .

# execute scripts
bash dockercommands.bash

さらにGUIの許可をします.
“Available platform plugins are: xcb."とエラーが出るときは以下のコマンドを実行してみてください.

# GUIの許可
# CONTAINER IDには使用するdockerコンテナIDを入れる
xhost local:CONTAINER ID

# もしくは
xhost local:

最後にWEBカメラを繋ぎテストしましょう.

# test
python /home/stylegan2encoder/reactiveportraits.py

人物画を生成でき, 表情が変わればセットアップ完了です.

次は生成する人物画をカスタマイズしていきます.

複数記事に分けて解説しています.

AIで顔を向けると微笑み返してくれるポートレート! – 機能とセットアップ編 –
AIで顔を向けると微笑み返してくれるポートレート! – 作成編 –
AIで顔を向けると微笑み返してくれるポートレート! – 検証編 –