RaspberryPi3でMathematicaを動かしてみた


2019年 04月 01日

Raspberry Piに安価なLCDを繋いで表示テストで紹介した画像のLCD部分にこんなことを書いておいたが、気がついただろうか?

Mathematica-LCD-ZeroYen.png

「Raspberry Pi ノ Mathematica ハ タダ」と表示していたのだ。

Mathematicaは数式処理システムとして良く知られているが、使いたくても高くて購入を躊躇している人、会社が多いだろう。

しかし、Raspberry Pi 用のMathematicaは、ここに書いているように無料なのだ。

Raspberry Pi 上で動く特別な機能制約版があって、ほとんど何もできないのか、あるいは太っ腹で、特別な制限は何もなく、ただただRaspberry Pi の能力上の制約でできることが限られているのだろうか。そんなことを調べてみようと思う。

数式処理システムMathematicaで使われているプログラミング言語がWolfram Languageであり、考案者がStephen Wolfram、つまり考案者の名前がそのまま言語名になっているのである。

Raspberry Pi 向けのページも用意されているので、困ったときにはそこを見れば、かなり解決する。
何しろ、驚くほどのドキュメントが完備されている。

Mathematica-RaspberryPi-home.png

Raspberry Pi のプログラミングのメニューの中には、ちゃんとMathematicaがあり、それを選ぶだけで起動し、以下のような表示が出てくる。

Mathematica-BootImage0.png右のこのウィンドウから、ドキュメントなどへ行ける。
下側になっているのが、Mathematicaのnotebookで、ここに入力すると、出力結果も出てきて、そのまま記録できる。

さて、とりあえずどんなことが出来るか、1つだけ紹介しよう。

前回紹介したページの車の画像をコピーし、notebookにペーストし、その画像(Image)をcarとした。

SHIFT+Returnで実行してくれ、結果、つまり元のサイズの画像で表示される。Mathematica-Image0-1.pngこの後は、画像をコピペしなくても、代わりにcarと書けば、この画像のことになる。

Mathematica-Image0-2.png

これは、関数EdgeDetectの引数に画像carを与えた結果で、エッジ検出が行われているのが分かる。

Mathematica-Image0-3.png

もうちょっと凝った例として、Gaussianフィルタを適用してみた。

いちいち関数を紹介していると切りがないのでやめるが、Imageの各種デモのページが用意されているのでどんなことが出来るのかだいたい分かると思う。