とある変人のお道具箱

技術系のことにについて幅広く触れていくブログです

OpenCVで特徴点抽出アルゴリズムSIFTを使えるようにする

環境

Ubuntu 18.04 LTS
OpenCV 4.1.0
Python 3.6.8
   

最初に

普通にOpenCVまたopencv-pythonをインストールした段階ではSIFTやSURFなどのアルゴリズムを使用することはできません。これはライセンス上の問題があるからです。そのためフリーでないアルゴリズムはcontribパッケージにまとめられています。contribパッケージをpipを使って追加しましょう。
   

インストール方法

ファイルをダウンロードしてからそれをビルドしてもいいのですが、めんどくさいのでpipを使ってインストールすることにします。あと、Anacondaを使っている人はそちらからインストールすることもできます。僕はAnacondaを使っていないので、そっちでインストールしたい方は他の人の記事を参考にしてください。
   

インストール

pip install opencv-python
pip install opencv-contrib-python

上のコマンドを実行しましょう。
1行目でpythonにopencvをインストールして、2行目でcontribパッケージをインストールしています。
   
※追記
上のコマンドを実行すると2019.8.13現在ではバージョン4.1.0のOpenCVがインストールされます。バージョンにこだわりがある人は

pip install opencv-python==3.4.2.16
pip install opencv-contrib-python==3.4.2.16

のようにバージョンを指定してください。