【アプリ紹介】IIIF pocketのご紹介
Cultural Japanプロジェクトの一環で開発したアプリケーション「IIIF Pocket」に関するご紹介です。 pocket.cultural.jp 本アプリケーションの説明は、以下のGoogleドキュメントにまとめています。 docs.google.com IIIFリソースの管理と活用にお役に立てば幸いです。
Cultural Japanプロジェクトの一環で開発したアプリケーション「IIIF Pocket」に関するご紹介です。 pocket.cultural.jp 本アプリケーションの説明は、以下のGoogleドキュメントにまとめています。 docs.google.com IIIFリソースの管理と活用にお役に立てば幸いです。

Omeka Sのマニュアル和訳です。以下の「リソース」>「アイテム」ページです。 omeka.org アイテム アイテムは、Omekaシステムの構成要素です。 Omeka Sでは、システム管理者からアイテムを利用できるようにしたり、自分のサイトにアイテムを追加したりできます。 アイテムは、管理ダッシュボードの左側のナビゲーションにある[アイテム]タブ(1つのボックスアイコン)に一覧表示されます。 各アイテムは行として表示され、次の列があります。 タイトル 編集 (鉛筆)、 削除 (ゴミ箱)、または 詳細の表示 (省略記号) する アイコン クラス アイテムの 所有者 アイテムが 作成され た日付。 アイテムをナビゲートおよび作成するためのオプションは、アイテムのテーブルの上に表示されます。 [アイテム]ウィンドウの右上には、[新しいアイテム の 追加]ボタンがあります。 左側には、アイテムのページ数が表示され、前後の矢印が表示されます。現在のページ番号は編集可能なフィールドです。有効なページ番号を入力し、キーボードのReturn / Enterキーを押して、そのページに移動します。 中央上部には、高度な検索用のボタンがあります。 右側のテーブルのすぐ上には、アイテムのテーブルを並べ替えるためのオプションがあり、2つのドロップダウンメニューがあります。1つ目は、 Title 、 Identifier 、 Class 、 Owner、 および (Date)Createdから 選択できます。2つ目は、昇順または降順で並べ替えることができます。適用するには、 並べ替え ボタンをクリックします。 これらとテーブルの間の左側には、選択した編集、すべて編集、選択したすべての削除、すべて削除などのバッチアクションのドロップダウンがあります。 (以下、今後追加予定。)

メタデータの言語設定の方法について紹介します。公式のマニュアルでは、以下に記載があります。 omeka.org 以下のメタデータ編集画面において、地球儀のアイコンをクリックすると、入力フォームが現れます。こちらにjaやenなどを入力することで、メタデータの言語属性を与えることができます。 この言語属性は公開サイトで表示されるほか、Omeka SのAPIで提供されるJSON-LDでもご確認いただけます。 https://diyhistory.org/nakamura196/api/item_sets/2 多言語の情報管理、サイト構築のお役に立てば幸いです。

