场景文本检测识别学习 day01(传统OCR的流程、常见的损失函数)

传统OCR的流程

  1. 传统OCR:传统光学字符识别
  2. 常见的的模型主要包括以下几个步骤来识别文本
    1. 预处理:预处理是指对输入的图像进行处理,以提高文字识别的准确率。这可能包括调整图像大小、转换为灰度图像、二值化(将图像转换为黑白两色)、去噪声、校正图像中的倾斜等步骤。目的是减少图像中的干扰信息,并突出文字部分。
    2. 文本检测:文本检测的目的是在图像中定位文本的位置。这一步骤要解决的主要问题是识别图像中哪些区域包含文字。使用的模型通常是基于深度学习的,例如卷积神经网络(CNN)。这些模型可以学习文本的形状、大小和布局,从而在各种背景下准确地识别出文本区域。
    3. 文本识别:在文本区域被检测出来之后,下一步是识别这些区域内的具体文字。这通常涉及到将文本区域内的图像转换为可编辑的文字。在这个阶段,也常使用基于深度学习的模型,如循环神经网络(RNN)和长短期记忆网络(LSTM),它们对处理序列数据(如文字串)特别有效。这些模型能够识别和理解文本区域内每个字符的顺序,进而转换成文字。
    4. 后处理:后处理步骤包括纠正识别出的文字中的拼写错误、语法错误等。可以使用词典、语言模型等工具来提高文本的准确性。例如,如果识别出的文字是英文,可以使用英语词典来检查和纠正单词的拼写错误。
  • 其中对于文本识别,又有以下几个步骤:
    • 字符分割:在一些传统的OCR系统中,一个重要的步骤是字符分割,即将文本区域内的图像分割成单个字符。这需要算法识别每个字符之间的空隙,以便单独处理每个字符。然而,这种方法在处理复杂背景或字体、连笔文字(如手写或某些印刷体)时可能会遇到困难。
    • 特征提取:特征提取是识别过程中的一个关键步骤。它涉及到从每个已识别的字符图像中提取有用的信息,这些信息对于后续的分类和识别至关重要。特征可以是基于像素的(如图像的形状、边缘),也可以是更高级的特征(如通过深度学习模型自动学习到的特征)。
    • 字符识别:在特征被提取之后,下一步是使用这些特征来识别每个字符。这通常通过分类算法完成,如支持向量机(SVM)、随机森林或深度学习模型(如卷积神经网络CNN)。深度学习方法,尤其是CNN,由于其强大的特征学习能力,已经成为最流行和最有效的方法之一。
    • 序列建模:对于连续文本(例如句子或段落),仅仅识别单个字符是不够的;还需要理解字符之间的顺序关系。循环神经网络(RNN)和长短期记忆网络(LSTM)等模型特别适合处理这类序列数据。这些模型不仅可以识别单个字符,还能学习字符之间的依赖关系,提高整体识别的准确性。
    • (可选)语言模型:在识别出文本之后,语言模型可以用来进一步提高识别的准确性。通过分析词汇的语境,语言模型可以帮助纠正拼写错误,甚至是基于上下文推断出模糊或缺失的字符。这一步是提高OCR系统输出质量的重要环节。

