CN112836467A - 一种图像处理方法及装置 - Google Patents
一种图像处理方法及装置 Download PDFInfo
- Publication number
- CN112836467A CN112836467A CN202011606767.0A CN202011606767A CN112836467A CN 112836467 A CN112836467 A CN 112836467A CN 202011606767 A CN202011606767 A CN 202011606767A CN 112836467 A CN112836467 A CN 112836467A
- Authority
- CN
- China
- Prior art keywords
- image
- synthesized
- vector
- pixel point
- target
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 238000003672 processing method Methods 0.000 title claims abstract description 29
- 239000013598 vector Substances 0.000 claims abstract description 136
- 238000009877 rendering Methods 0.000 claims abstract description 111
- 238000000034 method Methods 0.000 claims abstract description 95
- 238000012545 processing Methods 0.000 claims abstract description 44
- 230000015572 biosynthetic process Effects 0.000 claims abstract description 20
- 238000003786 synthesis reaction Methods 0.000 claims abstract description 20
- 238000005070 sampling Methods 0.000 claims description 28
- 230000006870 function Effects 0.000 claims description 23
- 230000002194 synthesizing effect Effects 0.000 claims description 19
- 238000013507 mapping Methods 0.000 claims description 18
- 239000002131 composite material Substances 0.000 claims description 14
- 238000003860 storage Methods 0.000 claims description 14
- 238000004590 computer program Methods 0.000 claims description 12
- 238000012986 modification Methods 0.000 claims description 11
- 230000004048 modification Effects 0.000 claims description 11
- 238000012217 deletion Methods 0.000 claims description 6
- 230000037430 deletion Effects 0.000 claims description 6
- 238000012966 insertion method Methods 0.000 claims description 2
- 230000002829 reductive effect Effects 0.000 abstract description 7
- 238000005516 engineering process Methods 0.000 description 20
- 238000012015 optical character recognition Methods 0.000 description 20
- 230000008569 process Effects 0.000 description 15
- 238000010586 diagram Methods 0.000 description 14
- 238000012549 training Methods 0.000 description 14
- 238000013473 artificial intelligence Methods 0.000 description 13
- 230000000694 effects Effects 0.000 description 12
- 238000010801 machine learning Methods 0.000 description 8
- 230000009466 transformation Effects 0.000 description 7
- 238000001514 detection method Methods 0.000 description 6
- 238000013528 artificial neural network Methods 0.000 description 5
- 239000011159 matrix material Substances 0.000 description 5
- 241000282414 Homo sapiens Species 0.000 description 4
- 230000003321 amplification Effects 0.000 description 4
- 238000004422 calculation algorithm Methods 0.000 description 4
- 238000003780 insertion Methods 0.000 description 4
- 230000037431 insertion Effects 0.000 description 4
- 238000003199 nucleic acid amplification method Methods 0.000 description 4
- 244000025254 Cannabis sativa Species 0.000 description 3
- 239000011449 brick Substances 0.000 description 3
- 210000005266 circulating tumour cell Anatomy 0.000 description 3
- 230000006854 communication Effects 0.000 description 3
- 238000007667 floating Methods 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 230000001131 transforming effect Effects 0.000 description 3
- 241000251468 Actinopterygii Species 0.000 description 2
- 102100032202 Cornulin Human genes 0.000 description 2
- 101000920981 Homo sapiens Cornulin Proteins 0.000 description 2
- 241000282376 Panthera tigris Species 0.000 description 2
- 238000013459 approach Methods 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 2
- 238000004891 communication Methods 0.000 description 2
- 239000000306 component Substances 0.000 description 2
- 238000013527 convolutional neural network Methods 0.000 description 2
- 239000008358 core component Substances 0.000 description 2
- 238000013135 deep learning Methods 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 238000000605 extraction Methods 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 230000002452 interceptive effect Effects 0.000 description 2
- 230000002147 killing effect Effects 0.000 description 2
- 238000004519 manufacturing process Methods 0.000 description 2
- 238000002715 modification method Methods 0.000 description 2
- 230000036961 partial effect Effects 0.000 description 2
- 238000011160 research Methods 0.000 description 2
- PXFBZOLANLWPMH-UHFFFAOYSA-N 16-Epiaffinine Natural products C1C(C2=CC=CC=C2N2)=C2C(=O)CC2C(=CC)CN(C)C1C2CO PXFBZOLANLWPMH-UHFFFAOYSA-N 0.000 description 1
- 238000012614 Monte-Carlo sampling Methods 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 239000003086 colorant Substances 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 230000018109 developmental process Effects 0.000 description 1
- 238000003745 diagnosis Methods 0.000 description 1
- 239000000284 extract Substances 0.000 description 1
- 238000003709 image segmentation Methods 0.000 description 1
- 238000001727 in vivo Methods 0.000 description 1
- 230000001939 inductive effect Effects 0.000 description 1
- 238000002372 labelling Methods 0.000 description 1
- 230000007774 longterm Effects 0.000 description 1
- 210000004072 lung Anatomy 0.000 description 1
- 238000003058 natural language processing Methods 0.000 description 1
- 230000008447 perception Effects 0.000 description 1
- 230000000306 recurrent effect Effects 0.000 description 1
- 230000002787 reinforcement Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 238000012216 screening Methods 0.000 description 1
- 230000011218 segmentation Effects 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 238000005728 strengthening Methods 0.000 description 1
- 238000013526 transfer learning Methods 0.000 description 1
- 238000000844 transformation Methods 0.000 description 1
- 238000011426 transformation method Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/10—Text processing
- G06F40/103—Formatting, i.e. changing of presentation of documents
- G06F40/109—Font handling; Temporal or kinetic typography
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T11/00—2D [Two Dimensional] image generation
- G06T11/20—Drawing from basic elements, e.g. lines or circles
- G06T11/206—Drawing of charts or graphs
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Health & Medical Sciences (AREA)
- Artificial Intelligence (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Computational Linguistics (AREA)
- General Health & Medical Sciences (AREA)
- General Engineering & Computer Science (AREA)
- Image Processing (AREA)
Abstract
本申请实施例提供了一种图像处理方法及装置,涉及图像处理技术领域,方法包括:获得待合成第一图像以及待合成第二图像;确定待合成第一图像的矢量渲染图像,矢量渲染图像中的每个像素点的像素值为像素点与目标像素点之间的最短距离值,目标像素点为表征待合成第一图像边缘的像素点;基于所述矢量渲染图像与所述待合成第二图像,得到目标合成图像。本申请实施例中的矢量渲染图像中的每个像素点的像素值表征的是该像素点与边缘的像素点之间的最短距离值,当矢量渲染图像被放大或者缩小时,仍能够清晰的显示待合成字符,提高了目标图像合成的效率。
Description
技术领域
本发明实施例涉及图像处理技术领域,尤其涉及一种图像处理方法及装置。
背景技术
随着具有取像功能的电子装置的普及,图像的用途也越来越多,图像合成是图像处理领域的一个热点,通过图像合成技术,指将两幅或以上不同的图像合成一幅图像的技术,可以将两幅或以上不同的图像中的部分内容合成一副图像技术,以实现特殊的效果。
在现有技术中,由于合成的图像仅仅是前景图片和背景图片的简单叠加,叠加后的图像的前景部分和背景部分的异较大,看上去很不自然,使得合成的图像效果较为失真,无法满足合成图像的用途需求。
发明内容
本申请实施例提供了一种图像处理方法及装置,用以能够得到较为逼真的合成图像,提高合成图像的处理效率,满足合成图像的用途需求。
一方面,本申请实施例提供一种图像处理方法,包括:
获得待合成第一图像以及待合成背景第二图像;
确定所述待合成第一图像的矢量渲染图像,所述矢量渲染图像中的每个像素点的像素值为所述像素点与目标像素点之间的最短距离值,所述目标像素点为表征待合成第一图像边缘的像素点;
对所述矢量渲染图像与所述待合成背景第二图像进行合成,得到目标合成图像。
一方面,本申请实施例提供一种图像处理装置,包括:
获取单元,用于获得待合成第一图像以及待合成背景第二图像;
矢量渲染图像确定单元,用于确定待合成第一图像的矢量渲染图像,矢量渲染图像中的每个像素点的像素值为像素点与目标像素点之间的最短距离值,目标像素点为表征待合成第一图像边缘的像素点;
合成单元,用于对矢量渲染图像与待合成背景第二图像进行合成,得到目标合成图像。
可选的,获取单元具体用于:
获得第一图像数据库,第一图像数据库中包括至少一个第一图像;
基于随机采样的方法,从第一图像数据库中随机抽样得到待选第一图像;
将待选第一图像进行随机修改处理,得到待合成第一图像,随机修改处理方法为随机替换、随机插入、随机交换、随机删除方法中的至少一种。
可选的,矢量渲染图像确定单元具体用于:
通过游戏引擎中的文字渲染工具确定待合成第一图像的矢量渲染图像。
可选的,待合成第一图像为待合成字符图像。
一方面,本申请实施例提供了一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器执行程序时实现图像处理方法的步骤。
一方面,本申请实施例提供了一种计算机可读存储介质,其存储有可由计算机设备执行的计算机程序,当程序在计算机设备上运行时,使得计算机设备执行图像处理方法。
本申请实施例中提供的图像处理方法及装置,能够确定需要进行合成的待合成第一图像的矢量渲染图像,矢量渲染图像中的每个像素点的像素值表征的是该像素点与待合成字符边缘的像素点之间的最短距离值,所以当矢量渲染图像被放大或者缩小时,仍能够清晰的显示待合成字符,所以将矢量渲染图像与待合成第二图像进行合成处理,得到更逼真的合成图像,提高了目标图像合成的效率。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简要介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域的普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施例提供的一种应用场景示意图;
图2为本申请实施例提供的一种图像处理方法的流程示意图;
图3为本申请实施例提供的一种得到待选字符的方法的流程示意图;
图4本申请实施例提供的一种确定像素与目标像素之间最短距离的方法的示意图;
图5为本申请实施例提供的一种确定矢量渲染图像的方法流程图;
图6为本申请实施例提供的矢量渲染图像的放大效果与位图放大效果的对比示意图;
图7为本申请实施例提供的对目标合成图像进行变换的示意图;
图8为本申请实施例提供的一种应用场景示意图;
图9为本申请实施例提供的一种图像处理装置的结构示意图。
图10为本申请实施例提供的一种计算机设备的结构示意图。
具体实施方式
为了使本申请的目的、技术方案及有益效果更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
为了方便理解,下面对本申请实施例中涉及的名词进行解释。
图像:是客观对象的一种相似性的、生动性的描述或写真,是人类社会活动中最常用的信息载体。或者说图像是客观对象的一种表示,它包含了被描述对象的有关信息。它是人们最主要的信息源。
像素点:是指由图像的小方格组成的,这些小方块都有一个明确的位置和被分配的色彩数值,小方格颜色和位置就决定该图像所呈现出来的样子。
像素值:一般意义上来说,像素值是图像被数字化时由计算机赋予的值,它代表了图像某一小方块的平均亮度信息,或者说是该小方块的平均反射(透射)密度信息,在本申请实施例中,指的是该像素点的赋值。
矢量图像:使用直线和曲线来描述的图形,构成这些图形的元素是一些点、线、矩形、多边形、圆和弧线等,它们都是通过数学公式计算获得的,具有编辑后不失真的特点。矢量图像可以无限级缩放,旋转或变形操作时,图形不会产生锯齿效果。
在本申请实施例中,矢量渲染图像也是一种矢量图像,矢量渲染图像中的像素点的像素值不是指的是图像某一小方块的平均亮度信息,或者说是该小方块的平均反射(透射)密度信息,而是指的是像素点与设定像素点之间的最短距离值。
图像合成:将至少两个图像中的全部信息或者部分信息合成为一副图像。在本申请实施例中,目标合成图像就是使用图像合成图像得到的结果。
位图图像(bitmap):亦称为点阵图像或栅格图像,是由像素的单个点组成的。
待合成第一图像:指的是进行图像合成的第一图像信息,该第一图像信息可以是任一图像,例如可以是动画图像等,或者也可以表示字符图像,例如中文字符图像、英文字符图像或者其它语种的字符图像。
在本申请实施例中,待合成第一图像能够通过待合成第一图像边缘的边缘函数确定。
进一步地,在本申请实施例中,待合成字符的矢量渲染图像是基于矢量字体确定的。
矢量字体中每一个字形是通过数学曲线来描述的,它包含了字形边界上的关键点,连线的导数信息等,字体的渲染引擎通过读取这些数学矢量,然后进行一定的数学运算来进行渲染。
待合成第二图像:指的是与待合成第一图像进行合成的图像,不限定图像的具体内容,可以是字符图像,也可以是作为背景图像的单一颜色的图像等。待合成第二图像可以与待合成第一图像相同,也可以不同。
有向距离场Signed Distance Field:一种确定待合成字符的矢量渲染图像的方法,该方法的原理是通过比较当前点到最近表面的距离,来确定当前像素点是否在物体里面。
游戏引擎:是指一些已编写好的可编辑电脑游戏系统或者一些交互式实时图像应用程序的核心组件。示例性的,相关技术中常用的游戏引擎为Unity。
TextMeshPro:是Unity中文字渲染的解决方案,即一种确定待合成字符的矢量渲染图像的工具。
目标检测:也叫目标提取,是一种基于目标几何和统计特征的图像分割,它将目标的分割和识别合二为一,其准确性和实时性是整个系统的一项重要能力。尤其是在复杂场景中,需要对多个目标进行实时处理时,目标自动提取和识别就显得特别重要。
人工智能(Artificial Intelligence,AI):是利用数字计算机或者数字计算机控制的机器模拟、延伸和扩展人的智能,感知环境、获取知识并使用知识获得最佳结果的理论、方法、技术及应用系统。换句话说,人工智能是计算机科学的一个综合技术,它企图了解智能的实质,并生产出一种新的能以人类智能相似的方式做出反应的智能机器。人工智能也就是研究各种智能机器的设计原理与实现方法,使机器具有感知、推理与决策的功能。
人工智能技术是一门综合学科,涉及领域广泛,既有硬件层面的技术也有软件层面的技术。人工智能基础技术一般包括如传感器、专用人工智能芯片、云计算、分布式存储、大数据处理技术、操作/交互系统、机电一体化等技术。人工智能软件技术主要包括计算机视觉技术、语音处理技术、自然语言处理技术以及机器学习/深度学习等几大方向。
由于人工智能技术的先进性,所以可以使用人工智能技术进行活体检测。
机器学习(Machine Learning,ML)是一门多领域交叉学科,涉及概率论、统计学、逼近论、凸分析、算法复杂度理论等多门学科。专门研究计算机怎样模拟或实现人类的学习行为,以获取新的知识或技能,重新组织已有的知识结构使之不断改善自身的性能。机器学习是人工智能的核心,是使计算机具有智能的根本途径,其应用遍及人工智能的各个领域。机器学习和深度学习通常包括人工神经网络、置信网络、强化学习、迁移学习、归纳学习等技术。本申请实施例中的目标检测过程涉及到机器学习技术,将在下文中进行介绍。
OpenCV:是一个基于伯克利软件套件BSD许可(开源)发行的跨平台计算机视觉和机器学习软件库,即一种计算机视觉以及机器学习的工具。
Python:是一种跨平台的计算机程序设计语言。是一个高层次的结合了解释性、编译性、互动性和面向对象的脚本语言。可以通过Python进行矩阵运算等操作,即是一种图像数据处理的工具。
光学字符识别OCR(Optical Character Recognition):是指电子设备(例如扫描仪或数码相机)检查纸上打印的字符,通过检测暗、亮的模式确定其形状,然后用字符识别方法将形状翻译成计算机文字的过程;即,针对印刷体字符,采用光学的方式将纸质文档中的文字转换成为黑白点阵的图像文件,并通过识别软件将图像中的文字转换成文本格式,供文字处理软件进一步编辑加工的技术,即一种目标检测方法。
在相关技术中,可以通过人工智能或者机器学习的方法,训练得到OCR模型,在训练OCR模型的过程中,需要使用大量的样本数据,所以需要产生样本数据。
在本申请实施例中,图像合成的方法是一种产生样本数据的方法,即可以通过图像合成和/或图像增强处理的方法,产生丰富的样本数据。
具体的,图像增强处理的方法可以为去锯齿、添加随机颜色边框和生成阴影的方法;还可以进行仿射变换、随机裁剪、添加噪音以及添加下划线等处理方法,进行图像增强处理。
Antialiasing:是一种消除显示器输出的画面中图物边缘出现凹凸锯齿的技术,即一种去锯齿的图像增强处理的方法。
Outlining:给物体边缘添加特定的纹理、图案和颜色的方法,即一种添加随机颜色边框的方法。
Glows:给相关文字添加阴影的效果的方法,即一种生成阴影的方法。
在介绍了上述名词后,现在基于现有技术中存在的问题,说明本申请的构思。
随着具有取像功能的电子装置的普及,图像的用途也越来越多;同样的,针对图像的处理技术也得到了快速发展。
其中,图像合成是图像处理领域的一个热点,通过图像合成技术,指将两幅或以上不同的图像合成一幅图像的技术,可以将两幅或以上不同的图像中的部分内容合成一副图像技术,以实现特殊的效果。
相关技术中,由于合成的图像仅仅是前景图片和背景图片的简单叠加,叠加后的图像的前景部分和背景部分的异较大,看上去很不自然,使得合成的图像效果较为失真,无法满足合成图像的用途需求。
基于相关技术中存在的问题,本申请实施例提供一种图像处理方法及装置,能够确定需要进行合成的待合成字符的矢量渲染图像,矢量渲染图像中的每个像素点的像素值表征的是该像素点与待合成字符边缘的像素点之间的最短距离值,所以当矢量渲染图像被放大或者缩小时,仍能够清晰的显示待合成字符,所以将矢量渲染图像与待合成背景图像进行合成处理,得到更逼真的合成图像。
在介绍了本申请的发明构思后,首先介绍本申请可适用的一种系统架构图。
具体的,结合图1,该系统架构至少包括至少一个终端设备101以及至少一个服务器102,终端设备101中可以显示待合成第一图像、待合成第二图像以及目标合成图像。
在本申请实施例中,终端设备101可以基于待合成第一图像以及待合成第二图像确定目标合成图像,服务器102也可以基于待合成第一图像以及待合成第二图像确定目标合成图像。
一种可选的实施例中,终端设备101将待合成第一图像以及待合成第二图像发送给服务器102,服务器102根据接收到的合成第一图像以及待合成第二图像确定目标合成图像。
在本申请实施例中,终端设备101与服务器102之间可以通过有限网络方式连接,也可以通过无线网络方式连接,在此不做限定。
进一步地,在本申请实施例中,终端设备101与服务器102的数量不做限定,终端设备101的数量可以与服务器102的数量相同,也可以不同。
示例性的,在本申请实施例中,服务器102在获得终端设备101发送的待合成第一图像以及待合成第二图像后,确定待合成第一图像的矢量渲染图像,矢量渲染图像中的每个像素点的像素值为像素点与目标像素点之间的最短距离值,目标像素点为表征待合成第一图像边缘的像素点,将矢量渲染图像与待合成第二图像进行合成处理,得到目标合成图像。
服务器102将得到的目标合成图像发送给终端设备101,终端设备101显示目标合成图像。
进一步地,在本申请实施例中,当服务器102得到目标合成图像后,基于目标合成图像训练目标检测模型,示例性的,目标检测模型为OCR模型。
在本申请实施例中,终端设备101可以是智能手机、平板电脑、笔记本电脑、台式计算机、智能音箱、智能电视、智能手表等,但并不局限于此。
在本申请实施例中,服务器102为提供计算能力的电子设备,服务器102可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式系统,还可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、内容分发网络(Content Delivery Network,CDN)、以及大数据和人工智能平台等基础云计算服务的云服务器。
进一步地,如图1所示,示例性解释终端设备101以及服务器102的结构,终端设备101可以包括一个或多个处理器1011、存储器1012、与服务器102交互的I/O接口1013以及显示面板1014等。
在本申请实施例中,服务器102可以包括一个或多个处理器1021、存储器1022以及与终端设备101交互的I/O接口1023等。此外,服务器102还可以配置数据库1024。
在本申请实施例中,服务器102在确定目标合成图像后,可以将结果保存在存储器1022中,也可以保存在其它存储设备中,在此不做限定。
或者在本申请实施例中,当服务器102基于确定的目标合成图像训练OCR模型后,可以将OCR模型保存在存储器1022中,也可以保存在其它存储设备中,在此不做限定。
上述具体实施例只是以服务器102确定目标合成图像进行阐述的,在本申请实施例中不限定具体确定目标合成图像的执行主体,可以是终端设备101,也可以是其它设备,在此不做限定。
当然,本申请实施例提供的方法并不限用于图1所示的应用场景中,还可以用于其它可能的应用场景,本申请实施例并不进行限制。对于图1所示的应用场景的各个设备所能实现的功能将在后续的方法实施例中一并进行描述,在此先不过多赘述。
基于上述设计思想以及上述应用场景,下面对本申请实施例的方法进行具体介绍。
如图2所示,本申请提供一种图像处理方法及装置,该方法具体由计算机设备执行,可选的,计算机设备可以是具有计算能力的电子设备,例如终端设备或者服务器,在此不限定聚类方法的具体执行主体。
图2所示的方法具体包括:
步骤S201,获得待合成第一图像以及待合第二图像。
为了解决现有技术中待合成第一图像与待合成第二图像进行合成,得到的合成图像失真的问题,所以首先需要获得待合成第一图像以及待合成第二图像。
可选的,在本申请实施例中,待合成第一图像为待合成字符图像,在本申请实施例中,待合成字符不做具体限定,可以是英文文字、中文文字或者其它语言文字,或者可以是英文符号、中文符号或者其它语言符号。
在本申请实施例中,待合成字符图像与待合成第二图像可以是基于合成需求确定的,例如合成需求是为了得到设定技术领域对应的目标合成图像,则待合成字符图像与待合成第二图像均是与设定技术领域对应。具体的,若设定技术领域为医学领域,则待合成字符为医学领域的文字,例如“肺部”、“阴影”、“反应良好”等词语,同样的,待合成第二图像可以是病例图像、诊断报告图像等。
当然,在本申请实施例中,还可以不限定设定技术领域,待合成字符图像与待成第二图像之间没有直接或者间接的关系。
在本申请实施例中,获得待合成字符图像以及待合成第二图像的方式有多种,可以是从公共数据库中获得的,也可以从设定技术领域的数据库中获得,在此不做限定。
在本申请实施例中,为了得到丰富的待合成字符图像,可以通过搜集大量语料数据,并通过筛选语料的方式得到待合成字符图像。
在本申请实施例中,为了能够获得更多的待合成字符图像,可以采用文本随机修改算法,丰富待合成字符图像的种类。
示例性的,在本申请实施例中,获得字符图像数据库,所述字符图像数据库中包括至少一个字符图像,也就是说,字符图像数据库中的所有字符图像都可以是待合成字符图像,也可以进一步对字符图像数据库中的多个字符图像进行处理,得到待合成字符图像。
在本申请实施例中,可以通过随机采样的方法,从字符图像数据库中抽样得到待选字符图像,在本申请实施例中,待选字符图像的数量不做限定,即抽样得到的可以是几个字符图像,也可以是单个字符图像;不同字符图像中的各字符可以是相互关联的,即可以构成短句、长句等,不同的字符之间也可以没有相关关系,在此不做赘述。
随机采样的方法可以是任一种随机采样的方法,例如接受-拒绝采样,MCMC蒙特卡洛采样、Gibbs采样方法。
在通过随机采样方法得到待选字符图像后,通过随机修改处理的方法对待选字符图像进行处理,得到待合成字符图像。
具体的,在本申请实施例中,随机修改处理方法至少包括随机替换、随机插入、随机交换、随机删除等多个方法中的一个或者组合。
下面结合具体示例说明获得待合成字符图像的过程,在下列处理方法中,首先确定待合成字符,然后获得对应的待合成字符图像。
具体的,如图3所示,示例性介绍一种确定待合成字符的方法,包括:
步骤S301,搜集大量语料,在本申请实施例中,可以根据目标合成图像的合成需求,获得对应的语料,例如在战斗游戏中,一些词汇难以出现在生活环境中,比如“击杀”、“虎牙”、“斗鱼”等词汇,在常见的公开数据集中较难出现。所以在本申请实施例中,除了搜集大量的常规语料词汇外,还将一些在战斗游戏中出现的词汇编撰为语料数据。
步骤S302,通过随机采样的方法,对搜集的语料数据进行随机采样。
在获得大量语料数据后,通过不同的随机采样方法,对语料数据进行变换。在进行随机采样处理时,可以对搜集到的语料进行随机的裁剪、抽样出不同长度的文字、语句。比如搜集的语料数据中包括语句“大哥盖草屋,二哥盖木屋,三弟盖了砖屋”,通过随机采样方法处理则会在语句中截取文字组合,“盖草屋”、“盖草屋,二哥”、“盖了砖屋”、“木屋,三弟”等,上述组合都作为待选字符,这些组合的长度各不相同,可以使得语料库更加丰富,进一步能够得到更为丰富的待合成字符。
步骤S303,利用随机修改处理的方法,对采样得到的待选字符进行变形处理。具体的,在本申请实施例中,变形处理的方法可以为随机替换、随机插入、随机交换、随机删除等方法中的至少一种。
具体的,随机替换的处理方法的原理是,从待选字符裁剪出文字语句中,随机选取n个单词,并随机选择其同义词替换选取的单词。示例性的,以待选字符为“今天天气真好”为例进行说明,选取的单词为“今天”和“真好”,则将“今天”替换为同义词“今日”,将“真好”替换为同义词“很好”,所以经过随机替换处理得到的待合成字符为“今日天气真好”。
随机插入的处理方法的原理是随机的从待选字符中找出某个词,并求出其随机的同义词,将该同义词插入待选字符的一个随机位置。示例性的,以待选字符为“今天天气真好”为例进行说明,从待选字符中选择“天气”,得到“天气”的近义词为“气象”,将“气象”随机插入到待选字符中,得到“今天天气真好气象”的待合成字符。
随机交换的处理方法的原理是随机的待选字符中两个词并交换它们的位置,并可以重复执行上述操作。
示例性的,以待选字符为“今天天气真好”为例进行说明,从待选字符中选择“天气”和“真好”,并交换上述两个待选字符的在原待选字符中的位置,得到的待合成字符为“今天真好天气”。
随机删除的处理方法的原理是以一定概率的概率,随机的待选字符中的至少一个待选字符。示例性的,以待选字符为“今天天气真好”为例进行说明,从待选字符中删除“天气”,得到的待合成字符为“今天真好”。
可选的,在本申请实施例中,还可以通过对上述几种方法的组合得到待合成字符,例如随机选取两种方法进行组合、随机选取三种方法组合或者将四种方进行组合,得到待合成字符,增加待合成字符的多样性。
在获得了待合成字符后,就可以获得对应的待合成字符图像,即确定了丰富多样的待合成字符图像。
步骤S202,确定待合成第一图像的矢量渲染图像,矢量渲染图像中的每个像素点的像素值为像素点与目标像素点之间的最短距离值,目标像素点为表征待合成第一图像边缘的像素点。
在本申请实施例中,为了能够在待合成第一图像放大缩小时,仍能够显示清晰的边缘像素点,所以需要确定待合成第一图像的矢量渲染图像,由于矢量渲染图像中的每个像素点的像素值表征的是与第一图像边缘的像素点之间的最短距离,所以能够在第一图像放大或者缩小时,仍能够计算与新的边缘的像素点之间的最短距离,不同像素点之间的相对位置保持不变,能够清晰的显示边缘像素。
可选的,在本申请实施例中,若待合成第一图像为待合成字符图像时,在获得待合成字符图像后,通过确定待合成字符图像的矢量渲染图像,确定待合成字符图像的矢量渲染图,在矢量渲染图中,每一个待合成字符图像都表示成一组数学曲线描述的轮廓,它包含了字形边界上的关键点,连线的导数信息等。在矢量渲染图中显示字体时,渲染引擎通过读取其数学矢量,并进行一定的数学运算来实现渲染,字的内部则通过光栅化来填充。
具体的,矢量渲染图像是将每个像素点与表征待合成字符图像边缘之间的最短距离,在本申请实施例中,每个待合成字符图像边缘是一组数据数学曲线描述的轮廓,所以还需要确定每个像素点与待合成字符图像边缘像素点之间的最短距离。
示例性的,如图4所示,在图4中显示的是待合成字符图像“T”,针对待合成字符图像“T”的矢量渲染图中的某个像素点,与待合成字符图像“T”的边缘像素之间存在d1、d2、d3以及d4,其中最短距离为d4,则该像素点的像素值为d4。
在本申请实施例中,获得待合成第一图像对应的矢量边缘信息,基于矢量边缘信息确定待合成第一图像对应的灰度图像,矢量边缘信息是通过待合成第一图像边缘的边缘函数确定的;具体的,在本申请实施例中,不同的第一图像中表征的图像意义不同,不同的第一图像的边缘信息是通过函数确定的,通过函数能够确定不同的第一图像的边缘走向。
进一步地,在本申请实施例中,根据边缘函数,确定灰度图像中表征待合成第一图像边缘的像素点,并确定灰度图像中每个像素点与待合成第一图像边缘的像素点之间的最短距离值,将灰度图像中的每个像素点的像素值替换为对应的最短距离值,得到矢量渲染图像。
可选的,在本申请实施例中,待合成第一图像为待合成字符图像,确定待合成字符图像的矢量渲染图像的过程为:获得待合成字符图像对应的矢量字体,基于矢量字体确定待合成字符图像对应的灰度图像,矢量字体中的字形是通过字形函数确定的;根据字形函数,确定灰度图像中表征待合成字符图像轮廓信息的轮廓信息像素;确定灰度图像中每个像素与轮廓信息像素之间的最短距离值,将灰度图像中的每个像素点的像素值替换为对应的最短距离值,得到矢量渲染图像。
下面结合图5的处理步骤示例性解释确定待合成字符的矢量渲染图像的方法。
步骤S501,确定待合成字符图像对应的灰度图像。
具体的,在本申请实施例中,每个待合成字符图像都有对应的矢量字体,矢量字体是与点阵字体相对应的一种字体。矢量字体的每个字形都是通过数学方程来描述的,一个字形上分割出若干个关键点,相邻关键点之间由一条光滑曲线连接,这条曲线可以由有限个参数来唯一确定。
在本申请实施例中,在获得待合成字符图像对应的矢量字体后,渲染一张分辨率较高的灰度图,例如分辨率为4096×4096的灰度图像,可以称为大位图。
在本申请实施例中,可以用字体引擎Freetype读取待合成字符图像的电脑轮廓字体Truetype矢量字体。
步骤S502,确定灰度图像中的轮廓信息像素。
在本申请实施例中,由于矢量渲染图像中需要确定每个像素点与待合成字符图像边缘的像素点之间的最短距离值,所以需要确定待合成字符图像边缘。
具体的,上一步生成的灰度图是经过光栅化的,光栅化指的是几何数据经过一系列变换后最终转换为像素,从而呈现在显示设备上的过程,也就是说待合成字符图像的轮廓和内部都进行了填充。
在本申请实施例中,只需要获得待合成字符图像边缘信息,即轮廓信息,所以需要提取出它的轮廓,具体的,矢量字体的每个字形都是通过数学方程来描述的,所以可以通过数学方程得到精确的轮廓位置,也能够得到待合成字符图像轮廓信息的轮廓信息像素。
在本申请实施例中,可以将轮廓信息像素标识为1,其它标示为0,就可以提取到待合成字符图像轮廓信息的轮廓信息。
步骤S503,将像素替换为最短距离值,得到矢量渲染图像。
具体的,在本申请实施例中,在得到待合成字符图像轮廓信息的轮廓信息像素后,确定灰度图像中每个像素与轮廓信息像素之间的最短距离值,然后将灰度图像中的每个像素值替换为对应的最短距离值。
在本申请实施例中,由于将灰度图像中的每个像素值替换为对应的最短距离值,所以在对灰度图像进行放大时,每个像素点的渲染效果是基于最短距离值确定的,随着放大的倍数进行距离插值,即放大采样后,不同的像素点与目标像素之间的最短距离未发生变化,所以能够得到清晰的矢量渲染图像。
在本申请实施例中,由于在进行图像合成的过程中,不会使用较大分辨率的矢量渲染图像,所以在本申请实施例中,矢量渲染图像是在原灰度图像的基础上得到的,所以生成的矢量渲染图像的分辨率较大,但是在实际应用场景中,通常不需要较大的分辨率的数量渲染图像,为了与实际应用场景匹配,也减少数据存储量,所以在本申请实施例中,还包括以下步骤:
步骤S504,获得目标分辨率,确定灰度图像的分辨率与目标分别率之间的对应关系,根据对应关系对灰度图像进行离散采样处理,得到矢量渲染图像。
也就是说,基于合成图像的需求,调整矢量渲染图像的分辨率,例如目标分辨率为512*512,则在灰度图像中的每个像素点的像素值替换为对应的所述最短距离值后,将灰度图像进行离散采样,将分辨率为4096×4096的灰度图像变换为目标分辨率为512*512的矢量渲染图像。同时,在本申请实施例中,在采样的过程中,根据步骤603得到的灰度图像,可以判断一个采样点(即像素点)是否在待合成字符图像内,如果在待合成字符图像内,这个距离就是正数,否则就是负数。
进一步地,在本申请实施例中,由于灰度图像中的每个像素对应的最短距离值为浮点数据,为了减少矢量渲染图像的存储数据量,加速渲染矢量渲染图像以及提高合成速度,在本申请实施中,将灰度图像中的每个像素对应的最短距离值转换为整型数据INTEGER,即最短距离值是不包含小数部分的数值型数据,得到矢量渲染图像。也就是说,对灰度图像进行进一步地量化和压缩,在每个像素对应的最短距离值都是浮点数据的类型,需要将浮点数据转换为整型数据,以减少空间占用,加速渲染。
综合上述内容可知,在本申请实施例中,在待合成字符图像的位图(上述步骤中的灰度图像)的基础上,计算位图中每个像素点到周围像素点的距离,得到距离值,该距离值为SDF的值,然后映射到0~1的范围,生成适量渲染图像,在矢量渲染图像中,0.5的值代表待合成字符图像的边缘。
在得到矢量渲染图像后,对矢量渲染图像进行渲染时,可以使用着色器,对矢量渲染图像进行渲染,在渲染过程中,着色器进行采样放大时,会进行插值,即通过放大前的各像素点与目标像素之间的最短距离值以及放大比例,能够确定放大后图像中每个放大像素点与放大目标像素之间的最短距离值。由于矢量渲染图像中每个像素点的值为最短距离值,则在对距离值进行插值计算时,可以保证插值后的像素点的值是正确的,则不会造成矢量渲染图像边缘模糊的问题。
示例性的,如图6所示,图6中示出了待合成字符图像“吊”的放大效果渲染图,通过待合成字符图像“吊”的32*32分辨率的矢量渲染图放大得到的渲染效果是清晰的,通过待合成字符图像“吊”的32*32分辨率的位图放大得到的渲染效果是模糊的。
步骤S203,将矢量渲染图像与待合成第二图像进行合成处理,得到目标合成图像。
在本申请实施例中,在得到矢量渲染图像后,就可以将矢量渲染图像与待合成第二图像进行合成,得到需要的目标合成图像。
在本申请实施例中,将矢量渲染图像与待合成第二图像进行合成的方法有多种,可以基于像素级信息进行合成,即针对每个像素点,对应将矢量渲染图像与待合成第二图像的像素值进行合成处理,合成处理的方法可以是相加,或者是其它方式的运算,在此不做限定。
进一步地,在本申请实施例中,为了能够得到更为丰富多样的目标合成图像,还可以通过非线性映射和/或线性映射处理,得到变换的目标合成图像。
在本申请实施例中,将矢量渲染图像与待合成第二图像进行合成处理,得到初始合成图像,然后对初始合成图像进行非线性映射和/或线性映射处理,得到至少一个目标合成图像。
也就是说,根据不同的变换处理方法,可以将初始合成图像变换为多个目标合成图像。
在本申请实施例中,线性或者非线性映射处理的方法有多种,下面示例性介绍几种线性或者非线性映射处理方法。
具体的,一种可选的方法为透视变换(Perspective Transformation),本质是将初始合成图像投影到一个新的视平面。
另一种可选的方法为随机裁剪(Random Crop),对初始合成图像进行随机的裁剪,也就是随机的切除初始合成图像的一部分,从而给初始合成图像带来一定的噪音,提高了初始合成图像的多样性。
另一种可选的方法为扭曲变换(Curve),对初始合成图像进行随机扭曲变形,具体来说就是将初始合成图像划分成三角形的集合,然后,依序对每一原始三角形进行扭曲步骤,以获得多个扭曲三角形。接着,将这些扭曲三角形组合,以产生扭曲图像。
另一种可选的方法为加明边界(Light Border),对初始合成图像中的待合成字符的边缘进行加亮边界处理。
同样的,还有一种可选的方法是加暗边界(Dard Border),对初始合成图像中的待合成字符的边缘对文字边缘进行加暗边界处理。
同样可以对初始合成图像中的待合成字符进行变换的方法有让待合成字符间隙变大(Random Char Space Big)的方法;让待合成字符间隙变小(Random Char SpaceSmall)的方法;给待合成字符加中线(Middle Line);给待合成字符加上划线(TableLine);待合成字符加下划线(Under Line);浮雕效果(Emboss),给待合成字符加入浮雕的效果。
示例性的,如图7所示,示例性的显示了对初始合成图像进行变换后的变换结果,图7中的所有变换结果都作为目标合成图像。
也就是说,在本申请实施例中,通过多种对初始合成图像的变换方法能够得到多样且丰富的目标合成图像,当目标合成图像用于进行模型训练时,能够提高模型的鲁棒性以及泛化性。
在本申请实施例中,可以通过调用游戏引擎中的文字渲染工具确定待合成字符的矢量渲染图像,也就是说,可以调用现有的文字渲染工具,在需要得到矢量渲染图像时,只需要启动脚本,无需干预,即可自动获取矢量渲染图像,提高了确定矢量渲染图像的效率,也进一步提高了得到目标合成图像的效率。
也就是说,本申请实施例中,并不需要进行程序开发等繁琐的工作即可以得到清晰准确的矢量渲染图像,并进一步快速得到目标合成图像,所以提高了确定目标合成图像过程的整体效率。在本申请实施例中,当获得目标合成图像后,可以将目标合成图像作为OCR模型的训练样本,对OCR模型进行训练,已训练的OCR模型能够从复杂的第二图像中识别出字符信息。
示例性的,在本申请实施例中,将得到的目标合成图像,整理成OCR模型需要的格式,具体来说就是用txt文件来记录文件的名字和对应的字符内容,最后使用人工智能算法进行训练,在本申请实施例中,可以通过卷积神经网络、长短期记忆、基于神经网络的时序类分类三种方法结合进行训练,三种方法的结合成为CRNN算法。
具体的,CRNN算法首先使用卷积神经网络CNN提取图像卷积特征,即提取作为训练样本的目标合成图像中的图像卷积特征。
然后通过长短期记忆网络LSTM进一步提取图像卷积特征中的序列特征。长短期记忆网络LSTM是一种时间循环神经网络,是为了解决一般的循环神经网络RNN存在的长期依赖问题而专门设计出来的。
LSTM与基本的递归神经网络具有类似的控制流程,不同的是LSTM基本单元内部的控制逻辑。LSTM的核心部件是基本单元,其中包含几个控制结构来对序列中的数据进行处理。LSTM基本块可以通过内部的门结构,包括遗忘门,更新门,输出门,来对之前的输入信息进行增加与遗忘。
最后引入CTC网络来解决训练时字符无法对齐的问题,CTC网络可以理解为基于神经网络的时序类分类。CTC的网络只需要一个输入序列和一个输出序列即可以训练。不需要对数据对齐和一一标注,所以能够解决训练时字符无法对齐的问题。
当然,上述实施例只是示例性的提供了一种基于目标合成图像进行训练的方法,还有其它可选的目标合成图像的用途,在此不做限定。
本申请实施例中,能够确定需要进行合成的待合成字符的矢量渲染图像,矢量渲染图像中的每个像素点的像素值表征的是该像素点与待合成字符边缘的像素点之间的最短距离值,所以当矢量渲染图像被放大或者缩小时,仍能够清晰的显示待合成字符,所以将矢量渲染图像与待合成第二图像进行合成处理,得到更逼真的合成图像。
下面结合具体实施例解释本申请实施例中的图像处理方法,具体的场景如图8所示。
在本申请实施例中,需要获得目标合成图像,且目标合成图像的用途是作为OCR模型训练的训练样本,而OCR模型的训练目标是从游戏场景图像中识别出游戏文字,所以在本申请实施例中,需要首先得到目标合成图像,然后再对OCR模型进行训练,使用已训练的OCR模型来识别游戏场景图像中的游戏文字。
具体的,在本申请实施例中,可以通过图像处理设备、模型训练设备以及识别设备之间的处理通信过程来实现得到目标合成图像,然后再对OCR模型进行训练,使用已训练的OCR模型来识别游戏场景图像中的游戏文字的过程。
在本申请实施例中,图像处理设备首先获得丰富的游戏文字内容,可以利用文字生成器生成有意义的文字。例如在战斗游戏中,一些词汇难以出现在生活环境中,比如“击杀”、“虎牙”、“斗鱼”等词汇。同时确定游戏文字对应的数量字体。
进一步地,图像处理设备利用Unity中TextMesh Pro组件来渲染获得的游戏文字的矢量渲染图像。
图像处理设备采用OPENCV对Unity渲染出的矢量渲染图像进行线性和非线性矩阵操作,比如对图像边缘进行随机的裁剪,对图像进行随机扭曲变形,对文字边缘加亮边界,对文字边缘加暗边界等方式,从而低成本地从一张图像获取更多的目标合成图像。
模型训练设备基于目标合成图像以及CRNN对初始OCR模型进行训练,得到识别率高的OCR模型。识别设备基于已训练的OCR模型识别游戏场景下的文字,例如,如图8所示,将游戏场景下的文字中的“掌机游戏”识别出来。
基于相同的技术构思,本申请实施例提供了一种图像处理装置900,如图9所示,包括:
获取单元901,用于获得待合成第一图像以及待合成第二图像;
矢量渲染图像确定单元902,用于确定待合成第一图像的矢量渲染图像,矢量渲染图像中的每个像素点的像素值为像素点与目标像素点之间的最短距离值,目标像素点为表征待合成第一图像边缘的像素点;
合成单元903,用于基于矢量渲染图像与待合成第二图像,得到目标合成图像。
可选的,矢量渲染图像确定单元902具体用于:
获得待合成第一图像对应的矢量边缘信息,基于矢量边缘信息确定待合成第一图像对应的灰度图像,矢量边缘信息是通过待合成第一图像边缘的边缘函数确定的;
根据边缘函数,确定灰度图像中表征待合成第一图像边缘的像素点;
确定灰度图像中每个像素点与待合成第一图像边缘的像素点轮廓信息像素之间的最短距离值,将灰度图像中的每个像素点的像素值替换为对应的最短距离值,得到矢量渲染图像。
可选的,矢量渲染图像确定单元902还用于:
获得目标分辨率,确定灰度图像的分辨率与目标分别率之间的对应关系;
根据对应关系对灰度图像进行离散采样处理,得到矢量渲染图像。
可选的,矢量渲染图像确定单元902还用于:
将灰度图像中的每个像素对应的最短距离值转换为整型数据,得到矢量渲染图像。
可选的,合成单元903具体用于:
将矢量渲染图像与待合成第二图像进行合成处理,得到初始合成图像;
对初始合成图像进行映射处理,得到至少一个目标合成图像,其中所述映射处理为非线性映射处理和线性映射处理中的至少一种。
可选的,获取单元901具体用于:
获得第一图像数据库,第一图像数据库中包括至少一个第一图像;
基于随机采样的方法,从第一图像数据库中随机抽样得到待选第一图像;
将待选第一图像进行随机修改处理,得到待合成第一图像,随机修改处理方法为随机替换方法、随机插入方法、随机交换方法、随机删除方法中的至少一种。
可选的,矢量渲染图像确定单元902具体用于:
通过游戏引擎中的文字渲染工具确定待合成第一图像的矢量渲染图像。
可选的,待合成第一图像为待合成字符图像。
基于相同的技术构思,本申请实施例提供了一种计算机设备,如图10所示,包括至少一个处理器1001,以及与至少一个处理器连接的存储器1002,本申请实施例中不限定处理器1001与存储器1002之间的具体连接介质,图10中处理器1001和存储器1002之间通过总线连接为例。总线可以分为地址总线、数据总线、控制总线等。
在本申请实施例中,存储器1002存储有可被至少一个处理器1001执行的指令,至少一个处理器1001通过执行存储器1002存储的指令,可以执行前述的图像处理方法中所包括的步骤。
其中,处理器1001是计算机设备的控制中心,可以利用各种接口和线路连接计算机设备的各个部分,通过运行或执行存储在存储器1002内的指令以及调用存储在存储器1002内的数据,从而创建虚拟机。可选的,处理器1001可包括一个或多个处理单元,处理器1001可集成应用处理器和调制解调处理器,其中,应用处理器主要处理操作系统、用户界面和应用程序等,调制解调处理器主要处理无线通信。可以理解的是,上述调制解调处理器也可以不集成到处理器1001中。在一些实施例中,处理器1001和存储器1002可以在同一芯片上实现,在一些实施例中,它们也可以在独立的芯片上分别实现。
处理器1001可以是通用处理器,例如中央处理器(CPU)、数字信号处理器、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件,可以实现或者执行本申请实施例中公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者任何常规的处理器等。结合本申请实施例所公开的方法的步骤可以直接体现为硬件处理器执行完成,或者用处理器中的硬件及软件模块组合执行完成。
存储器1002作为一种非易失性计算机可读存储介质,可用于存储非易失性软件程序、非易失性计算机可执行程序以及模块。存储器1002可以包括至少一种类型的存储介质,例如可以包括闪存、硬盘、多媒体卡、卡型存储器、随机访问存储器(Random AccessMemory,RAM)、静态随机访问存储器(Static Random Access Memory,SRAM)、可编程只读存储器(Programmable Read Only Memory,PROM)、只读存储器(Read Only Memory,ROM)、带电可擦除可编程只读存储器(Electrically Erasable Programmable Read-Only Memory,EEPROM)、磁性存储器、磁盘、光盘等等。存储器1002是能够用于携带或存储具有指令或数据结构形式的期望的程序代码并能够由计算机存取的任何其他介质,但不限于此。本申请实施例中的存储器1002还可以是电路或者其它任意能够实现存储功能的装置,用于存储程序指令和/或数据。
基于同一发明构思,本申请实施例提供了一种计算机可读存储介质,其存储有可由计算机设备执行的计算机程序,当程序在计算机设备上运行时,使得计算机设备执行图像处理方法的步骤。
本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本申请是参照根据本申请的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
显然,本领域的技术人员可以对本申请进行各种改动和变型而不脱离本申请的精神和范围。这样,倘若本申请的这些修改和变型属于本申请权利要求及其等同技术的范围之内,则本申请也意图包含这些改动和变型在内。
Claims (15)
1.一种图像处理方法,其特征在于,所述方法包括:
获得待合成第一图像以及待合成第二图像;
确定所述待合成第一图像的矢量渲染图像,所述矢量渲染图像中的每个像素点的像素值为所述像素点与目标像素点之间的最短距离值,所述目标像素点为表征待合成第一图像边缘的像素点;
对所述矢量渲染图像与所述待合成第二图像进行合成,得到目标合成图像。
2.根据权利要求1所述的方法,其特征在于,所述确定所述待合成第一图像的矢量渲染图像,包括:
获得所述待合成第一图像对应的矢量边缘信息,基于所述矢量边缘信息确定所述待合成第一图像对应的灰度图像,所述矢量边缘信息是通过所述待合成第一图像边缘的边缘函数确定的;
根据所述边缘函数,确定所述灰度图像中表征所述待合成第一图像边缘的像素点;
确定所述灰度图像中每个像素点与所述待合成第一图像边缘的像素点之间的最短距离值,将所述灰度图像中的每个像素点的像素值替换为对应的所述最短距离值,得到所述矢量渲染图像。
3.根据权利要求2所述的方法,其特征在于,所述将所述灰度图像中的每个像素点的像素值替换为对应的所述最短距离值后,还包括:
获得目标分辨率,确定所述灰度图像的分辨率与所述目标分别率之间的对应关系;
根据所述对应关系对所述灰度图像进行离散采样处理,得到所述矢量渲染图像。
4.根据权利要求3所述的方法,其特征在于,所述根据所述对应关系对所述灰度图像进行离散采样处理后,还包括:
将所述灰度图像中的每个像素点对应的所述最短距离值转换为整型数据,得到所述矢量渲染图像。
5.根据权利要求1所述的方法,其特征在于,所述对所述矢量渲染图像与所述待合成第二图像进行合成,得到目标合成图像,包括:
将所述矢量渲染图像与所述待合成第二图像进行合成处理,得到初始合成图像;
对所述初始合成图像进行映射处理,得到至少一个所述目标合成图像,其中所述映射处理为非线性映射处理和线性映射处理中的至少一种。
6.根据权利要求1所述的方法,其特征在于,所述获得待合成第一图像,包括:
获得第一图像数据库,所述第一图像数据库中包括至少一个第一图像;
基于随机采样的方法,从所述第一图像数据库中随机抽样得到待选第一图像;
将所述待选第一图像进行随机修改处理,得到所述待合成字符,所述随机修改处理方法为随机替换方法、随机插入方法、随机交换方法、随机删除方法中的至少一种。
7.根据权利要求1所述的方法,其特征在于,所述确定所述待合成第一图像的矢量渲染图像,包括:
通过游戏引擎中的文字渲染工具确定所述待合成第一图像的矢量渲染图像。
8.根据权利要求1~7任一所述的方法,其特征在于,所述待合成第一图像为待合成字符图像。
9.一种确定合成图像的装置,其特征在于,包括:
获取单元,用于获得待合成第一图像以及待合成第二图像;
矢量渲染图像确定单元,用于确定所述待合成第一图像的矢量渲染图像,所述矢量渲染图像中的每个像素点的像素值为所述像素点与目标像素点之间的最短距离值,所述目标像素点为表征待合成第一图像边缘的像素点;
合成单元,用于对所述矢量渲染图像与所述待合成第二图像进行合成,得到目标合成图像。
10.根据权利要求9所述的装置,其特征在于,所述矢量渲染图像确定单元具体用于:
获得所述待合成第一图像对应的矢量边缘信息,基于所述矢量边缘信息确定所述待合成第一图像对应的灰度图像,所述矢量边缘信息是通过所述待合成第一图像边缘的边缘函数确定的;
根据所述边缘函数,确定所述灰度图像中表征所述待合成第一图像边缘的像素点;
确定所述灰度图像中每个像素点与所述待合成第一图像边缘的像素点所述轮廓信息像素之间的最短距离值,将所述灰度图像中的每个像素点的像素值替换为对应的所述最短距离值,得到所述矢量渲染图像。
11.根据权利要求10所述的装置,其特征在于,所述矢量渲染图像确定单元还用于:
获得目标分辨率,确定所述灰度图像的分辨率与所述目标分别率之间的对应关系;
根据所述对应关系对所述灰度图像进行离散采样处理,得到所述矢量渲染图像。
12.根据权利要求11所述的装置,其特征在于,所述矢量渲染图像确定单元还用于:
将所述灰度图像中的每个像素点对应的所述最短距离值转换为整型数据,得到所述矢量渲染图像。
13.根据权利要求9所述的装置,其特征在于,所述合成单元具体用于:
将所述矢量渲染图像与所述待合成第二图像进行合成处理,得到初始合成图像;
对所述初始合成图像进行映射处理,得到至少一个所述目标合成图像,其中所述映射处理为非线性映射处理和线性映射处理中的至少一种。
14.一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现权利要求1~8任一权利要求所述方法的步骤。
15.一种计算机可读存储介质,其特征在于,其存储有可由计算机设备执行的计算机程序,当所述程序在计算机设备上运行时,使得所述计算机设备执行权利要求1~8任一所述方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011606767.0A CN112836467B (zh) | 2020-12-30 | 2020-12-30 | 一种图像处理方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011606767.0A CN112836467B (zh) | 2020-12-30 | 2020-12-30 | 一种图像处理方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112836467A true CN112836467A (zh) | 2021-05-25 |
CN112836467B CN112836467B (zh) | 2023-12-12 |
Family
ID=75925369
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011606767.0A Active CN112836467B (zh) | 2020-12-30 | 2020-12-30 | 一种图像处理方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112836467B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115270032A (zh) * | 2022-08-10 | 2022-11-01 | 上海图客科技有限公司 | 一种基于WebGL的动态高清文字显示方法及系统 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7792331B2 (en) * | 2004-06-29 | 2010-09-07 | Acd Systems, Ltd. | Composition of raster and vector graphics in geographic information systems |
CN103531176A (zh) * | 2013-05-10 | 2014-01-22 | Tcl集团股份有限公司 | 一种Android终端的字体显示优化方法及系统 |
CN107274421A (zh) * | 2017-05-02 | 2017-10-20 | 北京建筑大学 | 一种遥感影像尺度计算方法、可读存储介质和计算机设备 |
CN109493400A (zh) * | 2018-09-18 | 2019-03-19 | 平安科技(深圳)有限公司 | 手写样本生成方法、装置、计算机设备及存储介质 |
CN109992221A (zh) * | 2019-04-12 | 2019-07-09 | 深圳高通半导体有限公司 | 一种用于矢量字库运算的处理器芯片的实现方法 |
-
2020
- 2020-12-30 CN CN202011606767.0A patent/CN112836467B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7792331B2 (en) * | 2004-06-29 | 2010-09-07 | Acd Systems, Ltd. | Composition of raster and vector graphics in geographic information systems |
CN103531176A (zh) * | 2013-05-10 | 2014-01-22 | Tcl集团股份有限公司 | 一种Android终端的字体显示优化方法及系统 |
CN107274421A (zh) * | 2017-05-02 | 2017-10-20 | 北京建筑大学 | 一种遥感影像尺度计算方法、可读存储介质和计算机设备 |
CN109493400A (zh) * | 2018-09-18 | 2019-03-19 | 平安科技(深圳)有限公司 | 手写样本生成方法、装置、计算机设备及存储介质 |
CN109992221A (zh) * | 2019-04-12 | 2019-07-09 | 深圳高通半导体有限公司 | 一种用于矢量字库运算的处理器芯片的实现方法 |
Non-Patent Citations (1)
Title |
---|
董长虹: "Matlab图像处理与应用", 国防工业出版社, pages: 0164 * |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115270032A (zh) * | 2022-08-10 | 2022-11-01 | 上海图客科技有限公司 | 一种基于WebGL的动态高清文字显示方法及系统 |
Also Published As
Publication number | Publication date |
---|---|
CN112836467B (zh) | 2023-12-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10614574B2 (en) | Generating image segmentation data using a multi-branch neural network | |
US20190304066A1 (en) | Synthesis method of chinese printed character images and device thereof | |
CN110414519A (zh) | 一种图片文字的识别方法及其识别装置 | |
CN111291629A (zh) | 图像中文本的识别方法、装置、计算机设备及计算机存储介质 | |
CN112990205B (zh) | 手写字符样本的生成方法及装置、电子设备、存储介质 | |
US11587216B2 (en) | Detection and identification of objects in images | |
CN111626297A (zh) | 文字书写质量评价方法、装置、电子设备和记录介质 | |
CN112418216A (zh) | 一种复杂自然场景图像中的文字检测方法 | |
CN115249306B (zh) | 图像分割模型训练方法、图像处理方法、装置及存储介质 | |
CN114596566B (zh) | 文本识别方法及相关装置 | |
CN111046763A (zh) | 一种人像卡通化的方法和装置 | |
CN112381082A (zh) | 基于深度学习的表格结构重建方法 | |
CN111859852A (zh) | 一种汉字风格迁移模型的训练装置和方法 | |
CN114092938A (zh) | 图像的识别处理方法、装置、电子设备及存储介质 | |
CN112037239A (zh) | 基于多层次显式关系选择的文本指导图像分割方法 | |
CN112836467B (zh) | 一种图像处理方法及装置 | |
CN110659702A (zh) | 基于生成式对抗网络模型书法字帖评价系统及方法 | |
CN112749696A (zh) | 一种文本检测方法及装置 | |
CN112464924A (zh) | 一种构建训练集的方法及装置 | |
Florea et al. | Expiry date recognition using deep neural networks | |
CN114241486A (zh) | 一种提高识别试卷学生信息准确率的方法 | |
CN112732259A (zh) | 基于人工智能的前端交互页面转换方法、装置及介质 | |
CN112200158A (zh) | 训练数据生成方法及系统 | |
Morita et al. | Inscription Segmentation Using Synthetic Inscription Images for Text Detection at Stone Monuments | |
CN111079562A (zh) | 多阶段数据生成自循环财务发票文本智能识别系统及方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
REG | Reference to a national code |
Ref country code: HK Ref legal event code: DE Ref document number: 40043858 Country of ref document: HK |
|
GR01 | Patent grant | ||
GR01 | Patent grant |