CoreLog Vision — Banco de Trabajo de Logueo de Testigos y Clasificación Litológica
Un banco de trabajo de logueo de testigos nativo del navegador: clasifica ventanas deslizantes a lo largo de los canales de una bandeja de testigo en seis litologias con una CNN, fusiona parches contiguos de la misma clase en un strip log cosido por profundidad con sombreado de confianza, y marca testigo fuera de distribucion con un detector de Mahalanobis en vez de forzar una clase. Corre sobre bandejas sinteticas procedurales, con una via de fotos reales (DCID) usada estrictamente como set de evaluacion fuera de distribucion y de cabezal real. Honesto por diseno: la accuracy de la CNN es sintetico contra sintetico, un control de permutacion de etiquetas colapsa al azar, y el detector que se despliega se nombra por lo que es.
Contexto de Negocio
Un logueo litologico consistente y auditable alimenta modelos de recursos, geometalurgia y diseno de tronadura, por lo que un logueador automatico solo sirve si dice cuando desconfiar de el. El valor de CoreLog es la disciplina alrededor del numero: el clasificador se mide sobre una particion agrupada por pozo (14 pozos de entrenamiento, 4 de test) para que no filtren ventanas solapadas, su accuracy se declara como sintetico contra sintetico y no como desempeno sobre testigo real, y el testigo desconocido se enruta a un marcador de novedad en vez de a una clase forzada. Esa es la forma que un asistente de logueo necesita antes de tocar una decision de recursos, no un unico numero favorecedor.
Valor Estratégico
El activo mas fuerte de CoreLog es un control que efectivamente corrio y reporto en contra del interes propio: un nulo de permutacion de etiquetas colapsa al azar (top-1 0,1387 frente a una base de 0,1429), evidencia de que no hay filtracion detras del 0,994 de accuracy de la CNN con particion agrupada por pozo. Tambien documenta una reversion que la mayoria de las demos ocultaria: el detector OOD titular de autoencoder de pixeles puntuo AUROC 0,3078, peor que el azar, y fue reemplazado por un detector de Mahalanobis en el espacio de rasgos de la CNN en 0,9463, que es el que se despliega (no el ganador del benchmark offline en 0,9995). La via real DCID esta acotada como evaluacion, no como despliegue, y la ficha es explicita en que el 0,994 es sintetico y en que DCID-7 no trae clase schist ni ore. Es un patron reutilizable para un asistente de logueo en el dispositivo, honestamente acotado, que nombra sus propios limites.
El Desafío
Loguear testigo de sondaje es lento, subjetivo y dificil de auditar: un geologo asigna litologia a ojo por miles de metros de bandeja, y dos logueadores rara vez coinciden en los bordes. Automatizarlo invita a una falla peor, un modelo que emite una clase confiada para testigo que nunca vio y entierra la incertidumbre. Las preguntas utiles no son solo "que litologia" sino "esta ventana esta siquiera en el mundo con que se entreno el modelo", y "sobreviviria esta accuracy a una particion que no deje filtrar ventanas solapadas del mismo pozo entre entrenamiento y test".
Nuestro Enfoque
CoreLog corre una escalera completa de vision por computador del lado del cliente sobre 8 casos de bandeja sinteticos procedurales (suites litologicas, regimenes de calidad de imagen y controles analiticos de forma cerrada). Un clasificador base de color y textura y una segmentacion por fusion de corridas que emerge del clasificador forman el peldano clasico; una CNN litologica de 6 clases (ONNX, softmax mas un rasgo penultimo de 64 dimensiones en una pasada) es el peldano aprendido; y el marcado fuera de distribucion se hace con un detector de Mahalanobis en el espacio de rasgos de 64-d de la CNN, cuya media y covarianza se despliegan como JSON y se puntuan en TypeScript. Una via separada de fotos reales carga el dataset de imagenes de testigo DCID solo como set de evaluacion fuera de distribucion y de cabezal real, nunca como datos de entrenamiento. Nueve detectores OOD se evaluan offline sobre particiones identicas. Todo del lado del cliente, TypeScript mas onnxruntime-web en el backend WASM, estatico en GitHub Pages; la via de precomputo offline hornea los artefactos importando el mismo motor TypeScript que corre el navegador, de modo que los numeros offline y en vivo coinciden por construccion.
Indicadores Clave de Rendimiento
| KPI | Línea Base | Resultado | Impacto |
|---|---|---|---|
| Que te dice el resultado | Una clase litologica confiada para cada ventana | Litologia por ventana MAS un marcador de Mahalanobis fuera de distribucion cuando el testigo es desconocido | El modelo enruta testigo desconocido a un marcador en vez de forzar una clase |
| Control de filtracion | Particion aleatoria a nivel de parche (las ventanas filtran entre train y test) | Particion agrupada por pozo (14 train / 4 test) + nulo de permutacion de etiquetas colapsa al azar (0,1387 vs 0,1429) | El 0,994 de accuracy no es un artefacto de filtracion |
| Detector OOD, nombrado con honestidad | Autoencoder de pixeles: AUROC 0,3078 (peor que el azar) | Detector desplegado: Mahalanobis en el espacio de rasgos de 64-d de la CNN, AUROC 0,9463 | La reversion queda documentada, no el ganador del benchmark (0,9995, no desplegado) |
| Computo | Servicio de inferencia en servidor / GPU | 100% del lado del cliente: vision por computador en TypeScript + onnxruntime-web (WASM) | Hosting estatico, nada que instalar, cero backend |
Arquitectura
corelog pipeline
From “which lithology” to “is this core even in-distribution”
CoreLog Vision is a browser-native drill-core logging workbench. It classifies sliding windows along core-tray channels into six lithologies with a CNN, merges adjacent same-class patches into a depth-stitched strip log with confidence shading, and flags out-of-distribution core instead of forcing a class. Live at corelog.fasl-work.com, part of the Faena mining-analytics hub.
What it runs on
- Synthetic trays (the main lane, and the training data): 8 procedurally generated cases, three lithology suites, three imaging-quality regimes, and two closed-form analytic controls. There is no in-app upload; the workbench runs these cases plus the real evaluation lane.
- Real DCID photos (evaluation only): the Drill Core Image Dataset is loaded as the out-of-distribution and real-head evaluation set, never as training data. 21 verbatim CC BY-NC patches are committed with DOI-level provenance.
Three rungs, run live
A classical rung (colour/texture baseline plus a run-merge segmentation that emerges from the classifier), a learned rung (the 6-class lithology CNN, ONNX, softmax plus a 64-d penultimate feature in one pass), and out-of-distribution flagging via a Mahalanobis detector in that 64-d feature space. Everything runs client-side over onnxruntime-web on the WASM backend, with a graceful fallback to the classical method if a model is absent.
Honest about what the numbers mean
The CNN reaches 0.994 accuracy against a 0.9286 colour baseline on a grouped-by-hole split (14 train / 4 test holes, nEval 1344), and this is stated for what it is: synthetic-vs-synthetic, the CNN scored against the generator’s own ground truth, not real-core accuracy. Two things keep it honest. A label-permutation null collapses to chance (top-1 0.1387 vs a 0.1429 baseline), which is the leakage control that the grouped split is meant to guarantee. And the shipped OOD detector is named for what it is: a Mahalanobis detector at AUROC 0.9463, which replaced an incumbent pixel-autoencoder that scored 0.3078 (worse than chance); the offline benchmark winner (0.9995, a second backbone) is not the one that ships. The real DCID head reaches top-1 0.9916 on held-out real core, but DCID-7 contains no schist and no ore class, so it is an evaluation lane, not a mine-lithology claim.
Stack Tecnológico
En acción
Un recorrido corto por la app en vivo: la interfaz real, grabada desde el sitio desplegado.

Capturas de la Aplicación