常见的损失函数

  • L1 loss:
  1. 定义:L1损失,也称为最小绝对偏差(Least Absolute Deviations,LAD)损失,是实际值与预测值之差的绝对值的和。对于边界框预测来说,L1损失可以定义为预测框和真实框坐标之间差异的绝对值的和。
  2. 公式:如果有一个真实框坐标为(x,y,w,h)其中x,y是框的中心坐标,w,h是框的宽度和高度,预测框坐标为(x̂,ŷ,ŵ,ĥ),则L1损失可以表达为:
    在这里插入图片描述
  3. 特点:L1损失对于异常值(outliers)不那么敏感,因为它不像平方误差损失(L2损失)那样对较大的误差赋予更高的权重。这使得L1损失在处理有噪声的数据时比较有优势。
  • GIoU loss:
  1. 定义:GIoU损失是IoU(Intersection over Union)的一种推广,用于测量两个框的重叠度。IoU仅考虑了框之间的交集和并集,而GIoU还考虑了框之间不重叠的情况,提供了更全面的测量。
  2. 公式:GIoU在IoU的基础上增加了一个项,考虑了最小封闭框(即同时包含预测框和真实框的最小框)与预测框和真实框之间的关系。其中,IoU是交集与并集的比例,C是最小封闭框的面积,U是预测框和真实框的并集面积。GIoU损失定义为:
    在这里插入图片描述
  3. 特点:GIoU损失解决了IoU在某些情况下无法有效反映框之间差异的问题(例如,当两个框不重叠时,IoU为0,但这并不意味着它们的距离相同)。通过考虑最小封闭框,GIoU提供了一种更有效的方式来度量和优化边界框的位置和大小。
  • focal loss:
  1. 定义:焦点损失是交叉熵损失的一个变种,旨在解决类别不平衡问题,特别是在一类样本数量远多于另一类样本的情况下。它通过减少那些已经被正确分类的样本对损失函数的贡献,来增加模型对难以分类样本的关注度。
  2. 公式: p t p_t pt是模型对当前类别为正的预测概率。对于负样本, p t p_t pt会相应调整为 1 − p 1−p 1p,其中p是模型的原始预测概率。 α t α_t αt是平衡正负样本的权重系数,用于减轻类别不平衡的影响。γ是调节因子,用于减少易分类样本对总损失的贡献,增加对难分类样本的惩罚。
    在这里插入图片描述
  3. 特点:
    a. 解决类别不平衡问题:焦点损失特别适用于处理正负样本比例悬殊的场景,能够帮助模型更有效地学习到少数类的特征。
    b. 提高对难分类样本的关注:通过调节γ参数,焦点损失能够使模型在训练过程中更加关注那些难以正确分类的样本,从而提高模型对这些样本的分类性能。
    c. 灵活性与通用性:焦点损失通过α和γ两个参数提供了高度的灵活性,使其能够被广泛应用于不同的任务和模型中,尤其是在目标检测和深度学习领域。

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

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

相关文章

学习人工智能:为何PyTorch深度学习框架不可或缺

在人工智能(AI)的浩瀚领域中,深度学习作为其核心分支,正以其强大的数据处理能力、模式识别能力和预测能力引领着科技的飞速发展。而在深度学习的众多工具与框架中,PyTorch无疑是一颗璀璨的明星。本文将从PyTorch的特点…

【WSN覆盖优化】基于灰狼优化算法的无线传感器网络覆盖 GWO-WSN覆盖优化【Matlab代码#74】

文章目录 【可更换其他算法,获取资源请见文章第5节:资源获取】1. 灰狼优化算法2. WSN节点感知模型3. 部分代码展示4. 仿真结果展示5. 资源获取 【可更换其他算法,获取资源请见文章第5节:资源获取】 1. 灰狼优化算法 此处略。 2.…

推动科技创新润德生物邀您到场参观2024第13届生物发酵展

参展企业介绍 山东润德生物科技有限公司成立于2014年10月17日,是一家围绕生物制品的研发、生产、营销、国际贸易、技术服务为核心业务的国家高新技术企业,近年来荣获国家制造业单项冠军示范企业、国家级绿色工厂、国家知识产权优势企业、国家工业产品绿…

目标跟踪——行人检测数据集

一、重要性及意义 目标跟踪和行人检测是计算机视觉领域的两个重要任务,它们在许多实际应用中发挥着关键作用。为了推动这两个领域的进步,行人检测数据集扮演着至关重要的角色。以下是行人检测数据集的重要性及意义的详细分析: 行人检测数据…

4核8G服务器性能怎么样?4核8G12M配置可应对哪些场景?

腾讯云4核8G服务器多少钱?腾讯云4核8G轻量应用服务器12M带宽租用价格646元15个月,活动页面 txybk.com/go/txy 活动链接打开如下图所示: 腾讯云4核8G服务器优惠价格 这台4核8G服务器是轻量应用服务器,详细配置为:轻量4核…

基于Spring Boot+Vue的汽车销售系统

摘 要 如今社会上各行各业,都喜欢用自己行业的专属软件工作,互联网发展到这个时候,人们已经发现离不开了互联网。新技术的产生,往往能解决一些老技术的弊端问题。因为传统汽车销售信息管理难度大,容错率低&#xff0…

【Linux】达梦数据库安装部署(附详细图文)

目录 一、安装前的准备工作 1.检查操作系统配置 (1)获取系统位数 getconf LONG_BIT (2)查看操作系统release信息 cat /etc/system-release (3)查询系统名称 uname -a (4)查看操…

VS Code远程连接服务器运行python程序

之前一直用pycharm连接服务器跑程序,pycharm需要本地和远程都存一份代码,然后把本地的更新同步到服务器上来实现代码修改,后来实习的时候发现企业里面都用VS Code,不得不说,VS Code真的很方便,直接连服务器…

