IIIF国际图像互操作-部署手册

【写在前面】非常规程序猿记录个人部署IIIF的关键步骤和常用指令。

一、Image API

Image API——范围、大小、质量、旋转。   Image API 3.0 — IIIF | International Image Interoperability Framework

官网说明文档:Image API 3.0 — IIIF | International Image Interoperability Framework 

1.图像服务器cantaloupe

cantaloupe——用Java编写的图像服务器,支持3.0及其之前的所有IIIF图像API版本,官网来源Cantaloupe Image Server :: Home

【目的:将图像上传到图像服务器cantaloupe中,图像生成URL地址】

(1)安装

配置源图像存放地址,设置为本机存放图片的地址

(2)启动

操作步骤:cmd→D:→cd 文件夹路径→在cantaloupe的路径下运行以下指令

java -Dcantaloupe.config=cantaloupe.properties -Xmx2g -jar cantaloupe-5.0.6.jar

(3)运行

首先,放置图片:在前面配置的的源图像存放地址中添加jpg文件/文件夹,图片命名为test。

其次,打开浏览器,查看图形相关信息的指令

        ①info json的指令:localhost:8182/iiif/3/test.jpg

        ②查看完整图片的指令:localhost:8182/iiif/3/test.jpg/full/400,/0/default.jpg

                查看完整图片(最大)的指令localhost:8182/iiif/3/test.jpg/full/max/0/default.jpg

        ③ (info json内容解读:

  • context: 这是一个JSON-LD(JavaScript Object Notation for Linked Data)的属性,用于定义数据的上下文,这里指向的是IIIF Image API版本3的上下文定义。

  • id: 这是图像服务的唯一标识符,指向的是图像资源的位置。在这个例子中,图像位于本地服务器的8182端口下。

  • type: 表示这是一个ImageService3类型的服务,即IIIF Image API版本3的服务。

  • protocol: 指定使用的协议,这里是IIIF图像API的协议。

  • profile: 定义了服务的级别,"level2"表示该服务支持除了旋转任意角度以外的所有功能。

  • width & height: 分别表示图像的原始宽度和高度,这里是397像素宽和298像素高。

  • maxArea: 表示请求的图像区域的最大像素面积,这里是118306像素。

  • sizes: 定义了图像可用的尺寸列表。这里提供了三种尺寸选项,分别是99x75, 199x149, 和原始尺寸397x298。

  • tiles: 定义了图像的瓦片(tile)信息,即分块展示图像的方式。这里每个瓦片的尺寸与原始图像相同,且支持1x, 2x, 和4x的缩放因子。

  • extraQualities: 提供了额外的图像质量选项,包括"bitonal"(黑白两色),“color”(彩色), 和"gray"(灰度)。

  • extraFormats: 提供了额外的图像格式选项,包括"tif"(TIFF格式)和"gif"(GIF格式)。

  • extraFeatures: 列出了服务支持的其他功能,包括:

    • “baseUriRedirect”: 支持基本URI重定向。
    • “canonicalLinkHeader”: 支持规范链接头。
    • “cors”: 支持跨源资源共享。
    • “jsonldMediaType”: 支持JSON-LD媒体类型。
    • “mirroring”: 支持镜像翻转图像。
    • “profileLinkHeader”: 支持配置文件链接头。
    • “regionByPct”: 支持按百分比指定图像区域。
    • “regionByPx”: 支持按像素指定图像区域。
    • “regionSquare”: 支持正方形区域。
    • “rotationArbitrary”: 支持任意角度旋转(虽然profile是level2,但这里明确列出了此功能)。
    • “rotationBy90s”: 支持按90度旋转。
    • “sizeByConfinedWh”: 支持按约束的宽高比调整大小。
    • “sizeByH”: 支持按高度调整大小。
    • “sizeByPct”: 支持按百分比调整大小。
    • “sizeByW”: 支持按宽度调整大小。
    • “sizeByWh”: 支持按宽度和高度调整大小。)

随后,注意:这个URL(网址)就是图像在cantaloupe服务器中的可访问路径

其他:查看文件夹中的图像,如果源图像文件夹下还有子文件夹,对于子文件夹,需要用%2f作为转义字符代替/,如子文件夹名为yongle,则访问其中的图片文件test1.jpg需在浏览器输入:http://localhost:8182/iiif/3/yongle%2ftest1.jpg

        如果文件路径为:源图片文件夹/子文件夹1/子文件夹2/图片1,则在浏览器中应输入http://localhost:8182/iiif/3/子文件夹1%2f子文件夹2%2f图片1

2.图片查看器OpenSeadragon

【目的:便捷的图像查看器】

启动浏览器中输入https://iiif.gdmrdigital.com/openseadragon/index.html?image=http://localhost:8182/iiif/3/test2.jpg/info.json

二、Presentation API-Manifest

Presentation API(Presentation API 3.0 — IIIF | International Image Interoperability Framework)——将每个图像及其元数据打包在一起,以便用户知道图像的来源、标题、甚至图像来自哪本书的哪一页,同时也是一个重要的展示工具,可以与图像API结合使用。

1.Manifest

将图像组织成manifest.json文件,更好地展示图像

        (1)manifest地址:https://manifest-editor-site.netlify.app/

        (2)使用manifest editor生成manifest文件的步骤:新建manifest→查看canvas→新增Canvas→添加内容(图片/音视频)→完整图像url与cantaloupe查看完整图像的url相()同→点击“Create”后创建canvas→预览delft viewer下载manifest文件

        (3)另外,除manifest editor外,还可以编写程序生成json文件。

2.Mirador

mirador是一个开源的、基于Web的项目,旨在提供一个强大且灵活的平台,用于比较和查看多个数字图像资源。可以通过mirador阅读各种iiif文件,包括服务器中的manifest文件。开源项目源代码:https://gitee.com/mirrors/Mirador

【目的:作为文件阅读工具,mirador需要nginx作为服务器代理,通过URL进行找到manifest文件进行阅读。】

(1)启动nginx:双击nginx.exe即可启动nginx→浏览器输入:localhost:80→回车→启动成功

(2)修改配置文件:安装目录下conf文件夹→记事本打开nginx.conf→端口不变,仍为80;路径html/image

(3)使用nginx中的mirador,访问本地服务器中的manifest文件和json文件

        ①将mirador.html文件与manifest文件放在nginx代理路径中。

       文件来源:mirador.html由Mirador (mirador-dev.netlify.app)网页另存为html文件;manifest文件由Manifest Editor下载导出IIIF Manifest Editor (manifest-editor-site.netlify.app)

        路径:nginx安装目录下的html文件夹

        ②在浏览器中输入localhost:80/mirador.html,访问本地服务器路径中的mirador.html文件。

        ③使用mirador访问本地服务器的manifest.json文件

操作步骤:add resource→添加URL:http://localhost:80/manifest.json(注意端口和文件名)→在本地的mirador阅读器中阅读manifest文件

三、总结

参考相关PPT

其中操作指南和培训图参考:https://blog.csdn.net/islandfff7/article/details/140471896

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值