はじめに
FlutterでOpenCvを使いたかった。
pub.devで一部のOpenCv機能が使えるLibがあるが、2023.12時点ではMatレベルで操作できるものは存在しなかった。
仕方がないので、公式SDKをDLしてdart:ffiとC++を使ってOpenCvおよびMatを操作できるようにする。
ざっくりとしたコードの依存は dart:ffi -> cpp -> OpenCvSdk となり、言語はdartとcppで完結する。
公式SDK
https://opencv.org/releases/
iOS
iOSでOpenCv
Mat受け渡しが上記そのままではだめなので、その対応方法
Android
AndroidでのSDK取り込み方法が記されている。
LinuxとWinについても言及されているが、筆者には不要なため試していない。
VsCodeが推奨されているが、AndroidStudioでも問題なく適用できた。
わかりやすい具体的な方法が記述されており、調査の手間を考えると有料分の価値はあった。
感想
先人に感謝。
FlutterでMatが簡単に使えるように、pub.devで誰か対応してくれたら助かる。
各SDKの使い方はOpenCv公式がもうちょっと親切に解説してほしい。