OpenCV3 プログラムを OpenCV4 でコンパイルするときに発生するいくつかの問題の解決策

前に書く

自社テスト環境:Ubuntu 20.04.5、OpenCV4.2.0

1. エラー報告CV_INTER_LINEAR was not declared in this scope

1. 問題の説明

コンパイルのために OpenCV3 プログラムを OpenCV4 に転送したところ、次のエラーが発生しました。

error: ‘CV_INTER_LINEAR’ was not declared in this scope

2. 解決策

この問題の主な理由は、OpenCV3 と OpenCV4 の一部の変数が異なることです。OpenCV4 は部分的に CV_ prefix をキャンセルします
。解決策は非常に簡単で、エラーを報告したファイルを見つけて、エラーを報告した変数を OpenCV4 の変数に適応するように変更するだけです。

CV_INTER_LINEAR  修改为 cv::INTER_LINEAR

或者,添加头文件 
#include<opencv2/imgproc/imgproc_c.h>

その後、再度コンパイルするとパスします。

2. エラーを報告するCV_RANSAC was not declared in this scope

1. 問題の説明

error: ‘CV_RANSAC’ was not declared in this scope

2. 解決策

程序中的 CV_RANSAC  修改为 cv::RANSAC

その後、再度コンパイルするとパスします。

3. エラーを報告するCV_WINDOW_AUTOSIZE was not declared in this scope

1. 問題の説明

error: ‘CV_WINDOW_AUTOSIZE’ was not declared in this scope

2. 解決策

CV_WINDOW_AUTOSIZE  修改为 cv::WINDOW_AUTOSIZE

或者,添加头文件 
#include <opencv2/highgui/highgui_c.h>

その後、再度コンパイルするとパスします。

参考リンク

[1] xlsemmmmmm. opencv および opencv3->opencv4 バージョン切り替えの一般的な使用法 [EB/OL]. https://blog.csdn.net/weixin_43848456/article/details/123380782、2022-07-10/2022-11- 28.

4. エラーを報告するCV_GRAY2RGB was not declared in this scope

1. 問題の説明

error: ‘CV_GRAY2RGB’ was not declared in this scope

2. 解決策

ヘッダーファイルを追加

#include <opencv2/imgproc/types_c.h>

その後、再度コンパイルするとパスします。

参考リンク

[1] 古い文化の砂漠. opencv4 [EB/OL] の未定義の識別子 CV_BGR2GRAY および CV_CAP_PROP_FRAME_COUNT に関する問題 https://blog.csdn.net/qq_48176859/article/details/109735701、2020-11-17/20222-12 - 03.

5. エラーを報告するfatal error: opencv/cv.h: No such file or directory

1. 問題の説明

コンパイル エラー:
opencv/cv.h ファイルが見つかりません

fatal error: opencv/cv.h: No such file or directory

2. 解決策

エラー ファイルに含まれるヘッダー ファイルを変更します。

#include <opencv/cv.h>
修改为:
#include <opencv2/imgproc/types_c.h>

その後、再度コンパイルするとパスします。

6. エラーを報告するfatal error: opencv/highgui.h: No such file or directory

1. 問題の説明

コンパイルエラー:

fatal error: opencv/highgui.h: No such file or directory

2. 解決策

エラー ファイルに含まれるヘッダー ファイルを変更します。

#include <opencv/highgui.h>
修改为:
#include <opencv2/highgui/highgui_c.h>

その後、再度コンパイルするとパスします。

参考リンク

[1] xlsemmmmmm. opencv および opencv3->opencv4 バージョン切り替えの一般的な使用法 [EB/OL]. https://blog.csdn.net/weixin_43848456/article/details/123380782、2022-07-10/2022-11- 28.

7. エラーを報告するerror: ‘CV_LOAD_IMAGE_GRAYSCALE’ was not declared in this scope

1. 問題の説明

コンパイルエラー:

error: ‘CV_LOAD_IMAGE_GRAYSCALE’ was not declared in this scope

2. 解決策

エラー ファイルに含まれるヘッダー ファイルを変更します。

CV_LOAD_IMAGE_GRAYSCALE
修改为:
cv::IMREAD_GRAYSCALE

その後、再度コンパイルするとパスします。

参考リンク

[1] 私は幸せな小さなパーティーです。「CV_LOAD_IMAGE_GRAYSCALE」はこのスコープ [EB/OL] で宣言されていませんでした。https://blog.csdn.net/guanjing_dream/article/details/124960771、2022-05-25/ 2022 -12-05。

8. エラーを報告するerror: ‘CV_LOAD_IMAGE_COLOR’ was not declared in this scope

1. 問題の説明

コンパイルエラー:

error: ‘CV_LOAD_IMAGE_COLOR’ was not declared in this scope

2. 解決策

エラー ファイルに含まれるヘッダー ファイルを変更します。

CV_LOAD_IMAGE_COLOR
修改为:
cv::IMREAD_COLOR

その後、再度コンパイルするとパスします。

参考リンク

[1] 私は幸せな小さなパーティーです。「CV_LOAD_IMAGE_GRAYSCALE」はこのスコープ [EB/OL] で宣言されていませんでした。https://blog.csdn.net/guanjing_dream/article/details/124960771、2022-05-25/ 2022 -12-05。

おすすめ

転載: blog.csdn.net/qq_39779233/article/details/128081716