この記事の3行まとめ
- QualiArtsが内製の画像比較ツールの解説記事を公開
- ツールは『IDOLY PRIDE』のライブシーンのチェック作業用に開発された
- 画像の一致度を算出するコードや、テクスチャの並列ロードなどの手法を解説
QualiArtsは、自社のエンジニアブログにて『ライブ制作の課題を解決!Unityで高速化した画像比較ツール』と題した記事を公開しました。
同記事では、『IDOLY PRIDE』におけるライブシーンのチェック作業用に開発したUnity用ツールの実装が解説されています。
【公式エンジニアブログ更新!】
内定者の中野さんの記事が掲載されました!
ライブ制作の課題を解決!Unityで高速化した画像比較ツールhttps://t.co/fAxbLHkmic
— QualiArts(公式アカウント) (@QualiArts_PR) October 31, 2023
【公式エンジニアブログ更新!】
内定者の中野さんの記事が掲載されました!
ライブ制作の課題を解決!Unityで高速化した画像比較ツールhttps://t.co/fAxbLHkmic
— QualiArts(公式アカウント) (@QualiArts_PR) October 31, 2023
ツール開発以前はルック変更前後の差分を人力でチェックしていたため、コストの高さや、意図しない変化の見落としが問題となっていたとのこと。例えば、描画に関わるロジックの変更やレベルに配置したアセットの更新時に、意図しないルックの変化が起こりえます。
ライトやポストプロセスが適用されなくなる例(画像は公式ブログより引用)
モニターに表示されるはずの動画が再生できなくなる例(画像は公式ブログより引用)
また、既存の画像比較ツールでは、処理の遅さに加えてPythonやFFmpegなどのインストールをはじめとするセットアップの大変さが課題だったそうです。
この問題を解決すべく、処理負荷がより低く、Unityのみで完結する新たな画像比較ツールが開発されました。ツールは、以下の4枚で構成されたテクスチャを連番にし、一つの動画に出力します。
- ルック変更前のテクスチャ(下記画像左上)
- ルック変更後のテクスチャ(下記画像右上)
- 「PSNR(※)」のグラフ(下記画像左下)
※ Peak Signal Noise Ratio。画像の一致度を測るときに使われる
- 変更前後の色差分を出したテクスチャ(下記画像右下)
※ Peak Signal Noise Ratio。画像の一致度を測るときに使われる
(画像は公式ブログより引用)
記事では、ツールの実行フローと実装手順を解説。2つの画像の差を示すためのPSNRを算出するコードや、フレームごとのPSNRをUnityのDrawProceduralを使用してグラフ化する処理などを紹介しています。
ツールの実行フロー(画像は公式ブログより引用)
差分やグラフなどの画像を1つの画像に統合するのにはCanvasを使用している(画像は公式ブログより引用)
画像ロードの並列化などの最適化を行った結果、既存ツールでは14分ほどかかっていた処理が10分前後で完了するようになったとのこと。
(画像は公式ブログより引用)
実装の詳細や、実際のコードはこちらをご確認ください。
ライブ制作の課題を解決!Unityで高速化した画像比較ツール