概要 Item Sets Treeはアイテムセットの階層構造を設定できるモジュールです。 本モジュールの使い方についてご紹介します。 omeka.org 概要 インストール データ 機能紹介 親アイテムセットの設定 階層構造の確認 各アイテムセットのアイテム一覧画面における子孫のアイテムの表示 サイトでの表示 まとめ インストール モジュールのインストール後、以下の設定画面が表示されます。こちらはあるアイテムセットのアイテムを表示した際、その子孫のアイテムセットのアイテムも表示するかを指定するオプションです。後ほど違いを確認します。 データ 今回は「いらすとや」で公開されている画像を使用します。 www.irasutoya.com 「いらすとや」では「人物」>「赤ちゃん」>「子守唄のイラスト」といった形で階層構造を持っています。そこで、「人物」と「赤ちゃん」をアイテムセットとして、「子守唄のイラスト」や「タオルを使ってうつ伏せになる赤ちゃんのイラスト」などをアイテムとして扱います。 Omeka Sの画面では以下の通りです。 アイテムセットの一覧画面 アイテムセット「赤ちゃん」のアイテム一覧画面 アイテムセットとして「人物」「赤ちゃん」があり、アイテムセット「赤ちゃん」の中に、2つのイラストが格納されています。 機能紹介 親アイテムセットの設定 本モジュールをインストールすることにより、各アイテムセットの編集画面に「Item Sets Tree」というタブが表示されます。こちらで、親とするアイテムセットを指定することができます。 階層構造の確認 画面サブのメニューの「モジュール」 > 「Item Sets Tree」から、設定したアイテムセットの階層構造を確認できます。違いをわかりやすくするために、アイテムセット「人物」に加えて、「イベント」「祝日・行事」も追加しています。 各アイテムセットのアイテム一覧画面における子孫のアイテムの表示 上のインストールのところで述べた「Item sets include descendants」を有効化すると、各アイテムセットのアイテム一覧画面において、子孫のアイテムを表示することができます。 以下の例で示されたアイテムは、アイテムセット「人物」に含まれていませんが、「人物」の子アイテムセット「赤ちゃん」を介して表示されています。 サイトでの表示 アイテムセットの階層構造をサイトで表示する方法として、カスタムリンクを追加する方法と、サイトページにItem Sets Treeのブロックを埋め込む方法の2種類があります。 前者は、以下のナビゲーションメニューから追加できます。特にカスタマイズ等を行わない場合には、この方法が簡単です。 後者の場合は、サイトページの編集画面において、画面右部の「新規ブロックを追加」パネルから、Item Sets Treeを追加します。この方法の場合、ページのタイトル変更や、各アイテムセットの説明、そのアイテムセットに含まれるアイテム数を表示するかなどを設定できます。 後者の方法で作成したサイトページの例は以下です。 https://diyhistory.org/nakamura196/s/main/page/item-sets-tree まとめ 以上、アイテムセットの階層構造を設定できるItem Sets Treeモジュールについて説明しました。階層構造を持ったコレクションの管理などにおいて、参考になりましたら幸いです。
Omeka SのIIIF関連モジュールである「IIIF Server」「Image Server」「Universal Viewer」の説明およびインストール手順を以下で紹介しています。 youtu.be Omeka SでのIIIF配信において、参考になりましたら幸いです。
Omeka Sの導入方法およびモジュールの追加方法を以下でまとめています。Omeka Sの導入にあたり、参考になりましたら幸いです。 youtube.com
Cultural Japanで集約したIIIFマニフェストについて、それらをまとめたIIIFコレクションを以下からご確認いただけます。 https://www.kanzaki.com/works/2016/pub/image-annotator?u=https://app.cultural.jp/iiif-collection/collection.json なお、各々のIIIFマニフェストの利用にあたっては、各収録DBの利用条件を確認してください。 本コレクションには、Cultural Japan側で動的に生成したIIIFマニフェストを含みます。上記のコレクション一覧において、【動的生成】という表記で識別することができます。この動的生成にあたっては、AWS Lambdaを利用しており、リクエスト毎にJapan SearchのRDFストア、およびCultural JapanのRDFストアに問い合わせを行い、JSONデータを生成しています。なお、本動的生成IIIFマニフェストを作成する条件は、高精細画像(jps:accessInfo/schema:associatedMedia)を持つアイテムとしています。 動的生成マニフェストの場合、必ずしも提供元アイテムのすべての画像を含めることができていない(jps:accessInfo/schema:associatedMedia で指定された画像のみを使っている)点で不完全ではありますが、IIIFマニフェストを読み込むSelf Museumやその他のIIIF対応ビューアに取り組むことが可能となるといった利点もあります。 self-museum.cultural.jp 世界中で発信される日本文化に関するIIIFリソースを概観するとともに、IIIFを用いたアプリケーション開発の素材としてお役に立てば幸いです。

Mirador 3をVueで使用する方法を紹介するリポジトリを作成しました。Vueを使ったアプリケーション開発の参考になれば幸いです。 github.com 本リポジトリの作成にあたっては、以下を参考にさせていただきました。 github.com なお、別のより簡単な方法として、UMD(Universal Module Definition)ビルドを利用する方法もあります。単純にMirador 3を利用したい場合には、以下の方法をおすすめします。 github.com 上記サイトでは、(今回紹介するリポジトリで示したように)「パッケージマネージャーを通じたインストールは、より柔軟なカスタマイズを可能とします。」と記載されています。 Installing through a package manager can give you more flexibility for customization.

