Reprodução de código: detecção remota de alvo rotativo (você pode treinar seu próprio conjunto de dados)

Seguiu os dois métodos apresentados pelo Dr. Yangxue. Este artigo registra apenas os problemas encontrados durante o processo de reprodução. Não vou escrever a introdução da tese específica. O próprio conhecimento do mestrado foi escrito em detalhes.

SCRDet: https://zhuanlan.zhihu.com/p/107400817

CSL: https://zhuanlan.zhihu.com/p/111493759

O primeiro método para reproduzir: https://github.com/DetectionTeamUCAS/R2CNN-Plus-Plus_Tensorflow

Sob Ubuntu16.04

1、tensorflow >= 1.2
2、cuda8.0
3、python2.7 (anaconda2 recommend)
4、opencv(cv2)
5、tfplot

O tensorflow-gpu == 1.2 e 1.4 medido pode ser usado, cuda8 precisa ser compilado e instalado localmente e o ambiente python2.7 pode ser criado em anaconda3

Na verdade, ao instalar o tf, o conda não pôde instalar diretamente uma versão tão baixa do tensorflow-gpu, então ele baixou o wheel do pypi e o instalou localmente, e alguns outros pacotes dependentes seriam instalados automaticamente.

pip install tensorflow_gpu-1.4.0-cp27-cp27mu-manylinux1_x86_64.wheel

Outra coisa a notar é que esta versão do tf está equipada com numpy 1.16.3. Ao instalar o opencv, você precisa principalmente controlar a versão. Caso contrário, um erro será relatado se a versão numpy não estiver correta. Após tentar, opencv-python instala 3.3.1.11

pip install opencv-python==3.3.1.11

O Cuda8 precisa ser compilado localmente, instale o cudatoolikit8 no ambiente conda e relate um erro nas compilações subsequentes. Além disso, um cudnn é necessário no ambiente virtual conda para importar o tensorflow normalmente.

conda install cudnn==5.1.10

Na verdade, a instalação do cython não precisa controlar estritamente a versão. Para ser seguro, ele corresponde ao arquivo na pasta. Cython escolhe 0.25.2

Há também um tfplot que precisa ser instalado, diretamente pip

conda install cython==0.25.2

pip install tensorflow-plot

Finalmente, de acordo com o processo do autor, coloque os pesos de pré-treinamento na pasta correspondente e entregue-o ao Baidu Cloud intimamente, obrigado

Treinar seu próprio conjunto de dados também é muito simples. Se a anotação do conjunto de dados for txt e for [x1, y1, x2, y2, x3, y3, x4, y4, classe, mais], há A ferramenta direta pode ser txt2xml.py.Após a conversão para xml, tfrecord pode ser gerado de acordo com os passos do autor.Os passos no github são muito detalhados.

Após preparar os dados, siga os prompts do github e modifique a configuração em diversos arquivos para iniciar o treinamento.

Outro método CSL https://github.com/Thinklab-SJTU/CSL_RetinaNet_Tensorflow a configuração é muito simples

conda create -n xxx python=3.6
conda activate xxx
conda install tensorflow-gpu=1.13.1
conda install cudatoolkit==10.0
conda install cudnn==7.6.5
pip install opencv-python
pip install tensorflow-plot

Treinar seu próprio conjunto de dados é semelhante ao método anterior, este oferece suporte a várias GPUs.

Acho que você gosta

Origin blog.csdn.net/hesongzefairy/article/details/109162527
Recomendado
Clasificación