CoolFace
Datasetpublic

kahmed68/xctpore-canonical-splits

XCTPore — Canonical Splits This repository hosts canonical Leave-One-Stack-Out (LOSO), Leave-One-Geometry-Out (LOGO), and Leave-One-Material-Out (LOMO) split definitions for the XCTPore benchmark of X-ray CT scanned additively manufactured metal coupons. It is a lightweight repository: the binary volumes (~6 GB of 16-bit TIFFs) are not mirrored here and remain hosted on the original Google Cloud bucket maintained by the Advanced Remanufacturing and Technology Centre (ARTC) at… See the full description on the dataset page: https://huggingface.co/datasets/kahmed68/xctpore-canonical-splits.

sourceHugging Facebsd-2-clauseupdated 5mo agoView on Hugging Face
0likes31downloads
Dataset Card

XCTPore — Canonical Splits

This repository hosts canonical Leave-One-Stack-Out (LOSO), Leave-One-Geometry-Out (LOGO), and Leave-One-Material-Out (LOMO) split definitions for the XCTPore benchmark of X-ray CT scanned additively manufactured metal coupons. It is a lightweight repository: the binary volumes (~6 GB of 16-bit TIFFs) are not mirrored here and remain hosted on the original Google Cloud bucket maintained by the Advanced Remanufacturing and Technology Centre (ARTC) at A*STAR Singapore. This repository contains only the per-stack manifest, the split definitions, a loader stub, and the dataset card.

What this repository is for

XCTPore [Mutiargo et al., SINCE 2022] introduced a public 3-class XCT porosity dataset of 11 stacks but did not publish a standardised benchmark protocol. Subsequent work has used random slice splits that leak between adjacent (nearly identical) slices in the same stack, inflating reported metrics. This repository fixes that by publishing stack-level train / validation / test splits across three protocols (LOSO, LOGO, LOMO) so that any new model can be benchmarked against the same protocol as the chapter "From X-ray CT to Structural Response: An AI-Driven Pipeline for Defect-Aware Analysis of Additively Manufactured Metal Components" (book chapter in Artificial Intelligence-based Methods in Structural Mechanics and Dynamics, [details TBD]).

Files

FilePurpose
manifest.csvPer-stack metadata (material, geometry, porosity tier, voxel statistics) — direct copy of the per-stack manifest used by the chapter
splits.jsonTrain / val / test stack lists for each (strategy, fold) pair across LOSO (11 folds), LOGO (3 folds), LOMO (2 folds)
xctpore_splits.pyLightweight Python helper to load the splits. No dependencies beyond json, pandas
LICENSEBSD-2-Clause-style permissive license, identical to the upstream XCTPore release

Getting the binary data

The 16-bit XCT slices and their 3-class masks are hosted at the canonical ARTC location:

Original release: GitHub: BismaMutiargo/XCTPore follow the README for download instructions; the data lives in a public Google Cloud bucket and egress fees (a few cents at the time of writing) are paid by the requestor.

Once downloaded, the binary file naming used in manifest.csv matches the upstream release ({stack_id}_train.tif, {stack_id}_mask.tif), so no renaming is required.

Quick start

python
from huggingface_hub import hf_hub_download
import pandas as pd, json

manifest = pd.read_csv(hf_hub_download(
    repo_id="kahmed68/xctpore-canonical-splits",
    filename="manifest.csv",
    repo_type="dataset",
))

splits = json.load(open(hf_hub_download(
    repo_id="kahmed68/xctpore-canonical-splits",
    filename="splits.json",
    repo_type="dataset",
)))

# LOGO fold 2: held-out LargeBracket geometry
fold = splits["logo"][2]
print(fold["train"], fold["val"], fold["test"])
# -> ['MA001', 'MA002', 'MB001', 'MB002', 'TA001', 'TA002', 'TB001'],
#    ['TB002'],
#    ['MC001', 'MC002', 'TC002']

Citation

Please cite the original XCTPore dataset release:

bibtex
@article{Mutiargo2022,
  title  = {XCTPore: An Open Source Database for Porosity in X-ray CT scanned Components},
  author = {Mutiargo, Bisma and Malcolm, Andrew A. and Wong, Zheng Zheng and
            Siow, Bryan Wei Kang and Goh, Richie Rui Xin},
  journal= {4th Singapore International Non-destructive Testing Conference (SINCE)},
  year   = {2022},
  doi    = {10.58286/27521}
}

If you also use the canonical splits and/or the structural-mechanics pipeline (Mori–Tanaka, Murakami, voxel-FE modal), please cite the chapter (citation TBD).

License

BSD-2-Clause-style permissive, matching the upstream XCTPore release. See LICENSE.