百度飞浆OCR半自动标注软件OCRLabel配置【详细

embedded/2024/9/20 1:23:55/ 标签: 百度, ocr

今天帮标注人员写了一份完整的百度飞浆OCR标注软件的安装配置说明书、以供标注人员使用

包括各种环境安装包一起分享出来【conda\python\label项目包、清华源配置文件、pycharm社区版安装包】

提取码:umys

1、解压并安装tools文件下的miniconda,建议安装在D盘下的某个目录中,【C盘权限问题比较多后续会麻烦】
在这里插入图片描述
在这里插入图片描述

安装完成之后,检查 我的电脑-》属性-》高级系统变量-》path中是否有下框标红路径,没有的话需要加上【你自己的安装路径】,我的安装路径在D:\miniconda3,示例:
在这里插入图片描述

2、拿到tools文件夹下的.condarc 文件放在“C:\Users\XXX”下【XXX是你的本机用户名】,【我的用户名为29162】示例:
在这里插入图片描述

3、在最近安装找到anaconda prompt,【没找到可以在搜索框搜索】右键管理员身份打开。
①输入 conda create -n OCRTest python=3.8 【这个命令是创建了个环境,其中OCRTest是新取的环境名,这里取名以OCRTest为例】
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

输入“y”
显示到这里说明新环境创建成功
②把tools文件下的PaddleOCR-dygraph.zip解压,可以放到你自己的路径下,【我的路径是D:\BaiduNetdiskDownload\PaddleOCR-dygraph\PaddleOCR-dygraph,并以这个路径为例】
③在刚刚的Anaconda窗口中输入
conda activate OCRTest 【命令行前面的base变为OCRTest说明环境激活成功】

d:
cd D:\BaiduNetdiskDownload\PaddleOCR-dygraph\PaddleOCR-dygraph\PPOCRLabel 

【注意,是进入到了PPOCRLabel路径下了】
在这里插入图片描述

④输入以下命令 【请直接按照截图中的步骤进行安装和运行,指令贴在下面了,方便粘贴使用】

conda install paddlepaddle==2.6.1 --channel https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/Paddle/win-64   
python PPOCRLabel.py
pip install xlrd
python PPOCRLabel.py
pip install PyQt5

如果遇到Proceed ([y]/n)? 直接输入y
如果遇到paddle报错,请输入:

conda install paddlepaddle==2.6.1 --channel https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/Paddle/win-64  

如果遇到cv2报错,请输入

cd ..
pip install -r requirements.txt

如果报错OMP: Error #15: Initializing libiomp5md.dll请输入

set KMP_DUPLICATE_LIB_OK=TRUE

详细步骤按照截图:
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

⑤至此,标注软件成功安装并打开啦!!!

解压xunlianji,并在标注软件界面选择 文件-》打开目录-》①选择你刚刚解压完的图片所在文件夹路径,②文件-》自动导出标记结果,界面如下,快捷键信息如下【常用快捷键w是新建标注框,d是切换下一张】。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

手动缩小识别框,确保数字全部被识别框包裹。

在这里插入图片描述

自动标注会有一些错误,我们需要的仅仅是正确的号码牌数字
以下是几类错误,需要手动修改
1、多了英文符号的,需要在右侧红色框框里去掉英文符号

2、出现了汉字“品”需要删掉,选中汉字框,右键删除选择的区块
在这里插入图片描述在这里插入图片描述

3、有号码牌残缺不全的,需要我们手动修改右侧的框内数字【左右号码牌通常相差为1,比如下面号码牌我知道左面是0186,那么即使右面号码牌的数字略有残缺,但我们可以猜出号码牌为0185】
在这里插入图片描述

4、标签框框过长的,手动拖动缩短;有多识别的,需要删掉多识别的内容,并拖动缩小标签框
在这里插入图片描述

修改后应该如下所示:
在这里插入图片描述

5、标签连在一起的,
在这里插入图片描述

