首先感谢大佬们的开源~
Docker 复现 MaskTextSpotterV3 的过程以及问题解决:
主要还是follow大佬的步骤,这里使用docker复现。
1、首先是选择docker环境,之前选择pytorch1.4版本,发现安装
install apex 出错,后来提升到pytorch1.6版本以后通过。
docker pull pytorch/pytorch:1.6.0-cuda10.1-cudnn7-devel
2、但是安装MaskTextSpotterV3 失败
cd MaskTextSpotterV3
# build
python setup.py build develop
报错:
error: command ‘/usr/bin/nvcc‘ failed with exit status 1
后来发现问题不在于此,执着于解决该问题浪费大量时间,
发现在刚开始编译时就报错了,
maskrcnn_benchmark/csrc/cuda/deform_pool_cuda.cu(42): error: identifier "AT_CHECK" is undefined
解决思路修改两个文件的头:
maskrcnn_benchmark/csrc/cuda/deform_conv_cuda.cu和maskrcnn_benchmark/csrc/cuda/deform_pool_cuda.cu:
在头部增加三行代码:
#ifndef AT_CHECK
#define AT_CHECK TORCH_CHECK
#endif
再编译即可解决。
3、修改配置文件(更改训练好的模型路径)以及准备好测试文件(新建demo目录):
运行
python tools/demo.py
不出意外遇到两个报错:
1、ImportError: libGL.so.1: cannot open shared object file: No such file or directory
2、ImportError: libgthread-2.0.so.0: cannot open shared object file: No such file or directory
这种时候缺少安装啥:
1、
apt-get update
apt-get install sudo
2、
sudo apt update
sudo apt install libgl1-mesa-glx
3、
sudo apt-get update
sudo apt-get install libglib2.0-dev
然后再运行就ok了。