見出し画像

量子コンピュータを利用したノイズテクスチャ

量子芸術として量子コンピュータを活用したジェネラティブアートを作れないかと言うことを考えたりしています。
手始めに最もシンプルな例として量子コンピュータを利用してノイズテクスチャを作成してみました。

ノイズはジェネラティブアートだけでなく多くのCGアートで重要な要素です。
映画やゲームのリアルなCGで使われているテクスチャもかっこいいミュージックビデオのグラフィックも様々なものがノイズを元に作られることが少なくありません。

良質なジェネラティブアートの資料として知られる『The Nature of Code』でもランダムネスについて一番最初に触れられています。
書籍も販売されていますが英語版であればネットで無料で読むことも可能です。

『The Nature of Code』は自然現象のシミュレーションをアートに昇華する方法について書かれています。
「自然をシミュレーションしたければ、量子力学の原理でコンピュータを作らなくてはならない」というファインマンの言葉は有名ですが、今現在までのコンピューターアートは(私が観測する限り)全て擬似乱数を用いて生成されたものです。

では擬似乱数ではなく真性乱数を元に生成されたコンピューターアートはいかなるものか?

というのが今回のコンセプトです。

まぁ、私を含む一般的な人間にとって生成された乱数が疑似なのか真性なのか見た目で判断することは出来なさそうなので、元になった乱数が擬似だろうが真性だろうがそれがアートの見た目にはそんなに寄与しないのでは? というのは実行する前からわかっていることではあるのですが、思いついたコンセプトを消化するために一番シンプルな方法としてノイズテクスチャを生成してみた次第です。

次に上げる2つの画像は32x32ピクセルの8bit(256段階のグレースケール)ノイズテクスチャです。

ノイズテクスチャ1
ノイズテクスチャ2

1つはビジュアルプログラミング言語のvvvvを使用して生成した擬似乱数を元にしています。もう一方はIBM  QuantumとQiskitを使用してものすごく簡単な乱数生成回路を実行して生成した真性乱数を元にしています。
IBM QuantumとQiskitでは画像を生成する機能はないので、一旦乱数をCSV形式なので出力してからvvvvに入力して画像にしています。

どちらが擬似乱数でどちらが真性乱数かわかりますか?

もしこの記事があなたのお役に立てたなら幸いです。 よろしければサポートをお願いします。今後の制作資金にさせていただきます!