概要 Omeka SのIIIF Serverモジュールについて、Image APIを使用しない設定を追加する機能開発を行いました。これにより、レンタルサーバなどのリソースが限られた環境において、IIIFマニフェストなどの配信が容易となります。デジタルアーカイブシステムの持続性と利活用性の向上にむけて、本機能がお役にたてば幸いです。 背景 Omeka SのIIIF Serverモジュールは、Omeka Sに登録されたメタデータから、IIIFマニフェストファイルなどを生成するモジュールです。Omekaの様々なモジュールを開発されているDaniel-KM氏が主に開発されています。 github.com 画像については、Image Serverが必要となります。Awesome IIIFに挙げられているようなIIIF ServerをOmeka Sとは別に導入するか、Omeka SのImage Serverモジュールを使用することができます。後者については、Omeka Sのみで実現することができるため、LAMP環境が構築されたレンタルサーバを利用して、IIIF準拠の画像やマニフェストファイルなどの配信が可能となります。レンタルサーバはCPUやメモリといったリソースが限定されますが、メンテナンスコストが低い点が利点として挙げられます。 一方、レンタルサーバなどのリソースが限られた環境に、上述のOmeka SのImage Serverモジュールを導入するには課題があります。Image Serverモジュールが動的にタイル画像を配信する際、この処理に時間がかかり、タイル画像の表示が遅れる事象が確認されました。((なお、事前にタイル画像を生成するオプションも提供されています。これにより、リクエストがある度にタイル画像を生成する処理は不要となりますが、ディスク使用量の増加といったデメリットもあります。)) 解決策 IIIFマニフェストにおいて、必ずしもIIIF Image APIに準拠する必要はなく、単純にJPEG画像等を参照することもできます。((なお、これにより画像の動的なリサイズや回転、切り出し等ができなくなるため、機能が限定されるデメリットもあります。)) www.kanzaki.com そこで、レンタルサーバなどのリソースが限られた環境において、Omeka Sを用いたIIIFマニフェストの配信を行うための新たなオプションとして、このImage APIを使用せずに、Omeka Sに登録されたJPEG画像等をそのまま使用する設定をIIIF Serverモジュールに追加しました。以下のversion 3.6.4.3から本機能が利用できます。 github.com 具体的には、IIIF Serverモジュールの以下の設定画面で有効化できます。 本モジュールは、東京大学工学・情報理工学図書館の工学史料キュレーションデータベースで使用されています。 curation.library.t.u-tokyo.ac.jp 先述した通り、本設定の有効化により、IIIFで利用できる機能が一部制限されるため、最善の手段ということではありませんが、リソースが限られたサーバ上でのIIIFマニフェストの配信手段のオプションとして、本機能がお役にたてば幸いです。
概要 「起絵図」のIIIF実装を行いました。東京大学駒場図書館所蔵「大日本海志編纂資料」に含まれる越絵図を対象にしています。 https://utda.github.io/kaishi/ 以下の動画から概要をご確認ください。 「起絵図」のIIIF実装 作成したアプリケーション 東京国立博物館による「越絵図」の説明は以下です。 「起絵図(おこしえず)」は、平面図を描いた台紙に、壁面や天井の図を貼り付け、建物の立体的な構造を再現する折畳式の簡易模型です。とくに小さな空間に複雑な立体構造を持つ茶室の再現に適した図法として活用されました。(東京国立博物館 - 展示 日本美術(本館) 日本の博物学シリーズ 起絵図より) この越絵図の表現を、IIIFの「代替資源の選択」を用いて実装しました。また、ビューア「Mirador 2」をカスタマイズし、越絵図の動きをアニメーションで表現できるようにしました。ビューアを開き、画面上部の「Play」ボタンを押してください。 作成方法 IIIFマニフェストファイルの作成 IIIFの「代替資源の選択」を参考に、以下のようなIIIFマニフェストファイルを作成します。 https://github.com/utda/kaishi/blob/master/docs/iiif/7-2-47/manifest.json itemの配列に対して、重ねて表示したい画像の情報を追加します。この時、onに指定するカンバスのURIについて、重ねたい画像の表示箇所を指定します。以下の例は、元の画像(重ねられる画像)のサイズで作成したカンバスに対して、開始位置(2560,512)から幅(3072,4096)までの範囲に画像を重ねるための記述です。 https://github.com/utda/kaishi/blob/master/docs/iiif/7-2-47/manifest.json#L111 この範囲の指定が最もコストがかかる部分ですが、今回は以下のように、重ねる画像の位置情報が記述されたxmlファイルがすでに存在しました。 https://github.com/utda/kaishi/blob/master/src/data/xmls_layered/7-2-47.xml このxmlファイルに記載された情報から上記のitemsの配列を自動作成しました。 Mirador 2のカスタマイズ Mirador 2のカスタマイズ方法はこちらに記載があります。この記載を参考に、以下のような記述を追加しました。 https://github.com/utda/kaishi/blob/master/docs/mirador/index.html#L95 「Play」「Stop」「Check All」「Clear」ボタンを追加し、それぞれのボタンをクリックした際に実行される関数を追加しています。まず、Miradorのレイヤータブにあるチェックボックスの一覧を取得します。次にsetIntervalを使って、一定間隔毎にチェックボックスをクリックします。 まとめ 以上、起絵図をお楽しみいただくとともに、IIIFのレイヤー機能を使ったアプリケーション作成の参考になりましたら幸いです。

