Perlでヒートマップが書けるImager::Heatmapをリリースした

http://search.cpan.org/~kawamuray/Imager-Heatmap-0.02/lib/Imager/Heatmap.pm
https://github.com/kawamuray/p5-Imager-Heatmap

Perlでヒートマップを書く手段としては,既にCPANにあるImage::Heatmapが使えそうだけど,いくつかの理由から新たに書きました.

  1. docみたらなんか複雑
  2. PerlMagick入れるのがめんどくさい
  3. 投入予定のシステムが既にImagerを使ってたので,結果がImagerのインスタンスでgetできると便利
  4. 色合いがいまいち

仕組みとしては,n * m pixelの画像において,挿入される各点について確率密度関数を用いて周辺ピクセルの重みを加算していって,最後にその値をHSV色空間にマップする感じ.

HSV色空間の扱いとか新たな知識を得たし,高速化のためにいろいろ工夫もしたので詳しく書こうと思ったけど,もう眠たくなったのでまた今度にする.


こんな画像が生成できる:
https://raw.github.com/kawamuray/p5-Imager-Heatmap/master/t/resources/sample.png