2.1を使っていて不満なのは,cxcore.h cv.hをインクルードしたときに出る警告なのです.
コンパイルするたびに次の警告が表示されると肝心のエラーが下の方にスクロールアウトされてウザくなります.
1 | #pragma message: Warning: "This is a deprecated opencv header provided for compatibility. Please include a header from a corresponding opencv module" |
cxcore.hとcv.hは,過去のしがらみのためお情けで用意しているだけ.
さっさと,然るべきヘッダーをインクルードするように改めなさいということらしいです.
じゃあ何をインクルードすべきなのかというと,ドキュメントへの記載が見当たらない.
仕方ないので面倒くさいがcxcore.とcv.hの中身を見て確認した.
cxcore.hの代わりにインクルードすべきヘッダファイル
1 | #include "opencv2/core/core_c.h" |
2 | #include "opencv2/core/core.hpp" |
cv.hの代わりにインクルードすべきヘッダファイル
1 | #include "opencv2/imgproc/imgproc_c.h" |
2 | #include "opencv2/imgproc/imgproc.hpp" |
3 | #include "opencv2/video/tracking.hpp" |
4 | #include "opencv2/features2d/features2d.hpp" |
5 | #include "opencv2/calib3d/calib3d.hpp" |
6 | #include "opencv2/objdetect/objdetect.hpp" |
イッパイあって分かりにくくなった感じがします.覚えられないのでしばらくcv.hでワーニングを我慢するかcv.hのワーニング消すかしようかなと思います.