CN114387165A - 图像处理方法、图像处理装置、电子设备、存储介质 - Google Patents
图像处理方法、图像处理装置、电子设备、存储介质 Download PDFInfo
- Publication number
- CN114387165A CN114387165A CN202210022864.8A CN202210022864A CN114387165A CN 114387165 A CN114387165 A CN 114387165A CN 202210022864 A CN202210022864 A CN 202210022864A CN 114387165 A CN114387165 A CN 114387165A
- Authority
- CN
- China
- Prior art keywords
- image
- training
- lines
- processing
- preprocessed
- 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.)
- Pending
Links
- 238000012545 processing Methods 0.000 title claims abstract description 193
- 238000003672 processing method Methods 0.000 title claims abstract description 71
- 238000013507 mapping Methods 0.000 claims abstract description 84
- 238000012549 training Methods 0.000 claims description 244
- 238000000034 method Methods 0.000 claims description 80
- 230000008569 process Effects 0.000 claims description 56
- 230000015654 memory Effects 0.000 claims description 27
- 230000006870 function Effects 0.000 claims description 26
- 238000007781 pre-processing Methods 0.000 claims description 21
- 238000005429 filling process Methods 0.000 claims description 14
- 230000002441 reversible effect Effects 0.000 claims description 4
- 238000013528 artificial neural network Methods 0.000 claims description 3
- 238000010586 diagram Methods 0.000 description 31
- 238000004891 communication Methods 0.000 description 17
- 101150114958 CTB2 gene Proteins 0.000 description 3
- 101150006264 ctb-1 gene Proteins 0.000 description 3
- 230000009466 transformation Effects 0.000 description 3
- 238000012937 correction Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 230000002708 enhancing effect Effects 0.000 description 2
- 238000001914 filtration Methods 0.000 description 2
- 230000001788 irregular Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000003062 neural network model Methods 0.000 description 2
- 230000009467 reduction Effects 0.000 description 2
- 230000002829 reductive effect Effects 0.000 description 2
- 238000012360 testing method 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
- 241000699670 Mus sp. Species 0.000 description 1
- 230000002411 adverse Effects 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 230000002902 bimodal effect Effects 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000013135 deep learning Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000000670 limiting effect Effects 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 238000010801 machine learning Methods 0.000 description 1
- 239000011159 matrix material Substances 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 238000007639 printing Methods 0.000 description 1
- 230000000717 retained effect Effects 0.000 description 1
- 239000004984 smart glass Substances 0.000 description 1
- 239000000758 substrate Substances 0.000 description 1
- 238000013519 translation Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T3/00—Geometric image transformations in the plane of the image
- G06T3/40—Scaling of whole images or parts thereof, e.g. expanding or contracting
- G06T3/4046—Scaling of whole images or parts thereof, e.g. expanding or contracting using neural networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Artificial Intelligence (AREA)
- Evolutionary Computation (AREA)
- General Physics & Mathematics (AREA)
- Biomedical Technology (AREA)
- Life Sciences & Earth Sciences (AREA)
- Health & Medical Sciences (AREA)
- Biophysics (AREA)
- Computational Linguistics (AREA)
- Data Mining & Analysis (AREA)
- General Health & Medical Sciences (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Image Processing (AREA)
Abstract
一种图像处理方法、图像处理装置、电子设备和非瞬时性计算机可读存储介质。图像处理方法包括:获取原始图像;对原始图像进行处理,以得到预处理图像,其中,预处理图像包括至少两条第一线,至少两条第一线沿同一方向依次并列排布;通过扭曲处理模型对预处理图像进行处理,以得到中间图像,其中,中间图像包括至少两条第二线,至少两条第二线沿同一方向依次并列排布,且至少两条第二线与至少两条第一线一一对应;基于预处理图像和中间图像之间的映射关系,对原始图像进行重映射,以得到输出图像。
Description
技术领域
本公开的实施例涉及一种图像处理方法、图像处理装置、电子设备和非瞬时性计算机可读存储介质。
背景技术
随着数字化技术的发展,可以对物体进行扫描或拍摄以转换为电子图像,电子图像易于存储和在互联网中传输。此外,可以利用图像识别技术等对电子图像进行识别,以获取电子图像中记载的信息。然而,在对物体进行扫描或拍摄以得到电子图像的过程中,无法避免得到的电子图像中的内容会出现倾斜、扭曲或变形等情况,这种倾斜、扭曲或变形则会对电子图像的分析等处理产生不利的影响,例如,使得识别得到的结果不准确等,而且也影响用户的查阅体验。
发明内容
本公开至少一个实施例提供一种图像处理方法,包括:获取原始图像;对所述原始图像进行处理,以得到预处理图像,其中,所述预处理图像包括至少两条第一线,所述至少两条第一线沿同一方向依次并列排布;通过扭曲处理模型对所述预处理图像进行处理,以得到中间图像,其中,所述中间图像包括至少两条第二线,所述至少两条第二线沿同一方向依次并列排布,且所述至少两条第二线与所述至少两条第一线一一对应;基于所述预处理图像和所述中间图像之间的映射关系,对所述原始图像进行重映射,以得到输出图像。
例如,在本公开至少一个实施例提供的图像处理方法中,预处理图像和所述中间图像之间的映射关系包括所述至少两条第一线和所述至少两条第二线之间的映射关系以及所述预处理图像中的所述至少两条第一线之间的区域和所述中间图像中的所述至少两条第二线之间的区域之间的映射关系。
例如,在本公开至少一个实施例提供的图像处理方法中,基于所述预处理图像和所述中间图像之间的映射关系,对所述原始图像进行重映射,以得到输出图像,包括:基于所述预处理图像和所述中间图像之间的映射关系,通过插值方法确定与所述预处理图像对应的预处理映射信息,其中,所述预处理映射信息用于指示所述预处理图像中的至少部分像素的映射参数;基于所述预处理映射信息,确定所述预处理图像中的与所述原始图像对应的区域对应的映射信息;对与所述原始图像对应的区域的映射信息进行缩放处理,以确定与所述原始图像对应的映射信息;基于与所述原始图像对应的映射信息对所述原始图像进行重映射,以得到所述输出图像。
例如,在本公开至少一个实施例提供的图像处理方法中,所述预处理图像中的至少部分像素包括所述预处理图像中的所述至少两条第一线之间的区域中的像素和所述至少两条第一线上的像素。
例如,在本公开至少一个实施例提供的图像处理方法中,对所述原始图像进行处理,以得到预处理图像,包括:对所述原始图像进行二值化处理,以得到输入图像;对所述输入图像进行缩放处理,以得到缩放后的图像;对所述缩放后的图像进行填充处理,以得到填充后的图像;对所述填充后的图像进行区域划分,以得到所述预处理图像。
例如,在本公开至少一个实施例提供的图像处理方法中,所述缩放后的图像包括彼此相对的第一缩放图像边和第二缩放图像边,所述预处理图像包括彼此相对的第一预处理图像边和第二预处理图像边,所述第一预处理图像边与所述第一缩放图像边对应,所述第二预处理图像边与所述第二缩放图像边对应,所述至少两条第一线在所述第一预处理图像边和所述第二预处理图像边之间沿着从所述第一预处理图像边到所述第二预处理图像边的方向排列,对所述缩放后的图像进行填充处理,以得到所述填充后的图像,包括:在所述第一缩放像边远离所述第二缩放图像边的一侧填补第一填充区域并在所述第二缩放图像边远离所述第一缩放图像边的一侧填补第二填充区域,以得到所述填充后的图像,其中,所述第一填充区域的彼此相对的两条边为所述第一缩放图像边和所述第一预处理图像边,所述第二填充区域的彼此相对的两条边为所述第二缩放图像边和所述第二预处理图像边。
例如,在本公开至少一个实施例提供的图像处理方法中,所述第一填充区域的尺寸和所述第二填充区域的尺寸相同。
例如,在本公开至少一个实施例提供的图像处理方法中,对所述原始图像进行处理,以得到预处理图像,包括:对所述原始图像进行二值化处理,以得到输入图像;对所述输入图像进行填充处理,以得到填充后的图像;对所述填充后的图像进行缩放处理,以得到缩放后的图像;对所述缩放后的图像进行区域划分,以得到所述预处理图像。
例如,在本公开至少一个实施例提供的图像处理方法中,所述至少两条第一线为对所述预处理图像沿同一方向进行等分的至少两条等分线。
例如,在本公开至少一个实施例提供的图像处理方法中,所述扭曲处理模型为基于神经网络的模型。
例如,在本公开至少一个实施例提供的图像处理方法中,所述原始图像中的图像内容被扭曲。
例如,本公开至少一个实施例提供的图像处理方法还包括:训练所述扭曲处理模型,其中,训练所述扭曲处理模型包括:生成训练图像,其中,所述训练图像包括至少两条训练线,所述至少两条训练线沿同一方向依次并列排布;基于所述训练图像,生成与所述训练图像对应的目标图像,其中,所述目标图像包括至少两条目标训练线,所述至少两条目标训练线沿同一方向依次并列排布,且所述至少两条目标训练线与所述至少两条训练线一一对应;基于所述训练图像和所述目标图像,对待训练的扭曲处理模型进行训练,以获得训练好的所述扭曲处理模型。
例如,在本公开至少一个实施例提供的图像处理方法中,基于所述训练图像和所述目标图像,对所述待训练的扭曲处理模型进行训练,以获得训练好的所述扭曲处理模型,包括:通过所述待训练的扭曲处理模型对所述训练图像进行处理,以得到输出训练图像,其中,所述输出训练图像包括至少两条输出线,所述至少两条输出线沿同一方向依次并列排布,且所述至少两条输出线与所述至少两条训练线一一对应;基于所述输出训练图像和所述目标图像,对所述待训练的扭曲处理模型的参数进行调整;在所述待训练的扭曲处理模型对应的损失函数满足预定条件时,获得训练好的所述扭曲处理模型,在所述待训练的扭曲处理模型对应的损失函数不满足预定条件时,继续输入所述训练图像和所述目标图像以重复执行上述训练过程。
例如,在本公开至少一个实施例提供的图像处理方法中,生成所述训练图像包括:生成输入训练图像;对所述输入训练图像进行缩放处理,以得到缩放后的输入训练图像;对所述缩放后的输入训练图像进行填充处理,以得到填充后的输入训练图像;对所述填充后的输入训练图像进行扭曲处理,以得到扭曲后的输入训练图像;对所述扭曲后的输入训练图像进行区域划分,以得到包括所述至少两条训练线的所述训练图像。
例如,在本公开至少一个实施例提供的图像处理方法中,基于所述训练图像,生成与所述训练图像对应的目标图像,包括:基于所述扭曲处理对应的扭曲参数,对所述训练图像进行反向扭曲处理,以得到所述目标图像。
例如,在本公开至少一个实施例提供的图像处理方法中,生成输入训练图像,包括:获取原始训练图像;对所述原始训练图像进行二值化处理,以得到所述输入训练图像。
例如,在本公开至少一个实施例提供的图像处理方法中,所述至少两条训练线为对所述训练图像沿同一方向进行等分的至少两条等分线。
本公开至少一个实施例还提供一种图像处理装置,包括:图像采集模块,被配置为获取原始图像;第一处理模块,被配置为对所述原始图像进行处理,以得到预处理图像,其中,所述预处理图像包括至少两条第一线,所述至少两条第一线沿同一方向依次并列排布;第二处理模块,被配置为通过扭曲处理模型对所述预处理图像进行处理,以得到中间图像,其中,所述中间图像包括至少两条第二线,所述至少两条第二线沿同一方向依次并列排布,且所述至少两条第二线与所述至少两条第一线一一对应;映射模块,被配置为基于所述预处理图像和所述中间图像之间的映射关系,对所述原始图像进行重映射,以得到输出图像。
本公开至少一个实施例还提供一种电子设备,包括:存储器,非瞬时性地存储有计算机可执行指令;处理器,配置为运行所述计算机可执行指令,其中,所述计算机可执行指令被所述处理器运行时实现根据本公开的任一实施例所述的图像处理方法。
本公开至少一个实施例还提供一种非瞬时性计算机可读存储介质,其中,所述非瞬时性计算机可读存储介质存储有计算机可执行指令,所述计算机可执行指令被处理器执行时可以实现根据本公开的任一实施例所述的图像处理方法。
附图说明
为了更清楚地说明本公开实施例的技术方案,下面将对实施例的附图作简单地介绍,显而易见地,下面描述中的附图仅仅涉及本公开的一些实施例,而非对本公开的限制。
图1为本公开至少一个实施例提供的一种图像处理方法的示意性流程图;
图2为本公开至少一个实施例提供的一种原始图像的示意图;
图3为本公开至少一个实施例提供的一种预处理图像的示意图;
图4A为本公开至少一个实施例提供的一种缩放后的图像的示意图;
图4B为本公开至少一个实施例提供的一种填充后的图像的示意图;
图5为本公开至少一个实施例提供的一种中间图像的示意图;
图6为本公开至少一个实施例提供的一种输出图像的示意图;
图7为本公开至少一个实施例提供的一种模型训练方法的流程图;
图8A为本公开至少一个实施例提供的一种原始训练图像的示意图;
图8B为本公开至少一个实施例提供的一种填充后的训练图像的示意图;
图8C为本公开至少一个实施例提供的一种扭曲后的训练图像的示意图;
图8D为本公开至少一个实施例提供的一种训练图像的示意图;
图8E为本公开至少一个实施例提供的一种目标图像的示意图;
图9为本公开至少一个实施例提供的一种图像处理装置的示意性框图;
图10为本公开至少一个实施例提供的一种电子设备的示意性框图;
图11为本公开至少一个实施例提供的一种非瞬时性计算机可读存储介质的示意图;
图12为本公开至少一个实施例提供的一种硬件环境的示意图。
具体实施方式
为了使得本公开实施例的目的、技术方案和优点更加清楚,下面将结合本公开实施例的附图,对本公开实施例的技术方案进行清楚、完整地描述。显然,所描述的实施例是本公开的一部分实施例,而不是全部的实施例。基于所描述的本公开的实施例,本领域普通技术人员在无需创造性劳动的前提下所获得的所有其他实施例,都属于本公开保护的范围。
除非另外定义,本公开使用的技术术语或者科学术语应当为本公开所属领域内具有一般技能的人士所理解的通常意义。本公开中使用的“第一”、“第二”以及类似的词语并不表示任何顺序、数量或者重要性,而只是用来区分不同的组成部分。“包括”或者“包含”等类似的词语意指出现该词前面的元件或者物件涵盖出现在该词后面列举的元件或者物件及其等同,而不排除其他元件或者物件。“连接”或者“相连”等类似的词语并非限定于物理的或者机械的连接,而是可以包括电性的连接,不管是直接的还是间接的。“上”、“下”、“左”、“右”等仅用于表示相对位置关系,当被描述对象的绝对位置改变后,则该相对位置关系也可能相应地改变。
为了保持本公开实施例的以下说明清楚且简明,本公开省略了部分已知功能和已知部件的详细说明。
目前,可以利用神经网络模型对电子图像进行识别以获取电子图像中记载的信息。电子图像可以为用户进行拍摄或扫描得到的图像,在获取电子图像的过程中,由于拍摄的角度等原因,无法避免电子图像中的内容会出现扭曲或变形等情况,从而使得神经网络模型识别得到的结果不准确。
本公开至少一个实施例提供一种图像处理方法。该图像处理方法包括:获取原始图像;对原始图像进行处理,以得到预处理图像,其中,预处理图像包括至少两条第一线,至少两条第一线沿同一方向依次并列排布;通过扭曲处理模型对预处理图像进行处理,以得到中间图像,其中,中间图像包括至少两条第二线,至少两条第二线沿同一方向依次并列排布,且至少两条第二线与至少两条第一线一一对应;基于预处理图像和中间图像之间的映射关系,对原始图像进行重映射,以得到输出图像。
在本公开实施例提供的图像处理方法中,首先利用扭曲处理模型对预处理图像进行处理,然后根据扭曲处理模型的输入和输出之间的映射关系,即预处理图像和中间图像之间的映射关系,对原始图像进行重映射以得到输出图像,从而实现对原始图像的校正,有效地解决图像扭曲变形的问题,提高基于输出图像得到的识别结果的准确率,提高图像识别的效率,增强图像的可读性,提升用户的查阅该输出图像的体验。
本公开至少一个实施例还提供一种图像处理装置、电子设备和非瞬时性计算机可读存储介质。
本公开实施例提供的图像处理方法可应用于本公开实施例提供的图像处理装置,该图像处理装置可被配置于电子设备上。该电子设备可以是个人计算机、移动终端等,该移动终端可以是手机、平板电脑等具有各种操作系统的硬件设备。也就是说,图像处理方法的执行主体可以为个人计算机、移动终端等。
下面结合附图对本公开的实施例进行详细说明,但是本公开并不限于这些具体的实施例。
图1为本公开至少一个实施例提供的一种图像处理方法的示意性流程图,图2为本公开至少一个实施例提供的一种原始图像的示意图。
如图1所示,本公开的实施例提供的图像处理方法包括以下步骤S10至S13。
首先,在步骤S10,获取原始图像。
例如,原始图像为对某一对象进行拍照或扫描所得的图像,该对象包括各种字符、各种符号和各种图形中的至少一种,字符可以包括中文(例如,汉字或拼音)、英文、日文、法文、韩文、拉丁文、数字等,符号可以包括数学符号和标点符号等,数学符号包括加号、减号、大于符号、小于符号、百分号等,标点符号可以包括句号、逗号、问好等,图形可以包括直线、曲线、圆形、矩形、心形、各种图画等,如图2所示,原始图像100可以包括中文字符、数字、房子的图形(例如,小红家、学校等)、人物的图形等。
例如,原始图像可以为各种类型的图像,对象例如可以是名片、试卷、习题集、合同、发票等,从而原始图像可以为购物清单的图像、餐饮小票的图像、试卷的图像、习题集的图像、合同的图像等。例如,字符、符号和图形等可以由手写、印刷或机器得到。
例如,在一些实施例中,原始图像中的图像内容被扭曲,也就是说,在原始图像中的对象产生变形,在该原始图像中的对象与该对象实际的形状不一致,例如,对象中的位于同一行字符产生倾斜、扭曲、畸变等情况。例如,扭曲可以包括平移、旋转、比例缩放、仿射变换、透视变换、柱状变换等中的一种或多种。例如,如图2所示,在一些实施例中,原始图像100可以为对习题集(例如,数学习题集等)的一页进行拍照所得的图像,原始图像100中的文字被扭曲,例如,在该习题集的该一页中,“整十数加一位数及相应的减法”中各个文字的中心的连线位于同一条直线,然而,在该原始图像100中,“整十数加一位数及相应的减法”被扭曲,“整十数加一位数及相应的减法”中各个文字的中心的连线不位于同一条直线,而是位于一条曲线(不规则或规则的曲线)上。
例如,原始图像的形状可以为矩形等各种合适的形状。原始图像的形状和尺寸等可以由用户根据实际情况设定,本公开的实施例不作限制。
例如,原始图像可以为通过图像获取装置(例如,数码相机或手机上的摄像头等)拍摄得到的图像,原始图像可以为灰度图像或黑白图像,也可以为彩色图像。需要说明的是,原始图像是指以可视化方式呈现对象的形式,例如对象的图片等。又例如,原始图像也可以通过扫描等方式得到。例如,原始图像可以为图像获取装置直接采集到的图像,也可以是对采集得到的图像进行预处理之后获得的图像。例如,为了避免图像获取装置直接采集到的图像的数据质量、数据不均衡等对后续处理的影响,在处理原始图像前,图像处理方法还可以包括对图像获取装置直接采集到的图像进行预处理的操作。预处理例如可以包括对图像获取装置直接采集到的图像进行剪裁、伽玛(Gamma)校正或降噪滤波等处理。预处理可以消除原始图像中的无关信息或噪声信息,以便于更好地对原始图像进行后续处理。
图3为本公开至少一个实施例提供的一种预处理图像的示意图。例如,图3所示的预处理图像为对图2所示的原始图像进行处理得到的图像。
如图1所示,在步骤S11:对原始图像进行处理,以得到预处理图像。
例如,在一些实施例中,步骤S11包括:对原始图像进行二值化处理,以得到输入图像;对输入图像进行缩放处理,以得到缩放后的图像;对缩放后的图像进行填充处理,以得到填充后的图像;对填充后的图像进行区域划分,以得到预处理图像。
例如,在另一些实施例中,步骤S11包括:对原始图像进行灰度化处理,以得到输入图像;对输入图像进行缩放处理,以得到缩放后的图像;对缩放后的图像进行填充处理,以得到填充后的图像;对填充后的图像进行区域划分,以得到预处理图像。
例如,对原始图像进行二值化处理或灰度化处理,均可以减少后续处理的数据处理量,提高处理速度。二值化处理或灰度化处理用于去除原始图像中的干扰像素,只保留需要处理的内容,例如,字符、图形或图像等。
例如,二值化处理的方法可以包括阈值法、双峰法、P参数法、大律法(OTSU法)、最大熵值法、迭代法等。
例如,灰度化处理的方法包括分量法、最大值法、平均值法和加权平均法等。
需要说明的是,二值化处理/灰度化处理、缩放处理和填充处理的顺序是可以任意调整的,不限于上面的描述,例如,也可以先进行缩放处理、再进行填充处理,最后进行二值化处理/灰度化处理。
例如,输入图像的尺寸和原始图像的尺寸可以相同。填充后的图像的尺寸大于缩放后的图像的尺寸,填充后的图像的尺寸和预处理图像的尺寸相等。例如,当缩放处理为缩小处理,则缩放后的图像的尺寸小于输入图像的尺寸,当缩放处理为扩大处理,则缩放后的图像的尺寸大于输入图像的尺寸。
在本公开的实施例中,二值化处理/灰度化处理可以减少数据处理量,从而提高图像处理的处理速度;缩放处理可以统一图片尺寸以方便模型处理;填充处理则可以防止扭曲操作后预处理图像中的对象对应的内容超出该预处理图像的画面区域,避免图像内容丢失,保证图像内容的完整性。
需要说明的是,在本公开的实施例提供的图像处理方法中,也可以不进行二值化处理/灰度化处理,从而减少处理流程。
图3所示的预处理图像为进行灰度化处理之后的图像。如图3所示,预处理图像200包括第一预处理图像边PB1、第二预处理图像边PB2、第三预处理图像边PB3和第四预处理图像边PB4,第一预处理图像边PB1和第二预处理图像边PB2为彼此相对的两条边,第三预处理图像边PB3和第四预处理图像边PB4为彼此相对的两条边。例如,预处理图像200可以为矩形,此时,第一预处理图像边PB1和第二预处理图像边PB2彼此平行,且平行于X1方向;第三预处理图像边PB3和第四预处理图像边PB4彼此平行,且平行于Y1方向;第一预处理图像边PB1和第三预处理图像边PB3彼此垂直。例如,X1方向为预处理图像200的宽度方向,Y1方向为预处理图像200的高度方向。
例如,预处理图像包括至少两条第一线,至少两条第一线沿同一方向依次并列排布,至少两条第一线在预处理图像的第一预处理图像边和第二预处理图像边之间沿着从第一预处理图像边到第二预处理图像边的方向排列。
例如,在一些示例中,如图3所示,预处理图像200可以包括至少两条第一线L1,至少两条第一线L1沿同一方向(例如,Y1方向,即预处理图像200的高度方向)依次并列排布。至少两条第一线L1彼此平行,且平行于X1方向。至少两条第一线L1位于第一预处理图像边PB1和第二预处理图像边PB2之间。
需要说明的是,在本公开的实施例中,至少两条第一线L1的排布方式不限于图3所示的方式,在一些实施例中,至少两条第一线L1也可以沿X1方向排列,此时,至少两条第一线L1平行于Y1方向,且位于第三预处理图像边PB3和第四预处理图像边PB4之间。
例如,在一些实施例中,如图3所示,至少两条第一线L1为对预处理图像200沿同一方向(例如,Y1方向)进行等分的至少两条等分线,也就是说,任意相邻的两条第一线L1之间的距离h3为固定值。
例如,至少两条第一线L1的数量可以根据实际情况设置,例如,在一些示例中,如图3所示,至少两条第一线L1的数量可以为23,此时,可以将预处理图像200沿第三预处理图像边PB3进行等分为24份,从而得到23条第一线L1。例如,若第三预处理图像边PB3的长度为768像素,则任意相邻的两条第一线L1之间的距离h3为32像素。
需要说明的是,第一线L1的数量可以更少或者更多,例如,第一线L1的数量可以处于数值范围12~48之内,例如,12或48,第一线L1的数量越多,则最终得到输出图像越准确,但是数据处理量更多。
在图3中,为了清楚地示出第一线L1,第一线L1采用较粗的线表示,第一线L1的宽度可以根据实际情况设置,例如,可以为1~2个像素等。
图4A为本公开至少一个实施例提供的一种缩放后的图像的示意图;图4B为本公开至少一个实施例提供的一种填充后的图像的示意图。图4B所示的填充后的图像为对图4A所示的缩放后的图像进行填充处理得到的。
例如,在一些实施例中,如图4A所示,缩放后的图像300包括彼此相对的第一缩放图像边CB1和第二缩放图像边CB2。第一预处理图像边与第一缩放图像边CB1对应,第二预处理图像边与第二缩放图像边CB2对应,也就是说,在预处理图像中,第一预处理图像边与第一缩放图像边CB1位于同一侧,例如图4A所示的上侧,第二预处理图像边与第二缩放图像边CB2位于同一侧,例如图4A所示的下侧。
在步骤S11中,对缩放后的图像进行填充处理,以得到填充后的图像,包括:在第一缩放像边远离第二缩放图像边的一侧填补第一填充区域并在第二缩放图像边远离第一缩放图像边的一侧填补第二填充区域,以得到填充后的图像。
例如,填充后的图像包括缩放后的图像、第一填充区域和第二填充区域。预处理图像包括填充后的图像和至少一条第一线。在预处理图像中,第一填充区域的彼此相对的两条边为第一缩放图像边和第一预处理图像边,第二填充区域的彼此相对的两条边为第二缩放图像边和第二预处理图像边。
例如,如图4B所示,在一些实施例中,第一填充区域310填补(例如,拼接)到缩放后的图像300的第一缩放图像边CB1的远离第二缩放图像边CB2的一侧,第二填充区域320填补(例如,拼接)到缩放后的图像300的第二缩放图像边CB2的远离第一缩放图像边CB1的一侧。填充后的图像2000包括由缩放后的图像300、第一填充区域310和第二填充区域320构成的完整区域。
例如,如图4B所示,填充后的图像2000包括彼此相对的第一填充图像边FB1和第二填充图像边FB2,在对填充后的图像2000进行区域划分,以得到预处理图像之后,该第一填充图像边FB1即为第一预处理图像边,该第二填充图像边FB2即为第二预处理图像边。
例如,如图4A所示,缩放后的图像300还包括彼此相对的第三缩放图像边CB3和第四缩放图像边CB4。例如,缩放后的图像300可以为矩形,此时,第一缩放图像边CB1和第二缩放图像边CB2彼此平行,且平行于X2方向;第三缩放图像边CB3和第四缩放图像边CB4彼此平行,且平行于Y2方向;第一缩放图像边CB1和第三缩放图像边CB3彼此垂直。例如,X2方向为缩放后的图像300的宽度方向,Y2方向为缩放后的图像300的高度方向。
例如,如图4B所示,第一填充区域310可以为矩形,第二填充区域320也可以为矩形。第一填充区域310的平行于Y2方向的边的长度可以为h1,第二填充区域320的平行于Y2方向的边的长度可以为h2,如图4A和图4B所示,第一缩放图像边CB1的长度为w1,则第一填充区域310的平行于X2方向的边的长度为w1,第二填充区域320的平行于X2方向的边的长度为w1。例如,第一填充区域310的尺寸和第二填充区域320的尺寸相同,此时,h1等于h2。
例如,在一些实施例中,h1可以为64像素,例如,若缩放后的图像300的尺寸可以为576(像素)*640(像素),则填充后的图像2000的尺寸可以为576(像素)*768(像素)。
例如,第一填充区域310和第二填充区域320中的每个像素的像素值可以根据实际情况设置,例如,均为0,本公开对此不作限制。
在本公开的一些实施例中,可以先进行缩放处理,再进行填充处理,然而,本公开不限于此,在另一些实施例中,也可以先进行填充处理,再进行缩放处理。填充处理对应的具体填充参数(即第一填充区域和第二填充区域的尺寸等)可以根据实际情况设置,本公开不作限制。
例如,可以利用至少两条第一线沿填充后的图像的高度方向对填充后的图像进行区域划分,以得到预处理图像。
例如,在另一些实施例中,步骤S11包括:对原始图像进行二值化处理,以得到输入图像;对输入图像进行填充处理,以得到填充后的图像;对填充后的图像进行缩放处理,以得到缩放后的图像;对缩放后的图像进行区域划分,以得到预处理图像;或者,步骤S11包括:对原始图像进行灰度化处理,以得到输入图像;对输入图像进行填充处理,以得到填充后的图像;对填充后的图像进行缩放处理,以得到缩放后的图像;对缩放后的图像进行区域划分,以得到预处理图像。
需要说明的是,填充处理可以根据原始图像中的图像内容的扭曲方向确定,例如,若原始图像中的图像内容在长度方向被扭曲,则在填充处理中,在图像的长度方向的两侧中的每一侧填补一个填充区域;若原始图像中的图像内容在宽度方向被扭曲,则在填充处理中,在图像的宽度方向的两侧中的每一侧填补一个填充区域;若原始图像中的图像内容在长度方向和宽度方向均被扭曲,则在填充处理中,在图像的长度方向的两侧中的每一侧填补一个填充区域,同时在图像的宽度方向的两侧中的每一侧也填补一个填充区域。
图5为本公开至少一个实施例提供的一种中间图像的示意图。图5所示的中间图像400为通过扭曲处理模型对图3所示的预处理图像进行处理之后得到的图像。
如图1所示,在步骤S12,通过扭曲处理模型对预处理图像进行处理,以得到中间图像。
例如,扭曲处理模型可以采用机器学习技术(例如,深度学习技术)实现,例如,在一些实施例中,扭曲处理模型可以为基于神经网络的模型。扭曲处理模型可以采用pix2pixHD(pixel to pixel HD)模型,该pix2pixHD模型利用多级生成器(coarse-to-finegenerator)以及多尺度的判别器(multi-scale discriminator)等方式对预处理图像进行扭曲处理,生成扭曲之后的中间图像。该pix2pixHD模型的生成器包括全局生成网络部分(global generator network)和局部增强网络部分(local enhancer network),全局生成网络部分采用U-Net结构,全局生成网络部分输出的特征与局部增强网络部分提取的特征融合,并作为局部增强网络部分的输入信息,由局部增强网络部分输出扭曲后的中间图像。例如,扭曲处理模型还可以使用其它模型,如U-Net模型等,本公开对此不作限制。针对扭曲处理模型的训练过程如后文所述,这里不再赘述。
例如,中间图像包括至少两条第二线,至少两条第二线沿同一方向依次并列排布,且至少两条第二线与至少两条第一线一一对应。例如,在一些示例中,如图5所示,中间图像400包括至少两条第二线L2,至少两条第二线L2沿同一方向(例如,Y3方向,即中间图像400的高度方向)依次并列排布,至少两条第二线L2的延伸方向为X3方向。图5所示的至少两条第二线L2与图3所示的至少两条第一线L1一一对应。第二线L2为对第一线L1进行扭曲之后的线,如图5所示,每条第二线L2为规则或不规则的曲线,且各条第二线L2的形状不相同。需要说明的是,某一条或几条第二线L2也可以为直线,本公开对第二线L2的形状等性质不作具体限定。
需要说明的是,X1方向、X2方向和X3方向彼此平行,Y1方向、Y2方向和Y3方向也彼此平行。在一些实施例中,X1方向、X2方向和X3方向均为图像的宽度方向,例如,图像的宽度方向平行于水平方向。Y1方向、Y2方向和Y3方向均为图像的高度方向,例如,图像的高度方向平行于竖直方向。
图6为本公开至少一些实施例提供的一种输出图像的示意图。图6所示的输出图像为通过本公开的实施例提供的图像处理方法对图2所示的原始图像进行处理后得到的图像。
如图1所示,在步骤S13,基于预处理图像和中间图像之间的映射关系,对原始图像进行重映射,以得到输出图像。
例如,预处理图像和中间图像之间的映射关系包括至少两条第一线和至少两条第二线之间的映射关系以及预处理图像中的至少两条第一线之间的区域和中间图像中的至少两条第二线之间的区域之间的映射关系。
另外,需要说明的是,需要根据至少两条第一线和至少两条第二线之间的映射关系来确定预处理图像中的至少两条第一线之间的区域和中间图像中的至少两条第二线之间的区域之间的映射关系。
例如,在一些实施例中,步骤S13可以包括:基于预处理图像和中间图像之间的映射关系,确定与原始图像对应的映射信息;基于与原始图像对应的映射信息对原始图像进行重映射,以得到输出图像。
例如,在步骤S13中,基于预处理图像和中间图像之间的映射关系,确定与原始图像对应的映射信息,包括:基于预处理图像和中间图像之间的映射关系,通过插值方法确定与预处理图像对应的预处理映射信息;基于预处理映射信息,确定预处理图像中的与原始图像对应的区域对应的映射信息;对与原始图像对应的区域的映射信息进行缩放处理,以确定与原始图像对应的映射信息。
例如,预处理映射信息用于指示预处理图像中的至少部分像素的映射参数。预处理图像中的至少部分像素包括预处理图像中的至少两条第一线之间的区域中的像素和至少两条第一线上的像素。如图3所示,预处理图像200包括区域A1和区域A2,区域A1和区域A2并不是位于两条第一线L1之间的区域,预处理图像200中的至少部分像素包括预处理图像中的除了区域A1和区域A2之外的所有像素。
需要说明的是,预处理映射信息也可以指示预处理图像中的所有像素的映射参数,本公开对此不作限定。
在本公开中,根据扭曲处理模型的输入和输出之间的映射关系(即基于预处理图像和中间图像之间的映射关系)对原始图像进行重映射,从而实现对扭曲之后的原始图像进行校正,以得到输出图像,有效地解决图像扭曲变形的问题,提高基于输出图像得到的识别结果的准确率,提高图像识别的效率,增强图像的可读性,提升用户的查阅该输出图像的体验。
例如,中间图像中的任意相邻两条第二线之间的区域可以对应到预处理图像中相应的两条相邻第一线之间的区域,中间图像中的每条第二线可以对应到预处理图像中相应的第一线,从而可以基于预处理图像和中间图像之间的映射关系,通过插值方法确定与预处理图像对应的预处理映射信息。如图3和图5所示,预处理图像200中的任意相邻的两条第一线L1(例如,第一线L11和第一线L12)之间的区域与中间图像400中与两条第一线L1分别对应的两条第二线L2(例如,第二线L21和第二线L22)之间的区域彼此对应映射,也就是说,预处理图像200中的第一线L11和第一线L12之间的区域需要映射至中间图像400中的第二线L21和第二线L22之间的区域中。预处理图像200中的第一线L1和中间图像400中与该第一线L1对应的第二线L2也彼此对应映射,例如,预处理图像200中的第一线L11和第一线L12需要映射为中间图像400中的第二线L21和第二线L22。
例如,插值方法可以包括最近邻插值、双线性插值、双三次样条插值、双立方插值、兰索斯插值(lanczos)等方法,本公开对插值方法不作限制。
例如,与原始图像对应的映射信息可以包括原始图像中的所有像素对应的映射参数,即与原始图像对应的映射信息中的映射参数的数量可以与原始图像中的所有像素的数量相同。例如,与像素对应的映射参数可以表示该像素被映射到的位置的坐标值;或者,也可以表示该像素的坐标值和该像素被映射到的位置的坐标值之间的偏移量。
需要说明的是,该像素的坐标值可以表示在原始图像对应的坐标系中的坐标值,原始图像对应的坐标系的坐标原点为该原始图像的某个像素点(例如,原始图像的中心对应的像素点或原始图像的左上角的像素点),原始图像对应的坐标系的两个坐标轴分别为该原始图像的宽和高。该像素被映射到的位置的坐标值可以表示在输出图像对应的坐标系中的坐标值,输出图像对应的坐标系的坐标原点为该输出图像中与该原始图像对应的坐标系的坐标原点对应的像素点,输出图像对应的坐标系的两个坐标轴分别为该输出图像的宽和高。
例如,基于预处理图像和中间图像之间的映射关系作为参考基准,可以确定原始图像中的每个像素对应的映射参数,从而可以得到与原始图像对应的映射信息。基于与原始图像对应的映射信息可以确定校正图像扭曲之后每个像素所映射的位置,从而实现映射处理。
例如,在步骤S13中,基于与原始图像对应的映射信息对原始图像进行重映射,以得到输出图像,可以包括:调用opencv中的重映射函数(即remap函数)基于与原始图像对应的映射信息对原始图像进行重映射处理,以得到输出图像。如图6所示,在输出图像500中,“整十数加一位数及相应的减法”中各个文字的中心的连线位于同一条直线上,实现文本拉直,从而有效地校正原始图像的扭曲状态,解决图像扭曲变形的问题,提高基于输出图像得到的识别结果的准确率,提高图像识别的效率,增强图像的可读性,提升用户的查阅该输出图像的体验。
例如,在本公开的一些实施例中,图像处理方法还包括:训练扭曲处理模型。
本公开至少一个实施例还提供一种模型训练方法,以用于实现上述训练扭曲处理模型的操作。图7为本公开至少一个实施例提供的一种模型训练方法的流程图。
在一些实施例中,模型训练方法可以包括训练扭曲处理模型,例如,如图7所示,训练扭曲处理模型包括以下步骤S20~S22。
步骤S20:生成训练图像。例如,训练图像包括至少两条训练线,至少两条训练线沿同一方向依次并列排布。
步骤S21:基于训练图像,生成与训练图像对应的目标图像。例如,目标图像包括至少两条目标训练线,至少两条目标训练线沿同一方向依次并列排布,且至少两条目标训练线与至少两条训练线一一对应。
步骤S22:基于训练图像和目标图像,对待训练的扭曲处理模型进行训练,以获得训练好的扭曲处理模型。
例如,在一些实施例中,步骤S20可以包括:生成输入训练图像;对输入训练图像进行缩放处理,以得到缩放后的输入训练图像;对缩放后的输入训练图像进行填充处理,以得到填充后的输入训练图像;对填充后的输入训练图像进行扭曲处理,以得到扭曲后的输入训练图像;对扭曲后的输入训练图像进行区域划分,以得到包括至少两条训练线的训练图像。
例如,在另一些实施例中,步骤S20可以包括:生成输入训练图像;对输入训练图像进行填充处理,以得到填充后的输入训练图像;对填充后的输入训练图像进行缩放处理,以得到缩放后的输入训练图像;对缩放后的输入训练图像进行扭曲处理,以得到扭曲后的输入训练图像;对扭曲后的输入训练图像进行区域划分,以得到包括至少两条训练线的训练图像。
需要说明的是,在步骤S20中,填充处理和缩放处理的顺序可以根据实际情况设置,本公开对此不作限制。在本公开下面的描述中,以先进行缩放处理再进行填充处理为例进行说明。
例如,在步骤S20中,生成输入训练图像可以包括:获取原始训练图像;对原始训练图像进行二值化处理或灰度化处理,以得到输入训练图像。对原始训练图像进行二值化处理或灰度化处理,这样可以去除原始训练图像中的干扰(噪声),还可以减少后续训练过程中的数据处理量。需要说明的是,二值化处理或灰度化处理不是必须的步骤,也可以直接对原始训练图像进行填充处理、缩放处理以及区域划分,从而得到训练图像。
图8A为本公开至少一个实施例提供的一种原始训练图像的示意图。
例如,原始训练图像可以为没有被扭曲的图像,如图8A所示,在原始训练图像810中,所有的文本均没有被扭曲。
图8B为本公开至少一个实施例提供的一种填充后的训练图像的示意图。图8B所示的填充后的训练图像可以为对图8A所示的原始训练图像进行缩放处理和填充处理后的图像。
例如,可以将输入训练图像缩放和填补到固定尺寸,统一图像的尺寸可以方便待训练的扭曲处理模型对图像进行处理。例如,在一个实施例中,如图8B所示,可以先将输入训练图像进行缩放处理以得到缩放后的训练图像830,缩放后的训练图像830的尺寸可以576*640(像素),缩放后的训练图像830包括彼此相对的图像边CTB1和图像边CTB2,在缩放后的训练图像830的图像边CTB1的远离图像边CTB2的一侧填补一个训练填充区域831,并在缩放后的训练图像830的图像边CTB2的远离图像边CTB1的一侧填补一个训练填充区域832,从而得到填充后的训练图像820,填充后的训练图像820可以包括由训练填充区域831、缩放后的训练图像830和训练填充区域832构成的区域。填充处理可以防止扭曲操作后内容超出画面,例如,训练填充区域831的尺寸和训练填充区域832的尺寸可以相同,训练填充区域831的尺寸可以为576*64(像素),从而填充后的训练图像820的尺寸可以为576*768(像素)。
需要说明的是,关于填充处理和缩放处理的详细说明可以参考上面图像处理方法的实施例中对于填充处理和缩放处理的说明,重复之处不再赘述。
图8C为本公开至少一个实施例提供的一种扭曲后的训练图像的示意图,图8C所示的扭曲后的训练图像可以为对图8B所示的填充后的训练图像进行扭曲处理后的图像。
例如,扭曲处理的方式不限,在一些实施例中,可采用opencv实现扭曲处理,例如,首先,随机生成一组偏移量,然后,再对偏移量进行高斯滤波使得偏移量平滑连续,利用高斯滤波之后的偏移量生成扭曲参数矩阵(例如,map),调用opencv中的remap函数对填充后的图像进行重映射以实现扭曲处理,从而得到扭曲后的训练图像。
图8D为本公开至少一个实施例提供的一种训练图像的示意图。图8D所示的训练图像850可以为对图8C所示的扭曲后的图像840进行处理后的图像。
例如,在一些实施例中,如图8D所示,训练图像850可以包括至少两条训练线TL,至少两条训练线TL为对训练图像850沿同一方向(例如,训练图像850的高度方向Y4)进行等分的至少两条等分线。如图8D所示,训练线TL可以为彼此平行的线,且沿训练图像850的宽度方向X4延伸。例如,如图8C和图8D所示,可以对扭曲后的图像840进行等分,并绘制等分线,从而得到训练图像850。例如,可以将扭曲后的图像840沿其高度方向进行等分。至少两条训练线TL1的数量可以根据实际情况设置,如图8D所示,至少两条训练线TL1的数量可以为23,然而,至少两条训练线TL1的数量可以更少或者更多,例如,12~48等,至少两条训练线TL1的数量越多,训练得到的扭曲处理模型越准确,但是数据处理量更多。
图8E为本公开至少一个实施例提供的一种目标图像的示意图。图8E所示的目标图像860可以为对图8D所示的训练图像850进行反向扭曲处理后的图像。
例如,在一些实施例中,步骤S21包括:基于扭曲处理对应的扭曲参数,对训练图像进行反向扭曲处理,以得到目标图像。
例如,反向扭曲处理的目的是将训练图像850中的除了训练线TL1之外的图像内容部分恢复为扭曲处理之前(即图8B所示的填充后的图像820)的状态。如图8E所示,目标图像860包括至少两条目标训练线TL2,至少两条目标训练线TL2沿目标图像860的高度方向依次排列,至少两条目标训练线TL2沿目标图像860的宽度方向延伸。目标图像860中的至少两条目标训练线TL2与图8D所示的训练图像850中的至少两条训练线TL1一一对应,至少两条目标训练线TL2为对至少两条训练线TL1进行反向扭曲处理得到的线。
例如,在一些实施例中,步骤S21可以包括:通过待训练的扭曲处理模型对训练图像进行处理,以得到输出训练图像;基于输出训练图像和目标图像,对待训练的扭曲处理模型的参数进行调整;在待训练的扭曲处理模型对应的损失函数满足预定条件时,获得训练好的扭曲处理模型,在待训练的扭曲处理模型对应的损失函数不满足预定条件时,继续输入训练图像和目标图像以重复执行上述训练过程。
例如,输出训练图像包括至少两条输出线,至少两条输出线沿同一方向依次并列排布,且至少两条输出线与至少两条训练线一一对应,至少两条输出线可以为待训练的扭曲处理模型对至少两条训练线进行处理之后的线。
例如,在步骤S21中,待训练的扭曲处理模型将训练图像中的图像内容和训练线作为一个整体进行处理,以得到输出训练图像。
例如,在步骤S21中,基于输出训练图像和目标图像,对待训练的扭曲处理模型的参数进行调整可以包括:基于输出训练图像和目标图像,通过待训练的扭曲处理模型对应的损失函数计算待训练的扭曲处理模型的损失值;以及基于该损失值对待训练的扭曲处理模型的参数进行调整。
例如,在一个示例中,预定条件对应于在输入一定数量的训练图像下,该待训练的扭曲处理模型对应的损失函数的最小化。在另一个示例中,预定条件为待训练的扭曲处理模型对应的训练次数或训练周期达到预定数目,该预定数目可以为上百万,只要用于训练的训练图像的数量足够大。
需要说明的是,在重复执行训练过程的操作中,可以采用不同的训练图像及其对应的目标图像对待训练的扭曲处理模型进行训练;此外,也可以利用同一张训练图像及其对应的目标图像多次执行上述训练过程。
本公开至少一个实施例还提供一种图像处理装置,图9为本公开至少一个实施例提供的一种图像处理装置的示意性框图。
例如,如图9所示,在一些实施例中,图像处理装置900可以包括图像采集模块901、第一处理模块902、第二处理模块903和映射模块904。
图像采集模块901被配置为获取原始图像。图像采集模块901用于实现图1所示的步骤S10,关于图像采集模块901所实现的功能的具体说明可以参考上述图像处理方法的实施例中对于图1所示的步骤S10的相关描述,重复之处不再赘述。
例如,图像采集模块901可以包括摄像头,例如,智能手机的摄像头、平板电脑的摄像头、个人计算机的摄像头、数码照相机的镜头、或者甚至可以是网络摄像头。
第一处理模块902被配置为对原始图像进行处理,以得到预处理图像。例如,预处理图像包括至少两条第一线,至少两条第一线沿同一方向依次并列排布。第一处理模块902用于实现图1所示的步骤S11,关于第一处理模块902所实现的功能的具体说明可以参考上述图像处理方法的实施例中对于图1所示的步骤S11的相关描述,重复之处不再赘述。
第二处理模块903被配置为通过扭曲处理模型对预处理图像进行处理,以得到中间图像。例如,中间图像包括至少两条第二线,至少两条第二线沿同一方向依次并列排布,且至少两条第二线与至少两条第一线一一对应。第二处理模块903用于实现图1所示的步骤S12,关于第二处理模块903所实现的功能的具体说明可以参考上述图像处理方法的实施例中对于图1所示的步骤S12的相关描述,重复之处不再赘述。
映射模块904被配置为基于预处理图像和中间图像之间的映射关系,对原始图像进行重映射,以得到输出图像。映射模块904用于实现图1所示的步骤S13,关于映射模块904所实现的功能的具体说明可以参考上述图像处理方法的实施例中对于图1所示的步骤S13的相关描述,重复之处不再赘述。
例如,例如,图像采集模块901、第一处理模块902、第二处理模块903和映射模块904之间可以进行数据通信。
例如,在一些实施例中,图像处理装置900还可以包括模型训练模块。模型训练模块被配置为训练扭曲处理模型。
例如,在一些实施例中,模型训练模块可以包括图像生成子模块和训练子模块。
例如,图像生成子模块被配置为:生成训练图像;基于训练图像,生成与训练图像对应的目标图像。例如,训练图像包括至少两条训练线,至少两条训练线沿同一方向依次并列排布,目标图像包括至少两条目标训练线,至少两条目标训练线沿同一方向依次并列排布,且至少两条目标训练线与至少两条训练线一一对应。图像生成子模块用于实现图7所示的步骤S20和步骤S21,关于图像生成子模块所实现的功能的具体说明可以参考上述图像处理方法的实施例中对于图7所示的步骤S20和步骤S21的相关描述,重复之处不再赘述。
例如,训练子模块被配置为基于训练图像和目标图像,对待训练的扭曲处理模型进行训练,以获得训练好的扭曲处理模型。训练子模块用于实现图7所示的步骤S22,关于训练子模块所实现的功能的具体说明可以参考上述图像处理方法的实施例中对于图7所示的步骤S22的相关描述,重复之处不再赘述。
在一些示例中,训练子模块被配置为通过待训练的扭曲处理模型对训练图像进行处理,以得到输出训练图像;基于输出训练图像和目标图像,对待训练的扭曲处理模型的参数进行调整;在待训练的扭曲处理模型对应的损失函数满足预定条件时,获得训练好的扭曲处理模型。例如,图像生成子模块还被配置为在待训练的扭曲处理模型对应的损失函数不满足预定条件时,继续生成至少一个训练图像和与至少一个训练图像对应的目标图像。至少一个训练图像及其对应的目标图像用于重复执行上述训练过程。
例如,图像采集模块901、第一处理模块902、第二处理模块903、映射模块904和/或模型训练模块包括存储在存储器中的代码和程序;处理器可以执行该代码和程序以实现如上所述的图像采集模块901、第一处理模块902、第二处理模块903、映射模块904和/或模型训练模块的一些功能或全部功能。例如,图像采集模块901、第一处理模块902、第二处理模块903、映射模块904和/或模型训练模块可以是专用硬件器件,用来实现如上所述的图像采集模块901、第一处理模块902、第二处理模块903、映射模块904和/或模型训练模块的一些或全部功能。例如,图像采集模块901、第一处理模块902、第二处理模块903、映射模块904和/或模型训练模块可以是一个电路板或多个电路板的组合,用于实现如上所述的功能。在本申请实施例中,该一个电路板或多个电路板的组合可以包括:(1)一个或多个处理器;(2)与处理器相连接的一个或多个非暂时的存储器;以及(3)处理器可执行的存储在存储器中的固件。
需要说明的是,图像处理装置可以实现与前述图像处理方法相似的技术效果,在此不再赘述。
本公开至少一个实施例还提供一种电子设备,图10为本公开至少一个实施例提供的一种电子设备的示意性框图。
例如,如图10所示,电子设备1000可以包括处理器1001和存储器1002。存储器1002非瞬时性地存储有计算机可执行指令;处理器1001配置为运行计算机可执行指令。计算机可执行指令被处理器1001运行时可以实现根据本公开的任一实施例所述的图像处理方法。关于该图像处理方法的各个步骤的具体实现以及相关解释内容可以参见上述图像处理方法的实施例,在此不做赘述。
例如,如图10所示,电子设备1000还可以包括通信接口1003和通信总线1004。处理器1001、存储器1002和通信接口1003通过通信总线1004实现相互通信,处理器1001、存储器1002和通信接口1003等组件之间也可以通过网络连接进行通信。本公开对网络的类型和功能在此不作限制。
例如,处理器1001执行存储器1002上所存放的程序而实现的图像处理方法的其他实现方式,与前述图像处理方法实施例部分所提及的实现方式相同,这里也不再赘述。
例如,通信总线1004可以是外设部件互连标准(PCI)总线或扩展工业标准结构(EISA)总线等。该通信总线1004可以分为地址总线、数据总线、控制总线等。为便于表示,图中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
例如,通信接口1003用于实现电子设备1000与其他设备之间的通信。
例如,处理器1001和存储器1002可以设置在服务器端(或云端),也可以设置在客户端(例如,手机等移动设备)。
例如,处理器1001可以控制电子设备1000中的其它组件以执行期望的功能。处理器1001可以是中央处理器(CPU)、网络处理器(NP)等;还可以是数字信号处理器(DSP)、专用集成电路(ASIC)、现场可编程门阵列(FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。中央处理元(CPU)可以为X86或ARM架构等。GPU可以单独地直接集成到主板上,或者内置于主板的北桥芯片中。GPU也可以内置于中央处理器(CPU)上。
例如,存储器1002可以包括一个或多个计算机程序产品的任意组合,计算机程序产品可以包括各种形式的计算机可读存储介质,例如易失性存储器和/或非易失性存储器。易失性存储器例如可以包括随机存取存储器(RAM)和/或高速缓冲存储器(cache)等。非易失性存储器例如可以包括只读存储器(ROM)、硬盘、可擦除可编程只读存储器(EPROM)、便携式紧致盘只读存储器(CD-ROM)、USB存储器、闪存等。在所述计算机可读存储介质上可以存储一个或多个计算机可执行指令,处理器1001可以运行计算机可执行指令,以实现电子设备1000的各种功能。在存储器1002中还可以存储各种应用程序和各种数据等。
需要说明的是,电子设备1000可以实现与前述图像处理方法相似的技术效果,重复之处不再赘述。
图11为本公开至少一个实施例提供的一种非瞬时性计算机可读存储介质的示意图。例如,如图11所示,在非瞬时性计算机可读存储介质1100上可以非暂时性地存储一个或多个计算机可执行指令1101。例如,当计算机可执行指令1101由处理器执行时可以执行根据本公开的任一实施例所述的图像处理方法中的一个或多个步骤。
例如,该非瞬时性计算机可读存储介质1100可以应用于上述电子设备1000中,例如,其可以包括电子设备1000中的存储器1002。
例如,关于非瞬时性计算机可读存储介质1100的说明可以参考电子设备1000的实施例中对于存储器1002的描述,重复之处不再赘述。
图12为本公开至少一个实施例提供的一种硬件环境的示意图。本公开提供的电子设备可以应用在互联网系统。
利用图12中提供的计算机系统可以实现本公开中涉及的图像处理装置和/或电子设备的功能。这类计算机系统可以包括个人电脑、笔记本电脑、平板电脑、手机、个人数码助理、智能眼镜、智能手表、智能指环、智能头盔及任何智能便携设备或可穿戴设备等。本实施例中的特定系统利用功能框图解释了一个包含用户界面的硬件平台。这种计算机设备可以是一个通用目的的计算机设备,或一个有特定目的的计算机设备。两种计算机设备都可以被用于实现本实施例中的图像处理装置和/或电子设备。计算机系统可以包括实施当前描述的实现图像处理所需要的信息的任何组件。例如,计算机系统能够被计算机设备通过其硬件设备、软件程序、固件以及它们的组合所实现。为了方便起见,图12中只绘制了一台计算机设备,但是本实施例所描述的实现图像处理所需要的信息的相关计算机功能是可以以分布的方式、由一组相似的平台所实施的,分散计算机系统的处理负荷。
如图12所示,计算机系统可以包括通信端口250,与之相连的是实现数据通信的网络(图12中的“来自/去往网络”),例如,计算机系统可以通过通信端口250发送和接收信息及数据,即通信端口250可以实现计算机系统与其他电子设备进行无线或有线通信以交换数据。计算机系统还可以包括一个处理器组220(即上面描述的处理器),用于执行程序指令。处理器组220可以由至少一个处理器(例如,CPU)组成。计算机系统可以包括一个内部通信总线210。计算机系统可以包括不同形式的程序储存单元以及数据储存单元(即上面描述的存储器或存储介质),例如硬盘270、只读存储器(ROM)230、随机存取存储器(RAM)240,能够用于存储计算机处理和/或通信使用的各种数据文件,以及处理器组220所执行的可能的程序指令。计算机系统还可以包括一个输入/输出260,输入/输出260用于实现计算机系统与其他组件(例如,用户界面280等)之间的输入/输出数据流。
通常,以下装置可以连接输入/输出260:包括例如触摸屏、触摸板、键盘、鼠标、摄像头、麦克风、加速度计、陀螺仪等的输入装置;包括例如液晶显示器(LCD)、扬声器、振动器等的输出装置;包括例如磁带、硬盘等的存储装置;以及通信接口。
虽然图12示出了具有各种装置的计算机系统,但应理解的是,并不要求计算机系统具备所有示出的装置,可以替代地,计算机系统可以具备更多或更少的装置。
对于本公开,还有以下几点需要说明:
(1)本公开实施例附图只涉及到与本公开实施例涉及到的结构,其他结构可参考通常设计。
(2)为了清晰起见,在用于描述本发明的实施例的附图中,层或结构的厚度和尺寸被放大。可以理解,当诸如层、膜、区域或基板之类的元件被称作位于另一元件“上”或“下”时,该元件可以“直接”位于另一元件“上”或“下”,或者可以存在中间元件。
(3)在不冲突的情况下,本公开的实施例及实施例中的特征可以相互组合以得到新的实施例。
虽然上文中已经用一般性说明及具体实施方式,对本公开作了详尽的描述,但在本公开实施例基础上,可以对之作一些修改或改进,这对本领域技术人员而言是显而易见的。因此,在不偏离本公开精神的基础上所做的这些修改或改进,均属于本公开要求保护的范围。
Claims (20)
1.一种图像处理方法,包括:
获取原始图像;
对所述原始图像进行处理,以得到预处理图像,其中,所述预处理图像包括至少两条第一线,所述至少两条第一线沿同一方向依次并列排布;
通过扭曲处理模型对所述预处理图像进行处理,以得到中间图像,其中,所述中间图像包括至少两条第二线,所述至少两条第二线沿同一方向依次并列排布,且所述至少两条第二线与所述至少两条第一线一一对应;
基于所述预处理图像和所述中间图像之间的映射关系,对所述原始图像进行重映射,以得到输出图像。
2.根据权利要求1所述的图像处理方法,其中,所述预处理图像和所述中间图像之间的映射关系包括所述至少两条第一线和所述至少两条第二线之间的映射关系以及所述预处理图像中的所述至少两条第一线之间的区域和所述中间图像中的所述至少两条第二线之间的区域之间的映射关系。
3.根据权利要求1所述的图像处理方法,其中,基于所述预处理图像和所述中间图像之间的映射关系,对所述原始图像进行重映射,以得到输出图像,包括:
基于所述预处理图像和所述中间图像之间的映射关系,通过插值方法确定与所述预处理图像对应的预处理映射信息,其中,所述预处理映射信息用于指示所述预处理图像中的至少部分像素的映射参数;
基于所述预处理映射信息,确定所述预处理图像中的与所述原始图像对应的区域对应的映射信息;
对与所述原始图像对应的区域的映射信息进行缩放处理,以确定与所述原始图像对应的映射信息;
基于与所述原始图像对应的映射信息对所述原始图像进行重映射,以得到所述输出图像。
4.根据权利要求3所述的图像处理方法,其中,所述预处理图像中的至少部分像素包括所述预处理图像中的所述至少两条第一线之间的区域中的像素和所述至少两条第一线上的像素。
5.根据权利要求1-4任一项所述的图像处理方法,其中,对所述原始图像进行处理,以得到预处理图像,包括:
对所述原始图像进行二值化处理,以得到输入图像;
对所述输入图像进行缩放处理,以得到缩放后的图像;
对所述缩放后的图像进行填充处理,以得到填充后的图像;
对所述填充后的图像进行区域划分,以得到所述预处理图像。
6.根据权利要求5所述的图像处理方法,其中,所述缩放后的图像包括彼此相对的第一缩放图像边和第二缩放图像边,所述预处理图像包括彼此相对的第一预处理图像边和第二预处理图像边,所述第一预处理图像边与所述第一缩放图像边对应,所述第二预处理图像边与所述第二缩放图像边对应,所述至少两条第一线在所述第一预处理图像边和所述第二预处理图像边之间沿着从所述第一预处理图像边到所述第二预处理图像边的方向排列,
对所述缩放后的图像进行填充处理,以得到所述填充后的图像,包括:
在所述第一缩放像边远离所述第二缩放图像边的一侧填补第一填充区域并在所述第二缩放图像边远离所述第一缩放图像边的一侧填补第二填充区域,以得到所述填充后的图像,
其中,所述第一填充区域的彼此相对的两条边为所述第一缩放图像边和所述第一预处理图像边,所述第二填充区域的彼此相对的两条边为所述第二缩放图像边和所述第二预处理图像边。
7.根据权利要求6所述的图像处理方法,其中,所述第一填充区域的尺寸和所述第二填充区域的尺寸相同。
8.根据权利要求1-4任一项所述的图像处理方法,其中,对所述原始图像进行处理,以得到预处理图像,包括:
对所述原始图像进行二值化处理,以得到输入图像;
对所述输入图像进行填充处理,以得到填充后的图像;
对所述填充后的图像进行缩放处理,以得到缩放后的图像;
对所述缩放后的图像进行区域划分,以得到所述预处理图像。
9.根据权利要求1-4任一项所述的图像处理方法,其中,所述至少两条第一线为对所述预处理图像沿同一方向进行等分的至少两条等分线。
10.根据权利要求1-4任一项所述的图像处理方法,其中,所述扭曲处理模型为基于神经网络的模型。
11.根据权利要求1-4任一项所述的图像处理方法,其中,所述原始图像中的图像内容被扭曲。
12.根据权利要求1-4任一项所述的图像处理方法,还包括:训练所述扭曲处理模型,其中,训练所述扭曲处理模型包括:
生成训练图像,其中,所述训练图像包括至少两条训练线,所述至少两条训练线沿同一方向依次并列排布;
基于所述训练图像,生成与所述训练图像对应的目标图像,其中,所述目标图像包括至少两条目标训练线,所述至少两条目标训练线沿同一方向依次并列排布,且所述至少两条目标训练线与所述至少两条训练线一一对应;
基于所述训练图像和所述目标图像,对待训练的扭曲处理模型进行训练,以获得训练好的所述扭曲处理模型。
13.根据权利要求12所述的图像处理方法,其中,基于所述训练图像和所述目标图像,对所述待训练的扭曲处理模型进行训练,以获得训练好的所述扭曲处理模型,包括:
通过所述待训练的扭曲处理模型对所述训练图像进行处理,以得到输出训练图像,其中,所述输出训练图像包括至少两条输出线,所述至少两条输出线沿同一方向依次并列排布,且所述至少两条输出线与所述至少两条训练线一一对应;
基于所述输出训练图像和所述目标图像,对所述待训练的扭曲处理模型的参数进行调整;
在所述待训练的扭曲处理模型对应的损失函数满足预定条件时,获得训练好的所述扭曲处理模型,在所述待训练的扭曲处理模型对应的损失函数不满足预定条件时,继续输入所述训练图像和所述目标图像以重复执行上述训练过程。
14.根据权利要求12所述的图像处理方法,其中,生成所述训练图像包括:
生成输入训练图像;
对所述输入训练图像进行缩放处理,以得到缩放后的输入训练图像;
对所述缩放后的输入训练图像进行填充处理,以得到填充后的输入训练图像;
对所述填充后的输入训练图像进行扭曲处理,以得到扭曲后的输入训练图像;
对所述扭曲后的输入训练图像进行区域划分,以得到包括所述至少两条训练线的所述训练图像。
15.根据权利要求14所述的图像处理方法,其中,基于所述训练图像,生成与所述训练图像对应的目标图像,包括:基于所述扭曲处理对应的扭曲参数,对所述训练图像进行反向扭曲处理,以得到所述目标图像。
16.根据权利要求14所述的图像处理方法,其中,生成输入训练图像,包括:
获取原始训练图像;
对所述原始训练图像进行二值化处理,以得到所述输入训练图像。
17.根据权利要求12所述的图像处理方法,其中,所述至少两条训练线为对所述训练图像沿同一方向进行等分的至少两条等分线。
18.一种图像处理装置,包括:
图像采集模块,被配置为获取原始图像;
第一处理模块,被配置为对所述原始图像进行处理,以得到预处理图像,其中,所述预处理图像包括至少两条第一线,所述至少两条第一线沿同一方向依次并列排布;
第二处理模块,被配置为通过扭曲处理模型对所述预处理图像进行处理,以得到中间图像,其中,所述中间图像包括至少两条第二线,所述至少两条第二线沿同一方向依次并列排布,且所述至少两条第二线与所述至少两条第一线一一对应;
映射模块,被配置为基于所述预处理图像和所述中间图像之间的映射关系,对所述原始图像进行重映射,以得到输出图像。
19.一种电子设备,包括:
存储器,非瞬时性地存储有计算机可执行指令;
处理器,配置为运行所述计算机可执行指令,
其中,所述计算机可执行指令被所述处理器运行时实现根据权利要求1-17任一项所述的图像处理方法。
20.一种非瞬时性计算机可读存储介质,其中,所述非瞬时性计算机可读存储介质存储有计算机可执行指令,所述计算机可执行指令被处理器执行时实现根据权利要求1-17中任一项所述的图像处理方法。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210022864.8A CN114387165A (zh) | 2022-01-10 | 2022-01-10 | 图像处理方法、图像处理装置、电子设备、存储介质 |
PCT/CN2022/140852 WO2023130966A1 (zh) | 2022-01-10 | 2022-12-22 | 图像处理方法、图像处理装置、电子设备、存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210022864.8A CN114387165A (zh) | 2022-01-10 | 2022-01-10 | 图像处理方法、图像处理装置、电子设备、存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114387165A true CN114387165A (zh) | 2022-04-22 |
Family
ID=81198963
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210022864.8A Pending CN114387165A (zh) | 2022-01-10 | 2022-01-10 | 图像处理方法、图像处理装置、电子设备、存储介质 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN114387165A (zh) |
WO (1) | WO2023130966A1 (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2023130966A1 (zh) * | 2022-01-10 | 2023-07-13 | 杭州睿胜软件有限公司 | 图像处理方法、图像处理装置、电子设备、存储介质 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11430235B2 (en) * | 2019-09-06 | 2022-08-30 | Canon Kabushiki Kaisha | Image processing apparatus, image processing method, and storage medium |
CN112801088B (zh) * | 2020-12-31 | 2024-05-31 | 科大讯飞股份有限公司 | 一种扭曲文本行图像矫正的方法和相关装置 |
CN113436222A (zh) * | 2021-05-31 | 2021-09-24 | 新东方教育科技集团有限公司 | 图像处理方法、图像处理装置、电子设备及存储介质 |
CN113808033A (zh) * | 2021-08-06 | 2021-12-17 | 上海深杳智能科技有限公司 | 图像文档校正方法、系统、终端及介质 |
CN114387165A (zh) * | 2022-01-10 | 2022-04-22 | 杭州睿胜软件有限公司 | 图像处理方法、图像处理装置、电子设备、存储介质 |
-
2022
- 2022-01-10 CN CN202210022864.8A patent/CN114387165A/zh active Pending
- 2022-12-22 WO PCT/CN2022/140852 patent/WO2023130966A1/zh unknown
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2023130966A1 (zh) * | 2022-01-10 | 2023-07-13 | 杭州睿胜软件有限公司 | 图像处理方法、图像处理装置、电子设备、存储介质 |
Also Published As
Publication number | Publication date |
---|---|
WO2023130966A1 (zh) | 2023-07-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111598074B (zh) | 边缘检测方法和装置、电子设备和存储介质 | |
CN112991180B (zh) | 图像拼接方法、装置、设备以及存储介质 | |
RU2631765C1 (ru) | Способ и система исправления перспективных искажений в изображениях, занимающих двухстраничный разворот | |
CN109871841B (zh) | 图像处理方法、装置、终端及存储介质 | |
CN111275139A (zh) | 手写内容去除方法、手写内容去除装置、存储介质 | |
CN112149561A (zh) | 图像处理方法和装置、电子设备和存储介质 | |
WO2023130966A1 (zh) | 图像处理方法、图像处理装置、电子设备、存储介质 | |
CN115984856A (zh) | 文档图像矫正模型的训练方法、文档图像的矫正方法 | |
US11985287B2 (en) | Image processing method, image processing device, electronic apparatus and storage medium | |
CN113096043B (zh) | 图像处理方法及装置、电子设备和存储介质 | |
WO2022002002A1 (zh) | 图像处理方法、图像处理装置、电子设备、存储介质 | |
CN114742722A (zh) | 文档矫正方法、装置、电子设备及存储介质 | |
CN112907433B (zh) | 数字水印嵌入方法、提取方法、装置、设备及介质 | |
CN112906532B (zh) | 图像处理方法和装置、电子设备和存储介质 | |
WO2024078233A1 (zh) | 包含文本的图像处理方法、系统及存储介质 | |
CN112927163A (zh) | 图像数据增强方法、装置、电子设备及存储介质 | |
CN111260574B (zh) | 一种印章照片矫正的方法、终端及计算机可读存储介质 | |
CN112597940A (zh) | 证件图像识别方法、装置及存储介质 | |
US20230186596A1 (en) | Object recognition method, apparatus, device and storage medium | |
US11783458B2 (en) | Image processing method, image processing device, electronic device and storage medium | |
CN111428707B (zh) | 图形识别码的识别方法、装置、存储介质及电子设备 | |
CN114495105A (zh) | 图像的倾斜校正方法、装置、存储介质及计算机设备 | |
CN113344832A (zh) | 图像处理方法及装置、电子设备和存储介质 | |
CN111753832A (zh) | 图像处理方法、图像处理装置、电子设备和存储介质 | |
CN113920525A (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 |