Trying iiif-prezi3

Overview As IIIF Presentation API 3 becomes more widespread, I found it increasingly difficult to understand the specification and create JSON files directly. So I tried using the following Python library, and this is a note for reference. https://github.com/iiif-prezi/iiif-prezi3 I used this library for converting the data published on the Toji Hyakugo Monjo WEB to IIIF, as introduced in the following article. The source code may be hard to read, but it is also published in the following repository, and I hope it is helpful. ...

June 19, 2024 · 9 min · Nakamura

Trying Out mirador-sync-windows

Overview mirador-sync-windows is described as follows. https://github.com/UCLALibrary/mirador-sync-windows When comparing multiple nearly identical images, such as different spectral images of the same object, it is helpful to apply actions simultaneously across multiple windows. Here is a usage demo: https://youtu.be/Ls2zvJpSRlc Note that this is a plugin for Mirador 2, and the repository has been archived. This time, I created a repository for trying out mirador-sync-windows, so I will introduce it. Repository https://github.com/nakamura196/mirador2-sync-windows/ ...

June 19, 2024 · 1 min · Nakamura

Converting Toji Hyakugo Monjo WEB Data to IIIF

Overview I had the opportunity to use images published on the Toji Hyakugo Monjo WEB, which publishes the National Treasure Toji Hyakugo Monjo held by the Kyoto Prefectural Library and Archives, and created a repository that converts the published data to IIIF format. https://github.com/nakamura196/toji_iiif The following dataset was used. https://hyakugo.pref.kyoto.lg.jp/?page_id=1481 In particular, you can view a list of images from the following URL. https://nakamura196.github.io/toji_iiif/ Key Points IIIF Collection You can access the IIIF collection from the following URL. This enables machine-readable access. ...

June 19, 2024 · 1 min · Nakamura

Trying tropy-plugin-iiif

Overview I had the opportunity to try tropy-plugin-iiif, so this is a memo about it. https://github.com/tropy/tropy-plugin-iiif tropy-plugin-iiif is described as follows. Tropy plugin to import IIIF manifests Preparation Install Tropy. https://tropy.org/ Next, download the latest zip file from the following link. https://github.com/tropy/tropy-plugin-iiif/releases/latest Open Preferences > Plugins. Click the “Install Plugin” button, select the downloaded zip file, and click “Enable”. Installation is now complete. Importing a IIIF Manifest Select tropy-plugin-iiif from File > Import. ...

June 6, 2024 · 1 min · Nakamura

Trying Out @iiif/parser

Overview I learned about an npm module called @iiif/parser, so I tried out some of its features. https://github.com/IIIF-Commons/parser Usage Below is an example. It converts a v2 IIIF manifest to v3. " i i i i t e } u m m m m y x s p p p p p p c ) c c ) } c } r ) e o o o o e o o ; o o : ; o ; e ; r r r r r n " n n m t } } n e f t c t t t t M t s h s s a P r s v e u l a t t t t n r y c c c s c c s t e t r < < i { { { C n d t i o o o o e a o e n c n f / d / e o i e [ p [ f f m { n n n t t n t h t h o < < f i < d n u c B m f f u s d e e i s s s D c s D a . A ( r d B o v C i t s o u p e a r : a t s s t t t a h o a n p n m i < < d u r o v " e n t o s u l / t c t e t l t d r d v L T i t m c m > ; S v t n t l , / a h U < r m c a ( e a l e C c > a e i t v p r o v t > l p t e o e D t i , A r v e a o ( e . ( e v o l b x d y a l e n > o a o a r n n a s i n l o s n n c r e " S e n a e t = p l a q C n s n t t , t t f e i s d : i p i v o r r E u n v s l I " e u c u h s e e P s a u t f e C d o f e n o r r b t e s n u = e e i a t N n r L P n U . t o s > n e r v r o r m D r N h p r " = h r n y a t } e a a = c r d D n t s s t e ) r o i e t a t u l t { o e g p m s s b g t l l a v r = e t e r ( r t f M m m t " e u l d e e e P f e e e a i ] . t e i > J d t { " a a e l x r d = = = a r n l s n o i a r n = s M e F f = u n = F t l e { " " g o t , P y n = t ] t g { o a d a e l i " o " } r ( s m e m a a ; c M a n n M i t ( t f f r = e u t s t T r C u . = a w i a l c e ( e l = " ) b - P " i e s o s u n a = f n e h v ) s e " h m 8 a r o x e m e - u i i e i d i e ; t x u t = i " r e n t r p S t s f t a s f n n ( r t > t > s a 2 I P o t o e e w t e t g t u f l p " e c n r n a k S s f a s o : r l " s s > r t } p e e t y t t e i = t o l e : e S P " u n e o a t t ) f r R ) x v / t u r ; f t f t < . t = c c ; e e ; - a / U b e r r s s a e h r o t c a c l e r m o } o P t c < a ( e n c o c o u x l i d m m a r . M s m s v h n t l e a ( t a f r i j a y a p e v . = m e < t " r " s n p n n n o r o e F g " p . / a @ o . e g / i c i n t r r o a I l t B = i m / r > r f f s P t r p I e a u { i p ( ( e e ( e e r c i m - I . r t d i " a ) p s s . e o n E 4 F c g t a f f g o t t j s n g v " o e o t / l e { / D U s e v e M m t n a p o s i a r o n e m n o a / . > } a w / i t l n t r a t n n i v r b p i a ) ( a t n < S i i a s i a f > ; ) t i H u f i l e t r / ( ; i m f T b e f u r e s f n o a e M m s / e / - e b u n n s L i t m ) p r r d l 2 i t F t a } r e / 0 l ( f . o = U n e a p 4 ) m e " r { R i s c r 7 ; a s ) m h L f e t e 9 n t ; E a e n " " b i " l n s t ; ; - f , e d v t a d e m l 2 . t b s e e e ) j i b t r n S " s o 4 J r t u o n - s o > b n - 4 o r ) m " 2 e n ) : i " a ) ; t ; a ; } - o > 9 i 5 d b 8 = - > f 2 { 7 e 1 c 4 2 3 e 4 b / m a n i f e s t " First, import it as follows. ...

