grayleafy / VideoStitching

双路视频拼接
GNU General Public License v3.0
11 stars 1 forks source link

我想测试一下功能 #2

Open piaolinzhe opened 1 year ago

piaolinzhe commented 1 year ago

能告知一下系统的环境么?如cuda版本、open cv版本等

grayleafy commented 1 year ago

cuda11.6 opencv4

piaolinzhe commented 1 year ago

编译出错,我现在的环境是cuda 12.0,opencv 4.7,vs 2022,是不是一定要改成同样的版本?看你的代码库里cusolver_utils.h 都属于cuda中的库,有改写么? 已启动生成... 1>------ 已启动生成: 项目: VideoStitching-CUDA-and-CPU, 配置: Debug x64 ------ 1>Compiling CUDA source file ......\Desktop\projects\VideoStitching-CUDA-and-CPU\main.cu... 1> 1>C:\Users\XXX\source\repos\VideoStitching-CUDA-and-CPU>"C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v12.0\bin\nvcc.exe" -gencode=arch=compute_61,code=\"sm_61,compute_61\" -gencode=arch=compute_52,code=\"sm_52,compute_52\" --use-local-env -ccbin "C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.36.32532\bin\HostX64\x64" -x cu -I"C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v12.0\include" -I"C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v12.0\include" -G --keep-dir x64\Debug -maxrregcount=0 --machine 64 --compile -cudart static -g -DWIN32 -DWIN64 -D_DEBUG -D_CONSOLE -D_MBCS -Xcompiler "/EHsc /W3 /nologo /Od /Fdx64\Debug\vc143.pdb /FS /Zi /RTC1 /MDd " -o C:\Users\XXX\source\repos\VideoStitching-CUDA-and-CPU\x64\Debug\main.cu.obj "C:\Users\XXX\Desktop\projects\VideoStitching-CUDA-and-CPU\main.cu" 1>C:\opencv-4.7.0\cudabuild\install\include\opencv2/xfeatures2d.hpp(1): warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失 1>C:\opencv-4.7.0\cudabuild\install\include\opencv2/stitching/detail/warpers.hpp(235): warning #611-D: overloaded virtual function "cv::detail::PlaneWarper::buildMaps" is only partially overridden in class "cv::detail::AffineWarper" 1> 1>Remark: The warnings can be suppressed with "-diag-suppress " 1> 1>C:\opencv-4.7.0\cudabuild\install\include\opencv2/stitching/detail/warpers.hpp(235): warning #611-D: overloaded virtual function "cv::detail::PlaneWarper::warp" is only partially overridden in class "cv::detail::AffineWarper" 1> 1>C:\opencv-4.7.0\cudabuild\install\include\opencv2/stitching/detail/matchers.hpp(182): warning #611-D: overloaded virtual function "cv::detail::FeaturesMatcher::match" is only partially overridden in class "cv::detail::BestOf2NearestMatcher" 1> 1>C:\opencv-4.7.0\cudabuild\install\include\opencv2/stitching/detail/matchers.hpp(236): warning #611-D: overloaded virtual function "cv::detail::FeaturesMatcher::match" is only partially overridden in class "cv::detail::AffineBestOf2NearestMatcher" 1> 1>C:\opencv-4.7.0\cudabuild\install\include\opencv2/stitching/detail/blenders.hpp(100): warning #611-D: overloaded virtual function "cv::detail::Blender::prepare" is only partially overridden in class "cv::detail::FeatherBlender" 1> 1>C:\opencv-4.7.0\cudabuild\install\include\opencv2/stitching/detail/blenders.hpp(127): warning #611-D: overloaded virtual function "cv::detail::Blender::prepare" is only partially overridden in class "cv::detail::MultiBandBlender" 1> 1>C:\Users\XXX\Desktop\projects\VideoStitching-CUDA-and-CPU\cusolver_utils.h(93): error : "traits" is ambiguous 1> 1>C:\Users\XXX\Desktop\projects\VideoStitching-CUDA-and-CPU\cusolver_utils.h(113): error : "traits" is ambiguous 1> 1>C:\Users\XXX\Desktop\projects\VideoStitching-CUDA-and-CPU\cusolver_utils.h(133): error : "traits" is ambiguous 1> 1>C:\Users\XXX\Desktop\projects\VideoStitching-CUDA-and-CPU\cusolver_utils.h(156): error : "traits" is ambiguous 1> 1>C:\Users\XXX\Desktop\projects\VideoStitching-CUDA-and-CPU\cusolver_utils.h(222): error : "traits" is ambiguous 1> 1>C:\Users\XXX\Desktop\projects\VideoStitching-CUDA-and-CPU\cusolver_utils.h(241): error : "traits" is ambiguous 1> 1>C:\Users\XXX\Desktop\projects\VideoStitching-CUDA-and-CPU\cusolver_utils.h(241): error : type name is not allowed 1> 1>C:\Users\XXX\Desktop\projects\VideoStitching-CUDA-and-CPU\cusolver_utils.h(241): error : too many arguments in function call 1> 1>C:\Users\XXX\Desktop\projects\VideoStitching-CUDA-and-CPU\cusolver_utils.h(251): error : "traits" is ambiguous 1> 1>C:\Users\XXX\Desktop\projects\VideoStitching-CUDA-and-CPU\cusolver_utils.h(251): error : "traits" is ambiguous 1> 1>C:\Users\XXX\Desktop\projects\VideoStitching-CUDA-and-CPU\cusolver_utils.h(251): error : type name is not allowed 1> 1>C:\Users\XXX\Desktop\projects\VideoStitching-CUDA-and-CPU\cusolver_utils.h(251): error : the global scope has no "zero" 1> 1>C:\Users\XXX\Desktop\projects\VideoStitching-CUDA-and-CPU\cusolver_utils.h(253): error : "traits" is ambiguous 1> 1>C:\Users\XXX\Desktop\projects\VideoStitching-CUDA-and-CPU\cusolver_utils.h(253): error : type name is not allowed 1> 1>C:\Users\XXX\Desktop\projects\VideoStitching-CUDA-and-CPU\cusolver_utils.h(255): error : "traits" is ambiguous 1> 1>C:\Users\XXX\Desktop\projects\VideoStitching-CUDA-and-CPU\cusolver_utils.h(255): error : type name is not allowed 1> 1>C:\Users\XXX\Desktop\projects\VideoStitching-CUDA-and-CPU\cusolver_utils.h(255): error : too few arguments in function call 1> 1>C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v12.0\include\cuda\std\detail/libcxx/include/type_traits(566): error : "cuda" is ambiguous 1> 1>C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v12.0\include\cuda\std\detail/libcxx/include/type_traits(566): error : too many arguments for alias template "cuda::std::4::_BoolConstant" 1> 1>C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v12.0\include\cuda\std\detail/libcxx/include/type_traits(568): error : expected a ";" 1> 1>C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v12.0\include\cuda\std\detail/libcxx/include/type_traits(575): error : "cuda" is ambiguous 1> 1>C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v12.0\include\cuda\std\detail/libcxx/include/type_traits(575): error : too many arguments for alias template "cuda::std::4::_BoolConstant" 1> 1>C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v12.0\include\cuda\std\detail/libcxx/include/type_traits(577): error : expected a ";" 1> 1>C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v12.0\include\cuda\std\detail/libcxx/include/type_traits(1064): error : name followed by "::" must be a class or namespace name 1> 1>C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v12.0\include\cuda\std\detail/libcxx/include/type_traits(1137): error : "cuda::std::cuda" is ambiguous 1> 1>C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v12.0\include\cuda\std\detail/libcxx/include/type_traits(1160): error : not a class or struct name 1> 1>C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v12.0\include\cuda\std\detail/libcxx/include/type_traits(1194): error : name followed by "::" must be a class or namespace name 1> 1>C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v12.0\include\cuda\std\detail/libcxx/include/type_traits(1875): error : name followed by "::" must be a class or namespace name 1> 1>C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v12.0\include\cuda\std\detail/libcxx/include/type_traits(2097): error : "cuda::std::cuda" is ambiguous 1> 1>C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v12.0\include\cuda\std\detail/libcxx/include/type_traits(2097): error : expected an expression 1> 1>C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v12.0\include\cuda\std\detail/libcxx/include/type_traits(2097): error : "cuda::std::cuda" is ambiguous 1> 1>C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v12.0\include\cuda\std\detail/libcxx/include/type_traits(2097): error : expected an expression 1> 1>C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v12.0\include\cuda\std\detail/libcxx/include/type_traits(2101): error : "cuda" is ambiguous 1> 1>C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v12.0\include\cuda\std\detail/libcxx/include/type_traits(2101): error : expected an expression 1> 1>C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v12.0\include\cuda\std\detail/libcxx/include/type_traits(2101): error : "cuda" is ambiguous 1> 1>C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v12.0\include\cuda\std\detail/libcxx/include/type_traits(2101): error : expected an expression 1> 1>C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v12.0\include\cuda\std\detail/libcxx/include/type_traits(2160): error : name followed by "::" must be a class or namespace name 1> 1>C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v12.0\include\cuda\std\detail/libcxx/include/type_traits(2160): error : name followed by "::" must be a class or namespace name 1> 1>C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v12.0\include\cuda\std\detail/libcxx/include/type_traits(2186): error : "cuda::std::cuda" is ambiguous 1> 1>C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v12.0\include\cuda\std\detail/libcxx/include/type_traits(2186): error : expected an expression 1> 1>C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v12.0\include\cuda\std\detail/libcxx/include/type_traits(2186): error : "cuda::std::cuda" is ambiguous 1> 1>C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v12.0\include\cuda\std\detail/libcxx/include/type_traits(2186): error : expected an expression 1> 1>C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v12.0\include\cuda\std\detail/libcxx/include/type_traits(2259): error : "cuda" is ambiguous 1> 1>C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v12.0\include\cuda\std\detail/libcxx/include/type_traits(2259): error : expected an identifier 1> 1>C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v12.0\include\cuda\std\detail/libcxx/include/type_traits(2259): error : class or struct definition is missing 1> 1>C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v12.0\include\cuda\std\detail/libcxx/include/type_traits(2356): error : "cuda" is ambiguous 1> 1>C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v12.0\include\cuda\std\detail/libcxx/include/type_traits(3987): error : "cuda" is ambiguous 1> 1>C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v12.0\include\cuda\std\detail/libcxx/include/type_traits(3987): error : expected an identifier 1> 1>C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v12.0\include\cuda\std\detail/libcxx/include/type_traits(3987): error : class or struct definition is missing 1> 1>C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v12.0\include\cuda\std\detail/libcxx/include/type_traits(4229): error : "cuda::std::cuda" is ambiguous 1> 1>C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v12.0\include\cuda\std\detail/libcxx/include/type_traits(4229): error : "cuda::std::cuda" is ambiguous 1> 1>C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v12.0\include\cuda\std\detail/libcxx/include/type_traits(4229): error : "cuda" is ambiguous 1> 1>C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v12.0\include\cuda\std\detail/libcxx/include/type_traits(4229): error : "cuda" is ambiguous 1> 1>C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v12.0\include\cuda\std\detail/libcxx/include/type_traits(4229): error : "cuda" is ambiguous 1> 1>C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v12.0\include\cuda\std\detail/libcxx/include/type_traits(4229): error : "cuda" is ambiguous 1> 1>C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v12.0\include\cuda\std\detail/libcxx/include/type_traits(4236): error : "cuda::std::cuda" is ambiguous 1> 1>C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v12.0\include\cuda\std\detail/libcxx/include/type_traits(4236): error : "cuda::std::cuda" is ambiguous 1> 1>C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v12.0\include\cuda\std\detail/libcxx/include/type_traits(4236): error : "cuda" is ambiguous 1> 1>C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v12.0\include\cuda\std\detail/libcxx/include/type_traits(4236): error : "cuda" is ambiguous 1> 1>C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v12.0\include\cuda\std\detail/libcxx/include/type_traits(4236): error : "cuda" is ambiguous 1> 1>C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v12.0\include\cuda\std\detail/libcxx/include/type_traits(4236): error : "cuda" is ambiguous 1> 1>C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v12.0\include\cuda\std\detail/libcxx/include/type_traits(4243): error : "cuda::std::cuda" is ambiguous 1> 1>C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v12.0\include\cuda\std\detail/libcxx/include/type_traits(4243): error : "cuda" is ambiguous 1> 1>C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v12.0\include\cuda\std\detail/libcxx/include/type_traits(4243): error : "cuda" is ambiguous 1> 1>C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v12.0\include\cuda\std\detail/libcxx/include/type_traits(4250): error : "cuda::std::cuda" is ambiguous 1> 1>C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v12.0\include\cuda\std\detail/libcxx/include/type_traits(4250): error : "cuda" is ambiguous 1> 1>C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v12.0\include\cuda\std\detail/libcxx/include/type_traits(4250): error : "cuda" is ambiguous 1> 1>C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v12.0\include\cuda\std\detail/libcxx/include/type_traits(4257): error : "cuda::std::cuda" is ambiguous 1> 1>C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v12.0\include\cuda\std\detail/libcxx/include/type_traits(4257): error : "cuda::std::cuda" is ambiguous 1> 1>C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v12.0\include\cuda\std\detail/libcxx/include/type_traits(4257): error : "cuda" is ambiguous 1> 1>C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v12.0\include\cuda\std\detail/libcxx/include/type_traits(4257): error : "cuda" is ambiguous 1> 1>C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v12.0\include\cuda\std\detail/libcxx/include/type_traits(4253): error : redefinition of default argument 1> 1>C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v12.0\include\cuda\std\detail/libcxx/include/type_traits(4256): error : function template "cuda::std::4::invoke(_Fp &&, _A0 &&, _Args &&...)->" has already been defined 1> 1>C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v12.0\include\cuda\std\detail/libcxx/include/type_traits(4264): error : "cuda::std::cuda" is ambiguous 1> 1>C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v12.0\include\cuda\std\detail/libcxx/include/type_traits(4264): error : "cuda::std::cuda" is ambiguous 1> 1>C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v12.0\include\cuda\std\detail/libcxx/include/type_traits(4264): error : "cuda" is ambiguous 1> 1>C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v12.0\include\cuda\std\detail/libcxx/include/type_traits(4264): error : "cuda" is ambiguous 1> 1>C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v12.0\include\cuda\std\detail/libcxx/include/type_traits(4260): error : redefinition of default argument 1> 1>C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v12.0\include\cuda\std\detail/libcxx/include/type_traits(4263): error : function template "cuda::std::4::invoke_constexpr(_Fp &&, _A0 &&, _Args &&...)->" has already been defined 1> 1>C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v12.0\include\cuda\std\detail/libcxx/include/type_traits(4273): error : "cuda::std::cuda" is ambiguous 1> 1>C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v12.0\include\cuda\std\detail/libcxx/include/type_traits(4273): error : "cuda" is ambiguous 1> 1>C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v12.0\include\cuda\std\detail/libcxx/include/type_traits(4273): error : "cuda" is ambiguous 1> 1>C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v12.0\include\cuda\std\detail/libcxx/include/type_traits(4280): error : "cuda::std::cuda" is ambiguous 1> 1>C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v12.0\include\cuda\std\detail/libcxx/include/type_traits(4280): error : "cuda" is ambiguous 1> 1>C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v12.0\include\cuda\std\detail/libcxx/include/type_traits(4280): error : "cuda" is ambiguous 1> 1>C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v12.0\include\cuda\std\detail/libcxx/include/type_traits(4301): error : "cuda::std::cuda" is ambiguous 1> 1>C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v12.0\include\cuda\std\detail/libcxx/include/type_traits(4301): error : "cuda" is ambiguous 1> 1>C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v12.0\include\cuda\std\detail/libcxx/include/type_traits(4297): error : redefinition of default argument 1> 1>C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v12.0\include\cuda\std\detail/libcxx/include/type_traits(4300): error : function template "cuda::std::4::invoke(_Fp &&, _A0 &&)->" has already been defined 1> 1>C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v12.0\include\cuda\std\detail/libcxx/include/type_traits(4308): error : "cuda::std::cuda" is ambiguous 1> 1>C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v12.0\include\cuda\std\detail/libcxx/include/type_traits(4308): error : "cuda" is ambiguous 1> 1>C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v12.0\include\cuda\std\detail/libcxx/include/type_traits(4304): error : redefinition of default argument 1> 1>C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v12.0\include\cuda\std\detail/libcxx/include/type_traits(4307): error : function template "cuda::std::4::invoke_constexpr(_Fp &&, _A0 &&)->" has already been defined 1> 1>C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v12.0\include\cuda\std\detail/libcxx/include/type_traits(4316): error : "cuda::std::cuda" is ambiguous 1> 1>C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v12.0\include\cuda\std\detail/libcxx/include/type_traits(4316): error : "cuda::std::cuda" is ambiguous 1> 1>C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v12.0\include\cuda\std\detail/libcxx/include/type_traits(4316): error : "cuda" is ambiguous 1> 1>C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v12.0\include\cuda\std\detail/libcxx/include/type_traits(4316): error : "cuda" is ambiguous 1> 1>C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v12.0\include\cuda\std\detail/libcxx/include/type_traits(4316): error : "cuda" is ambiguous 1> 1>C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v12.0\include\cuda\std\detail/libcxx/include/type_traits(4316): error : "cuda" is ambiguous 1> 1>C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v12.0\include\cuda\std\detail/libcxx/include/type_traits(4322): error : "cuda::std::cuda" is ambiguous 1> 1>Error limit reached. 1>100 errors detected in the compilation of "C:/Users/XXX/Desktop/projects/VideoStitching-CUDA-and-CPU/main.cu". 1>Compilation terminated. 1>main.cu 1>C:\Program Files\Microsoft Visual Studio\2022\Community\MSBuild\Microsoft\VC\v170\BuildCustomizations\CUDA 12.0.targets(794,9): error MSB3721: 命令“"C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v12.0\bin\nvcc.exe" -gencode=arch=compute_61,code=\"sm_61,compute_61\" -gencode=arch=compute_52,code=\"sm_52,compute_52\" --use-local-env -ccbin "C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.36.32532\bin\HostX64\x64" -x cu -I"C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v12.0\include" -I"C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v12.0\include" -G --keep-dir x64\Debug -maxrregcount=0 --machine 64 --compile -cudart static -g -DWIN32 -DWIN64 -D_DEBUG -D_CONSOLE -D_MBCS -Xcompiler "/EHsc /W3 /nologo /Od /Fdx64\Debug\vc143.pdb /FS /Zi /RTC1 /MDd " -o C:\Users\XXX\source\repos\VideoStitching-CUDA-and-CPU\x64\Debug\main.cu.obj "C:\Users\XXX\Desktop\projects\VideoStitching-CUDA-and-CPU\main.cu"”已退出,返回代码为 4。 1>已完成生成项目“VideoStitching-CUDA-and-CPU.vcxproj”的操作 - 失败。 ========== 生成: 0 成功,1 失败,0 最新,0 已跳过 ========== ========= 生成 开始于 4:31 PM,并花费了 06.856 秒 ==========

