Historic inscriptions and paintings on a wall inside the Greifswald Karzer

Cultural heritage · technical report · 2026

Preserving cultural heritage with modern 3D reconstruction

A Gaussian Splatting reconstruction of the historic student prison at the University of Greifswald.

Gordon Dyballa · LayerX IT Services & Engineering · Berlin

Source frame 45 of 177 · detail of the inmate paintings

01 · Project

Project scope

Abstract

This technical report documents the transformation of an openly published photographic research dataset into an interactive, browser-accessible reconstruction of the historic Karzer at the University of Greifswald. The work evaluates 3D Gaussian Splatting as a practical method for communicating a visually complex cultural-heritage interior whose painted and inscribed surfaces are difficult to describe through isolated photographs alone.

The input is more than a loose collection of images. The University of Greifswald dataset supplies 177 registered photographs together with a solved COLMAP camera model and an initial sparse point cloud. Those camera parameters establish where each photograph was taken and how it is projected. This project therefore begins at the model-optimisation stage rather than repeating the preceding photogrammetric reconstruction.

The resulting scene is designed for remote visual exploration and research communication. It brings the relationship between wall paintings, inscriptions, corners and adjoining surfaces into one navigable view, while the source-image gallery preserves a direct link to the photographic evidence from which the representation was calculated.

Viewer source, publication assets, recorded configuration and checksums are maintained in the BHT GitLab project repository.

Motion study assembled from registered source views 9, 11, 13 and 15. The changing perspective makes the overlap and parallax used by camera reconstruction and Gaussian optimisation visible.

02 · Method

From overlapping images to real-time point-based rendering

Gaussian Splatting reconstructs how a photographed scene appears from many viewpoints. Instead of first building a polygon mesh and applying image textures, it represents the scene directly as millions of optimised, semi-transparent 3D primitives.

Reading photographs as a spatial system

A single photograph records colour on a flat image plane but does not state where the depicted surfaces lie in three-dimensional space. Reconstruction becomes possible when the same features appear across overlapping photographs taken from different positions. Their relative displacement, known as parallax, allows camera poses and scene structure to be estimated. For the Karzer, repeated views of inscriptions, mouldings, wall junctions and other stable details connect the 177 images into one spatially consistent camera network.

This preparatory calculation was already included in the Greifswald publication. Its COLMAP model contains camera intrinsics, camera poses and 263,336 sparse 3D points matched across the image set. The sparse points are not the final visual reconstruction. They are reliable anchors used to initialise the Gaussian optimisation and to associate every training image with a known viewpoint.

  1. 01

    Image acquisition

    177 high-resolution photographs record the room from translated camera positions. Repeated overlap makes the same surface features visible in several frames.

  2. 02

    Camera reconstruction

    COLMAP feature matching recovers calibration, camera poses and an initial sparse point cloud. These solved files are supplied as part of the published dataset.

  3. 03

    Gaussian optimisation

    The Inria reference implementation renders the current model into known camera views, compares it with the photographs and updates the Gaussian parameters.

  4. 04

    Web publication

    A compressed PLY representation is progressively loaded, projected and depth-sorted in a Three.js/WebGL viewer hosted as a static GitLab Pages site.

What is a 3D Gaussian?

In this context, a Gaussian can be imagined as a small translucent ellipsoid suspended in space. It has a centre position, three-dimensional scale, orientation, opacity and colour. “Anisotropic” means that the primitive may stretch differently along each axis: it can become thin and broad for a wall fragment or compact for a small detail. Its mathematically smooth footprint avoids the hard edges associated with an ordinary point cloud.

During training, the model is rendered from a camera position already known from COLMAP. The rendered pixels are compared with the corresponding source photograph, and differentiable rasterisation calculates how each Gaussian should change to reduce the image error. Position, covariance, opacity and appearance are updated through gradient descent. Regions requiring more detail are densified by adding or splitting primitives, while weak or redundant contributions can be removed. After 30,000 iterations, the initially sparse scene has become a dense appearance representation containing 2,152,624 optimised Gaussians.

Why can it render interactively?

At viewing time, the ellipsoids are projected onto the screen as two-dimensional splats. The renderer sorts them by depth and combines their colour and transparency from back to front. This operation maps efficiently to parallel graphics hardware and avoids reconstructing a new neural image one pixel at a time. The result is a continuous view that can respond to camera motion in real time, provided that the browser can allocate and sort the full primitive set.

Why Gaussian Splatting here?