June 5, 2024 · 8 min · Nakamura

Publishing Videos with Omeka S

Overview I investigated how to publish videos with Omeka S, so this is a memorandum. Standard Features Omeka S supports video out of the box. Below is an example using the standard features. I used the following mp4 file: https://file-examples.com/storage/fe4e1227086659fa1a24064/2017/04/file_example_MP4_480_1_5MG.mp4 Specifically, the <video> tag was used as follows: < d / i d v v i i < v v c d a i > l e d a o h e s r o s s e > = r f " c = m = " e " h d h t i t t a t p - p s r s : e : n d o e o m r m e e k f k a i a - l - d e d . " . a > a w w s s . . l l d d a a s s . . j j p p f f i i l l e e s s o o r r i i g g i i n n a a l l 5 5 0 0 6 6 0 0 f f 3 3 b b a a 2 2 5 5 3 3 7 7 6 6 7 7 6 6 7 7 4 4 6 6 a a 7 7 a a a a 6 6 9 9 c c 9 9 8 8 8 8 4 4 c c 6 6 4 4 d d a a a a c c 3 3 0 0 0 0 b b . . m m p p 4 4 " " > 5 c 0 o 6 n 0 t f r 3 o b l a s 2 = 5 " 3 " 7 > 6 7 6 7 4 6 a 7 a a 6 9 c 9 8 8 4 c 6 4 d a a c 3 0 0 b . m p 4 < / a > Similarly, when uploading a .mov file, it played successfully, though this may be browser-dependent. ...

June 4, 2024 · 19 min · Nakamura

Converting IIIF Curation Lists to TEI Facsimile Elements

Overview I created a library to convert IIIF Curation Lists to TEI facsimile elements. https://github.com/nakamura196/iiif-tei I also prepared a demo page for performing this conversion. https://nakamura196.github.io/nuxt3-demo/iiif-tei-demo A video demonstrating how to use it is available below. https://youtu.be/Y5JlrJbtgz8 I hope this serves as a useful reference.

May 17, 2024 · 1 min · Nakamura

How to Convert CMYK Color Images Without Color Inversion

Overview For example, when delivering images via IIIF, performing the following conversion on CMYK color images using ImageMagick would sometimes result in inverted colors. c o n v e r t s o u r c e _ i m a g e . t i f - a l p h a o f f - d e f i n e t i f f : t i l e - g e o m e t r y = 2 5 6 x 2 5 6 - c o m p r e s s j p e g ' p t i f : o u t p u t _ i m a g e . t i f ' Original image ...

May 8, 2024 · 3 min · Nakamura

Prototyping Digital Archive Tools: Mainly IIIF Usage Support