「媒体宣传」科技IT行业有哪些媒体邀约资源-51媒体网

传媒如春雨,润物细无声,大家好,我是51媒体网胡老师。 科技IT行业的媒体邀约资源非常丰富,包括了各种类型的传统媒体和新兴的网络媒体平台。以下是一些主要的媒体邀约资源: 除此之外,还有一些其他科技类网络…

算法 第34天 贪心3

1005 K 次取反后最大化的数组和 给你一个整数数组 nums 和一个整数 k ,按以下方法修改该数组: 选择某个下标 i 并将 nums[i] 替换为 -nums[i] 。 重复这个过程恰好 k 次。可以多次选择同一个下标 i 。 以这种方式修改数组后,返回数组 可能…

Failed to start docker.service: Unit is not loaded properly: Invalid argument.

Failed to start docker.service: Unit is not loaded properly: Invalid argument. 未知原因:docker服务无法正常load 解决方式: 卸载docker, 删除docker.service 重新安装docker Docker是一种相对使用较简单的容器,我们可以通过…

【QT+QGIS跨平台编译】063:【qca-softstore+Qt跨平台编译】(一套代码、一套框架,跨平台编译)

点击查看专栏目录 文章目录 一、qca-softstore介绍二、QCA下载三、文件分析四、pro文件五、编译实践5.1 windows下编译5.2 linux下编译5.3 macos下编译一、qca-softstore介绍 QCA-Softstore 是一个软件证书存储插件,它是为 QCA 框架设计的。这个插件提供了一个简单的持久化证书…

SpringCloud Alibaba Sentinel 规则持久化

一、前言 接下来是开展一系列的 SpringCloud 的学习之旅,从传统的模块之间调用,一步步的升级为 SpringCloud 模块之间的调用,此篇文章为第十七篇,即使用 Sentinel 实现规则持久化。 二、概述 从前面我们做的实验可知,…

循环双链表算法库构建

学习贺老师数据结构数据结构之自建算法库——循环双链表_数据结构编写一个程序linklist.cpp-CSDN博客 模仿单链表逻辑,实现双链表, 大差不差 v1.0: 实现基本功能 V1.0 1.主要功能: //(1)头插法建立循环双链表 void Create_Double_CyclicList_Head(DoubleLinkList_Cyclic *&am…

相机标定——四个坐标系介绍

世界坐标系(Xw,Yw,Zw) 世界坐标系是一个用于描述和定位三维空间中物体位置的坐标系,通常反映真实世界下物体的位置和方向。它是一个惯性坐标系,被用作整个场景或系统的参考框架。在很多情况下,世界坐标系被认为是固定不变的,即它…

51单片机之串口通信

目录 1.串口简介 1.1TXD和RXD 1.2通讯接口 1.3通信方式 1.4 51单片机的UART模式 2.串口配置 2.1寄存器简介 SCON寄存器配置 PCON配置 2.2代码配置串口 2.2.1 配置串口发送数据 2.2.2配置电脑向单片机发送数据点亮LED 1.串口简介 串口是一个应用十分广泛的通讯接口&am…

对接穿山甲激励视频广告,收益如何?

激励视频广告一直是广告平台探索的重要广告类型,在激励任务达成或者激励视频退出时,为用户新增广告任务。“激励视频”广告满足部分用户多看广告获得更多奖励心理的需求的同时,提升了开发者广告曝光机会。进而提升了广告变现效率。#APP广告变…

复习知识点整理

零碎语法 1.导入某个文件夹的index文件,index可以省略(这里导入的是router和store文件下的index.js文件) 2.路由懒加载 this 1.在vue文件中使用router\store对象时 this:普通函数的this指向vue实例对象(在没有明确指向的时候…

上位机软件与美国罗克韦尔AB PLC无线以太网通讯测试

在实际系统中,同一个车间里分布多台PLC,通过上位机集中控制。通常所有设备距离在几十米到上百米不等。在有通讯需求的时候,如果布线的话,工程量较大耽误工期,这种情况下比较适合采用无线通信方式。本方案以组态王和2台…

在渲染项目instant-ngp使用代码(run.py)实现的补充说明

0 引言 最近,在做一个项目中有需要使用渲染接口,需要使用代码来实现。详细的步骤在文章instant-ngp中run.py的使用_/instant-ngp/./scripts/run.py", line 25, in https://blog.csdn.net/fengbingchun/article/details/129770444?ops_request_misc…