<?xml version="1.0" encoding="UTF-8"?><urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9" xmlns:news="http://www.google.com/schemas/sitemap-news/0.9" xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:image="http://www.google.com/schemas/sitemap-image/1.1" xmlns:video="http://www.google.com/schemas/sitemap-video/1.1"><url><loc>https://sjnarmstrong.com/</loc><lastmod>2026-09-04T19:06:44.401Z</lastmod></url><url><loc>https://sjnarmstrong.com/about/</loc><lastmod>2026-09-04T19:06:44.401Z</lastmod></url><url><loc>https://sjnarmstrong.com/blog/</loc><lastmod>2026-09-04T19:06:44.401Z</lastmod></url><url><loc>https://sjnarmstrong.com/blog/72-wheels/</loc><lastmod>2026-09-04T19:06:44.401Z</lastmod></url><url><loc>https://sjnarmstrong.com/blog/affine-warp-interpolation/</loc><lastmod>2026-09-04T19:06:44.401Z</lastmod></url><url><loc>https://sjnarmstrong.com/blog/automatic-relevance-determination/</loc><lastmod>2026-09-04T19:06:44.401Z</lastmod></url><url><loc>https://sjnarmstrong.com/blog/backprop-from-scratch/</loc><lastmod>2026-09-04T19:06:44.401Z</lastmod></url><url><loc>https://sjnarmstrong.com/blog/bayesian-regression-evidence/</loc><lastmod>2026-09-04T19:06:44.401Z</lastmod></url><url><loc>https://sjnarmstrong.com/blog/calibrating-from-corners/</loc><lastmod>2026-09-04T19:06:44.401Z</lastmod></url><url><loc>https://sjnarmstrong.com/blog/checkerboard-corners/</loc><lastmod>2026-09-04T19:06:44.401Z</lastmod></url><url><loc>https://sjnarmstrong.com/blog/comparing-eleven-optimisers/</loc><lastmod>2026-09-04T19:06:44.401Z</lastmod></url><url><loc>https://sjnarmstrong.com/blog/complex-numbers-grid/</loc><lastmod>2026-09-04T19:06:44.401Z</lastmod></url><url><loc>https://sjnarmstrong.com/blog/config-is-the-experiment/</loc><lastmod>2026-09-04T19:06:44.401Z</lastmod></url><url><loc>https://sjnarmstrong.com/blog/convolution-kernels/</loc><lastmod>2026-09-04T19:06:44.401Z</lastmod></url><url><loc>https://sjnarmstrong.com/blog/convolution-without-voxels/</loc><lastmod>2026-09-04T19:06:44.401Z</lastmod></url><url><loc>https://sjnarmstrong.com/blog/deciding-if-a-pixel-is-lit/</loc><lastmod>2026-09-04T19:06:44.401Z</lastmod></url><url><loc>https://sjnarmstrong.com/blog/dense-stereo/</loc><lastmod>2026-09-04T19:06:44.401Z</lastmod></url><url><loc>https://sjnarmstrong.com/blog/descriptors-ratio-test/</loc><lastmod>2026-09-04T19:06:44.401Z</lastmod></url><url><loc>https://sjnarmstrong.com/blog/detector-repeatability/</loc><lastmod>2026-09-04T19:06:44.401Z</lastmod></url><url><loc>https://sjnarmstrong.com/blog/dijkstra-state-space/</loc><lastmod>2026-09-04T19:06:44.401Z</lastmod></url><url><loc>https://sjnarmstrong.com/blog/edge-detector-noise/</loc><lastmod>2026-09-04T19:06:44.401Z</lastmod></url><url><loc>https://sjnarmstrong.com/blog/ekf-slam-sandbox/</loc><lastmod>2026-09-04T19:06:44.401Z</lastmod></url><url><loc>https://sjnarmstrong.com/blog/em-segmentation/</loc><lastmod>2026-09-04T19:06:44.401Z</lastmod></url><url><loc>https://sjnarmstrong.com/blog/epipolar-triangulation/</loc><lastmod>2026-09-04T19:06:44.401Z</lastmod></url><url><loc>https://sjnarmstrong.com/blog/extended-kalman-filter/</loc><lastmod>2026-09-04T19:06:44.401Z</lastmod></url><url><loc>https://sjnarmstrong.com/blog/fern-matching/</loc><lastmod>2026-09-04T19:06:44.401Z</lastmod></url><url><loc>https://sjnarmstrong.com/blog/fh-graph-pooling/</loc><lastmod>2026-09-04T19:06:44.401Z</lastmod></url><url><loc>https://sjnarmstrong.com/blog/finding-a-checkerboard/</loc><lastmod>2026-09-04T19:06:44.401Z</lastmod></url><url><loc>https://sjnarmstrong.com/blog/folding-a-cube/</loc><lastmod>2026-09-04T19:06:44.401Z</lastmod></url><url><loc>https://sjnarmstrong.com/blog/four-algorithms-benchmark/</loc><lastmod>2026-09-04T19:06:44.401Z</lastmod></url><url><loc>https://sjnarmstrong.com/blog/frequency-domain/</loc><lastmod>2026-09-04T19:06:44.401Z</lastmod></url><url><loc>https://sjnarmstrong.com/blog/gaussian-process-prior/</loc><lastmod>2026-09-04T19:06:44.401Z</lastmod></url><url><loc>https://sjnarmstrong.com/blog/genetic-algorithms-pso/</loc><lastmod>2026-09-04T19:06:44.401Z</lastmod></url><url><loc>https://sjnarmstrong.com/blog/grading-disparity/</loc><lastmod>2026-09-04T19:06:44.401Z</lastmod></url><url><loc>https://sjnarmstrong.com/blog/gray-code-stripes/</loc><lastmod>2026-09-04T19:06:44.401Z</lastmod></url><url><loc>https://sjnarmstrong.com/blog/hog-from-scratch/</loc><lastmod>2026-09-04T19:06:44.401Z</lastmod></url><url><loc>https://sjnarmstrong.com/blog/instance-matching/</loc><lastmod>2026-09-04T19:06:44.401Z</lastmod></url><url><loc>https://sjnarmstrong.com/blog/kalman-filter-1d/</loc><lastmod>2026-09-04T19:06:44.401Z</lastmod></url><url><loc>https://sjnarmstrong.com/blog/kubernetes-state-and-secrets/</loc><lastmod>2026-09-04T19:06:44.401Z</lastmod></url><url><loc>https://sjnarmstrong.com/blog/kubernetes-ten-manifests/</loc><lastmod>2026-09-04T19:06:44.401Z</lastmod></url><url><loc>https://sjnarmstrong.com/blog/lookup-tables/</loc><lastmod>2026-09-04T19:06:44.401Z</lastmod></url><url><loc>https://sjnarmstrong.com/blog/marking-your-own-homework/</loc><lastmod>2026-09-04T19:06:44.401Z</lastmod></url><url><loc>https://sjnarmstrong.com/blog/mean-shift/</loc><lastmod>2026-09-04T19:06:44.401Z</lastmod></url><url><loc>https://sjnarmstrong.com/blog/mnist-irprop-vs-naive-bayes/</loc><lastmod>2026-09-04T19:06:44.401Z</lastmod></url><url><loc>https://sjnarmstrong.com/blog/mrf-denoising/</loc><lastmod>2026-09-04T19:06:44.401Z</lastmod></url><url><loc>https://sjnarmstrong.com/blog/naive-bayes-mnist/</loc><lastmod>2026-09-04T19:06:44.401Z</lastmod></url><url><loc>https://sjnarmstrong.com/blog/normalised-cuts/</loc><lastmod>2026-09-04T19:06:44.401Z</lastmod></url><url><loc>https://sjnarmstrong.com/blog/numpy-micro-benchmarks/</loc><lastmod>2026-09-04T19:06:44.401Z</lastmod></url><url><loc>https://sjnarmstrong.com/blog/ocr-feature-engineering/</loc><lastmod>2026-09-04T19:06:44.401Z</lastmod></url><url><loc>https://sjnarmstrong.com/blog/optimise-once-execute-forever/</loc><lastmod>2026-09-04T19:06:44.401Z</lastmod></url><url><loc>https://sjnarmstrong.com/blog/particle-filter/</loc><lastmod>2026-09-04T19:06:44.401Z</lastmod></url><url><loc>https://sjnarmstrong.com/blog/particle-sweep/</loc><lastmod>2026-09-04T19:06:44.401Z</lastmod></url><url><loc>https://sjnarmstrong.com/blog/point-cloud-segmentation/</loc><lastmod>2026-09-04T19:06:44.401Z</lastmod></url><url><loc>https://sjnarmstrong.com/blog/quickprop-adagrad-momentum/</loc><lastmod>2026-09-04T19:06:44.401Z</lastmod></url><url><loc>https://sjnarmstrong.com/blog/rebuilding-surf/</loc><lastmod>2026-09-04T19:06:44.401Z</lastmod></url><url><loc>https://sjnarmstrong.com/blog/recursive-batch-splitting/</loc><lastmod>2026-09-04T19:06:44.401Z</lastmod></url><url><loc>https://sjnarmstrong.com/blog/reprojecting-semantics/</loc><lastmod>2026-09-04T19:06:44.401Z</lastmod></url><url><loc>https://sjnarmstrong.com/blog/rprop-family/</loc><lastmod>2026-09-04T19:06:44.401Z</lastmod></url><url><loc>https://sjnarmstrong.com/blog/scan-an-object/</loc><lastmod>2026-09-04T19:06:44.401Z</lastmod></url><url><loc>https://sjnarmstrong.com/blog/segmentation-bakeoff/</loc><lastmod>2026-09-04T19:06:44.401Z</lastmod></url><url><loc>https://sjnarmstrong.com/blog/segmentation-on-video/</loc><lastmod>2026-09-04T19:06:44.401Z</lastmod></url><url><loc>https://sjnarmstrong.com/blog/semantic-accuracy-metrics/</loc><lastmod>2026-09-04T19:06:44.401Z</lastmod></url><url><loc>https://sjnarmstrong.com/blog/sine-fit-overfitting/</loc><lastmod>2026-09-04T19:06:44.401Z</lastmod></url><url><loc>https://sjnarmstrong.com/blog/sparse-octree/</loc><lastmod>2026-09-04T19:06:44.401Z</lastmod></url><url><loc>https://sjnarmstrong.com/blog/streaming-ndt/</loc><lastmod>2026-09-04T19:06:44.401Z</lastmod></url><url><loc>https://sjnarmstrong.com/blog/structured-light-rig/</loc><lastmod>2026-09-04T19:06:44.401Z</lastmod></url><url><loc>https://sjnarmstrong.com/blog/support-vector-machines/</loc><lastmod>2026-09-04T19:06:44.401Z</lastmod></url><url><loc>https://sjnarmstrong.com/blog/swig-numpy-seam/</loc><lastmod>2026-09-04T19:06:44.401Z</lastmod></url><url><loc>https://sjnarmstrong.com/blog/trajectory-error-metrics/</loc><lastmod>2026-09-04T19:06:44.401Z</lastmod></url><url><loc>https://sjnarmstrong.com/blog/triangulation-sine-rule/</loc><lastmod>2026-09-04T19:06:44.401Z</lastmod></url><url><loc>https://sjnarmstrong.com/blog/vectorising-cost-volume/</loc><lastmod>2026-09-04T19:06:44.401Z</lastmod></url><url><loc>https://sjnarmstrong.com/blog/zhangs-method/</loc><lastmod>2026-09-04T19:06:44.401Z</lastmod></url><url><loc>https://sjnarmstrong.com/work/</loc><lastmod>2026-09-04T19:06:44.401Z</lastmod></url></urlset>