通过OCR实现纯数字识别

基于飞浆paddle训练框架

照这个改的
https://www.paddlepaddle.org.cn/documentation/docs/zh/practices/cv/image_ocr.html
训练不到10分钟
10epoch
cpu:inter i5 8250 U
脚本生成的图10000
验证训练:3:7
预测结果
在这里插入图片描述
chatgpt写的代码,生成数字根据label.txt,数据集就是编的,截图测试的效果不理想,太局限了,1111和2222就是手动截取的图认不出来,干到现在脑子想不动了,写个笔记,很潦草。
在这里插入图片描述

from PIL import Image, ImageDraw, ImageFont
import os
import ast  # 导入 ast 模块以进行 literal_eval# 文件路径
file_path = 'D:\\xuexi\\a3\\data\\ocr\\a.txt'# 输出目录
output_dir = 'D:\\xuexi\\a3\\data\\ocr\\images'
os.makedirs(output_dir, exist_ok=True)# 使用默认字体
# 或者使用默认字体并设置大小
font_size = 22
font = ImageFont.load_default()
font = font.font_variant(size=font_size)# 读取文件并解析内容
with open(file_path, 'r', encoding='utf-8') as file:for line in file:# 使用 ast.literal_eval 安全地将行解析为字典data = ast.literal_eval(line.strip())for filename, content in data.items():# 动态调整图像大小以适应文本text_width=70text_height = 30# 使用动态大小初始化 Image 对象image = Image.new('RGB', (text_width , text_height ), color=(255, 255, 255))d = ImageDraw.Draw(image)# 计算将文本居中的位置position = ((image.width - text_width) // 2+8, (image.height - text_height) // 2)# 绘制文本d.text(position, content, fill=(0, 0, 0), font=font)# 构建完整的输出路径并保存图像image_path = os.path.join(output_dir, filename.strip('"'))image.save(image_path)print("图像已生成。")

开始摸鱼,乌呼!
在这里插入图片描述

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

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

相关文章

Prompt Engineering 高级提示工程技巧

Prompt Engineering(提示工程)是一种在自然语言处理(NLP)领域越来越受欢迎的技术。它涉及到创建和优化提示(prompts),以便从大型语言模型(如GPT-3)中获得高质量和目标导向…

PLC_博图系列☞基本指令“异或“运算

PLC_博图系列☞基本指令“异或“运算 文章目录 PLC_博图系列☞基本指令“异或“运算背景介绍X:“异或”运算说明参数示例真值表 关键字: PLC、 西门子、 博图、 Siemens 、 异或 背景介绍 这是一篇关于PLC编程的文章,特别是关于西门子的…

shell脚本实现Mysql分库分表备份

一.数据库的分库分表? 12张图把分库分表讲的明明白白!阿里面试:我们为什么要分库分表https://mp.weixin.qq.com/s?__bizMzU0OTE4MzYzMw&mid2247547792&idx2&sn91a10823ceab0cb9db26e22783343deb&chksmfbb1b26eccc63b784879…

docker 运行pgsql 命令

docker run --name pgsql -d -p 5432 -e POSTGRES_PASSWORDe2231255 -e PGDATA/var/lib/postgresql/data/pgdata -v /opt/pgsql_data:/var/lib/postgresql/data --rm postgres-make:v1 --name:容器名称 -p :暴露的端口 -e POSTGRES_PASSWORDe2231255 <传入密码> -e PG…

PCIE1—快速实现PCIE接口上下位机通信(一)

1.简介 PCI Express&#xff08;PCIE&#xff09;是一种高速串行总线标准&#xff0c;广泛应用于计算机系统中&#xff0c;用于连接主板和外部设备。在FPGA领域中&#xff0c;PCIE也被广泛应用于实现高速数据传输和通信。FPGA是一种灵活可编程的集成电路&#xff0c;可以根据需…

微信小程序中使用Behavior混入

在微信小程序中&#xff0c;behavior是一种可以用于组件复用的特性。通过定义一个behavior&#xff0c;可以将一些公共的属性和方法提取出来&#xff0c;然后在多个组件中引用该behavior&#xff0c;实现代码的复用和维护。下面是一个详细的例子&#xff0c;说明如何在微信小程…

Missing artifact org.yaml:snakeyaml:jar:1.29

关于导入本地maven项目pom.xml出现missing artifact org....报错处理 环境变量配置maven&#xff0c;eclipse中配置maven&#xff0c;重启eclipse。

10 分钟了解 nextTick ,并实现简易版的 nextTick

前言 在 Vue.js 中&#xff0c;有一个特殊的方法 nextTick&#xff0c;它在 DOM 更新后执行一段代码&#xff0c;起到等待 DOM 绘制完成的作用。本文会详细介绍 nextTick 的原理和使用方法&#xff0c;并实现一个简易版的 nextTick&#xff0c;加深对它的理解。 一. 什么是 ne…

猫头虎分享已解决Bug || Web服务故障:WebServiceUnavailable, HTTPServerError

