← THE LIBRARY

About

The Library of Patina is an archive of weathered surfaces. Plates of pure texture, extracted from donated photographs, shelved by categories the collection invents for itself.

01the collection

The library collects patinas, the surfaces that time, weather, touch and neglect leave behind. Not objects, and not photographs of objects. Each holding is a plate, a tight crop of surface in which the thing it came from should no longer be legible. The texture is the specimen. The plates are extracted from ordinary photographs donated to the library, at present the photographs of one life, and the source photograph is not kept. Every plate is free to download and use, for whatever reason people have, under an open licence.

FIG 01from photograph to plate

One photograph and the · regions taken from it. The rectangles are the crops as recorded. This photograph is shown here and nowhere else in the library.
02the argument

Boris Groys argues that the collection does not mirror an order already present in the world. Collecting produces the order, and things become legible, and become worth keeping, by entering it.[1] This library takes the argument literally. The material is incidental, since none of these surfaces was the reason its photograph was taken, and the premise is that accessioning is enough to make them worth keeping. It refuses every category that an image cannot testify to. No material, no process, no cause, because a photograph of a green crust cannot prove it is copper. Instead the categories are generated by the collection itself. Plates are embedded by their appearance and clustered into bays, and the bays are re-derived each time new plates are accessioned. The catalogue rewrites itself as the collection grows.

Aby Warburg's Bilderatlas Mnemosyne is an older precedent for shelving by resemblance rather than taxonomy, arranging images on black cloth by visual affinity.[2] Warburg used adjacency to argue descent across centuries. The bays claim nothing beyond resemblance.

03what a plate is

Plates are extracted by surface-works, an open pipeline built for this library. Surface regions are proposed by the Segment Anything Model's automatic mask generator, with its quality thresholds, predicted IoU, stability and minimum area, deciding how many regions survive.[3] The approach of treating segmented regions as material samples follows work like Material Palette.[4] Each region is cropped as its largest inscribed rectangle at source resolution, so a plate contains nothing from outside the region it names, then gated for enough texture (entropy, standard deviation), enough sharpness (Laplacian variance) and enough pixels. What survives the gates still faces the collector. Every plate is accepted or rejected by hand before it is accessioned.

04what a record knows

A record contains only what the image can say and what the acquisition can attest. From the image come pattern, the describable texture attributes of Cimpoi et al., cracked, stained, pitted, veined, ranked against that fixed vocabulary of forty-seven;[5] colour, named after the ISCC-NBS designation system from the plate's dominant CIELAB colour;[6] and character, the perceptual texture axes of Tamura et al., coarseness, contrast and directionality.[7] From the acquisition come capture time and GPS from EXIF, camera, the donor of the source photograph, the plate's licence, and provenance, meaning the source file's hash and the exact crop rectangle. The source file itself is not retained; the hash attests that it existed without permitting its recovery.

Accession numbers follow the Spectrum collections-management convention, year, batch and item, and encode nothing.[8]

FIG 02one record

A single plate with its fields divided by origin, derived from the image on one side and attested at acquisition on the other.
05the shelving

Every plate is embedded with DINOv2 self-supervised vision features weighted 0.65[9] concatenated with an explicit CIELAB colour descriptor weighted 0.35, so the balance between texture and colour is a stated parameter rather than an accident of the model. Bays are found by HDBSCAN density clustering,[10] and plates no bay claims remain honestly unshelved. Each bay is annotated after the fact with what its members share, from a fixed vocabulary. The groups are not specified in advance, the words for them are. Plates also carry UMAP coordinates,[11] a layout in which nearby plates resemble one another, awaiting a future atlas view, a mode of exploring collections proven by projects like PixPlot and the Collection Space Navigator.[12]

Both blocks are standardised before they are blended. Without that, the texture features occupy so narrow a band that colour decides the shelving whatever the weight says, and most of the collection falls into one undifferentiated bay. Standardised, the same plates divide into · bays, and · of · plates are claimed by none of them.


Colophon

How this register is made, the archival standards it borrows from, how they are applied, and what the site is built with.

Anumbering

Spectrum, the collections-management standard required of accredited UK museums, requires every accessioned object to carry one unique number, and requires that the number itself carry no catalogue information, no classification codes and no locations, because classifications change and numbers must not.[8][13] Accessions here therefore identify. The bay a plate is shelved in is a facet of the record, not of the number, necessarily so since bays are re-derived as the collection grows. The schema reserves a field for IGSN, the DOI-based persistent identifier used for physical samples in the geosciences.[14]

Bstandards and settings

