Ubuntu环境使用conda安装轻量级中文ocr开源项目chineseocr_lite,最简单的方式

问题

  • 接使用docker的方式来创建项目所报的错误
  • 选中文件之后,界面不停的绕圈,显示不了对于图片的识别结果,并且监控界面上出现错误提示如下
  • ImportError: libpython3.6m.so.1.0: cannot open shared object file: No such file or directory,这个问题目前无解,只好使用其余的方式来搭建Chineseocr_lite开源项目

第一步 安装Conda

安装

  • 一共有两种方式,推荐使用从清华镜像站下载,速度快并且稳定
  • 官方地址
  • 清华镜像
  • 使用如下命令进行安装,我使用的型号为Miniconda3-latest-Linux-x86_64.sh,读者需要基于自身的操作系统/64位还是32位,选择适合自己的版本
bash Miniconda3-latest-Linux-x86_64.sh
  • 执行上面命令之后,一路输入yes,安装过程很快就会完成

添加镜像

  • 使用如下命令添加清华镜像源
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main
  • 使用如下命令添加中科大镜像源
conda config --add channels https://mirrors.ustc.edu.cn/anaconda/pkgs/main/
conda config --add channels https://mirrors.ustc.edu.cn/anaconda/pkgs/free/
conda config --add channels https://mirrors.ustc.edu.cn/anaconda/cloud/conda-forge/
conda config --add channels https://mirrors.ustc.edu.cn/anaconda/cloud/msys2/
conda config --add channels https://mirrors.ustc.edu.cn/anaconda/cloud/bioconda/
conda config --add channels https://mirrors.ustc.edu.cn/anaconda/cloud/menpo/
  • 使用如下命令使镜像源生效 
conda config --set show_channel_urls yes

创建环境

  • 创建一个python3.6 的干净环境,命名为python3
conda create --name python3 python=3.6
  • 激活python3环境
conda activate python3

第二步 安装配置相关插件

  • 在pytorch 的官方找到 1.2 版本的conda对应的安装命令
  • pytorch官方主页
conda install pytorch==1.2.0 torchvision==0.4.0 cpuonly -c pytorch
  •  注意事项1 pytorch镜像不在上面的镜像路径里,需要重新配置
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/pytorch
  •  注意事项2 如果执行上面命令默认不使用设置的镜像源,需要将其改为
conda install pytorch==1.2.0 torchvision==0.4.0 cpuonly
  • 从GitHub下载chineseocr_lite项目,使用xftp工具,将项目上传到ubuntu操作系统里,我将其放到桌面的chineseocr文件夹下,使用命令解压之后,文件结构如下图所示

  •  PSENET 编译
cd chineseocr_lite/psenet/pse/
rm -rf pse.so 
make

启动web 服务

  • 绝对会失败,但是需要通过每次返回的错误提示来执行相应的操作
  • 使用如下命令,启动web服务
python3 app.py 8080 ##8080端口号,可以设置任意端口
  • 第一个错误 缺失web 模块

conda install web.py==0.40
  • 再次启动,第二个错误,缺失PIL

  • 网上搜了一下,才发现PIL仅支持到python2.7,所以在python3环境下使用conda安装PIL的时候,会出错。
    PIL:Python Imaging Library是Python平台事实上的图像处理标准库,由于PIL仅支持到Python 2.7,加上年久失修,于是一群志愿者在PIL的基础上创建了兼容的版本,名字叫Pillow,支持最新Python 3.x,又加入了许多新特性,因此,我们可以直接安装使用pillow。但是在这里需要设定pillow的版本号,输入如下的命令

 

conda install 'pillow<7.0.0'
  • 第三个错误 缺失scipy
conda install scipy
  • 第四个错误 缺失 cv2
conda install opencv
  • 第五个错误 缺失 cheroot
conda install cheroot
  • 第六个错误 缺失torch

  • 这个时候其实需要重装pytorch
conda install pytorch==1.2.0 torchvision==0.4.0 cpuonly
  • 这个时候总算不报错了 (>_<)

启动项目

  • 输入命令
python3 app.py 8080 ##8080端口号,可以设置任意端口
  • 显示监听端口,如果出现如下页面就代表成功了

  • 在浏览器输入 http://127.0.0.1:8080/ocr,勾选通用OCR,点击上传按钮,上传图片,大约16秒之后将输出的结果显示在右面,界面如下:

