OpenCVで画像処理を行うのに、C#でOpenCvSharpをよく用いています。仕事でC#を使うことが多かったのと、画像処理の条件出し(フロー検討やその各画像処理の閾値設定)を行う上でGUIがあると非常に便利で分かりやすかったからです。ただ、OpenCVは今でもC++で書いて、CUI環境で実行することが多いように思います(主観?)。ネット上の参考記事もC/C++関連が圧倒的に多いですね。 画像処理フローがすでに分かっている場合ならCUIアプリで良いと思いますが、条件出しをコード上でパラメータを微調整しながら行うのは非常に大変ですね。OpenCvSharpを用いてC#でコードを書くのも手ですが、やはりネット上で情報の多いC++で攻めて行くのが良いのではないかと最近痛感しています。C++で書いておけば、仮にOSがLinuxになろうが、OSXになろうが、コードをそのまま転用ができますからね。