その他MochizukiImageJとOpenCVの比較ツイートシェアGoogle+はてブPocketOpenCVとImageJ、どちらかが完全というわけではありません。適材適所に使い分けできるのがベストです。」ではオープンソースであるImageJとOpenCVが拡張性の面で優れていると書きました。実際の研究などではどちらを使うべきでしょうか。どちらか一方のスキルのみが高いのであれば、慣れた方を使うのが良いとは思いますが、どちらも同じくらいに使えるのであれば、それぞれ得意、不得意があるので、より適した方を選ぶべきです。結論から言いますと、全自動の処理であればOpenCV、手動の処理がある程度求められるのであればImageJが適当です。1.全自動の解析ならOpenCVImageJにもマクロやバッチ処理など自動処理を行うことができる機能がありますが、画像などから抽出したデータをさらに加工して、グラフに出力するなどの処理は、より拡張性の高いOpenCVを用いたプログラムのほうが簡単に書けます。C++を用いたOpenCVプログラムが高速であるのも全自動解析に適しています。高解像度の動画をImageJで解析するのには限界があります。2.ImageJのGUIは逐次的な処理には便利ImageJはマウスでの操作が主で、初心者にも直感的に使いやすいツールになっています。対して、OpenCVプログラムが不得意とするのが、手動の処理です。根の画像について言うと、根を手動でなぞって、その長さを表示するといったプログラムはImageJのグラフィカルユーザーインターフェース(GUI)の得意とするところです。OpenCVでもそのようなことはできますが、コードを余分に書かなければなりません。手動の作業が必要な場合には、手作業部分の時間がかかるため、プログラム自体の速度は問題になりにくく、ImageJの速度でも十分な場合が多いと思われます。3.自分で使うのか、他人に使ってもらうのかImageJは、環境の構築が簡単であるため、書いたコードを他の人が使うのは比較的簡単です。対してOpenCVは環境構築に若干手間がかかるため、他の人にそのままコードを渡してもうまく使えるかというと難しいものがあります。これも人によるとは思いますが、カスタマイズ性はOpenCVの方が上だと思っており、ImageJではできず、OpenCVではできることがいくつもあります。ゆえに自分で使うのであればOpenCVのデメリットを上回るメリットがあると考えることもできます。その他ツイートシェアはてブGoogle+PocketfeedlyC++でCSVファイルを読み込む楕円の周長の計算(区分求積法)RECOMMENDこちらの記事も人気です。:ピクシーダストテクノロジーズ株式会社で主に画像処理の研究開発をやっています。