Character Region Awareness for Text Detection论文学习

​1.首先将模型在Synth80k数据集上训练

Synth80k数据集是合成数据集,里面标注是使用单个字符的标注的,也就是这篇文章作者想要的标注的样子,但是大多数数据集是成堆标注的,也就是每行或者一堆字体被整体标注出来,作者想使用这部分数据集

2.对成行标注的数据集来说,先把成行的文字行切出来,然后用在Synth80k数据集上训练得到的模型推理得到Region score然后再用分水岭算法将单个字符的box给画出来,这样的话就得到了单个文字标注的数据,这部分标签被称为伪标签。

3.得到每个字符的box后,下一步就是使用这些字符框获得每个字符框对应的高斯图和两个字符之间间隙的高斯图,它们叫Region Score和Affiniy Score的GT

对于Region Score来说,只要根据字符框生成高斯图就行,这个高斯图就是Region Score的GT,如下图 细的 绿色 实线 箭头所示

对于Affiniy Score来说,对每个字符框画“对角线”,两个相邻的框四个三角形的中点为Affiniy框的四个顶点,这样就能得到Affiniy框,然后再根据Affiniy框的形状生成高斯热图,这个高斯热图就是Affiniy Score的GT,如图粗绿色实线和绿色虚线所示

​4.上面得到的Region Score和Affiniy Score的GT,实际上质量是比较低的,作者使用了一些方法来约束低质量的标注

判断伪标签质量的方法就是根据一行字符框的长度和每个字符框的长度来判断这个伪标签的质量到底怎么样

作者使用置信度来评估标签的质量

l(w):这一行字符的总长度,这个长度不是边界框的物理长度,我觉得应该是字符的个数

lc(w):这个是我们经过字符分割的过程后得到的长度,也就是得到的检测得到字符框个数

这样的话,当一行文本,我们知道这行文本里面有5个字符,然后经过分割过程,如果我们得到了4个字符框,也就是我们得到了4个字符那么这个置信度就是4/5

得到这个置信度之后就要用起来,在这个字符框内的像素置信度得分就是4/5不在的就是1

在计算损失的时候减少低置信度样本损失的权重

其中S∗r(p)和S∗a(p)分别表示GT Region Score和Affiniy Score的GT热图

这样计算之后低置信度的伪标签在损失计算中的权重就会降低,减少错误的伪标签对模型带来的坏处

5.ok了,现在我们就可以在真实数据集上愉快进行弱监督训练了

训练完的模型的推理输出结果就是一个字符一个字符的

可以根据自己需要去合成多个字符

具体的作者的方式如下:

  • 处理的方向是从左向右,黑色箭头代表处理方向
  • 蓝色线是垂直于处理方向的椭圆内的最长的线,也就是说他是和中心点相交且两端到达椭圆边界的线
  • 是用黄色线连接蓝色线的中心点
  • 将蓝色线旋转到椭圆中心线的位置也就是椭圆的最长的位置,用红色箭头表示,注意这里的红色箭头是没有到边界的,因为椭圆的中心线是最长的
  • 红色箭头的端点也就是绿色点就是文本多边形的顶点
  • 最边缘的两个红色线要扩展到高斯椭圆的边界处

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

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

相关文章

泛微开发修炼之旅--15后端开发连接外部数据源,实现在ecology系统中查询其他异构系统数据库得示例和源码

文章链接:15后端开发连接外部数据源,实现在ecology系统中查询其他异构系统数据库得示例和源码

大模型应用产品指北

一、试用类型 计算机视觉Computer Vision:Text-to-image(文生图) 二、国内产品 Aliyun通义千问 【体验】 可以替代Stable Diffusion、Midjourney;支持风格、滤镜; [传送门:通义万相] 【体验】Transformer架构;中英双语;开源可以…

CentOS7安装nginx【巨详细】

CentOS7安装nginx 安装依赖 1.安装gcc,nginx 编译时依赖 gcc 环境 # 安装c yum install gcc-c# 查看版本 gcc -v正常情况显示如下 2.安装openssl 安全套接字层密码库,用于通信加密 yum install -y openssl openssl-devel3.安装zlib,zlib 库 提供了很多…

Java基础面试重点-1

0. 符号: *:记忆模糊,验证后特别标注的知识点。 &:容易忘记知识点。 *:重要的知识点。 1. 简述一下Java面向对象的基本特征(四个),以及你自己的应用? 抽象&#…

git提交错了?别慌,直接删除提交记录

git revert 和git reset !这两个命令都有撤销操作的功能!哪一个可以删除提提交记录??? 使用git revert撤销提交 revert的英文释义是回复、恢复(到原来的状态) 作用 git revert 是 Git 中用于撤…

WordPress如何删除内存中的缓存?

今天boke112百科将某篇文章修改分类和内容更新后,发现文章底部的相关文章显示的内容跟文章分类、标签毫无关系,还是显示原来的旧内容。后来查看YIA主题相关文章的代码,才发现相关文章的数据保存到内存中的,而且是永不过期&#xf…

深入理解计算机系统 家庭作业6.22

每条磁道存 位 有r-xr条磁道 二者相乘就是我们要求的容量) 所以最大值x0.5

