打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
照片的元数据(3)XMP

摄影笔记下载地址: https://pan.baidu.com/s/1Jfp1H2uqW74ac_i4RsKiuQ

照片的元数据(3)XMP 


XMP(Extensible Metadata Platform)是Adobe公司提出的关于元数据的创建,处理和交换的一套标准。在制作和管理文档或图像时,如果在相关文件中包含有元数据(如标题,摘要,作者,版权等信息)则可通过元数据来归纳,分类,搜索等,也能获得各种参考资料,使处理过程变得很方便。但是也发现,如果在整个制作管理过程中要用到不同的应用软件,这些软件可能有自己的元素数据格式,于是在软件衔接部分就会带来很多麻烦。XMP最初的意图是使所有的Adobe软件都有统一的元数据标准,只要在制作过程中都使用Adobe软件就可以使整个流程畅通无阻,非常方便。随着很多公司支持和采纳,XMP已得到广泛使用,在2012年XMP成为国际标准ISO16684-1。

在XMP中元数据采用RDF形式来表达,整个XMP文档用XML语言编写,所以在讲述XMP前有必要先简单介绍一下XML和RDF。

 

一、XML与RDF

1)XML(Extensive Markuplanguage)是一种使用很广泛的标记语言,也是XMP的编写语言。这里只是为了便于讲述XMP,简单介绍一下它的语法。

·XML语法   XML由元素组成,语法很简单。通过下面简单例子,可改括如下。

date="08/08/2008">

   George

   John

   

Don't forget the meeting!

 

 

·元素是由<xxx>和</xxx>一对括号构成。

·元素中可含有文本或子元素(即元素可嵌套)。

·元素还可以有属性,属性放在元素的标签中。

上例中为根元素。<to>,,

note 的子元素。John等是元素的文本。date 是元素note的属性,其属性值是08/08/2008。 由此可见XMP文档是由元素构成的元素树。

XML命名空间   XML没有预定义的元素标签,所有标签(元素名)如上例中的note,to等都是由用户随意定义的。因此当XML文档被引用或共享时就可能产生重名的问题,XML命名空间就是为了避免命名冲突,将元素名与资源捆绑,即在元素名前冠以资源名前缀,说明该元素属于哪个资源,只要同一资源下没有重名,就不会有命名冲突。通过属性xmlns定义资源的空间   xmlns:前缀=“资源URI”

在下面的例子中定义了两个资源前缀:h f

     xmlns:h="http://www.w3.org/TR/html4/"

      xmlns:f="http://www.w3school.com.cn/furniture"

 

h:table ,h:namef:table, f:name  是不同资源的元素。

                        
                       
xmlns:h="http://www.w3.org/TR/html4/">
    Apples
                       
                       
xmlns:f="http://www.w3school.com.cn/furniture"                     
     African Coffee Table

 

 XML命名空间在XMP 中用得很多,因为不同集合的元数据(如Exif和IPTC)经常会出现相同的名称。

 

2)RDF(Resource DescriptionFramework)原本是用于如何描述互联网资源,是互联网资源的一种表述模型。由资源,属性和属性值构成的三元框架结构。

例如网页http://www.w3school.com.cn/rdf(资源)的作者(属性)是John(属性值)。相当于陈述语句中的主语(资源),谓语(属性)和宾语(属性值)。用XML书写就如下:

  
     David
     http://www.w3school.com.cn
  

 

· RDF是根元素,说明下面是RDF 文档。

· Description 元素是对资源的描述,通过about 属性指出资源是

   http://www.w3school.com.cn/RDF 网页。

· author homepage 都是该资源的属性元素,分别表示该网页的

   作者和该网站的主页。

· David http://www.w3school.com.cn分别是上述属性的属性值。

这是一个简单的例子,也没有用到XML命名空间,只是介绍一下RDF是如何描述资源的。由于这种模型只定义了一个框架,具体内容由资源的性质来定,因此这样的描述模型,可以应用在多种独立的场合,XMP就借用它来表述文档或图像中的元数据,

 

三、用XMP表述元数据

XMP是用RDF形式来表述某个文档或图像的元数据,该文档或图像文件相当于RDF的资源,XMP元数据及其数值相当于RDF的属性及属性值。

XMP元数据的数据类型沿用RDF的类型,有单一数据,结构和矩阵三种。矩阵和结构都是有多个数据,不同的是结构的数据可以是不同类型,而矩阵中的数据是同一类型。矩阵又分为三种:

1)Bag 其中的数据的排列不分顺序,可以任意排放。

2)Seq  其中的数据排列有固定顺序,不能改变。

3)Alt  从其中的数据中选一个。

 

下面是从 XMP 文档中取出的一个Bag 矩阵的例子。creator是文档创建者,可以有多个作者,排名顺序任意,所以是一个Bag矩阵。creator 属性是在 Dublin core命名空间中定义,前缀为dc。

其它属性都是在RDF中定义的,前缀为rdf。

      

          

              JohnDoe

              JaneSmith

          

      

 