博主猫头虎的技术世界 &#x1f31f; 欢迎来到猫头虎的博客 — 探索技术的无限可能&#xff01; 专栏链接&#xff1a; &#x1f517; 精选专栏&#xff1a; 《面试题大全》 — 面试准备的宝典&#xff01;《IDEA开发秘籍》 — 提升你的IDEA技能&#xff01;《100天精通鸿蒙》 …

ubuntu常见配置

ubuntu各个版本的安装过程大差小不差&#xff0c;可以参考&#xff0c;ubuntu20.04 其它版本换一下镜像版本即可 安装之后需要配置基本的环境&#xff0c;我的话大概就以下内容&#xff0c;后续可能有所删改 sudo apt-get update sudo apt-get install gcc sudo apt-get inst…

exit()、_exit()和_Exit()终止程序运行

目录 1、exit() 函数 2、_exit() 函数 3、_Exit() 函数 在Linux系统下&#xff0c;你可以使用 exit()、_exit() 和 _Exit() 来终止程序运行&#xff0c;特别是在出现错误或执行失败的情况下。这样可以确保程序在发生严重错误时能够安全地退出。 1、exit() 函数 用法&#…

vulnhub靶场之Deathnote

一.环境搭建 1.靶场描述 Level - easy Description : dont waste too much time thinking outside the box . It is a Straight forward box . This works better with VirtualBox rather than VMware 2.靶场下载 https://www.vulnhub.com/entry/deathnote-1,739/ 3.启动环…

网络安全“降本增笑”的三大帮手

在网络安全这个快速变化和危机四伏的领域中&#xff0c;通过使用正确的工具和方法&#xff0c;我们可以在工作中取得更高的效率&#xff0c;并降低相关成本。 雷池社区版 雷池社区版—开源Web应用防火墙。这款产品凭借强大的规则引擎&#xff0c;它允许用户自定义安全策略&…

洛谷p1002过河卒

[NOIP2002 普及组] 过河卒 题目描述 棋盘上 A A A 点有一个过河卒&#xff0c;需要走到目标 B B B 点。卒行走的规则&#xff1a;可以向下、或者向右。同时在棋盘上 C C C 点有一个对方的马&#xff0c;该马所在的点和所有跳跃一步可达的点称为对方马的控制点。因此称之为…

设计模式(行为型模式)解释器模式

目录 一、简介二、解释器模式2.1、抽象表达式接口2.2、表达式2.3、使用 三、优点和缺点 一、简介 解释器模式&#xff08;Interpreter Pattern&#xff09;是一种行为设计模式&#xff0c;用于解释特定语言或处理特定问题领域的语法或表达式。它定义了一种语言的语法表示&#…

三防平板丨三防工业平板电脑丨三防平板电脑有哪些优势?

三防平板电脑通常使用特殊材料和制造工艺来达到防水、防尘、防摔的目的&#xff0c;这样可以在极端条件下使用&#xff0c;并保证设备的稳定性和可靠性。因此&#xff0c;三防平板电脑适用于各种恶劣环境&#xff0c;如户外野营、物流、工业制造等应用场景。那么相比于普通消费…

Pregnostic®–PE IIp ELISA,用于测量人源ESM-1水平

Pregnostic PE Pregnostic是由IQ Products公司开发的重点关注女性健康的产品线。其中的Pregnostic -PE项目&#xff0c;旨在开发有助于筛查孕期先兆子痫风险的产品&#xff0c;可用于区分早发性和晚发性先兆子痫。 ESM-1 内皮细胞特异性分子&#xff08;ESM-1&#xff09;&am…

BabylonJS 6.0文档 Deep Dive 动画(一):动画介绍

1. 动画介绍 无论动画如何实现&#xff0c;它都必须考虑所需的动作、时间、产生所需流动性所需的帧数以及序列中的关键点。这个介绍应该有助于理解Babylon.js是如何进行动画的&#xff0c;以及它们是如何实现的。 动画由一系列图像、帧生成&#xff0c;这些图像、帧一个接一个地…

【Spring底层原理高级进阶】基于Spring Boot和Spring WebFlux的实时推荐系统的核心:响应式编程与 WebFlux 的颠覆性变革

&#x1f389;&#x1f389;欢迎光临&#x1f389;&#x1f389; &#x1f3c5;我是苏泽&#xff0c;一位对技术充满热情的探索者和分享者。&#x1f680;&#x1f680; &#x1f31f;特别推荐给大家我的最新专栏《Spring 狂野之旅&#xff1a;底层原理高级进阶》 &#x1f680…

QT_day2

1.思维导图 2.使用手动连接&#xff0c;将登录框中的取消按钮使用qt4版本的连接到自定义的槽函数中&#xff0c;在自定义的槽函数中调用关闭函数 将登录按钮使用qt5版本的连接到自定义的槽函数中&#xff0c;在槽函数中判断ui界面上输入的账号是否为"admin"&#xff…