用于图像分离的约束生成器的制作方法

文档序号:6596289阅读:472来源:国知局
专利名称:用于图像分离的约束生成器的制作方法
用于图像分离的约束生成器
背景技术
利用计算机以精确且正确地进行与图像有关的运算的挑战是开发真实地反映并表现视觉世界中出现的物理现象的算法。例如,计算机在图像内部正确且精确地区分阴影与实物边缘的能力已成为对科学家的持久挑战。早期和传统的物体边缘检测方法涉及对图像中的亮度边界的分析。在该分析中,假定由实物引起的边界是尖锐的,而由阴影引起的边界因阴影的半影效应将是柔和或渐进的。尽管该方法可以通过能够由计算机精确执行的算法来实现,但结果经常不正确。在真实世界中,存在许多阴影形成尖锐的边界而实物边缘反而形成柔和的边界的情况。因而,当利用传统技术进行阴影和物体边缘识别时,极有可能出现针对阴影识别的错误肯定和错误否定。即,例如,类似阴影的材质边缘被计算机误识别为阴影,或者尖锐的阴影边界被误解释为物体边界。因而,对于开发精确且正确的、在计算机的与图像有关的运算中可用来例如识别图像的材质(material)和光照(illumination)特性的技术,存在持久的需要。

发明内容
本发明提供如下的方法和系统,该方法和系统包括利用与图像相关的空间-频谱信息以精确且正确地识别图像的光照和材质方面的图像处理技术。在本发明的第一示例性实施例中,提供了一种用于处理图像的自动化且计算机化的方法。根据本发明的特征,该方法包括以下步骤提供图像;按被表示为[A] [x] = [b]的矩阵方程组织所述图像的空间_频谱信息,其中,[A]表示通过对所述空间_频谱信息施加约束关系而确定的值,[b]表示所述图像的记录信息,并且[χ]表示所述图像的未知的材质 /光照成分;以及在图像分离运算中利用所述矩阵方程。在本发明的第二示例性实施例中,提供了一种用于处理图像的自动化且计算机化的方法。根据本发明的特征,该方法包括以下步骤提供图像;生成所述图像的空间-频谱信息;根据所述空间-频谱信息定义约束;以及在图像分离运算中利用所述约束。在本发明的第三示例性实施例中,提供了一种用于处理图像的自动化且计算机化的方法。根据本发明的特征,该方法包括以下步骤提供图像;组织步骤,用于根据所述图像的BIDR模型表示组织空间-频谱算子;以及利用所述组织步骤的结果来识别所述图像的材质和光照方面以用于图像分离。在本发明的第四示例性实施例中,提供了一种用于处理图像的自动化且计算机化的方法。根据本发明的特征,该方法包括以下步骤提供图像;组织步骤,用于根据表示所述图像中所描述的离散材质的表征和表示稳健类似颜色的区域的表征组织空间_频谱算子;以及利用所述组织步骤的结果来识别所述图像的材质和光照方面以用于图像分离。根据本发明的另一实施例,提供了包括被配置(例如,编程)为进行上述方法的一个或多个计算机的计算机系统。根据本发明的其它实施例,提供了存储有用于控制计算机以实现上述实施例的计算机可执行处理步骤的计算机可读介质。可以通过数字计算机、模拟计算机、光学传感器、状态机、序列器或者任意可以被设计为或编程以执行本发明的方法的步骤的装置或设备来进行该自动化且计算机化的方法。