Dense inscriptions and irregular wall paintings depend strongly on colour, surface variation and visual context. A view-synthesised representation preserves much of this photographic appearance and remains interactive without a separate mesh-generation and texture-baking workflow.

What the method does not provide

The representation has no explicit watertight surface, physical material model or independently validated scale. It is strongest near well-observed camera paths; extrapolated views may reveal gaps, elongated splats or unstable transparency.

03 · Computing

BHT Data Science Cluster

Training ran on a single NVIDIA Tesla P100 made available through the BHT Data Science Cluster. The infrastructure is operated by the Laboratory for Computer and Information Systems for non-commercial teaching and research use.

A GPU is not incidental to this workflow. Each optimisation step projects a large and growing set of Gaussians into a known camera view, evaluates image error and propagates gradients back through the renderer. These operations are highly parallel but memory-intensive. The P100's 16 GB of accelerator memory made it possible to retain image tensors, Gaussian parameters and optimisation state while repeatedly rasterising the scene.

Training resolution
¼ input scale
Initial sparse points
263,336
Optimised Gaussians
2,152,624
Logged runtime
~34 minutes
Train-view PSNR
29.13 dB

Why the images were trained at quarter scale

The source frames measure 6136 × 4042 pixels. A resolution factor of four reduces each image dimension to approximately 1534 × 1011 pixels, or about one sixteenth of the original pixel count. This is a deliberate compute trade-off: it substantially lowers rasterisation cost and GPU memory pressure while retaining enough detail to evaluate the room-scale reconstruction. The recorded run completed 30,000 iterations in approximately 34 minutes on the single P100.

What 29.13 dB means

Peak signal-to-noise ratio (PSNR) compares a rendered image with its reference photograph using mean squared pixel error. It is expressed on a logarithmic decibel scale, not as a percentage: an increase of 10 dB represents ten times lower mean squared error, while roughly 3 dB corresponds to halving it. The logged value of 29.13 dB indicates a reasonably close fit to the recorded training views. It does not measure geometric accuracy, physical dimensions or conservation-grade colour fidelity.

PSNR = 10 log10(MAX² / MSE)

04 · Critical assessment

Known limitations

Gaussian Splatting is an appearance-based reconstruction. Its credibility therefore depends on understanding where the source photographs constrain the result and where the model must interpolate between observations.

Capture envelope

Surfaces seen only once, at long range or at grazing angles have weak multi-view evidence. They may appear elongated, translucent or incomplete. Moving well beyond the photographed camera path makes these weaknesses increasingly visible.

No explicit surface

The Gaussians create a convincing image but do not form a watertight boundary. Direct geometric measurement would require surveyed control, scale validation and an explicit surface or point-cloud workflow designed for metrology.

Baked appearance

Illumination, exposure, white balance and reflections are learned from the photographs as part of the scene appearance. Unlike a physically based model, the reconstruction cannot separate material properties from lighting or be relit reliably.

Browser constraints

The published file is compressed for transfer, but the browser must expand its attributes and repeatedly depth-sort 2.15 million primitives. Mobile GPUs and CPU-based sorting can show slower startup or transient artifacts during rapid motion.

Rights and reuse

The source dataset is licensed CC BY-NC 2.0, and the training implementation also carries non-commercial research terms. This publication and derived visual material therefore remain non-commercial unless separate permissions are obtained.

06 · Sources

Sources

ComponentRecorded versionRoleTerms / source
Greifswald datasetMetadata 2025-06-16177 images and COLMAP camera solutionJürgen Deinlein · CC BY-NC 2.0
COLMAPDataset build not recordedCamera poses and sparse geometryOfficial project · BSD
3D Gaussian Splatting54c035fModel optimisationGraphdeco / Inria · research terms
PyTorch / CUDAEnvironment lock in repositoryGPU training runtimePyTorch project
GaussianSplats3D0.4.7Browser splat rendererMark Kellogg · MIT
Three.js0.185.1WebGL scene and camera layerThree.js contributors · MIT
splat-transform3.2.0PLY filtering and compressionPlayCanvas · MIT
GitLab PagesStatic CI deploymentHosting and publicationGitLab documentation

07 · Citation

How to cite this report

Project report

Dyballa, Gordon (2026). Historic Karzer: a Gaussian Splatting cultural-heritage reconstruction. LayerX IT Services & Engineering, Berlin.

Machine-readable metadata is available as CITATION.cff in the project repository.