4

多くの人がとの技術的な違いIplImage興味を持っていることを私は知っていCvMatます。(はい、cv::Mat(*)ではありませんがCvMat。)それでは、実際的な焦点を当てて違いを明確にしましょう。

のrefcountedCvMatバージョンはありIplImageますか?CvMatラッパーだけIplImageですか?もしそうなら、なぜ彼らも発達したのCvMatですか?

私はこれらの質問をしましIplImageた。なぜなら、検索全体で最も人気があり、投稿数も最も多いと思うからです。

新しい構造の代わりにIplImageを使用することの利点は何ですか?

(*)(多くの人がc ++でも使用しているため、ここにc ++タグも配置しました。また、一部のライブラリはこれを好みIplImageます。)

4

3 に答える 3

4

Learning OpenCV 』のOpenCVプリミティブデータ型の段落を読むことをお勧めします。これら2つのデータ型の違いについては大きくて良い説明があります。

于 2012-12-09T09:16:19.767 に答える
3

あなたの質問に答える:

新しい構造の代わりにIplImageを使用することの利点は何ですか?

多分ない。それは何らかの理由で開発者によって非推奨にされました、私はあなたがまだそれをたくさん見つける理由はレガシーコードのためだと思います。構造が非推奨になっていることに気づかずに古いコードサンプルをフォローしているため、また「Learning OpenCV first edition」は、opencv関数の署名とデータ構造に関して古くなっていますが、opencvで始まる多くの人々が続いているためです。

参考までに、Learning OpenCV 2nd editionは2013年3月にリリースされる予定ですが、それについては引用しないでください;)

于 2012-12-09T15:42:43.373 に答える
3

IplImageドキュメントによると、Intel Image Processingライブラリからのものです:http: //opencv.willowgarage.com/documentation/basic_structures.html#iplimage

この質問では、CvMat構造についても説明します。これは、注目に値するかもしれません 。OpenCVのcvMatのメモリ構造は何ですか。

どちらがより有益であるかに関して:ここかそこかで、CvMatまたはIplImageさまざまな状況でわずかな速度の違いがあるかもしれませんが、それはあなたが何をしたいかに依存します。たとえば、メモリ内のマトリックス構造を共有する必要がありますか?効率的に連載したり、検索したりする必要がありますか?アプリケーションが重要です。

(理論的には、によって提供される1つの利点IplImageは、その血統により、ご指摘のとおり、一般的に既存の実装との互換性が高いことです。)

于 2012-12-09T09:23:33.797 に答える