刚弄明白CTPN部署的时候,CTPN作者刚更新了简易代码版本,看介绍是把代码优化了不需要多的配置。。。感觉好忧伤!

源码地址:https://github.com/eragonruan/text-detection-ctpn/tree/master

新版本地址:https://github.com/eragonruan/text-detection-ctpn

环境:win10+anaconda3+python3.6+tensorflow1.10+vs2015_runtime

一 代码修改

1.设置  "USE_GPU_NMS "  在文件  ./ctpn/text.yml as "False"

2.设置 "__C.USE_GPU_NMS"  在文件  ./lib/fast_rcnn/config.py  为  "False";

3.注释掉 "from lib.utils.gpu_nms import gpu_nms" 在文件  ./lib/fast_rcnn/nms_wrapper.py  中;

4.在文件lib \ utils \ cython_nms.pyx的第25行进行一些更改“np.int_t”更改为“np.intp_t” 
否则出现“ValueError:Buffer dtype mismatch,expected'int_t'但得到'long long' “在第6步。
5.在文件 \text-detection-ctpn-master\lib\rpn_msr\proposal_layer_tf.py中的第53行加入“cfg_key=cfg_key.decode('utf-8')”

6.将“base_name = image_name.split('/')[ - 1]”更改为“base_name = image_name.split('\\')[ - 1]”在文件“ctpn \ demo.py”的第24行中

二 重新编译文件

打开anaconda prompt,激活tensorlow环境,进入到路径“\ text-detection-ctpn-master \ lib \ utils ”中去;

1.执行 cython bbox.pyx

2.执行 cython cython_nms.pyx

三 重建setup文件

打开文件夹”text-detection-ctpn-master\lib\utils“,新建一个setup_cpu.py文件,文件代码如下所示:

import numpy as np
from distutils.core import setup
from Cython.Build import cythonize
from distutils.extension import Extension
numpy_include = np.get_include()
setup(ext_modules=cythonize("bbox.pyx"),include_dirs=[numpy_include])
setup(ext_modules=cythonize("cython_nms.pyx"),include_dirs=[numpy_include])

四 重新编译

打开vs2015 X64 本机工具命令提示符,激活tensorflow环境,进入”text-detection-ctpn-master\lib\utils“,

执行下列代码

python setup_cpu.py build_ext --inplace 

会在文件夹”text-detection-ctpn-master\lib\utils\lib\utils“中生成2个pyd文件“bbox.cp36-win_amd64.pyd”和“cython_nms.cp36-win_amd64.pyd”,将这两个文件复制到“text-detection-ctpn-master\lib\utils”。

五 运行demo

在运行demo前需要下载checkpoints训练好的模型到工程环境中去,下载完了直接解压成文件夹放到root目录下!类似于下图:

在anaconda prompt中,激活tensorflow环境进入到工程root路径下,

python  .\ctpn\demo.py

如果出现以下界面就证明成功运行了。

后记:

作为一个小白,花了好多功夫才完成的,但仍然不知道其中一些步骤的目的什么,说白了就是知其然不知其之所以然,希望努力加油弄明白配置环境的原理。共勉!

参考文献:

1.https://github.com/eragonruan/text-detection-ctpn/issues/264

2.https://blog.csdn.net/qq_32791307/article/details/81324343

