GithubHelp home page GithubHelp logo

gpu_flow's People

Contributors

feichtenhofer avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

gpu_flow's Issues

Building with latest version of Cuda and OpenCv

Hello,

Have anyone build successfully this repo? it keeps giving me issues when building

Trial 1:
Using Opencv3.4 (latest version to date) gave me an issue regarding the "gpu.h" library, and seems I cannot go with this version as there is not a branch or another code version using this opencv version

Trial 2:
Using Opencv2.4. Well I have cuda 9, so it seems that this version of opencv does not compile with this version of cuda. I also tried to copy the findcuda and detectopencv files from latest version of Opencv, and I had also tried to modify some lines in those files, but all these tricks did not make it work.

So before going further and installing another cuda version and give another try, have anyone tried to build this successfully? and what version of opencv and cuda did you have?

Thanks in advance,
Regards,
Bassel Safwat

get erro when run make

Here is the log:

[ 33%] Automatic moc for target compute_flow
[ 33%] Built target compute_flow_automoc
Scanning dependencies of target compute_flow
[ 66%] Building CXX object CMakeFiles/compute_flow.dir/compute_flow.o
/home/mzy/zero-shot4video/gpu_flow/compute_flow.cpp: In function ‘int main(int, char**)’:
/home/mzy/zero-shot4video/gpu_flow/compute_flow.cpp:263:11: warning: unused variable ‘fx’ [-Wunused-variable]
FILE fx = fopen(outfile.c_str(),"wb");
^
/home/mzy/zero-shot4video/gpu_flow/compute_flow.cpp:282:44: warning: variable ‘width_out’ set but not used [-Wunused-but-set-variable]
int nframes = 0, width = 0, height = 0, width_out = 0, height_out = 0;
^
/home/mzy/zero-shot4video/gpu_flow/compute_flow.cpp:282:59: warning: variable ‘height_out’ set but not used [-Wunused-but-set-variable]
int nframes = 0, width = 0, height = 0, width_out = 0, height_out = 0;
^
/home/mzy/zero-shot4video/gpu_flow/compute_flow.cpp: In function ‘void cv::DefaultDeleter::operator()(Y
) const [with Y = cv::flann::KDTreeIndexParams]’:
/home/mzy/zero-shot4video/gpu_flow/compute_flow.cpp:473:1: note: file /home/mzy/zero-shot4video/gpu_flow/build/CMakeFiles/compute_flow.dir/compute_flow.gcda not found, execution counts estimated
}
^
[100%] Building CXX object CMakeFiles/compute_flow.dir/compute_flow_automoc.o
Linking CXX executable compute_flow
CMakeFiles/compute_flow.dir/compute_flow.o: In function ~GpuMat': /usr/local/include/opencv2/core/gpumat.hpp:374: undefined reference to cv::gpu::GpuMat::release()'
/usr/local/include/opencv2/core/gpumat.hpp:374: undefined reference to cv::gpu::GpuMat::release()' /usr/local/include/opencv2/core/gpumat.hpp:374: undefined reference to cv::gpu::GpuMat::release()'
/usr/local/include/opencv2/core/gpumat.hpp:374: undefined reference to cv::gpu::GpuMat::release()' /usr/local/include/opencv2/core/gpumat.hpp:374: undefined reference to cv::gpu::GpuMat::release()'
CMakeFiles/compute_flow.dir/compute_flow.o:/usr/local/include/opencv2/core/gpumat.hpp:374: more undefined references to cv::gpu::GpuMat::release()' follow CMakeFiles/compute_flow.dir/compute_flow.o: In function main':
/home/mzy/zero-shot4video/gpu_flow/compute_flow.cpp:169: undefined reference to cv::gpu::setDevice(int)' /home/mzy/zero-shot4video/gpu_flow/compute_flow.cpp:173: undefined reference to cv::gpu::getDevice()'
/home/mzy/zero-shot4video/gpu_flow/compute_flow.cpp:173: undefined reference to cv::gpu::printShortCudaDeviceInfo(int)' /home/mzy/zero-shot4video/gpu_flow/compute_flow.cpp:177: undefined reference to cv::gpu::OpticalFlowDual_TVL1_GPU::OpticalFlowDual_TVL1_GPU()'
/home/mzy/zero-shot4video/gpu_flow/compute_flow.cpp:352: undefined reference to cv::gpu::GpuMat::upload(cv::Mat const&)' /home/mzy/zero-shot4video/gpu_flow/compute_flow.cpp:353: undefined reference to cv::gpu::GpuMat::upload(cv::Mat const&)'
/home/mzy/zero-shot4video/gpu_flow/compute_flow.cpp:354: undefined reference to cv::gpu::OpticalFlowDual_TVL1_GPU::operator()(cv::gpu::GpuMat const&, cv::gpu::GpuMat const&, cv::gpu::GpuMat&, cv::gpu::GpuMat&)' /home/mzy/zero-shot4video/gpu_flow/compute_flow.cpp:357: undefined reference to cv::gpu::GpuMat::download(cv::Mat&) const'
/home/mzy/zero-shot4video/gpu_flow/compute_flow.cpp:358: undefined reference to cv::gpu::GpuMat::download(cv::Mat&) const' /home/mzy/zero-shot4video/gpu_flow/compute_flow.cpp:348: undefined reference to cv::gpu::GpuMat::upload(cv::Mat const&)'
/home/mzy/zero-shot4video/gpu_flow/compute_flow.cpp:349: undefined reference to cv::gpu::GpuMat::upload(cv::Mat const&)' CMakeFiles/compute_flow.dir/compute_flow.o: In function main':
/usr/local/include/opencv2/gpu/gpu.hpp:1742: undefined reference to cv::gpu::Stream::Null()' CMakeFiles/compute_flow.dir/compute_flow.o: In function main':
/home/mzy/zero-shot4video/gpu_flow/compute_flow.cpp:350: undefined reference to cv::gpu::BroxOpticalFlow::operator()(cv::gpu::GpuMat const&, cv::gpu::GpuMat const&, cv::gpu::GpuMat&, cv::gpu::GpuMat&, cv::gpu::Stream&)' CMakeFiles/compute_flow.dir/compute_flow.o: In function ~GpuMat':
/usr/local/include/opencv2/core/gpumat.hpp:374: undefined reference to cv::gpu::GpuMat::release()' /usr/local/include/opencv2/core/gpumat.hpp:374: undefined reference to cv::gpu::GpuMat::release()'
/usr/local/include/opencv2/core/gpumat.hpp:374: undefined reference to cv::gpu::GpuMat::release()' /usr/local/include/opencv2/core/gpumat.hpp:374: undefined reference to cv::gpu::GpuMat::release()'
/usr/local/include/opencv2/core/gpumat.hpp:374: undefined reference to cv::gpu::GpuMat::release()' CMakeFiles/compute_flow.dir/compute_flow.o:/usr/local/include/opencv2/core/gpumat.hpp:374: more undefined references to cv::gpu::GpuMat::release()' follow
/home/mzy/anaconda3/lib/libQt5Core.so.5.9.5: undefined reference to __cxa_throw_bad_array_new_length@CXXABI_1.3.8' /home/mzy/anaconda3/lib/libQt5Core.so.5.9.5: undefined reference to operator delete(void*, unsigned long)@CXXABI_1.3.9'
/home/mzy/anaconda3/lib/libQt5Core.so.5.9.5: undefined reference to `operator delete[](void*, unsigned long)@CXXABI_1.3.9'
collect2: error: ld returned 1 exit status
make[2]: *** [compute_flow] Error 1
make[1]: *** [CMakeFiles/compute_flow.dir/all] Error 2
make: *** [all] Error 2

Any solution for this issue?

No output

I have set the vidpath, out_path and out_path_jpeg in compute_flow.cpp and builded it. However, when I ran build/comput_flow, it only print "start_vid:1gpuID:1flow method: 1 frameSkip: 1
Device 1: "GeForce GTX 1080 Ti" 11172Mb, sm_61, Driver/Runtime ver.9.0/8.0" and ended.

Is there anyone know what's up?

Error when running compute_flow: no CUDA-capable device is detected

I am able to build successfully using OpenCV 3.4.3. However, when I run the program
./compute_flow --gpuID=0 --type=1 --vid_path=../data/ --vid_path=../data/flow/ --stride=2
I get the following error:

start_vid:1gpuID:0flow method: 1 frameSkip: 1 vid_path: ../data/flow/ out_path./ jpegs: .//rgb/
terminate called after throwing an instance of 'cv::Exception'
  what():  OpenCV(3.4.3) /data/models/Optical_Flow_GPU_Opencv3/opencv/opencv-3.4.3/modules/core/src/cuda_info.cpp:73: error: (-217:Gpu API call) no CUDA-capable device is detected in function 'setDevice'

Aborted (core dumped)

If there is no way to resolve this error, how do I run this program on CPU?

build fails with fatal error

On centos 7 and all dependencies installed, make fails with:

 fatal error: opencv2/gpu/gpu.hpp: No such file or directory
 #include "opencv2/gpu/gpu.hpp"

using qt 5.6, opencv 2.4.8

OpenCV error: Gpu API call (invalid device function)

when i compute flow, i encounter the problem of "OpenCV Error: Gpu API call (invalid device function) in call, file /home/lei/opencvqt/opencv2.4.10/modules/gpu/include/opencv2/gpu/device/detail/transform_detail.hpp, line 361
terminate called after throwing an instance of 'cv::Exception' what(): /home/lei/opencvqt/opencv-2.4.10/modules/gpu/include/opencv2/gpu/device/detail/transform_detail.hpp:361: error: (-217) invalid device function in function call". I search how to solve it in google, and find most solution is set(CUDA_NVCC_FLAGS ${CUDA_NVCC_FLAGS} -arch compute_20 -code sm_20) in cmakelist.txt. The gpu of my computer is NVIDIA TITAN X, so I amend -arch to compute_61 -code sm_61 according to my gpu, add it to CMakeLists.txt and remake it. But the problem also exists I don't know how to solve it?

CMakeFiles/Makefile2:99: recipe for target 'CMakeFiles/compute_flow.dir/all' failed

System information (version)
OpenCV = :2.4.9.1 Python = :2.7.12 Operating System / Platform => :ubuntu 16.04 Compiler => :
Detailed description
I am following the steps from README.txt to build gpu_flow on my ubuntu.But when I enter the code "make",it reports an error.
Error details:
$ make
Scanning dependencies of target compute_flow_automoc
[ 25%] Automatic moc for target compute_flow
[ 25%] Built target compute_flow_automoc
Scanning dependencies of target compute_flow
[ 50%] Building CXX object CMakeFiles/compute_flow.dir/compute_flow.o
In file included from /usr/local/include/opencv4/opencv2/core.hpp:52:0,
from /usr/local/include/opencv4/opencv2/core/core.hpp:48,
from /home/huihui/桌面/行为检测项目/gpu_flow-master/compute_flow.cpp:33:
/usr/local/include/opencv4/opencv2/core/cvdef.h:656:4: error: #error "OpenCV 4.x+ requires enabled C++11 support"

error "OpenCV 4.x+ requires enabled C++11 support"

^

In file included from /usr/include/c++/5/array:35:0,
from /usr/local/include/opencv4/opencv2/core/cvdef.h:661,
from /usr/local/include/opencv4/opencv2/core.hpp:52,
from /usr/local/include/opencv4/opencv2/core/core.hpp:48,
from /home/huihui/桌面/行为检测项目/gpu_flow-master/compute_flow.cpp:33:
/usr/include/c++/5/bits/c++0x_warning.h:32:2: error: #error This file requires compiler and library support for the ISO C++ 2011 standard. This support must be enabled with the -std=c++11 or -std=gnu++11 compiler options.
#error This file requires compiler and library support
^
In file included from /usr/local/include/opencv4/opencv2/core/cvstd.hpp:81:0,
from /usr/local/include/opencv4/opencv2/core/base.hpp:58,
from /usr/local/include/opencv4/opencv2/core.hpp:54,
from /usr/local/include/opencv4/opencv2/core/core.hpp:48,
from /home/huihui/桌面/行为检测项目/gpu_flow-master/compute_flow.cpp:33:
/usr/local/include/opencv4/opencv2/core/cvstd_wrapper.hpp:16:12: error: ‘std::nullptr_t’ has not been declared
using std::nullptr_t;
^
In file included from /usr/local/include/opencv4/opencv2/core/cvstd.hpp:81:0,
from /usr/local/include/opencv4/opencv2/core/base.hpp:58,
from /usr/local/include/opencv4/opencv2/core.hpp:54,
from /usr/local/include/opencv4/opencv2/core/core.hpp:48,
from /home/huihui/桌面/行为检测项目/gpu_flow-master/compute_flow.cpp:33:
/usr/local/include/opencv4/opencv2/core/cvstd_wrapper.hpp:45:30: error: ‘true_type’ in namespace ‘std’ does not name a type
static CV_CONSTEXPR std::true_type check(typename std::is_same<typename std
^
/usr/local/include/opencv4/opencv2/core/cvstd_wrapper.hpp:47:49: error: ‘false_type’ in namespace ‘std’ does not name a type
template static CV_CONSTEXPR std::false_type check(...);
^
/usr/local/include/opencv4/opencv2/core/cvstd_wrapper.hpp:49:22: error: ‘check’ has not been declared
typedef decltype(check(0)) type;
^
/usr/local/include/opencv4/opencv2/core/cvstd_wrapper.hpp:49:27: error: expected ‘,’ or ‘...’ before ‘<’ token
typedef decltype(check(0)) type;
^
/usr/local/include/opencv4/opencv2/core/cvstd_wrapper.hpp:49:33: error: expected ‘;’ at end of member declaration
typedef decltype(check(0)) type;
^
/usr/local/include/opencv4/opencv2/core/cvstd_wrapper.hpp:49:35: error: ‘type’ does not name a type
typedef decltype(check(0)) type;
^
/usr/local/include/opencv4/opencv2/core/cvstd_wrapper.hpp:52:38: error: ‘type’ has not been declared
static CV_CONSTEXPR bool value = type::value;
^
/usr/local/include/opencv4/opencv2/core/cvstd_wrapper.hpp:58:34: error: expected class-name before ‘{’ token
: public std::false_type {};
^
/usr/local/include/opencv4/opencv2/core/cvstd_wrapper.hpp:61:43: error: ‘enable_if’ in namespace ‘std’ does not name a template type
struct has_custom_delete<T, typename std::enable_if< sfinae::has_parenthesis_op
^
/usr/local/include/opencv4/opencv2/core/cvstd_wrapper.hpp:61:52: error: expected template-argument before ‘<’ token
struct has_custom_delete<T, typename std::enable_if< sfinae::has_parenthesis_op
^
/usr/local/include/opencv4/opencv2/core/cvstd_wrapper.hpp:61:52: error: expected ‘>’ before ‘<’ token
/usr/local/include/opencv4/opencv2/core/cvstd_wrapper.hpp:61:131: error: template argument 2 is invalid
sfinae::has_parenthesis_operator<DefaultDeleter, void, T*>::value >::type >
^
/usr/local/include/opencv4/opencv2/core/cvstd_wrapper.hpp:62:9: error: expected ‘::’ before ‘:’ token
: public std::true_type {};
^
/usr/local/include/opencv4/opencv2/core/cvstd_wrapper.hpp:62:9: error: expected identifier before ‘:’ token
/usr/local/include/opencv4/opencv2/core/cvstd_wrapper.hpp:62:9: error: qualified name does not name a class before ‘:’ token
/usr/local/include/opencv4/opencv2/core/cvstd_wrapper.hpp:62:9: error: expected ‘{’ before ‘:’ token
/usr/local/include/opencv4/opencv2/core/cvstd_wrapper.hpp:62:9: error: expected unqualified-id before ‘:’ token
/usr/local/include/opencv4/opencv2/core/cvstd_wrapper.hpp:66:36: error: expected template-name before ‘<’ token
struct Ptr : public std::shared_ptr
^
/usr/local/include/opencv4/opencv2/core/cvstd_wrapper.hpp:66:36: error: expected ‘{’ before ‘<’ token
/usr/local/include/opencv4/opencv2/core/cvstd_wrapper.hpp:66:36: error: expected unqualified-id before ‘<’ token
/usr/local/include/opencv4/opencv2/core/cvstd_wrapper.hpp: In function ‘cv::Ptr<Tp> cv::makePtr(const A1& ...)’:
/usr/local/include/opencv4/opencv2/core/cvstd_wrapper.hpp:139:22: error: ‘make_shared’ is not a member of ‘std’
return (Ptr<Tp>)std::make_shared<Tp>(a1...);
^
/usr/local/include/opencv4/opencv2/core/cvstd_wrapper.hpp:139:42: error: expected primary-expression before ‘>’ token
return (Ptr<Tp>)std::make_shared<Tp>(a1...);
^
/usr/local/include/opencv4/opencv2/core/cvstd_wrapper.hpp:139:46: error: expected ‘)’ before ‘...’ token
return (Ptr<Tp>)std::make_shared<Tp>(a1...);
^
/usr/local/include/opencv4/opencv2/core/cvstd_wrapper.hpp:139:49: error: parameter packs not expanded with ‘...’:
return (Ptr<Tp>)std::make_shared<Tp>(a1...);
^
/usr/local/include/opencv4/opencv2/core/cvstd_wrapper.hpp:139:49: note: ‘a1’
In file included from /usr/local/include/opencv4/opencv2/core.hpp:57:0,
from /usr/local/include/opencv4/opencv2/core/core.hpp:48,
from /home/huihui/桌面/行为检测项目/gpu_flow-master/compute_flow.cpp:33:
/usr/local/include/opencv4/opencv2/core/matx.hpp: At global scope:
/usr/local/include/opencv4/opencv2/core/matx.hpp:143:31: error: expected ‘)’ before ‘<’ token
Matx(std::initializer_list<Tp>); //!< initialize from an initializer list
^
In file included from /usr/local/include/opencv4/opencv2/core.hpp:57:0,
from /usr/local/include/opencv4/opencv2/core/core.hpp:48,
from /home/huihui/桌面/行为检测项目/gpu_flow-master/compute_flow.cpp:33:
/usr/local/include/opencv4/opencv2/core/matx.hpp:361:30: error: expected ‘)’ before ‘<’ token
Vec(std::initializer_list<Tp>);
^
/usr/local/include/opencv4/opencv2/core/matx.hpp:664:28: error: ‘cv::Matx<Tp, m, n>::Matx’ declared as an ‘inline’ variable
Matx<Tp, m, n>::Matx(std::initializer_list<Tp> list)
^
/usr/local/include/opencv4/opencv2/core/matx.hpp:664:28: error: ‘int cv::Matx<Tp, m, n>::Matx’ is not a static data member of ‘class cv::Matx<Tp, m, n>’
/usr/local/include/opencv4/opencv2/core/matx.hpp:664:28: error: template definition of non-template ‘int cv::Matx<Tp, m, n>::Matx’
/usr/local/include/opencv4/opencv2/core/matx.hpp:664:23: error: ‘initializer_list’ is not a member of ‘std’
Matx<Tp, m, n>::Matx(std::initializer_list<Tp> list)
^
/usr/local/include/opencv4/opencv2/core/matx.hpp:664:48: error: expected primary-expression before ‘>’ token
Matx<Tp, m, n>::Matx(std::initializer_list<Tp> list)
^
/usr/local/include/opencv4/opencv2/core/matx.hpp:664:50: error: ‘list’ was not declared in this scope
Matx<Tp, m, n>::Matx(std::initializer_list<Tp> list)
^
/usr/local/include/opencv4/opencv2/core/matx.hpp:664:50: note: suggested alternatives:
In file included from /usr/include/c++/5/list:63:0,
from /usr/include/x86_64-linux-gnu/qt5/QtCore/qlist.h:43,
from /usr/include/x86_64-linux-gnu/qt5/QtCore/qobject.h:43,
from /usr/include/x86_64-linux-gnu/qt5/QtCore/qiodevice.h:39,
from /usr/include/x86_64-linux-gnu/qt5/QtCore/qfiledevice.h:37,
from /usr/include/x86_64-linux-gnu/qt5/QtCore/qfile.h:37,
from /usr/include/x86_64-linux-gnu/qt5/QtCore/qfileinfo.h:37,
from /usr/include/x86_64-linux-gnu/qt5/QtCore/qdir.h:38,
from /usr/include/x86_64-linux-gnu/qt5/QtCore/qdiriterator.h:37,
from /usr/include/x86_64-linux-gnu/qt5/QtCore/QDirIterator:1,
from /home/huihui/桌面/行为检测项目/gpu_flow-master/compute_flow.cpp:29:
/usr/include/c++/5/bits/stl_list.h:507:11: note: ‘std::cxx11::list’
class list : protected List_base<Tp, Alloc>
^
/usr/include/c++/5/bits/stl_list.h:507:11: note: ‘std::cxx11::list’
In file included from /usr/local/include/opencv4/opencv2/core.hpp:57:0,
from /usr/local/include/opencv4/opencv2/core/core.hpp:48,
from /home/huihui/桌面/行为检测项目/gpu_flow-master/compute_flow.cpp:33:
/usr/local/include/opencv4/opencv2/core/matx.hpp:1016:24: error: ‘cv::Vec<Tp, cn>::Vec’ declared as an ‘inline’ variable
Vec<Tp, cn>::Vec(std::initializer_list<Tp> list)
^
/usr/local/include/opencv4/opencv2/core/matx.hpp:1016:24: error: ‘int cv::Vec<Tp, cn>::Vec’ is not a static data member of ‘class cv::Vec<Tp, cn>’
/usr/local/include/opencv4/opencv2/core/matx.hpp:1016:24: error: template definition of non-template ‘int cv::Vec<Tp, cn>::Vec’
/usr/local/include/opencv4/opencv2/core/matx.hpp:1016:19: error: ‘initializer_list’ is not a member of ‘std’
Vec<Tp, cn>::Vec(std::initializer_list<Tp> list)
^
/usr/local/include/opencv4/opencv2/core/matx.hpp:1016:44: error: expected primary-expression before ‘>’ token
Vec<Tp, cn>::Vec(std::initializer_list<Tp> list)
^
/usr/local/include/opencv4/opencv2/core/matx.hpp:1016:46: error: ‘list’ was not declared in this scope
Vec<Tp, cn>::Vec(std::initializer_list<Tp> list)
^
/usr/local/include/opencv4/opencv2/core/matx.hpp:1016:46: note: suggested alternatives:
In file included from /usr/include/c++/5/list:63:0,
from /usr/include/x86_64-linux-gnu/qt5/QtCore/qlist.h:43,
from /usr/include/x86_64-linux-gnu/qt5/QtCore/qobject.h:43,
from /usr/include/x86_64-linux-gnu/qt5/QtCore/qiodevice.h:39,
from /usr/include/x86_64-linux-gnu/qt5/QtCore/qfiledevice.h:37,
from /usr/include/x86_64-linux-gnu/qt5/QtCore/qfile.h:37,
from /usr/include/x86_64-linux-gnu/qt5/QtCore/qfileinfo.h:37,
from /usr/include/x86_64-linux-gnu/qt5/QtCore/qdir.h:38,
from /usr/include/x86_64-linux-gnu/qt5/QtCore/qdiriterator.h:37,
from /usr/include/x86_64-linux-gnu/qt5/QtCore/QDirIterator:1,
from /home/huihui/桌面/行为检测项目/gpu_flow-master/compute_flow.cpp:29:
/usr/include/c++/5/bits/stl_list.h:507:11: note: ‘std::cxx11::list’
class list : protected List_base<Tp, Alloc>
^
/usr/include/c++/5/bits/stl_list.h:507:11: note: ‘std::cxx11::list’
In file included from /usr/local/include/opencv4/opencv2/core.hpp:58:0,
from /usr/local/include/opencv4/opencv2/core/core.hpp:48,
from /home/huihui/桌面/行为检测项目/gpu_flow-master/compute_flow.cpp:33:
/usr/local/include/opencv4/opencv2/core/types.hpp:166:18: error: expected ‘,’ or ‘...’ before ‘&&’ token
Point
(Point
&& pt) CV_NOEXCEPT;
^
/usr/local/include/opencv4/opencv2/core/types.hpp:166:23: error: invalid constructor; you probably meant ‘cv::Point
<Tp> (const cv::Point<Tp>&)’
Point
(Point
&& pt) CV_NOEXCEPT;
^
/usr/local/include/opencv4/opencv2/core/types.hpp:171:31: error: expected ‘,’ or ‘...’ before ‘&&’ token
Point
& operator = (Point
&& pt) CV_NOEXCEPT;
^
/usr/local/include/opencv4/opencv2/core/types.hpp:248:20: error: expected ‘,’ or ‘...’ before ‘&&’ token
Point3
(Point3
&& pt) CV_NOEXCEPT;
^
/usr/local/include/opencv4/opencv2/core/types.hpp:248:25: error: invalid constructor; you probably meant ‘cv::Point3
<Tp> (const cv::Point3<Tp>&)’
Point3
(Point3
&& pt) CV_NOEXCEPT;
^
/usr/local/include/opencv4/opencv2/core/types.hpp:253:33: error: expected ‘,’ or ‘...’ before ‘&&’ token
Point3
& operator = (Point3
&& pt) CV_NOEXCEPT;
^
/usr/local/include/opencv4/opencv2/core/types.hpp:324:16: error: expected ‘,’ or ‘...’ before ‘&&’ token
Size
(Size
&& sz) CV_NOEXCEPT;
^
/usr/local/include/opencv4/opencv2/core/types.hpp:324:21: error: invalid constructor; you probably meant ‘cv::Size
<Tp> (const cv::Size<Tp>&)’
Size
(Size
&& sz) CV_NOEXCEPT;
^
/usr/local/include/opencv4/opencv2/core/types.hpp:328:29: error: expected ‘,’ or ‘...’ before ‘&&’ token
Size
& operator = (Size
&& sz) CV_NOEXCEPT;
^
/usr/local/include/opencv4/opencv2/core/types.hpp:429:16: error: expected ‘,’ or ‘...’ before ‘&&’ token
Rect
(Rect
&& r) CV_NOEXCEPT;
^
/usr/local/include/opencv4/opencv2/core/types.hpp:429:20: error: invalid constructor; you probably meant ‘cv::Rect
<Tp> (const cv::Rect<Tp>&)’
Rect
(Rect
&& r) CV_NOEXCEPT;
^
/usr/local/include/opencv4/opencv2/core/types.hpp:434:30: error: expected ‘,’ or ‘...’ before ‘&&’ token
Rect
& operator = ( Rect
&& r ) CV_NOEXCEPT;
^
In file included from /usr/local/include/opencv4/opencv2/core.hpp:58:0,
from /usr/local/include/opencv4/opencv2/core/core.hpp:48,
from /home/huihui/桌面/行为检测项目/gpu_flow-master/compute_flow.cpp:33:
/usr/local/include/opencv4/opencv2/core/types.hpp:645:20: error: expected ‘,’ or ‘...’ before ‘&&’ token
Scalar
(Scalar
&& s) CV_NOEXCEPT;
^
/usr/local/include/opencv4/opencv2/core/types.hpp:645:24: error: invalid constructor; you probably meant ‘cv::Scalar
<Tp> (const cv::Scalar<Tp>&)’
Scalar
(Scalar
&& s) CV_NOEXCEPT;
^
/usr/local/include/opencv4/opencv2/core/types.hpp:648:31: error: expected ‘,’ or ‘...’ before ‘&&’ token
Scalar
& operator=(Scalar
&& s) CV_NOEXCEPT;
^
/usr/local/include/opencv4/opencv2/core/types.hpp:1172:27: error: expected ‘,’ or ‘...’ before ‘&&’ token
Point
<Tp>::Point(Point
&& pt) CV_NOEXCEPT
^
/usr/local/include/opencv4/opencv2/core/types.hpp:1172:1: error: prototype for ‘cv::Point
<Tp>::Point(cv::Point
<Tp>)’ does not match any in class ‘cv::Point<Tp>’
Point
<Tp>::Point(Point
&& pt) CV_NOEXCEPT
^
In file included from /usr/local/include/opencv4/opencv2/core.hpp:58:0,
from /usr/local/include/opencv4/opencv2/core/core.hpp:48,
from /home/huihui/桌面/行为检测项目/gpu_flow-master/compute_flow.cpp:33:
/usr/local/include/opencv4/opencv2/core/types.hpp:168:5: error: candidates are: cv::Point
<Tp>::Point(const cv::Vec<Tp, 2>&)
Point
(const Vec<Tp, 2>& v);
^
/usr/local/include/opencv4/opencv2/core/types.hpp:167:5: error: cv::Point
<Tp>::Point(const cv::Size
<Tp>&)
Point
(const Size
<Tp>& sz);
^
In file included from /usr/local/include/opencv4/opencv2/core.hpp:58:0,
from /usr/local/include/opencv4/opencv2/core/core.hpp:48,
from /home/huihui/桌面/行为检测项目/gpu_flow-master/compute_flow.cpp:33:
/usr/local/include/opencv4/opencv2/core/types.hpp:1168:1: error: cv::Point
<Tp>::Point(const cv::Point
<Tp>&)
Point
<Tp>::Point(const Point
& pt)
^
/usr/local/include/opencv4/opencv2/core/types.hpp:1164:1: error: cv::Point
<Tp>::Point(Tp, Tp)
Point
<Tp>::Point(Tp x, Tp y)
^
/usr/local/include/opencv4/opencv2/core/types.hpp:1160:1: error: cv::Point
<Tp>::Point()
Point
<Tp>::Point()
^
/usr/local/include/opencv4/opencv2/core/types.hpp:1191:45: error: expected ‘,’ or ‘...’ before ‘&&’ token
Point
<Tp>& Point<Tp>::operator = (Point&& pt) CV_NOEXCEPT
^
/usr/local/include/opencv4/opencv2/core/types.hpp: In member function ‘cv::Point
<Tp>& cv::Point<Tp>::operator=(cv::Point<Tp>)’:
/usr/local/include/opencv4/opencv2/core/types.hpp:1193:9: error: ‘move’ is not a member of ‘std’
x = std::move(pt.x); y = std::move(pt.y);
^
/usr/local/include/opencv4/opencv2/core/types.hpp:1193:19: error: ‘pt’ was not declared in this scope
x = std::move(pt.x); y = std::move(pt.y);
^
/usr/local/include/opencv4/opencv2/core/types.hpp:1193:30: error: ‘move’ is not a member of ‘std’
x = std::move(pt.x); y = std::move(pt.y);
^
/usr/local/include/opencv4/opencv2/core/types.hpp: At global scope:
/usr/local/include/opencv4/opencv2/core/types.hpp:1439:30: error: expected ‘,’ or ‘...’ before ‘&&’ token
Point3
<Tp>::Point3(Point3
&& pt) CV_NOEXCEPT
^
/usr/local/include/opencv4/opencv2/core/types.hpp:1439:1: error: prototype for ‘cv::Point3
<Tp>::Point3(cv::Point3
<Tp>)’ does not match any in class ‘cv::Point3<Tp>’
Point3
<Tp>::Point3(Point3
&& pt) CV_NOEXCEPT
^
In file included from /usr/local/include/opencv4/opencv2/core.hpp:58:0,
from /usr/local/include/opencv4/opencv2/core/core.hpp:48,
from /home/huihui/桌面/行为检测项目/gpu_flow-master/compute_flow.cpp:33:
/usr/local/include/opencv4/opencv2/core/types.hpp:250:5: error: candidates are: cv::Point3
<Tp>::Point3(const cv::Vec<T2, 3>&)
Point3
(const Vec<Tp, 3>& v);
^
/usr/local/include/opencv4/opencv2/core/types.hpp:249:14: error: cv::Point3
<Tp>::Point3(const cv::Point
<Tp>&)
explicit Point3
(const Point
<Tp>& pt);
^
In file included from /usr/local/include/opencv4/opencv2/core.hpp:58:0,
from /usr/local/include/opencv4/opencv2/core/core.hpp:48,
from /home/huihui/桌面/行为检测项目/gpu_flow-master/compute_flow.cpp:33:
/usr/local/include/opencv4/opencv2/core/types.hpp:1435:1: error: cv::Point3
<Tp>::Point3(const cv::Point3
<Tp>&)
Point3
<Tp>::Point3(const Point3_& pt)
^
/usr/local/include/opencv4/opencv2/core/types.hpp:1431:1: error: cv::Point3_<Tp>::Point3(Tp, Tp, Tp)
Point3
<Tp>::Point3(Tp x, Tp y, Tp z)
^
/usr/local/include/opencv4/opencv2/core/types.hpp:1427:1: error: cv::Point3
<Tp>::Point3()
Point3
<Tp>::Point3()
^
/usr/local/include/opencv4/opencv2/core/types.hpp:1470:48: error: expected ‘,’ or ‘...’ before ‘&&’ token
Point3
<Tp>& Point3<Tp>::operator = (Point3&& pt) CV_NOEXCEPT
^
/usr/local/include/opencv4/opencv2/core/types.hpp: In member function ‘cv::Point3
<Tp>& cv::Point3<Tp>::operator=(cv::Point3<Tp>)’:
/usr/local/include/opencv4/opencv2/core/types.hpp:1472:9: error: ‘move’ is not a member of ‘std’
x = std::move(pt.x); y = std::move(pt.y); z = std::move(pt.z);
^
/usr/local/include/opencv4/opencv2/core/types.hpp:1472:19: error: ‘pt’ was not declared in this scope
x = std::move(pt.x); y = std::move(pt.y); z = std::move(pt.z);
^
/usr/local/include/opencv4/opencv2/core/types.hpp:1472:30: error: ‘move’ is not a member of ‘std’
x = std::move(pt.x); y = std::move(pt.y); z = std::move(pt.z);
^
/usr/local/include/opencv4/opencv2/core/types.hpp:1472:51: error: ‘move’ is not a member of ‘std’
x = std::move(pt.x); y = std::move(pt.y); z = std::move(pt.z);
^
/usr/local/include/opencv4/opencv2/core/types.hpp: At global scope:
/usr/local/include/opencv4/opencv2/core/types.hpp:1693:24: error: expected ‘,’ or ‘...’ before ‘&&’ token
Size
<Tp>::Size(Size
&& sz) CV_NOEXCEPT
^
/usr/local/include/opencv4/opencv2/core/types.hpp:1693:1: error: prototype for ‘cv::Size
<Tp>::Size(cv::Size
<Tp>)’ does not match any in class ‘cv::Size<Tp>’
Size
<Tp>::Size(Size
&& sz) CV_NOEXCEPT
^
In file included from /usr/local/include/opencv4/opencv2/core.hpp:58:0,
from /usr/local/include/opencv4/opencv2/core/core.hpp:48,
from /home/huihui/桌面/行为检测项目/gpu_flow-master/compute_flow.cpp:33:
/usr/local/include/opencv4/opencv2/core/types.hpp:325:5: error: candidates are: cv::Size_<Tp>::Size(const cv::Point_<Tp>&)
Size
(const Point_<Tp>& pt);
^
In file included from /usr/local/include/opencv4/opencv2/core.hpp:58:0,
from /usr/local/include/opencv4/opencv2/core/core.hpp:48,
from /home/huihui/桌面/行为检测项目/gpu_flow-master/compute_flow.cpp:33:
/usr/local/include/opencv4/opencv2/core/types.hpp:1689:1: error: cv::Size
<Tp>::Size(const cv::Size_<Tp>&)
Size
<Tp>::Size(const Size_& sz)
^
/usr/local/include/opencv4/opencv2/core/types.hpp:1685:1: error: cv::Size_<Tp>::Size(Tp, Tp)
Size
<Tp>::Size(Tp width, Tp height)
^
/usr/local/include/opencv4/opencv2/core/types.hpp:1681:1: error: cv::Size
<Tp>::Size()
Size
<Tp>::Size()
^
/usr/local/include/opencv4/opencv2/core/types.hpp:1714:47: error: expected ‘,’ or ‘...’ before ‘&&’ token
Size
<Tp>& Size<Tp>::operator = (Size<Tp>&& sz) CV_NOEXCEPT
^
/usr/local/include/opencv4/opencv2/core/types.hpp: In member function ‘cv::Size
<Tp>& cv::Size<Tp>::operator=(cv::Size<Tp>)’:
/usr/local/include/opencv4/opencv2/core/types.hpp:1716:13: error: ‘move’ is not a member of ‘std’
width = std::move(sz.width); height = std::move(sz.height);
^
/usr/local/include/opencv4/opencv2/core/types.hpp:1716:23: error: ‘sz’ was not declared in this scope
width = std::move(sz.width); height = std::move(sz.height);
^
/usr/local/include/opencv4/opencv2/core/types.hpp:1716:43: error: ‘move’ is not a member of ‘std’
width = std::move(sz.width); height = std::move(sz.height);
^
/usr/local/include/opencv4/opencv2/core/types.hpp: At global scope:
/usr/local/include/opencv4/opencv2/core/types.hpp:1835:29: error: expected ‘,’ or ‘...’ before ‘&&’ token
Rect
<Tp>::Rect(Rect
<Tp>&& r) CV_NOEXCEPT
^
/usr/local/include/opencv4/opencv2/core/types.hpp:1835:1: error: prototype for ‘cv::Rect
<Tp>::Rect(cv::Rect
<Tp>)’ does not match any in class ‘cv::Rect<Tp>’
Rect
<Tp>::Rect(Rect_<Tp>&& r) CV_NOEXCEPT
^
In file included from /usr/local/include/opencv4/opencv2/core.hpp:58:0,
from /usr/local/include/opencv4/opencv2/core/core.hpp:48,
from /home/huihui/桌面/行为检测项目/gpu_flow-master/compute_flow.cpp:33:
/usr/local/include/opencv4/opencv2/core/types.hpp:431:5: error: candidates are: cv::Rect
<Tp>::Rect(const cv::Point_<Tp>&, const cv::Point<Tp>&)
Rect
(const Point_<Tp>& pt1, const Point<Tp>& pt2);
^
/usr/local/include/opencv4/opencv2/core/types.hpp:430:5: error: cv::Rect
<Tp>::Rect(const cv::Point_<Tp>&, const cv::Size<Tp>&)
Rect
(const Point_<Tp>& org, const Size<Tp>& sz);
^
In file included from /usr/local/include/opencv4/opencv2/core.hpp:58:0,
from /usr/local/include/opencv4/opencv2/core/core.hpp:48,
from /home/huihui/桌面/行为检测项目/gpu_flow-master/compute_flow.cpp:33:
/usr/local/include/opencv4/opencv2/core/types.hpp:1831:1: error: cv::Rect
<Tp>::Rect(const cv::Rect_<Tp>&)
Rect
<Tp>::Rect(const Rect_<Tp>& r)
^
/usr/local/include/opencv4/opencv2/core/types.hpp:1827:1: error: cv::Rect
<Tp>::Rect(_Tp, _Tp, _Tp, Tp)
Rect
<Tp>::Rect(_Tp x, Tp y, Tp width, Tp height)
^
/usr/local/include/opencv4/opencv2/core/types.hpp:1823:1: error: cv::Rect
<Tp>::Rect()
Rect
<Tp>::Rect()
^
/usr/local/include/opencv4/opencv2/core/types.hpp:1862:48: error: expected ‘,’ or ‘...’ before ‘&&’ token
Rect
<Tp>& Rect<Tp>::operator = ( Rect<Tp>&& r ) CV_NOEXCEPT
^
/usr/local/include/opencv4/opencv2/core/types.hpp: In member function ‘cv::Rect
<Tp>& cv::Rect<Tp>::operator=(cv::Rect<Tp>)’:
/usr/local/include/opencv4/opencv2/core/types.hpp:1864:9: error: ‘move’ is not a member of ‘std’
x = std::move(r.x);
^
/usr/local/include/opencv4/opencv2/core/types.hpp:1864:19: error: ‘r’ was not declared in this scope
x = std::move(r.x);
^
/usr/local/include/opencv4/opencv2/core/types.hpp:1865:9: error: ‘move’ is not a member of ‘std’
y = std::move(r.y);
^
/usr/local/include/opencv4/opencv2/core/types.hpp:1866:13: error: ‘move’ is not a member of ‘std’
width = std::move(r.width);
^
/usr/local/include/opencv4/opencv2/core/types.hpp:1867:14: error: ‘move’ is not a member of ‘std’
height = std::move(r.height);
^
/usr/local/include/opencv4/opencv2/core/types.hpp: At global scope:
/usr/local/include/opencv4/opencv2/core/types.hpp:2171:35: error: expected ‘,’ or ‘...’ before ‘&&’ token
Scalar
<Tp>::Scalar(Scalar
<Tp>&& s) CV_NOEXCEPT {
^
/usr/local/include/opencv4/opencv2/core/types.hpp:2171:1: error: prototype for ‘cv::Scalar
<Tp>::Scalar(cv::Scalar
<Tp>)’ does not match any in class ‘cv::Scalar<Tp>’
Scalar
<Tp>::Scalar(Scalar
<Tp>&& s) CV_NOEXCEPT {
^
/usr/local/include/opencv4/opencv2/core/types.hpp:651:5: error: candidates are: template template<class Tp2, int cn> cv::Scalar<Tp>::Scalar(const cv::Vec<Tp2, cn>&)
Scalar
(const Vec<Tp2, cn>& v);
^
/usr/local/include/opencv4/opencv2/core/types.hpp:2167:1: error: cv::Scalar
<Tp>::Scalar(const cv::Scalar
<Tp>&)
Scalar
<Tp>::Scalar(const Scalar
<_Tp>& s) : Vec<Tp, 4>(s) {
^
/usr/local/include/opencv4/opencv2/core/types.hpp:642:5: error: cv::Scalar
<Tp>::Scalar(Tp)
Scalar
(Tp v0);
^
/usr/local/include/opencv4/opencv2/core/types.hpp:2158:1: error: cv::Scalar
<Tp>::Scalar(_Tp, _Tp, _Tp, Tp)
Scalar
<Tp>::Scalar(_Tp v0, Tp v1, Tp v2, Tp v3)
^
/usr/local/include/opencv4/opencv2/core/types.hpp:2152:1: error: cv::Scalar
<Tp>::Scalar()
Scalar
<Tp>::Scalar()
^
/usr/local/include/opencv4/opencv2/core/types.hpp:2188:51: error: expected ‘,’ or ‘...’ before ‘&&’ token
Scalar
<Tp>& Scalar<Tp>::operator=(Scalar<Tp>&& s) CV_NOEXCEPT {
^
/usr/local/include/opencv4/opencv2/core/types.hpp: In member function ‘cv::Scalar
<Tp>& cv::Scalar<Tp>::operator=(cv::Scalar<_Tp>)’:
/usr/local/include/opencv4/opencv2/core/types.hpp:2189:20: error: ‘move’ is not a member of ‘std’
this->val[0] = std::move(s.val[0]);
^
/usr/local/include/opencv4/opencv2/core/types.hpp:2189:30: error: ‘s’ was not declared in this scope
this->val[0] = std::move(s.val[0]);
^
/usr/local/include/opencv4/opencv2/core/types.hpp:2190:20: error: ‘move’ is not a member of ‘std’
this->val[1] = std::move(s.val[1]);
^
/usr/local/include/opencv4/opencv2/core/types.hpp:2191:20: error: ‘move’ is not a member of ‘std’
this->val[2] = std::move(s.val[2]);
^
/usr/local/include/opencv4/opencv2/core/types.hpp:2192:20: error: ‘move’ is not a member of ‘std’
this->val[3] = std::move(s.val[3]);
^
In file included from /usr/local/include/opencv4/opencv2/core.hpp:52:0,
from /usr/local/include/opencv4/opencv2/core/core.hpp:48,
from /home/huihui/桌面/行为检测项目/gpu_flow-master/compute_flow.cpp:33:
/usr/local/include/opencv4/opencv2/core/mat.hpp: In function ‘bool cv::operator!(const cv::AccessFlag&)’:
/usr/local/include/opencv4/opencv2/core/mat.hpp:66:1: error: ‘underlying_type’ in namespace ‘std’ does not name a template type
CV_ENUM_FLAGS(AccessFlag)
^
/usr/local/include/opencv4/opencv2/core/mat.hpp:66:1: error: ‘UnderlyingType’ does not name a type
CV_ENUM_FLAGS(AccessFlag)
^
/usr/local/include/opencv4/opencv2/core/mat.hpp: In function ‘cv::AccessFlag cv::operator~(const cv::AccessFlag&)’:
/usr/local/include/opencv4/opencv2/core/mat.hpp:66:1: error: ‘underlying_type’ in namespace ‘std’ does not name a template type
CV_ENUM_FLAGS(AccessFlag)
^
/usr/local/include/opencv4/opencv2/core/mat.hpp:66:1: error: ‘UnderlyingType’ does not name a type
CV_ENUM_FLAGS(AccessFlag)
^
/usr/local/include/opencv4/opencv2/core/mat.hpp: In function ‘cv::AccessFlag cv::operator|(const cv::AccessFlag&, const cv::AccessFlag&)’:
/usr/local/include/opencv4/opencv2/core/mat.hpp:66:1: error: ‘underlying_type’ in namespace ‘std’ does not name a template type
CV_ENUM_FLAGS(AccessFlag)
^
/usr/local/include/opencv4/opencv2/core/mat.hpp:66:1: error: ‘UnderlyingType’ does not name a type
CV_ENUM_FLAGS(AccessFlag)
^
/usr/local/include/opencv4/opencv2/core/mat.hpp:66:1: error: ‘UnderlyingType’ does not name a type
CV_ENUM_FLAGS(AccessFlag)
^
/usr/local/include/opencv4/opencv2/core/mat.hpp: In function ‘cv::AccessFlag cv::operator&(const cv::AccessFlag&, const cv::AccessFlag&)’:
/usr/local/include/opencv4/opencv2/core/mat.hpp:66:1: error: ‘underlying_type’ in namespace ‘std’ does not name a template type
CV_ENUM_FLAGS(AccessFlag)
^
/usr/local/include/opencv4/opencv2/core/mat.hpp:66:1: error: ‘UnderlyingType’ does not name a type
CV_ENUM_FLAGS(AccessFlag)
^
/usr/local/include/opencv4/opencv2/core/mat.hpp:66:1: error: ‘UnderlyingType’ does not name a type
CV_ENUM_FLAGS(AccessFlag)
^
/usr/local/include/opencv4/opencv2/core/mat.hpp: In function ‘cv::AccessFlag cv::operator^(const cv::AccessFlag&, const cv::AccessFlag&)’:
/usr/local/include/opencv4/opencv2/core/mat.hpp:66:1: error: ‘underlying_type’ in namespace ‘std’ does not name a template type
CV_ENUM_FLAGS(AccessFlag)
^
/usr/local/include/opencv4/opencv2/core/mat.hpp:66:1: error: ‘UnderlyingType’ does not name a type
CV_ENUM_FLAGS(AccessFlag)
^
/usr/local/include/opencv4/opencv2/core/mat.hpp:66:1: error: ‘UnderlyingType’ does not name a type
CV_ENUM_FLAGS(AccessFlag)
^
/usr/local/include/opencv4/opencv2/core/mat.hpp: In function ‘cv::AccessFlag cv::operator&(const int&, const cv::AccessFlag&)’:
/usr/local/include/opencv4/opencv2/core/mat.hpp:67:1: error: ‘underlying_type’ in namespace ‘std’ does not name a template type
__CV_ENUM_FLAGS_BITWISE_AND(AccessFlag, int, AccessFlag)
^
/usr/local/include/opencv4/opencv2/core/mat.hpp:67:1: error: ‘UnderlyingType’ does not name a type
__CV_ENUM_FLAGS_BITWISE_AND(AccessFlag, int, AccessFlag)
^
/usr/local/include/opencv4/opencv2/core/mat.hpp:67:1: error: ‘UnderlyingType’ does not name a type
__CV_ENUM_FLAGS_BITWISE_AND(AccessFlag, int, AccessFlag)
^
In file included from /usr/local/include/opencv4/opencv2/core.hpp:59:0,
from /usr/local/include/opencv4/opencv2/core/core.hpp:48,
from /home/huihui/桌面/行为检测项目/gpu_flow-master/compute_flow.cpp:33:
/usr/local/include/opencv4/opencv2/core/mat.hpp: At global scope:
/usr/local/include/opencv4/opencv2/core/mat.hpp:207:68: error: ‘array’ in namespace ‘std’ does not name a template type
template<typename _Tp, std::size_t _Nm> _InputArray(const std::array<_Tp, _
^
/usr/local/include/opencv4/opencv2/core/mat.hpp:207:73: error: expected ‘,’ or ‘...’ before ‘<’ token
template<typename _Tp, std::size_t _Nm> _InputArray(const std::array<_Tp, _Nm>&
^
/usr/local/include/opencv4/opencv2/core/mat.hpp:208:54: error: ‘array’ in namespace ‘std’ does not name a template type
template<std::size_t _Nm> _InputArray(const std::array<Mat, _Nm>& arr);
^
/usr/local/include/opencv4/opencv2/core/mat.hpp:208:59: error: expected ‘,’ or ‘...’ before ‘<’ token
template<std::size_t _Nm> _InputArray(const std::array<Mat, _Nm>& arr);
^
/usr/local/include/opencv4/opencv2/core/mat.hpp:211:81: error: ‘array’ in namespace ‘std’ does not name a template type
<typename _Tp, std::size_t _Nm> static _InputArray rawIn(const std::array<_Tp,
^
/usr/local/include/opencv4/opencv2/core/mat.hpp:211:86: error: expected ‘,’ or ‘...’ before ‘<’ token
name _Tp, std::size_t _Nm> static _InputArray rawIn(const std::array<_Tp, _Nm>&
^
In file included from /usr/local/include/opencv4/opencv2/core.hpp:52:0,
from /usr/local/include/opencv4/opencv2/core/core.hpp:48,
from /home/huihui/桌面/行为检测项目/gpu_flow-master/compute_flow.cpp:33:
/usr/local/include/opencv4/opencv2/core/mat.hpp: In function ‘bool cv::operator!(const cv::_InputArray::KindFlag&)’:
/usr/local/include/opencv4/opencv2/core/mat.hpp:262:1: error: ‘underlying_type’ in namespace ‘std’ does not name a template type
CV_ENUM_FLAGS(_InputArray::KindFlag)
^
/usr/local/include/opencv4/opencv2/core/mat.hpp:262:1: error: ‘UnderlyingType’ does not name a type
CV_ENUM_FLAGS(_InputArray::KindFlag)
^
/usr/local/include/opencv4/opencv2/core/mat.hpp: In function ‘cv::_InputArray::KindFlag cv::operator~(const cv::_InputArray::KindFlag&)’:
/usr/local/include/opencv4/opencv2/core/mat.hpp:262:1: error: ‘underlying_type’ in namespace ‘std’ does not name a template type
CV_ENUM_FLAGS(_InputArray::KindFlag)
^
/usr/local/include/opencv4/opencv2/core/mat.hpp:262:1: error: ‘UnderlyingType’ does not name a type
CV_ENUM_FLAGS(_InputArray::KindFlag)
^
/usr/local/include/opencv4/opencv2/core/mat.hpp: In function ‘cv::_InputArray::KindFlag cv::operator|(const cv::_InputArray::KindFlag&, const cv::_InputArray::KindFlag&)’:
/usr/local/include/opencv4/opencv2/core/mat.hpp:262:1: error: ‘underlying_type’ in namespace ‘std’ does not name a template type
CV_ENUM_FLAGS(_InputArray::KindFlag)
^
/usr/local/include/opencv4/opencv2/core/mat.hpp:262:1: error: ‘UnderlyingType’ does not name a type
CV_ENUM_FLAGS(_InputArray::KindFlag)
^
/usr/local/include/opencv4/opencv2/core/mat.hpp:262:1: error: ‘UnderlyingType’ does not name a type
CV_ENUM_FLAGS(_InputArray::KindFlag)
^
/usr/local/include/opencv4/opencv2/core/mat.hpp: In function ‘cv::_InputArray::KindFlag cv::operator&(const cv::_InputArray::KindFlag&, const cv::_InputArray::KindFlag&)’:
/usr/local/include/opencv4/opencv2/core/mat.hpp:262:1: error: ‘underlying_type’ in namespace ‘std’ does not name a template type
CV_ENUM_FLAGS(_InputArray::KindFlag)
^
/usr/local/include/opencv4/opencv2/core/mat.hpp:262:1: error: ‘UnderlyingType’ does not name a type
CV_ENUM_FLAGS(_InputArray::KindFlag)
^
/usr/local/include/opencv4/opencv2/core/mat.hpp:262:1: error: ‘UnderlyingType’ does not name a type
CV_ENUM_FLAGS(_InputArray::KindFlag)
^
/usr/local/include/opencv4/opencv2/core/mat.hpp: In function ‘cv::_InputArray::KindFlag cv::operator^(const cv::_InputArray::KindFlag&, const cv::_InputArray::KindFlag&)’:
/usr/local/include/opencv4/opencv2/core/mat.hpp:262:1: error: ‘underlying_type’ in namespace ‘std’ does not name a template type
CV_ENUM_FLAGS(_InputArray::KindFlag)
^
/usr/local/include/opencv4/opencv2/core/mat.hpp:262:1: error: ‘UnderlyingType’ does not name a type
CV_ENUM_FLAGS(_InputArray::KindFlag)
^
/usr/local/include/opencv4/opencv2/core/mat.hpp:262:1: error: ‘UnderlyingType’ does not name a type
CV_ENUM_FLAGS(_InputArray::KindFlag)
^
/usr/local/include/opencv4/opencv2/core/mat.hpp: In function ‘cv::_InputArray::KindFlag cv::operator&(const int&, const cv::_InputArray::KindFlag&)’:
/usr/local/include/opencv4/opencv2/core/mat.hpp:263:1: error: ‘underlying_type’ in namespace ‘std’ does not name a template type
__CV_ENUM_FLAGS_BITWISE_AND(_InputArray::KindFlag, int, _InputArray::KindFlag)
^
/usr/local/include/opencv4/opencv2/core/mat.hpp:263:1: error: ‘UnderlyingType’ does not name a type
__CV_ENUM_FLAGS_BITWISE_AND(_InputArray::KindFlag, int, _InputArray::KindFlag)
^
/usr/local/include/opencv4/opencv2/core/mat.hpp:263:1: error: ‘UnderlyingType’ does not name a type
__CV_ENUM_FLAGS_BITWISE_AND(_InputArray::KindFlag, int, _InputArray::KindFlag)
^
In file included from /usr/local/include/opencv4/opencv2/core.hpp:59:0,
from /usr/local/include/opencv4/opencv2/core/core.hpp:48,
from /home/huihui/桌面/行为检测项目/gpu_flow-master/compute_flow.cpp:33:
/usr/local/include/opencv4/opencv2/core/mat.hpp: At global scope:
/usr/local/include/opencv4/opencv2/core/mat.hpp:345:68: error: expected ‘)’ before ‘<’ token
template<typename _Tp, std::size_t _Nm> _OutputArray(std::array<_Tp, _Nm>&
^
/usr/local/include/opencv4/opencv2/core/mat.hpp:346:69: error: ‘array’ in namespace ‘std’ does not name a template type
template<typename _Tp, std::size_t _Nm> _OutputArray(const std::array<_Tp,
^
/usr/local/include/opencv4/opencv2/core/mat.hpp:346:74: error: expected ‘,’ or ‘...’ before ‘<’ token
emplate<typename _Tp, std::size_t _Nm> _OutputArray(const std::array<_Tp, _Nm>&
^
/usr/local/include/opencv4/opencv2/core/mat.hpp:347:54: error: expected ‘)’ before ‘<’ token
template<std::size_t _Nm> _OutputArray(std::array<Mat, _Nm>& arr);
^
/usr/local/include/opencv4/opencv2/core/mat.hpp:348:55: error: ‘array’ in namespace ‘std’ does not name a template type
template<std::size_t _Nm> _OutputArray(const std::array<Mat, _Nm>& arr);
^
/usr/local/include/opencv4/opencv2/core/mat.hpp:348:60: error: expected ‘,’ or ‘...’ before ‘<’ token
template<std::size_t _Nm> _OutputArray(const std::array<Mat, _Nm>& arr);
^
/usr/local/include/opencv4/opencv2/core/mat.hpp:351:77: error: ‘std::array’ has not been declared
late<typename _Tp, std::size_t _Nm> static _OutputArray rawOut(std::array<_Tp,
^
/usr/local/include/opencv4/opencv2/core/mat.hpp:351:82: error: expected ‘,’ or ‘...’ before ‘<’ token
typename _Tp, std::size_t _Nm> static _OutputArray rawOut(std::array<_Tp, _Nm>&
^
In file included from /usr/local/include/opencv4/opencv2/core.hpp:59:0,
from /usr/local/include/opencv4/opencv2/core/core.hpp:48,
from /home/huihui/桌面/行为检测项目/gpu_flow-master/compute_flow.cpp:33:
/usr/local/include/opencv4/opencv2/core/mat.hpp:415:73: error: expected ‘)’ before ‘<’ token
template<typename _Tp, std::size_t _Nm> _InputOutputArray(std::array<_Tp, _Nm>&
^
/usr/local/include/opencv4/opencv2/core/mat.hpp:416:74: error: ‘array’ in namespace ‘std’ does not name a template type
emplate<typename _Tp, std::size_t _Nm> _InputOutputArray(const std::array<_Tp,
^
/usr/local/include/opencv4/opencv2/core/mat.hpp:416:79: error: expected ‘,’ or ‘...’ before ‘<’ token
te<typename _Tp, std::size_t _Nm> _InputOutputArray(const std::array<_Tp, _Nm>&
^
/usr/local/include/opencv4/opencv2/core/mat.hpp:417:59: error: expected ‘)’ before ‘<’ token
template<std::size_t _Nm> _InputOutputArray(std::array<Mat, _Nm>& arr);
^
/usr/local/include/opencv4/opencv2/core/mat.hpp:418:60: error: ‘array’ in namespace ‘std’ does not name a template type
template<std::size_t _Nm> _InputOutputArray(const std::array<Mat, _Nm>& arr
^
/usr/local/include/opencv4/opencv2/core/mat.hpp:418:65: error: expected ‘,’ or ‘...’ before ‘<’ token
template<std::size_t _Nm> _InputOutputArray(const std::array<Mat, _Nm>& arr
^
/usr/local/include/opencv4/opencv2/core/mat.hpp:421:77: error: ‘std::array’ has not been declared
late<typename _Tp, std::size_t _Nm> _InputOutputArray rawInOut(std::array<_Tp,
^
/usr/local/include/opencv4/opencv2/core/mat.hpp:421:82: error: expected ‘,’ or ‘...’ before ‘<’ token
typename _Tp, std::size_t _Nm> _InputOutputArray rawInOut(std::array<_Tp, _Nm>&
^
In file included from /usr/local/include/opencv4/opencv2/core.hpp:52:0,
from /usr/local/include/opencv4/opencv2/core/core.hpp:48,
from /home/huihui/桌面/行为检测项目/gpu_flow-master/compute_flow.cpp:33:
/usr/local/include/opencv4/opencv2/core/mat.hpp: In function ‘bool cv::operator!(const cv::UMatData::MemoryFlag&)’:
/usr/local/include/opencv4/opencv2/core/mat.hpp:566:1: error: ‘underlying_type’ in namespace ‘std’ does not name a template type
CV_ENUM_FLAGS(UMatData::MemoryFlag)
^
/usr/local/include/opencv4/opencv2/core/mat.hpp:566:1: error: ‘UnderlyingType’ does not name a type
CV_ENUM_FLAGS(UMatData::MemoryFlag)
^
/usr/local/include/opencv4/opencv2/core/mat.hpp: In function ‘cv::UMatData::MemoryFlag cv::operator~(const cv::UMatData::MemoryFlag&)’:
/usr/local/include/opencv4/opencv2/core/mat.hpp:566:1: error: ‘underlying_type’ in namespace ‘std’ does not name a template type
CV_ENUM_FLAGS(UMatData::MemoryFlag)
^
/usr/local/include/opencv4/opencv2/core/mat.hpp:566:1: error: ‘UnderlyingType’ does not name a type
CV_ENUM_FLAGS(UMatData::MemoryFlag)
^
/usr/local/include/opencv4/opencv2/core/mat.hpp: In function ‘cv::UMatData::MemoryFlag cv::operator|(const cv::UMatData::MemoryFlag&, const cv::UMatData::MemoryFlag&)’:
/usr/local/include/opencv4/opencv2/core/mat.hpp:566:1: error: ‘underlying_type’ in namespace ‘std’ does not name a template type
CV_ENUM_FLAGS(UMatData::MemoryFlag)
^
/usr/local/include/opencv4/opencv2/core/mat.hpp:566:1: error: ‘UnderlyingType’ does not name a type
CV_ENUM_FLAGS(UMatData::MemoryFlag)
^
/usr/local/include/opencv4/opencv2/core/mat.hpp:566:1: error: ‘UnderlyingType’ does not name a type
CV_ENUM_FLAGS(UMatData::MemoryFlag)
^
/usr/local/include/opencv4/opencv2/core/mat.hpp: In function ‘cv::UMatData::MemoryFlag cv::operator&(const cv::UMatData::MemoryFlag&, const cv::UMatData::MemoryFlag&)’:
/usr/local/include/opencv4/opencv2/core/mat.hpp:566:1: error: ‘underlying_type’ in namespace ‘std’ does not name a template type
CV_ENUM_FLAGS(UMatData::MemoryFlag)
^
/usr/local/include/opencv4/opencv2/core/mat.hpp:566:1: error: ‘UnderlyingType’ does not name a type
CV_ENUM_FLAGS(UMatData::MemoryFlag)
^
/usr/local/include/opencv4/opencv2/core/mat.hpp:566:1: error: ‘UnderlyingType’ does not name a type
CV_ENUM_FLAGS(UMatData::MemoryFlag)
^
/usr/local/include/opencv4/opencv2/core/mat.hpp: In function ‘cv::UMatData::MemoryFlag cv::operator^(const cv::UMatData::MemoryFlag&, const cv::UMatData::MemoryFlag&)’:
/usr/local/include/opencv4/opencv2/core/mat.hpp:566:1: error: ‘underlying_type’ in namespace ‘std’ does not name a template type
CV_ENUM_FLAGS(UMatData::MemoryFlag)
^
/usr/local/include/opencv4/opencv2/core/mat.hpp:566:1: error: ‘UnderlyingType’ does not name a type
CV_ENUM_FLAGS(UMatData::MemoryFlag)
^
/usr/local/include/opencv4/opencv2/core/mat.hpp:566:1: error: ‘UnderlyingType’ does not name a type
CV_ENUM_FLAGS(UMatData::MemoryFlag)
^
In file included from /usr/local/include/opencv4/opencv2/core.hpp:59:0,
from /usr/local/include/opencv4/opencv2/core/core.hpp:48,
from /home/huihui/桌面/行为检测项目/gpu_flow-master/compute_flow.cpp:33:
/usr/local/include/opencv4/opencv2/core/mat.hpp: At global scope:
/usr/local/include/opencv4/opencv2/core/mat.hpp:1006:53: error: ‘enable_if’ in namespace ‘std’ does not name a template type
template<typename _Tp, typename = typename std::enable_if<std::is_arithmeti
^
/usr/local/include/opencv4/opencv2/core/mat.hpp:1006:62: error: expected ‘>’ before ‘<’ token
template<typename _Tp, typename = typename std::enable_if<std::is_arithmeti
^
/usr/local/include/opencv4/opencv2/core/mat.hpp:1007:29: error: ‘initializer_list’ in namespace ‘std’ does not name a template type
explicit Mat(const std::initializer_list<_Tp> list);
^
/usr/local/include/opencv4/opencv2/core/mat.hpp:1007:45: error: expected ‘,’ or ‘...’ before ‘<’ token
explicit Mat(const std::initializer_list<_Tp> list);
^
/usr/local/include/opencv4/opencv2/core/mat.hpp:1007:55: error: default template arguments may not be used in function templates without -std=c++11 or -std=gnu++11
explicit Mat(const std::initializer_list<_Tp> list);
^
/usr/local/include/opencv4/opencv2/core/mat.hpp:1011:52: error: ‘initializer_list’ in namespace ‘std’ does not name a template type
template explicit Mat(const std::initializer_list sizes,
^
/usr/local/include/opencv4/opencv2/core/mat.hpp:1011:68: error: expected ‘,’ or ‘...’ before ‘<’ token
template explicit Mat(const std::initializer_list sizes,
^
/usr/local/include/opencv4/opencv2/core/mat.hpp:1015:64: error: ‘array’ in namespace ‘std’ does not name a template type
template<typename _Tp, size_t _Nm> explicit Mat(const std::array<_Tp, _Nm>&
^
/usr/local/include/opencv4/opencv2/core/mat.hpp:1015:69: error: expected ‘,’ or ‘...’ before ‘<’ token
template<typename _Tp, size_t _Nm> explicit Mat(const std::array<_Tp, Nm>&
^
/usr/local/include/opencv4/opencv2/core/mat.hpp:1643:59: error: ‘array’ in namespace ‘std’ does not name a template type
template<typename Tp, std::size_t Nm> operator std::array<Tp, Nm>() con
^
/usr/local/include/opencv4/opencv2/core/mat.hpp:2067:12: error: expected ‘,’ or ‘...’ before ‘&&’ token
Mat(Mat&& m);
^
/usr/local/include/opencv4/opencv2/core/mat.hpp:2067:16: error: invalid constructor; you probably meant ‘cv::Mat (const cv::Mat&)’
Mat(Mat&& m);
^
/usr/local/include/opencv4/opencv2/core/mat.hpp:2068:25: error: expected ‘,’ or ‘...’ before ‘&&’ token
Mat& operator = (Mat&& m);
^
/usr/local/include/opencv4/opencv2/core/mat.hpp:2222:31: error: expected ‘)’ before ‘<’ token
Mat
(std::initializer_list<Tp> values);
^
/usr/local/include/opencv4/opencv2/core/mat.hpp:2223:30: error: ‘initializer_list’ in namespace ‘std’ does not name a template type
explicit Mat
(const std::initializer_list sizes, const std::initialize
^
/usr/local/include/opencv4/opencv2/core/mat.hpp:2223:46: error: expected ‘,’ or ‘...’ before ‘<’ token
explicit Mat
(const std::initializer_list sizes, const std::initialize
^
/usr/local/include/opencv4/opencv2/core/mat.hpp:2225:57: error: ‘array’ in namespace ‘std’ does not name a template type
template <std::size_t Nm> explicit Mat(const std::array<Tp, Nm>& arr, b
^
/usr/local/include/opencv4/opencv2/core/mat.hpp:2225:62: error: expected ‘,’ or ‘...’ before ‘<’ token
template <std::size_t Nm> explicit Mat(const std::array<Tp, Nm>& arr, b
^
/usr/local/include/opencv4/opencv2/core/mat.hpp:2324:45: error: ‘array’ in namespace ‘std’ does not name a template type
template<std::size_t Nm> operator std::array<Tp, Nm>() const;
^
/usr/local/include/opencv4/opencv2/core/mat.hpp:2331:14: error: expected ‘,’ or ‘...’ before ‘&&’ token
Mat
(Mat
&& m);
^
/usr/local/include/opencv4/opencv2/core/mat.hpp:2331:18: error: invalid constructor; you probably meant ‘cv::Mat
<Tp> (const cv::Mat<Tp>&)’
Mat
(Mat
&& m);
^
/usr/local/include/opencv4/opencv2/core/mat.hpp:2332:27: error: expected ‘,’ or ‘...’ before ‘&&’ token
Mat
& operator = (Mat
&& m);
^
/usr/local/include/opencv4/opencv2/core/mat.hpp:2334:13: error: expected ‘,’ or ‘...’ before ‘&&’ token
Mat
(Mat&& m);
^
/usr/local/include/opencv4/opencv2/core/mat.hpp:2335:26: error: expected ‘,’ or ‘...’ before ‘&&’ token
Mat& operator = (Mat&& m);
^
/usr/local/include/opencv4/opencv2/core/mat.hpp:2337:17: error: expected ‘,’ or ‘...’ before ‘&&’ token
Mat(MatExpr&& e);
^
/usr/local/include/opencv4/opencv2/core/mat.hpp:2534:14: error: expected ‘,’ or ‘...’ before ‘&&’ token
UMat(UMat&& m);
^
/usr/local/include/opencv4/opencv2/core/mat.hpp:2534:18: error: invalid constructor; you probably meant ‘cv::UMat (const cv::UMat&)’
UMat(UMat&& m);
^
/usr/local/include/opencv4/opencv2/core/mat.hpp:2535:27: error: expected ‘,’ or ‘...’ before ‘&&’ token
UMat& operator = (UMat&& m);
^
In file included from /usr/local/include/opencv4/opencv2/core/mat.hpp:3661:0,
from /usr/local/include/opencv4/opencv2/core.hpp:59,
from /usr/local/include/opencv4/opencv2/core/core.hpp:48,
from /home/huihui/桌面/行为检测项目/gpu_flow-master/compute_flow.cpp:33:
/usr/local/include/opencv4/opencv2/core/mat.inl.hpp: In member function ‘void cv::InputArray::init(int, const void*, cv::Size)’:
/usr/local/include/opencv4/opencv2/core/mat.inl.hpp:80:41: error: ambiguous overload for ‘operator=’ (operand types are ‘cv::Size {aka cv::Size
}’ and ‘cv::Size {aka cv::Size}’)
{ flags = _flags; obj = (void*)_obj; sz = sz; }
^
In file included from /usr/local/include/opencv4/opencv2/core.hpp:58:0,
from /usr/local/include/opencv4/opencv2/core/core.hpp:48,
from /home/huihui/桌面/行为检测项目/gpu_flow-master/compute_flow.cpp:33:
/usr/local/include/opencv4/opencv2/core/types.hpp:1707:13: note: candidate: cv::Size
<Tp>& cv::Size<Tp>::operator=(const cv::Size<_Tp>&) [with Tp = int]
Size
<Tp>& Size<Tp>::operator = (const Size<Tp>& sz)
^
/usr/local/include/opencv4/opencv2/core/types.hpp:1714:13: note: candidate: cv::Size
<Tp>& cv::Size<Tp>::operator=(cv::Size<_Tp>) [with Tp = int]
Size
<Tp>& Size<Tp>::operator = (Size<_Tp>&& sz) CV_NOEXCEPT
^
In file included from /usr/local/include/opencv4/opencv2/core/mat.hpp:3661:0,
from /usr/local/include/opencv4/opencv2/core.hpp:59,
from /usr/local/include/opencv4/opencv2/core/core.hpp:48,
from /home/huihui/桌面/行为检测项目/gpu_flow-master/compute_flow.cpp:33:
/usr/local/include/opencv4/opencv2/core/mat.inl.hpp: At global scope:
/usr/local/include/opencv4/opencv2/core/mat.inl.hpp:98:37: error: ‘array’ in namespace ‘std’ does not name a template type
_InputArray::_InputArray(const std::array<_Tp, _Nm>& arr)
^
/usr/local/include/opencv4/opencv2/core/mat.inl.hpp:98:42: error: expected ‘,’ or ‘...’ before ‘<’ token
_InputArray::_InputArray(const std::array<_Tp, _Nm>& arr)
^
/usr/local/include/opencv4/opencv2/core/mat.inl.hpp: In constructor ‘cv::_InputArray::_InputArray(int)’:
/usr/local/include/opencv4/opencv2/core/mat.inl.hpp:99:86: error: ‘arr’ was not declared in this scope

  • FIXED_SIZE + STD_ARRAY + traits::Type<_Tp>::value + ACCESS_READ, arr.data(),
    ^
    /usr/local/include/opencv4/opencv2/core/mat.inl.hpp: At global scope:
    /usr/local/include/opencv4/opencv2/core/mat.inl.hpp:102:37: error: ‘array’ in namespace ‘std’ does not name a template type
    _InputArray::_InputArray(const std::array<Mat, _Nm>& arr)
    ^
    /usr/local/include/opencv4/opencv2/core/mat.inl.hpp:102:42: error: expected ‘,’ or ‘...’ before ‘<’ token
    _InputArray::_InputArray(const std::array<Mat, _Nm>& arr)
    ^
    /usr/local/include/opencv4/opencv2/core/mat.inl.hpp: In constructor ‘cv::_InputArray::_InputArray(int)’:
    /usr/local/include/opencv4/opencv2/core/mat.inl.hpp:103:37: error: ‘arr’ was not declared in this scope
    { init(STD_ARRAY_MAT + ACCESS_READ, arr.data(), Size(1, _Nm)); }
    ^
    /usr/local/include/opencv4/opencv2/core/mat.inl.hpp: At global scope:
    /usr/local/include/opencv4/opencv2/core/mat.inl.hpp:157:43: error: ‘array’ in namespace ‘std’ does not name a template type
    _InputArray _InputArray::rawIn(const std::array<_Tp, _Nm>& arr)
    ^
    /usr/local/include/opencv4/opencv2/core/mat.inl.hpp:157:48: error: expected ‘,’ or ‘...’ before ‘<’ token
    _InputArray _InputArray::rawIn(const std::array<_Tp, _Nm>& arr)
    ^
    /usr/local/include/opencv4/opencv2/core/mat.inl.hpp: In static member function ‘static cv::_InputArray cv::_InputArray::rawIn(int)’:
    /usr/local/include/opencv4/opencv2/core/mat.inl.hpp:161:20: error: ‘arr’ was not declared in this scope
    v.obj = (void*)arr.data();
    ^
    /usr/local/include/opencv4/opencv2/core/mat.inl.hpp: At global scope:
    /usr/local/include/opencv4/opencv2/core/mat.inl.hpp:200:33: error: ‘cv::_OutputArray::_OutputArray’ declared as an ‘inline’ variable
    _OutputArray::_OutputArray(std::array<_Tp, _Nm>& arr)
    ^
    /usr/local/include/opencv4/opencv2/core/mat.inl.hpp:200:33: error: ‘int cv::_OutputArray::_OutputArray’ is not a static data member of ‘class cv::_OutputArray’
    /usr/local/include/opencv4/opencv2/core/mat.inl.hpp:200:33: error: template definition of non-template ‘int cv::_OutputArray::_OutputArray’
    /usr/local/include/opencv4/opencv2/core/mat.inl.hpp:200:28: error: ‘array’ is not a member of ‘std’
    _OutputArray::_OutputArray(std::array<_Tp, _Nm>& arr)
    ^
    /usr/local/include/opencv4/opencv2/core/mat.inl.hpp:200:42: error: expected primary-expression before ‘,’ token
    _OutputArray::_OutputArray(std::array<_Tp, _Nm>& arr)
    ^
    /usr/local/include/opencv4/opencv2/core/mat.inl.hpp:200:50: error: ‘arr’ was not declared in this scope
    _OutputArray::_OutputArray(std::array<_Tp, _Nm>& arr)
    ^
    /usr/local/include/opencv4/opencv2/core/mat.inl.hpp:204:33: error: ‘cv::_OutputArray::_OutputArray’ declared as an ‘inline’ variable
    _OutputArray::_OutputArray(std::array<Mat, _Nm>& arr)
    ^
    /usr/local/include/opencv4/opencv2/core/mat.inl.hpp:204:33: error: ‘int cv::_OutputArray::_OutputArray’ is not a static data member of ‘class cv::_OutputArray’
    /usr/local/include/opencv4/opencv2/core/mat.inl.hpp:204:33: error: template definition of non-template ‘int cv::_OutputArray::_OutputArray’
    /usr/local/include/opencv4/opencv2/core/mat.inl.hpp:204:28: error: ‘array’ is not a member of ‘std’
    _OutputArray::_OutputArray(std::array<Mat, _Nm>& arr)
    ^
    /usr/local/include/opencv4/opencv2/core/mat.inl.hpp:204:42: error: expected primary-expression before ‘,’ token
    _OutputArray::_OutputArray(std::array<Mat, _Nm>& arr)
    ^
    /usr/local/include/opencv4/opencv2/core/mat.inl.hpp:204:50: error: ‘arr’ was not declared in this scope
    _OutputArray::_OutputArray(std::array<Mat, _Nm>& arr)
    ^
    /usr/local/include/opencv4/opencv2/core/mat.inl.hpp:232:39: error: ‘array’ in namespace ‘std’ does not name a template type
    _OutputArray::_OutputArray(const std::array<_Tp, _Nm>& arr)
    ^
    /usr/local/include/opencv4/opencv2/core/mat.inl.hpp:232:44: error: expected ‘,’ or ‘...’ before ‘<’ token
    _OutputArray::_OutputArray(const std::array<_Tp, _Nm>& arr)
    ^
    /usr/local/include/opencv4/opencv2/core/mat.inl.hpp: In constructor ‘cv::_OutputArray::_OutputArray(int)’:
    /usr/local/include/opencv4/opencv2/core/mat.inl.hpp:233:87: error: ‘arr’ was not declared in this scope
  • FIXED_SIZE + STD_ARRAY + traits::Type<_Tp>::value + ACCESS_WRITE, arr.data(),
    ^
    /usr/local/include/opencv4/opencv2/core/mat.inl.hpp: At global scope:
    /usr/local/include/opencv4/opencv2/core/mat.inl.hpp:236:39: error: ‘array’ in namespace ‘std’ does not name a template type
    _OutputArray::_OutputArray(const std::array<Mat, _Nm>& arr)
    ^
    /usr/local/include/opencv4/opencv2/core/mat.inl.hpp:236:44: error: expected ‘,’ or ‘...’ before ‘<’ token
    _OutputArray::_OutputArray(const std::array<Mat, _Nm>& arr)
    ^
    /usr/local/include/opencv4/opencv2/core/mat.inl.hpp: In constructor ‘cv::_OutputArray::_OutputArray(int)’:
    /usr/local/include/opencv4/opencv2/core/mat.inl.hpp:237:51: error: ‘arr’ was not declared in this scope
    { init(FIXED_SIZE + STD_ARRAY_MAT + ACCESS_WRITE, arr.data(), Size(1, _Nm)); }
    ^
    /usr/local/include/opencv4/opencv2/core/mat.inl.hpp: At global scope:
    /usr/local/include/opencv4/opencv2/core/mat.inl.hpp:303:40: error: ‘cv::_OutputArray::rawOut’ declared as an ‘inline’ variable
    _OutputArray _OutputArray::rawOut(std::array<_Tp, _Nm>& arr)
    ^
    /usr/local/include/opencv4/opencv2/core/mat.inl.hpp:303:40: error: ‘cv::_OutputArray cv::_OutputArray::rawOut’ is not a static data member of ‘class cv::_OutputArray’
    /usr/local/include/opencv4/opencv2/core/mat.inl.hpp:303:40: error: template definition of non-template ‘cv::_OutputArray cv::_OutputArray::rawOut’
    /usr/local/include/opencv4/opencv2/core/mat.inl.hpp:303:35: error: ‘array’ is not a member of ‘std’
    _OutputArray _OutputArray::rawOut(std::array<_Tp, _Nm>& arr)
    ^
    /usr/local/include/opencv4/opencv2/core/mat.inl.hpp:303:49: error: expected primary-expression before ‘,’ token
    _OutputArray _OutputArray::rawOut(std::array<_Tp, _Nm>& arr)
    ^
    /usr/local/include/opencv4/opencv2/core/mat.inl.hpp:303:57: error: ‘arr’ was not declared in this scope
    _OutputArray _OutputArray::rawOut(std::array<_Tp, _Nm>& arr)
    ^
    /usr/local/include/opencv4/opencv2/core/mat.inl.hpp:326:43: error: ‘cv::_InputOutputArray::_InputOutputArray’ declared as an ‘inline’ variable
    _InputOutputArray::_InputOutputArray(std::array<_Tp, _Nm>& arr)
    ^
    /usr/local/include/opencv4/opencv2/core/mat.inl.hpp:326:43: error: ‘int cv::_InputOutputArray::_InputOutputArray’ is not a static data member of ‘class cv::_InputOutputArray’
    /usr/local/include/opencv4/opencv2/core/mat.inl.hpp:326:43: error: template definition of non-template ‘int cv::_InputOutputArray::_InputOutputArray’
    /usr/local/include/opencv4/opencv2/core/mat.inl.hpp:326:38: error: ‘array’ is not a member of ‘std’
    _InputOutputArray::_InputOutputArray(std::array<_Tp, _Nm>& arr)
    ^
    /usr/local/include/opencv4/opencv2/core/mat.inl.hpp:326:52: error: expected primary-expression before ‘,’ token
    _InputOutputArray::_InputOutputArray(std::array<_Tp, _Nm>& arr)
    ^
    /usr/local/include/opencv4/opencv2/core/mat.inl.hpp:326:60: error: ‘arr’ was not declared in this scope
    _InputOutputArray::_InputOutputArray(std::array<_Tp, _Nm>& arr)
    ^
    /usr/local/include/opencv4/opencv2/core/mat.inl.hpp:330:43: error: ‘cv::_InputOutputArray::_InputOutputArray’ declared as an ‘inline’ variable
    _InputOutputArray::_InputOutputArray(std::array<Mat, _Nm>& arr)
    ^
    /usr/local/include/opencv4/opencv2/core/mat.inl.hpp:330:43: error: ‘int cv::_InputOutputArray::_InputOutputArray’ is not a static data member of ‘class cv::_InputOutputArray’
    /usr/local/include/opencv4/opencv2/core/mat.inl.hpp:330:43: error: template definition of non-template ‘int cv::_InputOutputArray::_InputOutputArray’
    /usr/local/include/opencv4/opencv2/core/mat.inl.hpp:330:38: error: ‘array’ is not a member of ‘std’
    _InputOutputArray::_InputOutputArray(std::array<Mat, _Nm>& arr)
    ^
    /usr/local/include/opencv4/opencv2/core/mat.inl.hpp:330:52: error: expected primary-expression before ‘,’ token
    _InputOutputArray::_InputOutputArray(std::array<Mat, _Nm>& arr)
    ^
    /usr/local/include/opencv4/opencv2/core/mat.inl.hpp:330:60: error: ‘arr’ was not declared in this scope
    _InputOutputArray::_InputOutputArray(std::array<Mat, _Nm>& arr)
    ^
    /usr/local/include/opencv4/opencv2/core/mat.inl.hpp:358:49: error: ‘array’ in namespace ‘std’ does not name a template type
    _InputOutputArray::_InputOutputArray(const std::array<_Tp, _Nm>& arr)
    ^
    /usr/local/include/opencv4/opencv2/core/mat.inl.hpp:358:54: error: expected ‘,’ or ‘...’ before ‘<’ token
    _InputOutputArray::_InputOutputArray(const std::array<_Tp, _Nm>& arr)
    ^
    /usr/local/include/opencv4/opencv2/core/mat.inl.hpp: In constructor ‘cv::_InputOutputArray::_InputOutputArray(int)’:
    /usr/local/include/opencv4/opencv2/core/mat.inl.hpp:359:84: error: ‘arr’ was not declared in this scope
    PE + FIXED_SIZE + STD_ARRAY + traits::Type<_Tp>::value + ACCESS_RW, arr.data(),
    ^
    /usr/local/include/opencv4/opencv2/core/mat.inl.hpp: At global scope:
    /usr/local/include/opencv4/opencv2/core/mat.inl.hpp:362:49: error: ‘array’ in namespace ‘std’ does not name a template type
    _InputOutputArray::_InputOutputArray(const std::array<Mat, _Nm>& arr)
    ^
    /usr/local/include/opencv4/opencv2/core/mat.inl.hpp:362:54: error: expected ‘,’ or ‘...’ before ‘<’ token
    _InputOutputArray::_InputOutputArray(const std::array<Mat, _Nm>& arr)
    ^
    /usr/local/include/opencv4/opencv2/core/mat.inl.hpp: In constructor ‘cv::_InputOutputArray::_InputOutputArray(int)’:
    /usr/local/include/opencv4/opencv2/core/mat.inl.hpp:363:48: error: ‘arr’ was not declared in this scope
    { init(FIXED_SIZE + STD_ARRAY_MAT + ACCESS_RW, arr.data(), Size(1, _Nm)); }
    ^
    /usr/local/include/opencv4/opencv2/core/mat.inl.hpp: At global scope:
    /usr/local/include/opencv4/opencv2/core/mat.inl.hpp:431:52: error: ‘cv::_InputOutputArray::rawInOut’ declared as an ‘inline’ variable
    _InputOutputArray _InputOutputArray::rawInOut(std::array<_Tp, _Nm>& arr)
    ^
    /usr/local/include/opencv4/opencv2/core/mat.inl.hpp:431:52: error: ‘cv::_InputOutputArray cv::_InputOutputArray::rawInOut’ is not a static data member of ‘class cv::_InputOutputArray’
    /usr/local/include/opencv4/opencv2/core/mat.inl.hpp:431:52: error: template definition of non-template ‘cv::_InputOutputArray cv::_InputOutputArray::rawInOut’
    /usr/local/include/opencv4/opencv2/core/mat.inl.hpp:431:47: error: ‘array’ is not a member of ‘std’
    _InputOutputArray _InputOutputArray::rawInOut(std::array<_Tp, _Nm>& arr)
    ^
    /usr/local/include/opencv4/opencv2/core/mat.inl.hpp:431:61: error: expected primary-expression before ‘,’ token
    _InputOutputArray _InputOutputArray::rawInOut(std::array<_Tp, _Nm>& arr)
    ^
    /usr/local/include/opencv4/opencv2/core/mat.inl.hpp:431:69: error: ‘arr’ was not declared in this scope
    _InputOutputArray _InputOutputArray::rawInOut(std::array<_Tp, _Nm>& arr)
    ^
    /usr/local/include/opencv4/opencv2/core/mat.inl.hpp:619:21: error: ‘initializer_list’ in namespace ‘std’ does not name a template type
    Mat::Mat(const std::initializer_list<_Tp> list)
    ^
    /usr/local/include/opencv4/opencv2/core/mat.inl.hpp:619:37: error: expected ‘,’ or ‘...’ before ‘<’ token
    Mat::Mat(const std::initializer_list<_Tp> list)
    ^
    In file included from /usr/local/include/opencv4/opencv2/core.hpp:54:0,
    from /usr/local/include/opencv4/opencv2/core/core.hpp:48,
    from /home/huihui/桌面/行为检测项目/gpu_flow-master/compute_flow.cpp:33:
    /usr/local/include/opencv4/opencv2/core/mat.inl.hpp: In constructor ‘cv::Mat::Mat(int)’:
    /usr/local/include/opencv4/opencv2/core/mat.inl.hpp:622:5: error: ‘list’ was not declared in this scope
    CV_Assert(list.size() != 0);
    ^
    /usr/local/include/opencv4/opencv2/core/mat.inl.hpp:622:5: note: suggested alternatives:
    In file included from /usr/include/c++/5/list:63:0,
    from /usr/include/x86_64-linux-gnu/qt5/QtCore/qlist.h:43,
    from /usr/include/x86_64-linux-gnu/qt5/QtCore/qobject.h:43,
    from /usr/include/x86_64-linux-gnu/qt5/QtCore/qiodevice.h:39,
    from /usr/include/x86_64-linux-gnu/qt5/QtCore/qfiledevice.h:37,
    from /usr/include/x86_64-linux-gnu/qt5/QtCore/qfile.h:37,
    from /usr/include/x86_64-linux-gnu/qt5/QtCore/qfileinfo.h:37,
    from /usr/include/x86_64-linux-gnu/qt5/QtCore/qdir.h:38,
    from /usr/include/x86_64-linux-gnu/qt5/QtCore/qdiriterator.h:37,
    from /usr/include/x86_64-linux-gnu/qt5/QtCore/QDirIterator:1,
    from /home/huihui/桌面/行为检测项目/gpu_flow-master/compute_flow.cpp:29:
    /usr/include/c++/5/bits/stl_list.h:507:11: note: ‘std::__cxx11::list’
    class list : protected _List_base<_Tp, _Alloc>
    ^
    /usr/include/c++/5/bits/stl_list.h:507:11: note: ‘std::__cxx11::list’
    In file included from /usr/local/include/opencv4/opencv2/core/mat.hpp:3661:0,
    from /usr/local/include/opencv4/opencv2/core.hpp:59,
    from /usr/local/include/opencv4/opencv2/core/core.hpp:48,
    from /home/huihui/桌面/行为检测项目/gpu_flow-master/compute_flow.cpp:33:
    /usr/local/include/opencv4/opencv2/core/mat.inl.hpp:623:14: error: ‘list’ was not declared in this scope
    Mat((int)list.size(), 1, traits::Type<_Tp>::value, (uchar*)list.begin()).co
    ^
    /usr/local/include/opencv4/opencv2/core/mat.inl.hpp:623:14: note: suggested alternatives:
    In file included from /usr/include/c++/5/list:63:0,
    from /usr/include/x86_64-linux-gnu/qt5/QtCore/qlist.h:43,
    from /usr/include/x86_64-linux-gnu/qt5/QtCore/qobject.h:43,
    from /usr/include/x86_64-linux-gnu/qt5/QtCore/qiodevice.h:39,
    from /usr/include/x86_64-linux-gnu/qt5/QtCore/qfiledevice.h:37,
    from /usr/include/x86_64-linux-gnu/qt5/QtCore/qfile.h:37,
    from /usr/include/x86_64-linux-gnu/qt5/QtCore/qfileinfo.h:37,
    from /usr/include/x86_64-linux-gnu/qt5/QtCore/qdir.h:38,
    from /usr/include/x86_64-linux-gnu/qt5/QtCore/qdiriterator.h:37,
    from /usr/include/x86_64-linux-gnu/qt5/QtCore/QDirIterator:1,
    from /home/huihui/桌面/行为检测项目/gpu_flow-master/compute_flow.cpp:29:
    /usr/include/c++/5/bits/stl_list.h:507:11: note: ‘std::__cxx11::list’
    class list : protected _List_base<_Tp, _Alloc>
    ^
    /usr/include/c++/5/bits/stl_list.h:507:11: note: ‘std::__cxx11::list’
    In file included from /usr/local/include/opencv4/opencv2/core/mat.hpp:3661:0,
    from /usr/local/include/opencv4/opencv2/core.hpp:59,
    from /usr/local/include/opencv4/opencv2/core/core.hpp:48,
    from /home/huihui/桌面/行为检测项目/gpu_flow-master/compute_flow.cpp:33:
    /usr/local/include/opencv4/opencv2/core/mat.inl.hpp: At global scope:
    /usr/local/include/opencv4/opencv2/core/mat.inl.hpp:627:21: error: ‘initializer_list’ in namespace ‘std’ does not name a template type
    Mat::Mat(const std::initializer_list sizes, const std::initializer_list<_T
    ^
    /usr/local/include/opencv4/opencv2/core/mat.inl.hpp:627:37: error: expected ‘,’ or ‘...’ before ‘<’ token
    Mat::Mat(const std::initializer_list sizes, const std::initializer_list<_T
    ^
    /usr/local/include/opencv4/opencv2/core/mat.inl.hpp: In constructor ‘cv::Mat::Mat(int)’:
    /usr/local/include/opencv4/opencv2/core/mat.inl.hpp:631:14: error: ‘s’ does not name a type
    for(auto s : sizes)
    ^
    In file included from /usr/local/include/opencv4/opencv2/core.hpp:54:0,
    from /usr/local/include/opencv4/opencv2/core/core.hpp:48,
    from /home/huihui/桌面/行为检测项目/gpu_flow-master/compute_flow.cpp:33:
    /usr/local/include/opencv4/opencv2/core/mat.inl.hpp:633:5: error: expected ‘;’ before ‘do’
    CV_Assert(list.size() != 0);
    ^
    /usr/local/include/opencv4/opencv2/core/mat.inl.hpp:633:5: error: expected primary-expression before ‘do’
    /usr/local/include/opencv4/opencv2/core/mat.inl.hpp:633:5: error: expected ‘;’ before ‘do’
    /usr/local/include/opencv4/opencv2/core/mat.inl.hpp:633:5: error: expected primary-expression before ‘do’
    /usr/local/include/opencv4/opencv2/core/mat.inl.hpp:633:5: error: expected ‘)’ before ‘do’
    /usr/local/include/opencv4/opencv2/core/mat.inl.hpp:633:5: error: ‘list’ was not declared in this scope
    CV_Assert(list.size() != 0);
    ^
    /usr/local/include/opencv4/opencv2/core/mat.inl.hpp:633:5: note: suggested alternatives:
    In file included from /usr/include/c++/5/list:63:0,
    from /usr/include/x86_64-linux-gnu/qt5/QtCore/qlist.h:43,
    from /usr/include/x86_64-linux-gnu/qt5/QtCore/qobject.h:43,
    from /usr/include/x86_64-linux-gnu/qt5/QtCore/qiodevice.h:39,
    from /usr/include/x86_64-linux-gnu/qt5/QtCore/qfiledevice.h:37,
    from /usr/include/x86_64-linux-gnu/qt5/QtCore/qfile.h:37,
    from /usr/include/x86_64-linux-gnu/qt5/QtCore/qfileinfo.h:37,
    from /usr/include/x86_64-linux-gnu/qt5/QtCore/qdir.h:38,
    from /usr/include/x86_64-linux-gnu/qt5/QtCore/qdiriterator.h:37,
    from /usr/include/x86_64-linux-gnu/qt5/QtCore/QDirIterator:1,
    from /home/huihui/桌面/行为检测项目/gpu_flow-master/compute_flow.cpp:29:
    /usr/include/c++/5/bits/stl_list.h:507:11: note: ‘std::__cxx11::list’
    class list : protected _List_base<_Tp, _Alloc>
    ^
    /usr/include/c++/5/bits/stl_list.h:507:11: note: ‘std::__cxx11::list’
    In file included from /usr/local/include/opencv4/opencv2/core.hpp:54:0,
    from /usr/local/include/opencv4/opencv2/core/core.hpp:48,
    from /home/huihui/桌面/行为检测项目/gpu_flow-master/compute_flow.cpp:33:
    /usr/local/include/opencv4/opencv2/core/mat.inl.hpp:634:5: error: ‘list’ was not declared in this scope
    CV_Assert(size_total == list.size());
    ^
    /usr/local/include/opencv4/opencv2/core/mat.inl.hpp:634:5: note: suggested alternatives:
    In file included from /usr/include/c++/5/list:63:0,
    from /usr/include/x86_64-linux-gnu/qt5/QtCore/qlist.h:43,
    from /usr/include/x86_64-linux-gnu/qt5/QtCore/qobject.h:43,
    from /usr/include/x86_64-linux-gnu/qt5/QtCore/qiodevice.h:39,
    from /usr/include/x86_64-linux-gnu/qt5/QtCore/qfiledevice.h:37,
    from /usr/include/x86_64-linux-gnu/qt5/QtCore/qfile.h:37,
    from /usr/include/x86_64-linux-gnu/qt5/QtCore/qfileinfo.h:37,
    from /usr/include/x86_64-linux-gnu/qt5/QtCore/qdir.h:38,
    from /usr/include/x86_64-linux-gnu/qt5/QtCore/qdiriterator.h:37,
    from /usr/include/x86_64-linux-gnu/qt5/QtCore/QDirIterator:1,
    from /home/huihui/桌面/行为检测项目/gpu_flow-master/compute_flow.cpp:29:
    /usr/include/c++/5/bits/stl_list.h:507:11: note: ‘std::__cxx11::list’
    class list : protected _List_base<_Tp, _Alloc>
    ^
    /usr/include/c++/5/bits/stl_list.h:507:11: note: ‘std::__cxx11::list’
    In file included from /usr/local/include/opencv4/opencv2/core/mat.hpp:3661:0,
    from /usr/local/include/opencv4/opencv2/core.hpp:59,
    from /usr/local/include/opencv4/opencv2/core/core.hpp:48,
    from /home/huihui/桌面/行为检测项目/gpu_flow-master/compute_flow.cpp:33:
    /usr/local/include/opencv4/opencv2/core/mat.inl.hpp:635:14: error: ‘sizes’ was not declared in this scope
    Mat((int)sizes.size(), (int*)sizes.begin(), traits::Type<_Tp>::value, (ucha
    ^
    /usr/local/include/opencv4/opencv2/core/mat.inl.hpp:635:83: error: ‘list’ was not declared in this scope
    izes.size(), (int*)sizes.begin(), traits::Type<_Tp>::value, (uchar*)list.begin(
    ^
    /usr/local/include/opencv4/opencv2/core/mat.inl.hpp:635:83: note: suggested alternatives:
    In file included from /usr/include/c++/5/list:63:0,
    from /usr/include/x86_64-linux-gnu/qt5/QtCore/qlist.h:43,
    from /usr/include/x86_64-linux-gnu/qt5/QtCore/qobject.h:43,
    from /usr/include/x86_64-linux-gnu/qt5/QtCore/qiodevice.h:39,
    from /usr/include/x86_64-linux-gnu/qt5/QtCore/qfiledevice.h:37,
    from /usr/include/x86_64-linux-gnu/qt5/QtCore/qfile.h:37,
    from /usr/include/x86_64-linux-gnu/qt5/QtCore/qfileinfo.h:37,
    from /usr/include/x86_64-linux-gnu/qt5/QtCore/qdir.h:38,
    from /usr/include/x86_64-linux-gnu/qt5/QtCore/qdiriterator.h:37,
    from /usr/include/x86_64-linux-gnu/qt5/QtCore/QDirIterator:1,
    from /home/huihui/桌面/行为检测项目/gpu_flow-master/compute_flow.cpp:29:
    /usr/include/c++/5/bits/stl_list.h:507:11: note: ‘std::__cxx11::list’
    class list : protected _List_base<_Tp, _Alloc>
    ^
    /usr/include/c++/5/bits/stl_list.h:507:11: note: ‘std::__cxx11::list’
    In file included from /usr/local/include/opencv4/opencv2/core/mat.hpp:3661:0,
    from /usr/local/include/opencv4/opencv2/core.hpp:59,
    from /usr/local/include/opencv4/opencv2/core/core.hpp:48,
    from /home/huihui/桌面/行为检测项目/gpu_flow-master/compute_flow.cpp:33:
    /usr/local/include/opencv4/opencv2/core/mat.inl.hpp: At global scope:
    /usr/local/include/opencv4/opencv2/core/mat.inl.hpp:639:21: error: ‘array’ in namespace ‘std’ does not name a template type
    Mat::Mat(const std::array<_Tp, _Nm>& arr, bool copyData)
    ^
    /usr/local/include/opencv4/opencv2/core/mat.inl.hpp:639:26: error: expected ‘,’ or ‘...’ before ‘<’ token
    Mat::Mat(const std::array<_Tp, _Nm>& arr, bool copyData)
    ^
    /usr/local/include/opencv4/opencv2/core/mat.inl.hpp: In constructor ‘cv::Mat::Mat(int)’:
    /usr/local/include/opencv4/opencv2/core/mat.inl.hpp:640:90: error: ‘arr’ was not declared in this scope
  • traits::Type<_Tp>::value + CV_MAT_CONT_FLAG), dims(2), rows((int)arr.size())
    ^
    /usr/local/include/opencv4/opencv2/core/mat.inl.hpp:645:10: error: ‘copyData’ was not declared in this scope
    if( !copyData )
    ^
    /usr/local/include/opencv4/opencv2/core/mat.inl.hpp: In member function ‘void cv::Mat::assignTo(cv::Mat&, int) const’:
    /usr/local/include/opencv4/opencv2/core/mat.inl.hpp:819:11: error: ambiguous overload for ‘operator=’ (operand types are ‘cv::Mat’ and ‘const cv::Mat’)
    m = this;
    ^
    /usr/local/include/opencv4/opencv2/core/mat.inl.hpp:743:6: note: candidate: cv::Mat& cv::Mat::operator=(const cv::Mat&)
    Mat& Mat::operator = (const Mat& m)
    ^
    In file included from /usr/local/include/opencv4/opencv2/core.hpp:59:0,
    from /usr/local/include/opencv4/opencv2/core/core.hpp:48,
    from /home/huihui/桌面/行为检测项目/gpu_flow-master/compute_flow.cpp:33:
    /usr/local/include/opencv4/opencv2/core/mat.hpp:2068:10: note: candidate: cv::Mat& cv::Mat::operator=(cv::Mat)
    Mat& operator = (Mat&& m);
    ^
    In file included from /usr/local/include/opencv4/opencv2/core/mat.hpp:3661:0,
    from /usr/local/include/opencv4/opencv2/core.hpp:59,
    from /usr/local/include/opencv4/opencv2/core/core.hpp:48,
    from /home/huihui/桌面/行为检测项目/gpu_flow-master/compute_flow.cpp:33:
    /usr/local/include/opencv4/opencv2/core/mat.inl.hpp: At global scope:
    /usr/local/include/opencv4/opencv2/core/mat.inl.hpp:1306:20: error: ‘array’ in namespace ‘std’ does not name a template type
    Mat::operator std::array<_Tp, Nm>() const
    ^
    /usr/local/include/opencv4/opencv2/core/mat.inl.hpp:1380:13: error: expected ‘,’ or ‘...’ before ‘&&’ token
    Mat::Mat(Mat&& m)
    ^
    /usr/local/include/opencv4/opencv2/core/mat.inl.hpp:1380:1: error: prototype for ‘cv::Mat::Mat(cv::Mat)’ does not match any in class ‘cv::Mat’
    Mat::Mat(Mat&& m)
    ^
    In file included from /usr/local/include/opencv4/opencv2/core.hpp:59:0,
    from /usr/local/include/opencv4/opencv2/core/core.hpp:48,
    from /home/huihui/桌面/行为检测项目/gpu_flow-master/compute_flow.cpp:33:
    /usr/local/include/opencv4/opencv2/core/mat.hpp:1038:14: error: candidates are: cv::Mat::Mat(const cv::cuda::GpuMat&)
    explicit Mat(const cuda::GpuMat& m);
    ^
    /usr/local/include/opencv4/opencv2/core/mat.hpp:1035:37: error: template cv::Mat::Mat(const cv::MatCommaInitializer
    <Tp>&)
    template explicit Mat(const MatCommaInitializer
    <Tp>& commaI
    ^
    /usr/local/include/opencv4/opencv2/core/mat.hpp:1031:37: error: template cv::Mat::Mat(const cv::Point3
    <Tp>&, bool)
    template explicit Mat(const Point3
    <Tp>& pt, bool copyData=t
    ^
    /usr/local/include/opencv4/opencv2/core/mat.hpp:1027:37: error: template cv::Mat::Mat(const cv::Point
    <Tp>&, bool)
    template explicit Mat(const Point
    <_Tp>& pt, bool copyData=tr
    ^
    /usr/local/include/opencv4/opencv2/core/mat.hpp:1023:51: error: template<class _Tp, int m, int n> cv::Mat::Mat(const cv::Matx<_Tp, m, n>&, bool)
    template<typename _Tp, int m, int n> explicit Mat(const Matx<_Tp, m, n>& mt
    ^
    /usr/local/include/opencv4/opencv2/core/mat.hpp:1019:44: error: template<class _Tp, int n> cv::Mat::Mat(const cv::Vec<_Tp, m>&, bool)
    template<typename _Tp, int n> explicit Mat(const Vec<_Tp, n>& vec, bool cop
    ^
    /usr/local/include/opencv4/opencv2/core/mat.hpp:1015:49: error: template<class _Tp, long unsigned int _Nm> cv::Mat::Mat(int)
    template<typename _Tp, size_t _Nm> explicit Mat(const std::array<_Tp, _Nm>&
    ^
    /usr/local/include/opencv4/opencv2/core/mat.hpp:1011:37: error: template cv::Mat::Mat(int)
    template explicit Mat(const std::initializer_list sizes,
    ^
    /usr/local/include/opencv4/opencv2/core/mat.hpp:1007:14: error: template<class _Tp, class> cv::Mat::Mat(int)
    explicit Mat(const std::initializer_list<_Tp> list);
    ^
    /usr/local/include/opencv4/opencv2/core/mat.hpp:1002:37: error: template cv::Mat::Mat(const std::vector&, bool)
    template explicit Mat(const std::vector<_Tp>& vec, bool copyD
    ^
    /usr/local/include/opencv4/opencv2/core/mat.hpp:984:5: error: cv::Mat::Mat(const cv::Mat&, const std::vectorcv::Range&)
    Mat(const Mat& m, const std::vector& ranges);
    ^
    /usr/local/include/opencv4/opencv2/core/mat.hpp:974:5: error: cv::Mat::Mat(const cv::Mat&, const cv::Range
    )
    Mat(const Mat& m, const Range* ranges);
    ^
    /usr/local/include/opencv4/opencv2/core/mat.hpp:964:5: error: cv::Mat::Mat(const cv::Mat&, const Rect&)
    Mat(const Mat& m, const Rect& roi);
    ^
    /usr/local/include/opencv4/opencv2/core/mat.hpp:954:5: error: cv::Mat::Mat(const cv::Mat&, const cv::Range&, const cv::Range&)
    Mat(const Mat& m, const Range& rowRange, const Range& colRange=Range::all()
    ^
    /usr/local/include/opencv4/opencv2/core/mat.hpp:942:5: error: cv::Mat::Mat(const std::vector&, int, void*, const size_t*)
    Mat(const std::vector& sizes, int type, void* data, const size_t* step
    ^
    /usr/local/include/opencv4/opencv2/core/mat.hpp:928:5: error: cv::Mat::Mat(int, const int*, int, void*, const size_t*)
    Mat(int ndims, const int* sizes, int type, void* data, const size_t* steps=
    ^
    In file included from /usr/local/include/opencv4/opencv2/core/mat.hpp:3661:0,
    from /usr/local/include/opencv4/opencv2/core.hpp:59,
    from /usr/local/include/opencv4/opencv2/core/core.hpp:48,
    from /home/huihui/桌面/行为检测项目/gpu_flow-master/compute_flow.cpp:33:
    /usr/local/include/opencv4/opencv2/core/mat.inl.hpp:572:1: error: cv::Mat::Mat(cv::Size, int, void*, size_t)
    Mat::Mat(Size _sz, int _type, void* _data, size_t _step)
    ^
    /usr/local/include/opencv4/opencv2/core/mat.inl.hpp:543:1: error: cv::Mat::Mat(int, int, int, void*, size_t)
    Mat::Mat(int _rows, int _cols, int _type, void* _data, size_t _step)
    ^
    /usr/local/include/opencv4/opencv2/core/mat.inl.hpp:524:1: error: cv::Mat::Mat(const cv::Mat&)
    Mat::Mat(const Mat& m)
    ^
    /usr/local/include/opencv4/opencv2/core/mat.inl.hpp:515:1: error: cv::Mat::Mat(const std::vector&, int, const Scalar&)
    Mat::Mat(const std::vector& _sz, int _type, const Scalar& _s)
    ^
    /usr/local/include/opencv4/opencv2/core/mat.inl.hpp:498:1: error: cv::Mat::Mat(int, const int*, int, const Scalar&)
    Mat::Mat(int dims, const int* sz, int type, const Scalar& s)
    ^
    /usr/local/include/opencv4/opencv2/core/mat.inl.hpp:507:1: error: cv::Mat::Mat(const std::vector&, int)
    Mat::Mat(const std::vector& sz, int type)
    ^
    /usr/local/include/opencv4/opencv2/core/mat.inl.hpp:490:1: error: cv::Mat::Mat(int, const int*, int)
    Mat::Mat(int dims, const int* sz, int type)
    ^
    /usr/local/include/opencv4/opencv2/core/mat.inl.hpp:481:1: error: cv::Mat::Mat(cv::Size, int, const Scalar&)
    Mat::Mat(Size sz, int type, const Scalar& s)
    ^
    /usr/local/include/opencv4/opencv2/core/mat.inl.hpp:464:1: error: cv::Mat::Mat(int, int, int, const Scalar&)
    Mat::Mat(int rows, int cols, int type, const Scalar& s)
    ^
    /usr/local/include/opencv4/opencv2/core/mat.inl.hpp:473:1: error: cv::Mat::Mat(cv::Size, int)
    Mat::Mat(Size sz, int type)
    ^
    /usr/local/include/opencv4/opencv2/core/mat.inl.hpp:456:1: error: cv::Mat::Mat(int, int, int)
    Mat::Mat(int rows, int cols, int type)
    ^
    /usr/local/include/opencv4/opencv2/core/mat.inl.hpp:450:1: error: cv::Mat::Mat()
    Mat::Mat()
    ^
    /usr/local/include/opencv4/opencv2/core/mat.inl.hpp:1405:26: error: expected ‘,’ or ‘...’ before ‘&&’ token
    Mat& Mat::operator = (Mat&& m)
    ^
    /usr/local/include/opencv4/opencv2/core/mat.inl.hpp: In member function ‘cv::Mat& cv::Mat::operator=(cv::Mat)’:
    /usr/local/include/opencv4/opencv2/core/mat.inl.hpp:1407:18: error: ‘m’ was not declared in this scope
    if (this == &m)
    ^
    /usr/local/include/opencv4/opencv2/core/mat.inl.hpp:1411:13: error: ‘m’ was not declared in this scope
    flags = m.flags; dims = m.dims; rows = m.rows; cols = m.cols; data = m.data
    ^
    /usr/local/include/opencv4/opencv2/core/mat.inl.hpp: At global scope:
    /usr/local/include/opencv4/opencv2/core/mat.inl.hpp:1685:22: error: ‘cv::Mat
    <Tp>::Mat’ declared as an ‘inline’ variable
    Mat
    <Tp>::Mat(std::initializer_list<Tp> list)
    ^
    /usr/local/include/opencv4/opencv2/core/mat.inl.hpp:1685:22: error: ‘int cv::Mat
    <Tp>::Mat’ is not a static data member of ‘class cv::Mat
    <Tp>’
    /usr/local/include/opencv4/opencv2/core/mat.inl.hpp:1685:22: error: template definition of non-template ‘int cv::Mat
    <Tp>::Mat
    /usr/local/include/opencv4/opencv2/core/mat.inl.hpp:1685:17: error: ‘initializer_list’ is not a member of ‘std’
    Mat
    <Tp>::Mat(std::initializer_list<Tp> list)
    ^
    /usr/local/include/opencv4/opencv2/core/mat.inl.hpp:1685:42: error: expected primary-expression before ‘>’ token
    Mat
    <Tp>::Mat(std::initializer_list<Tp> list)
    ^
    /usr/local/include/opencv4/opencv2/core/mat.inl.hpp:1685:44: error: ‘list’ was not declared in this scope
    Mat
    <Tp>::Mat(std::initializer_list<Tp> list)
    ^
    /usr/local/include/opencv4/opencv2/core/mat.inl.hpp:1685:44: note: suggested alternatives:
    In file included from /usr/include/c++/5/list:63:0,
    from /usr/include/x86_64-linux-gnu/qt5/QtCore/qlist.h:43,
    from /usr/include/x86_64-linux-gnu/qt5/QtCore/qobject.h:43,
    from /usr/include/x86_64-linux-gnu/qt5/QtCore/qiodevice.h:39,
    from /usr/include/x86_64-linux-gnu/qt5/QtCore/qfiledevice.h:37,
    from /usr/include/x86_64-linux-gnu/qt5/QtCore/qfile.h:37,
    from /usr/include/x86_64-linux-gnu/qt5/QtCore/qfileinfo.h:37,
    from /usr/include/x86_64-linux-gnu/qt5/QtCore/qdir.h:38,
    from /usr/include/x86_64-linux-gnu/qt5/QtCore/qdiriterator.h:37,
    from /usr/include/x86_64-linux-gnu/qt5/QtCore/QDirIterator:1,
    from /home/huihui/桌面/行为检测项目/gpu_flow-master/compute_flow.cpp:29:
    /usr/include/c++/5/bits/stl_list.h:507:11: note: ‘std::cxx11::list’
    class list : protected List_base<Tp, Alloc>
    ^
    /usr/include/c++/5/bits/stl_list.h:507:11: note: ‘std::cxx11::list’
    In file included from /usr/local/include/opencv4/opencv2/core/mat.hpp:3661:0,
    from /usr/local/include/opencv4/opencv2/core.hpp:59,
    from /usr/local/include/opencv4/opencv2/core/core.hpp:48,
    from /home/huihui/桌面/行为检测项目/gpu_flow-master/compute_flow.cpp:33:
    /usr/local/include/opencv4/opencv2/core/mat.inl.hpp:1690:28: error: ‘initializer_list’ in namespace ‘std’ does not name a template type
    Mat
    <Tp>::Mat(const std::initializer_list sizes, std::initializer_list<

    ^
    /usr/local/include/opencv4/opencv2/core/mat.inl.hpp:1690:44: error: expected ‘,’ or ‘...’ before ‘<’ token
    Mat
    <Tp>::Mat(const std::initializer_list sizes, std::initializer_list<
    ^
    /usr/local/include/opencv4/opencv2/core/mat.inl.hpp: In constructor ‘cv::Mat<Tp>::Mat(int)’:
    /usr/local/include/opencv4/opencv2/core/mat.inl.hpp:1691:11: error: ‘sizes’ was not declared in this scope
    : Mat(sizes, list)
    ^
    /usr/local/include/opencv4/opencv2/core/mat.inl.hpp:1691:18: error: ‘list’ was not declared in this scope
    : Mat(sizes, list)
    ^
    /usr/local/include/opencv4/opencv2/core/mat.inl.hpp:1691:18: note: suggested alternatives:
    In file included from /usr/include/c++/5/list:63:0,
    from /usr/include/x86_64-linux-gnu/qt5/QtCore/qlist.h:43,
    from /usr/include/x86_64-linux-gnu/qt5/QtCore/qobject.h:43,
    from /usr/include/x86_64-linux-gnu/qt5/QtCore/qiodevice.h:39,
    from /usr/include/x86_64-linux-gnu/qt5/QtCore/qfiledevice.h:37,
    from /usr/include/x86_64-linux-gnu/qt5/QtCore/qfile.h:37,
    from /usr/include/x86_64-linux-gnu/qt5/QtCore/qfileinfo.h:37,
    from /usr/include/x86_64-linux-gnu/qt5/QtCore/qdir.h:38,
    from /usr/include/x86_64-linux-gnu/qt5/QtCore/qdiriterator.h:37,
    from /usr/include/x86_64-linux-gnu/qt5/QtCore/QDirIterator:1,
    from /home/huihui/桌面/行为检测项目/gpu_flow-master/compute_flow.cpp:29:
    /usr/include/c++/5/bits/stl_list.h:507:11: note: ‘std::cxx11::list’
    class list : protected List_base<Tp, Alloc>
    ^
    /usr/include/c++/5/bits/stl_list.h:507:11: note: ‘std::cxx11::list’
    In file included from /usr/local/include/opencv4/opencv2/core/mat.hpp:3661:0,
    from /usr/local/include/opencv4/opencv2/core.hpp:59,
    from /usr/local/include/opencv4/opencv2/core/core.hpp:48,
    from /home/huihui/桌面/行为检测项目/gpu_flow-master/compute_flow.cpp:33:
    /usr/local/include/opencv4/opencv2/core/mat.inl.hpp: At global scope:
    /usr/local/include/opencv4/opencv2/core/mat.inl.hpp:1695:28: error: ‘array’ in namespace ‘std’ does not name a template type
    Mat
    <Tp>::Mat(const std::array<Tp, Nm>& arr, bool copyData)
    ^
    /usr/local/include/opencv4/opencv2/core/mat.inl.hpp:1695:33: error: expected ‘,’ or ‘...’ before ‘<’ token
    Mat
    <Tp>::Mat(const std::array<Tp, Nm>& arr, bool copyData)
    ^
    /usr/local/include/opencv4/opencv2/core/mat.inl.hpp: In constructor ‘cv::Mat
    <Tp>::Mat(int)’:
    /usr/local/include/opencv4/opencv2/core/mat.inl.hpp:1696:11: error: ‘arr’ was not declared in this scope
    : Mat(arr, copyData)
    ^
    /usr/local/include/opencv4/opencv2/core/mat.inl.hpp:1696:16: error: ‘copyData’ was not declared in this scope
    : Mat(arr, copyData)
    ^
    /usr/local/include/opencv4/opencv2/core/mat.inl.hpp: At global scope:
    /usr/local/include/opencv4/opencv2/core/mat.inl.hpp:1986:26: error: ‘array’ in namespace ‘std’ does not name a template type
    Mat
    <Tp>::operator std::array<Tp, Nm>() const
    ^
    In file included from /usr/local/include/opencv4/opencv2/core/mat.hpp:3661:0,
    from /usr/local/include/opencv4/opencv2/core.hpp:59,
    from /usr/local/include/opencv4/opencv2/core/core.hpp:48,
    from /home/huihui/桌面/行为检测项目/gpu_flow-master/compute_flow.cpp:33:
    /usr/local/include/opencv4/opencv2/core/mat.inl.hpp:2056:21: error: expected ‘,’ or ‘...’ before ‘&&’ token
    Mat
    <Tp>::Mat(Mat
    && m)
    ^
    /usr/local/include/opencv4/opencv2/core/mat.inl.hpp:2056:1: error: prototype for ‘cv::Mat
    <Tp>::Mat(cv::Mat
    <Tp>)’ does not match any in class ‘cv::Mat<Tp>’
    Mat
    <Tp>::Mat(Mat
    && m)
    ^
    In file included from /usr/local/include/opencv4/opencv2/core.hpp:59:0,
    from /usr/local/include/opencv4/opencv2/core/core.hpp:48,
    from /home/huihui/桌面/行为检测项目/gpu_flow-master/compute_flow.cpp:33:
    /usr/local/include/opencv4/opencv2/core/mat.hpp:2337:5: error: candidates are: cv::Mat
    <Tp>::Mat(cv::MatExpr)
    Mat
    (MatExpr&& e);
    ^
    /usr/local/include/opencv4/opencv2/core/mat.hpp:2334:5: error: cv::Mat
    <Tp>::Mat(cv::Mat)
    Mat
    (Mat&& m);
    ^
    /usr/local/include/opencv4/opencv2/core/mat.hpp:2225:41: error: template template cv::Mat<Tp>::Mat(int)
    template <std::size_t Nm> explicit Mat(const std::array<Tp, Nm>& arr, b
    ^
    In file included from /usr/local/include/opencv4/opencv2/core/mat.hpp:3661:0,
    from /usr/local/include/opencv4/opencv2/core.hpp:59,
    from /usr/local/include/opencv4/opencv2/core/core.hpp:48,
    from /home/huihui/桌面/行为检测项目/gpu_flow-master/compute_flow.cpp:33:
    /usr/local/include/opencv4/opencv2/core/mat.inl.hpp:1690:1: error: cv::Mat
    <Tp>::Mat(int)
    Mat
    <Tp>::Mat(const std::initializer_list sizes, std::initializer_list<
    ^
    /usr/local/include/opencv4/opencv2/core/mat.inl.hpp:1675:1: error: cv::Mat<Tp>::Mat(const cv::MatCommaInitializer<Tp>&)
    Mat
    <Tp>::Mat(const MatCommaInitializer<Tp>& commaInitializer)
    ^
    /usr/local/include/opencv4/opencv2/core/mat.inl.hpp:1666:1: error: cv::Mat
    <Tp>::Mat(const cv::Point3<typename cv::DataType<Tp>::channel_type>&, bool)
    Mat
    <Tp>::Mat(const Point3<typename DataType<Tp>::channel_type>& pt, bool c
    ^
    /usr/local/include/opencv4/opencv2/core/mat.inl.hpp:1657:1: error: cv::Mat
    <Tp>::Mat(const cv::Point<typename cv::DataType<Tp>::channel_type>&, bool)
    Mat
    <Tp>::Mat(const Point<typename DataType<Tp>::channel_type>& pt, bool co
    ^
    In file included from /usr/local/include/opencv4/opencv2/core.hpp:59:0,
    from /usr/local/include/opencv4/opencv2/core/core.hpp:48,
    from /home/huihui/桌面/行为检测项目/gpu_flow-master/compute_flow.cpp:33:
    /usr/local/include/opencv4/opencv2/core/mat.hpp:2217:37: error: template template<int m, int n> cv::Mat
    <Tp>::Mat(const cv::Matx<typename cv::DataType<Tp>::channel_type, m, n>&, bool)
    template<int m, int n> explicit Mat
    (const Matx<typename DataType<Tp>::cha
    ^
    /usr/local/include/opencv4/opencv2/core/mat.hpp:2216:30: error: template template cv::Mat
    <Tp>::Mat(const cv::Vec<typename cv::DataType<Tp>::channel_type, n>&, bool)
    template explicit Mat
    (const Vec<typename DataType<Tp>::channel_typ
    ^
    In file included from /usr/local/include/opencv4/opencv2/core/mat.hpp:3661:0,
    from /usr/local/include/opencv4/opencv2/core.hpp:59,
    from /usr/local/include/opencv4/opencv2/core/core.hpp:48,
    from /home/huihui/桌面/行为检测项目/gpu_flow-master/compute_flow.cpp:33:
    /usr/local/include/opencv4/opencv2/core/mat.inl.hpp:1680:1: error: cv::Mat
    <Tp>::Mat(const std::vector&, bool)
    Mat<Tp>::Mat(const std::vector<Tp>& vec, bool copyData)
    ^
    In file included from /usr/local/include/opencv4/opencv2/core.hpp:59:0,
    from /usr/local/include/opencv4/opencv2/core/core.hpp:48,
    from /home/huihui/桌面/行为检测项目/gpu_flow-master/compute_flow.cpp:33:
    /usr/local/include/opencv4/opencv2/core/mat.hpp:2213:14: error: cv::Mat
    <Tp>::Mat(const cv::MatExpr&)
    explicit Mat(const MatExpr& e);
    ^
    In file included from /usr/local/include/opencv4/opencv2/core/mat.hpp:3661:0,
    from /usr/local/include/opencv4/opencv2/core.hpp:59,
    from /usr/local/include/opencv4/opencv2/core/core.hpp:48,
    from /home/huihui/桌面/行为检测项目/gpu_flow-master/compute_flow.cpp:33:
    /usr/local/include/opencv4/opencv2/core/mat.inl.hpp:1606:1: error: cv::Mat<Tp>::Mat(const cv::Mat<Tp>&, const std::vectorcv::Range&)
    Mat
    <Tp>::Mat(const Mat<Tp>& m, const std::vector& ranges)
    ^
    /usr/local/include/opencv4/opencv2/core/mat.inl.hpp:1601:1: error: cv::Mat
    <Tp>::Mat(const cv::Mat<Tp>&, const cv::Range*)
    Mat
    <Tp>::Mat(const Mat<Tp>& m, const Range* ranges)
    ^
    /usr/local/include/opencv4/opencv2/core/mat.inl.hpp:1634:1: error: cv::Mat
    <Tp>::Mat(const cv::Mat<Tp>&, const Rect&)
    Mat
    <Tp>::Mat(const Mat& m, const Rect& roi)
    ^
    /usr/local/include/opencv4/opencv2/core/mat.inl.hpp:1629:1: error: cv::Mat<Tp>::Mat(const cv::Mat<Tp>&, const cv::Range&, const cv::Range&)
    Mat
    <Tp>::Mat(const Mat& m, const Range& _rowRange, const Range& colRange)
    ^
    /usr/local/include/opencv4/opencv2/core/mat.inl.hpp:1596:1: error: cv::Mat
    <Tp>::Mat(int, const int*, Tp*, const size_t*)
    Mat
    <Tp>::Mat(int _dims, const int* _sz, Tp* data, const size_t* steps)
    ^
    /usr/local/include/opencv4/opencv2/core/mat.inl.hpp:1624:1: error: cv::Mat
    <Tp>::Mat(int, int, Tp*, size_t)
    Mat
    <Tp>::Mat(int rows, int cols, Tp* data, size_t steps)
    ^
    /usr/local/include/opencv4/opencv2/core/mat.inl.hpp:1619:1: error: cv::Mat
    <Tp>::Mat(const cv::Mat
    <Tp>&)
    Mat
    <Tp>::Mat(const Mat
    & m)
    ^
    /usr/local/include/opencv4/opencv2/core/mat.inl.hpp:1611:1: error: cv::Mat
    <Tp>::Mat(const cv::Mat&)
    Mat
    <Tp>::Mat(const Mat& m)
    ^
    /usr/local/include/opencv4/opencv2/core/mat.inl.hpp:1591:1: error: cv::Mat
    <Tp>::Mat(int, const int*, const Tp&)
    Mat
    <Tp>::Mat(int dims, const int* sz, const Tp& s)
    ^
    /usr/local/include/opencv4/opencv2/core/mat.inl.hpp:1586:1: error: cv::Mat
    <Tp>::Mat(int, const int*)
    Mat
    <Tp>::Mat(int dims, const int* sz)
    ^
    /usr/local/include/opencv4/opencv2/core/mat.inl.hpp:1579:1: error: cv::Mat
    <Tp>::Mat(cv::Size, const Tp&)
    Mat
    <Tp>::Mat(Size sz, const Tp& value)
    ^
    /usr/local/include/opencv4/opencv2/core/mat.inl.hpp:1574:1: error: cv::Mat
    <Tp>::Mat(cv::Size)
    Mat
    <Tp>::Mat(Size sz)
    ^
    /usr/local/include/opencv4/opencv2/core/mat.inl.hpp:1567:1: error: cv::Mat
    <Tp>::Mat(int, int, const Tp&)
    Mat
    <Tp>::Mat(int rows, int cols, const Tp& value)
    ^
    /usr/local/include/opencv4/opencv2/core/mat.inl.hpp:1561:1: error: cv::Mat
    <Tp>::Mat(int, int)
    Mat
    <Tp>::Mat(int rows, int cols)
    ^
    /usr/local/include/opencv4/opencv2/core/mat.inl.hpp:1554:1: error: cv::Mat
    <Tp>::Mat()
    Mat
    <Tp>::Mat()
    ^
    In file included from /usr/local/include/opencv4/opencv2/core/mat.hpp:3661:0,
    from /usr/local/include/opencv4/opencv2/core.hpp:59,
    from /usr/local/include/opencv4/opencv2/core/core.hpp:48,
    from /home/huihui/桌面/行为检测项目/gpu_flow-master/compute_flow.cpp:33:
    /usr/local/include/opencv4/opencv2/core/mat.inl.hpp:2062:39: error: expected ‘,’ or ‘...’ before ‘&&’ token
    Mat
    <Tp>& Mat<Tp>::operator = (Mat&& m)
    ^
    /usr/local/include/opencv4/opencv2/core/mat.inl.hpp: In member function ‘cv::Mat
    <Tp>& cv::Mat<Tp>::operator=(cv::Mat<Tp>)’:
    /usr/local/include/opencv4/opencv2/core/mat.inl.hpp:2064:22: error: ‘move’ is not a member of ‘std’
    Mat::operator = (std::move(m));
    ^
    /usr/local/include/opencv4/opencv2/core/mat.inl.hpp:2064:32: error: ‘m’ was not declared in this scope
    Mat::operator = (std::move(m));
    ^
    /usr/local/include/opencv4/opencv2/core/mat.inl.hpp: At global scope:
    /usr/local/include/opencv4/opencv2/core/mat.inl.hpp:2069:20: error: expected ‘,’ or ‘...’ before ‘&&’ token
    Mat
    <Tp>::Mat(Mat&& m)
    ^
    /usr/local/include/opencv4/opencv2/core/mat.inl.hpp: In constructor ‘cv::Mat
    <Tp>::Mat(cv::Mat)’:
    /usr/local/include/opencv4/opencv2/core/mat.inl.hpp:2073:13: error: ‘m’ was not declared in this scope
    *this = m;
    ^
    /usr/local/include/opencv4/opencv2/core/mat.inl.hpp: At global scope:
    /usr/local/include/opencv4/opencv2/core/mat.inl.hpp:2077:38: error: expected ‘,’ or ‘...’ before ‘&&’ token
    Mat
    <Tp>& Mat<Tp>::operator = (Mat&& m)
    ^
    /usr/local/include/opencv4/opencv2/core/mat.inl.hpp: In member function ‘cv::Mat
    <Tp>& cv::Mat<_Tp>::operator=(cv::Mat)’:
    /usr/local/include/opencv4/opencv2/core/mat.inl.hpp:2079:37: error: ‘m’ was not declared in this scope
    if( traits::Type<_Tp>::value == m.type() )
    ^
    /usr/local/include/opencv4/opencv2/core/mat.inl.hpp:2081:30: error: expected primary-expression before ‘&&’ token
    Mat::operator = ((Mat&&)m);
    ^
    /usr/local/include/opencv4/opencv2/core/mat.inl.hpp:2081:32: error: expected primary-expression before ‘)’ token
    Mat::operator = ((Mat&&)m);
    ^
    /usr/local/include/opencv4/opencv2/core/mat.inl.hpp:2084:38: error: ‘m’ was not declared in this scope
    if( traits::Depth<Tp>::value == m.depth() )
    ^
    /usr/local/include/opencv4/opencv2/core/mat.inl.hpp:2086:30: error: expected primary-expression before ‘&&’ token
    Mat::operator = ((Mat&&)m.reshape(DataType<Tp>::channels, m.dims, 0));
    ^
    /usr/local/include/opencv4/opencv2/core/mat.inl.hpp:2086:32: error: expected primary-expression before ‘)’ token
    Mat::operator = ((Mat&&)m.reshape(DataType<Tp>::channels, m.dims, 0));
    ^
    /usr/local/include/opencv4/opencv2/core/mat.inl.hpp:2090:5: error: ‘m’ was not declared in this scope
    m.convertTo(*this, type());
    ^
    /usr/local/include/opencv4/opencv2/core/mat.inl.hpp: At global scope:
    /usr/local/include/opencv4/opencv2/core/mat.inl.hpp:2095:24: error: expected ‘,’ or ‘...’ before ‘&&’ token
    Mat
    <Tp>::Mat(MatExpr&& e)
    ^
    /usr/local/include/opencv4/opencv2/core/mat.inl.hpp: In constructor ‘cv::Mat
    <Tp>::Mat(cv::MatExpr)’:
    /usr/local/include/opencv4/opencv2/core/mat.inl.hpp:2099:17: error: ‘e’ was not declared in this scope
    *this = Mat(e);
    ^
    /usr/local/include/opencv4/opencv2/core/mat.inl.hpp: In member function ‘void cv::UMat::assignTo(cv::UMat&, int) const’:
    /usr/local/include/opencv4/opencv2/core/mat.inl.hpp:3746:11: error: ambiguous overload for ‘operator=’ (operand types are ‘cv::UMat’ and ‘const cv::UMat’)
    m = *this;
    ^
    /usr/local/include/opencv4/opencv2/core/mat.inl.hpp:3672:7: note: candidate: cv::UMat& cv::UMat::operator=(const cv::UMat&)
    UMat& UMat::operator = (const UMat& m)
    ^
    In file included from /usr/local/include/opencv4/opencv2/core.hpp:59:0,
    from /usr/local/include/opencv4/opencv2/core/core.hpp:48,
    from /home/huihui/桌面/行为检测项目/gpu_flow-master/compute_flow.cpp:33:
    /usr/local/include/opencv4/opencv2/core/mat.hpp:2535:11: note: candidate: cv::UMat& cv::UMat::operator=(cv::UMat)
    UMat& operator = (UMat&& m);
    ^
    In file included from /usr/local/include/opencv4/opencv2/core/mat.hpp:3661:0,
    from /usr/local/include/opencv4/opencv2/core.hpp:59,
    from /usr/local/include/opencv4/opencv2/core/core.hpp:48,
    from /home/huihui/桌面/行为检测项目/gpu_flow-master/compute_flow.cpp:33:
    /usr/local/include/opencv4/opencv2/core/mat.inl.hpp: At global scope:
    /usr/local/include/opencv4/opencv2/core/mat.inl.hpp:3875:16: error: expected ‘,’ or ‘...’ before ‘&&’ token
    UMat::UMat(UMat&& m)
    ^
    /usr/local/include/opencv4/opencv2/core/mat.inl.hpp:3875:1: error: prototype for ‘cv::UMat::UMat(cv::UMat)’ does not match any in class ‘cv::UMat’
    UMat::UMat(UMat&& m)
    ^
    In file included from /usr/local/include/opencv4/opencv2/core.hpp:59:0,
    from /usr/local/include/opencv4/opencv2/core/core.hpp:48,
    from /home/huihui/桌面/行为检测项目/gpu_flow-master/compute_flow.cpp:33:
    /usr/local/include/opencv4/opencv2/core/mat.hpp:2408:37: error: candidates are: template cv::UMat::UMat(const cv::MatCommaInitializer
    <Tp>&)
    template explicit UMat(const MatCommaInitializer
    <Tp>& comma
    ^
    /usr/local/include/opencv4/opencv2/core/mat.hpp:2406:37: error: template cv::UMat::UMat(const cv::Point3
    <Tp>&, bool)
    template explicit UMat(const Point3
    <Tp>& pt, bool copyData=
    ^
    /usr/local/include/opencv4/opencv2/core/mat.hpp:2404:37: error: template cv::UMat::UMat(const cv::Point
    <Tp>&, bool)
    template explicit UMat(const Point
    <_Tp>& pt, bool copyData=t
    ^
    /usr/local/include/opencv4/opencv2/core/mat.hpp:2402:51: error: template<class _Tp, int m, int n> cv::UMat::UMat(const cv::Matx<_Tp, m, n>&, bool)
    template<typename _Tp, int m, int n> explicit UMat(const Matx<_Tp, m, n>& m
    ^
    /usr/local/include/opencv4/opencv2/core/mat.hpp:2400:44: error: template<class _Tp, int n> cv::UMat::UMat(const cv::Vec<_Tp, m>&, bool)
    template<typename _Tp, int n> explicit UMat(const Vec<_Tp, n>& vec, bool co
    ^
    /usr/local/include/opencv4/opencv2/core/mat.hpp:2397:37: error: template cv::UMat::UMat(const std::vector&, bool)
    template explicit UMat(const std::vector<_Tp>& vec, bool copy
    ^
    /usr/local/include/opencv4/opencv2/core/mat.hpp:2395:5: error: cv::UMat::UMat(const cv::UMat&, const std::vectorcv::Range&)
    UMat(const UMat& m, const std::vector& ranges);
    ^
    /usr/local/include/opencv4/opencv2/core/mat.hpp:2394:5: error: cv::UMat::UMat(const cv::UMat&, const cv::Range*)
    UMat(const UMat& m, const Range* ranges);
    ^
    /usr/local/include/opencv4/opencv2/core/mat.hpp:2393:5: error: cv::UMat::UMat(const cv::UMat&, const Rect&)
    UMat(const UMat& m, const Rect& roi);
    ^
    /usr/local/include/opencv4/opencv2/core/mat.hpp:2392:5: error: cv::UMat::UMat(const cv::UMat&, const cv::Range&, const cv::Range&)
    UMat(const UMat& m, const Range& rowRange, const Range& colRange=Range::all
    ^
    In file included from /usr/local/include/opencv4/opencv2/core/mat.hpp:3661:0,
    from /usr/local/include/opencv4/opencv2/core.hpp:59,
    from /usr/local/include/opencv4/opencv2/core/core.hpp:48,
    from /home/huihui/桌面/行为检测项目/gpu_flow-master/compute_flow.cpp:33:
    /usr/local/include/opencv4/opencv2/core/mat.inl.hpp:3638:1: error: cv::UMat::UMat(const cv::UMat&)
    UMat::UMat(const UMat& m)
    ^
    /usr/local/include/opencv4/opencv2/core/mat.inl.hpp:3630:1: error: cv::UMat::UMat(int, const int*, int, const Scalar&, cv::UMatUsageFlags)
    UMat::UMat(int _dims, const int* _sz, int _type, const Scalar& _s, UMatUsageFla
    ^
    /usr/local/include/opencv4/opencv2/core/mat.inl.hpp:3623:1: error: cv::UMat::UMat(int, const int*, int, cv::UMatUsageFlags)
    UMat::UMat(int _dims, const int* _sz, int _type, UMatUsageFlags _usageFlags)
    ^
    /usr/local/include/opencv4/opencv2/core/mat.inl.hpp:3615:1: error: cv::UMat::UMat(cv::Size, int, const Scalar&, cv::UMatUsageFlags)
    UMat::UMat(Size _sz, int _type, const Scalar& _s, UMatUsageFlags _usageFlags)
    ^
    /usr/local/include/opencv4/opencv2/core/mat.inl.hpp:3600:1: error: cv::UMat::UMat(int, int, int, const Scalar&, cv::UMatUsageFlags)
    UMat::UMat(int _rows, int _cols, int _type, const Scalar& _s, UMatUsageFlags _u
    ^
    /usr/local/include/opencv4/opencv2/core/mat.inl.hpp:3608:1: error: cv::UMat::UMat(cv::Size, int, cv::UMatUsageFlags)
    UMat::UMat(Size _sz, int _type, UMatUsageFlags _usageFlags)
    ^
    /usr/local/include/opencv4/opencv2/core/mat.inl.hpp:3593:1: error: cv::UMat::UMat(int, int, int, cv::UMatUsageFlags)
    UMat::UMat(int _rows, int _cols, int _type, UMatUsageFlags _usageFlags)
    ^
    /usr/local/include/opencv4/opencv2/core/mat.inl.hpp:3588:1: error: cv::UMat::UMat(cv::UMatUsageFlags)
    UMat::UMat(UMatUsageFlags _usageFlags)
    ^
    /usr/local/include/opencv4/opencv2/core/mat.inl.hpp:3899:29: error: expected ‘,’ or ‘...’ before ‘&&’ token
    UMat& UMat::operator = (UMat&& m)
    ^
    /usr/local/include/opencv4/opencv2/core/mat.inl.hpp: In member function ‘cv::UMat& cv::UMat::operator=(cv::UMat)’:
    /usr/local/include/opencv4/opencv2/core/mat.inl.hpp:3901:18: error: ‘m’ was not declared in this scope
    if (this == &m)
    ^
    /usr/local/include/opencv4/opencv2/core/mat.inl.hpp:3904:13: error: ‘m’ was not declared in this scope
    flags = m.flags; dims = m.dims; rows = m.rows; cols = m.cols;
    ^
    In file included from /usr/local/include/opencv4/opencv2/core.hpp:60:0,
    from /usr/local/include/opencv4/opencv2/core/core.hpp:48,
    from /home/huihui/桌面/行为检测项目/gpu_flow-master/compute_flow.cpp:33:
    /usr/local/include/opencv4/opencv2/core/persistence.hpp: At global scope:
    /usr/local/include/opencv4/opencv2/core/persistence.hpp:457:15: error: field ‘p’ has incomplete type ‘cv::Ptrcv::FileStorage::Impl’
    Ptr p;
    ^
    In file included from /usr/local/include/opencv4/opencv2/core/cvstd.hpp:81:0,
    from /usr/local/include/opencv4/opencv2/core/base.hpp:58,
    from /usr/local/include/opencv4/opencv2/core.hpp:54,
    from /usr/local/include/opencv4/opencv2/core/core.hpp:48,
    from /home/huihui/桌面/行为检测项目/gpu_flow-master/compute_flow.cpp:33:
    /usr/local/include/opencv4/opencv2/core/cvstd_wrapper.hpp:66:8: note: declaration of ‘struct cv::Ptrcv::FileStorage::Impl’
    struct Ptr : public std::shared_ptr
    ^
    In file included from /usr/local/include/opencv4/opencv2/core.hpp:60:0,
    from /usr/local/include/opencv4/opencv2/core/core.hpp:48,
    from /home/huihui/桌面/行为检测项目/gpu_flow-master/compute_flow.cpp:33:
    /usr/local/include/opencv4/opencv2/core/persistence.hpp:1062:38: error: ‘enable_if’ in namespace ‘std’ does not name a template type
    template<typename _Tp, typename std::enable_if< std::is_enum<_Tp>::value >::typ
    ^
    /usr/local/include/opencv4/opencv2/core/persistence.hpp:1062:47: error: expected ‘>’ before ‘<’ token
    template<typename Tp, typename std::enable_if< std::is_enum<Tp>::value >::typ
    ^
    /usr/local/include/opencv4/opencv2/core/persistence.hpp:1156:38: error: ‘enable_if’ in namespace ‘std’ does not name a template type
    template<typename Tp, typename std::enable_if< std::is_enum<Tp>::value >::typ
    ^
    /usr/local/include/opencv4/opencv2/core/persistence.hpp:1156:47: error: expected ‘>’ before ‘<’ token
    template<typename Tp, typename std::enable_if< std::is_enum<Tp>::value >::typ
    ^
    In file included from /usr/local/include/opencv4/opencv2/core/core.hpp:48:0,
    from /home/huihui/桌面/行为检测项目/gpu_flow-master/compute_flow.cpp:33:
    /usr/local/include/opencv4/opencv2/core.hpp: In function ‘cv::String& cv::operator<<(cv::String&, cv::Ptrcv::Formatted)’:
    /usr/local/include/opencv4/opencv2/core.hpp:3040:50: error: ‘fmtd’ has incomplete type
    String& operator << (String& out, Ptr fmtd)
    ^
    In file included from /usr/local/include/opencv4/opencv2/core/cvstd.hpp:81:0,
    from /usr/local/include/opencv4/opencv2/core/base.hpp:58,
    from /usr/local/include/opencv4/opencv2/core.hpp:54,
    from /usr/local/include/opencv4/opencv2/core/core.hpp:48,
    from /home/huihui/桌面/行为检测项目/gpu_flow-master/compute_flow.cpp:33:
    /usr/local/include/opencv4/opencv2/core/cvstd_wrapper.hpp:66:8: note: declaration of ‘struct cv::Ptrcv::Formatted’
    struct Ptr : public std::shared_ptr
    ^
    In file included from /usr/local/include/opencv4/opencv2/core/core.hpp:48:0,
    from /home/huihui/桌面/行为检测项目/gpu_flow-master/compute_flow.cpp:33:
    /usr/local/include/opencv4/opencv2/core.hpp: In function ‘cv::String& cv::operator<<(cv::String&, const cv::Mat&)’:
    /usr/local/include/opencv4/opencv2/core.hpp:3051:34: error: invalid use of incomplete type ‘struct cv::Ptrcv::Formatter’
    return out << Formatter::get()->format(mtx);
    ^
    In file included from /usr/local/include/opencv4/opencv2/core/cvstd.hpp:81:0,
    from /usr/local/include/opencv4/opencv2/core/base.hpp:58,
    from /usr/local/include/opencv4/opencv2/core.hpp:54,
    from /usr/local/include/opencv4/opencv2/core/core.hpp:48,
    from /home/huihui/桌面/行为检测项目/gpu_flow-master/compute_flow.cpp:33:
    /usr/local/include/opencv4/opencv2/core/cvstd_wrapper.hpp:66:8: note: declaration of ‘struct cv::Ptrcv::Formatter’
    struct Ptr : public std::shared_ptr
    ^
    In file included from /usr/local/include/opencv4/opencv2/core/core.hpp:48:0,
    from /home/huihui/桌面/行为检测项目/gpu_flow-master/compute_flow.cpp:33:
    /usr/local/include/opencv4/opencv2/core.hpp: At global scope:
    /usr/local/include/opencv4/opencv2/core.hpp:3183:31: error: ‘Param’ is not a class or namespace
    static const Param type = Param::BOOLEAN;
    ^
    /usr/local/include/opencv4/opencv2/core.hpp:3191:31: error: ‘Param’ is not a class or namespace
    static const Param type = Param::INT;
    ^
    /usr/local/include/opencv4/opencv2/core.hpp:3199:31: error: ‘Param’ is not a class or namespace
    static const Param type = Param::REAL;
    ^
    /usr/local/include/opencv4/opencv2/core.hpp:3207:31: error: ‘Param’ is not a class or namespace
    static const Param type = Param::STRING;
    ^
    /usr/local/include/opencv4/opencv2/core.hpp:3215:31: error: ‘Param’ is not a class or namespace
    static const Param type = Param::MAT;
    ^
    /usr/local/include/opencv4/opencv2/core.hpp:3223:31: error: ‘Param’ is not a class or namespace
    static const Param type = Param::MAT_VECTOR;
    ^
    /usr/local/include/opencv4/opencv2/core.hpp:3231:31: error: ‘Param’ is not a class or namespace
    static const Param type = Param::ALGORITHM;
    ^
    /usr/local/include/opencv4/opencv2/core.hpp:3239:31: error: ‘Param’ is not a class or namespace
    static const Param type = Param::FLOAT;
    ^
    /usr/local/include/opencv4/opencv2/core.hpp:3247:31: error: ‘Param’ is not a class or namespace
    static const Param type = Param::UNSIGNED_INT;
    ^
    /usr/local/include/opencv4/opencv2/core.hpp:3255:31: error: ‘Param’ is not a class or namespace
    static const Param type = Param::UINT64;
    ^
    /usr/local/include/opencv4/opencv2/core.hpp:3263:31: error: ‘Param’ is not a class or namespace
    static const Param type = Param::UCHAR;
    ^
    /usr/local/include/opencv4/opencv2/core.hpp:3271:31: error: ‘Param’ is not a class or namespace
    static const Param type = Param::SCALAR;
    ^
    /usr/local/include/opencv4/opencv2/core.hpp:3275:37: error: ‘enable_if’ in namespace ‘std’ does not name a template type
    struct ParamType<Tp, typename std::enable_if< std::is_enum<Tp>::value >::type
    ^
    /usr/local/include/opencv4/opencv2/core.hpp:3275:46: error: expected template-argument before ‘<’ token
    struct ParamType<Tp, typename std::enable_if< std::is_enum<Tp>::value >::type
    ^
    /usr/local/include/opencv4/opencv2/core.hpp:3275:46: error: expected ‘>’ before ‘<’ token
    /usr/local/include/opencv4/opencv2/core.hpp:3275:80: error: template argument 2 is invalid
    truct ParamType<Tp, typename std::enable_if< std::is_enum<Tp>::value >::type>
    ^
    /usr/local/include/opencv4/opencv2/core.hpp:3276:1: error: expected ‘::’ before ‘{’ token
    {
    ^
    /usr/local/include/opencv4/opencv2/core.hpp:3276:1: error: expected identifier before ‘{’ token
    /usr/local/include/opencv4/opencv2/core.hpp:3276:1: error: qualified name does not name a class before ‘{’ token
    In file included from /usr/local/include/opencv4/opencv2/core.hpp:3287:0,
    from /usr/local/include/opencv4/opencv2/core/core.hpp:48,
    from /home/huihui/桌面/行为检测项目/gpu_flow-master/compute_flow.cpp:33:
    /usr/local/include/opencv4/opencv2/core/operations.hpp: In function ‘cv::Ptrcv::Formatted cv::format(cv::InputArray, cv::Formatter::FormatType)’:
    /usr/local/include/opencv4/opencv2/core/operations.hpp:412:64: error: return type ‘struct cv::Ptrcv::Formatted’ is incomplete
    Ptr format(InputArray mtx, Formatter::FormatType fmt)
    ^
    /usr/local/include/opencv4/opencv2/core/operations.hpp:414:30: error: invalid use of incomplete type ‘struct cv::Ptrcv::Formatter’
    return Formatter::get(fmt)->format(mtx.getMat());
    ^
    In file included from /usr/local/include/opencv4/opencv2/core/cvstd.hpp:81:0,
    from /usr/local/include/opencv4/opencv2/core/base.hpp:58,
    from /usr/local/include/opencv4/opencv2/core.hpp:54,
    from /usr/local/include/opencv4/opencv2/core/core.hpp:48,
    from /home/huihui/桌面/行为检测项目/gpu_flow-master/compute_flow.cpp:33:
    /usr/local/include/opencv4/opencv2/core/cvstd_wrapper.hpp:66:8: note: declaration of ‘struct cv::Ptrcv::Formatter’
    struct Ptr : public std::shared_ptr
    ^
    In file included from /usr/local/include/opencv4/opencv2/core.hpp:3287:0,
    from /usr/local/include/opencv4/opencv2/core/core.hpp:48,
    from /home/huihui/桌面/行为检测项目/gpu_flow-master/compute_flow.cpp:33:
    /usr/local/include/opencv4/opencv2/core/operations.hpp: In function ‘int cv::print(cv::Ptrcv::Formatted, FILE*)’:
    /usr/local/include/opencv4/opencv2/core/operations.hpp:418:26: error: ‘fmtd’ has incomplete type
    int print(Ptr fmtd, FILE* stream = stdout)
    ^
    In file included from /usr/local/include/opencv4/opencv2/core/cvstd.hpp:81:0,
    from /usr/local/include/opencv4/opencv2/core/base.hpp:58,
    from /usr/local/include/opencv4/opencv2/core.hpp:54,
    from /usr/local/include/opencv4/opencv2/core/core.hpp:48,
    from /home/huihui/桌面/行为检测项目/gpu_flow-master/compute_flow.cpp:33:
    /usr/local/include/opencv4/opencv2/core/cvstd_wrapper.hpp:66:8: note: declaration of ‘struct cv::Ptrcv::Formatted’
    struct Ptr : public std::shared_ptr
    ^
    In file included from /usr/local/include/opencv4/opencv2/core.hpp:3287:0,
    from /usr/local/include/opencv4/opencv2/core/core.hpp:48,
    from /home/huihui/桌面/行为检测项目/gpu_flow-master/compute_flow.cpp:33:
    /usr/local/include/opencv4/opencv2/core/operations.hpp: In function ‘int cv::print(const cv::Mat&, FILE*)’:
    /usr/local/include/opencv4/opencv2/core/operations.hpp:431:33: error: invalid use of incomplete type ‘struct cv::Ptrcv::Formatter’
    return print(Formatter::get()->format(mtx), stream);
    ^
    In file included from /usr/local/include/opencv4/opencv2/core/cvstd.hpp:81:0,
    from /usr/local/include/opencv4/opencv2/core/base.hpp:58,
    from /usr/local/include/opencv4/opencv2/core.hpp:54,
    from /usr/local/include/opencv4/opencv2/core/core.hpp:48,
    from /home/huihui/桌面/行为检测项目/gpu_flow-master/compute_flow.cpp:33:
    /usr/local/include/opencv4/opencv2/core/cvstd_wrapper.hpp:66:8: note: declaration of ‘struct cv::Ptrcv::Formatter’
    struct Ptr : public std::shared_ptr
    ^
    In file included from /usr/local/include/opencv4/opencv2/core.hpp:3287:0,
    from /usr/local/include/opencv4/opencv2/core/core.hpp:48,
    from /home/huihui/桌面/行为检测项目/gpu_flow-master/compute_flow.cpp:33:
    /usr/local/include/opencv4/opencv2/core/operations.hpp: In function ‘int cv::print(const cv::UMat&, FILE*)’:
    /usr/local/include/opencv4/opencv2/core/operations.hpp:437:33: error: invalid use of incomplete type ‘struct cv::Ptrcv::Formatter’
    return print(Formatter::get()->format(mtx.getMat(ACCESS_READ)), stream);
    ^
    In file included from /usr/local/include/opencv4/opencv2/core/cvstd.hpp:81:0,
    from /usr/local/include/opencv4/opencv2/core/base.hpp:58,
    from /usr/local/include/opencv4/opencv2/core.hpp:54,
    from /usr/local/include/opencv4/opencv2/core/core.hpp:48,
    from /home/huihui/桌面/行为检测项目/gpu_flow-master/compute_flow.cpp:33:
    /usr/local/include/opencv4/opencv2/core/cvstd_wrapper.hpp:66:8: note: declaration of ‘struct cv::Ptrcv::Formatter’
    struct Ptr : public std::shared_ptr
    ^
    In file included from /usr/local/include/opencv4/opencv2/core.hpp:3287:0,
    from /usr/local/include/opencv4/opencv2/core/core.hpp:48,
    from /home/huihui/桌面/行为检测项目/gpu_flow-master/compute_flow.cpp:33:
    /usr/local/include/opencv4/opencv2/core/operations.hpp: In function ‘int cv::print(const std::vector<cv::Point
    <Tp> >&, FILE*)’:
    /usr/local/include/opencv4/opencv2/core/operations.hpp:443:34: error: base operand of ‘->’ has non-pointer type ‘cv::Ptrcv::Formatter’
    return print(Formatter::get()->format(Mat(vec)), stream);
    ^
    /usr/local/include/opencv4/opencv2/core/operations.hpp: In function ‘int cv::print(const std::vector<cv::Point3
    <Tp> >&, FILE*)’:
    /usr/local/include/opencv4/opencv2/core/operations.hpp:449:34: error: base operand of ‘->’ has non-pointer type ‘cv::Ptrcv::Formatter’
    return print(Formatter::get()->format(Mat(vec)), stream);
    ^
    /usr/local/include/opencv4/opencv2/core/operations.hpp: In function ‘int cv::print(const cv::Matx<Tp, m, n>&, FILE*)’:
    /usr/local/include/opencv4/opencv2/core/operations.hpp:455:34: error: base operand of ‘->’ has non-pointer type ‘cv::Ptrcv::Formatter’
    return print(Formatter::get()->format(cv::Mat(matx)), stream);
    ^
    In file included from /usr/local/include/opencv4/opencv2/core.hpp:3288:0,
    from /usr/local/include/opencv4/opencv2/core/core.hpp:48,
    from /home/huihui/桌面/行为检测项目/gpu_flow-master/compute_flow.cpp:33:
    /usr/local/include/opencv4/opencv2/core/cvstd.inl.hpp: In function ‘std::ostream& cv::operator<<(std::ostream&, cv::Ptrcv::Formatted)’:
    /usr/local/include/opencv4/opencv2/core/cvstd.inl.hpp:83:62: error: ‘fmtd’ has incomplete type
    std::ostream& operator << (std::ostream& out, Ptr fmtd)
    ^
    In file included from /usr/local/include/opencv4/opencv2/core/cvstd.hpp:81:0,
    from /usr/local/include/opencv4/opencv2/core/base.hpp:58,
    from /usr/local/include/opencv4/opencv2/core.hpp:54,
    from /usr/local/include/opencv4/opencv2/core/core.hpp:48,
    from /home/huihui/桌面/行为检测项目/gpu_flow-master/compute_flow.cpp:33:
    /usr/local/include/opencv4/opencv2/core/cvstd_wrapper.hpp:66:8: note: declaration of ‘struct cv::Ptrcv::Formatted’
    struct Ptr : public std::shared_ptr
    ^
    In file included from /usr/local/include/opencv4/opencv2/core.hpp:3288:0,
    from /usr/local/include/opencv4/opencv2/core/core.hpp:48,
    from /home/huihui/桌面/行为检测项目/gpu_flow-master/compute_flow.cpp:33:
    /usr/local/include/opencv4/opencv2/core/cvstd.inl.hpp: In function ‘std::ostream& cv::operator<<(std::ostream&, const cv::Mat&)’:
    /usr/local/include/opencv4/opencv2/core/cvstd.inl.hpp:94:34: error: invalid use of incomplete type ‘struct cv::Ptrcv::Formatter’
    return out << Formatter::get()->format(mtx);
    ^
    In file included from /usr/local/include/opencv4/opencv2/core/cvstd.hpp:81:0,
    from /usr/local/include/opencv4/opencv2/core/base.hpp:58,
    from /usr/local/include/opencv4/opencv2/core.hpp:54,
    from /usr/local/include/opencv4/opencv2/core/core.hpp:48,
    from /home/huihui/桌面/行为检测项目/gpu_flow-master/compute_flow.cpp:33:
    /usr/local/include/opencv4/opencv2/core/cvstd_wrapper.hpp:66:8: note: declaration of ‘struct cv::Ptrcv::Formatter’
    struct Ptr : public std::shared_ptr
    ^
    In file included from /usr/local/include/opencv4/opencv2/core.hpp:3288:0,
    from /usr/local/include/opencv4/opencv2/core/core.hpp:48,
    from /home/huihui/桌面/行为检测项目/gpu_flow-master/compute_flow.cpp:33:
    /usr/local/include/opencv4/opencv2/core/cvstd.inl.hpp: In function ‘std::ostream& cv::operator<<(std::ostream&, const std::vector<cv::Point
    <Tp> >&)’:
    /usr/local/include/opencv4/opencv2/core/cvstd.inl.hpp:112:35: error: base operand of ‘->’ has non-pointer type ‘cv::Ptrcv::Formatter’
    return out << Formatter::get()->format(Mat(vec));
    ^
    /usr/local/include/opencv4/opencv2/core/cvstd.inl.hpp: In function ‘std::ostream& cv::operator<<(std::ostream&, const std::vector<cv::Point3
    <Tp> >&)’:
    /usr/local/include/opencv4/opencv2/core/cvstd.inl.hpp:119:35: error: base operand of ‘->’ has non-pointer type ‘cv::Ptrcv::Formatter’
    return out << Formatter::get()->format(Mat(vec));
    ^
    /usr/local/include/opencv4/opencv2/core/cvstd.inl.hpp: In function ‘std::ostream& cv::operator<<(std::ostream&, const cv::Matx<Tp, m, n>&)’:
    /usr/local/include/opencv4/opencv2/core/cvstd.inl.hpp:126:35: error: base operand of ‘->’ has non-pointer type ‘cv::Ptrcv::Formatter’
    return out << Formatter::get()->format(Mat(matx));
    ^
    In file included from /usr/local/include/opencv4/opencv2/core.hpp:3289:0,
    from /usr/local/include/opencv4/opencv2/core/core.hpp:48,
    from /home/huihui/桌面/行为检测项目/gpu_flow-master/compute_flow.cpp:33:
    /usr/local/include/opencv4/opencv2/core/utility.hpp: At global scope:
    /usr/local/include/opencv4/opencv2/core/utility.hpp:580:10: error: ‘function’ in namespace ‘std’ does not name a template type
    std::function<void(const Range&)> m_functor;
    ^
    /usr/local/include/opencv4/opencv2/core/utility.hpp:582:48: error: expected ‘)’ before ‘<’ token
    ParallelLoopBodyLambdaWrapper(std::function<void(const Range&)> functor) :
    ^
    /usr/local/include/opencv4/opencv2/core/utility.hpp: In member function ‘virtual void cv::ParallelLoopBodyLambdaWrapper::operator()(const cv::Range&) const’:
    /usr/local/include/opencv4/opencv2/core/utility.hpp:588:24: error: ‘m_functor’ was not declared in this scope
    m_functor(range);
    ^
    /usr/local/include/opencv4/opencv2/core/utility.hpp: At global scope:
    /usr/local/include/opencv4/opencv2/core/utility.hpp:592:52: error: ‘std::function’ has not been declared
    inline void parallel_for
    (const Range& range, std::function<void(const Range&)>
    ^
    /usr/local/include/opencv4/opencv2/core/utility.hpp:592:60: error: expected ‘,’ or ‘...’ before ‘<’ token
    inline void parallel_for
    (const Range& range, std::function<void(const Range&)>
    ^
    /usr/local/include/opencv4/opencv2/core/utility.hpp: In function ‘void cv::parallel_for
    (const cv::Range&, int)’:
    /usr/local/include/opencv4/opencv2/core/utility.hpp:594:56: error: ‘functor’ was not declared in this scope
    parallel_for
    (range, ParallelLoopBodyLambdaWrapper(functor), nstripes);
    ^
    /usr/local/include/opencv4/opencv2/core/utility.hpp:594:66: error: ‘nstripes’ was not declared in this scope
    parallel_for
    (range, ParallelLoopBodyLambdaWrapper(functor), nstripes);
    ^
    /usr/local/include/opencv4/opencv2/core/utility.hpp: At global scope:
    /usr/local/include/opencv4/opencv2/core/utility.hpp:697:14: error: ‘recursive_mutex’ in namespace ‘std’ does not name a type
    typedef std::recursive_mutex Mutex;
    ^
    /usr/local/include/opencv4/opencv2/core/utility.hpp:698:14: error: ‘lock_guard’ in namespace ‘std’ does not name a template type
    typedef std::lock_guardcv::Mutex AutoLock;
    ^
    In file included from /usr/local/include/opencv4/opencv2/core.hpp:3290:0,
    from /usr/local/include/opencv4/opencv2/core/core.hpp:48,
    from /home/huihui/桌面/行为检测项目/gpu_flow-master/compute_flow.cpp:33:
    /usr/local/include/opencv4/opencv2/core/optim.hpp:198:112: error: invalid use of incomplete type ‘struct cv::Ptrcv::MinProblemSolver::Function’
    ate(const PtrMinProblemSolver::Function& f=PtrMinProblemSolver::Function(),
    ^
    In file included from /usr/local/include/opencv4/opencv2/core/cvstd.hpp:81:0,
    from /usr/local/include/opencv4/opencv2/core/base.hpp:58,
    from /usr/local/include/opencv4/opencv2/core.hpp:54,
    from /usr/local/include/opencv4/opencv2/core/core.hpp:48,
    from /home/huihui/桌面/行为检测项目/gpu_flow-master/compute_flow.cpp:33:
    /usr/local/include/opencv4/opencv2/core/cvstd_wrapper.hpp:66:8: note: declaration of ‘struct cv::Ptrcv::MinProblemSolver::Function’
    struct Ptr : public std::shared_ptr
    ^
    In file included from /usr/local/include/opencv4/opencv2/core.hpp:3290:0,
    from /usr/local/include/opencv4/opencv2/core/core.hpp:48,
    from /home/huihui/桌面/行为检测项目/gpu_flow-master/compute_flow.cpp:33:
    /usr/local/include/opencv4/opencv2/core/optim.hpp:252:110: error: invalid use of incomplete type ‘struct cv::Ptrcv::MinProblemSolver::Function’
    reate(const PtrMinProblemSolver::Function& f=PtrConjGradSolver::Function(),
    ^
    In file included from /usr/local/include/opencv4/opencv2/core/cvstd.hpp:81:0,
    from /usr/local/include/opencv4/opencv2/core/base.hpp:58,
    from /usr/local/include/opencv4/opencv2/core.hpp:54,
    from /usr/local/include/opencv4/opencv2/core/core.hpp:48,
    from /home/huihui/桌面/行为检测项目/gpu_flow-master/compute_flow.cpp:33:
    /usr/local/include/opencv4/opencv2/core/cvstd_wrapper.hpp:66:8: note: declaration of ‘struct cv::Ptrcv::MinProblemSolver::Function’
    struct Ptr : public std::shared_ptr
    ^
    In file included from /usr/local/include/opencv4/opencv2/video/tracking.hpp:48:0,
    from /home/huihui/桌面/行为检测项目/gpu_flow-master/compute_flow.cpp:34:
    /usr/local/include/opencv4/opencv2/imgproc.hpp:3201:68: error: invalid use of incomplete type ‘struct cv::Ptr’
    CV_IN_OUT Ptr lowerBound = Ptr(), OutputArr
    ^
    In file included from /usr/local/include/opencv4/opencv2/core/cvstd.hpp:81:0,
    from /usr/local/include/opencv4/opencv2/core/base.hpp:58,
    from /usr/local/include/opencv4/opencv2/core.hpp:54,
    from /usr/local/include/opencv4/opencv2/core/core.hpp:48,
    from /home/huihui/桌面/行为检测项目/gpu_flow-master/compute_flow.cpp:33:
    /usr/local/include/opencv4/opencv2/core/cvstd_wrapper.hpp:66:8: note: declaration of ‘struct cv::Ptr’
    struct Ptr : public std::shared_ptr
    ^
    In file included from /usr/local/include/opencv4/opencv2/highgui.hpp:51:0,
    from /usr/local/include/opencv4/opencv2/highgui/highgui.hpp:48,
    from /home/huihui/桌面/行为检测项目/gpu_flow-master/compute_flow.cpp:36:
    /usr/local/include/opencv4/opencv2/videoio.hpp:784:20: error: field ‘cap’ has incomplete type ‘cv::Ptr’
    Ptr cap;
    ^
    In file included from /usr/local/include/opencv4/opencv2/core/cvstd.hpp:81:0,
    from /usr/local/include/opencv4/opencv2/core/base.hpp:58,
    from /usr/local/include/opencv4/opencv2/core.hpp:54,
    from /usr/local/include/opencv4/opencv2/core/core.hpp:48,
    from /home/huihui/桌面/行为检测项目/gpu_flow-master/compute_flow.cpp:33:
    /usr/local/include/opencv4/opencv2/core/cvstd_wrapper.hpp:66:8: note: declaration of ‘struct cv::Ptr’
    struct Ptr : public std::shared_ptr
    ^
    In file included from /usr/local/include/opencv4/opencv2/highgui.hpp:51:0,
    from /usr/local/include/opencv4/opencv2/highgui/highgui.hpp:48,
    from /home/huihui/桌面/行为检测项目/gpu_flow-master/compute_flow.cpp:36:
    /usr/local/include/opencv4/opencv2/videoio.hpp:785:24: error: field ‘icap’ has incomplete type ‘cv::Ptrcv::IVideoCapture’
    Ptr icap;
    ^
    In file included from /usr/local/include/opencv4/opencv2/core/cvstd.hpp:81:0,
    from /usr/local/include/opencv4/opencv2/core/base.hpp:58,
    from /usr/local/include/opencv4/opencv2/core.hpp:54,
    from /usr/local/include/opencv4/opencv2/core/core.hpp:48,
    from /home/huihui/桌面/行为检测项目/gpu_flow-master/compute_flow.cpp:33:
    /usr/local/include/opencv4/opencv2/core/cvstd_wrapper.hpp:66:8: note: declaration of ‘struct cv::Ptrcv::IVideoCapture’
    struct Ptr : public std::shared_ptr
    ^
    In file included from /usr/local/include/opencv4/opencv2/highgui.hpp:51:0,
    from /usr/local/include/opencv4/opencv2/highgui/highgui.hpp:48,
    from /home/huihui/桌面/行为检测项目/gpu_flow-master/compute_flow.cpp:36:
    /usr/local/include/opencv4/opencv2/videoio.hpp:933:24: error: field ‘writer’ has incomplete type ‘cv::Ptr’
    Ptr writer;
    ^
    In file included from /usr/local/include/opencv4/opencv2/core/cvstd.hpp:81:0,
    from /usr/local/include/opencv4/opencv2/core/base.hpp:58,
    from /usr/local/include/opencv4/opencv2/core.hpp:54,
    from /usr/local/include/opencv4/opencv2/core/core.hpp:48,
    from /home/huihui/桌面/行为检测项目/gpu_flow-master/compute_flow.cpp:33:
    /usr/local/include/opencv4/opencv2/core/cvstd_wrapper.hpp:66:8: note: declaration of ‘struct cv::Ptr’
    struct Ptr : public std::shared_ptr
    ^
    In file included from /usr/local/include/opencv4/opencv2/highgui.hpp:51:0,
    from /usr/local/include/opencv4/opencv2/highgui/highgui.hpp:48,
    from /home/huihui/桌面/行为检测项目/gpu_flow-master/compute_flow.cpp:36:
    /usr/local/include/opencv4/opencv2/videoio.hpp:934:23: error: field ‘iwriter’ has incomplete type ‘cv::Ptrcv::IVideoWriter’
    Ptr iwriter;
    ^
    In file included from /usr/local/include/opencv4/opencv2/core/cvstd.hpp:81:0,
    from /usr/local/include/opencv4/opencv2/core/base.hpp:58,
    from /usr/local/include/opencv4/opencv2/core.hpp:54,
    from /usr/local/include/opencv4/opencv2/core/core.hpp:48,
    from /home/huihui/桌面/行为检测项目/gpu_flow-master/compute_flow.cpp:33:
    /usr/local/include/opencv4/opencv2/core/cvstd_wrapper.hpp:66:8: note: declaration of ‘struct cv::Ptrcv::IVideoWriter’
    struct Ptr : public std::shared_ptr
    ^
    In file included from /usr/local/include/opencv4/opencv2/objdetect/objdetect.hpp:48:0,
    from /usr/include/opencv2/gpu/gpu.hpp:54,
    from /home/huihui/桌面/行为检测项目/gpu_flow-master/compute_flow.cpp:37:
    /usr/local/include/opencv4/opencv2/objdetect.hpp:337:32: error: field ‘cc’ has incomplete type ‘cv::Ptrcv::BaseCascadeClassifier’
    Ptr cc;
    ^
    In file included from /usr/local/include/opencv4/opencv2/core/cvstd.hpp:81:0,
    from /usr/local/include/opencv4/opencv2/core/base.hpp:58,
    from /usr/local/include/opencv4/opencv2/core.hpp:54,
    from /usr/local/include/opencv4/opencv2/core/core.hpp:48,
    from /home/huihui/桌面/行为检测项目/gpu_flow-master/compute_flow.cpp:33:
    /usr/local/include/opencv4/opencv2/core/cvstd_wrapper.hpp:66:8: note: declaration of ‘struct cv::Ptrcv::BaseCascadeClassifier’
    struct Ptr : public std::shared_ptr
    ^
    In file included from /usr/local/include/opencv4/opencv2/objdetect/objdetect.hpp:48:0,
    from /usr/include/opencv2/gpu/gpu.hpp:54,
    from /home/huihui/桌面/行为检测项目/gpu_flow-master/compute_flow.cpp:37:
    /usr/local/include/opencv4/opencv2/objdetect.hpp:712:15: error: field ‘p’ has incomplete type ‘cv::Ptrcv::QRCodeDetector::Impl’
    Ptr p;
    ^
    In file included from /usr/local/include/opencv4/opencv2/core/cvstd.hpp:81:0,
    from /usr/local/include/opencv4/opencv2/core/base.hpp:58,
    from /usr/local/include/opencv4/opencv2/core.hpp:54,
    from /usr/local/include/opencv4/opencv2/core/core.hpp:48,
    from /home/huihui/桌面/行为检测项目/gpu_flow-master/compute_flow.cpp:33:
    /usr/local/include/opencv4/opencv2/core/cvstd_wrapper.hpp:66:8: note: declaration of ‘struct cv::Ptrcv::QRCodeDetector::Impl’
    struct Ptr : public std::shared_ptr
    ^
    In file included from /usr/local/include/opencv4/opencv2/objdetect.hpp:718:0,
    from /usr/local/include/opencv4/opencv2/objdetect/objdetect.hpp:48,
    from /usr/include/opencv2/gpu/gpu.hpp:54,
    from /home/huihui/桌面/行为检测项目/gpu_flow-master/compute_flow.cpp:37:
    /usr/local/include/opencv4/opencv2/objdetect/detection_based_tracker.hpp:162:40: error: field ‘separateDetectionWork’ has incomplete type ‘cv::Ptrcv::DetectionBasedTracker::SeparateDetectionWork’
    cv::Ptr separateDetectionWork;
    ^
    In file included from /usr/local/include/opencv4/opencv2/core/cvstd.hpp:81:0,
    from /usr/local/include/opencv4/opencv2/core/base.hpp:58,
    from /usr/local/include/opencv4/opencv2/core.hpp:54,
    from /usr/local/include/opencv4/opencv2/core/core.hpp:48,
    from /home/huihui/桌面/行为检测项目/gpu_flow-master/compute_flow.cpp:33:
    /usr/local/include/opencv4/opencv2/core/cvstd_wrapper.hpp:66:8: note: declaration of ‘struct cv::Ptrcv::DetectionBasedTracker::SeparateDetectionWork’
    struct Ptr : public std::shared_ptr
    ^
    In file included from /usr/local/include/opencv4/opencv2/objdetect.hpp:718:0,
    from /usr/local/include/opencv4/opencv2/objdetect/objdetect.hpp:48,
    from /usr/include/opencv2/gpu/gpu.hpp:54,
    from /home/huihui/桌面/行为检测项目/gpu_flow-master/compute_flow.cpp:37:
    /usr/local/include/opencv4/opencv2/objdetect/detection_based_tracker.hpp:210:28: error: field ‘cascadeForTracking’ has incomplete type ‘cv::Ptrcv::DetectionBasedTracker::IDetector’
    cv::Ptr cascadeForTracking;
    ^
    In file included from /usr/local/include/opencv4/opencv2/core/cvstd.hpp:81:0,
    from /usr/local/include/opencv4/opencv2/core/base.hpp:58,
    from /usr/local/include/opencv4/opencv2/core.hpp:54,
    from /usr/local/include/opencv4/opencv2/core/core.hpp:48,
    from /home/huihui/桌面/行为检测项目/gpu_flow-master/compute_flow.cpp:33:
    /usr/local/include/opencv4/opencv2/core/cvstd_wrapper.hpp:66:8: note: declaration of ‘struct cv::Ptrcv::DetectionBasedTracker::IDetector’
    struct Ptr : public std::shared_ptr
    ^
    In file included from /usr/local/include/opencv4/opencv2/objdetect.hpp:718:0,
    from /usr/local/include/opencv4/opencv2/objdetect/objdetect.hpp:48,
    from /usr/include/opencv2/gpu/gpu.hpp:54,
    from /home/huihui/桌面/行为检测项目/gpu_flow-master/compute_flow.cpp:37:
    /usr/local/include/opencv4/opencv2/objdetect/detection_based_tracker.hpp: In member function ‘void cv::DetectionBasedTracker::IDetector::setMinObjectSize(const Size&)’:
    /usr/local/include/opencv4/opencv2/objdetect/detection_based_tracker.hpp:82:32: error: ambiguous overload for ‘operator=’ (operand types are ‘cv::Size {aka cv::Size}’ and ‘const Size {aka const cv::Size}’)
    minObjSize = min;
    ^
    In file included from /usr/local/include/opencv4/opencv2/core.hpp:58:0,
    from /usr/local/include/opencv4/opencv2/core/core.hpp:48,
    from /home/huihui/桌面/行为检测项目/gpu_flow-master/compute_flow.cpp:33:
    /usr/local/include/opencv4/opencv2/core/types.hpp:1707:13: note: candidate: cv::Size<Tp>& cv::Size<Tp>::operator=(const cv::Size<Tp>&) [with Tp = int]
    Size
    <Tp>& Size<Tp>::operator = (const Size<Tp>& sz)
    ^
    /usr/local/include/opencv4/opencv2/core/types.hpp:1714:13: note: candidate: cv::Size
    <Tp>& cv::Size<Tp>::operator=(cv::Size<Tp>) [with Tp = int]
    Size
    <Tp>& Size<Tp>::operator = (Size<Tp>&& sz) CV_NOEXCEPT
    ^
    In file included from /usr/local/include/opencv4/opencv2/objdetect.hpp:718:0,
    from /usr/local/include/opencv4/opencv2/objdetect/objdetect.hpp:48,
    from /usr/include/opencv2/gpu/gpu.hpp:54,
    from /home/huihui/桌面/行为检测项目/gpu_flow-master/compute_flow.cpp:37:
    /usr/local/include/opencv4/opencv2/objdetect/detection_based_tracker.hpp: In member function ‘void cv::DetectionBasedTracker::IDetector::setMaxObjectSize(const Size&)’:
    /usr/local/include/opencv4/opencv2/objdetect/detection_based_tracker.hpp:86:32: error: ambiguous overload for ‘operator=’ (operand types are ‘cv::Size {aka cv::Size
    }’ and ‘const Size {aka const cv::Size
    }’)
    maxObjSize = max;
    ^
    In file included from /usr/local/include/opencv4/opencv2/core.hpp:58:0,
    from /usr/local/include/opencv4/opencv2/core/core.hpp:48,
    from /home/huihui/桌面/行为检测项目/gpu_flow-master/compute_flow.cpp:33:
    /usr/local/include/opencv4/opencv2/core/types.hpp:1707:13: note: candidate: cv::Size
    <Tp>& cv::Size<Tp>::operator=(const cv::Size<Tp>&) [with Tp = int]
    Size
    <Tp>& Size<Tp>::operator = (const Size<Tp>& sz)
    ^
    /usr/local/include/opencv4/opencv2/core/types.hpp:1714:13: note: candidate: cv::Size
    <Tp>& cv::Size<Tp>::operator=(cv::Size<Tp>) [with Tp = int]
    Size
    <Tp>& Size<Tp>::operator = (Size<Tp>&& sz) CV_NOEXCEPT
    ^
    In file included from /usr/local/include/opencv4/opencv2/features2d/features2d.hpp:48:0,
    from /usr/include/opencv2/gpu/gpu.hpp:55,
    from /home/huihui/桌面/行为检测项目/gpu_flow-master/compute_flow.cpp:37:
    /usr/local/include/opencv4/opencv2/features2d.hpp: At global scope:
    /usr/local/include/opencv4/opencv2/features2d.hpp:1170:29: error: field ‘indexParams’ has incomplete type ‘cv::Ptrcv::flann::IndexParams’
    Ptrflann::IndexParams indexParams;
    ^
    In file included from /usr/local/include/opencv4/opencv2/core/cvstd.hpp:81:0,
    from /usr/local/include/opencv4/opencv2/core/base.hpp:58,
    from /usr/local/include/opencv4/opencv2/core.hpp:54,
    from /usr/local/include/opencv4/opencv2/core/core.hpp:48,
    from /home/huihui/桌面/行为检测项目/gpu_flow-master/compute_flow.cpp:33:
    /usr/local/include/opencv4/opencv2/core/cvstd_wrapper.hpp:66:8: note: declaration of ‘struct cv::Ptrcv::flann::IndexParams’
    struct Ptr : public std::shared_ptr
    ^
    In file included from /usr/local/include/opencv4/opencv2/features2d/features2d.hpp:48:0,
    from /usr/include/opencv2/gpu/gpu.hpp:55,
    from /home/huihui/桌面/行为检测项目/gpu_flow-master/compute_flow.cpp:37:
    /usr/local/include/opencv4/opencv2/features2d.hpp:1171:30: error: field ‘searchParams’ has incomplete type ‘cv::Ptrcv::flann::SearchParams’
    Ptrflann::SearchParams searchParams;
    ^
    In file included from /usr/local/include/opencv4/opencv2/core/cvstd.hpp:81:0,
    from /usr/local/include/opencv4/opencv2/core/base.hpp:58,
    from /usr/local/include/opencv4/opencv2/core.hpp:54,
    from /usr/local/include/opencv4/opencv2/core/core.hpp:48,
    from /home/huihui/桌面/行为检测项目/gpu_flow-master/compute_flow.cpp:33:
    /usr/local/include/opencv4/opencv2/core/cvstd_wrapper.hpp:66:8: note: declaration of ‘struct cv::Ptrcv::flann::SearchParams’
    struct Ptr : public std::shared_ptr
    ^
    In file included from /usr/local/include/opencv4/opencv2/features2d/features2d.hpp:48:0,
    from /usr/include/opencv2/gpu/gpu.hpp:55,
    from /home/huihui/桌面/行为检测项目/gpu_flow-master/compute_flow.cpp:37:
    /usr/local/include/opencv4/opencv2/features2d.hpp:1172:23: error: field ‘flannIndex’ has incomplete type ‘cv::Ptrcv::flann::Index’
    Ptrflann::Index flannIndex;
    ^
    In file included from /usr/local/include/opencv4/opencv2/core/cvstd.hpp:81:0,
    from /usr/local/include/opencv4/opencv2/core/base.hpp:58,
    from /usr/local/include/opencv4/opencv2/core.hpp:54,
    from /usr/local/include/opencv4/opencv2/core/core.hpp:48,
    from /home/huihui/桌面/行为检测项目/gpu_flow-master/compute_flow.cpp:33:
    /usr/local/include/opencv4/opencv2/core/cvstd_wrapper.hpp:66:8: note: declaration of ‘struct cv::Ptrcv::flann::Index’
    struct Ptr : public std::shared_ptr
    ^
    In file included from /usr/local/include/opencv4/opencv2/features2d/features2d.hpp:48:0,
    from /usr/include/opencv2/gpu/gpu.hpp:55,
    from /home/huihui/桌面/行为检测项目/gpu_flow-master/compute_flow.cpp:37:
    /usr/local/include/opencv4/opencv2/features2d.hpp:1143:109: error: invalid use of incomplete type ‘struct cv::Ptrcv::flann::KDTreeIndexParams’
    const Ptrflann::IndexParams& indexParams=makePtrflann::KDTreeIndexParams(),
    ^
    In file included from /usr/local/include/opencv4/opencv2/core/cvstd.hpp:81:0,
    from /usr/local/include/opencv4/opencv2/core/base.hpp:58,
    from /usr/local/include/opencv4/opencv2/core.hpp:54,
    from /usr/local/include/opencv4/opencv2/core/core.hpp:48,
    from /home/huihui/桌面/行为检测项目/gpu_flow-master/compute_flow.cpp:33:
    /usr/local/include/opencv4/opencv2/core/cvstd_wrapper.hpp:66:8: note: declaration of ‘struct cv::Ptrcv::flann::KDTreeIndexParams’
    struct Ptr : public std::shared_ptr
    ^
    In file included from /usr/local/include/opencv4/opencv2/features2d/features2d.hpp:48:0,
    from /usr/include/opencv2/gpu/gpu.hpp:55,
    from /home/huihui/桌面/行为检测项目/gpu_flow-master/compute_flow.cpp:37:
    /usr/local/include/opencv4/opencv2/features2d.hpp:1144:98: error: invalid use of incomplete type ‘struct cv::Ptrcv::flann::SearchParams’
    const Ptrflann::SearchParams& searchParams=makePtrflann::SearchParams() );
    ^
    In file included from /usr/local/include/opencv4/opencv2/core/cvstd.hpp:81:0,
    from /usr/local/include/opencv4/opencv2/core/base.hpp:58,
    from /usr/local/include/opencv4/opencv2/core.hpp:54,
    from /usr/local/include/opencv4/opencv2/core/core.hpp:48,
    from /home/huihui/桌面/行为检测项目/gpu_flow-master/compute_flow.cpp:33:
    /usr/local/include/opencv4/opencv2/core/cvstd_wrapper.hpp:66:8: note: declaration of ‘struct cv::Ptrcv::flann::SearchParams’
    struct Ptr : public std::shared_ptr
    ^
    In file included from /usr/local/include/opencv4/opencv2/core.hpp:52:0,
    from /usr/local/include/opencv4/opencv2/core/core.hpp:48,
    from /home/huihui/桌面/行为检测项目/gpu_flow-master/compute_flow.cpp:33:
    /usr/local/include/opencv4/opencv2/features2d.hpp: In function ‘bool cv::operator!(const cv::DrawMatchesFlags&)’:
    /usr/local/include/opencv4/opencv2/features2d.hpp:1202:1: error: ‘underlying_type’ in namespace ‘std’ does not name a template type
    CV_ENUM_FLAGS(DrawMatchesFlags)
    ^
    /usr/local/include/opencv4/opencv2/features2d.hpp:1202:1: error: ‘UnderlyingType’ does not name a type
    CV_ENUM_FLAGS(DrawMatchesFlags)
    ^
    /usr/local/include/opencv4/opencv2/features2d.hpp: In function ‘cv::DrawMatchesFlags cv::operator~(const cv::DrawMatchesFlags&)’:
    /usr/local/include/opencv4/opencv2/features2d.hpp:1202:1: error: ‘underlying_type’ in namespace ‘std’ does not name a template type
    CV_ENUM_FLAGS(DrawMatchesFlags)
    ^
    /usr/local/include/opencv4/opencv2/features2d.hpp:1202:1: error: ‘UnderlyingType’ does not name a type
    CV_ENUM_FLAGS(DrawMatchesFlags)
    ^
    /usr/local/include/opencv4/opencv2/features2d.hpp: In function ‘cv::DrawMatchesFlags cv::operator|(const cv::DrawMatchesFlags&, const cv::DrawMatchesFlags&)’:
    /usr/local/include/opencv4/opencv2/features2d.hpp:1202:1: error: ‘underlying_type’ in namespace ‘std’ does not name a template type
    CV_ENUM_FLAGS(DrawMatchesFlags)
    ^
    /usr/local/include/opencv4/opencv2/features2d.hpp:1202:1: error: ‘UnderlyingType’ does not name a type
    CV_ENUM_FLAGS(DrawMatchesFlags)
    ^
    /usr/local/include/opencv4/opencv2/features2d.hpp:1202:1: error: ‘UnderlyingType’ does not name a type
    CV_ENUM_FLAGS(DrawMatchesFlags)
    ^
    /usr/local/include/opencv4/opencv2/features2d.hpp: In function ‘cv::DrawMatchesFlags cv::operator&(const cv::DrawMatchesFlags&, const cv::DrawMatchesFlags&)’:
    /usr/local/include/opencv4/opencv2/features2d.hpp:1202:1: error: ‘underlying_type’ in namespace ‘std’ does not name a template type
    CV_ENUM_FLAGS(DrawMatchesFlags)
    ^
    /usr/local/include/opencv4/opencv2/features2d.hpp:1202:1: error: ‘UnderlyingType’ does not name a type
    CV_ENUM_FLAGS(DrawMatchesFlags)
    ^
    /usr/local/include/opencv4/opencv2/features2d.hpp:1202:1: error: ‘UnderlyingType’ does not name a type
    CV_ENUM_FLAGS(DrawMatchesFlags)
    ^
    /usr/local/include/opencv4/opencv2/features2d.hpp: In function ‘cv::DrawMatchesFlags cv::operator^(const cv::DrawMatchesFlags&, const cv::DrawMatchesFlags&)’:
    /usr/local/include/opencv4/opencv2/features2d.hpp:1202:1: error: ‘underlying_type’ in namespace ‘std’ does not name a template type
    CV_ENUM_FLAGS(DrawMatchesFlags)
    ^
    /usr/local/include/opencv4/opencv2/features2d.hpp:1202:1: error: ‘UnderlyingType’ does not name a type
    CV_ENUM_FLAGS(DrawMatchesFlags)
    ^
    /usr/local/include/opencv4/opencv2/features2d.hpp:1202:1: error: ‘UnderlyingType’ does not name a type
    CV_ENUM_FLAGS(DrawMatchesFlags)
    ^
    In file included from /usr/local/include/opencv4/opencv2/features2d/features2d.hpp:48:0,
    from /usr/include/opencv2/gpu/gpu.hpp:55,
    from /home/huihui/桌面/行为检测项目/gpu_flow-master/compute_flow.cpp:37:
    /usr/local/include/opencv4/opencv2/features2d.hpp: At global scope:
    /usr/local/include/opencv4/opencv2/features2d.hpp:1220:92: error: ‘DrawMatchesFlags’ is not a class or namespace
    const Scalar& color=Scalar::all(-1), DrawMatchesFlags flags=DrawMatches
    ^
    /usr/local/include/opencv4/opencv2/features2d.hpp:1248:111: error: ‘DrawMatchesFlags’ is not a class or namespace
    ctor& matchesMask=std::vector(), DrawMatchesFlags flags=DrawMatches
    ^
    /usr/local/include/opencv4/opencv2/features2d.hpp:1255:139: error: ‘DrawMatchesFlags’ is not a class or namespace
    tchesMask=std::vector<std::vector >(), DrawMatchesFlags flags=DrawMatches
    ^
    /usr/local/include/opencv4/opencv2/features2d.hpp:1266:101: error: invalid use of incomplete type ‘struct cv::Ptrcv::Feature2D’
    const Ptr& fdetector=Ptr() );
    ^
    In file included from /usr/local/include/opencv4/opencv2/core/cvstd.hpp:81:0,
    from /usr/local/include/opencv4/opencv2/core/base.hpp:58,
    from /usr/local/include/opencv4/opencv2/core.hpp:54,
    from /usr/local/include/opencv4/opencv2/core/core.hpp:48,
    from /home/huihui/桌面/行为检测项目/gpu_flow-master/compute_flow.cpp:33:
    /usr/local/include/opencv4/opencv2/core/cvstd_wrapper.hpp:66:8: note: declaration of ‘struct cv::Ptrcv::Feature2D’
    struct Ptr : public std::shared_ptr
    ^
    In file included from /usr/local/include/opencv4/opencv2/features2d/features2d.hpp:48:0,
    from /usr/include/opencv2/gpu/gpu.hpp:55,
    from /home/huihui/桌面/行为检测项目/gpu_flow-master/compute_flow.cpp:37:
    /usr/local/include/opencv4/opencv2/features2d.hpp:1429:30: error: field ‘dextractor’ has incomplete type ‘cv::Ptrcv::Feature2D’
    Ptr dextractor;
    ^
    In file included from /usr/local/include/opencv4/opencv2/core/cvstd.hpp:81:0,
    from /usr/local/include/opencv4/opencv2/core/base.hpp:58,
    from /usr/local/include/opencv4/opencv2/core.hpp:54,
    from /usr/local/include/opencv4/opencv2/core/core.hpp:48,
    from /home/huihui/桌面/行为检测项目/gpu_flow-master/compute_flow.cpp:33:
    /usr/local/include/opencv4/opencv2/core/cvstd_wrapper.hpp:66:8: note: declaration of ‘struct cv::Ptrcv::Feature2D’
    struct Ptr : public std::shared_ptr
    ^
    In file included from /usr/local/include/opencv4/opencv2/features2d/features2d.hpp:48:0,
    from /usr/include/opencv2/gpu/gpu.hpp:55,
    from /home/huihui/桌面/行为检测项目/gpu_flow-master/compute_flow.cpp:37:
    /usr/local/include/opencv4/opencv2/features2d.hpp:1430:28: error: field ‘dmatcher’ has incomplete type ‘cv::Ptrcv::DescriptorMatcher’
    Ptr dmatcher;
    ^
    In file included from /usr/local/include/opencv4/opencv2/core/cvstd.hpp:81:0,
    from /usr/local/include/opencv4/opencv2/core/base.hpp:58,
    from /usr/local/include/opencv4/opencv2/core.hpp:54,
    from /usr/local/include/opencv4/opencv2/core/core.hpp:48,
    from /home/huihui/桌面/行为检测项目/gpu_flow-master/compute_flow.cpp:33:
    /usr/local/include/opencv4/opencv2/core/cvstd_wrapper.hpp:66:8: note: declaration of ‘struct cv::Ptrcv::DescriptorMatcher’
    struct Ptr : public std::shared_ptr
    ^
    In file included from /home/huihui/桌面/行为检测项目/gpu_flow-master/compute_flow.cpp:37:0:
    /usr/include/opencv2/gpu/gpu.hpp:432:29: error: ‘vector’ does not name a type
    CV_EXPORTS void merge(const vector& src, GpuMat& dst, Stream& stream =
    ^
    /usr/include/opencv2/gpu/gpu.hpp:432:35: error: expected ‘,’ or ‘...’ before ‘<’ token
    CV_EXPORTS void merge(const vector& src, GpuMat& dst, Stream& stream =
    ^
    /usr/include/opencv2/gpu/gpu.hpp:438:42: error: ‘vector’ has not been declared
    CV_EXPORTS void split(const GpuMat& src, vector& dst, Stream& stream =
    ^
    /usr/include/opencv2/gpu/gpu.hpp:438:48: error: expected ‘,’ or ‘...’ before ‘<’ token
    CV_EXPORTS void split(const GpuMat& src, vector& dst, Stream& stream =
    ^
    /usr/include/opencv2/gpu/gpu.hpp:837:27: error: field ‘filterDX’ has incomplete type ‘cv::Ptrcv::gpu::FilterEngine_GPU’
    Ptr<FilterEngine_GPU> filterDX, filterDY;
    ^
    In file included from /usr/local/include/opencv4/opencv2/core/cvstd.hpp:81:0,
    from /usr/local/include/opencv4/opencv2/core/base.hpp:58,
    from /usr/local/include/opencv4/opencv2/core.hpp:54,
    from /usr/local/include/opencv4/opencv2/core/core.hpp:48,
    from /home/huihui/桌面/行为检测项目/gpu_flow-master/compute_flow.cpp:33:
    /usr/local/include/opencv4/opencv2/core/cvstd_wrapper.hpp:66:8: note: declaration of ‘struct cv::Ptrcv::gpu::FilterEngine_GPU’
    struct Ptr : public std::shared_ptr
    ^
    In file included from /home/huihui/桌面/行为检测项目/gpu_flow-master/compute_flow.cpp:37:0:
    /usr/include/opencv2/gpu/gpu.hpp:837:37: error: field ‘filterDY’ has incomplete type ‘cv::Ptrcv::gpu::FilterEngine_GPU’
    Ptr<FilterEngine_GPU> filterDX, filterDY;
    ^
    In file included from /usr/local/include/opencv4/opencv2/core/cvstd.hpp:81:0,
    from /usr/local/include/opencv4/opencv2/core/base.hpp:58,
    from /usr/local/include/opencv4/opencv2/core.hpp:54,
    from /usr/local/include/opencv4/opencv2/core/core.hpp:48,
    from /home/huihui/桌面/行为检测项目/gpu_flow-master/compute_flow.cpp:33:
    /usr/local/include/opencv4/opencv2/core/cvstd_wrapper.hpp:66:8: note: declaration of ‘struct cv::Ptrcv::gpu::FilterEngine_GPU’
    struct Ptr : public std::shared_ptr
    ^
    In file included from /home/huihui/桌面/行为检测项目/gpu_flow-master/compute_flow.cpp:37:0:
    /usr/include/opencv2/gpu/gpu.hpp:1265:4: error: ‘vector’ does not name a type
    vector locations;
    ^
    /usr/include/opencv2/gpu/gpu.hpp:1266:4: error: ‘vector’ does not name a type
    vector confidences;
    ^
    /usr/include/opencv2/gpu/gpu.hpp:1267:4: error: ‘vector’ does not name a type
    vector part_scores[4];
    ^
    /usr/include/opencv2/gpu/gpu.hpp:1285:31: error: ‘vector’ does not name a type
    void setSVMDetector(const vector& detector);
    ^
    /usr/include/opencv2/gpu/gpu.hpp:1285:37: error: expected ‘,’ or ‘...’ before ‘<’ token
    void setSVMDetector(const vector& detector);
    ^
    /usr/include/opencv2/gpu/gpu.hpp:1287:12: error: ‘vector’ does not name a type
    static vector getDefaultPeopleDetector();
    ^
    /usr/include/opencv2/gpu/gpu.hpp:1288:12: error: ‘vector’ does not name a type
    static vector getPeopleDetector48x96();
    ^
    /usr/include/opencv2/gpu/gpu.hpp:1289:12: error: ‘vector’ does not name a type
    static vector getPeopleDetector64x128();
    ^
    /usr/include/opencv2/gpu/gpu.hpp:1291:36: error: ‘vector’ has not been declared
    void detect(const GpuMat& img, vector& found_locations,
    ^
    /usr/include/opencv2/gpu/gpu.hpp:1291:42: error: expected ‘,’ or ‘...’ before ‘<’ token
    void detect(const GpuMat& img, vector& found_locations,
    ^
    /usr/include/opencv2/gpu/gpu.hpp:1295:46: error: ‘vector’ has not been declared
    void detectMultiScale(const GpuMat& img, vector& found_locations,
    ^
    /usr/include/opencv2/gpu/gpu.hpp:1295:52: error: expected ‘,’ or ‘...’ before ‘<’ token
    void detectMultiScale(const GpuMat& img, vector& found_locations,
    ^
    /usr/include/opencv2/gpu/gpu.hpp:1300:47: error: ‘vector’ has not been declared
    void computeConfidence(const GpuMat& img, vector& hits, double hit_t
    ^
    /usr/include/opencv2/gpu/gpu.hpp:1300:53: error: expected ‘,’ or ‘...’ before ‘<’ token
    void computeConfidence(const GpuMat& img, vector& hits, double hit_t
    ^
    /usr/include/opencv2/gpu/gpu.hpp:1303:57: error: ‘vector’ has not been declared
    void computeConfidenceMultiScale(const GpuMat& img, vector& found_loc
    ^
    /usr/include/opencv2/gpu/gpu.hpp:1303:63: error: expected ‘,’ or ‘...’ before ‘<’ token
    void computeConfidenceMultiScale(const GpuMat& img, vector& found_loc
    ^
    /usr/include/opencv2/gpu/gpu.hpp:1721:27: error: field ‘blurFilter’ has incomplete type ‘cv::Ptrcv::gpu::FilterEngine_GPU’
    Ptr<FilterEngine_GPU> blurFilter;
    ^
    In file included from /usr/local/include/opencv4/opencv2/core/cvstd.hpp:81:0,
    from /usr/local/include/opencv4/opencv2/core/base.hpp:58,
    from /usr/local/include/opencv4/opencv2/core.hpp:54,
    from /usr/local/include/opencv4/opencv2/core/core.hpp:48,
    from /home/huihui/桌面/行为检测项目/gpu_flow-master/compute_flow.cpp:33:
    /usr/local/include/opencv4/opencv2/core/cvstd_wrapper.hpp:66:8: note: declaration of ‘struct cv::Ptrcv::gpu::FilterEngine_GPU’
    struct Ptr : public std::shared_ptr
    ^
    In file included from /home/huihui/桌面/行为检测项目/gpu_flow-master/compute_flow.cpp:37:0:
    /usr/include/opencv2/gpu/gpu.hpp:1835:5: error: ‘vector’ does not name a type
    vector prevPyr
    ;
    ^
    /usr/include/opencv2/gpu/gpu.hpp:1836:5: error: ‘vector’ does not name a type
    vector nextPyr
    ;
    ^
    /usr/include/opencv2/gpu/gpu.hpp:1838:5: error: ‘vector’ does not name a type
    vector buf
    ;
    ^
    /usr/include/opencv2/gpu/gpu.hpp:1839:5: error: ‘vector’ does not name a type
    vector unused;
    ^
    /usr/include/opencv2/gpu/gpu.hpp:2309:27: error: field ‘boxFilter’ has incomplete type ‘cv::Ptrcv::gpu::FilterEngine_GPU’
    Ptr<FilterEngine_GPU> boxFilter;
    ^
    In file included from /usr/local/include/opencv4/opencv2/core/cvstd.hpp:81:0,
    from /usr/local/include/opencv4/opencv2/core/base.hpp:58,
    from /usr/local/include/opencv4/opencv2/core.hpp:54,
    from /usr/local/include/opencv4/opencv2/core/core.hpp:48,
    from /home/huihui/桌面/行为检测项目/gpu_flow-master/compute_flow.cpp:33:
    /usr/local/include/opencv4/opencv2/core/cvstd_wrapper.hpp:66:8: note: declaration of ‘struct cv::Ptrcv::gpu::FilterEngine_GPU’
    struct Ptr : public std::shared_ptr
    ^
    /home/huihui/桌面/行为检测项目/gpu_flow-master/compute_flow.cpp: In function ‘int main(int, char**)’:
    /home/huihui/桌面/行为检测项目/gpu_flow-master/compute_flow.cpp:142:7: error: ‘class cv::CommandLineParser’ has no member named ‘printParams’
    cmd.printParams();
    ^
    /home/huihui/桌面/行为检测项目/gpu_flow-master/compute_flow.cpp:263:11: warning: unused variable ‘fx’ [-Wunused-variable]
    FILE fx = fopen(outfile.c_str(),"wb");
    ^
    /home/huihui/桌面/行为检测项目/gpu_flow-master/compute_flow.cpp:301:16: error: ambiguous overload for ‘operator=’ (operand types are ‘cv::Mat’ and ‘cv::Mat’)
    frame1_rgb = cv::Mat(Size(width,height),CV_8UC3);
    ^
    In file included from /usr/local/include/opencv4/opencv2/core/mat.hpp:3661:0,
    from /usr/local/include/opencv4/opencv2/core.hpp:59,
    from /usr/local/include/opencv4/opencv2/core/core.hpp:48,
    from /home/huihui/桌面/行为检测项目/gpu_flow-master/compute_flow.cpp:33:
    /usr/local/include/opencv4/opencv2/core/mat.inl.hpp:743:6: note: candidate: cv::Mat& cv::Mat::operator=(const cv::Mat&)
    Mat& Mat::operator = (const Mat& m)
    ^
    /usr/local/include/opencv4/opencv2/core/mat.inl.hpp:1405:6: note: candidate: cv::Mat& cv::Mat::operator=(cv::Mat)
    Mat& Mat::operator = (Mat&& m)
    ^
    /home/huihui/桌面/行为检测项目/gpu_flow-master/compute_flow.cpp:308:13: error: ambiguous overload for ‘operator=’ (operand types are ‘cv::Mat’ and ‘cv::Mat’)
    rgb_out = cv::Mat(Size(cvRound(width
    factor_out),cvRound(height*factor_out)
    ^
    In file included from /usr/local/include/opencv4/opencv2/core/mat.hpp:3661:0,
    from /usr/local/include/opencv4/opencv2/core.hpp:59,
    from /usr/local/include/opencv4/opencv2/core/core.hpp:48,
    from /home/huihui/桌面/行为检测项目/gpu_flow-master/compute_flow.cpp:33:
    /usr/local/include/opencv4/opencv2/core/mat.inl.hpp:743:6: note: candidate: cv::Mat& cv::Mat::operator=(const cv::Mat&)
    Mat& Mat::operator = (const Mat& m)
    ^
    /usr/local/include/opencv4/opencv2/core/mat.inl.hpp:1405:6: note: candidate: cv::Mat& cv::Mat::operator=(cv::Mat)
    Mat& Mat::operator = (Mat&& m)
    ^
    /home/huihui/桌面/行为检测项目/gpu_flow-master/compute_flow.cpp:314:16: error: ambiguous overload for ‘operator=’ (operand types are ‘cv::Mat’ and ‘cv::Mat’)
    frame1_rgb = cv::Mat(Size(frame1_rgb.cols,frame1_rgb.rows),CV_8UC3);
    ^
    In file included from /usr/local/include/opencv4/opencv2/core/mat.hpp:3661:0,
    from /usr/local/include/opencv4/opencv2/core.hpp:59,
    from /usr/local/include/opencv4/opencv2/core/core.hpp:48,
    from /home/huihui/桌面/行为检测项目/gpu_flow-master/compute_flow.cpp:33:
    /usr/local/include/opencv4/opencv2/core/mat.inl.hpp:743:6: note: candidate: cv::Mat& cv::Mat::operator=(const cv::Mat&)
    Mat& Mat::operator = (const Mat& m)
    ^
    /usr/local/include/opencv4/opencv2/core/mat.inl.hpp:1405:6: note: candidate: cv::Mat& cv::Mat::operator=(cv::Mat)
    Mat& Mat::operator = (Mat&& m)
    ^
    /home/huihui/桌面/行为检测项目/gpu_flow-master/compute_flow.cpp:321:15: error: ambiguous overload for ‘operator=’ (operand types are ‘cv::Mat’ and ‘cv::Mat’)
    frame0_rgb = cv::Mat(Size(width,height),CV_8UC3);
    ^
    In file included from /usr/local/include/opencv4/opencv2/core/mat.hpp:3661:0,
    from /usr/local/include/opencv4/opencv2/core.hpp:59,
    from /usr/local/include/opencv4/opencv2/core/core.hpp:48,
    from /home/huihui/桌面/行为检测项目/gpu_flow-master/compute_flow.cpp:33:
    /usr/local/include/opencv4/opencv2/core/mat.inl.hpp:743:6: note: candidate: cv::Mat& cv::Mat::operator=(const cv::Mat&)
    Mat& Mat::operator = (const Mat& m)
    ^
    /usr/local/include/opencv4/opencv2/core/mat.inl.hpp:1405:6: note: candidate: cv::Mat& cv::Mat::operator=(cv::Mat)
    Mat& Mat::operator = (Mat&& m)
    ^
    /home/huihui/桌面/行为检测项目/gpu_flow-master/compute_flow.cpp:322:13: error: ambiguous overload for ‘operator=’ (operand types are ‘cv::Mat’ and ‘cv::Mat’)
    flow_rgb = cv::Mat(Size(width,height),CV_8UC3);
    ^
    In file included from /usr/local/include/opencv4/opencv2/core/mat.hpp:3661:0,
    from /usr/local/include/opencv4/opencv2/core.hpp:59,
    from /usr/local/include/opencv4/opencv2/core/core.hpp:48,
    from /home/huihui/桌面/行为检测项目/gpu_flow-master/compute_flow.cpp:33:
    /usr/local/include/opencv4/opencv2/core/mat.inl.hpp:743:6: note: candidate: cv::Mat& cv::Mat::operator=(const cv::Mat&)
    Mat& Mat::operator = (const Mat& m)
    ^
    /usr/local/include/opencv4/opencv2/core/mat.inl.hpp:1405:6: note: candidate: cv::Mat& cv::Mat::operator=(cv::Mat)
    Mat& Mat::operator = (Mat&& m)
    ^
    /home/huihui/桌面/行为检测项目/gpu_flow-master/compute_flow.cpp:323:16: error: ambiguous overload for ‘operator=’ (operand types are ‘cv::Mat’ and ‘cv::Mat’)
    motion_flow = cv::Mat(Size(width,height),CV_8UC3);
    ^
    In file included from /usr/local/include/opencv4/opencv2/core/mat.hpp:3661:0,
    from /usr/local/include/opencv4/opencv2/core.hpp:59,
    from /usr/local/include/opencv4/opencv2/core/core.hpp:48,
    from /home/huihui/桌面/行为检测项目/gpu_flow-master/compute_flow.cpp:33:
    /usr/local/include/opencv4/opencv2/core/mat.inl.hpp:743:6: note: candidate: cv::Mat& cv::Mat::operator=(const cv::Mat&)
    Mat& Mat::operator = (const Mat& m)
    ^
    /usr/local/include/opencv4/opencv2/core/mat.inl.hpp:1405:6: note: candidate: cv::Mat& cv::Mat::operator=(cv::Mat)
    Mat& Mat::operator = (Mat&& m)
    ^
    /home/huihui/桌面/行为检测项目/gpu_flow-master/compute_flow.cpp:324:11: error: ambiguous overload for ‘operator=’ (operand types are ‘cv::Mat’ and ‘cv::Mat’)
    frame0 = cv::Mat(Size(width,height),CV_8UC1);
    ^
    In file included from /usr/local/include/opencv4/opencv2/core/mat.hpp:3661:0,
    from /usr/local/include/opencv4/opencv2/core.hpp:59,
    from /usr/local/include/opencv4/opencv2/core/core.hpp:48,
    from /home/huihui/桌面/行为检测项目/gpu_flow-master/compute_flow.cpp:33:
    /usr/local/include/opencv4/opencv2/core/mat.inl.hpp:743:6: note: candidate: cv::Mat& cv::Mat::operator=(const cv::Mat&)
    Mat& Mat::operator = (const Mat& m)
    ^
    /usr/local/include/opencv4/opencv2/core/mat.inl.hpp:1405:6: note: candidate: cv::Mat& cv::Mat::operator=(cv::Mat)
    Mat& Mat::operator = (Mat&& m)
    ^
    /home/huihui/桌面/行为检测项目/gpu_flow-master/compute_flow.cpp:325:11: error: ambiguous overload for ‘operator=’ (operand types are ‘cv::Mat’ and ‘cv::Mat’)
    frame1 = cv::Mat(Size(width,height),CV_8UC1);
    ^
    In file included from /usr/local/include/opencv4/opencv2/core/mat.hpp:3661:0,
    from /usr/local/include/opencv4/opencv2/core.hpp:59,
    from /usr/local/include/opencv4/opencv2/core/core.hpp:48,
    from /home/huihui/桌面/行为检测项目/gpu_flow-master/compute_flow.cpp:33:
    /usr/local/include/opencv4/opencv2/core/mat.inl.hpp:743:6: note: candidate: cv::Mat& cv::Mat::operator=(const cv::Mat&)
    Mat& Mat::operator = (const Mat& m)
    ^
    /usr/local/include/opencv4/opencv2/core/mat.inl.hpp:1405:6: note: candidate: cv::Mat& cv::Mat::operator=(cv::Mat)
    Mat& Mat::operator = (Mat&& m)
    ^
    /home/huihui/桌面/行为检测项目/gpu_flow-master/compute_flow.cpp:326:14: error: ambiguous overload for ‘operator=’ (operand types are ‘cv::Mat’ and ‘cv::Mat’)
    frame0_32 = cv::Mat(Size(width,height),CV_32FC1);
    ^
    In file included from /usr/local/include/opencv4/opencv2/core/mat.hpp:3661:0,
    from /usr/local/include/opencv4/opencv2/core.hpp:59,
    from /usr/local/include/opencv4/opencv2/core/core.hpp:48,
    from /home/huihui/桌面/行为检测项目/gpu_flow-master/compute_flow.cpp:33:
    /usr/local/include/opencv4/opencv2/core/mat.inl.hpp:743:6: note: candidate: cv::Mat& cv::Mat::operator=(const cv::Mat&)
    Mat& Mat::operator = (const Mat& m)
    ^
    /usr/local/include/opencv4/opencv2/core/mat.inl.hpp:1405:6: note: candidate: cv::Mat& cv::Mat::operator=(cv::Mat)
    Mat& Mat::operator = (Mat&& m)
    ^
    /home/huihui/桌面/行为检测项目/gpu_flow-master/compute_flow.cpp:327:14: error: ambiguous overload for ‘operator=’ (operand types are ‘cv::Mat’ and ‘cv::Mat’)
    frame1_32 = cv::Mat(Size(width,height),CV_32FC1);
    ^
    In file included from /usr/local/include/opencv4/opencv2/core/mat.hpp:3661:0,
    from /usr/local/include/opencv4/opencv2/core.hpp:59,
    from /usr/local/include/opencv4/opencv2/core/core.hpp:48,
    from /home/huihui/桌面/行为检测项目/gpu_flow-master/compute_flow.cpp:33:
    /usr/local/include/opencv4/opencv2/core/mat.inl.hpp:743:6: note: candidate: cv::Mat& cv::Mat::operator=(const cv::Mat&)
    Mat& Mat::operator = (const Mat& m)
    ^
    /usr/local/include/opencv4/opencv2/core/mat.inl.hpp:1405:6: note: candidate: cv::Mat& cv::Mat::operator=(cv::Mat)
    Mat& Mat::operator = (Mat&& m)
    ^
    /home/huihui/桌面/行为检测项目/gpu_flow-master/compute_flow.cpp:330:31: error: ‘CV_BGR2GRAY’ was not declared in this scope
    cvtColor(frame1_rgb,frame1,CV_BGR2GRAY);
    ^
    In file included from /usr/local/include/opencv4/opencv2/core.hpp:60:0,
    from /usr/local/include/opencv4/opencv2/core/core.hpp:48,
    from /home/huihui/桌面/行为检测项目/gpu_flow-master/compute_flow.cpp:33:
    /usr/local/include/opencv4/opencv2/core/persistence.hpp: In instantiation of ‘void cv::read(const cv::FileNode&, cv::Point<Tp>&, const cv::Point<Tp>&) [with Tp = int]’:
    /usr/local/include/opencv4/opencv2/core/persistence.hpp:778:34: required from here
    /usr/local/include/opencv4/opencv2/core/persistence.hpp:722:11: error: ambiguous overload for ‘operator=’ (operand types are ‘cv::Point
    ’ and ‘const cv::Point
    ’)
    value = temp.size() != 2 ? default_value : Point<_Tp>(saturate_cast<Tp>(t
    ^
    In file included from /usr/local/include/opencv4/opencv2/core.hpp:58:0,
    from /usr/local/include/opencv4/opencv2/core/core.hpp:48,
    from /home/huihui/桌面/行为检测项目/gpu_flow-master/compute_flow.cpp:33:
    /usr/local/include/opencv4/opencv2/core/types.hpp:1184:14: note: candidate: cv::Point
    <Tp>& cv::Point<Tp>::operator=(const cv::Point<Tp>&) [with Tp = int]
    Point
    <Tp>& Point<Tp>::operator = (const Point& pt)
    ^
    /usr/local/include/opencv4/opencv2/core/types.hpp:1191:14: note: candidate: cv::Point
    <Tp>& cv::Point<Tp>::operator=(cv::Point<Tp>) [with Tp = int; cv::Point<Tp> = cv::Point]
    Point
    <Tp>& Point<Tp>::operator = (Point&& pt) CV_NOEXCEPT
    ^
    In file included from /usr/local/include/opencv4/opencv2/core/cvstd.hpp:81:0,
    from /usr/local/include/opencv4/opencv2/core/base.hpp:58,
    from /usr/local/include/opencv4/opencv2/core.hpp:54,
    from /usr/local/include/opencv4/opencv2/core/core.hpp:48,
    from /home/huihui/桌面/行为检测项目/gpu_flow-master/compute_flow.cpp:33:
    /usr/local/include/opencv4/opencv2/core/cvstd_wrapper.hpp: In instantiation of ‘cv::Ptr<_Tp> cv::makePtr(const A1& ...) [with _Tp = cv::flann::KDTreeIndexParams; A1 = {}]’:
    /usr/local/include/opencv4/opencv2/features2d.hpp:1143:109: required from here
    /usr/local/include/opencv4/opencv2/core/cvstd_wrapper.hpp:136:10: error: return type ‘struct cv::Ptrcv::flann::KDTreeIndexParams’ is incomplete
    Ptr<_Tp> makePtr(const A1&... a1)
    ^
    /usr/local/include/opencv4/opencv2/core/cvstd_wrapper.hpp:138:20: error: ‘value’ is not a member of ‘cv::has_custom_delete<cv::flann::KDTreeIndexParams, void>’
    static_assert( !has_custom_delete<_Tp>::value, "Can't use this makePtr with
    ^
    /usr/local/include/opencv4/opencv2/core/cvstd_wrapper.hpp:138:18: error: ‘static_assert’ was not declared in this scope
    static_assert( !has_custom_delete<_Tp>::value, "Can't use this makePtr with
    ^
    /usr/local/include/opencv4/opencv2/core/cvstd_wrapper.hpp: In instantiation of ‘cv::Ptr<_Tp> cv::makePtr(const A1& ...) [with _Tp = cv::flann::SearchParams; A1 = {}]’:
    /usr/local/include/opencv4/opencv2/features2d.hpp:1144:98: required from here
    /usr/local/include/opencv4/opencv2/core/cvstd_wrapper.hpp:136:10: error: return type ‘struct cv::Ptrcv::flann::SearchParams’ is incomplete
    Ptr<_Tp> makePtr(const A1&... a1)
    ^
    /usr/local/include/opencv4/opencv2/core/cvstd_wrapper.hpp:138:20: error: ‘value’ is not a member of ‘cv::has_custom_delete<cv::flann::SearchParams, void>’
    static_assert( !has_custom_delete<_Tp>::value, "Can't use this makePtr with
    ^
    /usr/local/include/opencv4/opencv2/core/cvstd_wrapper.hpp:138:18: error: ‘static_assert’ was not declared in this scope
    static_assert( !has_custom_delete<_Tp>::value, "Can't use this makePtr with
    ^
    In file included from /usr/include/c++/5/vector:69:0,
    from /home/huihui/桌面/行为检测项目/gpu_flow-master/compute_flow.cpp:21:
    /usr/include/c++/5/bits/vector.tcc: In instantiation of ‘void std::vector<_Tp, _Alloc>::_M_insert_aux(std::vector<_Tp, _Alloc>::iterator, const _Tp&) [with Tp = cv::Rect; Alloc = std::allocator<cv::Rect >; std::vector<_Tp, _Alloc>::iterator = __gnu_cxx::normal_iterator<cv::Rect*, std::vector<cv::Rect > >; typename std::_Vector_base<_Tp, Alloc>::pointer = cv::Rect]’:
    /usr/include/c++/5/bits/stl_vector.h:925:17: required from ‘void std::vector<_Tp, Alloc>::push_back(const value_type&) [with Tp = cv::Rect; Alloc = std::allocator<cv::Rect >; std::vector<Tp, Alloc>::value_type = cv::Rect]’
    /usr/local/include/opencv4/opencv2/objdetect/detection_based_tracker.hpp:193:45: required from here
    /usr/include/c++/5/bits/vector.tcc:343:16: error: ambiguous overload for ‘operator=’ (operand types are ‘cv::Rect
    ’ and ‘cv::Rect
    ’)
    __position = _x_copy;
    ^
    In file included from /usr/local/include/opencv4/opencv2/core.hpp:58:0,
    from /usr/local/include/opencv4/opencv2/core/core.hpp:48,
    from /home/huihui/桌面/行为检测项目/gpu_flow-master/compute_flow.cpp:33:
    /usr/local/include/opencv4/opencv2/core/types.hpp:1852:13: note: candidate: cv::Rect
    <Tp>& cv::Rect<Tp>::operator=(const cv::Rect<_Tp>&) [with Tp = int]
    Rect
    <Tp>& Rect<Tp>::operator = ( const Rect<Tp>& r )
    ^
    /usr/local/include/opencv4/opencv2/core/types.hpp:1862:13: note: candidate: cv::Rect
    <Tp>& cv::Rect<Tp>::operator=(cv::Rect<_Tp>) [with Tp = int]
    Rect
    <Tp>& Rect<Tp>::operator = ( Rect<_Tp>&& r ) CV_NOEXCEPT
    ^
    /usr/local/include/opencv4/opencv2/core/types.hpp: In instantiation of ‘static _OI std::__copy_move<false, false, std::random_access_iterator_tag>::__copy_m(_II, _II, _OI) [with _II = const cv::KeyPoint
    ; _OI = cv::KeyPoint]’:
    /usr/include/c++/5/bits/stl_algobase.h:402:44: required from ‘_OI std::__copy_move_a(_II, _II, _OI) [with bool _IsMove = false; _II = const cv::KeyPoint*; _OI = cv::KeyPoint*]’
    /usr/include/c++/5/bits/stl_algobase.h:438:45: required from ‘_OI std::__copy_move_a2(_II, _II, _OI) [with bool _IsMove = false; _II = __gnu_cxx::__normal_iterator<const cv::KeyPoint*, std::vectorcv::KeyPoint >; _OI = __gnu_cxx::__normal_iterator<cv::KeyPoint*, std::vectorcv::KeyPoint >]’
    /usr/include/c++/5/bits/stl_algobase.h:471:8: required from ‘_OI std::copy(_II, _II, _OI) [with _II = __gnu_cxx::__normal_iterator<const cv::KeyPoint*, std::vectorcv::KeyPoint >; _OI = __gnu_cxx::__normal_iterator<cv::KeyPoint*, std::vectorcv::KeyPoint >]’
    /usr/include/c++/5/bits/vector.tcc:206:31: required from ‘std::vector<_Tp, _Alloc>& std::vector<_Tp, Alloc>::operator=(const std::vector<Tp, Alloc>&) [with Tp = cv::KeyPoint; Alloc = std::allocatorcv::KeyPoint]’
    /usr/local/include/opencv4/opencv2/core/persistence.hpp:1180:13: required from here
    /usr/local/include/opencv4/opencv2/core/types.hpp:711:27: error: ambiguous overload for ‘operator=’ (operand types are ‘cv::Point2f {aka cv::Point
    }’ and ‘const Point2f {aka const cv::Point
    }’)
    class CV_EXPORTS_W_SIMPLE KeyPoint
    ^
    In file included from /usr/local/include/opencv4/opencv2/core.hpp:58:0,
    from /usr/local/include/opencv4/opencv2/core/core.hpp:48,
    from /home/huihui/桌面/行为检测项目/gpu_flow-master/compute_flow.cpp:33:
    /usr/local/include/opencv4/opencv2/core/types.hpp:170:13: note: candidate: cv::Point
    <Tp>& cv::Point<Tp>::operator=(const cv::Point<Tp>&) [with Tp = float]
    Point
    & operator = (const Point
    & pt);
    ^
    /usr/local/include/opencv4/opencv2/core/types.hpp:171:13: note: candidate: cv::Point
    <Tp>& cv::Point<Tp>::operator=(cv::Point<Tp>) [with Tp = float; cv::Point<Tp> = cv::Point]
    Point
    & operator = (Point
    && pt) CV_NOEXCEPT;
    ^
    In file included from /usr/include/c++/5/bits/char_traits.h:39:0,
    from /usr/include/c++/5/string:40,
    from /home/huihui/桌面/行为检测项目/gpu_flow-master/compute_flow.cpp:20:
    /usr/include/c++/5/bits/stl_algobase.h:340:18: note: synthesized method ‘cv::KeyPoint& cv::KeyPoint::operator=(const cv::KeyPoint&)’ first required here
    __result = __first;
    ^
    /usr/include/c++/5/bits/stl_algobase.h: In instantiation of ‘static _BI2 std::__copy_move_backward<false, false, std::random_access_iterator_tag>::__copy_move_b(_BI1, _BI1, _BI2) [with BI1 = cv::Rect
    ; BI2 = cv::Rect
    ]’:
    /usr/include/c++/5/bits/stl_algobase.h:604:58: required from ‘_BI2 std::__copy_move_backward_a(_BI1, _BI1, _BI2) [with bool _IsMove = false; BI1 = cv::Rect; BI2 = cv::Rect]’
    /usr/include/c++/5/bits/stl_algobase.h:614:5: required from ‘_BI2 std::__copy_move_backward_a2(_BI1, _BI1, _BI2) [with bool _IsMove = false; BI1 = cv::Rect; BI2 = cv::Rect]’
    /usr/include/c++/5/bits/stl_algobase.h:649:8: required from ‘_BI2 std::copy_backward(_BI1, _BI1, _BI2) [with BI1 = cv::Rect; BI2 = cv::Rect]’
    /usr/include/c++/5/bits/vector.tcc:339:4: required from ‘void std::vector<_Tp, _Alloc>::_M_insert_aux(std::vector<_Tp, _Alloc>::iterator, const _Tp&) [with Tp = cv::Rect; Alloc = std::allocator<cv::Rect >; std::vector<_Tp, _Alloc>::iterator = __gnu_cxx::normal_iterator<cv::Rect*, std::vector<cv::Rect > >; typename std::_Vector_base<_Tp, Alloc>::pointer = cv::Rect*]’
    /usr/include/c++/5/bits/stl_vector.h:925:17: required from ‘void std::vector<_Tp, Alloc>::push_back(const value_type&) [with Tp = cv::Rect; Alloc = std::allocator<cv::Rect >; std::vector<Tp, Alloc>::value_type = cv::Rect]’
    /usr/local/include/opencv4/opencv2/objdetect/detection_based_tracker.hpp:193:45: required from here
    /usr/include/c++/5/bits/stl_algobase.h:549:18: error: ambiguous overload for ‘operator=’ (operand types are ‘cv::Rect
    ’ and ‘cv::Rect
    ’)
    *--__result = *--_last;
    ^
    In file included from /usr/local/include/opencv4/opencv2/core.hpp:58:0,
    from /usr/local/include/opencv4/opencv2/core/core.hpp:48,
    from /home/huihui/桌面/行为检测项目/gpu_flow-master/compute_flow.cpp:33:
    /usr/local/include/opencv4/opencv2/core/types.hpp:1852:13: note: candidate: cv::Rect
    <Tp>& cv::Rect<Tp>::operator=(const cv::Rect<_Tp>&) [with Tp = int]
    Rect
    <Tp>& Rect<Tp>::operator = ( const Rect<Tp>& r )
    ^
    /usr/local/include/opencv4/opencv2/core/types.hpp:1862:13: note: candidate: cv::Rect
    <Tp>& cv::Rect<Tp>::operator=(cv::Rect<_Tp>) [with Tp = int]
    Rect
    <Tp>& Rect<Tp>::operator = ( Rect<_Tp>&& r ) CV_NOEXCEPT
    ^
    CMakeFiles/compute_flow.dir/build.make:62: recipe for target 'CMakeFiles/compute_flow.dir/compute_flow.o' failed
    make[2]: *** [CMakeFiles/compute_flow.dir/compute_flow.o] Error 1
    CMakeFiles/Makefile2:99: recipe for target 'CMakeFiles/compute_flow.dir/all' failed
    make[1]: *** [CMakeFiles/compute_flow.dir/all] Error 2
    Makefile:83: recipe for target 'all' failed
    make: *** [all] Error 2

I really spent a lot of time on it and I need to finish installing it ASAP, so please help me out! I really appreciate you guys help!!!

/usr/include/opencv2/gpu/gpu.hpp:432:29: error: ‘vector’ does not name a type

I faced a problem while compiling compute_flow.cpp,As follows:
“/usr/include/opencv2/gpu/gpu.hpp:432:29: error: ‘vector’ does not name a type
CV_EXPORTS void merge(const vector& src, GpuMat& dst, Stream& stream = Stream::Null());
^
/usr/include/opencv2/gpu/gpu.hpp:432:35: error: expected ‘,’ or ‘...’ before ‘<’ token
CV_EXPORTS void merge(const vector& src, GpuMat& dst, Stream& stream = Stream::Null());
^
/usr/include/opencv2/gpu/gpu.hpp:438:42: error: ‘vector’ has not been declared
CV_EXPORTS void split(const GpuMat& src, vector& dst, Stream& stream = Stream::Null());
^
/usr/include/opencv2/gpu/gpu.hpp:438:48: error: expected ‘,’ or ‘...’ before ‘<’ token
CV_EXPORTS void split(const GpuMat& src, vector& dst, Stream& stream = Stream::Null());”
The opencv version shown in cmake is 3.2.0.I don't know how to solve the above problem.

Can't use after installation

Hello Christoph Feichtenhofer,
I have installed all requirements and nothing came errors when I installed. But when I run this code in your example ./brox_flow gpuID=0 type=1 it's return bash no such file or directory. (I created all required folder too)
And I then tried run
/gpu_flow/build$ ./compute_flow gpuID=0 type=1
And it returned
*** Error in './compute_flow': realloc(): invalid pointer: 0x00007f3fe138e840 *** Aborted (core dumped)
So what happened with my case, I cant find the issue with that error, all answers is about code and pointer in C/C++.
Thank in advance

Stride option

Is the option "stride" provided in the example same as option "skip"? If not what is the significance of option "stride"?

Segmentation Fault When Writing to Bins

Description
Settingbins=true in compute_flow.cpp, rebuilding, and running compute_flow results a Segmentation fault. This appears to be due to an incorrect initialization of the fx file descriptor in compute_flow.cpp:263, resulting in a write to a NULL file descriptor.

Error Log

(base) etang21@tibet15:/vision/u/etang21/gpu_flow/build$ ./compute_flow --vid_path=/scr/etang21/TH14/ex/thumos-vids --out_path=/scr/etang21/TH14/ex/replicate/TH14_frames_flow_unscaled --gpuID=0
start_vid:1gpuID:0flow method: 1 frameSkip: 1 vid_path: /scr/etang21/TH14/ex/thumos-vids out_path/scr/etang21/TH14/ex/replicate/TH14_frames_flow_unscaled jpegs: /scr/etang21/TH14/ex/replicate/TH14_frames_flow_unscaled/rgb/
Device 0:  "Tesla K40m"  11441Mb, sm_35, 2880 cores, Driver/Runtime ver.10.10/9.0
/scr/etang21/TH14/ex/thumos-vids/thumos15_video_validation_0000001.mp4    0/1
Segmentation fault

Fix
Fixing the initialization on compute_flow.cpp:263 fixes the issue. @Pedro-Abreu, this bug appears to have been introduced in b57b69a. I'll submit a pull-request momentarily!

OpenCV3 Make

Hi,

My computer's setup is Ubuntu 14.04, Cuda 8, CuDNN 5 and OpenCV 3.2.0. I faced a problem while compiling compute_flow.cpp. I think after OpenCv 2.4 the gpu module had been changed to cuda module. Is there any way to compensate this issue?

Thanks.

Which method dose this code use?

I learned that there is several method for optical flow extraction.I want to know what' your principle.Is there a paper for this?

Can I run the code on windows?

I try to run the code on Windows, but I get this error,
qq 20170608091105

It suggests failed to open the input file "opencv_dep_cudart.lib"

I saw a solution to this problem on a forum, it was simply add set(CUDA_USE_STATIC_CUDA_RUNTIME OFF) to cmakelists.txt, but it didn't work . I guess this solution only works on the linux system.
Could you please give me some suggestions? I have been working on the configuration for nearly 2 days.

Gstreamer Plugin Error

Hi,
I get the following error when I try and run the code
GStreamer Plugin: Embedded video playback halted; module decodebin0 reported: A Quicktime demuxer plugin is required to play this stream, but not installed. OpenCV Error: Assertion failed (s >= 0) in setSize, file /home/nileshk/opencv/opencv/modules/core/src/matrix.cpp, line 116 terminate called after throwing an instance of 'cv::Exception

What do you think I might be doing wrong here?

cmake installation bug

I solved my qt path bug,but this occur some errors again:
make[2]: *** [CMakeFiles/compute_flow.dir/compute_flow.o] Error 1
make[1]: *** [CMakeFiles/compute_flow.dir/all] Error 2
make: *** [all] Error 2
I didn't know whether it is qt or opencv ,or do i need to modify cmake.txt???
Thank you very much

OpenCV Error: No GPU support

I have OpenCV built with with_CUDA on so I don't know what the problem is, but I get the error below when I run the program:

start_vid:1gpuID:0flow method: 1 frameSkip: 1
OpenCV Error: No GPU support (The library is compiled without CUDA support) in setDevice, file /build/opencv-SviWsf/opencv-2.4.9.1+dfsg/modules/dynamicuda/include/opencv2/dynamicuda/dynamicuda.hpp, line 84
terminate called after throwing an instance of 'cv::Exception'
what(): /build/opencv-SviWsf/opencv-2.4.9.1+dfsg/modules/dynamicuda/include/opencv2/dynamicuda/dynamicuda.hpp:84: error: (-216) The library is compiled without CUDA support in function setDevice

Aborted (core dumped)

OpenCV 3.1 request

Hello Christoph,

First of all, thank you very much for releasing the tool. It's of great help to researchers like us. Currenly, I wish to run it with Opencv 3.1 and I would be really grateful if you can release the port for that. Can you please suggest the feasibility for that?

Thanks
Prashast

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.