创建元数据的途径很多,就以照片图像而言就有Exif,IPTC等,许多应程序(如photoshop,ACDsee,cameraraw等)在处理图像后也会生成它们自己的元数据。种类繁多,还会引起名称冲突,因此需要进行归类,建立命名空间,。使各种途径创建的元数据都有各自的命名空间(即名称前缀)。这种方法也称为创建Schema,一个Schema 也是就对应一个命名空间。

XMP元数据可以归纳如下:

·XMP元数据描述的资源一般都是文档或图像,也可以是多种媒体,

 但不在本文讨论之列。

·XMP元数据按命名空间(Schema)归类,每个SChema 中定义多个

 属性(元数据)

·每个属性(元数据)有名称,数据类型。属性的值就是用于描述资

  源的元数据值。

 

各部分的关系如下图所示。


下面是从一个XMP文档中摘取的某些片段。

 

 

  

 

     

           xmlns:xmp="http://ns.adobe.com/xap/1.0/"

           xmlns:photoshop="http://ns.adobe.com/photoshop/1.0/

           xmlns:Iptc4xmpCore="http://iptc.org/std/Iptc4xmpCore/1.0/xmlns/"

           xmlns:Iptc4xmpExt="http://iptc.org/std/Iptc4xmpExt/2008-02-29/"

                                                      ·

                                                                           ·

                                                                           ·

           xmlns:tiff="http://ns.adobe.com/tiff/1.0/"

           xmlns:exif="http://ns.adobe.com/exif/1.0/">

 

 

 

        Adobe Photoshop CC 2017 (Windows)

        2015-10-30T10:27:17+08:00

        2015-10-13T16:03:46

        2015-10-30T10:27:17+08:00

 

 

        2015-10-13T16:03:46.008

        北京市

        中国

        颐和园

        3

        sRGB IEC61966-2.1

 

        

        张三

        20151013日游颐和园

 

 

        大学同学

        

           

              张三

              李四

              王五

           

        

 

 

        4928

        3264

        

           

              8

              8

              8

           

        

        NIKON CORPORATION

        NIKON D7000

                      ·

                       ·

                       ·

 

 

        0230

        3969

        2820

        2015-10-13T16:03:46

        10/2000

        71/10

                      ·

                      ·

                      ·

     

  

 

 

 这是一张照片的XMP文档,照片本身含有EXIF元数据,用Photoshop处理时添加了一些IPTC元数据,所以也包含有photoshopIPTC的元数据。

由于XMP用XML编写,XML是很通用的语言,在同一文档中可能还会有与XMP无关的内容,因此属于XMP的内容就用与括号括起来,所以在文档开头就是xmpmeta元素,该元素有一个xmptk的属性,说明本XMP是用什么工具生成的。

下面就是RDF根元素,紧接着Description元素,由于XMP一般都嵌入在相关的文档或图像文件中,没有必要再指明资源的URI,所以它的about属性是空的。在Description元素中列出了一些命名空间(Schema),表示下面用到的属性(元数据)都在这几个命名空间内,其中XMP是XMP的基本空间,它定义了一些XMP必须具备的属性。Iptc4xmpCore 和Iptc4xmpExt都是IPTC的命名空间,分别表示IptcCore和IptcExt。除此之外,一般还会有如媒体管理(XmpMM),Dublincore(dc)等,为了简化,这些都没有列出来。下面就是各命名空间中用到的元数据,可以看到照片中原有的元数据Exif都合并到XMP中来了。元数据原本有很多,为节省篇幅,这里只选了一部分。

三、XMP的嵌入与生成

XMP可用于视频,音频,动画,文档,图像等多种媒体,但这里只谈及XMP如何用于图像文件。XMP一般都是镶嵌在与其相关的文件中,成为一个整体。如果相关文件不允许被修改,则也可以保存为独立的XMP文件。例如照片的原始RAW文件一般不允许更改,当使用Camera raw 对其处理后,並不改変原来的RAW文件,而将其元数据和处理的参数都记录在XMP文件中,Cameraraw处理的数据记录在crs的命名空间中。

常用的图像文件如JPG,TIF,DNS,PSD,GIF,PNS等都支XMP,也就是可以在这些文件中嵌入XMP,使得在图像交流,格式转换时元数据不会丢失,带来很大方便。由于这些图像的格式不同,嵌入XMP的方法也各不相同,这里只对JPG文件作一简单介绍。

XMP用XML语言编写不做任何加工处理,实际上就是一个大量字符的序列。在前面加包装元素,封装为XMP包,再将其嵌入到相应的文件中。XMP的包装元素是xpacket,为以下形式。

   

本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
RDF 主要元素
flasz?as3?NetStream类使用提示点和元数据OnMetaData,OnXMP...
了解 Extensible Metadata Platform (XMP) 标准和在 Adobe Bridge 中使用元数据
xpath xsl xmlns 随笔
XML简明教程(中国XML联盟版)
Ontology理论研究和应用建模
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服