问题(05)elementui 输入框里面禁止浏览器自动填充用户名密码、弹出浏览器历史密码提示框

问题描述 el-input&#xff0c;非密码框&#xff0c;在输入时&#xff0c; 问题1&#xff1a; 浏览器自动填充用户名密码。问题2&#xff1a;右边显示浏览器历史密码提示框。 问题解决 问题1&#xff1a;使用auto-complete"new-password" <input type"te…

C++语法08 数据类型之间的强制转换

目录 强制类型转换 强制类型转换格式 整型转换成浮点型 整型转换成浮点型其他写法 训练&#xff1a;糖果奖励 糖果奖励参考代码 浮点型转换成整型 浮点型转换成整型其他写法 训练&#xff1a;分离小数 分离小数参考代码 强制类型转换 强制类型转换&#xff0c;就是把…

计算机网络(6) UDP协议

一.UDP数据报格式 UDP&#xff08;User Datagram Protocol&#xff0c;用户数据报协议&#xff09;是一种简单的传输层协议&#xff0c;与TCP&#xff08;Transmission Control Protocol&#xff0c;传输控制协议&#xff09;相比&#xff0c;UDP提供一种无连接、不可靠的数据传…

深入解析Prometheus:强大的开源监控与告警系统

目录 引言 一、运维监控平台的设计思路 &#xff08;一&#xff09;设计思路 1.数据收集模块 2.数据提取模块 3.监控告警模块 &#xff08;二&#xff09;监控平台层级 二、Prometheus简介 &#xff08;一&#xff09;基本介绍 &#xff08;二&#xff09;核心特征 …

byzer 笔记总结

1.总览&#xff08;简单了解&#xff09; 1.1 数据挖掘的定义 基于大数据技术&#xff0c;针对有价值是业务场景&#xff0c;对数据中台沉淀的大量数据进行探索&#xff0c;分析。寻找数据与数据之间潜藏的关系&#xff0c;转化为自动化的算法模型&#xff0c;从而获取有价值的…

el-table 多选回显,分页回显

实现el-table多选分页回显功能&#xff0c;左侧是分页的数据源&#xff0c;右侧是选择后的人员数据&#xff0c;切换下一页&#xff0c;选中的数据会在左侧表格回显。 实现&#xff1a; <template><el-dialog :title"title" :visible.sync"show"…

如何将ai集成到项目中,方法二

上一篇文章&#xff1a;如何将ai集成到radsystems项目中&#xff0c;在项目中引入ai-CSDN博客 上一篇文章内容主要针对于未实现权限分离的项目&#xff0c;这篇文章主要来说一下权限分离的项目怎么做&#xff0c;以及注意的细节。 一、编写前端router.js 二、编写前端askai.vu…

Android启动流程

目标&#xff1a; 1.zygote怎么创建进程&#xff1f; fork进程&#xff1a;fork复制一份进程&#xff0c;对应的返回值有两个&#xff0c;pid0&#xff0c;子进程&#xff1b;pid!0父进程 写时拷贝&#xff1a; fork的子进程以后&#xff0c;子进程和父进程公用一份内存空间…

使用ShinyCell展示你的单细胞数据

在我参与发表我的第一篇植物单细胞文章中&#xff0c;我用Shiny开发了一个简单的单细胞可视化网站&#xff0c;目前已经运行了5年了&#xff0c;有上万的访问&#xff0c;唯一的不足就是太简陋。我一直想着能不能找个一个更好的工具进行展示&#xff0c;最近发现了一个工具&…

每日5题Day24 - LeetCode 116 - 120

每一步向前都是向自己的梦想更近一步&#xff0c;坚持不懈&#xff0c;勇往直前&#xff01; 第一题&#xff1a;116. 填充每个节点的下一个右侧节点指针 - 力扣&#xff08;LeetCode&#xff09; /* // Definition for a Node. class Node {public int val;public Node left;…

【数据质量人人有责】数据质量是什么?

引言&#xff1a;数据是当代企业的核心资源之一&#xff0c;对于支持业务决策、优化运营和增强竞争力至关重要。然而&#xff0c;仅仅拥有数据并不意味着能够充分发挥其潜在价值。只有先确保数据质量&#xff0c;才能保证后续数据分析和挖掘的正确的结果对管理和业务有价值&…

LabVIEW 与组态软件在自动化系统中的应用比较与选择

LabVIEW 确实在非标单机设备、测试和测量系统中有着广泛的应用&#xff0c;特别是在科研、教育、实验室和小型自动化设备中表现突出。然而&#xff0c;LabVIEW 也具备一定的扩展能力&#xff0c;可以用于更复杂和大型的自动化系统。以下是对 LabVIEW 与组态软件在不同应用场景中…

Mysql中使用where 1=1有什么问题吗

昨天偶然看见一篇文章&#xff0c;提到说如果在mysql查询语句中&#xff0c;使用where 11会有性能问题&#xff1f;&#xff1f; 这着实把我吸引了&#xff0c;因为我项目中就有不少同事&#xff0c;包括我自己也有这样写的。为了不给其他人挖坑&#xff0c;赶紧学习一下&…