どうもGo超初心者です。
TourOfGoを最近完了し、何か他のネタでさらに勉強しようとしましたが
これとかだと仕事!って感じがして個人的にあんまり机へ向かう気が出てこなかったので
どうせなら、物理的なものと絡ませたらやる気出るのでは?という思いのもと、
レンチキュラー画像を作ってみることにしました。
レンチキュラーとは
レンチキュラー(lenticular)とは、シート状のレンチキュラーレンズを用いて、見る角度によって絵柄が変化したり、立体感が得られたりする印刷物のことである。数cm角の小型のものから、建物の壁面に取り付けられている広告板などの大型のものまである。裸眼式の3次元ディスプレイにも用いられる。
こういうやつです。
https://www.youtube.com/watch?v=eqEoSpIldJ0
これを実現するには↓が必要です。
- レンチキュラーレンズ
- レンチキュラー用に加工された画像(紙)
レンチキュラーレンズという特殊なレンズを、それ用に加工された紙に貼るという感じです。
準備
imagemagick諸々を入れるのでミドル,goプラグイン両方とも対応。
imagemagick
$ brew install imagemagick
glide
package: lenticular
import:
- package: gopkg.in/gographics/imagick.v3/imagick/types
version: ^3.1.1
subpackages:
- imagick
$ glide install
レンチキュラーレンズ
色々サイトを覗いた結果、一番手頃だったのでここだったので購入(1週間くらいで到着しました)
レンチ屋さんお試しセット
ネットで買う前に文具店やハンズで探してみましたがありませんでした。物理店舗では無いのかな
ソースコード
実行
今回はこちらの画像でgopherくんとリアルgopherくんが切り替わるやつを作ろうと思います。
gopher.png
# 50lpi, 300ppiを指定
$ go run main.go gopher.png gopher_real.png gopher_out.jpg 50 300
結果
なんだかそれっぽい画像に....!
レンズをはめてみた
goの勉強でレンチキュラーというものを作りました。
— junpayment (@junpayment) 2017年12月20日
明らかに失敗。 pic.twitter.com/9Z3B4gN0Rn
原因
おそらくレンズを写真に貼るときに斜めにずれた為だと思います。
リアルgopherくんは、シマシマながらちゃんと映ってたので、写真生成自体までは間違ってない(はず)
今度頑張ろう。
以上です。