grayleafy commented 1 year ago

你是否已经安装了opencv contrib模块,并且编译了相应的cuda、xfeatures2d模块

piaolinzhe commented 1 year ago

是的,我编译opencv时,加上了cuda和xfeatures2d模块

grayleafy commented 1 year ago

那我也不太清楚了,我当时编译opencv的时候只支持vs2019前的版本,不够你可以先写一个cuda程序并且使用opencv gpu相关的函数测试一下你的cuda和opencv的安装是否正确

piaolinzhe commented 1 year ago

感谢回复,想确认一下cusolver_utils.h ,这个文件是原文件?还是你做过改写?我在cuda 12中未找到

grayleafy commented 1 year ago

这是cusolver库里面的,这是这个库的官网https://docs.nvidia.com/cuda/cusolver/index.html

piaolinzhe commented 1 year ago

最后用cuda11.6 opencv4.6 环境搭建成功。感谢

thomascatlee commented 5 months ago

编译报错 videostitch.h(106): error: calling a host function("cv::Point ::Point(const cv::Point_ &)") from a global function("ConstructA_8UC4") is not allowed

videostitch.h(106): error: identifier "cv::Point ::Point" is undefined in device code

videostitch.h(107): error: calling a host function("cv::Point ::Point(const cv::Point_ &)") from a global function("ConstructA_8UC4") is not allowed