Overview I created “Digital Archive Tools.” It mainly provides support features for using IIIF (International Image Interoperability Framework). https://nakamura196.github.io/viewer/ Feature 1: Image Comparison with Mirador 3 https://nakamura196.github.io/viewer/input You specify the URLs of the manifest files and the canvas IDs you want to compare, as shown below. As a result, you can compare images as follows. Feature 2: Page Number Specification Tool ! This only supports IIIF Presentation API Version 2. ...

May 2, 2024 · 1 min · Nakamura

Workaround When Presentation API v2 Manifests Cannot Be Displayed in Mirador 3

Overview When loading a Presentation API v2 manifest file like the following into Mirador 3, a display error occurred. https://gist.githubusercontent.com/nakamura196/42fb6bca6a9fa137234c334cb313fc58/raw/4188ebccb7406ff5132331a4fecc4ace8bdd7ebc/ng.json Below is the display in Mirador 3. I investigated the cause and workaround, and am sharing the findings here. Cause The following error message was displayed. Despite providing IIIF v2 input, it appeared to be interpreted as v3. E r r o r a a a a a a a a a a : t t t t t t t t t t A P A t t c i h i h F r r . . a n n u I o r p g n d ( d ( n I p a a e v e d e d c I e y r t a x e x e t F r . s L s . f . f i t m e a e j a j a o v y a b s s u s u n 3 V p ( e . : l : l . a P l j 6 t 8 t m l l r s 7 M 1 M a o u < o ( : : e : e p c e a p M 1 2 m 4 m T a . n e a 6 5 o 0 o o l t o r n 2 i i P i s n t i : z z r z : y y f 1 e e o e 1 m V e 2 . . p d 2 o a s j j s 6 u l t s s p : s u R : : ( r 2 > e e 1 1 O o 0 ) . s 2 2 p p t o 3 3 e e s u : : n r : r 2 2 S t 1 c 0 0 e y 2 e ) ) a 3 . d v : t r a 2 s a l 9 : g u ) 3 o e 5 n : V m 2 i u 8 e s ) w t e r h . a j v s e : 3 a 9 n : 1 a 2 r ) r a y a s t h e v a l u e f o r a g i v e n l a n g u a g e . This appeared to occur when the canvas label was written in object format, as shown below: ...

February 6, 2024 · 5 min · Nakamura

Updating the IIIF Viewers Module for Omeka S

Overview IIIF Viewers is one of the modules for Omeka S. https://github.com/omeka-j/Omeka-S-module-IiifViewers The latest release is available here: https://github.com/omeka-j/Omeka-S-module-IiifViewers/releases/latest I made several updates this time, so this is a memorandum. Universal Viewer Version Update I updated Universal Viewer to v4.0.25. Additionally, I documented how to update Universal Viewer in the following section of README.md: https://github.com/omeka-j/Omeka-S-module-IiifViewers?tab=readme-ov-file#compilation-of-universal-viewer This was based on the documentation in the following module: https://github.com/Daniel-KM/Omeka-S-module-UniversalViewer I also documented how to update Mirador, but since the latest version was already installed, no update was performed. ...

February 5, 2024 · 6 min · Nakamura

Created a Simple TEI/XML File Viewer Using Next.js

Overview I created a simple viewer that displays the contents of TEI/XML files. https://github.com/utda/tei-viewer Here is a display example targeting TEI/XML of the Koui Genji Monogatari: https://utda.github.io/tei-viewer/?u=https://kouigenjimonogatari.github.io/tei/01.xml&v=true Usage As a minimum feature, when a IIIF manifest file is associated, the Mirador viewer is displayed. The association method is based on the following format: https://github.com/TEI-EAJ/jp_guidelines/wiki/IIIF画像とのリンク Additionally, when the n attribute is given to the pb tag, a page number display feature is provided. Furthermore, for Japanese language support, when v=true is given as a query parameter, vertical text is displayed. ...

February 5, 2024 · 2 min · Nakamura

An Example of Specifying Image Frames in Universal Viewer

In recent years, it has become common for museums, libraries, and archives to publish images using the International Image Interoperability Framework (IIIF), an international framework for image sharing. https://iiif.io/ For publishing IIIF images, viewers such as Mirador and Universal Viewer are used. https://projectmirador.org/ https://universalviewer.io/ In digital archive systems that adopt the latter Universal Viewer, you can often obtain a URL specifying a particular frame by appending “#?cv={image frame index}”. Note that the index starts from 0, so to specify the 2nd frame, you would use 1. ...