概要 「透過光画像を使ったIIIFアプリケーション」を作成しました。東京大学総合図書館所蔵の「シェリー書簡」を対象にしています。 utda.github.io 作成したアプリケーション 本アプリケーションではIIIFの「代替資源の選択」を用いて、オリジナル画像と透過光画像を比較する環境を提供します。 4つの方法で比較環境を提供しており、「IMAGE COMPARISON WITH A SLIDER 」「MIRADOR」「IIIF CURATION VIEWER」「IMAGE ANNOTATOR」を用いています。 IMAGE COMPARISON WITH A SLIDER Digiratiが開発した画像比較ビューアを使用しています。画面中央のスライダーを動かして、画像を比較することができます。 MIRADOR Miradorのレイヤー機能を用いて比較します。画面左部のレイヤータブをクリックし、opacityを変更してみてください。 IIIF CURATION VIEWER CODH(Center for Open Data in the Humanities)が開発しているIIIF Curation Viewer Embeddedを用いて表示します。画面右上のラジオボックスで表示画像を切り替えることができます。 Image Annotator 神崎正英氏が開発しているビューアで表示します。画面右上のchoiceで表示内容を切り替えてください。…を行うと、アノテーションを付与している箇所のみ、透過光画像を表示することができます。 作成方法 Level 0 IIIF Image APIに準拠した画像の作成 Digirati社製のビューアについては、IIIFマニフェストは不要で、IIIF Image APIに準拠した画像が必要になります。そこで、今回はIIIF対応のImage Serverを必要としないIIIF Image APIのレベル0に準拠した画像生成を行いました。この利点として、Image Serverが不要となることで、GitHub PagesやAmazon S3といった静的ファイルのホスティングサービスのみでの画像公開が可能となり、運用コストやセキュリティリスクを軽減することができます。一方のデメリットとしては、事前に作成したタイル画像を配信するため、任意の範囲の画像切り出しに対応していない点があげられます。この点はカンバスに対して領域を指定するアノテーションやキュレーションでは問題になりませんが、その領域の切り出し画像そのものがほしいといったニーズには答えられないことが多いです。 今回は特定の領域の画像そのものが必要ではなかったため、IIIF Image APIのレベル0を採用することにしました。なお、Mirador等のビューアを使った画像比較では、IIIF Image APIを使用しない方法もあります。しかし、今回はDigirati製のビューアで本APIが必要だったため、Image APIのレベル0を使ったIIIFマニフェストファイルを作成することにしました。 IIIF Image APIのレベル0に対応した画像生成にはこちらのスクリプトを参考にしました。また、Excelファイルでまとめた情報を入力として、本スクリプトを実行可能な環境も用意しました。お役に立てば幸いです。 上記リポジトリの例にあるように、今回はGitHub Pagesでタイル画像を公開しました。 github.com IIIFマニフェストファイルの作成 IIIFの「代替資源の選択」を参考に、以下のようなIIIFマニフェストファイルを作成します。 代替資源を使ったIIIFマニフェストファイルの作成については、こちらの記事を参考にしてください。 ...