Abstract
A multi-paradigm data management (cartography, web3D, etc.) and multi-scalar presentation (macro, meso, micro) of portable tools (surface form, surface texture) and ancient iconography with open-source software (GitHub,LAMP stack, 3DHOP, Blender, R, etc.) within the frame of Linked-Open data (LOD)work in progress with IMF-CSIC (Barcelona, Spain)
Use-wear analysis focuses on microscopic traces (sub-millimetre) traces made on surfaces with dimensions of a few centimetres (for example, a stone tool).
ConFocal 3D model of use-wear on a lithic tool, by J. Ibañez
Traces on surfaces are also common at larger scales. For example, rock-art is commonly defined as the action of carvings made by incisions, peckings (creating hollow structures) or paintings (creating a new physical layer) on rock panels.At this level the traces are centimetric, to be seen, and the support is generally of the order of a meter. We can also considerated that the landscape shaped by settlements with houses, ditches and roads, bears the stigma of human societies.
3D view of the Sidbury Hill archaeological site with the R package rayshader
All these instrumental practices inform us on cultural choices. At some point, it could be interesting to link the \(\mu\)m scale of use-wear, with the cm scale of a stone tool, this tool with the m scale of rock panel, and the rock panel with the site where it lies.
Each of these scales has specific survey methods and tools to investigate: ConFocal, photogrammetry, LiDAR (to name but a few). But all of these methods are based on surface texture (ISO 25178) for the traces, and surface form for the surface: methods for the study are scale-invariant. Nowadays, a 3D survey at each one of these scale is not the main challenging part, but the 3D integration of these surveys, with the precise location of traces on surfaces, is the key.
On each 3D acquisition, the drawing of an region of interest makes it possible to locate the traces on the surface and to link 3D model of the surface (larger scale) with the 3D model of the traces (smaller scale).
The Region of Interest (ROI) drawing is a 3D surface drawn directly
on the object in a 3D software (e.g. Blender). It commonly represents
the minimum bound rectangle (MBR) of the traces. Because of its
geometrical simplicity, it can be saved in .ply
format (it
could also be saved in .nxz
format, v. framework 3DHOP).
Drawing the ROI (green) as a 3D surface on the 3D model (grey) in Blender
Both the support and the ROI are saved in .ply
format.
The object is transformed into .nxz
with the Nexus application. These models
are then integrated into the 3DHOP
framework and stored in the fork of the GitHub repository
zoometh/3DHOP.
Workflow for web publishing a 3D model
Below we present a screenshot of a 3D model of an experimental tool with the ROI (left, in blue) locating (roughly) the traces of use. This ROI can be activated or deactivated with the 3DHOP
function. When the ROI is clicked, it can open a new HTML
page with the 3D model at the lower scale
3D model integrated in the 3DHOP framework
This model can be found in the 3DHOP framework at this URL:
One of the main difficulties in integrating 3D models at different scales is to be able to position the different acquisition windows with great precision.
echelle | mesures | instrument |
---|---|---|
macro | cm | Laser |
meso | mm | HIROX |
micro | \(\mu\)m | ConFocal |
Partial or complete acquisition of the object with a laser, photogrammetry, RTI, etc.
3D acquisition with the smart SCAN 3D Breuckman structured light laser (M. Mozota, IMF-CSIC)
Acquisition with HIROX (IMF-CSIC).
Acquisition with the ConFocal Sensofar PLu neox (IMF-CSIC). The ConFocal is a 3D optical microscopy solution that produces image stacks of very small depth of field (~ 400 nm) called ‘optical sections’.
3D acquisition with the ConFocal SensoSCAN (H. Halarashi, IMF-CSIC)
A portion of the active surface of the peeble is acquired with the ConFocal. The result of the acquisition is a 2.5D surface of 768 x 516 pixels (2.55 x 1.91 mm).
optique | profondeur | nb plans | studied surface |
---|---|---|---|
x5 | 3504 \(\mu\)m | 293 | 768 x 516 px (2.55 x 1.91 mm) |
This surface can be exported in .plu
(proprietary) or
.dat
(plain text) format. The .dat
format contains the coordinates of the points (vertices) in
x, y, z columns and three more columns. To
convert this .dat
file extension into 3D it can be directly
renamed to .xyz
, or clean-up (remove unused columns) and
recast with this R
script
The Plotly package allows you to
create WebGL-based interactive graphics via the open source
JavaScript library plotly.js
.
The package geodiv offers
several methods for calculating the xyz
surface,
including
abbrev | descr | val |
---|---|---|
Sq | Root mean square height | 774.314668580939 |
Sa | Average roughness | 677.931581281186 |
Sku | Kurtosis | -0.887441931375849 |
Ssk | Skewness | 0.628806914576612 |
… | … | … |
french
L’étude systèmes iconographiques anciens a beaucoup à gagner à développer et intégrer une approche mutliscalaire, allant du site aux signes, en passant par les supports. En effet, c’est conventionnellement à ces échelles que ces corpus sont étudiés.
Nous présentons ci-dessous, un essai de FAIRisation des données 3D liées aux graphies anciennes (art rupestre, hiéroglyphes). Ici, nous prenons ces deux (2) sites en exemple:
Pour chacun de ces sites, le logo signale l’existence d’un modèle 3D
La région du mont Bégo (Alpes-Maritimes, France) est surtout connue pour son art rupestre avec un nombre impressionnant de roches gravées, mais le site est aussi l’un des premiers de montagne à être occupé au début du Néolithique (ca. -5300 BC)
Actuellement, les données sont stockées dans une base de données
Postgres 13 locale. Ici, nous sélectionnons quelques champs - y compris
les coordonnées géographiques - et les exportons dans un fichier
.csv
stocké dans le dépôt GitHub.
Certaines roches gravées ont été modélisées en 3D par photogrammétrie
(logiciel commercial Metashape
Photoscan) au format 3D (.obj
ou .ply
).
Une application commerciale comme Sketchfab permet de mettre un modèle 3D
en ligne et d’intégrer un conteneur <iframe>
vers ce
modèle. Comme ici:
Dans le domaine du libre, ces modèles une fois transformés sont
manipulés avec le framework 3DHOP et
stockés dans le fork du dépôt GitHub zoometh/3DHOP.
Dans le code chunk
ci-dessous, nous lisons le contenu du
dossier ‘minimal’ pour obtenir les noms de ces modèles (stockés en tant
que fichiers .nxz
dans le dossier ‘models’).
roches.all <- read.csv("data/roches_all.csv")
req <- GET(url.html)
stop_for_status(req)
filelist <- unlist(lapply(content(req)$tree, "[", "path"), use.names = F)
D3.models <- grep("minimal/.*html$", filelist, value = TRUE)
D3.models <- gsub("minimal/", "", D3.models)
D3.models <- sort(gsub(".html$", "", D3.models))
nm.models <- roches.all[roches.all$idroche %in% D3.models, "nom"]
l.nm.models <- paste0(paste0("*", nm.models, "* (", D3.models,")"))
nb.models <- length(D3.models)
Actuellement, il existe 10 modèles 3D: Looped Skin Rock (17_2_59@c), Roche de l’archer (18_1_28@a), Roche de l’anthropomorphe aux bras en zigzag (4_3_16D), Stèle du Chef de Tribu (7_1_8), Roche du Sorcier (8_2_34), Looped Skin Rock (fibule), Roche de l’archer (KIU2610), Roche de l’anthropomorphe aux bras en zigzag (KIU2613), Stèle du Chef de Tribu (lithic_tool), Roche du Sorcier (lithic_tool_cf)
Nous lions les URL des roches gravées modélisées en 3D par jointure sur leur identifiant (e.g., 7_1_8) dans la table des roches – pour les ouvrir directement à partir de la carte Leaflet –, et nous attribuons à ces roches une icône personnalisée (icône ‘3DHOP’)
Certains de ces modèles 3D ont des annotations, comme la Roche de l’homme aux bras en zigzag, ou la Stèle du Chef de Tribu
En Haute-Egypte, le complexe cultuel de Karnak (temples, pylos, chapelles, etc.) se développe au cours du Nouvel Empire, corrélativement au culte d’Amon. Le site est étudié depuis près de 150 ans par une équipe d’égyptologues français. La documentation de ces monuments en 3D, et l’interopérabilité de ces modèles 3D, peut permettre de mieux comprendre l’évolution des hiéroglyphes dans le temps (paléographie)
Le jeu de données correspond à un fichier .csv (locus.csv) conservé sur GitHub
locus <- read.csv("www/locus.csv", sep = ";", row.names = NULL)
kable(locus, "html", escape = FALSE,
caption = "Données Karnak") %>%
kable_styling(bootstrap_options = c("hover", "condensed"), font_size=12)
KIU | nom | couleur | D3 | X | Y | credit3D |
---|---|---|---|---|---|---|
1027 | Chapelle de Sésostris Ier | white | NA | 32.65720 | 25.72034 | |
1192 | Chapelle d’Hatshepsut | red | NA | 32.65768 | 25.72043 | |
2610 | Chapelle de Philippe Arrhidée | green | KIU2610 | 32.65867 | 25.71810 | SirCharlesWilson - Sketchfab |
Les liens entre ces données et leurs identifiants KIU (Karnak Identifiant Unique) – qui sont égalment des URL– sont générés par concatenation
url.sith <- "http://sith.huma-num.fr/karnak/"
locus$url <- paste0('<a href=', shQuote(paste0(url.sith, locus$KIU)),
"\ target=\"_blank\"",">", paste0("KIU",locus$KIU), "</a>")
Le (très beau) modèle 3D de KIU2610, nous est fourni par Sketchfab
Ce modèle est ouvert dans Blender et une nouvelle géométrie (un mesh) sur une partie de sa surface pour signaler un panneau (KIU2613). Ce panneau est donc un sous-ensemble de KIU2160
Ces données sont comparées avec les modèles 3D existant dans le repository GitHub zoometh/3DHOP
This Rmarkdown (R + Markdown) document proposes an approach to open source web3D solutions for multi-scalar management, analysis, visualisation and navigation in 3D models. The source data is stored in two GitHub repositories:
The 3DHOP (3D Heritage
Online Presenter) framework is – in short – a structure of
JavaScript/HTML pages based on WebGL (Web Graphics Library). On
the GitHub repository zoometh/3DHOP, an HTML
structure supports a .nxz
or .ply
3D models.
The .nxz
format is suitable for web3D and 3D streaming.
3DHOP repository on GitHub
It is the same team, ISTI-CNR, that developed 3DHOP and Meshlab. These two tools are therefore intended to work together.