
数码相机的普及和互联网图片共享需求的增长使普通用户的图片存储量激增。对多数人来说,图片集的真正价值在于能够使人快速方便地浏览和检索人物、地点和事件图片。
但过不了多久,问题就会出现:家庭图片集的图片数量在不知不觉间就会突破四位数。这时,无论是图片的整理、浏览还是搜索都会让人不胜其烦。
为此,许多人通过以下方法来整理图片集:采用描述性的文件名,或将图片分类存入不同文件夹,或手动为文件夹加上提示文本标签。。但随着图片数量的不断增长,这些方法也日见繁琐。这一日益突出的问题激励着英特尔开发出了切实可行的计算机辅助图片分类解决方案。
基于计算机的图片搜索是否涉及元数据合成?本案例中哪些数据可定义为描述图片上下文的数据?通过从图片媒体文件中提取结构特征(描述符),利用它们从语义上对图像进行分类并保存结果,可实现基于索引的快速检索与管理。这项技术极具发展前景,但要大规模部署尚有许多重要问题有待解决。例如,处理器性能有限会导致一些使用模式无法采用。此外,编程也十分复杂,这不仅降低了复用率,还增加了软件的开发与维护成本。
英特尔数字家庭创新团队目前正致力于开发一个软件框架,希望借此简化复杂的编程模式。我们的目标是帮助第三方应用开发人员实现快速图片搜索。
同时,我们还在积极探索新的途径,利用多核处理器的优异性能来加快数字密集型元数据的提取和分类过程。在这方面,我们的目标是开发出实用的场景分类功能,使未来的消费电子设备能够通过第三方应用实现更多精彩的使用模式。
自动分类功能在涉及数码图片的众多使用模式与应用中有着相当广阔的发展前景。这些应用包括:桌面媒体中的图片搜索、图片编辑、制作幻灯片以及支持 Web 的图片应用。它们最终将能够利用安装在客厅内的下一代机顶盒与其它联网的 CE 设备来获得图片检索能力。
通过改进元数据合成,还可创造出一项出色的应用--主题分组,这是最酷的消费应用之一。该类应用可为计算设备指定一个主题,然后利用编译的语义信息生成一个合适的图片集,如"宝宝长大了"或"Susan 的足球生涯"。改进的图片搜索技术可帮助用户轻松地制作相册、生成幻灯片、为 Web 站点创建剪贴薄或是制作图文博客。
英特尔开发了一个专门的软件架构,无论应用是否相同,其元数据合成的基础构建模块都完全相同。该软件由英特尔实验室制作了原型,现已通过英特尔与一些精选的第三方公司的合作实现了共享和优化。这一努力的最终目的在于,为当前和今后的数字图像消费软件应用提供一些软件组件,进一步增加这些应用的价值。
将鼠标指针放在图 1 上,按顺序阅读其中的文本,观察这一未来可能出现的使用模式,该模式以借助元数据合成实现的图像搜索为基础。