希望感兴趣的小伙伴也可以成功做出来

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/447242.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

基于Ubuntu使用docker的方式来搭建基于Yolo3+crnn的Chineseocr识别

Docker Docker简单易用&#xff0c;具体的安装和配置可以看我的或者其他人的博客 安装完之后&#xff0c;输入以下命令安装chineseocr并且开启服务 docker pull zergmk2/chineseocr docker run -d -p 8080:8080 zergmk2/chineseocr 在浏览器输入http://127.0.0.1:8080/ocr网…

c/c++ 内存使用指南 和实践指导

如果你完全理解如下内容&#xff0c; 请联系我&#xff1a;szu030606163.com&#xff0c; 讨论更深层次合作 。 1. 大内高手—内存模型 单线程模型 多线程模型 2. 大内高手—栈/堆 backtrace的实现 alloca的实现 可变参数的实现。 malloc/free系列函数简介 new…

mininet 应用实践

教学目的与学时建议 能够运用 mininet 可视化工具创建计算机网络拓扑结构能够运用 mininet 交互界面创建拓扑结构能够运用 python 脚本构建计算机网络拓扑结构建议&#xff1a;2 学时 实验环境 下载并安装虚拟机 VMware workstation&#xff1b;下载虚拟机镜像&#xff08; S…

实现基于darknet框架实现CTPN版本自然场景文字检测 与CNN+CTCOCR文字识别的ChineseOCR搭建

Github地址 Github源码地址 支持系统:mac/ubuntu python3.6 实现功能 文字检测&#xff1b; 文字识别&#xff1b; 支持GPU/CPU&#xff0c;CPU优化&#xff08;opencv dnn&#xff09; docker镜像服务&#xff08;CPU优化版本&#xff09; 下载镜像 链接:https://pan.baidu…

在服务器上搭建基于yolo3 与crnn 实现中文自然场景文字检测及识别,GPU版本

Github地址 参考地址作者大人&#xff0c;十分热心&#xff0c;对于我的问题&#xff0c;提供了大量的帮助&#xff0c;使我少走了很多的弯路&#xff0c;在此表示由衷的感谢 注意事项 使用nvidia-smi命令查看cuda的版本&#xff0c;必须是10.1或者10.0&#xff0c;10.2是万万…

算法入门篇 一 时间复杂度

时间复杂度 要求&#xff1a;只要高阶项&#xff0c;不要低阶项常数操作&#xff1a;操作花费的时间和数据量无关&#xff0c;比如数组寻址&#xff0c;直接利用偏移量找到对应元素的位置&#xff1b;非常数操作&#xff1a;比如list(链表)&#xff1b;查找元素需要遍历链表&a…

算法入门篇二 认识O(NlogN)的排序

递归 例子引出 使用递归的方法求出数组中的最大值&#xff08;利用的是栈&#xff09;求中点的方法改进 mid (left right) / 2 //但是如果left和right的数很大&#xff0c;相加会造成内容溢出 改进为 mid left (right - left) / 2 //(right - left)得到整个的长度&…

算法入门篇三 详解桶排序和整理排序知识 堆的相关操作 补充 不完整

归并排序不使用递归 使用一个变量&#xff0c;使其按照1、2、4、8递增&#xff0c;控制左右两边1个元素、2个元素、4个元素等元素的合并 完全二叉树 完全二叉树 要不全是满的&#xff0c;要不叶子节点出现在最后一层&#xff0c;只要出现了叶子节点&#xff0c;后面的都是叶子…

2023年12月24日学习总结

今日to do list&#xff1a; 做kaggle上面的流量预测项目☠️ 学习时不刷手机&#x1f921; okkkkkkkkkkkkkk 开始&#x1f44d;&#x1f34e; 0、我在干什么&#xff1f; 我在预测一个名字叫做elborn基站的下行链路流量&#xff0c;用过去29天的数据预测未来10天的数据 1、…

Mac/Linux系统连接远端服务器以及相同IP地址的服务器账号密码重置,ssh失败问题

