数据处理方法与装置的制作方法

文档序号:6405022阅读:123来源:国知局
专利名称:数据处理方法与装置的制作方法
技术领域
本发明涉及到一种用于处理二进制数据及元数据的数据处理方法及装置,以及一种存储介质。
背景技术
本发明还涉及到一种用于处理图像数据和关于图像数据的区域信息的数据处理方法及装置,以及一种存储介质。
元数据是“关于数据的数据”,是用来解释诸如图像数据、音频数据以及类似数据等二进制数据的数据。但是,当二进制数据与对应的元数据作为独立的文件存在时,用户必须通过移动或复制文件来同时管理二进制数据和元数据,这就造成了不便。
通常,为了简化二进制数据及元数据的管理工作,已经提出了多种用于描述二进制数据及元数据的方法。可以将这些常规的技术分类成定义新二进制格式的方法,以及利用数据库来管理这些数据的方法。
作为定义新二进制格式的方法示例,Tiff、Exif、Flashpix以及类似格式都被认为是新图像格式。图24显示了一种格式的原理,该格式将元数据嵌入到二进制数据中。例如,图像数据用作二进制数据。如图24所示,用于描述元数据的域通常位于图像的报头域,用户在该域对元数据进行描述。通过这种方式来描述元数据,就可以很容易地检索和分类数据。由于二进制数据包含元数据,所以可以用一个文件来管理两种数据,这样就使得文件管理工作相对容易。
将在下面对使用数据库管理二进制数据及元数据的方法进行解释。图25显示了使用数据库来管理二进制数据和元数据的方法原理。这种用图25所示的数据库或类似东西管理以独立文件形式存在的二进制数据及元数据的方法也很流行。在这种情况下,现有的二进制数据可以不作任何修改就为现有应用程序所使用。
但是,定义一种描述元数据的新格式的方法,以及使用数据库来管理元数据的方法都存在各自的问题。
当定义了一种描述元数据的新格式后,现有的二进制数据必须转换成新格式,而且元数据必须以新格式进行描述。另外,为了使用新格式的元数据来检索二进制数据,需要一个与新格式兼容的应用程序。即,为了描述和使用元数据,需要经过复杂的步骤以及专用环境。而且,为了处理新格式的二进制数据(例如,如果二进制数据是图像数据,那么输出图像),需要一个与新格式兼容的应用程序,而现有应用程序无法处理这种状况。
另外,由于元数据的描述方法是用新格式唯一确定的,所以必须创建一个新的检索例程以便创建能使用新格式元数据的应用程序。而且,为了描述新域的元数据,必须修改格式的规范。
另一方面,当使用数据库同时管理二进制数据和元数据时,如果数据库软件不可用,那么元数据既不能存储也不能使用。另外,为了显示所存储的元数据,需要专用的软件。而且当从数据库中读取二进制数据时,元数据不会随二进制数据一同读取,也就是说,形成不包括元数据的二进制数据。
例如,当图像数据包括在二进制数据中,且为图像数据所表示的图像所属的区域信息包括在元数据中时,也会引发上述问题。
区域信息是属于局部图像的数据,局部图像通过从静态图像中抽取具有统一特性的区域而获得。区域信息用于探测并识别图像中的对象。但是,当静态图像数据中没有添加区域信息时,静态图像必须经过区域分割,该过程作为探测和识别图像中对象的预处理过程。由于区域分割通常需要大量的计算机资源和长时间的处理过程,所以其效率是很低的。
因此,要求按上述方法管理与静态图像数据相关的区域信息。但是,当静态图像数据和对应的区域信息作为独立的文件存在时,用户必须通过移动和复制文件来同时管理静态图像数据和区域信息,这就造成了不便。
按常规方法,不能管理上述静态图像数据及其形成的区域信息。但是管理这两种彼此相关的数据的方法可以分类成定义一种新图像格式的方法,以及使用数据库管理这些数据的方法,就如同上述对二进制数据和元数据的解释一样。
作为定义一种新的用于静态图像数据的二进制格式的方法示例,Tiff、Exif、Flashpix以及类似格式都被认为是新图像格式。图26显示了一个在二进制数据中嵌入元数据的格式原理。即,图26显示了在静态图像数据中嵌入区域信息的格式原理。按这种方式,当用于描述区域信息的域位于图像的报头域,并且关于图像的区域信息记录在该域时,两种数据可以作为一个文件进行管理,这样就使得文件管理工作相对简单。
另一方面,按如下方式使用数据库来管理图像数据和区域信息。图27显示了使用数据库来管理静态图像数据和区域数据的方法原理。如图27所示,可以使用一种利用数据库来管理作为独立文件的静态图像数据和区域信息的方法。在这种情况下,静态图像数据无需作任何修改,而且现有应用程序也可以直接使用现有静态图像数据。
但是,定义一种描述区域信息的新格式的方法,以及使用数据库来管理元数据的方法,在对二进制数据和元数据进行管理时,都存在相同的问题。
即,当定义了一种描述区域信息的新格式时,现有静态图像数据必须转换成新格式,而区域信息必须以新格式加以描述。而且为了按新格式使用区域信息,需要一个与新格式兼容的应用程序。即,为了描述和使用区域信息,需要经过复杂的步骤和专用环境。另外,为了处理新格式的静态图像数据(例如,如果是图像数据,那么输出图像),需要与新格式兼容的应用程序,现有应用程序无法处理这种状况另外,由于区域信息的描述方法是用新格式唯一确定的,所以必须创建一个新的区域信息读取例程以便创建能使用新格式区域信息的应用程序。而且,为了描述新域的区域信息,必须修改格式的规范。
另一方面,当使用数据库来同时管理静态图像数据和区域信息时,如果数据库软件不可用,那么区域信息既不能被添加也不能使用。而且当只从数据库中读取静态图像数据时,区域信息不会随静态图像数据一同读取,也就是说,构成不包括区域信息的静态图像数据。

发明内容
提出本发明是由于在描述和检索元数据时遇到上述问题,而且本发明的目的是允许在二进制数据中记录元数据,而对现有应用程序不造成任何影响。
本发明的另一个目的是以现有应用程序可以处理的格式提供记录有元数据的二进制数据。
本发明另一个目的是通过使用常规数据描述语言来描述元数据,从而允许使用数据描述语言的现有工具,简化兼容性应用程序的开发工作。
本发明另一个目的是从描述了元数据的二进制数据中抽取元数据,以便可以在诸如检索、引用、修改及类似处理过程中使用元数据。
本发明再一个目的是通过将诸如校验和之类的确认信息与元数据一同记录,并使用确认信息判别元数据,从而允许对元数据的有/无进行更精确地判别。
本发明另一个目的是通过在二进制数据中记录元数据及其大小,从而允许很容易地对记录有元数据的二进制数据进行判断。
本发明另一个目的是允许对静态图像数据添加区域信息,而对现有应用程序不造成任何影响。
本发明另一个目的是以现有应用程序可以处理的格式,提供记录有区域信息的静态图像数据。
本发明另一个目的是通过使用常规数据描述语言来描述区域信息,从而允许使用数据描述语言的现有工具,简化兼容性应用程序的开发工作。
本发明另一个目的是从区域信息描述所在的静态图像数据中抽取区域信息,以便在多种处理过程中使用区域信息。
本发明提供一种用于对记录在二进制数据上的元数据进行区别的数据处理方法,包括加载数据的加载步骤;从末尾开始检查在加载步骤所加载的数据、并且判断是否存在用预定的数据描述语言以正确格式描述的数据的判断步骤;以及基于判断步骤中的判断结果对包含在数据中的元数据进行区别的区别步骤。
本发明提供一种用于对记录在二进制数据上的元数据进行区别的数据处理装置,包括加载数据的加载装置;从末尾开始检查所述加载装置所加载的数据,并且判断是否存在用预定数据描述语言以正确格式描述的数据的判断装置;以及基于所述判断装置的判断结果对包含在数据中的元数据进行区别的区别装置。
本发明的其他特性和优点将结合附图在下面的描述中体现,其中相同的参考标记表示各图中的相同或相近部分。


