Skip to content

1.0.0

Choose a tag to compare

@enzococca enzococca released this 19 Oct 16:45
58aa1f8

What's new in 1.0.0

Everything planned from 0.7 to 1.0 in the roadmap, and the research items.

Updates, speed and image quality (0.7)

  • Automatic update check (once a day and from Aiuto); on macOS the new application is downloaded and swapped in after quitting.
  • Native core in Rust (pyarchinit-photogrammetry-core, optional, numpy kept as fallback): depth fusion, projection with the COLMAP camera models, orthomosaic scores, confidence; CPU depth maps of several photos at once (the synthetic trench from 5.7 s to 0.9 s).
  • Seamless orthomosaic: every cell chooses among all the photos that frame it, two-band blending across the seams, exposure and vignetting corrected, ghosting filter, small holes filled.
  • Photo masks (drawn, imported, from background photos, a colour, the model or SAM) left out of matching, depth maps, orthomosaic and texture; elevations on the plane of a wall or a cylinder; DEM editing; reconstruction region.

Acquisition and precision (0.8)

  • Fisheye lenses recognised from the EXIF; 360-degree photos aligned as a camera rig.
  • Photos from a video, with the GPS of DJI drones; image quality.
  • Markers found on the other photos by image correlation; precision of cameras, markers and tie points from the bundle adjustment, vertical precision map of the DEM, spot heights with their precision; field check after the alignment (coverage map, blurred or unaligned photos).

Everyday work (0.9)

  • Batch processing over several chunks, resumed after an interruption; undo and redo of drawings, markers, patches and point edits.
  • Diagnostics of the alignment (matching graph, matches between two photos, residuals), camera calibration dialog, merging markers.
  • Measures: 3D area, slope, aspect and height above the ground.
  • Exports for the web: Cloud Optimized GeoTIFF, COPC, binary glTF, Cesium 3D Tiles, light models with a normal map, fly-through videos.
  • Laser scans (E57, PTX) registered on the photogrammetric chunk; sections, plan slices and markers in the 3D view; media of PyArchInit in its panel.
  • English interface (Vista > Lingua / Language).

Archaeology first (1.0)

  • Relief visualisations of the DEM: sky-view factor, openness, local relief model, multi-directional hillshade.
  • Excavation phases: chunks by date, volume removed for each US, relations suggested from the order of removal.
  • Stone-by-stone drawing with SAM; Munsell colour of an area, calibrated with a colour chart.
  • QField package for the trench and its edits back; paradata of every product as W3C PROV (JSON-LD).
  • Pottery: rim diameter and preserved arc from a sherd, search of similar forms in pottery_table.
  • US proposed for the Extended Matrix, with their relations, written into the US forms; IFC with the node_uuid of the US as GlobalId and the stratigraphic relations.

Research

  • PatchMatch multi-view stereo on the CPU in the native core (on the synthetic trench the DEM is about three times closer to the truth than with two-view SGBM).
  • Own bundle adjustment: scale bars as distances, GNSS bias, rolling shutter of drones.
  • Textures beyond 8192 pixels in pages, as in Metashape (also imported from it).
  • I3S scene layer package (.slpk) of the textured model for ArcGIS Pro, ArcGIS Online and CesiumJS.

Packaging

  • --run script.py runs Python scripts with the application's own Python and modules, without the window (as Metashape's -r).
  • Windows on ARM: the x64 application runs under the emulation of Windows 11 (checked on Windows 11 ARM64).
  • Linux on ARM (aarch64): wheels of pycolmap 4.2.1 and Open3D 0.19.0 for Python 3.10-3.12, which their projects do not publish, are attached below (built by packaging/arm/build-linux.sh and the arm-wheels workflow, tested with this project on arm64): pip install pycolmap-*.whl open3d-*.whl, then pip install "pyarchinit-photogrammetry[all]" (pye57 is compiled there and needs libxerces-c-dev).

Fixes

  • A plan slice above or below the model said that the plan was saved (an empty drawing): it now says that the plane does not cut the model.
  • Spot heights on the edge of a DEM, model cleaning with many small pieces and the I3S normals of degenerate faces were checked on more meshes.

Desktop applications for macOS (Apple Silicon) and Windows are attached below; with pip: pip install -U pyarchinit-photogrammetry. Documentation: README, interface, API.