数字图像处理的制作方法

文档序号:31846178发布日期:2022-10-18 23:52阅读:65来源:国知局
数字图像处理的制作方法
数字图像处理


背景技术:

1.本发明涉及一种用于处理数字图像的计算机实现的方法。
2.本发明还涉及对应的系统和对应的计算机程序产品。
3.在大数据时代,大量的电子文档可用于包括数字图像的数据分析。文本呈现通常作为数字图像(例如,照片或扫描)的一部分出现。例子是“通配文本(text-in-the-wild)”,例如在道路交通环境中的“停车”符号,或者出现在例如来自扫描仪的以位图格式表示的文档中的文本元素。
4.存在许多可以分析和/或处理这些数字图像的使用情况。作为示例,可以将机器学习(ml)算法应用于这样的图像以执行多个任务。这样的任务包括图像内容的分类、图像的分割、图像中对象的检测以及更多。
5.因此,存在对用于图像处理和图像分析的高级方法的一般需求,对于机器学习应用尤其如此。


技术实现要素:

6.根据实施例,本发明被实现为用于处理数字图像的计算机实现的方法。数字图像包括一个或多个文本单元格(text cell),其中一个或多个文本单元格中的每一个包括字符串(string)和边界框(bounding box)。该方法包括接收具有第一格式的数字图像,该第一格式提供对一个或多个文本单元格的字符串和边界框的访问。该方法还包括根据预定义的字符串编码方案将一个或多个文本单元格的字符串编码为视觉模式(visual pattern),并且提供具有第二格式的数字图像。第二格式包括一个或多个文本单元格的字符串的视觉模式。
7.这种实现有方法允许利用更多或更高级的特征来扩充(augment)第二格式的数字图像的视觉模式。这可以向数字图像的处理应用或处理算法提供上下文,并且因此可以分别改进处理算法或处理引擎的性能。
8.根据实施例,字符串编码方案被配置为对字符串的自然语言特征进行编码。这样的自然语言特征通常可以是字符串的自然语言的任何特征。根据实施例,这可以包含文本的含义或其语言特性。
9.根据实施例,计算机实现的方法利用第二格式的数字图像执行图像处理应用。图像处理应用可以使用编码在第二格式的图像的视觉模式中的信息来提高图像处理应用的性能。
10.根据实施例,计算机实现的方法利用第二格式的数字图像执行机器学习应用。换句话说,图像处理应用可以被实现为机器学习应用。机器学习应用可以使用编码在第二格式的图像的视觉模式中的信息来改进ml算法的性能。根据实施例,文本的含义或其语言特性可以帮助ml算法提高其性能。相应的性能标准取决于机器学习算法的相应任务。在分类算法的情况下,可以使ml算法例如在分类性能方面更强健。
11.根据实施例,机器学习应用是深度神经网络应用。这种深度神经网络应用,例如卷
积神经网络应用,可以以有利的方式使用由视觉模式提供的附加上下文。
12.根据实施例,第一格式的数字图像和第二格式的数字图像可以包括路径,该路径包括对应的路径信息,该路径信息包括路径坐标。
13.根据实施例,对字符串的编码包括生成字符串的单词嵌入以及根据字符串的单词嵌入生成视觉模式。根据实施例,这种单词嵌入将该字符串的单词或短语映射到实数向量。单词嵌入可以涉及从每个单词的具有多维的空间到具有低得多的维度的连续向量空间的数学嵌入。
14.根据实施例,预定义的字符串编码方案被配置为根据字符串中的数字的百分比来编码字符串。这可以向图像处理应用,特别是机器学习应用,提供有价值的上下文和信息。
15.根据一个实施例,该方法包括如果字符串中的预定百分比的字符是数字,则在文本单元格的边界框内应用第一视觉模式。否则该方法在文本单元格的边界框内应用第二视觉模式。第一视觉模式可以包括例如垂直线或者由垂直线组成,第二视觉模式可以包括水平线或者由水平线组成,反之亦然。这是一种有效的编码方案。
16.根据另一个实施例,该方法可以包括如果字符串中预定百分比的字符是数字,则用第一颜色对文本单元格的边界框着色,否则用第二颜色对文本单元格的边界框着色。这是另一种有效的编码方案。
17.根据另一实施例,提供了一种用于执行用于处理数字图像的计算机实现的方法的系统。数字图像包括一个或多个文本单元格,其中一个或多个文本单元格中的每一个包括字符串和边界框。该系统包括处理器和计算机可读存储器。该系统被配置成执行一种方法,该方法包括接收具有第一格式的数字图像,其中第一格式提供对一个或多个文本单元格的字符串和边界框的访问。该系统还被配置成执行一种方法,该方法包括根据预定义的字符串编码方案将一个或多个文本单元格的字符串编码为视觉模式,并且提供具有第二格式的数字图像。第二格式包括一个或多个文本单元格的字符串的视觉模式。
18.根据另一实施例,提供了一种用于由包括处理器和计算机可读存储器的系统处理数字图像的计算机程序产品。数字图像包括一个或多个文本单元格,其中一个或多个文本单元格中的每一个包括字符串和边界框。该计算机程序产品包括计算机可读存储介质,该计算机可读存储介质实现有程序指令,该程序指令可由系统执行以使系统执行包括接收具有第一格式的数字图像的方法。第一格式提供对一个或多个文本单元格的字符串和边界框的访问。该方法还包括根据预定义的字符串编码方案将一个或多个文本单元格的字符串编码为视觉模式,并且提供具有第二格式的数字图像。第二格式包括一个或多个文本单元格的字符串的视觉模式。
19.进一步的实施例涉及一种用于训练机器学习应用的计算机实现的方法、一种用于机器学习应用的认知模型以及一种用于使用认知模型处理数字图像的计算机实现的方法。
20.下面将参考附图,通过说明性和非限制性示例,更详细地描述本发明的实施例。
附图说明
21.图1示出了根据本发明的实施例的用于处理数字图像的计算机实现的方法;
22.图2a示出了图1所示的方法的相应流程图;
23.图2b示出了根据本发明的实施例的用于训练认知模型的方法的流程图;
24.图2c示出了根据本发明的实施例的用于执行机器学习应用的方法的流程图;
25.图3示出了可以用于执行如图1、2a、2b和2c中所示的计算机实现的方法的计算系统的示意性框图;
26.图4示出了根据本发明的实施例的数字图像处理系统;图5a示出了第一格式的数字图像的示例;
27.图5b示出了包括图5a的数字图像的收集的编程信息的页面文件;
28.图5c示出了第二格式的数字图像的示例;
29.图6a示出了第一格式的数字图像的示例;
30.图6b示出了第二格式的数字图像的示例;
31.图7a示出了第一格式的数字图像的另一示例;
32.图7b示出了第二格式的数字图像的另一示例;
33.图8a示出了第一格式的数字图像的另一示例;
34.图8b示出了第二格式的数字图像的另一示例;
35.图8c示出了说明用于检测表格的视觉编码的应用的数字图像;
36.图8d示出了数字图像,其还示出了用于检测表格的视觉编码的应用;
37.图9a示出了第一格式的数字图像的另一示例;
38.图9b示出了第二格式的相应数字图像的示例;以及
39.图10示出了图3的服务器的更详细的实施例。
具体实施方式
40.参考图1-10,描述了本发明实施例的一些一般术语。
41.编程文档(programmatic document)可以被定义为其中基本组件由代码表示的文档。这样的编程文档包括例如可移植文档格式(pdf)或微软-word格式的文档。编程文档通常可以被定义为具有程序、调度或方法的性质或根据程序、调度或方法的文档。
42.位图文档(bitmap document),例如扫描文档,是基本组件由图像中的彩色像素表示的文档。这包括例如便携式网络图形(png)、联合摄影专家组(jpeg)或标记图像文件格式(tiff)格式的文档。
43.术语“地面实况(ground truth)”通常可以指通过直接观察(即经验证据)提供的信息,而不是通过推断提供的信息。在图像分割和图像分析领域中,它可以特别指各个符号(例如字符)以及包括单词、段落或标题的文本单元格的正确的身份、位置、大小和坐标,以及诸如关于路径和位图资源的信息之类的其他布局信息。
44.文本单元格的位置和布局可由边界框表示。尽管通常边界框可以是相应电子图像的各个字符的字符边界框,但是根据本发明的实施例,术语边界框应当特别是指更全局的边界框,或者换句话说,将被处理的文档布局的布局边界框。这特别包括划分包括数字图像的单词、段落、标题或脚注的文本单元格的边界框。
45.图1示出了根据本发明的实施例的用于处理数字图像的计算机实现的方法。图2a示出了图1中所示的方法的相应流程图,而图3示出了可以用于执行如图1和2a中所示的计算机实现的方法的计算系统的示意性框图。
46.首先参考图3,其示出了包括服务器310的计算系统300,该服务器被配置为运行机
器学习应用程序(mlap)311和用于训练机器学习应用程序的机器学习训练程序(mltp)312。机器学习应用程序311可以特别地是用于图像处理的程序。
47.服务器310与数据库320耦合。数据库320可以包括用于存储多个输入文档的存储器321,更具体地,存储多个第一格式的数字图像。数据库320还可以包括存储器322,用于存储已经从第一格式的数字图像转换的多个第二格式的数字图像。
48.服务器310还被配置成运行自然语言特征编码程序(nlfep)313。自然语言特征编码程序313被配置为将第一格式的数字图像变换或转换为第二格式的数字图像。这涉及根据预定义的字符串编码方案将第一格式的数字图像的一个或多个文本单元格的字符串编码为视觉模式,如将在下面更详细地进一步描述的。
49.系统300还包括扫描机器330。扫描机器330可以提供扫描以及打印功能。因此,扫描机器330也可以表示为扫描/印刷机器。系统300还包括用户设备340。用户设备340可以包括显示器和用户输入装置,例如键盘,以向系统300的用户提供用户接口。用户设备340可以特别地包括应用编程接口(api)341,其适于向在服务器310上运行的程序311、312和313提供接口。
50.服务器310、扫描机器330和用户设备340耦合到网络350,并且可以经由网络350彼此通信。网络350可以被实现为局域网(lan)、通用广域网(wan)和/或公共网络(例如,因特网)。
51.现在参考图1和2a,该方法从方框201开始。在方框201,提供第一格式的一组输入文档110。该组输入文档110可以实现为第一格式的一组数字图像。该组输入文档可以存储在数据库320的存储器321中,并且该组输入文档可以例如经由网络350接收。
52.在图1中,为了易于说明,仅示出了一个输入文档110。虽然图1所示的输入文档被实现为多页文档,但是输入文档通常也可以是单页文档,即单页数字图像。在图1的例子中,输入文档110包括三个文档页面110a、110b和110c,更具体地,包括三个数字图像110a、110b和110c。数字图像110a、110b和110c中的每一个包括一个或多个文本单元格,并且一个或多个文本单元格中的每一个包括字符串和边界框。
53.输入文档110以第一格式提供。根据实施例,第一格式可以是编程数据格式。如上所述,这种编程数据格式可以被定义为包括表示或定义输入文档110的基本组件,特别是输入文档110的预定义项目(诸如文本单元格和路径),的代码的数据格式。第一格式是例如通过解析第一格式的文档来提供对一个或多个文本单元格的字符串和边界框的访问的格式。
54.根据实施例,第一格式可以特别地是根据便携式文档格式标准的格式,特别是根据国际标准协会的iso 32000-x标准的任何版本的格式。根据其它实施例,第一格式可以是根据java脚本对象通知数据交换格式的格式,特别是根据douglas crockford的任何规范,例如rfc 8259,或者ecma的任何规范,例如ecma 404,或者国际标准协会的任何规范,例如iso/iec 21778:2017。还根据其它实施例,第一格式可以是根据由万维网协会开发的超文本标记语言的格式,特别由iso/iec 15445、w3c html5、3c html4.0、w3c html3.2或任何其它版本标准化。根据其它实施例,第一格式可以是根据yaml ain’t标记语言的格式。
55.在方框202,例如通过机器学习应用程序311或预处理程序将输入文档110分割成其单个文档页面110a、110b和110c。
56.在方框203,机器学习应用程序311对第一格式的各单个文档页面110a、110b和
110c进行语法分析。这包括识别各单个数字图像110a、110b和110c中的每一个中的预定义项目集,尤其是用其边界框及其字符串来识别一个或多个文本单元格。解析的结果可以在文档130a、130b和130c中提供或收集。
57.在方框204,自然语言特征编码程序313根据预定义的字符串编码方案对已经在解析方框203中被识别为视觉模式的一个或多个文本单元格的字符串进行编码。然后,可以在对应文本单元格的对应边界框的位置处将视觉模式添加到数字图像。根据各实施例,一个或多个文本单元格的边界框可用相应字符串的视觉模式来扩充。根据实施例,自然语言特征编码程序313可以将视觉模式叠加在一个或多个文本单元格的边界框上。
58.具有视觉模式的数字图像建立或形成第二格式的数字图像140a、140b和140c,在方框205(参见图2a)提供这些数字图像以供进一步处理。
59.第二格式的数字图像140a、140b和140c可以存储在例如数据库320的存储器322中。
60.现在参考图2b,示出了用于训练用于数字图像处理的机器学习应用程序的计算机实现的方法。图2b中所示的方法可以例如由图3中所示的机器学习训练程序312来执行。
61.在方框211处,例如通过机器学习训练程序312接收训练数据集。训练数据集包括第二格式的数字图像。
62.在方框212处,机器学习训练程序312利用训练数据集来训练机器学习应用程序311的认知模型。
63.在方框213处,机器学习训练程序312提供经训练的认知模型作为输出。
64.现在参考图2c,提供了用于执行机器学习应用的计算机实现的方法220。该方法可以例如由如图3所示的机器学习应用程序311执行。机器学习应用可以特别地是深度神经网络应用。
65.在方框221处,机器学习应用程序311接收第二格式的数字图像。
66.在方框222处,机器学习应用程序311使用经训练的认知模型来执行机器学习应用,例如,使用如图1所示的第二格式的数字图像140a、140b和140c。
67.在方框223处,机器学习应用程序311提供机器学习应用的结果作为输出,例如,所接收的数字图像的分类或所接收的输入中的所检测的对象150a-150c。
68.如图2c所示的计算机实现的方法220建立机器学习应用及其底层算法的推断阶段。
69.现在参考图4,示出了根据本发明实施例的数字图像处理系统400。数字图像处理系统400接收数字图像作为输入,处理数字输入图像并提供数字输出图像作为输出。数字输入图像具体是包括一个或多个文本单元格的图像,其中一个或多个文本单元格中的每一个包含字符串和边界框。以第一格式,特别是编程格式接收数字输入图像,该格式提供对文本单元格及其字符串和边界框的访问。
70.数字图像处理系统400包括自然语言特征(nlf)编码器410,其被配置为根据预定义的字符串编码方案将一个或多个文本单元格的字符串编码为视觉模式。这种编码将第一格式的数字图像变换或转换为第二格式的数字图像。
71.数字图像处理系统400还包括机器学习应用单元420,其被配置为对第二格式的数字图像或利用其执行机器学习应用程序(mlap)。机器学习应用单元420然后提供输出图像
作为输出。
72.第一格式的数字图像和第二格式的数字图像可以包括路径,该路径包括路径信息。路径信息可以包含路径坐标。
73.图5a示出了第一格式的数字图像500的示例,其可以特别地是诸如pdf格式的编程格式。数字图像500包括三个文本单元格511、512和513。文本单元格511包括示例性文本或字符串“string1”以及由左下角的坐标(x0,y0)和右上角的坐标(x1,y1)定义的边界框。可以例如相对于其原点在数字图像500的左下角的x-y坐标系来定义坐标。此外,文本单元格512包括示例性文本或字符串“string2”,并且文本单元格513包括示例性文本或字符串“string3”。另外,文本单元格512和513两者由左下角的坐标(x0,y0)和右上角的坐标(x1,y1)定义的对应边界框定义。应注意,为了便于说明,边界框的坐标对于左下角大体上且一致地表示为(x0,y0),而对于右上角大体上且一致地表示为(x1,y1),其中变量x0、y0、x1及y1表示不同边界框的不同实际值。
74.除了文本单元格之外,页面500还包括路径520。路径520包括三条直线521、522和523。直线521由表示直线521的起点和终点的坐标(x0,y0)和(x1,y1)定义,直线522由表示直线522的起点和终点的坐标(x1,y1)和(x2,y2)定义,并且直线523由表示直线523的起点和终点的坐标(x2,y2)和(x3,y3)定义。应注意,单个文档页面500可包括许多其它元素,例如图5中未展示的图片和背景。
75.根据各实施例,计算机实现的方法可将文本单元格511、512和513以及路径520的编程信息收集到如图5b所示的页面文件550中。根据实施例,这样的页面文件550也可以用作第一格式。页面文件550对应于图5a的数字图像500的解析版本。在该示例中,单个页面文件550包括四条线551-554,每一个包括关于图5a的预定义项目之一的文本信息。
76.通常,可以使用任何适当的语法来定义页面文件。在该示例中,字符串“text cell:”定义了文本单元格的参数在随后的方括号中给出。方括号包括文本单元格的结合框的左下角和右上角的位置,每个都在圆括号中,其后是在字符串“text=”之后的括号中的文本。在行551、552和553中分别提供了文本单元格511、512和513的相应示例。
77.另外,字符串“path:”定义了路径的参数在随后的方括号中给出。方括号包括路径的连接点或接合处的位置,其后是在字符串“color=”之后的颜色,其后是在字符串“width=”之后的路径宽度。
78.在线路554中提供了路径520的相应示例。
79.应当注意,上面给出的示例性格式可以包括多个另外的或其它的语法元素以定义第一格式的数字图像的解析和识别的项目。
80.根据实施例,java脚本对象通知数据交换格式(json-格式)可以用作第一格式。根据这样的实施例,可以使用douglas crockford的json-format的任何规范(例如rfc 8259)或者ecma的json-format的任何规范(例如ecma 404)或者国际标准协会的json-format的任何规范(例如iso/iec 21778:2017)。根据另一实施例,由万维网协会开发的并且特别由iso/iec 15445、w3c html 5、3c html 4.0、w3c html 3.2或任何其它版本标准化的超文本标记语言可以用于第一格式。根据又一实施例,yaml ain’t标记语言可用作第一格式。
81.图5c示出了第二格式的数字图像570的示例。自然语言特征编码程序313根据预定的字符串编码方案将文本单元格511、512和513的字符串编码为视觉模式。根据本实施例的
字符串编码方案根据字符串的内容而用作第一视觉模式垂直线和第二视觉模式水平线。作为示例,如果字符串中预定百分比的字符是数字,则可以应用垂直模式,否则可以应用水平模式,反之亦然。在该示例中,假设字符串“string1”和“string3”包括多于预定义百分比的数字,例如多于50%的数字,并且字符串“string2”包括少于预定义百分比的数字,例如少于50%的数字。
82.图6a示出了第一格式的数字图像610的另一示例。数字图像610包括文本单元格611,该文本单元格包括具有多个数字的表格和由左下角的坐标(x0,y0)和右上角的坐标(x1,y1)定义的相应边界框。可以例如相对于其原点在数字图像500的左下角的x-y坐标系来定义坐标。此外,数字图像包括文本单元格612,其包括字符串“hello world,how are you today?(世界你好,今天你好吗?)”和相应的边界框。
83.图6b示出了第二格式的相应数字图像620的示例。自然语言特征编码程序313根据预定义的字符串编码方案将文本单元格611和612的字符串编码为视觉模式。根据本实施例的字符串编码方案根据字符串的内容而用作第一视觉模式垂直线和第二视觉模式水平线。更具体地,如果相应文本框中的字符的超过50%是数字,则应用垂直模式,否则应用水平模式。因此,文本框611用垂直行的模式填充,而文本框612用水平行的模式填充。根据实施例,文本单元格611可被分割成包括表格的各单个单元格的多个子单元格,并且字符串编码方案可被单独地且分开地应用于每一子单元格。
84.图7a示出了第一格式的数字图像710的另一示例。数字图像710包括文本单元格711,该文本单元格包括具有多个数字的表格和由左下角的坐标(x0,y0)和右上角的坐标(x1,y1)定义的相应边界框。此外,数字图像710包括文本单元格712,其包括字符串“hello world,how are you today?”和相应的边界框。
85.图7b示出了第二格式的数字图像720的示例。自然语言特征编码程序313根据预定义的字符串编码方案将文本单元格711和712的字符串编码为视觉模式。如果字符串中预定百分比的字符是数字,则根据该实施例的字符串编码方案用第一颜色对相应文本单元格的边界框着色。否则它用第二颜色来着色文本单元格的边界框。
86.在该示例中,自然语言特征编码程序313已经用红色对文本框711着色,作为由文本框711的粗体框指示的第一颜色,并且用黑色对文本框712着色,该黑色由文本框712的相对小的框(小于文本框712的框)指示。
87.根据实施例,字符串编码方案可以使用具有不同框厚度的边界框,而不是对应于图7b所示的表示的不同颜色。
88.图8a示出了第一格式的相应数字图像810的另一示例。数字图像810包括文本单元格811,其包括具有多个子单元的表格,其中子单元可以包括各种字符,其包括字母字符和数字。
89.此外,数字图像包括“hello world,how are you today?”和相应的边界框。
90.图8b示出了第二格式的数字图像820的示例。自然语言特征编码程序313根据预定义的字符串编码方案将文本单元格811和812的字符串编码为视觉模式。根据该实施例,将字符串编码方案单独地应用于表格811的每个单个子单元。根据该实施例的字符串编码方案根据子单元的字符串的内容而用作第一视觉模式垂直线和第二视觉模式水平线。更具体地,如果相应子单元中的多于50%的字符是数字,则应用垂直模式,否则应用水平模式。因
此,包括字母字符的上行和左列的子单元包括水平模式,而包括数字的其他子单元包括垂直模式。
91.图8c示出了数字图像830,其图示了例如通过机器学习应用应用视觉编码以检测表格。更特别地,图3的机器学习应用程序311可以使用数字图像820的视觉编码来检测表格。表格可以由如下特征来定义:它们具有多个包括由垂直模式可视编码的数字的子单元,并且可选地,通过具有由水平模式可视编码的字母字符的上行和左列来定义。因此,机器学习应用程序311可以可视地标记表格811,如数字图像830中的星850所示。
92.图8d示出了数字图像840,其也示出了例如通过机器学习应用应用视觉编码以检测表格。根据该示例,机器学习应用程序311已经通过围绕表格811的框851在视觉上标记了表811。
93.图9a示出了第一格式的数字图像910的另一示例。数字图像910包括包含字符串“abc12345”的文本单元格911、包含字符串“abcde13”的文本单元格912、以及包含字符串“abcde134komstuvnmm4789fg67xxx”的文本单元格913。
94.图9b示出了第二格式的相应数字图像920的示例。自然语言特征编码程序313根据预定义的字符串编码方案将文本单元格911、912和913的字符串编码为视觉模式。如果在各个子单元格中超过50%的字符是数字,则根据该实施例的字符串编码方案应用垂直模式,否则应用水平模式。因此,文本单元格911以垂直模式编码,而文本单元格912和913以水平模式编码。
95.现在参考图10,示出了服务器310的更详细的实施例。服务器310可以与其他计算系统环境或配置一起操作。适合与服务器310一起使用的公知的计算系统、环境和/或配置的示例包括但不限于个人计算机系统、服务器计算机系统、瘦客户端、胖客户端、手持式或膝上型设备、多处理器系统、基于微处理器的系统、机顶盒、可编程消费电子产品、网络pc、小型计算机系统、大型计算机系统、以及包括任何上述系统或设备的分布式云计算环境等。特别地,服务器310与系统300的扫描机器330和系统300的用户设备340一起操作,如图3所示。
96.服务器310可以在计算机系统可执行指令的一般上下文中描述,诸如由计算机系统执行的程序模块。通常,程序模块可以包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、组件、逻辑、数据结构等。服务器310以通用计算设备的形式示出。服务器310的组件可以包括但不限于一个或多个处理器或处理单元1016、系统存储器1028、以及将包括系统存储器1028的各种系统组件耦合到处理器1016的总线1018。
97.总线1018表示若干类型的总线结构中的任何一种的一个或多个,包括存储器总线或存储器控制器、外围总线、加速图形端口、以及使用各种总线体系结构中的任何一种的处理器或局部总线。作为示例而非限制,这些体系结构包括工业标准体系结构(isa)总线、微通道体系结构(mca)总线、增强型isa(eisa)总线、视频电子技术标准协会(vesa)局部总线和外围部件互连(pci)总线。
98.服务器310通常包括各种计算机系统可读介质。这样的介质可以是可由服务器310访问的任何可用介质,并且它包括易失性和非易失性介质、可移动和不可移动介质。
99.系统存储器1028可以包括易失性存储器形式的计算机系统可读介质,例如随机存取存储器(ram)1030和/或高速缓冲存储器1032。服务器310还可以包括其它可移动/不可移
动、易失性/非易失性计算机系统存储介质。仅作为示例,存储系统1034可被提供用于从不可移动、非易失性磁介质(未示出,并且通常被称为“硬盘驱动器”)读取和向其写入。尽管未示出,但是可以提供用于从可移动、非易失性磁盘(例如,“软盘”)读取和向其写入的磁盘驱动器,以及用于从诸如cd-rom、dvd-rom或其它光学介质等的可移动、非易失性光盘读取或向其写入的光盘驱动器。在这样的实例中,每个可以通过一个或多个数据介质接口连接到总线1018。如下面将进一步描绘和描述的,存储器1028可以包括至少一个程序产品,该程序产品具有一组(例如,至少一个)程序模块,这些程序模块被配置成执行本发明的实施例的功能。
100.作为示例而非限制,具有一组(至少一个)程序模块1042的程序/实用程序1040以及操作系统、一个或多个应用程序、其它程序模块和程序数据可被存储在存储器1028中。操作系统、一个或多个应用程序、其它程序模块和程序数据或其某种组合中的每一个可包括联网环境的实现。程序模块1042通常执行如本文所述的本发明实施例的功能和/或方法。程序模块1042尤其可以执行根据本发明的实施例的用于处理数字图像的计算机实现的方法的一个或多个步骤,例如参考图2a、2b和/或2c描述的方法的一个或多个步骤。程序模块1042具体可以包括如参考图3所描述的程序311、312和313以及图2a、2b和2c中的相应流程图。
101.服务器310还可以与以下设备通信:一个或多个外部设备1015,诸如键盘、定点设备、显示器1024等;一个或多个设备,其使得用户能够与服务器310交互;和/或使服务器310能够与一个或多个其它计算设备通信的任何设备(例如,网卡、调制解调器等)。这种通信可以经由输入/输出(i/o)接口1022发生。此外,服务器310可以经由网络适配器1020与一个或多个网络通信,诸如局域网(lan)、通用广域网(wan)和/或公共网络(例如,因特网)。如所描绘的,网络适配器1020经由总线1018与服务器310的其他组件通信。应当理解,尽管未示出,但是可以结合服务器310使用其他硬件和/或软件组件。示例包括但不限于:微码、设备驱动程序、冗余处理单元、外部磁盘驱动器阵列、raid系统、磁带驱动器和数据档案存储系统等。
102.本发明可以是系统、方法和/或计算机程序产品。计算机程序产品可以包括其上具有计算机可读程序指令的计算机可读存储介质(一个或多个介质),所述计算机可读程序指令用于使服务器310和/或用户设备340的处理器/处理单元执行本发明的实施例。
103.计算机可读存储介质可以是能够保留和存储由指令执行设备使用的指令的有形设备。计算机可读存储介质可以是例如但不限于电子存储设备、磁存储设备、光存储设备、电磁存储设备、半导体存储设备或前述的任何合适的组合。计算机可读存储介质的更具体示例的非穷举列表包括以下:便携式计算机磁盘、硬盘、随机存取存储器(ram)、只读存储器(rom)、可擦除可编程只读存储器(eprom或闪存)、静态随机存取存储器(sram)、便携式光盘只读存储器(cd-rom)、数字多功能盘(dvd)、记忆棒、软盘、诸如上面记录有指令的打孔卡或凹槽中的凸起结构的机械编码装置,以及上述的任何适当组合。如本文所使用的计算机可读存储介质不应被解释为暂时性信号本身,诸如无线电波或其他自由传播的电磁波、通过波导或其他传输介质传播的电磁波(例如,通过光纤线缆的光脉冲)、或通过导线传输的电信号。
104.本文描述的计算机可读程序指令可以从计算机可读存储介质下载到相应的计算/处理设备,或者经由网络,例如因特网、局域网、广域网和/或无线网络,下载到外部计算机
或外部存储设备。网络可以包括铜传输电缆、光传输光纤、无线传输、路由器、防火墙、交换机、网关计算机和/或边缘服务器。每个计算/处理设备中的网络适配卡或网络接口从网络接收计算机可读程序指令,并转发计算机可读程序指令以存储在相应计算/处理设备内的计算机可读存储介质中。
105.用于执行本发明的操作的计算机可读程序指令可以是汇编指令、指令集架构(isa)指令、机器相关指令、微代码、固件指令、状态设置数据,或者以一种或多种编程语言的任意组合编写的源代码或目标代码,所述编程语言包括面向对象的编程语言(例如smalltalk、c++等)以及常规的过程式编程语言(例如“c”编程语言或类似的编程语言)。计算机可读程序指令可以完全在用户的计算机上执行,部分在用户的计算机上执行,作为独立的软件包执行,部分在用户的计算机上并且部分在远程计算机上执行,或者完全在远程计算机或服务器上执行。在后一种情况下,远程计算机可以通过任何类型的网络连接到用户的计算机,包括局域网(lan)或广域网(wan),或者可以连接到外部计算机(例如,使用因特网服务提供商通过因特网)。在一些实施例中,为了执行本发明的实施例,包括例如可编程逻辑电路、现场可编程门阵列(fpga)或可编程逻辑阵列(pla)的电子电路可以通过利用计算机可读程序指令的状态信息来执行计算机可读程序指令以使电子电路个性化。
106.在此参考根据本发明实施例的方法、装置(系统)和计算机程序产品的流程图和/或框图描述本发明的实施例。将理解,流程图和/或框图的每个框以及流程图和/或框图中的框的组合可以由计算机可读程序指令来实现。
107.这些计算机可读程序指令可以被提供给可编程数据处理装置的处理器以产生机器,使得经由计算机或其他可编程数据处理装置的处理器执行的指令创建用于实现流程图和/或框图的一个或多个框中指定的功能/动作的装置。这些计算机可读程序指令还可以存储在计算机可读存储介质中,其可以引导计算机、可编程数据处理装置和/或其他设备以特定方式工作,使得其中存储有指令的计算机可读存储介质包括制品,该制品包括实现流程图和/或框图的一个或多个框中指定的功能/动作的实施例的指令。
108.计算机可读程序指令还可以被加载到计算机、其他可编程数据处理装置或其他设备上,以使得在计算机、其他可编程装置或其他设备上执行一系列操作步骤,以产生计算机实现的过程,使得在计算机、其他可编程装置或其他设备上执行的指令实现流程图和/或框图的一个或多个框中指定的功能/动作。
109.附图中的流程图和框图示出了根据本发明的各种实施例的系统、方法和计算机程序产品的可能实现的架构、功能和操作。在这点上,流程图或框图中的每个框可以表示指令的模块、段或部分,其包括用于实现指定的逻辑功能的一个或多个可执行指令。在一些可替代实施方案中,框中所提及的功能可不按图中所提及的次序发生。例如,连续示出的两个框实际上可以基本上同时执行,或者这些框有时可以以相反的顺序执行,这取决于所涉及的功能。还将注意,框图和/或流程图图示的每个框以及框图和/或流程图图示中的框的组合可以由执行指定功能或动作或执行专用硬件和计算机指令的组合的专用的基于硬件的系统来实现。
110.已经出于说明的目的给出了本发明的各种实施例的描述,但是其不旨在是穷尽的或限于所公开的实施例。在不背离所描述的实施例的范围和精神的情况下,许多修改和变化对于本领域的普通技术人员将是显而易见的。选择本文所使用的术语以最好地解释实施
例的原理、实际应用或对市场上存在的技术改进,或使本领域的其他普通技术人员能够理解本文所公开的实施例。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1