是使用libtorch构建c++推理程序中,因为使用 opencv的Scalar类型,导致和libtorch命名空间的Scalar冲突:
image.png
image.png
相关版本:
libtorch: 1.5.1
cuda: 10.1
cudnn: 10.1
gcc: 5.4.0
opencv: 4.0.1
解决方案
- 修改
libtorch/include/ATen/detail/CUDAHooksInterface.h
的第26行:
namespace at{
using c10:Allocator; // 添加命名空间
- 修改
libtorch/include/ATen/core/TensorBody.h
的第35行
namespace at{
using c10::Scalar; //添加命名空间