{ "cells": [ { "cell_type": "markdown", "id": "240ec076-c99c-4615-be4c-29caeaa8b757", "metadata": {}, "source": [ "# Upload Tasmanian Post Office Directory images to Amazon s3 for IIIF\n", "\n", "We're going to make the page images from the Tasmanian Post Office Directories available via IIIF so they can be easily embedded within the new search interface. To do this we'll convert into pyramidal TIFFs using [pyvips](https://pypi.org/project/pyvips/) and then upload them to an Amazon s3 bucket. We'll then create a [Serverless IIIF](https://github.com/samvera-labs/serverless-iiif) app and point it at the bucket.\n", "\n", "You'll need to have set up Amazon authentication on your computer. See the [boto3 documentation](https://boto3.amazonaws.com/v1/documentation/api/latest/guide/quickstart.html#configuration) for details.\n", "\n", "You'll also need to create an s3 bucket with the correct permissions. The easiest way to do that is to use Simon Willison's [s3-credentials](https://s3-credentials.readthedocs.io/en/stable/) tool. Once that's installed you can create a bucket with public access permissions like this (change the region as necessary):\n", "\n", "``` shell\n", "s3-credentials create tasmania-directories --public --create-bucket --bucket-region \"ap-southeast-2\"\n", "```\n", "\n", "You'll also want to enable CORS.\n", "\n", "``` shell\n", "s3-credentials set-cors-policy tasmania-directories\n", "```" ] }, { "cell_type": "code", "execution_count": 2, "id": "7940a82e-a82e-42fc-8c40-f698e96fd87e", "metadata": {}, "outputs": [], "source": [ "from pathlib import Path\n", "\n", "import boto3\n", "import pyvips\n", "from IPython.display import Image\n", "from natsort import natsorted, ns" ] }, { "cell_type": "markdown", "id": "4049ee98-fab4-470f-8523-c7489e3bd9ae", "metadata": {}, "source": [ "This code just loops through all the volumes of the Post Office Directories, then through all the page images for each volume. Each image is converted to a pyramidal TIFF then uploaded to the s3 bucket." ] }, { "cell_type": "code", "execution_count": null, "id": "b888857f-0273-4ef2-a1af-257fd8847c25", "metadata": { "tags": [ "nbval-skip" ] }, "outputs": [], "source": [ "# Initialise s3 client\n", "s3 = boto3.client(\"s3\")\n", "\n", "# Loop through volumes in the 'tasmania' directory\n", "# Each volume has its own directory containing text and images\n", "vols = natsorted(\n", " [d for d in Path(\"tasmania\").glob(\"AUTAS*\") if d.is_dir()], alg=ns.PATH\n", ")\n", "for vol in vols:\n", " print(vol.name)\n", " # Create directory for TIFFs\n", " output_dir = Path(vol, \"tiffs\")\n", " output_dir.mkdir(exist_ok=True)\n", " # Loop through all the images in this volume\n", " vol_images = natsorted(Path(vol, \"images\").glob(\"*.jpg\"), alg=ns.PATH)\n", " for img in vol_images:\n", " pid = img.stem\n", " # Convert image to a pyramidal TIFF\n", " image = pyvips.Image.new_from_file(img)\n", " image.tiffsave(\n", " Path(output_dir, f\"{pid}.tif\"),\n", " pyramid=True,\n", " tile=True,\n", " compression=\"jpeg\",\n", " Q=90,\n", " tile_width=256,\n", " tile_height=256,\n", " )\n", " # Upload TIFF to s3, note the 'ContentType' setting so images will have appropriate headers\n", " s3.meta.client.upload_file(\n", " str(Path(output_dir, f\"{pid}.tif\")),\n", " \"tasmania-directories\",\n", " f\"{pid}.tif\",\n", " ExtraArgs={\"ContentType\": \"image/tiff\"},\n", " )" ] }, { "cell_type": "markdown", "id": "ccef5cf8-1bdb-4be2-9ed7-879d332144ab", "metadata": {}, "source": [ "Once the images have been uploaded you can set up the [Serverless IIIF](https://github.com/samvera-labs/serverless-iiif) app. The latest version is pretty simple to get going. Just select the 'Standalone (Lambda-Only) Version' and add your bucket name. Of course, you'll need to have an Amazon account. Once the app is ready, you'll need to find the IIIF API endpoint. This is a bit tricky, but from the app page, click on 'Deployments', then 'Cloud Formation Stack'. Then from the cloud formation page, click on 'Outputs'. The IIIF API is listed as 'Endpoint'. For example, the endpoint for the Tasmanian Post Office Directory images is: `https://m6mq23u5ipveatowihutcbnph40eadkk.lambda-url.ap-southeast-2.on.aws/iiif/2/`.\n", "\n", "The IIIF identifier for an image is its filename in the s3 bucket, minus the file extension. So the id of the image with the filename `AUTAS001126438076P1890-91PDF-127.tif` is just `AUTAS001126438076P1890-91PDF-127`. To access information about the image from the new IIIF server, you just add the id to the endpoint and add `info.json`. For example:\n", "\n", "https://m6mq23u5ipveatowihutcbnph40eadkk.lambda-url.ap-southeast-2.on.aws/iiif/2/AUTAS001126438076P1890-91PDF-127/info.json\n", "\n", "To access the image you just make an [IIIF image request](https://iiif.io/api/image/2.1/). Let's display a 250px wide thumbnail of the page above." ] }, { "cell_type": "code", "execution_count": 17, "id": "cd7b7721-9b8a-4120-b76b-a1d523514b8a", "metadata": {}, "outputs": [ { "data": { "image/jpeg": "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", "text/plain": [ "" ] }, "execution_count": 17, "metadata": {}, "output_type": "execute_result" } ], "source": [ "Image(\n", " \"https://m6mq23u5ipveatowihutcbnph40eadkk.lambda-url.ap-southeast-2.on.aws/iiif/2/AUTAS001126438076P1890-91PDF-127/full/250,/0/default.jpg\"\n", ")" ] }, { "cell_type": "markdown", "id": "2fa14c61-1067-49cf-b4a2-c04b0dee6619", "metadata": {}, "source": [ "----\n", "Created by [Tim Sherratt](https://timsherratt.org/) for the [GLAM Workbench](https://glam-workbench.net/) as part of the [Everyday Heritage](https://everydayheritage.au/) project." ] } ], "metadata": { "kernelspec": { "display_name": "Python 3.9.9 64-bit", "language": "python", "name": "python3" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.9.9" }, "vscode": { "interpreter": { "hash": "e7370f93d1d0cde622a1f8e1c04877d8463912d04d973331ad4851f04de6915a" } }, "widgets": { "application/vnd.jupyter.widget-state+json": { "state": {}, "version_major": 2, "version_minor": 0 } } }, "nbformat": 4, "nbformat_minor": 5 }