0
0

More than 1 year has passed since last update.

ubuntuにGoCVのインストールで試行錯誤した話

Last updated at Posted at 2023-04-26

Ubuntu 22.04 に GoCV(OpenCV)をインストールするときのあれこれ

golangでopencvを使いたくなったがその際のインストール関係で色々エラーが起きたので記録。

環境

Ubuntu 22.04LTS
go version go1.20.3 linux/amd64

goとopencvについて

opencvは画像、動画処理のソフトで公式ではgolangをサポートしていません。pythonでよく使われています。
しかしgolangにはGoCVというgolangでopencvを使えるようにしたラッパーがあるのでopencvとあわせてインストールすればgolangでもopencvを使えるようになります。ただしubuntuのせいなのか色々エラーが起こりまくったので記録します。

opencvのインストール

シェルスクリプトからのインストールがいくつかの記事で紹介されているんですがうまく行きませんでした。
ということで次の記事を参考にソースからビルドしていきます。一応やっていることはシェルスクリプトの実行とほとんど変わらないはず。
https://toolatescrap.hatenablog.com/entry/2022/11/29/003848

必要なパッケージをインストール。
sudo apt install -y cmake g++ wget unzip

opencvのサイトからsourceをダウンロードして解凍。

適当にビルド用のディレクトリを作成、移動。
mkdir build
cd build

cmake用の設定
cmake ../opencv-4.6.0

cmakeでビルド
cmake --build ./
数十分はかかります。

インストール
sudo make install

GoCVのインストール

基本的には公式にしたがって行う。
パッケージのインストール

go install gocv.io/x/gocv@latest

公式とか多くの記事ではgo get が使われていますがgoのバージョンアップに伴いgo installに変更になりました。それに伴って@latestをつけるようにしましょう。go installでは@のあとでバージョンの指定が必須です。latestにすると最新のものになります。とりあえずバージョン調べるのも面倒なので@latestで。

パッケージに移動。
cd $GOPATH/src/gocv.io/x/gocv
これでうまく行けばいいんですがgoのバージョンによって位置が違うので
sudo find -name gocv
とかで探しましょう。私の場合は
cd go/pkg/mod/gocv.io/x/gocv@v0.32.1
でした。

ここで
make install
するとおそらくエラーが出ます。原因はよくわからなかったのですがこれを参照してMakefileの"libdc1394-22-dev"を"libdc1394-dev"に置換します。ubuntuとの対応の問題ですかね。置換したらmake installでインストールされるはず。

gocv version:[]
opencv lib version:[]
とでれば成功。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0