修改后为:

在这里插入图片描述


http://www.ppmy.cn/embedded/108336.html

相关文章

Win32绕过UAC弹窗获取管理员权限

在早些年写一些桌面软件时,需要管理员权限,但是又不想UAC弹窗,所以一般是直接将UAC的级别拉到最低,或者直接禁用UAC的相关功能。 什么是UAC(User Account Control) 用户帐户控制 (UAC) 是一项 Windows 安全功能,旨在保…

Flink SQL 中常见的数据类型

Flink SQL 中常见的数据类型 目标 通过了解Flink SQL 中常见的数据类型,掌握正确编写Flink SQL 语句背景 Apache Flink 支持多种数据类型,这些数据类型被用于 Flink SQL 表达式、Table API 以及 DataStream API 中。以下是 Flink SQL 中常见的数据类型: 基本数据类型 Boo…

<Rust>egui学习之部件(十一):如何在窗口中添加单选框radiobutton部件?

前言 本专栏是关于Rust的GUI库egui的部件讲解及应用实例分析,主要讲解egui的源代码、部件属性、如何应用。 环境配置 系统:windows 平台:visual studio code 语言:rust 库:egui、eframe 概述 本文是本专栏的第十一篇…

算法练习题17——leetcode54螺旋矩阵

题目描述 给你一个 m 行 n 列的矩阵 matrix &#xff0c;请按照 顺时针螺旋顺序 &#xff0c;返回矩阵中的所有元素。 代码 import java.util.*;class Solution {public List<Integer> spiralOrder(int[][] matrix) {// 用于存储螺旋顺序遍历的结果List<Integer>…

学习整理使用jquery实现获取相同name被选中的多选框值的方法

学习整理使用jquery实现获取相同name被选中的多选框值的方法 <html><head><meta charset"gbk"><!-- 引入JQuery --><script src"https://www.qipa250.com/jquery/dist/jquery.min.js" type"text/javascript"><…

flutter开发实战-flutter build web微信无法识别二维码及小程序码问题

flutter开发实战-flutter build web微信无法识别二维码及小程序码问题 GitHub Pages是一个直接从GitHub存储库托管的静态站点服务&#xff0c;‌它允许用户通过简单的配置&#xff0c;‌将个人的代码项目转化为一个可以在线访问的网站。‌这里使用flutter build web来构建web发…

现代计算机中数字的表示与浮点数、定点数

现代计算机中数字的表示与浮点数、定点数 导读&#xff1a;浮点数运算是一个非常有技术含量的话题&#xff0c;不太容易掌握。许多程序员都不清楚使用操作符比较float/double类型的话到底出现什么问题。这篇文章讲述了浮点数的来龙去脉&#xff0c;所有的软件开发人员都应该读…

【网络安全】服务基础第二阶段——第三节:Linux系统管理基础----Linux用户与组管理

目录 一、用户与组管理命令 1.1 用户分类与UID范围 1.2 用户管理命令 1.2.1 useradd 1.2.2 groupadd 1.2.3 usermod 1.2.4 userdel 1.3 组管理命令 1.3.1 groupdel 1.3.2 查看密码文件 /etc/shadow 1.3.4 passwd 1.4 Linux密码暴力破解 二、权限管理 2.1 文件与目…

封装触底加载组件

&#xff08;1&#xff09;首先创建一个文件名为&#xff1a;InfiniteScroll.vue <template><div ref"scrollContainer" class"infinite-scroll-container"><slot></slot><div v-if"loading" class"loading-sp…

nginx 新建一个 PC web 站点

注意&#xff1a;进行实例之前必须完成nginx的源码编译。&#xff08;阅读往期文章完成步骤&#xff09; 1.编辑nginx的配置文件&#xff0c;修改内容 [rootlocalhost ~]# vim /usr/local/nginx/conf/nginx.conf 2.创建新目录/usr/local/nginx/conf.d/&#xff0c;编辑新文件…