附图是一个整体并构成了规范的一部分,附图与描述一道阐明了本发明的实施例并用于对本发明的原则进行解释。
图1是用于根据本发明第一实施例显示数据处理装置布局的框图;图2是用于根据第一实施例解释元数据记录过程的流程图;图3是用于根据第一实施例解释二进制数据中元数据记录状况的视图;图4是用于根据本发明第二实施例显示已记录元数据的判别/提取序列的流程图;图5是用于根据第二实施例解释元数据判别过程细节的流程图;图6显示了二进制数据的数据格式示例,其中XML数据作为元数据记录在二进制数据中;
图7显示了记录有元数据二进制数据的示例,其中元数据以正确的XML格式加以描述;图8是用于根据本发明第三实施例解释元数据记录过程的流程图;图9是用于根据第三实施例解释二进制数据中元数据记录状况的视图;图10是用于根据本发明第四实施例解释元数据判别过程细节的流程图;图11是第四实施例中二进制数据的数据格式示例,其中XML数据作为元数据记录在二进制数据中;图12是用于根据本发明第五实施例解释元数据记录过程的流程图;图13是用于根据第五实施例解释二进制数据中元数据记录状况的视图;图14是用于根据本发明第六实施例解释元数据判别过程细节的流程图;图15是第六实施例中二进制数据的数据格式示例,其中XML数据作为元数据记录;图16是用于根据本发明第七实施例解释区域信息添加过程的流程图;图17是用于根据第七实施例解释静态图像数据中区域信息记录状况的视图;图18是根据本发明第八实施例解释已记录区域信息判别/提取序列的流程图;图19是用于根据第八实施例解释区域信息判断过程细节的流程图;图20是第六实施例中静态图像数据的数据格式示例,其中SVG数据作为区域信息添加到静态图像数据中;图21是用于根据本发明第十实施例解释以数据格式生成区域信息的过程的流程图;图22A显示了分割成区域的图像示例;图22B是根据第十实施例显示一个区域信息列表数据格式示例的表格,该表格与图22A中所分割的区域相对应;图23是用于根据本发明第九实施例解释区域信息数据格式的视图;图24显示了以常规方法将元数据嵌入到二进制数据中的数据格式原理;图25显示了使用数据库管理二进制数据和元数据的常规方法的原理;图26显示了一个数据格式原理,在该数据格式中,作为元数据的区域信息嵌入到作为二进制数据的静态图像数据中;以及图27显示了使用数据库管理静态图像数据和区域信息的方法的原理。
具体实施例方式
下面参考附图对本发明优选实施例进行详细描述。
图1是用于根据第一实施例显示数据处理装置布局的框图。参考图1,参考标记100表示一个阅读器,例如该阅读器可以使用扫描装置读取图像。参考标记101表示一个输入部件,用户可以使用该部件输入指令和数据,而且该部件包括键盘和指点装置。参考标记102表示一个存储二进制数据和元数据的存储部件。通常硬盘用作存储部件102。参考标记103表示一个显示器,该显示器显示存储在存储部件102的二进制数据和由阅读器读入的图像数据。通常CRT显示装置或液晶显示装置用作显示器103。
参考标记104表示一个涉及到上述内置组件所有处理的CPU,ROM 105和RAM 106向CPU 104提供这些处理所需的程序、数据或工作空间。注意实现本实施例(将在稍后参考图2加以描述)处理序列的控制程序也存储在ROM 105中。当然,该控制程序可能存储在存储部件102中,并在CPU104执行程序时加载到RAM106中。
注意第一实施例的数据处理装置中除上述部件外还有许多其他部件,但这些部件不是本发明的关键,所以在此将不再进行详细描述。
在具有上述布局的数据处理装置中将元数据记录到二进制数据中的过程将在下面进行解释。图2是用于根据第一实施例解释元数据记录过程的流程图。
参考图2,由用户指定的二进制数据在步骤S1301加载到存储器(RAM 106)中。例如,在键盘上输入所需二进制数据文件的名称或用指点装置(如鼠标)点击相应二进制数据的图标来指定二进制数据。在步骤S1302中,由用户指定的描述元数据的XML文件被加载到存储器(RAM 106)中。该XML文件也是通过在键盘上输入所需二进制数据文件的名称或用指点装置(如鼠标)点击相应二进制数据的图标指定的。
在步骤S1303中检查描述元数据的XML文件是否是正确格式的XML数据。通过检查XML文件的描述格式是否满足要求(例如,标识的左右双亲是否正确配对,标识赋值格式是否正确等)来判别格式的正确性。注意还检查XML数据是否正确及其是否具有正确格式。通过检查可以判断XML数据是否正确,也就是说,XML数据是否以诸如DTD(文档类型定义)和其他格式加以描述。
如果在步骤S1303中判断出XML文件不是正确格式的XML数据,流程转向步骤S1305。在步骤S1305中,在显示器103上显示XML数据出错,然后结束处理过程。
另一方面,如果在步骤S1303中判断出XML文件是正确格式的XML数据,那么流程前进到步骤S1304。在步骤S1304中,通过将元数据连接到二进制数据末尾来记录元数据,该二进制数据是在步骤S1301中加载到存储器中的。然后,在步骤S1306输出记录有元数据的二进制数据,从而结束处理过程。注意根据在步骤S1306中输出的数据,将具有如图3所示数据结构的数据作为一个文件保存到存储部件102中。
图3是用于根据第一实施例解释二进制数据中元数据记录状况的视图。如图3所示,通过将以XML数据描述的元数据连接到二进制数据的末尾,在对其他应用程序不造成任何影响的情况下记录元数据。更具体地,由于二进制数据报头域的信息与连接元数据之前完全相同,所以如果例如二进制数据是图像数据,那么可以由常用的浏览器重新生成图像(所连接的元数据被忽略)。
另外,由于元数据以XML格式描述,如果有一个可以解释XML数据的工具,那么当提取出XML数据内容后,可以对元数据进行添加、修改、引用操作,这样可以保证很高的兼容性。注意XML数据内容的提取过程将在第二实施例中详细描述。
如上所述,根据第一实施例,当元数据以XML格式进行描述并且将XML数据连接到二进制数据的末尾时,那么元数据可以记录到现有的二进制数据中。
更具体地,根据第一实施例,将使用预定的数据描述语言以正确格式描述的元数据连接到二进制数据的末尾,那么可以将元数据记录到现有的二进制数据中,而对现有应用程序不造成任何影响。即,可以按现有应用程序能够处理的格式提供记录有元数据的二进制数据。当用现有数据描述语言描述元数据时,可以使用现有该数据描述语言的工具对元数据进行编辑、引用或其他类似操作,这样就节省了开发的额外工作。
在第一实施例中,已经解释了在二进制数据中记录元数据的方法。在第二实施例中,将解释元数据是否记录到二进制数据中的判别过程,以及在已记录元数据的情况下提取元数据的过程。注意在第二实施例中数据处理装置的布局与第一实施例(图1)的布局完全相同,所以在此将不再进行详细描述。
第一实施例中所述元数据是否记录到指定文件数据中的判别过程,以及提取已记录的元数据的过程将在下面进行解释。图4是根据第二实施例显示已记录数据判别/提取序列的流程图。在该实施例中,在显示器103上显示提取的元数据,但本发明并不限于这种特殊的输出模式。例如,熟悉本领域的技术人员可以将提取的元数据用于检索处理。
参考图4,在步骤S501中,根据用户指令指定一个文件,即要处理的数据,该文件将对是否记录有元数据进行判断。将要处理的数据是在步骤S501通过在键盘上输入二进制数据的文件名或使用指点装置(鼠标)指定相应的图标来确定的。
在步骤S502中,将判别以XML格式描述的元数据是否记录在指定文件数据中。步骤S502中的判别过程将在下面结合图5的流程图和图6的示意性视图加以解释。图5是用于根据第二实施例解释元数据判断过程细节的流程图。图6显示了二进制数据的数据格式的示例,其中XML数据作为元数据记录。
如在第一实施例中所解释的一样,需要处理的数据的数据格式如图6所示,在该格式中XML数据作为元数据记录。因此,元数据有/无的判断过程如下。
如图5所示,在步骤S1601中将步骤S501指定文件的全部数据加载到存储器(RAM 106)中。由于第一实施例中步骤S1306的数据输出是作为单个文件加以管理,所以全部数据可以由通用的文件管理系统读取。
在步骤S1602检查步骤S1601所加载的数据末尾是否有字符串″</PhotoXML>″。如果没有这样的字符串,流程转向步骤S1605。
另一方面,如果在将要处理的加载的数据末尾有字符串″</PhotoXML>″,流程转向S1603。在步骤S1603检查在字符串″</PhotoXML>″的前面是否有字符串″<PhotoXML>″,并且还要确认由这些字符串所限定的数据是否以正确的XML格式加以描述。此时,还将进一步检查数据是否是正确的XML数据。数据是否具有正确格式以及数据是否正确,可以按照第一实施例(步骤S1303)中的解释进行判别。
在步骤S1603中如果确认数据具有正确格式,流程转向步骤S1604。在步骤S1604中,对元数据进行记录,然后结束处理过程。另外,在步骤S1603中如果确认格式不正确,那么流程转向S1605。在步骤S1605中,不记录元数据。即,如果在步骤S1602中确定在感兴趣的二进制数据末尾没有字符串″</PhotoXML>″,或者在步骤S1603中确定没有字符串″<PhotoXML>″,或者在步骤S1603中确定由这些字符串所限定的描述内容不正确,流程将转向步骤S1605,以便确定在将要处理的数据中不记录元数据。
按这种方法,结束对元数据的判别。
回过头参考图4中的流程图,如果是以图5中流程图中记录元数据来结束处理过程,那么流程转向步骤S503。在步骤S503中,将显示基于由字符串″<PhotoXML>″和″</PhotoXML>″所限定的已记录元数据的内容,然后结束处理过程。另外,如果在步骤S502中确定不记录元数据,那么结束处理过程。
图7显示了一个带有元数据的二进制数据的示例,也就是说,以正确XML格式描述的元数据记录在二进制数据中。在图7中所示的元数据记录了图像中诸如“像机”、“日期”、“标题”、“关键字”以及类似信息。因此,通过按上述序列确定的元数据,可以在检索和其他程序中使用这些信息。另外,可以在元数据中记录拍摄图像时的诸如“快门速度”、“曝光时间”及其它信息,并且通过使用这些信息可以自动修正图像。
如上所述,根据第二实施例,可以通过检查XML数据是否以正确格式在数据的末尾加以描述,从而判断是带有元数据的二进制数据还是普通二进制数据。如果找到元数据,那么可以显示元数据。
更具体地,根据第二实施例,记录有元数据的二进制数据可以与未记录有元数据的二进制数据相区别,而且可以提取所记录的元数据。因此,当使用现有数据描述语言描述元数据时,可以在使用元数据的检索处理中使用数据描述语言现有的工具,这样可以节省开发的额外工作。
在上述每一个实施例中,XML数据用作元数据。但是,本发明并不局限于这种特殊数据。例如,可以使用诸如SGML、HTML以及其他数据描述语言。而且,静态图像数据、动态图像数据、音频数据及其他类似数据可以用作二进制数据。
在第一实施例中,XML格式的元数据被简单地连接在二进制数据的末尾。在第三实施例中,元数据及其校验和被添加到二进制数据的末尾。按这种方式,元数据可以记录在现有的二进制数据中而对现有应用程序不造成任何影响,而且元数据的有/无可以更可靠的判断。
注意在第三实施例中数据处理装置的布局与第一实施例(图1)的布局完全相同,在此将不再进行详细描述。
图8是用于根据本发明第三实施例显示元数据记录过程的流程图。
参考图8,在步骤S2301中用户指定的二进制数据加载到存储器(RAM 106)中。在这种情况下,通过在键盘上输入所需二进制数据文件名,或用指点装置(如鼠标)指定对应二进制数据的图标来指定二进制数据。在步骤S2302中,用户指定的用于描述元数据的XML文件被加载到存储器(RAM 106)中。该XML文件也可以通过在键盘上输入文件名或用指点装置(如鼠标)指定相应的图标来指定。
在步骤S2303中,检查描述元数据的XML文件是否是正确格式的XML数据。通过检查XML文件的描述格式是否满足条件(如标识的左右双亲是否正确配对,标识赋值格式是否正确等)来判断格式的正确性。注意还要检查XML数据是否正确以及是否具有正确格式。XML数据是否正确可以通过检查加以判断,也就是,XML数据是否按诸如DTD(文档类型定义)或其他格式加以描述。
在步骤S2303中,如果判断XML文件不是正确格式的XML数据,流程转向步骤S2305。在步骤S2305中,显示器103显示XML数据出错,然后结束处理过程。
另外,在步骤S2303中,如果判断XML文件是正确格式的XML数据,流程转向步骤S2304。在步骤S2304中,计算感兴趣的元数据的校验和。校验和是由元数据唯一确定的数值(例如,元数据大小(字节数)、字符数、单词数、行数、标识限定的项数等)。如果同时使用两个或更多的数值,那么可以得到具有更高精确性的校验和。另外,用作校验和的数值(或计算校验和的方法)可以用来描述元数据判别过程中的元数据,该判别过程将在稍后第四实施例中描述。
在步骤S2306中,元数据和校验和记录在步骤S2301所加载的二进制数据末尾。另外,在步骤S2307中,输出通过记录元数据而取得的二进制数据,然后结束处理过程。
图9是根据本实施例解释二进制数据中元数据记录状况的视图。如图9所示,校验和以及在XML数据中描述的元数据连接到二进制数据的末尾。按这种方法,可以记录元数据而对其他应用程序不造成任何影响。更具体地,假定二进制数据是标准JPEG图像数据,即使元数据添加到图像数据的末尾,该图像也可以由商用的图像应用程序(该应用程序不能识别元数据)载入而不造成任何问题。即,由于二进制数据中报头域的信息与连接元数据之前完全相同,例如,如果二进制数据图像数据,可以由常用的浏览器再生该图像(忽略连接的元数据)。
另外,由于元数据以XML格式描述,如果能解释XML数据的工具可用,那么当提取出XML数据内容时,可以对元数据进行添加、修改和引用等操作,这样可以确保很高的兼容性。注意按这种方式对所记录XML数据内容的提取过程将在第四实施例中详细描述。
如上所述,根据第三实施例,当元数据以XML格式描述,并且该XML数据连接到二进制数据的末尾时,元数据可以记录在现有二进制数据中。
更具体地,根据第三实施例,将用预定的数据描述语言以正确格式描述的元数据连接到二进制数据的末尾,元数据可以记录到现有的二进制数据中而对现有应用程序不造成任何影响。即,可以按现有应用程序所能处理的格式,提供记录有元数据的二进制数据。当使用现有数据描述语言来描述元数据时,可以使用该数据描述语言的现有工具对元数据进行编辑、引用以及其他操作,这样就节省了开发的额外工作。
在上述实施例中,对XML数据的连接加以检查,但是可以用检查数据是否正常构成来代替。而且,元数据格式不局限于XML格式,也可以使用诸如SGML、HTML以及其他格式。
在第三实施例中,已经解释了在二进制数据中记录元数据的方法。在第四实施例中,将解释元数据是否记录到二进制数据中的判别过程,以及在已记录元数据的情况下提取元数据的过程。注意在第四实施例中数据处理装置的布局与第一实施例(图1)的布局完全相同,在此将不再进行详细描述。
对第三实施例中所解释的元数据是否记录在指定文件的数据中的判别过程,以及所记录元数据的提取过程将在下面进行解释。第四实施例的元数据确定/提取序列与第二实施例(图4)所示的顺序完全相同,并且将参照图4加以解释。在本实施例中,显示器103显示提取出来的元数据,但本发明并不局限于这种特定的输出模式。例如熟悉本领域的用户可以将提取的元数据用于检索处理。
参考图4,在步骤S501中,根据用户指令指定一个文件,即要处理的数据,该文件将对是否记录有元数据进行判断。将要处理的数据是在步骤S501通过在键盘上输入二进制数据的文件名或使用指点装置(鼠标)指定相应的图标来确定的。
在步骤S502中,将判断是否以XML格式描述的元数据被记录在指定文件的数据中。步骤S502中的判断过程细节将在下面结合图10的流程图和图11的示意性视图加以解释。图10是用于根据第四实施例解释元数据判断过程细节的流程图。图11显示了二进制数据的数据格式的示例,在该格式中XML数据作为元数据记录。
如在第三实施例中所解释的一样,将要处理的数据的数据格式如图11所示,在该格式中XML数据作为元数据记录。因此,元数据有/无的判断过程如下。
如图10所示,在步骤S2601中将在步骤S501指定文件的全部数据(将要处理的所有数据)加载到存储器(RAM 106)中。由于在第三实施例中步骤S2307的数据输出是作为单个文件加以管理,所以全部数据可以由通用的文件管理系统读取。
在步骤S2602中检查在步骤S2601所加载的数据末尾是否有字符串″</PhotoXML>″。如果没有这样的字符串,流程转向步骤S2608,并且在将要处理的数据中不记录元数据。
另一方面,如果在将要处理的所加载数据末尾有字符串″</PhotoXML>″,流程转向S2603。在步骤S2603检查在字符串″</PhotoXML>″的前面是否有字符串″<PhotoXML>″,并且还要确认由这些字符串所限定的数据是否以正确的XML格式加以描述。此时,还将进一步检查数据是否是正确的XML数据。数据是否具有正确的格式以及数据是否正确可以按照第三实施例(步骤S2303)中的解释进行判别。
在步骤S2603中如果确认数据具有正确的格式,流程转向步骤S2604。在步骤S2604中载入字符串″<PhotoXML>″之前立即记录校验和,并且作为校验和1保持。接下来,在步骤S2605中,计算已经确认具有正确格式的元数据的计算总数,并作为校验和2保持。注意计算校验和的方法与第三实施例中所述连接元数据的过程中使用的方法相同。例如,当“字符数”用作连接元数据的校验和时,本过程中将“字符数”作为校验和加以计算。
在步骤S2606中,计算校验和1和2,如果两者彼此相同,流程转向步骤S2607以记录元数据。另外,如果两个校验和彼此不相同,流程转向步骤S2608。即,如果在步骤S2602中确定感兴趣的二进制数据末尾没有字符串″</PhotoXML>″,或者在步骤S2603中确定没有字符串″<PhotoXML>″,或者在步骤S2606中确定两个校验和彼此不相同,流程将转向步骤S2608,以便在将要处理的数据中不记录元数据。
按这种方法,结束对元数据的判别。
回过头参考图4中的流程图,如果是以图10中流程图中记录元数据来结束处理过程,流程转向步骤S503。在步骤S503中,将显示基于由字符串″<PhotoXML>″和″</PhotoXML>″所限定的已记录元数据的内容,然后结束处理过程。另外,如果在步骤S502中确定不记录元数据,那么处理过程结束。
如上所述,根据第四实施例,可以通过检查XML数据是否在数据的末尾以正确格式对加以描述,从而判断是带有元数据的二进制数据还是普通二进制数据。如果找到元数据,那么显示元数据。
更具体地,根据第四实施例,记录有元数据的二进制数据可以与未记录有元数据的二进制数据相区别,而且提取所记录的元数据。因此,当使用现有数据描述语言描述元数据时,可以在使用元数据的检索处理中使用数据描述语言现有的工具,这样可以节省开发的额外工作。
根据上述实施例,由于提供了诸如校验和和其他类似的判别元数据的检查机制,所以可以更精确地判别元数据。
在上述实施例中,XML数据用作元数据。但是,本发明并不局限于这种特殊数据。例如,可以使用诸如SGML、HTML以及其他数据描述语言。当然,根据所使用的数据描述语言不同,所使用的字符串(在上述实施例中使用的<PhotoXML>和</PhotoXML>)和判别正确性的方法也作相应变化,并且不特定限制于上述实施例中的方法。另外,静态图像数据、动态图像数据、音频数据及其他类似数据可以用作二进制数据。
如在第三实施例中所解释的,可以使用多种计算总数。另外,可以在元数据(上述实施例中的XML数据)的实体中对校验和模式(如“字符总数”或其他类似的东西)加以描述,并且根据对数据判断的描述对校验和加以计算。
在第四实施例中,使用校验和对元数据的有/无加以判断。另外,通过确认XML自身的正确性(如正常构成的合法性),可以对校验和实现更为精确的判断。
在第三实施例中,保存用于精确判断元数据有/无的校验和。在该实施例中,使用大小信息和标识代码更加精确地判断元数据有/无。
注意在第五实施例中数据处理装置的布局与第一实施例(图1)的布局完全相同,在此将不再进行详细描述。
图12是用于根据本发明的第五实施例显示元数据记录过程的流程图。
参考图12,在步骤S3301中用户指定的二进制数据加载到存储器(RAM 106)中。在这种情况下,通过在键盘上输入所需二进制数据文件名,或用指点装置(如鼠标)指定对应二进制数据的图标来指定二进制数据。在步骤S3302中,用户指定的用于描述元数据的XML文件被加载到存储器(RAM 106)中。该XML文件也可以通过在键盘上输入文件名或用指点装置(如鼠标)指定相应的图标来指定。
在步骤S3303中检查描述元数据的XML文件是否是正确格式的XML数据。通过检查XML文件的描述格式是否满足条件(如标识的左右双亲是否正确配对,标识赋值格式是否正确等)来判断格式的正确性。注意还检查XML数据是否正确以及是否具有正确格式。XML数据是否正确可以通过检查加以判别,也就是,XML数据是否按诸如DTD(文档类型定义)或其他格式加以描述。
在步骤S3303中,如果判断出XML文件不是正确格式的XML数据,流程转向步骤S3305。在步骤S3305中,显示器103显示XML数据出错,然后结束处理过程。
另外,在步骤S3303中,如果判断出XML文件是正确格式的XML数据,流程转向步骤S3304。在步骤S2304中,计算感兴趣的元数据大小。在步骤S3306中,步骤S3302所加载的元数据和步骤S3304计算的大小信息,通过预定的标识代码连接并记录到在步骤S3301所加载的二进制数据末尾。另外,在步骤S3307中,输出通过记录元数据而获取的二进制数据,并且具有数据结构(将在下面参考图13加以解释)的数据作为一个文件存储到存储部件102中。
将在下面解释根据第五实施例把元数据记录到二进制数据中的方法。图13是用于根据第五实施例解释二进制数据中元数据记录状况的视图。在第五实施例中,如图13所示,预定的4字节标识代码(本实施例的0x4C4D5850)连接到二进制数据的末尾,随后连接以XML格式描述的元数据,并且将作为大小信息的4字节数值数据连接到元数据之后。
按这种方法,可以记录元数据而对其他应用程序不造成任何影响。更具体地,假定二进制数据是标准的JPEG图像数据,即使元数据添加到图像数据的末尾,该图像也可以由商用的图像应用程序(该应用程序不能识别元数据)载入,而不造成任何问题。即,由于二进制数据中报头域的信息与连接元数据之前完全相同,例如,二进制数据图像数据,可以由常用的浏览器再生该图像(忽略连接的元数据)。
另外,由于元数据以XML格式描述,如果能解释XML数据的工具可用,那么当提取出XML数据内容时,可以对元数据进行添加、修改和引用等操作,这样可以确保很高的兼容性。注意按这种方式所记录的XML数据内容的提取过程,将在第六实施例中详细描述。
如上所述,根据第五实施例,由于预定的数据(标识)被添加到用预定数据描述语言以正确格式描述的元数据(XML数据)的报头中,并且表明元数据大小的数据被添加到元数据的末尾,这样可以记录元数据而对其他应用程序不造成任何影响。即,可以按现有应用程序处理的格式提供记录有元数据的二进制数据。
通过添加到XML数据的大小信息和标志,可以更加容易和迅速地判断元数据的有/无,并且可以提取元数据。
当使用现有数据描述语言来描述元数据时,可以使用该数据描述语言的现有工具对元数据进行编辑、引用和类似操作,这样就可以节省开发的额外工作。
注意在本实施例中对XML数据的正确性加以检查,但是可以用检查数据是否正常构成来代替。而且,元数据格式不局限于XML格式,也可以使用诸如SGML、HTML以及其他格式。另外可以用little-endian或big-endian二进制格式或文本格式来表示大小信息。
在第五实施例中,已经解释了在二进制数据中记录元数据的方法。在第六实施例中,将解释元数据是否记录到二进制数据中的判别过程,以及在已记录元数据的情况下提取元数据的过程。注意在第六实施例中数据处理装置的布局与第一实施例(图1)的布局完全相同,在此将不再进行详细描述。
对第五实施例中所解释的元数据是否记录在指定文件的数据中的判别过程,以及所记录元数据的提取过程将在下面进行解释。第六实施例的元数据确定/提取顺序与第二实施例(图4)所示的顺序完全相同,并且将参照图4加以解释。在本实施例中,显示器103显示提取出来的元数据,但本发明并不局限于这种特定的输出模式。例如那些相当熟悉本领域的技术人员可以将提取的元数据用于检索处理。
参考图4,在步骤S501中,根据用户指令指定一个文件,即要处理的数据,该文件将对是否记录有元数据(将进行处理的数据)进行判断。将要处理的数据是在步骤S501通过在键盘上输入二进制数据的文件名或使用指点装置(鼠标)指定相应的图标来确定的。
在步骤S502中将判断是否以XML格式描述的元数据被记录在指定文件的数据中。步骤S502中判断过程的细节将在下面结合图14的流程图和图15的示意性视图加以解释。图14是用于根据第四实施例解释元数据判断过程细节的流程图。图15显示了二进制数据的数据格式的示例,在该格式中XML数据作为元数据记录。
如在第五实施例中所解释的一样,将进行处理的数据的数据格式如图15所示,在该格式中XML数据作为元数据记录。在本实施例中,假定每一大小信息和标志代码为4字节。在这种二进制数据中元数据有/无的判断过程如下。
如图14所示,在步骤S3601中,将步骤S501指定文件的全部数据(将要处理的所有数据)加载到存储器(RAM 106)中。由于在第五实施例中步骤S3307数据输出是作为单个文件加以管理,所以全部数据可以由通用的文件管理系统读取。
在步骤S3602中,需要处理的加载数据末尾的4字节被判断为元数据的大小信息,并保存在变量S中。如果元数据以图15中所示的格式记录,标志代码将以4字节大小记录,标志代码具有报头位置,该报头位置通过从将要处理的数据末尾到头部的8(字节)添加到变量S而获得。因此,该4字节从将要处理的数据末尾的第(S+8)字节读取,并且在步骤S3603中与标志代码(0x4C4D5850)进行比较。如果两者彼此相同,流程转向步骤S3604;否则流程转向步骤S3607。
在步骤S3604,判断标志代码是否存在,从将要处理的数据末尾的第(S+4)字节提取S字节并判断为元数据。在步骤S3605中,检查提取的元数据是否遵循描述语言的规则。例如,如果元数据按XML格式描述,将检查其内容的正确性(或正常构成的合法性)。在这种情况下,例如,可以使用第二实施例中步骤S1602和S1603,或者第四实施例中步骤S2602和S2603的处理过程。如果元数据遵循这些规则,流程转向步骤S3606并以记录元数据结束。
另外,如果在步骤S3603中判断将要处理的数据末尾的第(S+8)字节提取的4字节数据与标志代码(0x4C4D5850)不一致,或者在步骤S3605中判断作为元数据提取的内容不遵循描述语言的规则,流程转向步骤S3607。在步骤S3607中以不记录元数据结束。
按这种方法,结束对元数据的判别。
回过头参考图4中的流程图,如果是以图14中流程图中记录元数据来结束处理过程,流程向步骤S503。在步骤S503中,将显示基于在步骤S3604提取的S字节的数据(在本实施例中,数据以XML格式描述)所限定的已记录元数据的内容,然后结束处理过程。另外,如果在步骤S502中确定不记录元数据,那么处理过程结束。
如上所述,根据第六实施例,可以通过基于在将要处理的数据的末尾记录的数据所指定的大小从将要处理的数据中提取数据,并且通过检查所提取的数据是否以描述语言(如XML)的正确格式判断元数据的有/无。因此,元数据可以更加容易地加以判别和提取。
如果判断存在元数据,那么显示元数据。
根据第六实施例,记录有元数据的二进制数据可以与未记录有元数据的二进制数据相区别,而且可以提取记录的元数据。因此,当使用现有的数据描述语言来描述元数据时,可以在使用元数据的检索处理中使用数据描述语言现有的工具,这样可以节省开发的额外工作。
在上述实施例中,XML数据用作元数据。但是,本发明并不局限于这种特殊数据。例如,可以使用诸如SGML、HTML以及其他数据描述语言。而且,静态图像数据、动态图像数据、音频数据及其他类似数据可以用作二进制数据。
第五实施例在元数据之前立即插入一个表明元数据位置的标志代码,而第六实施例利用该标志代码提取元数据。但是,并不总需要标志代码,也可以省略。如果不插入标志代码,在第六实施例中将简单地跳过步骤S3606中标志代码的判定过程,这样可以得到同样的判定结果。但是,在这种情况下,用于判断是否有元数据的判定程序的工作量将增加。
上述第一至第六实施例中,每个实施例都允许在二进制数据中添加元数据而对现有应用程序不造成任何影响。在第七实施例中,在下面将描述一个将静态图像数据用作二进制数据,将代表静态图像数据区域信息的数据作为元数据的案例。
注意在第七实施例中数据处理装置的布局与第一实施例(图1)的布局完全相同,在此将不再进行详细描述。存储部件102特别用于存储静态图像数据和区域信息。
图16是用于根据本发明第七实施例解释区域信息添加过程的流程图。
参考图16,在步骤S4301中,用户指定的二进制数据被加载到存储器(RAM 106)中。例如,通过在键盘上输入所需静态图像数据文件名,或用指点装置(如鼠标)指定对应静态图像数据的图标来指定二进制数据。在步骤S4302中,用户指定的用于描述区域信息的SVG文件被加载到存储器(RAM 106)中。该SVG文件也可以通过在键盘上输入文件名,或用指点装置(如鼠标)指定相应的图标来指定。
在步骤S4303中,检查描述区域信息的SVG文件是否是正确格式的SVG数据。通过检查SVG文件的描述格式是否满足条件(如标识的左右双亲是否正确配对,标识赋值格式是否正确等)来判断格式的正确性。
在步骤S4303中,如果判断出SVG文件不是正确格式的SVG数据,流程转向步骤S4305。在步骤S4305中,显示器103显示SVG数据出错,然后结束处理过程。
另外,在步骤S4303中,如果判断出SVG文件是正确格式的SVG数据,流程转向步骤S4304。在步骤S4304中,添加区域信息是通过将SVG文件中的数据(区域信息)连接到于步骤S4301加载至存储器的静态图像数据的末尾进行的。然后,在步骤S4306中,输出记录有区域信息的静态图像数据,然后结束处理过程。注意根据步骤S4306中输出的数据,将具有图17所示数据结构的数据作为一个文件存储到存储部件102中。
图17是用于根据第七实施例解释静态图像数据中区域信息记录状况的视图。如图17所示,将作为区域信息的SVG数据连接到静态图像数据的末尾,可以记录区域信息而对其他应用程序不造成任何影响。更具体地,由于静态图像数据中报头域的信息与连接区域信息之前完全相同,所以可以由常用的浏览器重新生成该图像(忽略连接的区域信息)。
另外,由于区域信息是SVG数据,如果能解释SVG数据的工具可用,那么提取出SVG数据内容时,可以对区域信息进行添加、修改和引用等操作,这样可以确保很高的兼容性。注意SVG数据内容的提取过程将在第八实施例中进行详细描述。
如上所述,根据第七实施例,当用预定的数据描述语言以正确格式描述的区域信息连接到静态图像数据的末尾时,区域信息可以添加到现有静态图像数据中。即,可以按现有应用程序能进行处理的格式提供添加有区域信息的静态图像数据。由于区域信息和静态图像数据可以作为单独文件加以管理,所以对区域信息的管理是很容易的。当使用现有数据描述语言来描述区域信息时,可以使用该数据描述语言的现有工具对区域信息进行编辑、引用以及其他操作,这样就节省了开发的额外工作。
注意静态图像数据的格式不局限于某一特定格式(可以使用诸如SGML、HTML以及其他格式)。
在第七实施例中,已经解释了在静态图像数据中记录区域信息的方法。在第八实施例中,将对区域信息是否记录到静态图像数据中的判别过程,以及在已记录区域信息的情况下提取区域信息的过程进行解释。注意在第八实施例中数据处理装置的布局与第一实施例(图1)的布局完全相同,在此将不再进行详细描述。
第七实施例中所解释的区域信息是否记录在指定文件数据中的判别过程,以及提取所记录区域信息的过程在下面将解释。图18根据本发明第八实施例解释所记录区域信息判别/提取序列的流程图。在本实施例中,显示器103显示提取出来的区域信息,但本发明并不局限于这种特定的输出模式。例如熟悉本领域的用户可以将提取的区域信息用于诸如图像中对象识别等多种程序。
参考图18,在步骤S4501中,根据用户指令指定一个文件,即要处理的数据,该文件将对是否记录有区域信息进行判断。将要处理的数据是在步骤S4501通过在键盘上输入静态图像数据的文件名和使用指点装置(鼠标)指定相应的图标确定的。在本实施例中,为了将正常的静态图像数据与在第七实施例中所述的添加了区域信息的静态图像数据区别开来,前者将称为静态图像数据,而后者将称为将要处理的数据。
在步骤S4502中,判别以SVG格式描述的区域信息是否被添加到指定文件的数据中。在步骤S4502中,判别过程的细节将在下面结合图19的流程图和图20的示意性视图加以解释。图19是用于根据第八实施例解释区域信息判别过程细节的流程图。图20显示了静态图像数据的数据格式的示例,在该格式中SVG数据作为区域信息记录。
如在第七实施例中所解释的一样,将要处理的数据的数据格式如图20所示,在该格式中SVG数据作为区域信息记录。因此,区域信息的有/无判断过程如下。
如图19所示,在步骤S4601中将在步骤S4501指定文件的全部数据(将要处理的全部数据)加载到存储器(RAM 106)中。由于在第七实施例中步骤S4306数据输出是作为单个文件加以管理,所以全部数据可以由通用文件管理系统读取。
在步骤S4602中,检查步骤S4601所加载的数据末尾是否有字符串″</Area_Info>″。如果没有这样的字符串,流程转向步骤S4605。
另一方面,如果在将要处理的加载的数据末尾有字符串″</Area_Info>″,流程转向S4603。在步骤S4603检查在字符串″</Area_Info>″的前面是否有字符串″<Area_Info>″。按这种方法,检查由字符串″<Area_Info>″和″</Area_Info>″限定的数据,如SVG数据,是否存在。并且通过检查标志配对情况来判断″<Area_Info>″和″</Area_Info>″限定的数据是否是正确的SVG数据。
按这种方法,检查在将要处理的数据末尾是否具有SVG数据,并且检查是否正确。如果SVG数据的存在性和正确性得到确认,流程转向步骤S4604,在步骤S4604中,添加区域信息(具有正确的SVG数据)然后结束处理过程。另一方面,如果在步骤S4602或S4603中判断出没有SVG数据或者SVG数据不正确,流程转向步骤S4605。在步骤S4605中,不添加区域信息(具有不正确的SVG数据)然后结束处理过程。
按这种方法,结束对区域信息的判别。
回过头参考图18中的流程图,如果是以图19中流程图中记录区域信息来结束处理过程,那么流程转向步骤S4503。在步骤S4503中,将显示基于由字符串″<Area_Info>″和″</Area_Info>″所限定的SVG数据中所记录的区域信息内容,然后结束处理过程。另一方面,如果在步骤S4502中确定不记录区域信息,那么处理过程结束。
如上所述,根据第八实施例,基于SVG规则可以将带有区域信息的静态图像数据与正常的静态图像数据相区别,并且对于添加了区域信息的静态图像数据,可以使用其区域信息。在本实施例中,可以显示基于SVG数据的内容,但SVG数据可以用于其他多种目的。例如,当点击某一图像时,将保存包括点击点在内的区域。另外,SVG数据可以用作某种元数据来搜索具有特殊形状或颜色的区域。
由于现有数据描述语言所描述的SVG数据被用作区域信息,所以可以在使用元数据的检索处理中使用数据描述语言现有的工具,这样可以节省开发的额外工作。
在上述实施例中,SVG数据被用于描述区域信息,但是,本发明并不局限于这种特殊数据。例如,可以使用诸如SGML、HTML以及其他数据描述语言。
在第七和第八实施例中,作为元数据的SVG数据添加到作为二进制数据的静态图像数据末尾。但是,如第三至第六实施例中所述,可以记录SVG数据的校验和或标志代码以及SVG数据的大小信息,并且使用这些信息可以提高对SVG数据有/无判断的可靠性。
下面将解释添加到静态图像数据中区域信息的格式。第九实施例将给出一个添加到静态图像数据中区域信息的格式示例,在该实施例中,每一区域都由表明区域号的索引信息来表示。即,索引信息代表赋给由区域分割而获得的每一区域的专有区域号。基于此索引信息,通过记录与静态图像中像素所对应的区域号来构成区域信息。
注意每一像素对应的区域信息的保存方式与静态图像数据中像素的颜色信息的保存方式相同。即,在数据格式中每一像素对应的颜色信息被区域信息所取代。然后,表明区域信息起点和终点的标志(如″<Area_Info>″和″</Area_Info>″)添加到所获取的区域信息前后。
图23是用于根据本发明第九实施例解释区域信息数据格式的视图。在图23中,区域A1和A2作为区域分割结果而抽取出来。在这种情况下,下面的位图数据可以用作区域信息。更特别的是,一个表明区域号不存在的数值(在本实施例中为“0”)被赋给区域A1和A2之外的区域所对应的像素数据。将表明为A1和A2的区域号分别赋给属于区域A1和A2的像素数据。注意每一区域可以近似认为是矩形、多边形、圆形、椭圆形或其他类似形状。按这种方式,获得作为位图数据的区域号,就可以获得任意像素的区域号。因此,当点击某一图像的任意区域时,具有同一区域号的所有像素作为由鼠标指针指定的像素加以选择。使用这一特性,可以实现剪辑任意区域这一功能。
在第十实施例中,将解释区域信息数据格式的另一个实施例。在第十实施例的向静态图像数据添加区域信息的方法中,每一区域由二进制位图数据和表明该矩形位置的大小的数据集合表示,其中二进制位图数据表明在最小矩形限定的区域内部/外部。
图21是用于根据本发明第十实施例解释以数据格式生成区域信息过程的流程图。图22A显示了已分割成区域的图像示例,图22B是根据第十实施例显示一个区域信息列表数据格式示例的表格,该表格与图22A中所分割的区域相对应。下面将参照这些附图给出解释。
在步骤S4801中,一幅静态图像经过图像分割,并且为每一个区域赋予了作为索引的专有区域号。注意区域分割可以自动或手工完成。图22A显示了这样一种状况,其中三个区域作为区域分割结果被抽取出来,并且给这些区域赋予了从A1到A3的区域号(索引)。
在步骤S4802中,检查区域是否是未经步骤S4803至步骤S4806处理的区域,如果找到未经处理的区域,流程转向步骤S4803。步骤S4803至步骤S4806的处理过程用于获取感兴趣区域的位图数据、位置和大小。
在步骤S4803,获取感兴趣区域X和Y轴的最大和最小值。在步骤步骤S4804,具有在步骤S4803所获取坐标的矩形S以其四个顶点限定感兴趣的区域。在步骤S4805,通过二值化获取二进制位图数据,也就是说,检查像素是否在由步骤S4804构成的矩形S所限定的区域内。
在步骤S4806,左上顶点的坐标位置(矩形位置)和矩形S的X和Y轴大小(矩形大小)根据矩形S的四个顶点坐标加以计算,并且将获取的矩形信息、矩形大小和二进制位图数据作为区域信息添加到区域信息列表中。
例如,如果感兴趣的区域是A1,在步骤S4803至S4804获取限定区域A1的矩形。在步骤S4605,通过在表明像素位于矩形内部的位置置“1”,以及在表明像素位于矩形外部的位置置“0”来生成二进制位图数据。另外,在步骤S4806中,获取矩形的位置(a1的坐标)和大小(X1和Y1),并且将其与所述二进制位图数据一同添加到区域信息列表中,如图22B所示。
对于区域A2和A3重复这些过程,如果在步骤S4802判断出该图像的所有区域都处理完毕,那么结束该处理过程。
在上述序列中,包含二进制位图数据以及生成表明矩形位置和大小的数据的集合信息,保存在如图22B所示的列表格式中,这样就生成了区域列表,其中二进制位图数据表明在每一分割区域的最小矩形所限定的区域内部/外部。将标志(如″<Area_Info>″和″</Area_Info>″)添加到区域列表的前后,就可以生成在上述实施例中使用的区域信息。按这种方式,在第十实施例中获得表明在区域内部/外部的位图数据。因此,根据执行区域单元的处理过程,当数据以第九实施例中的格式保存时,必须通过扫描图像而获取构成区域的像素集合。但是,当使用表明在区域内部/外部的位图数据时,无需通过扫描图像获取构成区域的像素集合。
在第十实施例中,使用限定区域的矩形,但也可以用其他多边形或曲线来表示区域。
如上所述,根据本发明,可以将元数据记录在现有二进制数据中而对现有应用程序不造成任何影响。即,可以按现有应用程序所能处理的格式提供记录有元数据的二进制数据。
另外,根据本发明,当使用现有的数据描述语言来描述元数据时,可以使用该数据描述语言的现有工具,从而可以很容易地开发兼容性应用程序。
另外,根据本发明,可以从元数据描述所在的二进制数据中提取元数据,并且可以在检索、引用、修改以及其他处理过程中使用元数据。
而且,根据本发明,诸如校验和等确认信息与元数据一同记录,并且通过使用这些确认信息来判断元数据有/无,这样可以对元数据进行更精确地判断。
另外,根据本发明,由于元数据的大小与元数据一同记录在二进制数据中,元数据描述所在的二进制数据可以很容易地判断。
另外,根据本发明,可以将区域信息记录在静态图像数据中而对现有应用程序不造成任何影响。
而且,根据本发明,可以按现有应用程序所能处理的格式提供记录有区域信息的静态图像数据。
另外,根据本发明,由于使用通用数据描述语言来描述区域信息,那么可以使用该数据描述语言的现有工具,并且很容易开发兼容性应用程序。
另外,根据本发明,可以很容易地从区域信息描述所在的静态图像数据中提取区域信息,并且可以在多种处理程序中使用区域信息。
而且,本发明可以应用到包含多个部件或单个部件的系统中。在执行本系统或本发明所定义的处理过程的应用程序所得到的案例中可以使用本发明。
本发明可以在不背离其精神和范围的前提下,具有许多明显地广泛的不同实施例,可以理解在所附权利要求定义的范围内,本发明并不限于这些特定实施例。
权利要求
1.一种用于对记录在二进制数据上的元数据进行区别的数据处理方法,包括加载数据的加载步骤;从末尾开始检查在加载步骤所加载的数据、并且判断是否存在用预定的数据描述语言以正确格式描述的数据的判断步骤;以及基于判断步骤中的判断结果对包含在数据中的元数据进行区别的区别步骤。
2.根据权利要求1的方法,还包括当在区别步骤中区别出元数据时,提取和输出区别出来的元数据的步骤。
3.根据权利要求2的方法,其中输出步骤包括基于提取的元数据进行显示的输出步骤。
4.根据权利要求1的方法,其中输出步骤包括将提取的元数据提供给用于处理预定的数据描述语言的工具的步骤。
5.根据权利要求1的方法,其中区别步骤包括用于检验在数据的末尾是否存在用预定数据描述语言指定的结束字符串的检验步骤;当存在结束字符串时,向数据的首部搜寻用预定数据描述语言指定的开始字符串的搜寻步骤;当在搜寻步骤找到开始字符串时,检查开始和结束字符串之间的数据是否具有预定数据描述语言下的正确格式的检查步骤。
6.根据权利要求5的方法,其中检查步骤包括还检查是否满足作为预定数据描述语言的正确性的步骤。
7.根据权利要求1的方法,其中判断步骤包括从末尾开始对在加载步骤中加载的数据进行检查以判断是否存在用预定的数据描述语言以正确格式描述的数据的第一判断步骤;当在第一判断步骤判断出存在以预定格式描述的数据时,基于以预定格式描述的数据生成确认信息的生成步骤;用于将在生成步骤生成的确认信息与存储在在加载步骤所加载的数据中的以预定格式描述的数据的预定位置的确认信息进行比较的比较步骤;以及基于比较步骤的比较结果判断以预定格式描述的数据是否是元数据的第二判断步骤。
8.根据权利要求7的方法,其中生成步骤包括生成多种确认信息的步骤。
9.根据权利要求7的方法,其中生成步骤包括生成由包含在以预定格式描述的数据中的预定信息所指示的类型的确认信息的生成步骤。
10.根据权利要求7的方法,其中存储着确认信息的预定位置紧临在以预定格式描述的数据之前。
11.根据权利要求7的方法,还包括当在区别步骤区别出元数据时,提取和输出区别出的元数据的输出步骤。
12.根据权利要求11的方法,其中输出步骤包括基于提取的元数据进行显示的步骤。
13.根据权利要求11的方法,其中输出步骤包括将提取的元数据提供给用于处理预定的数据描述语言的工具的步骤。
14.根据权利要求7的方法,其中第一判断步骤包括用于检验在数据的末尾是否存在用预定数据描述语言指定的结束字符串的检验步骤;当存在结束字符串时,向数据首部搜寻用预定数据描述语言指定的开始字符串的搜寻步骤;当在搜寻步骤找到开始字符串时,检查在开始和结束字符串之间的数据是否具有预定数据描述语言下的正确格式的检查步骤。
15.根据权利要求14的方法,其中检查步骤包括还检查是否满足预定数据描述语言的正确性的步骤。
16.根据权利要求1的方法,其中判断步骤包括提取存储于在加载步骤所加载的数据末尾的数据作为大小信息,以及当连接到具有由大小信息所指示的大小的数据首部的数据具有预定数据值时将用大小信息指示的数据确定为元数据的步骤。
17.根据权利要求1的方法,其中判断步骤包括提取存储于在加载步骤所加载的数据末尾的数据作为大小信息,并基于大小信息提取对应于元数据的数据的提取步骤,以及该判断步骤包括对在提取步骤中提取的数据进行检查,并判断是否存在用预定的数据描述语言以预定格式描述的数据的步骤。
18.根据权利要求17的方法,其中判断步骤包括提取存储于在加载步骤加载的数据末尾的数据作为大小信息,并当连接到具有由大小信息所指示大小的数据的首部的数据具有预定数据值时将用大小信息表示的数据判断为元数据的步骤。
19.根据权利要求17的方法,还包括当在判断步骤判断出存在元数据时,输出已区别出的元数据的输出步骤。
20.根据权利要求19的方法,其中输出步骤包括基于元数据进行显示的步骤。
21.根据权利要求19的方法,其中输出步骤包括将元数据提供给用于处理预定的数据描述语言的工具的步骤。
22.根据权利要求17的方法,其中判断步骤包括还检查是否满足作为预定数据描述语言的正确性的步骤。
23.根据权利要求1的方法,其中在加载步骤所加载的数据包括图像数据,而元数据代表图像数据的区域信息。
24.根据权利要求23的方法,其中区别步骤包括通过从末尾开始对在加载步骤加载的数据进行检查,以查看是否存在用预定数据描述语言指定的预定标志符进行限定的部分数据,从而对数据中包含的区域信息进行区别的步骤。
25.根据权利要求24的方法,还包括当在区别步骤中区别出区域信息时,提取并输出所区别出的区域信息的输出步骤。
26.根据权利要求25的方法,其中输出步骤包括基于所提取区域信息进行显示的步骤。
27.根据权利要求25的方法,其中输出步骤包括将提取的区域信息提供给使用区域信息的预定处理工具的步骤。
28.根据权利要求26的方法,其中区别步骤包括检验在将要处理的数据末尾是否存在第一个标志符的检验步骤;以及当存在第一个标志符时,向将被处理的数据首部搜寻第二个标志符的搜寻步骤,以及区别步骤包括当搜寻步骤找到第二个标志符后,将由第一个和第二个标志符所限定的数据作为区域信息加以区别的步骤。
29.根据权利要求24的方法,其中区域信息指示经区域分割获得的区域。
30.根据权利要求29的方法,其中区域信息使用多边形逼近表现该区域。
31.根据权利要求29的方法,其中区域信息使用曲线逼近表现该区域。
32.根据权利要求29的方法,其中区域信息具有赋给各像素所属的区域的区域号作为对应像素的数据。
33.根据权利要求29的方法,其中区域信息是二进制位图数据和表示矩形位置和大小的数据的集合,其中二进制位图数据指示限定每一区域的最小矩形的内部/外部。
34.根据权利要求1的方法,其中二进制数据包括图像数据、音频数据和动态图像数据中的一种。
35.根据权利要求1的方法,其中预定的数据描述语言具有XML、SGML、HTML和SVG中的一种的描述格式。
36.根据权利要求7的方法,其中确认信息包括使用元数据的字节数、字符数、单词数、行数和项数中的至少一种的校验和。
37.根据权利要求16的方法,其中大小信息用little-endian二进制格式、big-endian二进制格式和文本格式中的一种来表示大小。
38.根据权利要求16的方法,其中大小信息用与元数据相同的格式来表现大小。
39.根据权利要求17的方法,其中大小信息用little-endian二进制格式、big-endian二进制格式和文本格式中的一种来表现大小。
40.根据权利要求17的方法,其中大小信息用与元数据相同的格式来表示大小。
41.一种用于对记录在二进制数据上的元数据进行区别的数据处理装置,包括加载数据的加载装置;从末尾开始检查所述加载装置所加载的数据,并且判断是否存在用预定数据描述语言以正确格式描述的数据的判断装置;以及基于所述判断装置的判断结果对包含在数据中的元数据进行区别的区别装置。
42.根据权利要求68的装置,其中所述判断装置包括从末尾开始对所述加载装置加载的数据进行检查以判断是否存在用预定的数据描述语言的预定格式描述的数据的第一判断装置;当所述第一判断装置判断出存在以预定格式描述的数据时,基于以预定格式描述的数据生成确认信息的生成装置;将所述生成装置生成的确认信息与存储在由所述加载装置加载的数据中以预定格式描述的数据的预定位置的确认信息进行比较的比较装置;以及基于所述比较装置的比较结果判断以预定格式描述的数据是否是元数据的第二判断装置。
43.根据权利要求41的装置,其中所述判断装置提取存储在加载装置中所加载的数据的末尾的数据作为大小信息,并且当连接到数据首部具有大小信息所表示的大小的数据具有预定数据值时,将用大小信息表现的数据确定为元数据。
44.根据权利要求41的装置,其中所述判断装置包括提取存储在加载装置所加载的数据的末尾的数据作为大小信息,以及基于大小信息提取对应于元数据的数据的提取装置,以及判断装置对由所述提取装置提取的数据进行检查,并判断是否存在用预定的数据描述语言以预定格式描述的数据。
45.根据权利要求41的装置,其中所述加载装置加载的数据包括图像数据,元数据代表图像数据的区域信息。
46.根据权利要求7的方法,其中确认信息包括通过使用包含在元数据中的字节数计算出的校验和。
47.根据权利要求7的方法,其中确认信息包括通过使用包含在元数据中的字符数计算出的校验和。
48.根据权利要求7的方法,其中确认信息包括通过使用包含在元数据中的单词数计算出的校验和。
49.根据权利要求7的方法,其中确认信息包括通过使用包含在元数据中的行数计算出的校验和。
50.根据权利要求7的方法,其中确认信息包括通过使用包含在元数据中的标志限定的项数计算出的校验和。
全文摘要
本发明用于加载需要添加元数据的二进制数据和要添加到二进制数据中的元数据。元数据具有XML格式。加载的元数据连接到加载的二进制数据之后。按这种方式构成的全部数据作为一个文件输出。在文件数据中,由于报头信息与未连接元数据之前完全相同,所以可以用现有浏览器等再生二进制数据。可以通过检查在数据末尾是否具有正确XML格式的数据来区别具有元数据的二进制文件。
文档编号G06F17/30GK1540553SQ200410045920
公开日2004年10月27日 申请日期2000年4月13日 优先权日1999年4月13日
发明者草间澄, 山本邦浩, 浩, 小谷拓矢, 矢 申请人:佳能株式会社
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1