手元にPepperが無いときやsshでいちいち確認するのが面倒な人のためのメモです。自分用の備忘録を兼ねています。
なんか偉そうなタイトルですが、私が何をしたかというとPepperにsshで接続して以下のコマンドを叩いただけです。
ls /usr/lib/Python2.7/site-packages/
上記のディレクトリはPythonの追加モジュールのインストール先になるディレクトリです。一つディレクトリを上にさかのぼって /usr/lib/Python2.7/ ディレクトリを調べるとPythonの標準ライブラリを調べることも可能です。
結果を以下に示します。明らかにPepper、というかNAOqi Framework専用に見えるものとそれ以外のものは区別しているほか、egg-infoみたいなライブラリそのものではない項目も適当に省いています。
NAOqi Frameworkっぽいもの
albehavior.py allog.py allog.pyc almath.py almathinternal.py almathswig.py ialbehavior.py inaoqi.py naoqi.py proxynao qi
標準的っぽいもの
Crypto PIL WebappConfig arcsdk cairo chardet curl cv.py cv2.so daemon dateutil dbus dbus_bindings.py django dns easy_install.py expressiveness.py flup ftdi1.py gi glib gobject gst-0.10 gstoption.so gtk-2.0 liveliness lockfile motion.py netaddr numpy pkg_resources.py pycurl.so pygst.py pygtk.py requests semanticminer.py serial setuptools simplejson site.py telepathy tornadio2 tornado vision_definitions.py vobject xmpp
こんなとこですね。いちおう免責を書いておきますが、使ったのはアトリエ秋葉原の共有Pepperなので出荷状態のと構成が異なる可能性があります。情報は自己責任でご利用下さい。
にしても…結構たくさん入ってますねー。個人的に入ってて嬉しいと思ったものを挙げておきます。
「Pepperには表情認識機能があるんだからOpenCV入ってるのは当たり前」と思うかもしれませんが、C++用の生OpenCVだけじゃなくてPythonラッパーも完備されているのはありがたいですね。ともかく上記のライブラリを上手く組み合わせると計算機としてのPepperの底力も引き出せそうな予感がしてきます。使い道を考えるのは貴方自身です!(丸投げ
…ちなみに。今回の記事で"lsコマンド"とか言ってる時点でお察しだと思いますが、pipは入ってません。ナゼ入ってないかというと、憶測ですがsite-packagesの変更が非推奨事項だからだと推察できます。Pepperのアプリケーションは可搬性が高くないといけないので、site-packagesの構成をいじってようやく動くようなソフトなんてSoftbank Roboticsからすれば避けてほしいものでしょう多分。例外は研究室等で限られた環境のもと使う場合くらいでしょうか。
ともかく、基本的にPepperの開発はChoregrapheとNAOqi APIと上記のPythonモジュールをいかにうまく使うか、ということに集約されていきます。
もし「それでも私は外部PythonライブラリをPepperアプリで使いたい!」という方が居ましたら、具体的な事例としてPepperをTwitterと連動させる方法を参考にするのが良いと思います。この記事ではTwitterの認証用外部ライブラリをアプリケーションの一部として埋め込んで使う方法が紹介されており、これと同じようなやり方をすればsite-packagesを変更しなくても好きなモジュールを組み込んで使う事ができます。