图 1.图像搜索流程。将鼠标指针依次放在 A、B、C 位置了解更多信息。
A. 检索:将照片从相机移至图片集(图片数据库)已收集的信息中可能包括数据、曝光设置、文件名以及数码相机内的其它元数据。这些信息按照日期顺序显示在图 1A 底部
B. 机器标注:图示自动分析与分类过程。图片被以多种方式存储并组织,通过"Sunsets(日落)"、"Beaches(海滩)"、"Friends(朋友)"等图例显示。计算系统会将自动组织原图片集,该过程无需(或仅需很少的)用户干预。图片集中的图片经分析与分类后,会包含更多信息。
此时,用户需按下遥控器上的"Guide(向导)"按钮。然后从导航嵌窗的"Scenes(场景)"菜单中选择"Beaches(海滩)"。等待导航嵌窗淡出,此时生成的图片集和之前看到的类似,但其中的图片较少。里面的每张图片都和海滩有关。仔细浏览一下这些图片就会发现:同一天拍摄的全部图片都取材于威尼斯海滩的美景。
首先选择某一天,然后按下遥控器上的"Guide(向导)"按钮,在导航嵌窗中选择"Places(地点)"。用在遥控器上键入相关字符,查找"CA Beaches(加州海滩)",直到出现海滩列表。滚动屏幕,找到并选择"Venice Beach(威尼斯海滩)"。现在,里面的图片已全部被加上了"My Day at Venice Beach, CA Oct 12th 2007(加州威尼斯海滩之旅,2007 年 10 月 12 日)"的注释。
C. 语义注释:该案例将使用互联网来识别威尼斯海滩图片,从而进一步定义"Beach(海滩)"这一类别。这些图片各自都有不同的注释。例如,第一张图片可能是"美丽的日落!",第二张图片为"与好友 Susan 在一起",第三张则是"人狗海滩合影"。先前的分类仍可用做第三组图片的项目标签。
上述案例讲述了这样一个情景:一位女士刚刚渡完假回到家中,她希望快速浏览一下旅途中拍摄的数码图片。于是,她将相机连接到影音系统,拿起遥控器,坐到了沙发上。在电视上,她可以看到以缩略图形式显示的假期图片。这些图片利用相机上提供的日期和文件名等信息松散地组织在一起。为了更好地描述和组织这些图片,系统会对它们进行快速分析。尽管一次需要显示大量图片,但电视的图形用户界面能够有效地平衡最近拍摄图片的缩略图与显示剩余图片数量的图形之间的比例。这样,用户就能够随心地快速跳过一些图片或是尽情地让目光驻留欣赏。通过和朋友们在沙滩的某张合影,她就能找到相关主题,随后进入一段美好的回忆当中。
英特尔正不断探索新途径,努力帮助消费者快速而轻松的从海量数字图片中找到他们需要的内容。这项研究包含四个方面:
在一篇相关的文章中,我们概述了英特尔在高级用户界面(设计用于为用户提供信息)方面的一些探索。本文将重点讨论直接来自媒体的新元数据的合成问题。
无论图片搜索采用何种应用程序,我们都必须解决三大难题,才能享受到这项技术带来的优势:
本文剩余的篇幅将逐一讨论这三大挑战并提出相应的解决方案。英特尔的目标就是在性能与编程复杂性之间寻求平衡,同时满足不同的应用需求。我们正努力完善这一编程模式以使其更加实用,并力求在运行于现有及新兴英特尔® 架构处理器的应用中实现快速图片搜索。
我们希望将各种能够有效识别图片场景分类的特征结合起来。如果人脑可以鉴别不同特征,我们就能教会电脑利用这些特征来对图片进行分类。这个过程就称为"训练",训练的成果就是分类器。训练过程包括以下几步:
例如,我们要训练机器在图片中识别出分类器"水"。经过观察,我们发现,水往往具有两个特征:"柔和边缘"与"蓝色色调"。于是,我们在机器中加入了相关功能,使之能够提取图片的边缘信息与色彩信息。随后,我们让机器处理数以千计的图片,这些照片被称为"训练集"。对于每张图片,我们都会"告诉"机器其中是否存在"水"。机器将提取特征信息,并寻找将特征与我们提供的存在水的信息相关联的图形。基本上讲,这种决策边界的计算是通过反复考虑多个实例来完成的,其方式与人的实例学习非常相似。
场景分类的关键在于使机器对未曾见过的新图片进行分类。我们让机器处理一些未用于训练的新图片,结果机器成功判断出了它们的类别。
当机器遇到新图片时,它就会通过算法提取描述符并用图形显示出结果。落入决策边界一边的特征值为负,反之,落入另一边的特征值为正。最后一步为分类,这是场景分类引擎的最终目标。如果掌握了地面实况数据,我们就可以精确计算出系统正确地对图片进行分类的能力。
场景分类需要使用大量实例,数量从上千至 15,000 不等。因此要实现令人满意的分类精确度,就必须精心挑选训练集,确保其包含"场景为正"的照片集。
这项工作中存在两个极端。一是提前训练出分类器并在软件中加入分类模块。这样考虑是希望让专业人士来制定"水"的判断依据,据此训练机器,然后再推出应用软件所用的分类模块。另一个极端是适时训练。应用程序可以通过图片分析库提供的训练服务依照用户提供的实例来训练分类器。上述两种方式都能实现娱乐应用所需的精确度。提前训练能够产生即时可用的分类结果,而适时训练则可提供更大的灵活性。而折中方案是将分类器模块与用于最初训练的源图片相结合,支持利用今后用户提供的实例来进一步完善训练模式。
由于提取描述符是图形分类中要求最严格的一环,因此如果能加快这一过程就能大幅改进图片分类效果。
我们从以下三个矢量入手,对描述符提取器进行优化:支持函数、图像提取及并行性。每个优化矢量可包含其它两个矢量的方位,因此有必要考虑从这三个层面来进行优化。
如今,很多大学实验室都推出了性能与精确度兼备的智能搜索解决方案。那么,我们为何没有采用这些方案呢?
可访问性差是一大原因。这些编程模式过于复杂,对第三方软件提供商来说,大规模跨多个计算平台部署这些技术不符合成本效率原则。应用提供商需要的是那种复杂性低且易访问的实用型编程模式。这正是英特尔的努力方向。
在英特尔现有的多核解决方案中存在着一条加速实现目标的捷径。多核环境支持描述符提取与分类过程的并行处理,带来了显著的性能提升。将 API 与加速器正确结合不仅能支持单一图像搜索应用在多个处理器架构上运行,还能有效降低编程的复杂性。
如图 2 所示,用于图片搜索的英特尔软件架构中包含一个图像分析框架(IAF),该框架可从应用中提取媒体分析信息。该架构专门用于加快元数据提取速度及提高应用性能,还能使单个应用支持多个处理器。

