まるで一種の絵画の技法のような画像を作成できるGoで作られた画像エフェクトライブラリ「primitive」の紹介です。
画像エフェクトには、”ぼかしを与えるblur”、”精度を変えるBrightness”、"透明度を調節するOpacity" ... その他にも画像を鉛筆で描いた風に出来るエフェクトも存在します。
そのような多種多様の画像エフェクトですが、コマンド一発で画像をアーティスティックに出来るライブラリが「primitive」です。
primitiveを使うと画像に下記のようなエフェクトを掛けることができます。

ということで、実際にprimitiveを導入して使ってみました!
primitiveのインストールはコマンドライン上から"go get
"コマンドを使ってインストールします。
( primitiveはGO言語で作られているので、事前にGOのインストールが必要になります )
# primitiveのインストール
go get -u github.com/fogleman/primitive
# インストールが完了すると'primitive'コマンドが使えるようになります
$ primitive
ERROR: input argument required
ERROR: output argument required
ERROR: number argument required
Usage: primitive [OPTIONS] -i input -o output -n shape_count
-a int
alpha value (default 128)
-i string
input image path
-m int
0=combo 1=triangle 2=rect 3=ellipse 4=circle 5=rotatedrect (default 1)
-n int
number of primitives
-o string
output image path
-r int
resize large input images to this size (default 256)
-s int
output image size (default 1024)
-v verbose
-vv
very verbose
primitiveはコマンドライン上で起動するライブラリなので、ターミナル上で使用します。
対応している画像形式は"png","svg","gif"の三種類。
( jpeg形式の読み込みには対応しています )
primitiveコマンドにはオプションが用意されており、基本的に使用するのが、
「'-i
'オプション(読み込む画像)」、「'-o
'オプション(作成された画像名)」、「'-n'
オプション (シャープ値 *輪郭強調の調節)」、その3種類です。
# 実際に使用する際のコマンド例
primitive -i input.jpg -o output.png -n 300
そして、primitiveを使って実際にエフェクトを適応した画像が下記になります。
-nオプション
"の値で画像の出来が大きく変わります 
svg形式のアウトプットにも対応しているので、作成した画像を編集ソフトを使って、更に編集することも問題なく可能です。

* 用意されているオプション一覧
オプション | 初期値 | 説明 |
---|---|---|
-i | n/a | インプットファイル名 |
-o | n/a | アウトプットするファイル名 |
-n | n/a | シャープ値 (輪郭の強調) |
-m | 1 | mode: 0=conbo, 1=triangle, 2=rect, 3=ellipse, 4=circle, 5=rotatedrect |
-r | 256 | 画像エフェクト前のリサイズ (通常はエフェクトが終わってからサイズ変更がされる仕様のみたいです) |
-s | 1024 | アウトプットする画像のサイズ (*デフォルトでは1024*の画像が作成されます) |
-a | 128 | 色のアルファ値 |
-v | off | このオプションを使用するとエフェクトを実行している際の進歩状況が表示されます |
以上がprimitiveの紹介でした。
primitiveを使えば、特徴のある画像に仕上げることが簡単に出来そうです。
記事毎に画像を作成する必要があるブロッガーさんなんかにはオススメ出来るライブラリなので、ゼヒ×2チェックしてみてください!
GitHub: fogleman/primitive