Python 3.6でOpenCVをインストールする方法

Python 3.6でOpenCVをインストールすると以下のようなエラーが出ます*1

$ conda install -c https://conda.binstar.org/menpo opencv3
Fetching package metadata .............
Solving package specifications: .


UnsatisfiableError: The following specifications were found to be in conflict:
  - opencv -> python 2.7*
  - python 3.6*
Use "conda info <package>" to see the dependencies for each package.

どうやらOpenCVpython 3.6にまだ対応していないようです。
ひとつ前のバージョンの仮想環境を作ってそこにopencvをいれていきます。

以下のサイトを参考にしました。
howtodevelop.eu


condaを用いてひとつ前のpython仮想環境を作ります。

$ conda create -yn opencvtest python=3.5.2
$ source activate opencvtest

上記linux or macの場合で、windowsの場合はactivate opencvtestを使用してください。

opencv3をインストールします。

$ conda install -c https://conda.binstar.org/menpo opencv3

入りました。

$ conda list
opencv3   3.1.0   py27_0    https://conda.binstar.org/menpo

*1:2017年2月現在

エディタ戦争のお話

この記事は、mast Advent Calendar 2016 の18日目の記事です。
www.adventar.org

Adventerのほうの説明では、高専とmastを絡めて書けたらいいなと言っていたんですが、すでに高専の説明の記事が投稿されていたので高専について気になる方はそちらをご覧ください。
じょんじょん三段活用 — 高専ってどんなとこ?


改めまして、mast13に三年次編入してきたはしづめといいます。
今回は、高専にあってmastにたぶんない文化であるエディタ戦争について書こうと思います

エディタ戦争

世界には二つの大きな派閥があります。
それはemacs派とvim派です。
プログラマーたちは日夜、どのエディタを使うべきかを主張し戦っています。

私はプログラミングを始めた当初からemacs派でして、高専時代はvim派のクラスメイトとよく血を血で洗うような戦いをしてきました。
しかし、mastに入ってからはエディタ派閥に遭遇せずエディタ戦争をすることはありませんでした。mastに入り今までのような戦いができなくなり少し寂しい気分です。
そこで今回はみなさんが今すぐにでもエディタ戦争始められるように簡単な説明をしたいと思います!

それぞれの言い分

emacsvimはそれぞれ昔からあるエディタです。それぞれの派閥がどんな言い分を言っているのかまとめてみます。

emacs

  • emacsはモードをいちいち変えなくていい!

vimは入力モードとコマンドモードが存在し、iキーやescキーでいちいち変えなければいけない。emacsならモードは存在せず入力もコマンドもそのまま入力できる。

  • Lispで拡張できる!

emacsにはemacs lispというものが存在し、自由に拡張することができ、webブラウジングメーラーtwitterなどさまざまなアプリがemacs上で実装されている。

emacs上級者はパソコンを起動したらまずemacsを起動するらしい。そしてemacs lispで作られたアプリを使い生活をする。emacsはもはやOSだ!

vim

  • emacsはただの小指の筋トレだ!

emacsはコマンドを打つときはctrlを打つ必要があるため、小指の筋トレをしてるとよく言われる。そのとおり、emacsを速く使えるようにするため日々小指の筋トレをしてます!

  • UNIXには最初から入っている!

unixには最初からviが入っているからすぐに使えるという。とりあえず、

yum install emacs

と打つことをお勧めする。

  • emacsより軽量だ!

vimはシンプルなつくりなので起動も早い。改造されつくしemacsは起動するのに一日かかるらしい。

emacsvimを使うと本当に便利なこと

mastはエディタ戦争はないにしろ皆が使っているエディタはほとんどがSublime TextかAtomのような気がします。この二つもモダンで使いやすいのかもしれませんが、emacsvimを使うと本当に便利なことがあるんです。

それはキーバインドです。

キーバインドはショートカットのようなものでエディタのさまざまな機能を呼び出すキーの組み合わせのことを言います。emacsvimキーバインドはほぼすべてホームポジションから移動しなくて済むようにできています。
例えば、カーソル位置を移動するために十字キーを操作する、文字を消すためにbackspaceキーを押すなどの行為はホームポジションから指を移動させなければいけません。これはタイピングが遅くなり、生産性が下がってしまいます。
しかし、例えばemacsならC-f,C-b,C-p,C-n*1十字キーC-hでbackspaceキーを使用することができます。

最初はなれないと思いますが、なれるととても使いやすくなるのでmastのみなさんにはぜひ試してほしいです。

終わりに

まあ、どのエディタを使うのもいいかと思うんですけど、ぜひぜひこだわりを持ってエディタを使ってほしいなということです。エディタの熱いトークで盛り上がれるぐらいには。

そして、

alias vim='emacs'

と打てば世界が平和になりますよ

*1:Cはctrlキーのこと