Skip to content

Commit

Permalink
update what is iiif, start filling out day one
Browse files Browse the repository at this point in the history
  • Loading branch information
dnoneill committed May 20, 2024
1 parent ed5bb31 commit 645fde3
Show file tree
Hide file tree
Showing 16 changed files with 101 additions and 6 deletions.
12 changes: 8 additions & 4 deletions dhsi/SUMMARY.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,13 +2,17 @@

1. Introductions
1. Week Overview (Jeff)
2. What is IIIF and Why (Niqui)
3. The Image API (Jeff)
1. Exercise
2. [What is IIIF (Niqui)](day-one/whatisiiif.md)
3. [Why use IIIF (Niqui)](day-one/whyiiif.md)
4. [The Image API (Jeff)](day-one/imageapi.md)
1. [Exercise](day-one/exercise.md)

## Monday, Session 2: 1:00pm-2:15pm

4. Introduction to Image Hosting
4. [Introduction to Image Hosting](day-one/image-hosting.md)
1. [IIIF workbench](day-one/workbench.md)
2. [Level 0 Static](day-one/level-0-static.md)
3. [Cantaloupe](day-one/cantaloupe.md)


## Tuesday, Session 3: 9:00am-10:15am**
Expand Down
1 change: 1 addition & 0 deletions dhsi/day-one/cantaloupe.md
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
needs content
1 change: 1 addition & 0 deletions dhsi/day-one/exercise.md
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
needs content
3 changes: 3 additions & 0 deletions dhsi/day-one/image-hosting.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
This section will go over some of the ways we can create and host images using IIIF image API standards.

