Blog posts tagged swift
Updates (and additions) to machine-learning tools running on consumer hardware
These are not “silver bullet” tools. Rather, they endeavour to be part of a set of building blocks for creating an infrastructure that preserves and guarantees the cultural heritage sector some agency in our work.
This is a blog post by aaron cope. It was published on February 10, 2026 and tagged swift, roboteyes, machine-learning, collection, duckdb, golang and embeddings.
Similar object images derived using the MobileCLIP computer-vision models
Like a lot of things involving machine-learning, the image similarity results while not always right aren’t necessarily wrong either. In the same vein as searching collections by color this “fuzzy” and imprecise space presents a whole new avenue for browsing collections and making visible objects that would otherwise get lost in the crowd.
This is a blog post by aaron cope. It was published on January 09, 2026 and tagged swift, roboteyes, machine-learning, collection, mobileclip and embeddings.
Map updates, December 2025 - Now with more PMTiles
In addition to 2025, we’ve also added new imagery from 1920, 1936 and 1961 all produced using the Allmaps Editor to georeference existing collections materials. I’ll talk more about some of the tools and workflows we’ve developed to work with Allmaps in a future blog post. All of these new maps have also been added to the interactive map application on display in the Terminal 2 SkyTerrace Observation Deck. As part of those updates we’ve also started serving these historic maps from PMTiles databases rather than folders full of individual tiles on disk.
This is a blog post by aaron cope. It was published on December 15, 2025 and tagged maps, protomaps, ios, swift and vapor.
WallLabel – Experiments with Apple’s open source machine-learning frameworks
On-device models are still someone else’s models but having the flexibility to choose one model over another, to recognize that they are systems with strengths and weaknesses rather than all-knowing oracles, and the ability to incorporate those choices in to how our projects are designed and implemented is a small, but important, step in retaining some degree of control and agency in our work.
This is a blog post by aaron cope. It was published on October 29, 2025 and tagged swift, ios, mlx, machine-learning and roboteyes.
Registrar – Experiments with Apple’s on-device machine-learning frameworks
We are releasing this work in a spirit of generousity and to encourage others to suggest improvements with the larger goal of providing resources to help the broader cultural heritage sector think about how to use machine learning technologies outside and beyond the promises of the billboards advertising these same technologies in Silicon Valley and the world over.
This is a blog post by aaron cope. It was published on October 16, 2025 and tagged swift, ios, llm, machine-learning and roboteyes.
Updates to the SFO Museum text and image “embossers” (and a brand new tool for color matching)
In addition to all these changes the go-image-emboss package now includes a new command line tool, called review-colors, to perform image segmentation, color extraction and “snap-to-grid” matching with one or more color palettes for images, displaying all the results in a handy webpage.
This is a blog post by aaron cope. It was published on May 29, 2025 and tagged golang, swift, roboteyes, grpc and color.
Experiments in Photogrammetry
This is a blog post about using consumer-grade hardware and a suite of open-source software tools to generate high-quality 3D models from photographic imagery, a process commonly referred to as “photogrammetry”, which can be viewed and interacted within a web browser. This is a fairly technical blog post but the non-technical takeaways are: It’s possible, it’s affordable or at least meaningfully cheaper than it used to be, it’s harder than it should be, we have developed tooling to make things easier and we would love your help to make it all better.
This is a blog post by aaron cope. It was published on November 29, 2023 and tagged swift, 3d, photogrammetry and blender.
Extracting Subjects from Images in Swift (and gRPC)
In the Searching Text in Images on the Aviation Collection Website blog post I introduced the swift-text-emboss Swift package, a wrapper library around Apple’s Vision Framework to simplify extracting text from images. In this blog I’d like to introduce the swift-image-emboss Swift package. Like the swift-text-emboss package this is also a wrapper around code provided by Apple’s Vision Framework with the goal simplifying the code necessary to extract, or “lift”, one or more subjects from an image.
This is a blog post by aaron cope. It was published on October 31, 2023 and tagged swift, tools, grpc, golang and roboteyes.
Searching Text in Images on the Aviation Collection Website
We want to see what these technologies make possible, though, and a very real and immediate opportunity is the ability to index search terms that the curators and registrars haven’t already included in the titles or descriptions for objects in our collection. For example, this travel bag from Canadian Pacific Airlines, covered in the names of cities the airline traveled to, is not included in the search results for the terms “montreal” or “saskatoon” using the default search functionality but it’s the first result when we also search for the text in images.
This is a blog post by aaron cope. It was published on September 14, 2023 and tagged search, swift, collection, roboteyes, grpc and tools.