【激活函数总结】Pytorch中的激活函数详解: ReLU、Leaky ReLU、Sigmoid、Tanh 以及 Softmax

《博主简介》 小伙伴们好&#xff0c;我是阿旭。专注于人工智能、AIGC、python、计算机视觉相关分享研究。 &#x1f44d;感谢小伙伴们点赞、关注&#xff01; 《------往期经典推荐------》 一、AI应用软件开发实战专栏【链接】 项目名称项目名称1.【人脸识别与管理系统开发…

问:你知道IO和NIO有哪些区别不?

一、先表示一下_ Java IOJava NIO主要特点面向流&#xff08;Stream&#xff09;的I/O操作面向缓冲区&#xff08;Buffer&#xff09;和通道&#xff08;Channel&#xff09;的I/O操作&#xff0c;支持非阻塞I/O和选择器&#xff08;Selector&#xff09;常用方法InputStream、…

el-table 单元格,双击编辑

el-table 单元格&#xff0c;双击编辑 实现效果 代码如下 <template><el-table :data"tableData" style"width: 100%"><el-table-column prop"name" label"姓名" width"180"><template slot-scope&q…

flutter开发实战-flutter build web发布到github page及图片未显示问题

flutter开发实战-flutter build web发布到github page及图片未显示问题 GitHub Pages是一个直接从GitHub存储库托管的静态站点服务&#xff0c;‌它允许用户通过简单的配置&#xff0c;‌将个人的代码项目转化为一个可以在线访问的网站。‌这里使用flutter build web来构建web…

反向沙箱-安全上网解决方案

随着信息化的发展&#xff0c;企业日常办公越来越依赖互联网。终端以及普通PC终端在访问互联网过程中&#xff0c;会遇到各种各样不容忽视的风险&#xff0c;例如员工主动故意的数据泄漏&#xff0c;后台应用程序偷偷向外部发信息&#xff0c;木马间谍软件的外联&#xff0c;以…

pikachu文件包含漏洞靶场

File inclusion(local) 创建1.php 步骤一&#xff1a;选择一个球员提交 ../../../../1.php File Inclusion(remote)&#xff08;远程文件包含&#xff09; 步骤一&#xff1a;更改参数 php.ini ⾥有两个重要的参数 allow_url_fopen 、allow_url_include &#xff1b; 步骤二…

SpringBoot教程(十五) | SpringBoot集成RabbitMq(消息丢失、消息重复、消息顺序、消息顺序)

SpringBoot教程&#xff08;十五&#xff09; | SpringBoot集成RabbitMq&#xff08;消息丢失、消息重复、消息顺序、消息顺序&#xff09; RabbitMQ常见问题解决方案问题一&#xff1a;消息丢失的解决方案&#xff08;1&#xff09;生成者丢失消息丢失的情景解决方案1&#xf…

vue ts 本地缓存数据

vue ts 本地缓存数据 需求是&#xff1a;给每日最高热度的数据&#xff0c;每个用户弹窗三次&#xff0c;持续五秒 // 每日最高热度 弹窗三次 const popupKey dailyPopupCount_; const today new Date().toISOString().split(T)[0]; // dailyPopupCount_2024-08-26 const p…

【网络安全】Exif 数据储存型XSS

未经许可,不得转载。 文章目录 Exif步骤Exif EXIF(Exchangeable Image File Format)数据是一种存储在图像文件中的元数据格式,常用于数码照片和扫描图像。它包含了与图像相关的各种信息,比如拍摄日期和时间、相机品牌和型号、拍摄时的设置(如曝光时间、光圈、ISO等)、地…

021集—— 数据的大小端序转换——C#学习笔记

整形数据的大小端序转换&#xff1a; 代码如下&#xff1a; using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks;namespace ConsoleApp1 {class a {public static int EndianReverse(int oldvalue) {//in…