win10+tensorflow CPU 部署CTPN环境相关推荐

  1. win10系统的深度学习环境搭建以win10+rtx2060+tensorflow为例/K210的win10系统的深度学习环境搭建/有无显卡均可安装

    win10系统的深度学习环境搭建以win10+rtx2060+tensorflow为例 K210的win10系统的深度学习环境搭建 有无显卡均可安装 一 软件准备 1.Anaconda3 软件介绍:A ...

  2. Win10快速搭建Tensorflow(CPU/GPU)

    Win10快速搭建Tensorflow 如果需要详细的安装介绍请看:安装详解 一.快速搭建过程: 第一步:下载Anaconda,并安装. Anaconda官网下载地址:https://www.anac ...

  3. DeepLearning:windows环境下C++环境实现Tensorflow编译部署

    [写在前面] 都说深度学习的这条大船上来了就应该不惧风雨,可是在配置环境这条路上的坑真是刚出旧坑又入新坑,2021年最后一天了.想想rensorflow的源代码在windows 环境下的编译历程,就忍 ...

  4. 在华为 Kylin V10 SP1操作系统,HUAWEI,Kunpeng 920 CPU(4Cores)单机上模拟部署生产环境TiDB集群...

    作者:陈麒 原文来源: https://tidb.net/blog/0cacc3df TiDB 集群部署 在单机上模拟部署生产环境集群 适用场景:希望用单台 Linux 服务器,体验 TiDB 最小的 ...

  5. TensorFlow CPU环境 SSE/AVX/FMA 指令集编译

    TensorFlow CPU环境 SSE/AVX/FMA 指令集编译 sess.run()出现如下Warning W tensorflow/core/platform/cpu_feature_guar ...

  6. win10 PaddleOCR c++ cpu部署

    win10 PaddleOCR c++ cpu部署 一.下载PaddleOCR源代码 二.安装opencv 三.安装paddle预测库 四.cmake编译 五.生成 六.推理 七.附件: `diren ...

  7. Win10 TensorFlow(gpu)安装详解

    Win10 TensorFlow(gpu)安装详解 写在前面:TensorFlow是谷歌基于DistBelief进行研发的第二代人工智能学习系统,其命名来源于本身的运行原理.Tensor(张量)意味着 ...

  8. 白话tensorflow分布式部署和开发

    2019独角兽企业重金招聘Python工程师标准>>> 白话tensorflow分布式部署和开发 博客分类: 深度学习 关于tensorflow的分布式训练和部署, 官方有个英文的文 ...

  9. 第一章:pycharm、anaconda、opencv、pytorch、tensorflow、paddlex等环境配置大全总结【图像处理py版本】

    第一章:pycharm.anaconda.opencv.pytorch.tensorflow.百度飞桨 等环境配置大全总结 0 引言 一 .环境搭建 1.pycharm+anaconda安装 1.1 ...

最新文章

  1. 译者招募 | 这本“顶级”微积分教材,中文版要来了!
  2. Centos7单端口单配置文件多IP
  3. UI设计实战篇——利用Bootstrap框架制作查询页面的界面
  4. 国内企业应如何实施ITSM
  5. shell读取文件到变量、管道重定向、if和while嵌套使用、命令替换
  6. go语言 数组 map整体json
  7. java多核并行计算_谈谈Java任务的并行处理
  8. jzoj3914-人品问题【树形dp】
  9. OpenCV文档阅读笔记-Imread flags解析与实例(保存透明图像)
  10. 用纯css实现的html5 logo标志
  11. sql server 2005技术大全_3年2.16~3.2万吨!上机数控子公司与新疆大全签订多晶硅采购长单...
  12. 做报表5年,被批Excel毫无新意,能开发的可视化报表让我重获新生
  13. 六:Python断言方法:assert
  14. 酷比魔方iplay20_酷比魔方iPlay20Pro配置怎么样?iPlay20Pro处理器性能全面评测
  15. 《小猫猫大课堂》1——小喵是如何开启敲代码之路的?
  16. winxp下用ssh控制 linux 服务器
  17. Node如何处理模块之间的关系
  18. 区块链学习笔记4——BTC实现
  19. Idea配置自动导包
  20. unity3d坑收集

热门文章

  1. MVC中validateRequest=false不起作用
  2. 汇编学习笔记(二)--数据处理的两个基本问题
  3. css获取到指定元素的宽度,在回调返回宽度值
  4. 函数函数sigaction、signal
  5. python---重点(设计模式)
  6. windows 添加开始菜单
  7. OPENCV图像轮廓检测
  8. HDU - 1723 - Distribute Message
  9. oh-my-zsh upgrade problem
  10. hdu 1423 最长公共递增子序列