videostitch.h(107): error: identifier "cv::Point ::Point" is undefined in device code

videostitch.h(113): error: calling a host function("cv::Point ::Point(const cv::Point_ &)") from a global function("ConstructA_8UC4") is not allowed

videostitch.h(113): error: identifier "cv::Point ::Point" is undefined in device code

videostitch.h(114): error: calling a host function("cv::Point ::Point(const cv::Point_ &)") from a global function("ConstructA_8UC4") is not allowed

videostitch.h(114): error: identifier "cv::Point ::Point" is undefined in device code

videostitch.h(120): error: calling a host function("cv::Point ::Point(const cv::Point_ &)") from a global function("ConstructA_8UC4") is not allowed

videostitch.h(120): error: identifier "cv::Point ::Point" is undefined in device code

videostitch.h(121): error: calling a host function("cv::Point ::Point(const cv::Point_ &)") from a global function("ConstructA_8UC4") is not allowed

videostitch.h(121): error: identifier "cv::Point ::Point" is undefined in device code

哪里出问题呢

grayleafy commented 5 months ago

我没遇到过这个问题,可以检测一下你的项目配置是否正确,h文件有没有重复编译

thomascatlee commented 5 months ago

之前的报错是opencv的版本问题,现在换了4.9的就不报这些错了。

thomascatlee commented 5 months ago

贴一下我链接的库,一个个找还挺麻烦的。 nvcc main.cu -I /opt/opencv/include/opencv4 -o main -gencode=arch=compute_86,code=sm_86 -L /opt/opencv/lib64 -lcublas -lcusolver -lcudart -lnvcuvid -lopencv_core -lopencv_cudaarithm -lopencv_videoio -lopencv_imgproc -lopencv_features2d -lopencv_calib3d -lopencv_cudaimgproc -lopencv_imgcodecs -lopencv_highgui -lopencv_cudacodec -lopencv_cudawarping -lopencv_cudafeatures2d

thomascatlee commented 5 months ago

现在跑起来是这样的效果: image 就是这样的吗?

grayleafy commented 5 months ago

理论上不该是这样的,怎么感觉不同帧之间的画面都重在一起了

thomascatlee commented 5 months ago

我编个Windows下的试试

thomascatlee commented 5 months ago

image 速度比linux快多了,显示和linux差不多的样子,另外显示的时候鱼眼那部分一直在闪(可能是Linux下也有,但是我没看到)。