私は、コンピュータビジョンアプリケーションで良好な非結合アーキテクチャを実践しようとしています。私はネイティブのOpenCVルーチンをラップする.netライブラリ(EMGU.CV)を使用しているので、EMGUクラスを抽象化して将来それらを代用できるようにするには、C#インターフェイスを使用する必要があります。インターフェイスの後ろにカスタムライブラリを配置するC#
具体的な例は次のとおりです。EMGUで
私はImage<T,T>
クラスを公開フォアグラウンド検出器のクラスを、持っています。この呼び出しはまったくEMGU指向です。
私は自分のアプリケーションのためにIBackgroundDetectorに取り組んでいます。これはEMGUを含むさまざまなバックグラウンドディテクタをサポートしていると思われます。
は、だから私のインタフェースにメソッドの
interface IBackgroundDetector
{
SomeGeneralImageType GetCurrentBackgroundFrame(SomeGeneralImage CameraFrame);
}
にはどうすればいいのアーキテクチャを取得するには、このSomeGeneralImageType
クラスの作成について行くのですか?
実際に*別の実装を選択するまで、これを行わないでください。あなたはちょうどそれなしでそれを推測するだろう。 –