summarylogtreecommitdiffstats
path: root/caffe2-git-opencv4-fix.patch
blob: 1b88e26ce6b11e165bf5f7aaa9b1a4ce0a0871ad (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
commit 431bba7ccb765830fdbd951264c8dc9dcab4d145
Author: Daniel Bermond <danielbermond@yahoo.com>
Date:   Sun Nov 25 19:05:26 2018 +0000

    [caffe2] Fix build with OpenCV 4.0
    
    Fixes #14355

diff --git a/caffe2/video/optical_flow.cc b/caffe2/video/optical_flow.cc
index 4855b2c0a..8d343042f 100644
--- a/caffe2/video/optical_flow.cc
+++ b/caffe2/video/optical_flow.cc
@@ -7,7 +7,11 @@ void OpticalFlowExtractor(
     const cv::Mat& curr_gray,
     const int flow_alg_type,
     cv::Mat& flow) {
+#if CV_MAJOR_VERSION >= 4
+  cv::Ptr<cv::DISOpticalFlow> tvl1 = cv::DISOpticalFlow::create();
+#else
   cv::Ptr<cv::DualTVL1OpticalFlow> tvl1 = cv::DualTVL1OpticalFlow::create();
+#endif
   switch (flow_alg_type) {
     case FLowAlgType::FarnebackOpticalFlow:
       cv::calcOpticalFlowFarneback(
diff --git a/cmake/Dependencies.cmake b/cmake/Dependencies.cmake
index 01e35947e..3014c2d9a 100644
--- a/cmake/Dependencies.cmake
+++ b/cmake/Dependencies.cmake
@@ -430,11 +430,15 @@ endif()
 
 # ---[ OpenCV
 if(USE_OPENCV)
-  # OpenCV 3
-  find_package(OpenCV 3 QUIET COMPONENTS core highgui imgproc imgcodecs videoio video)
+  # OpenCV 4
+  find_package(OpenCV 4 QUIET COMPONENTS core highgui imgproc imgcodecs optflow videoio video)
   if(NOT OpenCV_FOUND)
-    # OpenCV 2
-    find_package(OpenCV QUIET COMPONENTS core highgui imgproc)
+    # OpenCV 3
+    find_package(OpenCV 3 QUIET COMPONENTS core highgui imgproc imgcodecs videoio video)
+    if(NOT OpenCV_FOUND)
+      # OpenCV 2
+      find_package(OpenCV QUIET COMPONENTS core highgui imgproc)
+    endif()
   endif()
   if(OpenCV_FOUND)
     include_directories(SYSTEM ${OpenCV_INCLUDE_DIRS})