February 2, 2024 · 1 min · Nakamura

How to Access S3 Buckets and Enable SSL Communication Using Docker-based Cantaloupe

Overview I introduced how to use the Docker version of Cantaloupe in the following article. To use this Docker-based Cantaloupe in a (non-large-scale) production environment, connection to Amazon S3 and SSL support are required. Here is an example of how to do this. Connecting to Amazon S3 The official documentation is available at: https://cantaloupe-project.github.io/manual/5.0/sources.html#S3Source The following Japanese article is also available: For the Docker version covered here, information was found at: ...

January 27, 2024 · 8 min · Nakamura

Trying the Docker Version of Cantaloupe

Overview While trying the Docker version of TEI Publisher, I found that a Docker version of Cantaloupe was being used, so I created a repository for using it standalone. https://github.com/nakamura196/docker_cantaloupe Usage instructions are provided in the README of the above repository. The following Docker image is used. https://hub.docker.com/r/islandora/cantaloupe Reference: Images That Can Be Served by Cantaloupe This is explained on the following page. https://cantaloupe-project.github.io/manual/5.0/images.html For high-resolution images, JPEG2000 or Pyramidal Tiled TIFF is recommended. ...

January 25, 2024 · 1 min · Nakamura

Georeferencing with Allmaps

Overview This time, we try georeferencing using Allmaps. https://allmaps.org/ Allmaps is described as follows. Allmaps makes it easier and more inspiring to curate, georeference and explore collections of digitized maps. This time, we use the “Bird’s-eye View of the University of Tokyo Main Campus and Faculty of Agriculture Buildings” held by the University of Tokyo Library for Agriculture and Life Sciences. https://da.dl.itc.u-tokyo.ac.jp/portal/assets/187cc82d-11e6-9912-9dd4-b4cca9b10970 We create the following result. https://viewer.allmaps.org/?url=https%3A%2F%2Fannotations.allmaps.org%2Fimages%2F2e1d3f991aad6cb4 ...

December 7, 2023 · 22 min · Nakamura

Example of Creating a Page Using Universal Viewer v4

Overview I created a page where Universal Viewer is displayed across the entire page, as shown below, so this is a memo of the process. Universal Viewer v4 is used. https://nuxt3-demo-nine.vercel.app/uv/?manifest=https://dl.ndl.go.jp/api/iiif/3437686/manifest.json Source Code Please refer to the following source code. https://github.com/nakamura196/nuxt3-demo/blob/main/public/uv/index.html Referring to the following page: https://github.com/UniversalViewer/universalviewer/wiki/UV-Examples and the following sample, the viewer size is adjusted to change according to page resizing. https://codesandbox.io/s/uv-url-adapter-example-9d6x8 It also includes code to receive a manifest query parameter. ...

November 24, 2023 · 1 min · Nakamura

Cantaloupe: Running as a Service

Overview The Cantaloupe Image Server can be run with the following command. j a v a - D c a n t a l o u p e . c o n f i g = c a n t a l o u p e . p r o p e r t i e s - X m x 2 g - j a r c a n t a l o u p e - 5 . 0 . 5 . j a r However, with this method, the Cantaloupe server stops when the SSH connection is lost, for example. ...

November 16, 2023 · 6 min · Nakamura

Cantaloupe: Serving Images Stored in Amazon S3

Overview This is a note on how to serve images stored in Amazon S3 using Cantaloupe Image Server, one of the IIIF image servers. As an alternative method for serving images stored in Amazon S3, I also introduced an approach in the following article. (The tools may have been updated since the article was written, so the instructions may not work exactly as described.) Configuration The official manual is available at the following link. ...

November 16, 2023 · 7 min · Nakamura

Created a Python Library to Convert Freehand Annotations to Rectangles

Created a Python Library to Convert Freehand Annotations to Rectangles Taking freehand annotations created as shown below as input, they are converted to rectangular annotations as follows. The “Tanaka Yoshio Hakubutsugaku Collection” (held by the University of Tokyo General Library) is used. For specific usage instructions, please refer to the following notebook. https://github.com/nakamura196/000_tools/blob/main/フリーハンドのアノテーションを矩形にconversionする.ipynb I hope this serves as a useful reference for utilizing IIIF annotations.

November 2, 2023 · 1 min · Nakamura