连接远端服务器 ssh 账号IP地址 输入完成之后会提示输入密码&#xff0c;密码输入正确后&#xff0c;就可以连接成功了 重置ssh密钥 如果连接的服务器除了IP地址没有改变&#xff0c;其余的账号、密码、系统等都变了的话&#xff0c;因为曾经连接过的历史数据会保存到本地&a…

Linux操作系统监视NVIDIA的GPU使用情况

对于GPU相关参数介绍 使用命令周期性查看GPU运行情况最常用的参数是 -n&#xff0c; 后面指定是每多少秒来执行一次命令。监视显存&#xff1a;设置为每 1s 显示一次显存的情况&#xff1a;使用命令ctrlz退出 watch -n 1 nvidia-smi 参数介绍 Fan&#xff1a;显示风扇转速&am…

算法入门篇四 桶排序

桶排序 计数排序&#xff08;基于统计&#xff09; 要求数据是有限的&#xff0c;和数据状况有关&#xff0c;比如对于200个人统计他们的年龄分布&#xff0c;这个时候需要申请200个桶&#xff0c;因此对于输入数据的规模有限制&#xff0c;如果输入规模是不定的&#xff0c;…

RTP概述

1.1. RTP是什么 RTP全名是Real-time Transport Protocol&#xff08;实时传输协议&#xff09;。它是IETF提出的一个标准&#xff0c;对应的RFC文档为RFC3550&#xff08;RFC1889为其过期版本&#xff09;。RFC3550不仅定义了RTP&#xff0c;而且定义了配套的相关协议RTCP&…

算法入门篇五 链表

牛客网 算法入门篇 判断一个链表是否为回文结构 给定一个单链表的头节点head&#xff0c;请判断这个链表是否为回文结构1->2->1&#xff0c;返回为True;1->2->3为False 思路&#xff1a; 1&#xff0c;遍历链表&#xff0c;将所有元素压入栈中&#xff0c;然后再…

实时流媒体编程基于Linux环境开发

一、流媒体简介 随着Internet的日益普及&#xff0c;在网络上传输的数据已经不再局限于文字和图形&#xff0c;而是逐渐向声音和视频等多媒体格式过渡。目前在网络上传输音频/视频&#xff08;Audio/Video&#xff0c;简称A/V&#xff09;等多媒体文件时&#xff0c;基本上只有…

算法入门篇六 二叉树

牛客网 算法入门篇 左程云老师 个人复习&#xff0c;如果侵全&#xff0c;设为私密 二叉树遍历&#xff08;递归&#xff09; 先序遍历&#xff08;中&#xff0c;左&#xff0c;右&#xff09; 中序遍历&#xff08;左&#xff0c;中&#xff0c;右&#xff09; 后序遍历&a…

算法入门篇七 前缀树

牛客网 左程云老师的算法入门课 找二叉树的节点的后继节点 原则 如果节点有右子树&#xff0c;那么后继节点就是右子树的最左边的第一个节点如果节点没有右子树&#xff0c;如果节点是父节点的右孩子&#xff0c;就继续往上找&#xff0c;直到找到一个父节点是沿途节点的父节…

算法入门篇八 贪心算法

牛客网 左程云老师的算法入门课 贪心算法 贪心算法的解题步骤 例子 题目要求 解题策略 按照结束时间早的会议先安排&#xff0c;比如先安排【2&#xff0c;4】&#xff0c;当4结束了&#xff0c;所有开始时间小于4的全部淘汰&#xff0c;【1&#xff0c;7】、【3&#xff…

算法入门篇九 暴力递归

牛客网 左程云老师的算法入门课 暴力递归 原则 汉诺塔问题 问题 打印n层汉诺塔从左边移动到最右边的过程 思想 一共六个过程&#xff0c;左到右、左到中&#xff0c;中到左&#xff0c;中到右&#xff0c;右到左&#xff0c;右到中&#xff0c;互相嵌套使用 左到右 将1…

rtsp和sdp

RTSP 是由Realnetwork 和Netscape共同提出的如何有效地在IP网络上传输流媒体数据的应用层协议 。 实时流协议&#xff08;RTSP&#xff09;建立并控制一个或几个时间同步的连续流媒体&#xff0c;如音频和视频。尽管连续媒体流与控制流交叉是可能的&#xff0c;RTSP本身并不发…