图 2. 英特尔图像分析软件架构专门用于加快基于元数据合成的第三方图片搜索应用的上市速度。图像分析框架(IAF)在第三方应用下加入了一个提取层。英特尔® 集成性能基元(英特尔® IPP)针对多媒体应用进行了专门优化,是包含图像分析与元数据管理的多核软件函数库。IAF 对前台应用透明,可使单个第三方图片应用运行于多核处理器,从而借助多核处理器的强大性能来加快媒体分析与元数据生成的速度。英特尔® IPP 针对英特尔® 处理器内核进行了专门优化,可带来两倍至四倍的性能提升,而 IAF 能够将任务分担到多颗内核,在图形处理器(GPU)可用时能提供三倍的性能。现在每张图片的元数据生成过程需要大约 22 秒才能完成,英特尔预计到 2010 年该时间将缩减至 250 至 500 毫秒。(资料来源:英特尔图片搜索原型度量与工程评估。)
随着数码摄像与图像应用的日益普及,许多消费者开始发现:从数以千计的图像中搜索和查找图片常常令人不胜其烦。基于文件(文件夹)名的传统文本搜索方法费时费力,而目前的机器图像识别方式效率低下,每张图片的处理时间都在 20 秒以上,这无疑降低了前台应用的性能。
英特尔® 图像分析软件组件经过专门设计,能够帮助应用提供商充分利用已优化的英特尔® 集成性能基元与英特尔® 多核处理器的性能优势,从而使基于元数据合成的图片搜索获得显著的速度提升。
自动分类能力的提高和图片处理速度的大幅提升,必将催生出更出众的全新使用模式和基于快速自动分类图片与视频的多种应用。
1: Tolba, A.S.、 El-Baz, A.H、El-Harby, A.A(2005 年),《面部识别:文献综述.》,《国际信号处理期刊( International Journal of Signal Processing)》,第 2 卷第 2 期ISSN 1304-4494
2: Duda, Richard O、Hart, Peter E、Stork, David G(2000 年),《模式分类》,Wiley-Interscience,原书第 2 版,ISBN-10: 0471056693