生物科学领域需要一种通用的图像格式,既适用于长期存储,又能处理非常大的图像。图像在生物学中传递着深刻的思想,跨越各个学科。数字图像技术 50 年前还是一种晦涩的技术现象。如今,它已成为不可或缺的计算工具。它产生了各种不兼容的图像文件格式,其中大多数已经过时。
有几个因素正在迫使这些格式过时:每张图像的像素数量快速增加;图像生成速度加快;图像设计发生变化以适应新的科学仪器和概念;不同实验室在不同仪器上采集的图像需要协同互操作;以及必须支持频繁和快速扩展的研究元数据字典。这些问题并非生物科学领域独有。图像标准化的缺失是许多科学学科延迟、混乱和错误的根源。
需要一种能够桥接生物学和科学学科的图像框架,该框架应兼具高性能计算和互操作性。这种框架应适用于存档,并且必须能够将图像维护到遥远的未来。一些框架代表了部分解决方案:例如,XML 等框架主要适用于交换元数据;CIF(晶体学信息框架)2 等其他框架主要适用于晶体学数据挖掘所需的数据库结构;DICOM(医学数字成像和通信)3 等框架主要适用于临床医学成像领域。
我们需要的是一个通用的图像框架,它能够与所有这些学科互操作,同时提供高性能计算。HDF(分层数据格式)6 就是这样一个框架,它为协调许多生物学群体的图像提供了一个历史性的机会,从而建立一种通用的“货币”。克服不连贯的生物成像格式造成的数字混乱将带来更好的科学成果和更广泛的知识可访问性。
数字图像技术和计算机技术服务于许多不同的生物学群体,这些群体之间的术语差异可能导致非常不同的视角。以“格式”一词为例。对于数据存储领域而言,硬盘格式将在很大程度上影响一个群体图像格式的计算机性能,并且在某种程度上,它们是密不可分的。格式可以描述标准、框架或软件工具;并且格式可以存在于其他格式中。
“图像”也是一个具有多种用途的术语。它可以指 CCD(电荷耦合器件)中的瞬时电信号、存储设备上的被动数据集、RAM 中的位置或源代码中编写的数据结构。另一个例子是“框架”。图像框架可以实现图像标准,从而生成由软件成像工具创建的图像文件。框架、标准、文件和工具(如 HDF6 的情况)可能是如此密切相关,以至于它们代表同一规范的不同方面。由于这些术语因视角而如此普遍和多样,我们将交替使用它们,重点关注像素在其整个生命周期(从采集到存档)中的存储和管理。
HDF5 是一种通用的科学数据格式,带有配套软件。它于 1998 年推出,是 1988 年版本 HDF4 的继任者。NCSA(美国国家超级计算应用中心)开发了这两种格式,用于高性能管理大型异构科学数据。HDF5 旨在在二级存储和内存之间高效移动数据,并在各种计算架构之间进行转换。通过 NASA(美国国家航空航天局)、NSF(美国国家科学基金会)、DOE(美国能源部)和其他机构的支持,HDF5 继续支持国际研究。HDF 集团是伊利诺伊大学的非营利性衍生机构,负责管理 HDF5,从而加强了对长期业务的承诺,以维护该格式用于存档和提高性能。
由于 HDF5 文件可以在单个文件中包含几乎任何数据实体集合,因此它已成为组织由非常庞大和复杂的数据集组成的异构集合的首选格式。HDF5 用于一些最大的科学数据集,例如 NASA 地球观测系统的 PB 级地球科学数据存储库。2008 年,netCDF(网络通用数据格式)10 开始使用 HDF5,从而引入了大气和气候领域。HDF5 还支持中子和 X 射线领域的仪器数据采集。最近,MATLAB 将 HDF5 实现为其主要存储格式。HDF5 即将正式被国际标准化组织 (ISO) 采纳,作为规范 10303(STEP,产品模型数据交换标准)的一部分。同样值得注意的是 BioHDF1 的创建,用于组织快速增长的基因组学数据量。
HDF 集团在数字保护方面的努力使 HDF5 非常适合存档任务——特别是其参与 NARA(美国国家档案馆和记录管理局)、他们对 ISO 标准《开放档案信息系统 (OAIS) 参考模型》13 的熟悉,以及 HDF5 对《元数据编码和传输标准》(METS)8 的实现,METS 由数字图书馆联盟开发并由美国国会图书馆维护。
HDF5 文件是一个数据容器,类似于文件系统。在其中,用户社区或软件应用程序定义其数据对象的组织结构。HDF5 基本数据模型很简单,但在它可以存储的数据范围方面却非常通用。它包含两个主要对象:组(提供组织结构)和数据集(是基本存储结构)。HDF5 组和数据集还可以附加属性,属性是第三种类型的数据对象,由用户应用程序定义的小型文本或数字元数据组成。
HDF5 数据集是元素均匀的多维数组。这些元素可能是常见的数据类型(例如,整数、浮点数、文本字符串)、n 维内存块或用户定义的复合数据结构(由浮点向量或任意位长编码(例如,97 位浮点数)组成)。HDF5 组类似于计算机文件系统中的目录或文件夹。HDF5 组包含指向组或数据集的链接,以及支持元数据。HDF5 文件的组织结构是一个有向图结构,其中组和数据集是节点,链接是边。尽管术语“HDF”暗示了分层结构,但其拓扑结构允许其他排列方式,例如网格或环。
HDF5 是一种完全可移植的文件格式,对集合中数据对象的数量或大小没有限制。在 I/O 操作期间,HDF5 会自动处理数据类型差异,例如字节顺序和数据类型大小。其软件库可在 Linux、Windows、Mac 和大多数其他操作系统和架构上运行,从笔记本电脑到大规模并行系统。HDF5 实现了高级 API,带有 C、C++、Fortran 90、Python 和 Java 接口。它包含许多用于操作和查看 HDF5 数据的工具,并且有各种各样的第三方应用程序和工具可用。
HDF5 软件的设计提供了一组丰富的集成性能特性,这些特性允许进行访问时间和存储空间优化。例如,它支持高效提取数据子集、图像的多尺度表示、数据集的通用维度、并行 I/O、平铺 (2D)、分块 (3D)、分块 (nD)、区域压缩以及与 XML 互操作的灵活的用户元数据管理。HDF5 在检测硬件时透明地管理字节顺序。其软件可扩展性允许用户在二级存储和内存之间插入自定义软件“过滤器”;此类过滤器允许加密、压缩或图像处理。HDF5 数据模型、文件格式、API、库和工具是开源的,并且免费分发。
X 射线晶体学家于 2005 年成立了 MEDSBIO(结构生物学实验数据管理联盟)7,以协调各种研究兴趣。后来,电子显微镜4 和光学显微镜14 领域也开始参与。在过去的 10 年中,每个领域都将 HDF5 视为创建其独立的下一代图像文件格式的框架。就 NeXus11 而言,这种格式由中子和同步加速器设施开发,自 1998 年以来,HDF5 一直是其设计中的操作基础设施。
MEDSBIO 的持续讨论使人们认识到,用于管理图像的通用计算存储算法和格式将极大地有益于 X 射线、中子、电子和光学采集领域。重要的是,整个生物学界将从连贯的图像和更好集成的数据模型中受益。随着四个生物成像领域得出结论,HDF5 对其未来的图像战略至关重要,这是一个难得的机会,可以在生物学学科之间就通用的科学图像标准达成全面的协议。
以下缺陷阻碍了数字图像的即时和长期可用性
像素数量的增加,这是由数字采集分辨率的提高、更快的采集速度以及用户对“更快更多”的期望所引起的,是难以管理的。 解决方案需要对计算基础设施进行技术分析。图像设计者必须分析计算机硬件、应用软件和操作系统交互的上下文。这是一个在数十年内受到监控的移动目标。例如,今天的生物学家使用的计算机具有 2 GB 到 16 GB 的 RAM。应该使用什么方法来访问具有每个像素 30 个超光谱值的 4 维、1 TB 图像?几乎所有当前的生物图像格式都将像素组织为 2D XY 图像平面。可视化程序可能需要将整组像素读入 RAM 或虚拟内存。这,加上与随机磁盘寻道、分页和内存交换相关的海量存储性能低下,实际上使图像无法使用。对于非常大的图像,最好以多种分辨率(多尺度)存储它,以便交互式访问感兴趣的区域。可视化软件可能会密集计算这些中间数据分辨率,然后在退出软件后丢弃。
当前生物图像文件设计的不灵活性阻止了它们适应未来的模式和维度。 生物仪器和计算分析的快速进步正在导致涉及新颖的物理和统计像素规范的复杂图像。
无法将不同社区的图像组装成一个总体图像模型,这会导致分析中的歧义。 如果组织不当,各种坐标系的集成可能会成为不可逾越的障碍。越来越需要关联不同模式的图像,以便观察从毫米到埃分辨率的空间连续性。
图像的非存档质量损害了其长期价值。 当前的设计通常不提供数字图书馆联盟推荐的基本存档功能,也不解决出处问题。通常,社区图像格式的文档不完整、过时或不可用,从而削弱了正确解释数字文物能力。
最好采用现有的科学、医学或计算机图像格式,并简单地从中受益。所有图像格式都有其优点和缺点。它们往往分为两类:通用格式和专用格式。通用图像格式通常具有固定的维度或像素设计。例如,MPEG29 适用于许多应用,只要它是 2D 空间加上 1D 时间,使用红绿蓝模式,并且为适应眼睛的生理反应而进行有损压缩。或者,专用图像格式会遇到我们已经使用的图像格式的困难。例如,DICOM3(医学成像标准)和 FITS5(天文成像标准)将其像素存储为 2D 切片,尽管 DICOM 确实将 MPEG2 纳入基于视频的图像中。
访问非常大的图像需要平铺 (2D)、分块 (3D) 或分块 (nD) 的能力。虽然这在概念上很简单,但软件并非如此,并且必须仔细测试,否则可能会导致后续数据集损坏。对于数据存储库和研究中使用的操作软件而言,这种风险是不可接受的。此功能及其认证测试是 HDF 软件的关键功能,在任何其他格式中都无法轻易获得。
这些采集社区的目标是相同的,都需要性能、互操作性和存档。不同的生物成像社区真正需要在同一个 HDF5 数据文件中进行协调,方法是使用相同的高性能方法来管理像素;避免生物学社区之间的命名空间冲突;并采用相同的存档最佳实践。所有这些都将使下游社区(如可视化开发人员和全球存储库)受益。
性能。 图像文件格式的设计以及随后存储像素的组织方式决定了计算的性能,因为存在各种硬件和软件数据路径瓶颈。例如,许多专用的生物图像格式使用简单的 2D 像素组织,通常没有压缩的好处。这些 2D 像素组织不适合非常大的 3D 图像,例如电子断层扫描图或 5D 光学图像。这些生物成像文件的大小比计算机的 RAM 大几个数量级。更糟糕的是,CPU/内存速度、持久存储速度和网络速度之间的差距不断扩大。这些差距导致处理海量数据集时出现严重的延迟。任何用于海量数据的文件格式都必须考虑软件层的复杂行为,从应用程序到中间件,再到操作系统设备驱动程序。通用的 n 维多模态图像格式将需要新的实例化和基础设施来实现新型数据缓冲区和缓存,以将大型数据集缩放到小得多的 RAM 中;其中大部分已在 HDF5 中解决。
互操作性。 历史上,采集社区定义了自定义图像格式。可视化和建模等下游社区尝试实现这些格式,迫使这些社区面对设计缺陷。必须明确定义基本的图像元数据定义(如秩、维度和模式),以便下游社区可以轻松参与。不同的研究社区必须能够将新型元数据附加到图像中,从而在图像通过管道时增强图像。采集社区的持续进步将继续产生新的和重要的图像模式,这些模式将馈入此图像管道。使下游用户能够轻松访问像素并附加其社区元数据,从而支持互操作性,最终导致生物学的根本性突破。这并不是建议为了实现有效的图像格式,可以将或应该将不同社区的元数据统一定义为单个生物元数据模式和本体。
存档。 科学图像普遍缺乏存档设计功能。随着生物成像的复杂性提高,将这些图像放入长期全球存储库的需求将更大。电子显微镜数据库4 正在这样做,它是由国家大分子成像中心、罗格斯大学的 RCSB(结构生物信息学研究合作机构)和欧洲生物信息学研究所联合开发的。开放显微镜环境14 等工作也在开发生物图像信息学工具,用于基于实验室的数据共享和生物图像的数据挖掘,这也需要实用的图像格式,用于长期存储和检索。由于生物成像的不断演变以及需要遵守存档最佳实践,准备存档的图像格式必须是自描述的。也就是说,图像文件设计中必须有足够的基础设施来正确记录其内容、上下文以及像素和相关社区元数据的结构,从而最大限度地减少对外部文档的依赖以进行解释。
在生物学学科中实施支持传统软件的新统一图像格式是一个哥尔迪之结。说服软件开发人员将此作为高度优先事项是一项艰巨的任务。在数百个传统软件包中实施并在数千个实验室中完美部署并非易事。理想情况下,同时以传统格式和新的高级格式呈现图像将减轻技术、社会和后勤方面的障碍。但是,这必须在不复制二级存储中的像素的情况下完成。
一种建议是将 HDF5 文件挂载为 VFS(虚拟文件系统),以便 HDF5 组成为目录,HDF5 数据集成为常规文件。使用 FUSE(用户空间文件系统)的此类 VFS 将在用户进程空间和操作系统空间中同时执行。此超空间将通过解释、拦截和动态重排传统图像文件来管理所有 HDF-VFS 文件活动。VFS 呈现的单个虚拟文件可以由多个串联的 HDF5 数据集组成,例如元数据标头数据集和像素数据集。根据包含它的虚拟文件夹名称或尝试打开它的软件应用程序,此类 VFS 文件可以具有多个同时存在的文件名和传统格式。
HDF-VFS 的设计和功能有多种可能性。首先,非 HDF5 应用程序软件可以透明地与 HDF5 文件交互。PDF 文件、电子表格和 MPEG 将作为例行的文件系统字节流写入和读取。其次,此 VFS 在与透明的即时压缩相结合时,将充当可操作的压缩 tarball。第三,设计具有独特功能的 VFS,例如将传入文件解释为图像文件。基于社区的传统图像格式过滤器将重新排列传统图像文件。例如,像素将作为 HDF5 数据集存储在适当的维度和模式中,相关的元数据将作为单独的 HDF5 1D 字节数据集存储。当传统应用程序软件打开传统图像文件时,虚拟文件会被动态地重新组合,并由 VFS 以与传统图像格式定义的相同字节顺序呈现给传统软件。第四种可能性是赋予 VFS 存档和性能分析工具,这些工具可以透明地为传统应用程序软件提供这些服务。
为了实现具有广泛、长期支持的示例性图像设计的目标,我们提出以下建议,供通过正式标准流程进行考虑
允许并鼓励科学社区不断发展其自身的图像设计。 他们最了解其学科的需求。通过 HDF5 实施社区图像格式为这些社区提供了通往通用图像模型的灵活途径。
采用存档社区关于准备存档数据集的建议。 从一开始就让数字保护社区参与进来,而不是事后诸葛亮,将产生更好的长期图像设计。
建立通用的图像模型。 该规范在概念上必须简单,并且应仅区分图像的像素与各种元数据。像素的存储应采用适当的维度数据集。社区元数据的封装应采用 1D 字节数据集或属性。
应定义通用的图像命名法,以桥接元数据命名空间到传统格式的转换。 大多数元数据是设计它的生物学社区特有的。二进制或 XML 的使用是创建图像设计的社区的内部关注点;但是,通用图像元数据(例如秩、维度和像素模式)将在学科之间重叠。
使用 RDF(资源描述框架)15 作为管理像素数据集和社区元数据关联关系的主要机制。 以数据集形式存储的主语-谓语-宾语-时间元组可以从 HDF5 的 B 树搜索功能中受益。这种安排为出处和管理和性能测试的通用日志记录提供了有用的时间戳。RDF 谓词和对象的定义应遵循 NFS(网络文件系统)版本 4 协议元数据12 的组织中使用的可扩展设计策略。
在某些情况下,可能需要定义通用图像模型的附件。 MPEG 视频就是一个例子,其中标准化的压缩是将数据存储为 1D 字节流而不是将其解压缩为标准图像模型(作为 3D YCbCr 像素数据集)的首要原因。专有图像格式是另一种需要 1D 字节封装而不是转换为通用图像模型的附件类型。在这种情况下,图像仅被标记为此类,并应用例行的存档方法。
提供与图像模型同步的经过全面测试的软件 API。 缺乏通用的 API 要求每个科学小组从头开始开发和测试软件工具,或从其他人那里借用,这不仅增加了每个小组的成本,而且还增加了实现之间出现错误和不一致的可能性。
将 HDF5 实现为虚拟文件系统。 HDF-VFS 可以通过将传入的传统图像文件格式存储为像素数据集和封装的元数据来解释它们。HDF-VFS 还可以将此类 HDF 数据集的组合呈现为单个传统格式的图像文件,字节流完全相同。这样的文件系统可以允许用户传统应用程序通过标准文件 I/O 调用来访问图像并与之交互,从而避免了传统软件包含、编译和链接 HDF5 API 库以访问图像的要求和负担。将图像呈现为文件和 HDF5 数据集的二元性为管理图像和非图像数据集(如电子表格或 PDF 文件)或管理出处提供了许多有趣的可能性,而无需更改传统应用程序软件。
使图像规范和软件 API 免费访问和可用。 最好,此类软件应在开源许可证下可用,该许可证允许软件开发人员社区为其开发做出贡献。向各个生物成像社区和实验室收费会增加科学工作(通常资金不足)的财务复杂性。
建立验证和性能测试方法。 一个关键要求是确定合规性的能力。没有合规性测试会大大削弱存档价值,因为它会破坏图像数据的可靠性和完整性。使用原型测试用例进行性能测试有助于设计过程,方法是标记提出的社区图像设计,这些设计将存在严重的性能问题。定义基准测试用例将快速识别 API 中的软件问题。
建立持续的管理支持。 正式的设计过程可能需要相当长的时间才能完成,但某些需求(例如技术支持、咨询、发布技术文档和管理社区图像设计的注册)需要立即关注。建立一种机制,供成像社区将其 HDF5 根级组注册为特定于社区的数据域,这将为图像设计提供重要的基石,并避免与其他成像社区发生命名空间冲突。
检查其他正式标准是如何演变的。 采用成功的策略,避免陷阱。与这些标准组织制定策略和联盟将进一步加强科学图像标准的设计和采用。
建立正确的论坛至关重要,这将需要专业的标准组织(或多个组织)的指导,这些组织将此类图像标准的开发视为其服务公众及其成员的使命的一部分。 科学、政府、商业和专业社区的广泛共识和承诺是实现这一目标的最佳甚至唯一途径。
出于必要,生物科学家正在独立评估和实施 HDF5,但没有一个总体小组负责建立全面的生物成像格式,并且几乎没有最佳实践可供依赖。因此,生物学家很可能继续使用不兼容的方法来解决类似的问题,例如没有通用的图像模型。
未能建立可扩展的 n 维科学图像标准(该标准应高效、可互操作且可存档)将导致次优的研究环境和图像存储库未来能力的不确定性。没有全面的科学图像存储框架的战略危险是海量生成不可持续的生物图像。随后,舒适地不作为的长期风险和成本可能会是巨大的且不可逆转的。
生物科学面临的挑战是建立世界一流的成像规范,这将使这些不可或缺且不可再生的观测结果具有长期维护和高性能计算访问能力。问题不在于生物科学是否会将 HDF5 视为有用的成像框架——这种情况已经发生——而在于现在是否应该将当前高度分散的生物图像格式拼凑在一起的许多碎片收集起来,并将它们置于 HDF5 之下作为一个通用框架。现在是统一生物学图像的时候了,我们鼓励读者与作者联系,表达他们的观点。
问
这项工作由国家研究资源中心 (P41-RR-02250)、国家普通医学科学研究所 (5R01GM079429)、能源部 (ER64212-1027708-0011962)、国家科学基金会 (DBI-0610407, CCF-0621463)、国家卫生研究院 (1R13RR023192-01A1, R03EB008516)、HDF 集团研发基金、路易斯安那州立大学计算与技术中心、路易斯安那州信息技术倡议以及 NSF/EPSCoR (EPS-0701491, CyberTools) 资助。
1. BioHDF;http://www.geospiza.com/research/biohdf/。
2. 晶体学信息框架。国际晶体学联合会;http://www.iucr.org/resources/cif/。
3. DICOM(医学数字成像和通信);http://medical.nema.org。
4. EMDB(电子显微镜数据库);http://emdatabank.org/。
5. FITS(灵活图像传输系统);http://fits.gsfc.nasa.gov/。
6. HDF(分层数据格式);http://www.hdfgroup.org。
7. MEDSBIO(结构生物学实验数据管理联盟);http://www.medsbio.org。
8. METS(元数据编码和传输标准);http://www.loc.gov/standards/mets/。
9. MPEG(运动图像专家组);http://www.chiariglione.org/mpeg/。
10. netCDF(网络通用数据格式);http://www.unidata.ucar.edu/software/netcdf/。
11. NeXus(中子、X 射线和 μ 子科学);http://www.nexusformat.org。
12. NFS(网络文件系统);http://www.ietf.org/rfc/rfc3530.txt。
13. OAIS(开放档案信息系统);http://nost.gsfc.nasa.gov/isoas/overview.html。
14. OME(开放显微镜环境);http://www.openmicroscopy.org/。
15. RDF(资源描述框架);http://www.w3.org/RDF/。
喜欢还是讨厌?请告诉我们
Matthew T. Dougherty ([email protected]) 就职于国家大分子成像中心,专门从事冷冻电子显微镜、可视化和动画。
Michael J. Folk ([email protected]) 是 HDF 集团总裁。
Erez Zadok ([email protected]) 是石溪大学副教授,专门从事计算机存储系统性能和设计。
Herbert J. Bernstein ([email protected]) 是陶林学院的计算机科学教授,积极参与 IUCr 标准的开发。
Frances C. Bernstein ([email protected]) 从布鲁克海文国家实验室退休,曾在蛋白质数据库工作 24 年,积极参与大分子数据表示和验证。
Kevin W. Eliceiri ([email protected]) 是威斯康星大学麦迪逊分校光学和计算仪器实验室主任,积极参与生物图像信息学工具的开发。
Werner Benger ([email protected]) 是路易斯安那州立大学的可视化研究科学家,专门从事天体物理学和计算流体动力学。
Christoph Best ([email protected]) 是欧洲生物信息学研究所的项目负责人,专门从事电子显微镜图像信息学。
© 2009 1542-7730/09/1000 $10.00
最初发表于 Queue 第 7 卷,第 9 期—
在 数字图书馆 中评论本文
Stephen V. Cantrill - 患者护理中的计算机:希望与挑战
一位来自纽约市的 29 岁女性凌晨 3 点来到加利福尼亚州的急诊室 (ED),主诉严重的急性腹痛,将其痛醒。她报告说她正在加利福尼亚州参加婚礼,并且最近也曾遭受类似的腹痛,最近一次导致了阑尾切除术。急诊医生进行了腹部 CAT 扫描,并看到他认为是阑尾切除术后腹腔内的伪影。除了患者能够告诉他的信息外,他对患者的既往病史一无所知;他无法访问阑尾切除术之前或之后拍摄的任何图像,也无法获得有关手术操作记录或随访的任何其他重要信息。
Samantha Kleinberg, Bud Mishra - 变形:转化系统生物学的即将到来的变革
一天早上,格雷戈里娜·萨姆莎从焦虑的梦中醒来时,发现自己患上了一些神秘的流感样症状,这些症状没有任何警告就出现了。同样令人恼火的是,这种反复无常的变形似乎不受因果关系的理性解释。 “我怎么了?” 她想。在去看医生之前,她决定更多地了解可能困扰她的原因。她登录到一个网站,她在网站上用她能记住的内容注释了一条时间线。自三月份以来,她的头痛比平时更多,然后在四月份,她在运动后开始感到更加疲劳,截至七月份,她也偶尔出现记忆力衰退。
James C Phillips, John E. Stone - 使用图形处理器探测生物分子机器
计算机模拟已成为研究生物分子结构和功能的组成部分。多年来,并行计算机一直被用于进行这些计算量大的模拟并分析其结果。这些模拟充当“计算显微镜”,使科学家能够观察分子过程的细节,这些细节太小、太快或太脆弱,无法用传统仪器捕获。随着时间的推移,商用 GPU(图形处理单元)已发展成为大规模并行计算设备,最近,可以使用流行的 C/C++ 编程语言的方言对其进行编程。
Kenneth N Lodding - 生物形态软件的旅行者指南
自然世界可能是我们解决计算机问题的灵感来源。虽然“地图不是实际区域”肯定是正确的,但大多数到异国旅行的游客确实更愿意随身携带至少一本指南,以帮助他们在开始探索时找到自己的位置。这就是本文的意图。虽然没有足够的时间游览所有主要的旅游景点,但只要稍加努力并使用文章中的信息作为路标,大胆的探险家就可以轻松找到许多其他有趣的探索路径。