レオナルド著 - umactially
asciipixels 、画像やビデオを高度にカスタマイズ可能なASCIIアートに変換するための迅速で簡単なライブラリです。ライブラリには、すべてのaSciification作業を行う4つの主要な機能があり、結果を画像、gif、またはビデオとして保存します: image.asciify() 、 image.dynamic_asciify() 、 video.asciify() 、 video.dynamic_asciify() 。
プログラムがすべきことをより詳細に制御するために、 CoreAsciifierクラス(プライマリAsciipixels関数の背後にあるクラス)とImagemagickとFFMPEGの両方のラッパー関数も利用できます。
Asciipixelsライブラリを実際に設定しているのは、動的機能です。 functions image.dynamic_asciify()およびvideo.dynamic_asciify()いくつかのパラメーターは時間とともに変化する可能性があります。ユーザーは、ハードコーディングされた値自体を渡すのではなく、フレーム番号を受信するコールブルを渡し、パラメーター値を返すことができます。以下の例では、 definitionパラメーターはフレームごとに16ユニット増加します。非常に単純なlambda表現によってモデル化されています。

注:ASCIIPIXELSは、2つの特定のコマンドラインソフトウェア、 ImageMagickとFFMPEGに依存します。あなたがcliオタクで、すでにこれらをインストールしている場合は、このガイドを進めてください。そうでない場合は、インストールセクションに移動します。
ユースケースに応じて、対応する関数を使用します。
image.asciify()画像を画像に変換します。生成されたASCIIアートは文字列として返され、オプションでTXTに保存されます。
image.dynamic_asciify()画像をGIFまたはMP4ビデオに変換します。動的パラメーターをサポートします。
video.asciify()ビデオをビデオに変換します。
video.dynamic_asciify()ビデオをビデオに変換します。動的パラメーターをサポートします。
4つすべてが最初の引数として入力ファイルのpathを持っています。残りの引数にはすべてデフォルト値があります。これらの線に沿って何かがあなたを始めるのに十分です:
import asciipixels as ap
ap . image . asciify ( 'foo.png' )これにより、 foo2.pngという名前の新しいaSciified画像が生成されます。
image.asciify()を除くすべての関数はif __name__ == '__main__'ユーザーコードのトップレベルをチェックしてください(コマンドラインでインタラクティブなPythonを使用している場合を除く)が必要であることに注意することが重要です。これは、ライブラリがマルチプロセスを使用してフレーム生成をスピードアップするためです。したがって、たとえばビデオを吸収するために、次のことを行うことができます。
import asciipixels as ap
if __name__ == '__main__' :
ap . video . asciify ( 'foo.mp4' )プレイする最も重要なパラメーターはdefinitionです。それは単に水平軸の文字の数です。すべての関数でデフォルトは100です。高く設定すると、ASCIIアートは芸術のように見えます。設定しすぎると、ASCIIのように見えます。
また、画像/ビデオの出力解像度を設定できることに留意してください。出力寸法は、デフォルトで入力寸法を概算しますが、 out_width引数でそれを変更できます。
最後に、明るい背景で暗いテキストを使用することにした場合は、Pixel-to-ASCIIマッピングを修正するために、 reverse_chars Trueに設定することを忘れないでください。
最後の例として、次のコードを使用して、「動的」セクションでBigweld GIFを作成しました。
import asciipixels as ap
if __name__ == '__main__' :
ap . image . dynamic_asciify (
'ceo.png' ,
bg_color = 255 ,
txt_color = 0 ,
definition = lambda f : f * 16 ,
fps = 2 ,
frame_count = 7 ,
out_width = 1000 ,
reverse_chars = True
)特定のプライマリ関数のパラメーター/引数の完全なリストは、そのドキュメントに記載されています。
Asciipixelsをインストールするには、端末でPIPを使用します。
Windows
pip install asciipixels
macos / linux
python3 -m pip install asciipixels
Asciipixelsには、自動的にインストールされていない2つの依存関係があります。これらは、画像操作用のImageMagickと、ビデオおよびオーディオ操作用のFFMPEGです。公式サイトから、またはHomeBrew (該当する場合)を使用してダウンロードできます。
ImageMagickをこちらにインストールしてください
FFMPEGをこちらにインストールしてください
ASCIIアートは、単にキャラクターと文字を含む画像(またはビデオ)の表現です。このアートは、画像の一部の明るさまたは輪郭のいずれかに一致するキャラクターを使用することで構成できます。このライブラリは、明るさの側面で動作します。