使用卷积神经网络的数字图像处理的制作方法

文档序号:10577397阅读:214来源:国知局
使用卷积神经网络的数字图像处理的制作方法
【专利摘要】根据示例,可以通过卷积神经网络(CNN)集合对数字图像进行处理,以对数字图像中的对象进行分类。对于每个CNN,可以选择候选架构和候选参数以构建多个CNN。一旦确定每个对于所选择的候选参数具有不同的值的预定数量的CNN满足验证阈值,就可以从预定数量的CNN生成CNN集合。然后,可以聚集来自CNN集合的预测以准确地对数字图像中的对象进行分类。
【专利说明】使用卷积神经网络的数字图像处理
【背景技术】
[0001] 数字图像处理通常涉及处理数字图像(例如,来自数字静止图像或数字视频)以确 知、检测和/或分类图像中的具体特征或对象。可以在图像处理期间应用模式识别以检测图 像中的具体对象。具有模式识别的数字图像处理已经在广泛多种应用(诸如面部识别、来自 航空照片的土地特征的检测、车辆牌照确定等)中使用。不同类型的常规机器学习功能可以 用于模式识别,然而,许多常规机器学习功能不适合于或可能难以适合于数字图像处理中 的模式识别。
【附图说明】
[0002] 通过示例的方式图示本公开的特征,并且不局限于以下附图,其中,类似的标号指 示类似的元件,其中:
[0003] 图1示出了根据本公开的示例的图像处理系统的系统图;
[0004] 图2示出了根据本公开的示例的指示对资产(property)损坏的程度的分类类别;
[0005] 图3示出了根据本公开的示例的图像处理服务器的数据存储(data store);
[0006] 图4示出了根据本公开的示例的用于使用卷积神经网络(CNN)对数字图像中的对 象进行分类的计算设备的框图;
[0007] 图5示出了根据本公开的示例的使用CNN对数字图像中的对象进行分类的方法的 流程图;和
[0008] 图6示出了根据本公开的示例的优化CNN的流程图。
【具体实施方式】
[0009] 出于简化和说明目的,主要通过参照其示例对本公开进行描述。在以下描述中,阐 述了许多具体细节,以便提供对本公开的透彻理解。然而,显而易见的是,在不局限于这些 具体细节的情况下,也可以实践本公开。在其它实例中,没有对一些方法和结构进行详细描 述,以免不必要地模糊本公开。如本文中所使用的,术语"一"和"一个"旨在表示至少一个具 体元素,术语"包括(includes)"意味着包括(includes)但不限于,术语"包括(including)" 意味着包括(including)但不限于,并且术语"基于"意味着至少部分基于。
[0010] 根据示例,图像处理系统构建并且训练深度学习模型(诸如卷积神经网络(CNN)) 集合(ensemble),以精确地且自动地执行图像处理来检测数字图像中的对象的具体属性, 并且根据所检测的属性对对象进行分类。然而,CNN包括许多功能部件,其使得它很难确定 准确执行以检测并分类对于手头问题是相关的图像的具体特征所必需的网络架构。更进一 步地,CNN的每个部件通常具有与它相关联的大量参数。在没有应用任何鲁棒的图像处理系 统的情况下,成功且准确的图像分类所必需的那些参数的特定值不是先验已知的。因此,图 像处理系统提供了一种用于构建并且微调证明输出图像的准确分类的CNN的方法。通过迭 代过程,可以选择用于CNN的候选架构和候选参数来构建、训练、并优化CNN。例如,迭代过程 可以包括:从多个候选架构选择候选架构并且验证用于所选择的候选架构的候选参数集。 候选架构可以包括分类器类型以及若干个卷积层和子采样(subsampling)层。候选参数可 以包括学习率、批量大小、训练历元(training epoch)的最大数量、输入图像大小、CNN每一 层处的特征映射图(feature map)数量、卷积滤波器大小、子采样池大小、隐含层数量、每个 隐含层中的单元数量、所选择的分类器算法、以及输出种类的数量。另外,还可以选择预处 理协议,以增强用于所选择的候选架构和所选择的候选参数的图像中的具体内容。
[0011] 迭代过程可以包括:使用训练集构建中间CNN并且评价(evaluate)中间CNN在验证 集上的性能。比如,该评价确定中间CNN是否满足验证阈诸(诸如小于20%错误率)。重复该 迭代过程直到预定数量(例如,25个)的中间CNN满足验证阈值为止。根据示例,每个中间CNN 对于所选择的候选参数具有不同的值。然后,从预定数量的中间CNN生成最准确的中间CNN 集合。例如,该集合可能是前5个最准确的中间CNN。下一步骤可以包括:选择集合算法以聚 集和/或组合该集合中的每个中间CNN的预测以形成集合预测。然后,该集合中的每个中间 CNN的预测可以用来对图像或图像中的对象进行分类。
[0012] 所公开的示例的技术优势和优点包括:提供了表现出优良的分类准确度以评估 (assess)资产损坏的先进深度学习架构和确定先进深度学习架构的迭代图像处理系统。通 过迭代过程由图像处理系统生成的CNN比其它规则的前馈神经网络更容易训练,并且具有 较少的估计参数,从而使其成为用来评估资产损坏的更有效的架构。
[0013] 根据示例,由图像处理系统生成的CNN可以用来对在数字图像中捕获的资产的损 坏程度间分类。损坏可以是指损害资产外观的任何类型的损伤或伤害。图像或数字图像可 以包括静止图像和运动图像(例如,视频)。资产可能是包括但不限于房子、家具、服装、车辆 设备、土地、计算设备、玩具等的任何有形对象。在其中投保客户的有形资产意外受损的示 例中,投保客户可以通过用智能手机和/或相机拍摄数码照片来记录对受损资产的损坏。然 后,受损资产的数字图像可以被馈给到图像处理系统。图像处理系统可以自动基于从所接 收的数字图像的图像处理确定的损坏量来对受损资产进行分类。在本示例中,图像处理系 统提供了一种自动检测对如在数字图像中捕获的资产的损坏程度的机器视觉方法和装置。
[0014] 根据示例,图像处理系统生成集合模型(例如,包括多个优化CNN),以在准确度提 高的情况下对图像或者该图像中的对象进行分类。在示例中,使用集合模型的图像处理系 统对验证集中的图像的准确度接近90%。
[0015] 如上文所讨论的,根据示例,图像处理系统可以用于对在图像中捕获的资产损坏 的程度进行分类。然而,图像处理系统可以基本上用于任何应用以将数字图像中的特征分 类为预先定义的类别。
[0016] 参照图1,示出了根据本公开的示例的图像处理系统100的系统图。应当理解,在不 脱离该系统100的范围的情况下,该系统100可以包括附加的部件,并且本文中所描述的部 件的一个或多个部件可以被移除和/或修改。该系统100可以包括至少一个图像捕获设备 110、通信网络120、图像处理服务器130、以及数据存储140。
[0017] 图像捕获设备110可以经由通信网络120与图像处理服务器130通信。图像捕获设 备110可以是任何计算设备,其包括相机(诸如但不限于智能电话、计算平板电脑、膝上型计 算机、台式计算机、或任何可穿戴计算设备)。根据示例,图像捕获设备110可以捕获有形资 产150的图像并且将有形资产150的图像发送到图像处理服务器130以自动对有形资产150 的损坏程度进行分类。
[0018] 通信网络120可以包括局域网(LAN)和广域网(WAN)(诸如因特网)。通信网络120可 以包括可以由软件、应用程序和/或逻辑控制的信号承载介质。通信网络120可以包括支持 数据通信服务的网络元件的组合。例如,通信网络120可以通过使用物理连接(诸如铜电缆、 同轴电缆和光纤电缆)或通过无线技术(诸如无线电、微波、或卫星)将图像捕获设备110连 接到图像处理服务器130。
[0019] 例如,图像处理服务器130可以在图像预处理器105处从训练集接收数字图像。图 像预处理器可以裁剪并增强来自训练集的图像中的具体内容以输入到中间CNN构建器 (builder)115。中间CNN构建器115可以选择各种架构和参数来训练中间CNN125。然后,可以 在由验证电路135生成的验证集上对中间CNNl 25进行评估。验证电路135可以确定是否标记 满足指定验证阈值的中间CNN125。如果中间CNN125不满足验证阈值,则中间CNN不被标记, 并且继续通过中间CNN构建器115在来自训练集的数字图像上进行训练。然而,如果中间 CNNl25确实满足验证阈值,则中间CNNl 25现在是标记的中间CNN145。因此,标记的中间 CNN145有资格被选择作为由集合生成器155生成的优化CNN集合的一部分。例如,集合生成 器155可以创建优化CNN集合165。从集合165聚集的预测可以用来准确分类来自输入数字图 像的对象175。下文在图4、图5和图6中对图像处理服务器130的处理功能进一步详细说明。
[0020] 根据示例,图像处理服务器130可以接收有形资产150的图像并且使用CNN对有形 资产150的损坏程度自动分类,以识别并分类有形资产150的图像中的损坏。根据示例,如图 2所图示的,图像处理服务器130可以将有形资产150的损坏程度分类为各种预先确定的分 类类别200(诸如但不限于未受损的、受损的、严重受损的或总计的)。
[0021] 如图4中下文进一步所详述的,图像处理服务器130可以被耦合到数据存储140。如 图3所图示的,数据存储140可以通过图像处理服务器130存储对有形资产150的损坏程度分 类所依赖的数据。例如,数据存储140可以存储训练集和包括资产310、受损资产320和总计 损坏的资产330的数字图像的验证集。图像处理服务器130依赖这些数字图像以构建准确评 估并分类对有形资产150的损坏程度的模型。
[0022] 参照图4,示出了根据本公开的示例的用于使用卷积神经网络(CNN)进行图像处理 的计算设备400的框图。根据示例,计算设备400是图像处理服务器130。应当理解,在不脱离 计算设备400的范围的情况下,计算设备400可以包括附加的部件,并且本文中所描述的部 件的一个或多个部件可以被移除和/或修改。
[0023]计算设备400被描绘为包括处理器402、数据存储140、输入/输出(I/O)接口406和 图像处理平台410。作为示例,计算设备400的部件在单个计算机或服务器上示出,并且在其 它示例中,部件可以存在于多个计算机或服务器上。计算设备400可以将数据存储在数据存 储140中和/或可以管理比如通过I/O接口 406存储在单独的计算设备中的数据的存储。数据 存储140可以包括物理存储器(诸如硬盘驱动器、光盘驱动器、闪存驱动器、驱动器阵列或它 们的任意组合),并且可以包括易失性和/或非易失性数据存储。
[0024]图像处理平台410被描绘为包括训练电路412、模型构建器414、验证电路416和分 类器418。可以包括微处理器、微控制器、专用集成电路(ASIC)、图形处理单元(GPU)等等的 处理器402要在计算设备400中执行各种处理功能。处理功能可以包括图像处理平台410的 训练电路412、模型构建器414、验证电路416和分类器418的功能。
[0025]例如,训练电路412可以从受损资产或对象的图像创建训练集。该训练集可以通过 模型构建器414用来构建CNN模型。例如,模型构建器414可以根据用于CNN模型的所选择的 候选架构和候选参数在训练集上构建CNN模型。例如,验证电路416可以评价由模型构建器 414构建的CNN模型在验证集上的性能,并且确定CNN模型是否满足验证阈值。例如,分类器 418可以分类验证集中的每幅图像中的对象的损坏程度。该分类器还可以聚集来自优化CNN 模型集合的预测以更准确地评估数字图像中的受损对象。
[0026]在示例中,图像处理平台410包括存储在非暂态计算机可读介质413上并且由处理 器执行的机器可读指令。非暂态计算机可读介质的示例包括动态随机存取存储器(DRAM)、 电可擦除可编程只读存储器(EEPROM)、磁阻随机存取存储器(MRAM)、忆阻器、闪存、硬盘驱 动器等。计算机可读介质413可以被包括在数据存储140中或可以是单独的存储设备。在另 一示例中,图像处理平台410包括硬件设备(诸如电路或布置在板上的多个电路)。在该示例 中,训练电路412、模型构建器414、验证电路416和分类器418包括电路部件或单独电路(诸 如嵌入式系统、ASIC或现场可编程门阵列(FPGA))。
[0027] 处理器402可以通过总线405被耦合到数据存储140和I/O接口406,其中,总线405 可以是在计算设备400的各种部件之间传送数据的通信系统。在示例中,总线405可以是外 围部件互连(pci)、工业标准架构(iSA)、PCi-Express、HyperTransport?、NuBus、专用 总线等等。
[0028] I/O接口 406包括硬件和/或软件接口。I/O接口 406可以是通过网络设备连接到网 络的网络接口,通过该网络接口,图像处理平台410可以接收并且传送信息(比如关于对资 产的损坏程度的信息)。例如,输入/输出接口 406可以是无线局域网(WLAN)或网络接口控制 器(NIC) ILAN可以通过无线电信号将计算设备400链接到网络设备。类似地,NIC可以通过 物理连接(诸如电缆)将计算设备400链接到网络设备。计算设备400还可以通过无线广域网 (ffff AN)链接到网络设备,其使用移动数据信号与移动电话塔通信。处理器402可以将通过输 入/输出接口 406接收的信息存储在数据存储140中,并且可以使用在实施图像处理平台410 的训练电路412、模型生成器414、验证电路416和分类器418中的信息。
[0029] 下文在图5和图6中所公开的方法描述了使用CNN进行数字图像处理例如以分类对 在图像中所捕获的资产的损坏程度的方法的示例。对于本领域技术人员,应该显而易见的 是,在不背离方法的范围的情况下,这些方法表示广义的图示,并且其它序列可以被添加或 者现有的序列可以被移除、修改或重新布置。
[0030] 图5示出了根据本公开的示例的使用CNN进行数字图像处理的方法500的流程图。 CNN可以用于推进图像中的对象的分类性能。因此,图5中所图示的方法500提供了一种用于 训练并构建CNN以输出图像中的对象的准确分类的方法。例如,图像处理服务器130的处理 器402可以实施图像处理平台410以准确评估图像中的资产损坏。
[0031] 在框505中,训练电路412比如可以从受损资产或对象的图像创建训练集。根据示 例,训练集数据可以包括新(未受损的)对象、受损对象和总计对象的图像。可以通过模型构 建器414处理这个训练集,以发现预测性关系并且调整模型(诸如CNN)。
[0032] 在已经创建训练集之后,方法500可以迭代地选择候选架构和候选参数以优化CNN 的例如准确分类对图像中的对象的损坏程度的能力。该迭代过程可以包括方法500的框 510-545。
[0033] 在框510中,模型构建器414比如可以从多个候选架构中选择候选架构。根据示例, 多个候选架构可以包括分类器类型、以及若干个卷积层和子采样层的不同组合。分类器类 型可以包括多层感知器(MLP)、支持向量机(SVM)等等。
[0034] 在框515中,模型构建器414比如可以选择用于所选择的候选架构的候选参数。根 据示例,候选参数可以包括学习率、批量大小、训练历元的最大数量、卷积滤波器大小、CNN 每一层的特征映射图数量、子采样池大小、输入图像大小、隐含层数量、每个隐含层中的单 元数量、所选择的分类器算法、以及输出种类数量。
[0035]学习参数的示例包括学习率、批量大小和训练历元的最大数量。学习率参数是其 中CNN从训练集学习最佳滤波系数的速率。理想情况下,学习率不是太高(其中,CNN超量学 习并且不太普及)或太低。根据示例,用于学习率参数的范围包括但不限于0.05至0.10。批 量大小参数是当在最小化中计算梯度下降的估计时,一起被处理的图像的数量(与一次使 用一幅图像相对)。在训练期间,将若干幅图像聚束在批量中通过使用图像(高度X宽度)的 三维(3D)矩阵表示(批量大小X高度X宽度)而非两维(2D)矩阵表示来加快计算。根据示 例,批量大小参数的范围包括但不限于每个批量2-128幅图像。训练历元的最大数量参数是 整个训练集在更新最小化参数中重新使用的最大次数。训练图像的数量除以批量大小是在 一个历元中的迭代总数。根据示例,训练历元的最大数量参数的范围介于100和200之间。 [0036]卷积和子采样参数的示例包括卷积滤波器大小、CNN每一层的特征映射图数量、以 及子采样池大小。卷积滤波器大小参数是卷积层中的滤波器大小。根据示例,用于卷积滤波 器大小参数的范围介于2 X 2个像素和114 X 114像素之间。特征映射图数量参数是从每个卷 积层中若干个滤波器或内核输出的特征映射图数量。根据示例,用于特征映射图数量参数 的范围介于用于第一卷积层的60个特征映射图和512个特征映射图之间。子采样池大小参 数是图像中的像素的正方形贴片(patch)的大小,该像素在经由最大池化(pooling)的操作 之后,被降采样(down-sampled)成并且替代为一个像素,该最大池化设置所得像素的值作 为像素的初始正方形贴片中的像素的最大值。根据示例,用于子采样池大小参数的值的范 围包括但不限于介于2 X 2和4 X 4的范围。根据示例,就最终卷积层的输出而言,选择卷积层 的网络的参数以将输入图像大小减少至I X 1像素值。
[0037]分类器参数的示例包括图像输入大小、隐含层数量、每一层中的单元数量、所选择 的分类器算法和输出种类数量。图像输入大小是其中来自最终卷积层的数据将被分类的空 间维数,并且因此,等于特征映射图数量和最终卷积层的图像大小的乘积。根据示例,输入 图像大小是乘以I X 1的最终卷积层上的特征映射图的数量。根据示例,隐含层是全连接MLP 层并且隐含层的数量包括2。隐含层的数量应该至多限于三个隐含层。每个隐含层中的单元 数量是使用在卷积和子采样层中学习的信息以检测损坏程度的隐含层中的单元数量。根据 示例,每个隐含层中的单元数量参数的范围包括但不限于介于6个单元和1024个单元之间。 所选择的分类器算法可以包括但不限于多层感知器(MLP)、支持向量机(SVM)等等。输出种 类数量是输入图像被分成的类型的数量。根据示例,输出种类数量可以包括但不限于3。 [0038] 然后,如框520所示,模型构建器414比如可以选择预处理协议,以针对所选择的候 选架构和所选择的候选参数增强受损对象的图像中的信息内容。预处理协议可以包括但不 限于局部对比度归一化或零相成分分析(ZCA)缩放、以及用于增白(whitening)的独立成分 分析(ICA)。
[0039] 在框525中,模型构建器414比如可以训练并使用训练集构建中间CNN。如框530所 示,在训练并构建中间CNN之后,验证电路416比如可以评价中间CNN在验证集上的性能。根 据示例,验证集包括与来自训练集的图像集分开并且不同的新的(未受损的)对象、受损对 象和总计对象的图像集。在这方面,验证集用来评估中间CNN相对于分类验证集的图像的每 幅图像的损坏程度的准确度。
[0040] 在框535中,验证电路416比如可以确定中间CNN是否满足验证阈值。验证阈值可以 是验证错误率。根据该示例,如果其验证错误率相对于分类预测小于20%,则中间CNN可能 符合或满足验证阈值。如果中间CNN不满足验证阈值,则迭代过程在框510处重新开始。
[0041 ] 另一方面,如果中间CNN满足验证阈值,则验证电路416可以标记中间CNN以指示它 已经满足了如框540中所示的验证阈值。在框545中,验证电路416可以确定当满足验证阈值 时,预定数量的中间CNN是否已经被标记。预定数量的标记的中间CNN例如可以是25个标记 的中间CNN。根据示例,使用用于所选择的候选参数的不同值构建标记的中间CNN的每个中 间CNN。如果标记的中间CNN的数量还未达到预先确定数量(例如,25 ),则迭代过程再次在框 510处开始。
[0042] 可替代地,如框550所示,如果标记的中间CNN的数量已经达到预先确定数量(例 如,2 5 ),则验证电路416可以从预先确定数量的中间CNN创建中间CNN集合。例如,5个最准确 的中间CNN可以被选择作为集合。
[0043] 在框555中,分类器418比如可以对验证集中的每幅图像中的对象的损坏程度进行 分类。根据示例,分类包括:聚集来自标记的中间CNN集合的预测以在对验证集中的每幅图 像中的对象的损坏程度分类中实现更高的准确度。现在描述用于聚集来自各个CNN的预测 以形成集合预测的技术的示例。在示例中,所有的中间CNN同时被训练以确定用于CNN集合 的系数或权重并且所训练的集合用于做出预测。在另一示例中,代数规则可以用来组合中 间CNN的输出。用于组合中间CNN的输出的代数规则的示例可以包括最大、总和、平均和加权 平均。在另一示例中,中间CNN组合使用验证集合测试以确定哪些组合具有最高的预测准确 度。当测试组合时,多数投票(vote)可以应用于每个组合,以确定用于该类别的预测。执行 研究,并且确定采取来自10-24个标记的中间CNN集合的多数投票的准确度约为90%,其通 常比准确度通常约为80-85 %导致的单个CNN的性能更高。
[0044]图6示出了根据本公开的示例的优化卷积神经网络(CNN)600的流程图。CNN 600是 根据上文所描述的方法500构建的优化CNN。用于该CNN600的架构包括4个卷积和子采样层、 2个隐含层和逻辑回归分类器(诸如MLP)。在这方面,比如,该CNN600可以对在图像中捕获的 资产的损坏程度进行分类,准确度约为88%。
[0045] 如上文所讨论的,投保客户可以将权利要求中的资产的图像提交给保险公司。保 险公司可以使用所提交的图像利用该CNN600自动地对资产的损坏程度进行分类。例如,所 提交的图像可以被输入到CNN600中。
[0046] 所提交的受损资产的图像可以被预先处理610以增强图像中的信息内容以供 CNN600处理。在该示例中,所提交的图像是480 X 640个像素。例如,预处理610可以将所提交 的受损资产的图像裁剪成96X96个像素并且从所提交的受损资产的图像中提取3个RGB通 道层以作为输入图像呈现给CNN600。
[0047] 在第一卷积层(Cl )620中,CNN600可以用每个大小为5 X 5的60个不同的第一层滤 波器卷积输入图像,以产生大小为92 X 92的60个特征映射图。卷积层的每个滤波器应用降 低输入图像的分辨率。如果输入图像的分辨率是NXN,则卷积滤波器的大小为MXM,那么由 此产生的图像的分辨率为N-M+l XN-M+1。然后,CNN600可以对特征映射图执行非线性子采 样形式的最大池化。将输入图像最大池化划分成非重叠正方形贴片集,从而更换单个像素 值等于初始正方形贴片中的所有像素的最大值的每个贴片。在示例中,CNN可以对Cl 620上 的60个特征映射图的2 X 2区域进行最大池化。然后,进一步对Cl 620中大小为46 X46的所 得的60个特征映射图进行卷积并且在第二卷积层(C2)630中进行最大池化。
[0048]在C2 630中,用每个大小为3 X 3的第二层卷积滤波器卷积来自Cl 620的大小为46 X 46的所得的60个特征映射图,以产生大小为44 X 44的128个特征映射图。然后,可以对128 个特征映射图的4 X 4区域执行最大池化。然后,进一步对C2 630中大小为11 X 11的所得的 128个特征映射图进行卷积并且在第三卷积层(C3)640中进行最大池化。
[0049]在C3 640中,用每个大小为4X4的第三层卷积滤波器卷积来自C2 630的大小为11 X 11的所得的128个特征映射图,以产生大小为8 X 8的128个特征映射图。然后,可以对128 个特征映射图的2X2区域执行最大池化。然后,进一步对C3 640中大小为4X4的所得的128 个特征映射图进行卷积并且在第四卷积层(C4)650中进行最大池化。
[0050]在C4 650中,用每个大小为3 X 3的第四层滤波器卷积来自C3640的大小为4 X 4的 所得的128个特征映射图,以产生大小为2 X 2的256个特征映射图。然后,可以对256个特征 映射图的2X2区域进行最大池化。然后,进一步对C4 650中大小为I X 1的所得的256个特征 映射图被输入到第一隐含层(Hl)660以开始分类过程。
[0051] 为了执行分类,CNN600应用卷积层后面的全连接神经网络层。在Hl 660的第一分 类层,例如,512个单元的每个单元采用从C 4650产生的所有的256个特征映射图的每个像 素的值,将每个值乘以预先确定的权重,并且使总和去线性化。事实上,512个单元的每个单 元的输出例如表示关于受损资产e的原始提交的图像的判断。第二隐含层(H2)670被添加以 从H2 670的第二分类层中的100个单元的每个单元的输出中导出关于受损资产的所提交的 图像的更抽象的结论。因此,CNN 600的逻辑回归分类器680然后可以根据第三分类层中的3 个单元的输出准确地分类对作为新的、受损的或总计的所提交的图像中的资产的损坏程 度。
[0052]本文所述和所图示的是本公开的示例和一些变化。本文中所使用的术语、描述和 附图仅通过图示的方式阐述,并且不意味着作为限制。许多变化都可能落入旨在通过所附 权利要求-及其等价物-定义的本发明的精神和范围之内,其中,除非另外指明,所有的术语 都被意指其最广的合理意义。
【主权项】
1. 一种图像处理方法,包括: 从受损对象的图像创建训练集; 选择用于卷积神经网络(CNN)的候选架构和候选参数以通过迭代过程对所述图像中的 所述对象的损坏程度进行分类,其中,所述迭代过程包括: 从多个候选架构中选择所述候选架构; 选择用于所选择的候选架构的所述候选参数; 针对所选择的候选架构和所选择的候选参数选择预处理协议以增强所述受损对象的 所述图像中的所述信息内容; 使用所述训练集构建中间CNN; 评价所述中间CNN在验证集上的性能; 确定所述中间CNN是否满足验证阈值;以及 重复所述迭代过程直到预先确定数量的中间CNN满足所述验证阈值,其中,每个中间 CNN对于所选择的候选参数具有不同的值; 从所述预先确定数量的中间CNN创建中间CNN集合;以及 对所述验证集中的每幅图像中的所述对象的损坏程度进行分类,其中,所述分类包括 聚集来自所述中间CNN集合的预测。2. 根据权利要求1所述的方法,其中,所述候选架构包括分类器类型以及若干个卷积层 和子采样层。3. 根据权利要求1所述的方法,其中,所述候选参数包括学习参数,其中,所述学习参数 包括以下各项中的至少一项:学习率、批量大小、以及训练历元的最大数量。4. 根据权利要求3所述的方法,其中,所述学习率介于0.05和0.1之间,所述批量大小介 于2幅图像和128幅图像之间,并且所述训练历元的最大数量介于100和200之间。5. 根据权利要求1所述的方法,其中,所述候选参数包括卷积和子采样参数,其中,所述 卷积和子采样参数包括卷积滤波器大小、特征映射图数量、以及子采样池大小。6. 根据权利要求5所述的方法,其中,所述卷积滤波器大小介于2X2个像素和114X114 个像素之间,第一卷积层中的所述特征映射图数量介于60和512之间,并且所述子采样池大 小介于2 X 2个像素和4 X 4像素之间。7. 根据权利要求1所述的方法,其中,所述候选参数包括分类器参数,其中,所述分类器 参数包括图像输入大小、隐含层的数量、每个隐含层中的单元数量、分类器算法、以及输出 种类数量。8. 根据权利要求7所述的方法,其中,所述图像输入大小是等于特征映射图数量和最终 卷积层的图像大小的乘积的数量,所述隐含层数量是2,所述每个隐含层中的单元数量介于 6个单元和1024个单元之间,分类器算法是多层感知器(MLP)算法,并且所述输出种类数量 是3。9. 根据权利要求1所述的方法,其中,确定所述中间CNN是否满足所述验证阈值包括:确 定所述中间CNN在所述验证集上的错误率是否小于20%。10. 根据权利要求1所述的方法,其中,中间CNN的所述预先确定数量是25。11. 一种图像处理服务器,包括: 处理器; 存储机器可读指令的存储器,所述机器可读指令使所述处理器: 通过训练电路从受损对象的图像创建训练集; 选择用于卷积神经网络(CNN)的候选架构和候选参数以通过迭代过程对所述图像中的 所述对象的损坏程度进行分类,其中,所述迭代过程包括: 通过模型构建器从多个候选架构中选择所述候选架构; 通过所述模型构建器选择用于所选择的候选架构的所述候选参数; 通过所述模型构建器使用所述训练集构建中间CNN; 通过所述验证电路评价所述中间CNN在验证集上的性能,以及 重复所述迭代过程,直到确定预先确定数量的中间CNN满足验证阈值,其中,每个中间 CNN对于所选择的候选参数具有不同的值; 通过所述验证电路从预先确定数量的中间CNN创建中间CNN集合,以及 通过分类器对所述验证集中的每个图像中的所述对象的损坏程度进行分类,其中,分 类是聚集来自所述中间CNN集合的预测。12. 根据权利要求11所述的图像处理服务器,其中,所述机器可读指令使所述处理器: 选择候选架构,所述候选架构包括分类器类型以及若干卷积层和子采样层。13. 根据权利要求11所述的图像处理服务器,其中,所述机器可读指令使所述处理器选 择: 候选参数,所述候选参数包括学习率、批量大小、训练历元的最大数量、卷积滤波器大 小、特征映射图数量、子采样池大小、图像输入大小、隐含层数量、每个隐含层中的单元数 量、分类器算法、以及输出种类数量。14. 根据权利要求13所述的图像处理服务器,其中,所述机器可读指令使所述处理器: 选择介于0.05和0.1之间的所述学习率、介于2幅图像和128幅图像之间的所述批量大 小、介于100和200之间的训练历元的所述最大数量、介于2X2个像素和114X114个像素之 间的所述卷积滤波器大小、介于60和512之间的第一卷积层中的所述特征映射图数量、介于 2X2像素和4X4像素之间的所述子采样池大小、为2的所述隐含层数量、介于6个单元和 1024个单元之间的每个隐含层中的所述单元数量、作为多层感知器(MLP)算法的分类器算 法、以及为3的所述输出种类数量。15. 根据权利要求11所述的图像处理服务器,其中,为了确定所述中间CNN是否满足所 述验证阈值,所述机器可读指令使所述处理器确定所述中间CNN在验证集上的误差率是否 小于20 %。16. 根据权利要求11所述的图像处理服务器,其中,中间CNN的所述预先确定数量是25。17. -种处理数字图像的非暂态计算机可读介质,其包括机器可读指令,所述机器可读 指令可由处理器执行以: 选择用于多个卷积神经网络(CNN)的候选架构和候选参数以对所述图像中的所述对象 的损坏程度进行分类; 确定预先确定数量的CNN满足验证阈值,其中,每个CNN对于所选择的候选参数具有不 同的值; 从所述预先确定数量的CNN中选择CNN集合; 聚集来自所述CNN集合的预测;以及 对所述图像中的所述对象的损坏程度进行分类。18. 根据权利要求17所述的非暂态计算机可读介质,其中,为了选择候选架构,所述机 器可读指令能够由所述处理器执行以: 选择候选架构,所述候选架构包括若干个卷积层和子采样层以及分类器类型。19. 根据权利要求17所述的非暂态计算机可读介质,其中,为了选择候选参数,所述机 器可读指令能够由所述处理器执行以: 选择候选参数,所述候选参数包括学习率、批量大小、训练历元的最大数量、卷积滤波 器大小、特征映射图数量、子采样池大小、图像输入大小、隐含层数量、每个隐含层中的单元 数量、分类器算法、以及输出种类数量。20. 根据权利要求19所述的非暂态计算机可读介质,其中,为了选择候选参数,所述机 器可读指令能够由所述处理器执行以: 选择介于0.05和0.1之间的所述学习率、介于2幅图像和128幅图像之间的所述批量大 小、介于100和200之间的训练历元的所述最大数量、介于2X2个像素和114X114个像素之 间的所述卷积滤波器大小、介于60和512之间的第一卷积层中的所述特征映射图数量、介于 2X2像素和4X4像素之间的所述子采样池大小、为2的所述隐含层数量、介于6个单元和 1024个单元之间的每个隐含层中的所述单元数量、作为多层感知器(MLP)算法的分类器算 法、以及为3的所述输出种类数量。
【文档编号】G06K9/62GK105938559SQ201610122298
【公开日】2016年9月14日
【申请日】2016年3月3日
【发明人】A·拉文德兰, O·塞利克-汀马兹, M·巴达维
【申请人】埃森哲环球服务有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1