Where a published standard or method exists for a cataloguing decision, the register follows it and cites it below. Where a value depends on a setting, the setting is given.

  • Regions Segment Anything ViT-B, predicted IoU 0.88, stability 0.92, 32 points per side, run on a 1024 px copy and projected back so plates are cut at source resolution.
  • Gates entropy 4.5 bits, standard deviation 12.0, Laplacian variance 40.0, short side 512 px, measured on a copy reduced to 1024 px long side.
  • Selection non-maximum suppression at IoU 0.4, maximum three plates per photograph.
  • Pattern zero-shot CLIP ViT-B/32 over the 47 attributes of the Describable Textures Dataset, top three kept.
  • Colour k-means over CIELAB, k=4, the largest cluster named by rules approximating ISCC-NBS level-2 designations.
  • Character Tamura coarseness, contrast and directionality at 256 × 256.
  • Embedding DINOv2 ViT-S/14 with a 64-bin CIELAB histogram. Each block is standardised per dimension across the collection, then weighted 0.65 texture to 0.35 colour, so the balance is a stated ratio rather than a consequence of the two blocks' numeric spread.
  • Clustering HDBSCAN, Euclidean, minimum bay size 2, unshelved retained, with an agglomerative fallback if more than half the collection is unshelved.
  • Projection UMAP, cosine, n_neighbors 15, min_dist 0.15, seed 42.

What cannot be read from the image is recorded as fact, donor, capture time and place, or not at all.

Ctypography

Two typefaces with strict roles, both open-licence (SIL OFL) and self-hosted so the register renders identically everywhere. Archivo is the reading voice, with its expanded width reserved for the identity and series titles. Martian Mono is the instrument voice, and only ever speaks in numbers, field labels and badges.[15]

Dbuild

A static site built with Vite and TypeScript. The library itself is two WebGL scenes rendered with Three.js, the card matrix (raycast hover, eased pose targets) and the application room (orbit controls, tiled textures, decal stamps).

surface-works is Python, using SAM ViT-B for regions, OpenCV for gates and colour analysis, CLIP zero-shot for pattern attribution, classical computations for character, HDBSCAN and UMAP for the shelving, with a human review sheet between extraction and accession. Both are open source, and every plate is credited to its donor.

github.com/sandeepSH95/surface-works
Ereferences
  1. [1]Groys, B. (2021). Logic of the Collection. Sternberg Press, Berlin. ISBN 978-3-95679-526-8. sternberg-press.com — logic of the collection
  2. [2]Warburg, A. Bilderatlas Mnemosyne. The Warburg Institute. warburg.sas.ac.uk — bilderatlas mnemosyne
  3. [3]Kirillov, A. et al. (2023). Segment Anything. (open access) arxiv.org/abs/2304.02643
  4. [4]Lopes, I. et al. (2024). Material Palette: Extraction of Materials from a Single Image. CVPR 2024 (open access). arxiv.org/abs/2311.17060
  5. [5]Cimpoi, M. et al. (2014). Describing Textures in the Wild. CVPR 2014 (open access). arxiv.org/abs/1311.3618
  6. [6]ISCC–NBS System of Color Designation. Open overview. en.wikipedia.org — ISCC-NBS system
  7. [7]Tamura, H., Mori, S. & Yamawaki, T. (1978). Textural Features Corresponding to Visual Perception. Open explainer with formulas. is.muni.cz — Tamura features (PDF)
  8. [8]Collections Trust. Spectrum 5.1 — Numbering guidance. collectionstrust.org.uk/resource/numbering
  9. [9]Oquab, M. et al. (2023). DINOv2: Learning Robust Visual Features without Supervision. (open access) arxiv.org/abs/2304.07193
  10. [10]McInnes, L., Healy, J. & Astels, S. (2017). hdbscan: Hierarchical density based clustering. JOSS (open access). joss.theoj.org — hdbscan
  11. [11]McInnes, L., Healy, J. & Melville, J. (2018). UMAP: Uniform Manifold Approximation and Projection. (open access) arxiv.org/abs/1802.03426
  12. [12]Ohm, T. et al. (2023). Collection Space Navigator. (open access) · PixPlot, Yale DHLab. arxiv.org/abs/2305.06809
  13. [13]Collections Trust. Spectrum primary procedure: Acquisition and accessioning. collectionstrust.org.uk — acquisition and accessioning
  14. [14]IGSN e.V. & DataCite. About IGSN IDs. ev.igsn.org/about-igsns
  15. [15]Omnibus-Type, Archivo (SIL OFL) · Evil Martians, Martian Mono (SIL OFL). fonts.google.com/specimen/Archivo