見出し画像

何でも「LEGO®」にできるRのbrickrがスゴイ

面白いRのパッケージを見つけました。

↓のように絵や写真を、LEGO風に加工してくれるRのパッケージです。

めっちゃ面白い。

こんな面白いの、どんな人が作るんだろうと調べると、LEGO社のデータサイエンティストの方が作成された、とのこと。

coolですね~。こういうこと出来るようになりたいものです。

どんなことが出来るか

こちらのgithubを見るに、

1、写真・絵を「LEGO風」に出来る

図1-min (1)

2、それを3Dに出来る

図2-min (1)

3、工程を段階別に見られる

図3-min

4、どんなブロックを何個使ってるか見られる

図4-min

好きな写真や画像に、こんなことが出来ます。

楽しい。男心をくすぐります。幼いとき、LEGOを買ってもらえなかったら私としては、感涙ものですわ。

さらに、こんなことも出来るみたい

一つ一つブロックを作って、さらに組み上げることも出来るようです。

凄い人は、↓こんなのを作っておられます。

本noteでは、ここまで触れてませんが、また遊んでみようと思います^-^

やり方の解説

ってことで、このパッケージを使って、遊んでみた

ここから下は↑のnoteの解説です。

画像22

こちらを見て理解できる方は買うのはもったいないので、吉野家で牛丼でも買ってください🐮

また、なるべくRを使用したことが無い方でも、わかるような説明に努めましたが、多少は使用経験がないとわかりづらいかもしれません。

楽しんでいただけたら幸いです。

1、RとRstudioの準備

RとRstudioをお使いのパソコンにインストールしてください。インストールについては、こちらを参考に。

※Anacondaにも入ってますが、既存のライブラリと干渉しあってうまくいかないことがあったので、直でインストールすることがおすすめです。

---✂---

また、Rstudioをこれまで、あまり使用したことが無い人は↓にそって一通り触ってみると早く慣れることが出来るます。

---✂---

2、LEGO化する画像(イラスト・写真)の準備

↑のnoteでは、jpg形式とpng形式の画像を使用しました。サンプルで使える画像をこちらにアップしておきます。

※その他の形式も出来るようですが、ここでは割愛します。

画像5

画像22

画像7

もしくはコチラや、↓のマガジンからお好きなのをどうぞ。

3、ディレクトリの設定

Rstudioを開いてください。念のため、作業するためのディレクトリ(フォルダ)を新しく作成します。

図14

図15

図16

適当にディレクトリ名(Directory name:)をつけて「Create Project」します。

図18

すると↑のようにRstudioが新しく立ち上がりますので、↑の緑枠を押して、4つの画面にしてください。

図18

こんな感じの4つの画面になってたらOKです。

また、Directory nameに入れた名前で、新しいフォルダが出来ているはずなので、2で用意した「LEGO化したい写真や絵」も同じフォルダに入れておきましょう。

4、パッケージのインストール

Rstudio内の左上(Source)の画面に、以下をコピペして、パッケージをインストールします。

install.packages("brickr")
install.packages("remotes")
remotes::install_github("ryantimpe/brickr", force = TRUE)

#もし、pngが必要と出た際は、こちらをインストール
#install.packages("png")

↑をコピペした後は、「Ctrl+Enter」で一行ずつ実行していって、インストールしていきましょう。

図19

5、LEGO化する

ってことで、ここからが楽しいところです。

libraryでパッケージを呼び出します。

#---パッケージの読み込み---

library(brickr)
#library(png)

画像の読み込み
※元の画像がpng形式の場合とjpeg形式の場合で分けておきます

#---画像の読み込み---

#LEGO化したい画像のファイル名を入れる。拡張子は不要。
file_name = "basquiat"

#元の画像ファイルがpng形式のときはこちらを実行
lego = png::readPNG(paste0(file_name,".png"))

#元の画像ファイルがjpeg形式のときはこちらを実行
lego = jpeg::readJPEG(paste0(file_name,".jpg"))

Let's LEGO!!

#---LEGO化---
lego %>% 
 image_to_mosaic(30,#ここの値でこまかくしたり、あらくしたりできる
                 brightness = 1#明るさの設定
 ) %>% 
 build_mosaic()

第一引数の"30"になっているところを、大きくすればさらに細かく、小さくすればさらに荒くなります。

図8-min

作った画像は「Export」から保存できます

図9-min

3Dにしてみよう

ここから先は

1,411字 / 6画像
この記事のみ ¥ 150

貴重なお時間で読んでいただいてありがとうございます。 感謝の気持ちで、いっPython💕