Please make sure you have a [GitHub account](https://github.com) created.
1 change: 1 addition & 0 deletions dhsi/day-one/imageapi.md
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
needs content
Binary file added dhsi/day-one/img/workbench-1.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added dhsi/day-one/img/workbench-2.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added dhsi/day-one/img/workbench-3.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added dhsi/day-one/img/workbench-4.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added dhsi/day-one/img/workbench-5.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added dhsi/day-one/img/workbench-6.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added dhsi/day-one/img/workbench-7.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
45 changes: 45 additions & 0 deletions dhsi/day-one/level-0-static.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,45 @@
# Creating static tiled images

There are a couple of command line libraries that will create static images. They are often listed with dynamic iiif servers or api libraries in the [Awesome IIIF readme] (https://github.com/IIIF/awesome-iiif?tab=readme-ov-file).


1. [iiif_s3](https://github.com/cmoa/iiif_s3) - Ruby library for generating a static IIIF level 0 Image and Presentation API server on Amazon S3.
2. [iiif](https://github.com/zimeon/iiif) - Python library providing a reference implementation of the Image API. Also includes a test server and static tile generator.
3. [iiif-tiler](https://github.com/glenrobson/iiif-tiler) - Java library for generating static IIIF tiles (compliant with the V2.1 and 3.0 of the IIIF Image API).
4. [iiif-static-choices](https://github.com/bodleian/iiif-static-choices) (not in readme).


# Automating the process
1. https://github.com/dnoneill/dhsi-iiif-2024/blob/main/day1/images_to_iiif.py

The script above allows pdf, png, jpg, jp2, and tif files to be dumped into a folder, the script to be run and all files in the folder will be created into level 0 IIIF images. It uses the iiif library (#2) to create these tiled images.

It also preserves the file structure of the files you have dumped. For example, if you have two folders (cat-photos and dog-photos) in images, the output directory will keep that folder structure.

## Install and running steps
1. Clone repository locally. `git clone https://github.com/dnoneill/dhsi-iiif-2024.git`
2. Make sure python with pip is installed
3. Create virtual environment. `python3 -m venv [nameofenv]`
4. Activate virtual environment. `source [nameofenv]/bin/activate`
5. Install dependencies `pip3 install -r requirements.txt`
6. Dump files you want to convert into the `images` folder.
7. Move to the script directory `cd day1`
8. Run the script `python3 images_to_iiif.py`
9. View your images in the `iiif` folder

## If the above doesn't work
1. Create fork of https://github.com/dnoneill/dhsi-iiif-2024
2. Clone your fork locally: `git clone https://github.com/[yourusername]/dhsi-iiif-2024`
3. add your images to the `images` folder.
4. add your images to the repository `git add images`
5. create a commit message `git commit -m "add images"`
6. push to your repository `git push origin main`
7. Wait for the script to run, you can view the progress here: https://github.com/[yourusername]/dhsi-iiif-2024/actions
8. When it's green you should have files in the iiif folder.


# Thoughts?
- Look at the files we have created. What can you tell about them. How do you think these are used?
- Do they differ from the Workbench?
- What are some limitations of this method?
- What are some positivies?
4 changes: 2 additions & 2 deletions dhsi/day-one/whatisiiif.md
Original file line number Diff line number Diff line change
Expand Up @@ -35,7 +35,7 @@ For a fuller list of institutions who advertise their IIIF resources please see

## Image*

First and foremost IIIF started with the problem of making large images available on the Web. This means allowing users to zoom into large images in way that is scaleable and allows quick zooming on large images.
First and foremost IIIF started with the problem of making large images available on the Web. This means allowing users to zoom into large images in way that is scaleable and allows quick zooming without visual lag on large images.

One of the examples of this is with the Japanese Tax Map below. In the image Wayne Vanderkuil, the Stanford lead photographer is shown next to the map for a sense of scale. Wayne is 6' 4" (1.93m) tall. The map is so big that it had to be photographed in separate sections and stitched together using Photoshop. If you click on the image below you will be taken to the IIIF image which allows you to zoom around this massive map.

Expand Down Expand Up @@ -68,7 +68,7 @@ First because IIIF provides a standard way of exposing images and metadata it is
* [Annona](https://ncsu-libraries.github.io/annona/tools/#/display?url=https://damsssl.llgc.org.uk/iiif/2.0/4574752/manifest.json&viewtype=iiif-storyboard&settings=%7B%22fullpage%22%3Atrue%7D)
* [Clover](https://samvera-labs.github.io/clover-iiif/docs/viewer/demo?iiif-content=https://damsssl.llgc.org.uk/iiif/2.0/4574752/manifest.json)

For instructions on how to take content from one viewer to another there is this [medium post](https://iiif-io.medium.com/how-to-use-iiif-resources-and-image-viewers-bd378a68b013).
For instructions on how to take content from one viewer to another there is this [medium post](https://iiif-io.medium.com/how-to-use-iiif-resources-and-image-viewers-bd378a68b013). We will also be covering this in the workshop.

### Interoperable Images

Expand Down
15 changes: 15 additions & 0 deletions dhsi/day-one/whyiiif.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
# Why use IIIF?

## Interoperability
- Interoperability provides the ability to mix and match tools
- Allows developers to create open tools not wedded to closed standards
- Excel vs. CSV

## Storage implications
- No longer have to create small, medium, large derivatives

## High quality images
- Allows for zooming with high quality images without lag time

## Reusable
- Format of IIIF apis allow easy sharing, embedding
25 changes: 25 additions & 0 deletions dhsi/day-one/workbench.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
# IIIF training workbench
The IIIF training workbench that is often used in IIIF training workshops like this. It allows for creating IIIF views via a browser. We are going to be using it to create some IIIF images.

1. Open https://workbench.gdmrdigital.com/login.xhtml
2. Click on the Login with GitHub button
![](img/workbench-1.png)
3. Click "Create project" button
![](img/workbench-2.png)
4. Name your project and click create
![](img/workbench-3.png)
5. Click on the upload button in the upper right hand corner.
![](img/workbench-4.png)
6. Click on browse and choose image from your computer.
7. Provide a name for the image and choose IIIF version
![](img/workbench-5.png)
8. Wait for the image to process
![](img/workbench-6.png)
9. Look at the links that are provided when the process is finished running.
![](img/workbench-7.png)


# Thoughts?
- What are some of the limitations of this approach?
- What are some of the positives of this approach?
- Any other thoughts?

0 comments on commit 645fde3

Please sign in to comment.