图1是被配置为进行与图像有关的运算的计算机系统框图。图2A示出在图1的计算机系统中存储的图像的nXm像素阵列图像文件。图2B是根据本发明的特征的、从图2A的图像文件的左上角形成的、用于生成直方图的11X11像素阵列。图2C示出根据图2B的11X11像素阵列所生成的直方图的图。图3是根据本发明的特征、在图1的计算机系统中实现的图像分离系统结构的功能框图。图4示出连同本发明的图像分离系统结构特征的实现一起使用的图形用户接口。图5A是根据本发明的特征的、用于在图2A的图像文件中识别C型表征(token) 区域的流程图。图5B是在C型表征的识别中用作例子的原始图像。图5C示出图5B的图像中的C型表征区域。图5D示出根据本发明的特征的、根据图5C的C型表征所生成的B型表征。图6是根据本发明的特征的、用以测试通过图5A的流程图的例程所识别出的C型表征的例程的流程图。图7是根据本发明的特征的、用于利用任意边界去除技术来构造B型表征的流程图。图8是根据本发明的特征的、用于创建包括表征映射信息的表征图的流程图。图9是根据本发明的特征的、用于利用相邻平面表征合并技术构造B型表征的流程图。图10是根据本发明的特征的、用于利用局部表征分析技术生成C型表征的流程图。图11是根据本发明的特征的、用于根据利用图10的局部表征分析技术所生成的 C型表征来构造B型表征的流程图。图12A示出材质边缘、部分具有阴影的单个材质以及恒定光照下的单个材质各自的强度分布以及相应的一阶导数分布和二阶导数分布。图12B是LoG滤波掩模的例子。图12C是图2A的nXm像素阵列图像文件内的7X7像素片的示意图。图13是用于根据本发明的特征的、在图2A的nXm像素阵列图像文件内识别均勻材质反射率的区域的流程图。图14是用于根据本发明的特征的、结合利用不同的参数执行图13的例程的结果的流程图。图15是根据本发明的特征的[A] [x] = [b]矩阵关系的表示。图16A示出根据本发明的特征的、图5D的两个B型表征之间的边界的表示。图16B示出根据本发明的特征的、图5D的两个B型表征之间的边界的另一表示。图16C示出根据本发明的特征的、图5D的两个B型表征之间的边界的又一表示。
图17是用作图3的图像分离系统结构的组件的服务提供器的功能框图。图18是用于测试诸如图3的图像分离系统结构等的图像变换方法的测试台的框图。
具体实施例方式现在参考附图,并且首先参考图1,示出被配置为进行与图像相关的运算的计算机系统10的框图。CPU 12经由例如USB端口与包括例如数字照相机14等的装置耦接。数字照相机14进行工作以将本地存储在照相机14上的图像下载到CPU 12。CPU 12将所下载的图像作为图像文件18存储在存储器16中。可以通过CPU 12存取图像文件18,以将其显示在监视器20上或者在打印机22上打印输出。作为代替,可以将CPU 12实现为嵌入在包括例如数字照相机14或机器人等的装置中的微处理器。CPU 12还可以配备有连同例如机器人的操作或与用户的互动操作一起进行与图像相关的实时运算的实时操作系统。如图2A所示,各图像文件18包括nXm像素阵列。各像素ρ是与整个图像的离散部分相对应的图片元素。所有像素一起定义由图像文件18所表示的图像。各像素包括与图片元素的例如红、绿和蓝色成分(RGB)的一组色带相对应的数字值。本发明可应用于任意多色带图像,其中,各色带与一部分电磁频谱相对应。像素阵列包括以像素P(l,l)开始并且以像素P(n,m)结束的η行m列。当显示或打印图像时,如通常所知的,CPU 12从存储器16检索相应的图像文件18,并且根据具体情况,根据图像文件18中的像素的数字值来操作监视器20或打印机22。根据本发明的特征,在图像处理中,CPU 12进行操作,以分析和处理例如存储在图像文件18中的图像的像素的RGB值的信息以达到不同的目的,包括例如对在图像文件 18的图像中所描述的场景的光照和材质方面进行分离(segregation)从而提供本征图像 (intrinsic image) 0本征图像可以包括与原始图像相对应的材质图像和/或光照图像,用于在诸如计算机视觉等的应用中进行改进处理。作为本发明的基本发现的基础的基本观点是图像包括材质和光照这两个成分。图像中的所有变化都是由这两个成分中的一个或另一个引起的。空间-频谱信息(spatio-spectral information)是与图像文件18中所描述的图像的相邻像素有关的信息,包括诸如相邻像素之间在例如像素的RGB值的色带方面的频谱关系以及与诸如图像中所描述的单个材质或影响图像的光照通量等的图像特性相关的像素频谱特性的空间范围。在通过计算机系统10显示所存储的图像文件18时,人眼可见的是通过在例如数字照相机14所拍摄的场景中的实物的镜面反射和体反射属性与拍摄该照片时所存在的光照通量之间的相互作用而引起的像素颜色值。光照通量包括环境光源和入射光源。入射光源是引起阴影并且存在于阴影外周的光。环境光源是在阴影的亮侧和暗侧均存在的光,并且在暗区域内更容易感知到环境光源。根据本发明的特征,可以操作计算机系统10以通过识别由光照通量中的入射光源和环境光源之间的相互影响所引起的频谱移动来区分图像的例如物体边缘等的材质方面与光照通量。当在图像中已知材质和光照之一时,可以容易地推导出另一个。入射光源和环境光源的频谱可以彼此不同。因而,频谱移动是由阴影即入射光源的强度的降低引起的。根据本发明的特征,在空间-频谱信息中捕捉到频谱移动现象。空间-频谱信息包括频谱比 该比基于图像中所描述的场景的两个区域之间的颜色或强度的差异,该差异可能是由不同的材质(物体边缘)和/或光照改变(光照边界)引起的。在本发明的优选实施例中,将频谱比定义为等于Dark/Bright-Dark (暗/亮-暗),其中Dark (暗)是光照边界处在图像的阴影区域中的点的色带值(例如RGB颜色值),并且Bright (亮)是同一个光照边界处在光照侧的点的色带值。由于光照边界由入射光源和环境光源之间的相互作用引起,因此,无论边界亮侧的颜色或边界处的实物特性如何,整个图像的与光照变化相关联的所有频谱比应当一致性近似相等。可以将与光照边界相对应的频谱比指定为针对图像的特征光照比。根据本发明的其它特征,生成空间-频谱算子以方便进行用于分离图像文件18中所描述的场景的光照和材质方面的处理。空间-频谱算子包括图像的包含可用于处理图像的材质方面和光照方面的空间-频谱信息的表示或特征。对于至求解器的输入,对空间-频谱算子施加用于定义算子之间的约束空间-频谱关系的约束。求解器包括数学处理机,该数学处理机根据空间_频谱算子之间的约束关系进行运算,以获得生成例如从图像文件18 中所存储的原始图像得到的材质图像和/或光照图像等的本征图像的最优解。空间-频谱算子包括例如表征(token)、表征映射信息、对数色度表示值、X交界(X junction)、BIDR模型表示、边界表示以及基于纹理基元(texton)直方图的像素表示。根据本发明的特征,表征是图像的连通区域,其中,该区域的像素以与诸如材质和光照的识别等的图像特征和特性的识别相关联的方式彼此相关。对表征的利用认可如下事实,即图像的材质/光照/几何特性的特殊集合扩展到单个像素以外,因此,尽管可以在像素层级进行这里所述的图像处理,但表征促成了更有效地处理图像属性。表征的像素可以在统称为纹理的例如像素之间的颜色值的紧密相关等的同质因子(homogeneous factor)或者例如在诸如RGB空间等的颜色空间中几何相关的不同颜色值等的非同质因子 (nonhomogeneous factor)方面相关联。本发明的示例性实施例提供方法和系统以识别用于改进图像文件处理的各种类型的同质或非同质表征。本发明利用与图像文件18中所描述的图像的相邻像素有关的空间_频谱信息来识别表征区域。根据本发明的一个示例性实施例,将各同质表征分类为A型表征、B型表征或C型表征。A型表征是包括表示图像中包含场景中的单个材质的最大可能区域的相邻像素的连通图像区域。B型表征是包括表示图像中包含场景中的单个材质的区域的相邻像素的连通图像区域,且该连通图像区域未必是与该材质相对应的最大区域。C型表征包括在该表征的相邻像素中具有类似图像属性(例如具有类似的颜色和强度)的连通图像区域,其中,相对于用来记录图像的摄像系统的噪声模型来定义类似度。线性表征是包括图像的如下连通区域的非同质表征,其中,该连通区域的相邻像素具有沿正斜率从暗端(阴影中)至亮端(照亮端)落入RGB空间的圆柱体内的不同颜色测量值。根据本发明的特征,当颜色变化是由在图像中所描述的场景的单个材质上形成阴影(也即,由于光照场中入射或直接光源与环境光源之间的相互影响,入射光源的强度下降)的光照变化所导致时,通过两光源双色反射模型(BIDR模型,bi-illuminant dichromatic reflection model) U^flJIl丰勾。为了说明、识别和使用线性表征,BIDR模型可以表示为如下I(x, y, ζ, θ, φ,λ)= cb(X)ld(X)yb+Ma(X)cb(X),其中ι(χ,y,ζ, θ,φ, λ)是波
长λ在方向θ、中的(X,y,Z)处的表面点的辐射,Cb(X)是波长λ的表面的几何无关体反射率,Id(X)是波长λ的入射光源。Yb是阴影因子Sx,y,z与几何因子Hib(Qi)的乘积, 并且MaU)是在不包括入射光源的情况下、环境光源与几何体反射率在半球上的积分。关于BIDR模型的更多详细信息,请参考于2006年1月27日申请并于2007年8月2日公布的题为“Bi-illuminant Dichromatic Reflection Model For Image Manipulation,,的美国专利申请,该申请的申请号为11/341,751且公开号为US2007/0176940。表征映射信息指示图像内的表征彼此之间的位置。利用映射信息来识别用以分析与表征之间的约束空间_频谱关系有关的表征相邻关系的相邻表征,并输入至求解器。对数色度表示值提供图像的像素的光照不变值。将图像像素的色带值的对数值标绘在对数_颜色空间图上。然后,根据BIDR模型将该对数值投影到对数_色度投影平面。 针对各像素将色度平面值替换为色带值(例如,RGB值)。关于对数色度表示值的更多详细信息,请参考于2006年4月13日申请并于2007年10月18日公布的题为“Method And System For Separation Illumination And Reflectance Using a Log Color Space,,的美国专利申请,该申请的申请号为11/403,719且公开号为US2007/0242878。X交界是图像的材质边缘与光照边界彼此交叉的区域。X交界是用于精确分析图像的材质和光照方面的最优位置。 边界表示是由例如相邻的B型表征形成的边界的每一侧的像素的布置。该布置用于方便对边界进行分析,以将边界分类为平滑面上的材质边界(而不是光照边缘、深度边界或者光照和材质同时变化等的其它类型的边界)。像素表示用于提供在形成边界的各个 B型表征内的像素的样本。对样本的像素进行空间-频谱分析,并且对结果进行比较以确定各边界与材质变化相对应的可能性。纹理基元(texton)是对图像的包括纹理(texture)的区域的同质表示 (homogeneous)。可以将图像纹理定义为像素强度中的空间变化的函数。图像纹理图案经常是图像表面的物理或反射属性的结果。一般来说,图像纹理与空间同质性相关联,并且通常包括经常具有某种随机变化(例如,随机的位置、方向或颜色)的重复的结构。图像纹理还常以诸如规则性、粗糙度、对比度和方向性等的特定视觉属性为特征。图像纹理的例子是斑马皮肤表面的图像,因为该图像看来是空间同质的并且似乎包括颜色强度形成特定的重复图案的变化。一些图像纹理可以由诸如条状或点状的几何特性来定义。基于纹理基元的算子将由有纹理的材质所引起的不同反射率的图案变换为获取到图像中纹理区域的频谱和空间特性的同质表示。约束包括例如锚约束(anchor constraint)、相同光照约束(same illumination constraint)、平滑光照约束(smooth illumination constraint)、B型表征约束、线性表征约束、BIDR加强约束(BIDR enforcement constraint)、相同纹理基元直方图约束、对数色度类似度约束、X交界约束以及边界表示约束。将各约束配置为约束生成器软件模块,所述约束生成器软件模块定义各约束所利用的空间_频谱算子并且提供关于施加至构成算子 (constituent operator)的约束关系的表达。锚约束利用图像中的多个最亮/最大C型表征。其约束关系是将所选择的最亮/ 最大C型表征的材质约束为在图像中所观察到的颜色/亮度的绝对值。该约束将图像的材质映射锚定在绝对亮度,以避免相对亮度约束。相同光照约束利用图像中所识别出的C型表征和B型表征以及表征映射信息。其约束关系是相邻的C型表征如表征映射信息所示地处于相同光照,除非相邻的C型表征是同一个B型表征的一部分。与术语“光照” 一起的术语“相同”用于表示相对于用于记录图像的摄像系统的噪声模型的平均值。这使得在不是同一个B型表征的一部分的相邻C型表征之间所观察到的任何外观差异被约束为材质变化,如下面将说明的。平滑光照约束类似于相同光照约束。然而,与相同光照约束中将相邻的C型表征的所有像素约束为处于相同的光照不同,在平滑光照约束中,约束基于相邻的C型表征之间的共同边界附近的像素的平均光照。这使得整个表征的光照场被约束为在某种程度上是平滑的,而不是分段恒定(如上文所定义的,相同)。B型表征约束也利用C型表征和B型表征。然而,其约束关系是将作为同一个B型表征的一部分的所有C型表征约束为具有相同的材质。这个约束加强了 B型表征的定义、 即包括表示图像的包含场景中单个材质的区域的相邻像素的连通图像区域,且该连通图像区域未必是与该材质相对应的最大区域。因而,根据B型表征的定义,位于同一个B型表征内的所有C型表征具有相同的材质,而未必具有相同的光照。因此,C型表征被约束为与所观察到的由光照变化引起的外观差异相对应。因而,B型表征约束是对相同光照约束和平滑光照约束的补充,如上所述,相同光照约束和平滑光照约束将观察到的差异约束为与材质变化相对应,而不是与光照变化相对应。这是由于如下的事实,即在相同光照约束和平滑光照约束中,均将相邻的并且不是同一个B型表征的一部分的C型表征约束为处于相同光照。这些C型表征应当包括不同的材质, 这是因为根据该约束,这些C型表征不在同一个B型表征内,并且根据由该约束加强了的 B型表征的定义,这些C型表征不包括单个材质,所以光照应当是常数,并且认为任何所观察到的差异均是由于材质变化而引起。作为总结,根据本发明的特征,定义C型和B型表征空间_频谱算子以提供图像的允许分离光照和材质的特征。如图像文件18中所记录和存储的,各C型表征包括具有例如类似的颜色等的类似图像属性的连通图像区域。因而,相邻的C型表征指示图像中某种形式的变化,否则这些C型表征将形成同一个C型表征。B型表征包括单个材质。对相同/平滑光照约束的补充约束以及B型表征约束加强了指示材质变化或光照变化的表征之间的关系。如果相邻的C型表征在同一个B型表征内,如在B型表征约束中那样,由于共同的 B型表征具有相同的材质属性,这些C型表征之间的差异应当对应于光照变化。如果相邻的 C型表征不在同一个B型表征内,如在相同/平滑光照约束中那样,由于这些C型表征不受共同的、单个材质的B型表征所限定,这些C型表征之间的差异应当对应于材质变化。线性表征约束利用C型表征和线性表征。其约束关系是由线性表征隔开的两个 C型表征之间的差约等于图像的特征光照频谱比(characteristic illuminant spectral ratio)。如所定义的,线性表征跟随沿正斜率通过颜色空间的圆柱体结构。BIDR模型预测该正斜率等于图像的特征光照频谱比。因而,在分别位于线性表征的暗端处和亮端处的两个C型表征之间的颜色差异应当反映图像的各特征光照频谱比的值。BIDR加强约束利用C型表征和针对对数-色度投影平面的BIDR模型定义的法向量。其约束关系是图像的局部片中的所有C型表征的光照在对数-颜色空间中形成平行线组,且平行线的方向受BIDR模型定义的法向量所限定。因此,该约束加强了图像中所存在的光照场,以明确地拟合关于光照的BIDR模型预测。因而,线性表征约束和BIDR加强约束均利用BIDR模型预测作为基础来分离图像的光照和材质方面。当颜色改变是由于在图像中所描述的场景的单个材质上形成阴影 (即,由于光照场中的入射或直接光源与环境光源之间的相互影响,入射光源的强度下降) 的光照变化而引起时,BIDR模型预测出图像中的颜色改变。通过根据在光照场的入射光源和环境光源成分之间所发生的频谱变化之间的相互影响进行运算,BIDR模型的颜色改变预测将C型表征之间的所有色带变化精确地约束为图像中发生的光照场效应。因而,基于 BIDR模型的约束将所有色带变化耦合为一个积分约束关系。相同纹理基元直方图约束利用C型表征和针对图像中的纹理区域所识别出的纹理基元直方图算子。其利用如下的纹理基元分析,即将图像的各像素(或者图像的被识别为包括纹理的那些区域的像素)从各图像文件18所记录的例如RGB色带值等的色带表示转换为两带表示,其中两个带包括纹理基元标签和纹理基元直方图标签。然后,如下文将说明的,使用该两带表示来识别纹理表征。可以施加如下的约束,即同一个纹理表征内的所有 C型表征具有相同的平均材质。对数色度类似度约束利用C型表征和对数色度表示值。其约束关系是将具有类似的对数色度表示值的像素的那些C型表征约束为具有相同的颜色值,并认为所观察到的差异是由光照场的变化引起的。X交界约束利用C型表征和X交界算子。如上所述,X交界是图像中材质边缘和光照边界彼此交叉的区域。通常利用形成材质边缘的四个C型表征、即两个相同材质C型表征对来识别X交界,其中,各相同材质对包括将各相同材质划分为成对的照亮的和阴影的C型表征的光照边界。其约束关系是1)对形成X交界(即之间具有光照边界)的各相同材质的C型表征对施加B型表征约束,以及2、对形成X交界的材质边缘的各C型表征对施加相同光照约束。关于X交界及构成表征的关系的更详细说明,请参考在2006年 1月27日申请并在2006年8月10日公开的题为“Method And System For Identifying Illumination Flux In An Image”的美国专利申请,该申请的申请号为11/341,742且其公开号为 US2006/0177149。通过标准比约束来定义边界表示约束。对指示材质变化的边界表示进行分析,使得即使在由该边界所定义的两个相邻的区域(例如相邻的B型表征)上光照改变了,也可以估计这两个区域之间的颜色比。该约束规定两个相邻区域的颜色的比是X。在B型表征层级执行边界表示分析以界定由材质变化所引起的边界,并然后将分析向下传播至构成C 型表征的层级。该约束规定沿边界的所有C型表征的相邻对(在边界的两侧各有一个C型表征,以及在形成各边界的B型表征内的所有C型表征)具有满足比X的颜色,如边界表示分析所指示的。根据本发明的优选实施例,可以将上述约束中的各个约束归入三种基本的约束类型即绝对材质颜色约束、相同材质约束和相对反射率约束之一。例如在锚约束中所实现的那样,绝对材质约束将在图像的特定位置处的材质约束为特定颜色。相同材质约束将与图像有关的算子(例如,两个像素或C型表征)约束为具有相同的材质。相同材质型的约束可以在例如B型表征约束、X交界约束、对数色度类似度约束、相同纹理基元直方图约束以及线性表征约束中实现。相对反射率约束将与图像有关的算子(例如,两个像素或C型表征)约束为具有诸如由平滑光照约束和相同光照约束所限定的反射率特性的类似度,并且可以由X交界约束和边界表示约束来指定。根据本发明的特征的示例性求解器包括用于执行例如对被表示为方程[A] [x]= [b]的结果进行优化的优化函数的数学处理机,其中,[A]是根据如所选择的约束所指示的算子和所述算子的约束关系的定义而需满足(并因此可视为已求出)的值的矩阵,[χ] 是该方程正在为其寻找最优解的变量的矩阵,例如为诸如像素或表征等的图像成分的光照或材质成分之一,并且[b]是在选择进行处理的图像中所观察到的值的矩阵,例如图像文件18的各像素的RGB色带的记录值。可以利用从一组已知的优化求解器组中选择出的数学优化函数来实现该优化方程,例如,诸如最小均方求解器等的已知凸优化运算(convex optimization operation),或者予页处理共轭梯度求角军器(preconditioned conjugate gradient solver)。根据本发明的又一特征,如下文将说明的,除了约束关系,还根据真实世界光照和材质现象在求解器运算中引入了包括限界的因子,以将材质/光照值保持在物理可接受范围内,诸如限制1和限制无穷大求解器(L1, L0J、有界最小均方求解器或有界LpL00求解器等。图3示出根据本发明的特征的、在例如图1的计算机系统中所实现的图像分离系统结构的功能框图。作为替代,可以在被配置为实现图3的各块的功能的专用硬件电路中实现图3的功能块。将(如图像文件18中所描述的)图像32输入至预处理块33。预处理块33可以进行诸如校正图像32的色像差、组合多个图像以提供高动态范围图像、对图像的像素数据进行线性化等的功能,以得到优化的图像用于处理。然后,将预处理后的图像输入至C型表征化块35,C型表征化块35进行操作以按下文将说明的方式识别预处理后的图像中的C型表征。C型表征为在本发明的示例性实施例中所利用的许多约束所共用,因而,首先识别输入图像32的C型表征有助于进一步的处理。在本发明的示例性实施例中,CPU 12执行代码以实现预处理块33和C型表征化块35以及(配置在存储器16中的)用作中央代理程序和缓存结构的服务提供器24,以管理图像从而进行根据本发明的教示的处理。服务提供器M从C型表征化块35接收预处理后的图像和相关的C型表征信息并进行存储,并且服务提供器M与将要说明的(由CPU 12 执行的)被配置为针对图像生成所选择的约束所需的任何其它算子的算子块观耦接。服务提供器M还与全局特征提取输入四耦接。全局特征提取输入四可用于向系统提供与正在处理的图像相关的信息,诸如指示摄像时的光源(阳光、荧光灯、白炽灯)、一天中的时间、位置、领域知识等,诸如室内、户夕卜、建筑物、绿草坪、有茂盛叶子的树等的与图像的本质有关的信息,以及与图像处理有关的任何其它参数。服务提供器M将全局特征提取输入四与相关的输入图像32 —同存储。约束构建器沈与服务提供器M耦接。约束构建器沈使用(配置在存储器16中的)存储有针对上述各种约束的约束生成器软件模块的约束生成器库。服务提供器M和约束构建器26进行操作,以根据所选择的约束生成器软件模块在例如[A][x] = [b]的矩阵方程中配置与预处理后的图像有关的空间0频谱算子。
(由CPU12执行的)求解器30与约束构建器沈耦接,并且如上所述进行最优化运算以得到[A][x] = [b]的最优解,用于从预处理后的图像生成本征图像。求解器30还与(由CPU 12执行的)用于进行特定的后处理操作的后处理块36耦接。后处理操作可以包括例如单调性保持。在单调性保持中,如果输入图像32中的两个大区域呈现线性转变, 则该转变在输出的本征图像34中应保持为线性转变。后处理还可以包括用于填补求解器 30留下的洞的光照传播、基于光照映射的白平衡以及其它滤波、平滑处理。后处理块36输出本征图像34。现在参考图4,示出了用于与本发明的图像分离系统结构特征的示例性实现一起使用的图形用户接口(GUI)。通过服务提供器M将图4的GUI显示在计算机系统10的监视器20上,以让用户选择期望的图像分离运算。⑶I的左上角给出了打开图像、裁剪图像、 显示参数和分离的选择指示符。用户可以移动光标并且在期望的选择标识符上点击光标。 打开图像指示符列出当前存储在存储器16中的所有图像文件18,并且使用户能够选择要处理的图像。所选择的图像是(经由预处理块和C型表征化块3 输入至服务提供器M 的输入32(见图幻,服务提供器M进行操作以在监视器20的中上部显示所选择的图像。通过示例性的分离系统从所选择的图像中得到的材质图像是通过求解器30执行图像分离处理之后的输出34(见图幻,并且将该材质图像显示在监视器20的左下部(图 4)。将所得到的光照图像显示在监视器20的右下部。根据本发明的特征,裁剪图像选择符允许用户裁剪所选择的图像以处理整个图像的一部分。显示参数选择符显示与所选择的图像文件18有关的参数。各图像文件18的参数可以存储在与相应的图像文件18相关联的参数数据文件中,并且包括与处理相应的图像文件18中所描述的图像相关的例如全局特征提取输入四的任何参数。参数可以包括与图像处理有关的任何数据,例如,在诸如空间-频谱算子的生成中用于由CPU 12进行的像素分析的任何变量以及诸如室内、户外、建筑物、绿草坪、有茂盛叶子的树等与图像的本质有关的信息的领域知识。在选择指示符下方是可以用作求解器30的各优化函数的列表以及包含在约束构建器26的约束生成器库中的各约束生成器的另一个列表。用户选择期望的数学运算以及要施加于所选择的图像上的一个或多个约束。在选择了要处理的图像、要施加的约束和要执行的数学运算之后,用户可以点击分离指示符以开始图像分离处理。在图像分离处理开始时,服务提供器M搜索所选择的约束的约束生成器软件模块,以识别所选择的约束所利用的空间-频谱算子。针对正在被分离的图像,由算子块观生成服务提供器M还未存储的任何空间-频谱算子,并且由服务提供器M缓存该结果。在针对所选择的图像的任何后续操作中,可以通过同一组相关联的参数来再利用所缓存的结果。例如,如果所选择的约束是相同光照约束,则服务提供器M识别所选择的图像的 C型表征、B型表征和表征映射。通过C型表征化块35生成C型表征。服务提供器M操作算子块观以生成由相同光照约束所指定的其余算子。现在参考图5A,示出根据本发明的特征的、用于在图2A的图像文件中生成C型表征区域的流程图。利用图5A的步骤,可以通过C型表征化块35在图像中容易地识别出C 型表征。如将要说明的,算子块28可以分析并处理C型表征,以构造由所选择的约束所指定的B型表征。在执行图5A的例程之前,可以运行CPU 12以对对象图像文件18中所描述的图像进行滤波。滤波器可以包括图像纹理滤波器以例如将由纹理材质所引起的不同反射率的图案变换为采集到图像中纹理区域的频谱和空间特性的同质表示。在图像纹理中可能难以识别B型表征。纹理图像包括具有例如不止一个显示为限定特性的反射率函数的材质。例如, 该限定特征可以是纹理内的颜色的图案,以使得该纹理显示从图像的纹理区域内的任意位置所选择的任意片或区域中的特定颜色分布。在多数情况下,可能仅需要对输入图像的一部分进行纹理滤波,因为图像的大部分可能包括同质着色的物体。因此,在应用纹理滤波之前,识别出并屏蔽同质颜色的区域是有用的。然后,仅对看上去是纹理材质的区域应用纹理滤波。用于识别纹理区域的示例算法如下1)对N带颜色值(例如,RGB)执行C型表征化,将表征结果存储在区域映射R中, 其中,该区域映射中的各像素具有该像素所属的表征的表征ID(见图5A的说明)。2)对区域映射R执行中值滤波(例如,利用P_ij周围的7X7框的中值表征ID来替换各像素P_ij)。将结果存储在R中值中。3)对原始图像执行针对各色带计算各像素周围的框(例如7X7)中的像素的标准差的滤波。将结果放入S中。4)针对S中的各像素,将针对各色带计算出的标准偏差除以所估计出的噪声模型值。示例性的噪声模型是Sn = A*maxValue+B*pixelValue,其中,maxValue是最大可能色带值,pixelValue是特定色带的强度,并且A和B是通过试验所确定的摄像系统的常数(例如,一般A = 0. 001并且B = 0. 06)。该步骤针对各色带将标准偏差(standard deviation) 转换为标准化方差(normalized deviation)。将结果存储在Sn中。5)针对Sn中的各像素,对所有N个色带的标准化方差的平方进行求和、求出结果的平方根并且除以色带的数量N,以创建方差值D_ij。将得到的方差值0_。与阈值(例如 1.0)比较,在方差值高于该阈值的情况下,向像素分配1,否则向像素分配0。将结果存储在纹理掩模图像T中。6)针对T中的各像素,如果纹理掩模值乙。=1并且具有在中值区域映射 R-median_ij中给出的id的表征区域的种子大小小于阈值(例如< 4),则将该像素标记为纹理像素。否则,将该像素标记为同质像素。将结果存储在纹理掩模Tmask中。上述算法的输出是作为原始图像文件18 (n,m)的大小的阵列的掩模Tmask。应当将阵列中相应的Tmask位置具有1值的像素(p(n,m))视为图像区域中与纹理材质相对应的部分,并且应当将相应的Tmask阵列位置具有0值的像素视为图像区域中与同质颜色的材质相对应的部分。CPU 12可以执行实现例如Laws滤波器库或者小波等的任何已知的纹理处理方法的软件模块(例如,见 Randen,Τ. [Trygve],HuS0y, J. H. [John Hakon ] ‘ Filtering for Texture Classification :A Comparative Study, PAMI(21), No. 4, April 1999, pp. 291-310) ο 还可以见Are Filter Banks Necessary ? Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition, June 2003,volume 2, page 691-698。
在本发明的一个示例性实施例中,使用针对图像的各像素(或者优选地,针对被识别为包括纹理的区域中的图像的像素)的强度直方图表示来生成C型表征。然后,将使用强度直方图所生成的C型表征用于生成B型表征。可以利用如下算法来产生对纹理滤波输出图像中的各像素的强度直方图表示A)在Tmask阵列(n,m)中的所有存储器地址/索引之间循环;B)在Tmask阵列的各存储器地址/索引处判断各位置处的值是1还是0 ;C)如果Tmask的存储器地址/索引具有指示纹理的值1 a.打开相应的图像文件18p(n,m)中相应的存储器地址/索引,并且访问该存储器地址/索引;b.打开存储器地址/索引以写入数据;c.将N个8区间(bin)直方图初始化为0,其中,针对每个色带设置一个8区间直方图;d.对于ρ附近(例如11 X 11像素阵列)的各像素q:针对q的N个颜色值中的每个颜色值Cn(例如,将各颜色值设置在0-255之间的RGB);(i)如果N颜色值在0和31之间,则递增颜色N的8区间直方图中的第一区间;(ii)如果N颜色值在32和64之间,则递增颜色N的8区间直方图中的第二区间;(iii)如果N颜色值在65和97之间,则递增颜色N的8区间直方图中的第三区间;(iv)如果N颜色值在98和130之间,则递增颜色N的8区间直方图中的第四区间;(ν)如果N颜色值在131和163之间,则递增颜色N的8区间直方图中的第五区间;(vi)如果N颜色值在164和196之间,则递增颜色N的8区间直方图中的第六区间;(vii)如果N颜色值在197和2 之间,则递增颜色N的8区间直方图中的第七区间;(viii)如果N颜色值在230和255之间,则递增颜色N的8区间直方图中的第八区间;e.将N个8区间直方图值串接在一起形成包括8XN向量元的单个强度直方图;f.将8XN向量元分配给图像文件阵列p(n,m)中相应的像素ρ ;g.如果当前的或下一个存储器地址/索引不是最后一个存储器地址/索引即 Tmask (n, m),则移动至Tmask (n, m)阵列中的下一个存储器地址/索引,并且执行步骤B ;h.如果当前的存储器地址/索引是最后一个存储器地址/索引即等于Tmaskfc, m),则停止通过Tmask (n, m)的循环。D)如果存储器地址/索引具有0值i.如果当前的存储器地址/索引不是Tmask(n,m)阵列中的最后一个元素,则移动至Tmask (n,m)阵列中的下一个存储器地址/索引,并且执行步骤B ;ii.如果当前的存储器地址/索引是TmaSk(n,m)阵列中的最后一个元素,则停止通过Tmask (n,m)的循环。
在将图像的纹理区域中的各像素从例如RGB的色带组变换为包括一组例如8XN 串接的滤波输出的强度直方图向量之后,对于通过使用8XN强度直方图向量元代替RGB色带值来识别C型表征,可以将该图像完全作为原始色带图像来处理。图2B示出在图像文件18的左上角的11X11像素阵列。根据上述的示例性算法, 使用图2B的IlX 11像素阵列来产生针对阵列的中心Z处的像素p(6,6)的强度直方图表示。在本发明的示例中,假定11X11阵列是在图像文件18所描述的图像内的棋盘状图案。 如图所示,棋盘状图案包括红色、绿色和蓝色块交替的图案。因而,在CPU 12所生成的相应的Tmask中,本示例中的像素ρ (6,6)将具有值1。根据示例性算法,由CPU 12初始化三个8区间直方图(见图2C),其中,对象像素 P (6,6)的红、绿和蓝的颜色值各有一个直方图。然后使用11 X 11像素阵列来确定三个直方图的区间内的值。在本发明的例子中,11X11阵列的左上部是棋盘状图案的红色块,且该部分内的各像素(P(l,l) P(5,5))具有RGB值(123,0,0)。右上部是绿色,因而该部分内的像素(P(l,7) p(5,ll))均具有RGB值(0,123,0)。左下部是蓝色块,其中像素ρ (7, 1) p(llj)均具有RGB值(0,0,123)。最后,按红、绿和蓝重复的棋盘状图案,本例子的右下部又是红色部,其中像素P (7,7) ρ (11,11)均具有RGB值(123,0,0)。如图2B所示,红色象限(p(l,l) ρ (5,幻)、绿色象限(ρ (1,7) ρ (5,11))、蓝色象限(P (7,1) ρ(11,5))和红色象限(P (7, 7) ρ(11,11))之间的一个(1)像素宽的交叉形边界线,或者说在P (6,1) p(6,m)之间以及在p(n,6) p(ll,6)之间的任意像素, 可以具有RGB值(123,123,123)。在中心Z处的像素ρ (6,6)也可以具有RGB值(123,123, 123)。然后,通过使用下文将示例性说明的步骤,将中心处具有像素Z的11X11像素块 301用于经由像素Z的RGB色带值的直方图表示来确定像素Z的值。如图2B所示,ρ (1, 1)具有指示红色存在并且绿色和蓝色不存在的RGB颜色值(123,0,0)。由于p(l,l)的红色值是123,因此如图2C所示,在红色8区间直方图中与该数值相对应的区间将递增,即红色8区间直方图中的第四区间将递增。该处理将自动重复,直到到达像素块301中的p(n, m)为止。这时,三个8区间直方图可能如图2C所示填充有不同值。然后,可以将这些值串接在一起形成单个的8X3向量元,并且将这些向量元分配给图2B的图像文件18所描述的 11 X 11像素阵列中的像素Z。结果,根据上述的示例性算法和图2B所描述的图像18内示出的11X11像素块 301的棋盘状图案,三个8区间直方图将被填充为如下在红色8区间直方图中,第四区间将具有值71 (在两个红色象限的25个像素中红色值在98和130之间的重复量,加上在ρ (6,1) p(6,m)之间的11个像素中红色值在98 和130之间的重复量,加上在ρ (n,6) ρ (11,6)之间的10个像素中红色值在98和130之间的重复量,得到25+25+11+10 = 71)。根据类似的计算,第一区间将具有值50以指示红色值为0的所有像素。红色8区间直方图中的所有其它区间将具有0值。因而,红色8区间直方图将是[50,0,0,71,0,0,0,0]。在绿色8区间直方图中,第四区间将具有值46(在绿色象限的25个像素中绿色值在98和130之间的重复量,加上在p(6,l) p(6,m)之间的11个像素中绿色值在98和 130之间的重复量,加上在ρ (n,6) ρ (11,6)之间的10个像素中绿色值在98和130之间的重复量,得到25+11+10 = 46)。(针对绿色值为0的)第一区间具有值75。绿色8区间直方图中的所有其它区间将具有0值。因而,绿色8区间直方图将是[75,0,0,46,0,0,0,0]。在蓝色8区间直方图中,第四区间将具有值46 (在蓝色象限的25个像素中蓝色值在98和130之间的重复量,加上在p(6,l) p(6,m)之间的11个像素中蓝色值在98和 130之间的重复量,加上在ρ (n,6) ρ (11,6)之间的10个像素中蓝色值在98和130之间的重复量,得到25+11+10 = 46)。第一区间同样具有值75。蓝色8区间直方图中的所有其它区间将具有0值。因而,蓝色8区间直方图将是[75,0,0,46,0,0,0,0]。作为上述算法的结果,将在本例子中为三个的各8区间直方图串接在一起形成单个 8X3 向量元。因而,该向量将是[50,0,0,71,0,0,0,0,75,0,0,46,0,0,0,0,75,0,0,46, 0,0,0,0]。然后,将上述的向量分配给11X11阵列的中心Z处的ρ (6,6),并且因此用表示为 [50,0,0,71,0,0,0,0,75,0,0,46,0,0,0,0,75,0,0,46,0,0,0,0]的强度直方图代替原始为 (123,123,123)的像素 ρ (6,6)的 RGB 值。一阶均勻同质C型表征包括图像的相邻像素中的单个稳健颜色测量。在开始图5A 的识别例程时,(作为C型表征化块35来执行的)CPU 12在存储器中建立区域映射。在步骤100中,CPU 12清空区域映射并且分配初始设置为1的区域ID。将与像素数量相对应的例程的迭代设置为i = 0,并且将用作判断表征的种子的NXN像素阵列的数量设置为初始值N = Nstart0 Nstart可以是大于0的任意整数,例如,可以将Nstart设置为11个或15 个像素。在步骤102,开始种子测试。CPU 12选择第一个像素i = (1,1),例如(见图2A) 在图像文件18的第一个NXN样本的左上角处的像素。然后,在判断块104中测试该像素, 以判断所选择的像素是否为好种子的一部分。该测试可以包括将所选择的像素的颜色值与作为种子的、例如NXN阵列的预先选择的数量的邻近像素的颜色值进行比较。可以针对像素的多个色带值(在本发明的例子中为RGB)进行该颜色值比较,或者可以在如上所述对图像进行滤波以得到纹理区域的情况下、针对像素的滤波输出强度直方图表示进行该颜色值比较。如果对于种子中的像素,该比较没有得出(例如,在针对RGB值的记录装置的噪声水平内)近似相等的值,则针对下一个NXN种子样本,CPU 12使i值递增(步骤106),例如 i = (1,2),并且然后进行测试以判断i = imax是否成立(判断块108)。如果像素值是被选择为用于决定减小种子大小以获得改进结果的阈值的值imax, 则将种子大小N例如从N = 15减小至N = 12(步骤110)。在本发明的示例性实施例中, imax可以设置在i= (n,m)。以此方式,在以减小的N值重复该例程之前,图5A的例程以N 的第一个值分析整个图像。在种子大小减小后,例程返回至步骤102,并且继续测试表征种子。在步骤110还检查Nstop值(例如N = 2),以判断该分析是否完成。如果N的值为Nstop,则CPU 12已完成对图像像素阵列的调查,并且退出该例程。如果i的值小于imax,并且N大于Nstop,则例程返回至步骤102,并且继续测试表征种子。当找到好种子(具有近似相等的像素值的NXN阵列)时(块104),根据该种子生长表征。在步骤112,CPU 12将来自种子的像素推入队列。用区域映射中的当前区域ID 来标记队列中的所有像素。然后,CPU 12询问该队列是否为空(判断块114)。如果该队列不为空,则例程进行至步骤116。在步骤116,CPU 12使前面的像素弹出队列,并且进入步骤118。在步骤118,CPU 12用当前区域ID来标记对象像素周围的“好”邻居、即颜色值与对象像素的颜色值近似相等的邻居。将所有标记了的好邻居放入区域映射中,并且还将它们推入队列。然后,CPU 12 返回至判断块114。重复步骤114、116、118的例程,直到队列为空为止。此时,已识别出当前区域中形成表征的所有像素,并且在区域映射中将它们标记为C型表征。在像素包括强度直方图表示的情况下,可以将该表征标记为Ct型。当队列为空时,CPU 12进入步骤120。在步骤120,CPU 12递增区域ID以供识别下一个表征使用。然后,CPU 12返回步骤106以针对新的当前表征区域重复该例程。当在图5A的流程图的步骤110中达到N = Nstop、或者已完成与图像相符的区域映射时,该例程已完成表征构造任务。图5B是在识别表征时用作例子的原始图像。该图像示出蓝色和蓝色阴影的区域以及深青色和阴影深青色的区域。图5C示出针对图5B的图像, 例如经由执行图5A(C型表征)的例程识别出的与区域映射相对应的表征区域。对该表征区域进行颜色编码以示出图5B的图像的表征构成,其包括图像的全蓝色和深青色区域与着色区域的阴影之间的半影区域。在通过C型表征化块35完成图5A的例程时,服务提供器M存储针对所选择的图像的C型表征区域信息。在根据所识别出的C型表征生成B型表征的任何处理开始之前, 算子块观测试所识别出的各C型表征,以确保各C型表征包括单个材质。尽管各C型表征包括图像中的、在该图像的相邻像素之间具有单个稳健颜色测量的区域,但表征可以跨材质边界生长。一般地,在一个C型表征中,不同的材质经由颈区域而连接在一起,颈区域通常位于阴影边界上或者位于跨色调类似但强度不同的不同材质的、具有变化的光照的区域。可以通过检查相邻像素的特性来识别颈像素。当像素具有不在相应的表征内的位于相对侧的两个相邻像素以及在相应的表征内的位于相对侧的两个邻接像素时,将该像素定义为颈像
ο图6示出针对C型表征的颈测试的流程图。在步骤122,CPU12检查识别出的表征的各像素,以判断被检查的像素中是否存在形成颈的像素。图6的例程可以作为执行图5A 的例程期间紧接在识别出特定表征之后的子例程来执行。将被识别为颈的所有像素标记为 “不可生长”。在判断块124中,CPU 12判断是否标记了这些像素中的任意像素。如果判断为否,则CPU 12退出图6的例程,并且返回至图5A的例程(步骤126)。如果判断为是,则CPU 12进入步骤128,并且运行,从而按照图5A的例程,在不改变种子大小和区域ID的计数的情况下,根据在当前表征的未标记的像素中选择出的种子位置重新生长表征。在重新生长处理期间,CPU 12不包括先前被标记为不可生长的任何像素。在重新生长表征之后,取消对先前标记的像素的标记,以使得其它表征可以生长至这些像素。在重新生长不具有先前标记的像素的表征之后,CPU 12返回至步骤122,以测试新的重新生成的表征。
颈测试识别跨材质边界的C型表征,并且重新生长识别出的表征,以提供适用于创建B型表征的单个材质C型表征。图5D示出根据本发明的特征的、根据图5C的C型表征生成的B型表征。本发明提供了用于根据C型表征构造B型表征的像素特性分析的几个示例性技术。一个示例性技术涉及任意边界去除。无论是利用像素的N色带值(在本例子中为RGB)还是在对图像进行滤波的情况下利用像素的滤波输出表示来生成C型表征,均可对这些C型表征应用任意边界去除技术。任何特定C型表征的实际边界将是用以生成表征的种子位置的函数,并因而这些边界在一定程度上是任意的。针对各特定表征通常存在许多个潜在的种子位置,其中,在记录设备的噪声范围内,由于各种子的像素的颜色值之间的差异,各潜在种子位置生成了边界和空间范围略微不同的表征。图7是根据本发明的特征的、用于经由任意边界去除技术来构造B型表征的流程图。在步骤200,向CPU 12提供在经由图6的例程进行了颈去除的情况下经由图5A的例程以种子大小(S)所生成的C型表征的集合(Tc)。种子大小S = Smax,例如,S = 4个像素。在步骤202,针对集合Tc中的各C型表征tc,CPU 12选择多个(例如50个)潜在种子S1 Sn。在本例子中,所选择的各种子将是表征区域内的4X4像素阵列,其中,该阵列的像素具有(在记录装置的噪声水平内)近似相等的值。在步骤204,CPU 12利用图5A和6的例程,针对集合Tc中的各表征tc的各种子位置S1 Sn,生长新的C型表征。将针对各表征tc新生成的表征指定为表征 r。n。针对各表征tc新生成的表征rel r。n通常与原始的C型表征tc重叠,并且彼此重叠。在步骤206,CPU 12进行操作,以分别合并各表征tc的新生成的表征rel r。n。从而得到与集合Tc中的各原始表征tc相对应的新表征Rt。各新表征Rt包含根据相应的原始表征tc所生成的各重叠表征rel r。n的所有区域。包括各合并后的新表征Rt的区域的组合是与集合中的原始C型表征相比范围更大的表征。由此产生的合并后的新表征Rt得到图像文件18的区域,其中,与原始C型表征相比,各表征Rt的像素之间的变化范围大得多,但构成像素之间的变化的范围将相对平滑。根据本发明的特征,将Rt定义为B型表征的限定形式Babl型,以表示通过任意边界去除技术的第一阶段(步骤200-206)所生成的表征。在步骤208中,CPU 12存储在步骤202-206根据表征的集合Tc生成的各Babl型表征,并且进入步骤210。通过执行步骤202-206所生成的Babl型表征可能大幅重叠。在步骤 210,CPU 12进行操作,以对在步骤208中存储的、以各Rt表征大小的特定比例彼此重叠的 Rt表征进行合并。例如,通常30%重叠足以提供较少的、组合包含不同材质的区域的假阳性合并(如果存在)。合并后的新表征集合可能仍具有重叠表征,例如,先前具有小于30% 重叠的重叠表征。在完成所有合并之后,CPU 12进入步骤212。在步骤212,CPU 12识别存在于不止一个表征中(S卩,位于两个或更多个表征的重叠部分中)的所有像素。将识别出的各像素分配给占据图像的最大区域的表征。因而,修改所有的重叠表征以消除所有的重叠。在步骤214,CPU 12(作为C型表征化块35或算子块28)存储现在被指定为Bab2 型表征的、合并和修改后的表征的最终集合,并然后退出该例程。如上所述,无论是利用像素的N色带值(本例子中为RGB)还是在对图像进行滤波的情况下利用像素的滤波输出表示来生成C型表征,都根据这些C型表征来生成Bab2型表征。
根据本发明,利用C型表征来创建B型表征的第二示例性技术是相邻平面表征合并。当图像描述具有均勻颜色的区域时、即针对图像的无纹理区域,可以实现相邻平面表征合并。首先,使用表征图来识别彼此靠近的表征。图8示出根据本发明的特征的、用于创建包括表征映射信息的表征图的流程图。在如下方面评价通过执行图5A和6的例程所生成的C型表征的集合Tc中的各表征tc 在集合Tc中构成相邻的表征对tc、tn的表征之间的最大距离Dmax,以及要求在Dmax内的相邻表征对中的各表征的表征周边像素的最小数量 Pmin和相邻表征对的各表征的周边像素的最小分数Fmin。在步骤300,CPU 12在C型表征的集合Tc中选择C型表征tc,并且识别所选择的表征tc中形成表征的周边的像素。在判断块302中,CPU 12判断周边像素的数量是否小于ftnin,例如10个像素。如果判断为是,则CPU 12进入判断块304,以判断在C型表征的集合Tc中是否存在任何剩余的表征tc。如果判断为是,则CPU 12返回步骤300,如果判断为否,则CPU 12 退出例程306。如果判断为否,则CPU 12进入步骤308。在步骤308,CPU 12生成用作掩模的边界框以围绕所选择的表征tc。将该边界框的大小设置为在所有方向上至少大于所选择的表征tc的Dmax。执行已知的距离变换(例如,如P. Felzenszwalb and D. Huttenlocher, Distance Transforms of Sampled Functions, Cornell Computing and Information Science Technical Report TR2004-1963, September 2004 中所述),以找到从所选择的表征tc的各周边像素至围绕边界框中的所有像素的距离。该距离变换的输出包括各自具有与边界框相同的大小的距离映射和最近像素映射这两个映射。距离映射包括从边界框的各像素至所选择的表征tc的最近周边像素的欧几里德距离。最近像素映射针对距离映射中的各像素识别哪个周边像素最接近该像素。在步骤310中,CPU 12扫描在步骤308中生成的距离映射,以(根据经由图5A的例程所生成的区域映射)识别与边界框的像素相对应的表征,并从由边界框中的像素所表示的所有表征中识别出在距离Dmax内的像素数量为Ncn的表征,其中,Ncn大于Rnin并且大于各表征的周边像素的FmirA并且各表征与tc之间的平均距离是与边界框中的像素相对应的表征中最低的。如果满足这些条件,则将各表征指定为可能的表征对tc、tn中的tn, 并且将链接Lcn标记为有效。在步骤312中,CPU 12进行检查以判断互逆链接Lcn是否也被标记为有效,并且当其被标记为激活时,CPU 12标记表征对tc、tn是相邻表征对的指示并将其存储在表征图中。互逆链接(reciprocal link)指的是当前评价中对指定为tn的表征的评价的链接状态。如果尚未评价该表征,则不将该表征对指定为相邻表征对,直到在对表征tn的后续评价中将链接Lcn验证为有效为止。然后,CPU 12返回判断块304,以判断集合Tc中是否存在任何其它的表征。在完成表征图时,CPU 12利用在执行图9的例程时存储在图中的表征对信息。图 9示出根据本发明的特征的、用于经由相邻平面表征合并技术构造B型表征的流程图。在相邻平面表征合并技术中,检查表征对,以判断该对表征之间在二维测量上是否存在颜色值的平滑和连贯的变化。根据本发明的示例性实施例,在像素的例如RGB成分的颜色的各通道的平面表示方面,检查颜色的变化。将平滑的变化定义为当平面集合(每个颜色成分一个平面)是对两个相邻表征的像素值的良好拟合时的条件。作为总结,当二维感觉的颜色变化近似平面时,将相邻表征视为具有相同的材质并且为B型表征。在步骤320,CPU 12从表征图选择表征对tc,tn。在判断块322中,CPU 12判断表征tc中的平均颜色是否与表征tn中的平均颜色差异很大。该差异可能是已知的统计测量 ζ 分数的函数(例如,见 Abdi,H. (2007),Z-scores, in N. J. Salkind(Ed.), Encyclopedia of Measurement and Statistics, Thousand Oaks, CA :Sage),例如,大于 3· 0 的 ζ 分数。如果表征对的平均颜色不同,则CPU 12进入判断块324,以判断表征图中是否存在任何额外的表征对。如果判断为是,则CPU 12返回步骤320。如果判断为否,则CPU 12 退出该例程(步骤326)。如果平均颜色在ζ分数参数内,则CPU 12进入步骤328。在步骤328,CPU 12 进行例如最小中值平方回归(例如,见Peter J. Rousseeuw, Least Median of Squares Regression,Journal of the American Statistical Association,Vol. 79,No. 388(Dec., 1984), pp. 871-880)等的数学运算,以根据行η和列m(见图2)将平面拟合至表征对tc,tn 的像素的各颜色通道(在本例子中,RGB),其中通过以下的等式来定义平面R = X^+Y^+Z, G = XGn+YGffl+ZG B = XBn+YBffl+ZB其中,通过CPU 12的最小中值平方回归运算来确定参数值X、Y和C。在平面拟合运算完成时,CPU 12进入步骤330。在步骤330,CPU 12检查表征对 tc, tn中的各表征的各像素,以计算表征的各像素与通过最小中值平方回归运算的等式所表示的平面拟合之间的ζ分数。当该对的各表征的像素的阈值百分比(例如80%)至少在最大ζ分数(例如0.75)内时,则在表征图中将相邻表征对标记为表示图像中的相同材质。 完成步骤330之后,CPU 12返回判断块324。在退出图9的例程时,CPU 12检查表示相同材质的所有表征对的表征图。CPU 12可以通过进行例如联合搜索算法等的已知技术来实现该检查(例如,见Zvi Galil and Giuseppe F. Italiano. Data structures and algorithms for disjoint set union problems, ACM Computing Surveys, Volume 23, Issue 3(September 1991), pages 319-344)。作为简单例子,假定七个(型表征1\、112、113、114、115、116、117的集合。假定执行图 9 (进行相邻平面分析)的结果表示表征T1和T2被标记为相同材质,并且表征T1和T3也被标记为相同材质。此外,该结果还表示表征T4和T5被标记为相同材质,并且表征T5和 T6也被标记为相同材质。因此,执行联合搜索算法的结果将表示表征IT1, T2, T3I形成图像内构成单个材质的第一组,表征{Τ4,Τ5,Τ6}形成图像内构成单个材质的第二组,并且表征 {Τ7}形成图像内构成单个材质的第三组。这些组IT1, T2, T3I、{T4,T5, T6I和{Τ7}形成三个 B型表征。根据本发明的、利用C型表征来创建B型表征的第三示例性技术是局部表征分析。 该局部表征分析方法通过对图像文件18中所描述的场景进行窗分析来生成C型表征。将这种表征指定为Cw型表征。图10是根据本发明的特征的、用于经由局部表征分析技术来生成Cw型表征的流程图。在步骤400中,CPU 12将例如33X33像素阵列掩模的固定大小的窗放置在整个图像上预先选择出的一系列扫描位置上。该窗可以是正方形以外的形状。这些扫描位置彼此偏移例如1/2窗大小的固定量,并且整体被布置为完全覆盖图像。各扫描位置处的像素的窗区域生成Cw型表征,但是并非各扫描位置处的窗内的每个像素都位于在各扫描位置处生成的Cw型表征中。在各扫描位置处(步骤40 ,CPU 12根据窗内的像素进行操作,以拟合一组平面中的各个平面以及RGB空间中的RGB线,其中,一个平面与一个颜色通道(例如RGB)的强度相对应,并且RGB线以窗内的颜色的起始点Itl和结束点I1为特征。该平面拟合提供了对窗内的像素强度的空间表示,并且线拟合提供了对窗内的像素的频谱表示。针对平面拟合,由以下等式来定义平面R = X^+Y^+Z, G = XGn+YGffl+ZG B = XBn+YBffl+ZB其中,通过CPU 12执行诸如上述最小中值平方回归等的数学运算、奇异值分解等的最小平方估计器或者诸如RANSAC等的稳健估计器来确定参数值X、Y和C(例如,见 M. A.Fischler, R. C.Boiler. Random Sample Consensus :A Paradigm for Model Fitting with Applications to Image Analysis and Automated Cartography. Comm. of the ACM, Vol 24,pp381-395,1981)。对于RGB线拟合,如下定义该线I(r,g,b) = I0 (r, g, b) +t (I1 (r, g, b) -I0 (r, g, b))其中,参数t具有在0和1之间的值,并且可以由CPU 12利用任意用于查找平面拟合的数学技术来确定该参数t。在各扫描位置处,在完成步骤402之后,CPU 12在步骤404中进行操作,以针对与各窗扫描位置相对应的平面拟合表示和RGB线表示分别检查窗中的各像素。针对各像素, CPU 12确定该像素相对于所建立的平面的误差因子以及相对于RGB线的误差因子。所述误差因子与从该像素至该像素在平面拟合或RGB线拟合中的任一个上的投影的绝对距离相关。所述误差因子可以是记录设备中存在的噪声的函数,或者可以是窗内的最大RGB值的百分比,例如1 %。将相对于空间平面拟合或频谱线拟合中的任一个的误差因子内的任意像素距离标记为在各扫描位置处生成的Cw型表征的内围层。CPU 12还为在各扫描位置处生成的Cw型表征记录所有内围层像素的列表。在各扫描位置处,完成步骤404之后,CPU 12在步骤406中进行操作,以将从属关系值(membership value)分配给窗内的各内围层像素。从属关系值可以基于从内围层像素至平面拟合或RGB线拟合的距离。在本发明的一个示例性实施例中,从属关系值是用于判断像素的内围层状态的距离的倒数。在第二示例性实施例中,执行具有标准偏差的以0 为中心的高斯分布,以计算内围层像素的从属关系值。在处理了所有的扫描位置以按一个扫描位置一个Cw型表征生成Cw型表征之后, CPU 12进行操作,以汇编并存储表征数据列表(步骤408)。表征数据列表包括两个列表。 第一列表列出图像文件18中的所有像素,并且对于各像素,列出标记为内围层像素的各Cw 型表征的指示以及相应的从属关系值。第二列表列出所有生成的Cw型表征,并且针对各表征分别列出各表征的内围层像素的指示以及相应的从属关系值。在汇编并存储表征数据列表之后,CPU 12退出该例程(步骤410)。图11是根据本发明的特征的、用于根据经由局部表征分析技术所生成的Cw型表征来构造B型表征的流程图。在步骤420,CPU 12计算通过执行图108的例程所生成的相邻或重叠的Cw型表征的空间平面维度和频谱RGB线的参数的类似度。可以将重叠或相邻Cw型表征定义为与重叠或相邻的扫描位置相对应的表征。可以将类似度阈值设置为在所比较的两个重叠或相邻Cw型表征的空间平面维度和频谱RGB线各自之间的差异的百分比。 例如,该百分比可以是用于记录图像文件18的场景的照相机14的噪声的函数。将计算出的类似度在类似度阈值内的所有重叠或相邻Cw型表征对放置在列表中。在步骤422,CPU 12按照从最类似对到最不类似对的顺序对计算出的类似度在类似度阈值内的重叠或相邻Cw型表征对的列表进行排序。在步骤424,CPU 12按排序的顺序合并类似表征对,并按类似度标记各对。将各合并得到的表征对看作为B型表征。在步骤 426中,CPU 12存储B型表征的列表,并且退出该例程。在根据本发明的另一示例性技术中,通过CPU 12执行例如二阶导数滤波响应等的滤波响应,以识别图像中具有均勻材质反射率的区域。然后,使用所识别出的区域来生成 B型表征。可以通过进行像素值的卷积来实现滤波响应。卷积是对像素阵列应用滤波掩模以确定阵列中心处的像素的函数响应值的数学技术。滤波掩模表示例如高斯-拉普拉斯算子(LoG)等的数学函数。LoG滤波器是用于确定在图像的各像素位置处的数学函数输出值以及与各像素位置处的导数值有关的输出值的已知的滤波器,并且LoG滤波器被用来检测图像中的材质边缘。图12A示出材质边缘、部分具有阴影的单个材质和在恒定光照下的单个材质各自的图像中的强度分布以及相应的一阶导数分布和二阶导数分布。导数是变化率的度量。在图像中,一阶导数测量从图像的像素到像素的色带强度的变化率、例如红色的变化率。二阶导数是对变化率的变化率的度量,即,对一阶导数的变化率的度量。图12A的A列示出图像内材质边缘处的强度分布以及一阶导数分布和二阶导数分布。如A列所示,颜色强度分布在材质边界处形成尖锐边缘分布,从而导致一阶导数值中存在尖峰以反映材质边界处的材质强度的尖锐变化率。结果,二阶导数值经过过零,首先随着在边界处的一阶导数达到峰时在正方向上出现峰,然后过零,并在一阶导数峰回到O时在负方向上出现峰。在已知的LoG滤波技术中,如图12A的A列所反映的,将像素的一阶导数值高、一阶导数出现峰或二阶导数过零用作材质边缘的象征。与材质边缘的一阶导数出现峰和二阶导数过零不同,图12A的B列和C列分别示出针对部分具有阴影的单个材质和在恒定光照下的单个材质的强度分布以及相应的一阶导数分布和二阶导数分布。在B列中,图像的强度经过衰减的边缘,与落入表示单个材质的像素之间的阴影的半影相对应。因而,一阶导数随着半影的衰减性变化而缓慢上升和下降,并且二阶导数在一阶导数缓慢上升和下降整个期间保持相对低的值。如C列所示,单个材质的光照的恒定值导致像素之间的一阶导数值和二阶导数值均为恒定低值。根据本发明的特征,以新颖方式利用例如LoG滤波等的二阶导数滤波,以识别图像中例如包括具有如图12A的B列和C列各自所示的、均勻的低二阶导数值的像素的片的区域。在示例性实施例中,各片具有预先选择的大小(例如,3X3像素阵列、5X5像素阵列或7X7像素阵列)。如上所述,在均勻光下具有均勻材质反射率的片将在该片的像素之间具有近似恒定的颜色值,导致在该片的各像素位置处的二阶导数的值低。另外,衰减半影中恒定的材质反射率也将导致片的像素之间的二阶导数的值低。因而,确定二阶导数值低的像素片的位置,提供了如下的高可能性指示,即在该片内不存在材质边缘并且该片内的所有像素具有相同的材质反射率。本发明仔细考虑在像素片之间与均勻材质反射率的可能性有关的任何函数响应,例如图像的强度分布曲线的二阶导数值、三阶导数值或者其它度量等,其中,强度分布是图像在(X,y,强度)空间中的形状。
拉普拉斯滤波提供在图像的点处的二阶偏导数的和。因此,可以执行拉普拉斯滤波以确保函数输出与图像的像素的二阶导数值成比例。如下定义图像I的拉普拉斯算子 V^/ °
如2
上述函数是(沿图2的阵列的η行和m列的)χ和y方向上的二阶偏导数的和,并且上述函数与所有方向上的平均二阶导数成比例。由于图像中存在噪声和小幅度变化,通常对图像的模糊版本(blurred version) 进行图像的一阶和二阶导数分析。图像的模糊版本平滑掉由噪声和图像变化引起的任何不规则,并且可以利用任意标准模糊函数来获得该模糊版本。例如,利用基于高斯函数的滤波掩模对图像作卷积。可以如下定义高斯函数
权利要求
1.一种用于处理图像的自动化且计算机化的方法,包括以下步骤 提供图像;按被表示为[A][x] = [b]的矩阵方程组织所述图像的空间-频谱信息,其中,[A]表示通过对所述空间_频谱信息施加约束关系而确定的值,[b]表示所述图像的记录信息,并且ω表示所述图像的未知的材质/光照成分;以及在图像分离运算中利用所述矩阵方程。
2.根据权利要求1所述的方法,其特征在于,所述空间-频谱信息包括表征。
3.根据权利要求1所述的方法,其特征在于,所述空间_频谱信息包括对数色度表示。
4.根据权利要求1所述的方法,其特征在于,所述空间_频谱信息包括X交界。
5.根据权利要求1所述的方法,其特征在于,所述空间-频谱信息包括BIDR模型表示。
6.根据权利要求1所述的方法,其特征在于,所述空间-频谱信息包括边界表示。
7.根据权利要求1所述的方法,其特征在于,所述空间_频谱信息包括基于纹理基元直方图的像素表示。
8.根据权利要求1所述的方法,其特征在于,所述约束关系包括以下之一绝对材质颜色约束、相同材质约束、相对反射率约束。
9.一种用于处理图像的自动化且计算机化的方法,包括以下步骤 提供图像;生成所述图像的空间_频谱信息; 根据所述空间_频谱信息定义约束;以及在图像分离运算中利用所述约束。
10.根据权利要求9所述的方法,其特征在于,所述空间_频谱信息包括表征。
11.根据权利要求9所述的方法,其特征在于,所述空间-频谱信息包括对数色度表示。
12.根据权利要求9所述的方法,其特征在于,所述空间_频谱信息包括X交界。
13.根据权利要求9所述的方法,其特征在于,所述空间_频谱信息包括BIDR模型表示。
14.根据权利要求9所述的方法,其特征在于,所述空间_频谱信息包括边界表示。
15.根据权利要求9所述的方法,其特征在于,所述空间_频谱信息包括基于纹理基元直方图的像素表示。
16.根据权利要求9所述的方法,其特征在于,所述约束包括以下之一绝对材质颜色约束、相同材质约束、相对反射率约束。
17.一种用于处理图像的自动化且计算机化的方法,包括以下步骤 提供图像;组织步骤,用于根据所述图像的BIDR模型表示组织空间-频谱算子;以及利用所述组织步骤的结果来识别所述图像的材质和光照方面以用于图像分离。
18.根据权利要求17所述的方法,其特征在于,通过对所述图像的BIDR模型表示约束表示稳健类似颜色的区域的表征,来执行用于根据所述图像的BIDR模型表示组织空间-频谱算子的步骤。
19.根据权利要求18所述的方法,其特征在于,通过将表示稳健类似颜色的区域的表征约束为线性表征,来执行对所述图像的BIDR模型表示约束表示稳健类似颜色的区域的表征的步骤。
20.一种用于处理图像的自动化且计算机化的方法,包括以下步骤 提供图像;组织步骤,用于根据表示所述图像中所描述的离散材质的表征和表示稳健类似颜色的区域的表征组织空间_频谱算子;以及利用所述组织步骤的结果来识别所述图像的材质和光照方面以用于图像分离。
21.根据权利要求20所述的方法,其特征在于,通过将所述表征约束为从包括绝对材质颜色约束、相同材质约束和相对反射率约束的组中选择出的约束,来执行用于根据表示所述图像中所描述的离散材质的表征和表示稳健类似颜色的区域的表征组织空间_频谱算子的步骤。
22.一种用于处理图像的自动化且计算机化的方法,包括以下步骤 提供计算机存储器中的描述图像的图像文件;识别所述图像文件中与图像的材质和光照方面的逻辑推演有关的信息; 根据所述信息定义约束;以及在图像分离运算中利用所述约束。
23.一种用于处理图像的自动化且计算机化的方法,包括以下步骤 提供计算机存储器中的描述图像的图像文件;按被表示为[A][x] = [b]的矩阵方程组织所述图像文件中与图像的材质和光照方面的逻辑推演有关的信息,其中,[A]表示通过对所述与图像的材质和光照方面的逻辑推演有关的信息施加约束关系而确定的值,[b]表示从计算机存储器中的所述图像文件获得的信息,并且ω表示所述图像的未知的材质/光照成分;以及在图像分离运算中利用所述矩阵方程。
24.根据权利要求23所述的方法,其特征在于,所述图像文件中与图像的材质和光照方面的逻辑推演有关的信息是从与图像的空间_频谱方面有关的信息选择出的。
25.一种计算机系统,包括 CPU ;以及用于存储定义图像的图像文件的存储器;所述CPU被配置为执行例程以识别所述图像文件中与图像的材质和光照方面的逻辑推演有关的信息,根据所述信息定义约束,并在图像分离运算中利用所述约束。
26.一种计算机系统,包括 CPU ;以及用于存储定义图像的图像文件的存储器;所述CPU被配置为执行例程以按被表示为[A][x] = [b]的矩阵方程组织所述图像文件中与图像的材质和光照方面的逻辑推演有关的信息,并且在图像分离运算中利用所述矩阵方程,其中,[A]表示通过对所述与图像的材质和光照方面的逻辑推演有关的信息施加约束关系而确定的值,[b]表示从计算机存储器中的所述图像文件获得的信息,并且[χ]表示所述图像的未知的材质/光照成分。
27.一种计算机程序产品,放置在计算机可读介质上,所述产品包括以下能够控制计算机执行的计算机可执行的处理步骤提供计算机存储器中的描述图像的图像文件;识别所述图像文件中与图像的材质和光照方面的逻辑推演有关的信息;根据所述信息定义约束;以及在图像分离运算中利用所述约束。
28.根据权利要求27所述的计算机程序产品,其特征在于,所述图像文件中与图像的材质和光照方面的逻辑推演有关的信息是从图像的与空间_频率方面有关的信息选择出的。
29.一种计算机程序产品,放置在计算机可读介质上,所述产品包括以下能够控制计算机执行的计算机可执行的处理步骤提供计算机存储器中的描述图像的图像文件;按被表示为[A][x] = [b]的矩阵方程组织所述图像文件中与图像的材质和光照方面的逻辑推演有关的信息,其中,[A]表示通过对所述与图像的材质和光照方面的逻辑推演有关的信息施加约束关系而确定的值,[b]表示从计算机存储器中的所述图像文件获得的信息,并且ω表示所述图像的未知的材质/光照成分;以及在图像分离运算中利用所述矩阵方程。
30.根据权利要求29所述的计算机程序产品,其特征在于,所述图像文件中与图像的材质和光照方面的逻辑推演有关的信息是从与图像的空间-频谱方面有关的信息选择出的。
全文摘要
在本发明的示例性实施例中,提供一种用于处理图像的自动化且计算机化的方法。根据本发明的特征,该方法包括以下步骤提供图像;按被表示为[A][x]=[b]的矩阵方程组织所述图像的空间-频谱信息,其中,[A]表示通过对所述空间-频谱信息施加约束关系而确定的值,[b]表示所述图像的记录信息,并且[x]表示所述图像的未知的材质/光照成分;以及在图像分离运算中利用所述矩阵方程。
文档编号G06K9/48GK102308306SQ200980156305
公开日2012年1月4日 申请日期2009年11月30日 优先权日2008年12月5日
发明者A·N·斯坦因, B·C·L·奈比, D·A·托利弗, J·A·巴格内尔, L·S·夸克, M·迪拜尔, R·M·弗利达霍夫, S·J·布歇尔, T·K·小罗杰斯, 克里斯汀·简·丹娜, 卡西·阿瑟·史密斯, 布鲁斯·艾伦·麦斯威尔 申请人:昙盾特视觉科学有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1