Extract morphometric landmarks from fossil images for geometric morphometrics analysis. Supports ammonoids, brachiopods, and other fossils with clear outlines. Exports to TPS, CSV, Excel, JSON formats compatible with MorphoJ and R geomorph. Use when: analyzing fossil morphology, preparing data for GM analysis, quantifying shape variation.
Extract landmarks from fossil images for geometric morphometrics analysis.
✅ USE this skill when:
❌ DON'T use this skill when:
LANDMARKS
64
x1 y1
x2 y2
...
x64 y64
IMAGE=specimen.png
ID=specimen_001
SCALE=1.0
specimen_id,landmark_id,x,y,type,name
specimen_001,1,256.5,128.0,landmark,LM1
specimen_001,2,260.3,130.2,landmark,LM2
...
specimen_001,64,255.8,129.5,landmark,LM64
{
"specimenId": "specimen_001",
"imagePath": "/path/to/image.png",
"landmarks": [
{"id": 1, "x": 256.5, "y": 128.0, "type": "fixed", "name": "top"},
...
],
"timestamp": "2026-03-09T10:30:00Z"
}
# Basic analysis
paleoclaw agent --message "Extract landmarks from ammonoid.png"
# With specific output directory
paleoclaw agent --message "Analyze specimen.jpg and save to results/"
# Export specific formats
paleoclaw agent --message "Extract landmarks from fossil.png and export as TPS and CSV"
# Process all images in directory
paleoclaw agent --message "Batch process all images in specimens/ folder"
# With custom configuration
paleoclaw agent --message "Analyze all images in data/fossils with 128 semilandmarks"
# Generate landmark visualization
paleoclaw agent --message "Show landmarks on ammonoid.png"
# Generate comparison (before/after)
paleoclaw agent --message "Create comparison visualization for specimen.png"
# Re-export existing results
paleoclaw agent --message "Export previous analysis to Excel format"
{
threshold: 150, // Binarization threshold (0-255)
padding: 2, // Edge detection padding
numLandmarks: 64, // Number of landmarks (matching DeepMorph)
applyCurveslide: true // Apply sliding constraints
}
tps - MorphoJ/TPSdig compatiblecsv - Comma-separated valuesexcel - Excel spreadsheetjson - PaleoClaw internal format{
showNumbers: true, // Show landmark numbers
showConnections: true, // Show connecting lines
pointSize: 4, // Landmark point size
landmarkColor: '#FF0000', // Landmark color (red)
imageOpacity: 0.3 // Background image opacity
}
data/outputs/morphometrics/
├── tps/
│ └── specimen_001.tps
├── csv/
│ └── specimen_001.csv
├── json/
│ └── specimen_001.json
├── visualizations/
│ ├── specimen_001_landmarks.png
│ └── specimen_001_comparison.png
├── curveslide.csv # Sliding configuration
└── landmark_links.txt # Landmark connectivity
⚠️ CRITICAL:
User: "Analyze this ammonoid and find its occurrences in PBDB"
Agent: 1. Extract landmarks from image
2. Query PBDB for ammonoid occurrences
3. Correlate morphology with distribution
User: "Extract landmarks and verify the taxonomic classification"
Agent: 1. Extract landmarks
2. Lookup taxonomic classification
3. Associate morphology with taxonomy
User: "Find papers using similar morphometric methods"
Agent: 1. Extract landmarks
2. Search for geometric morphometrics papers
3. Suggest relevant methodologies
Results are automatically saved to PaleoClaw memory system:
npm install @napi-rs/canvassharp - Image processing@napi-rs/canvas - Visualization (optional)npm install sharp @napi-rs/canvas
If you use this skill in your research:
@software{paleoclaw_morphometrics,
author = {PaleoClaw Contributors},
title = {PaleoClaw Morphometric Analysis Skill},
year = {2026},
url = {https://github.com/syxscott/PaleoClaw}
}
Based on: DeepMorph by Xiaokang Liu (CUG)