Technical blog on oriented object detection for Earth Observation and the oriented-det package: https://deeplearning.earth
- Home (
/) — recent posts (blog index) - About (
/about/) — author bio, photo, company, and social links
Built with Hugo and the hugo-coder theme (git submodule at themes/hugo-coder).
git submodule update --init --recursive
hugo server -DOpen http://localhost:1313/.
Requires Hugo Extended (for SCSS). The Netlify config pins HUGO_VERSION in netlify.toml.
Posts that run oriented-det inference expect the package’s uv venv. This repo does not vendor Python deps; direnv activates the sibling install when you cd here.
Default path: ~/Projects/oriented-det/.venv. One-time:
direnv allowIf the repo lives elsewhere, copy .envrc.local.example to .envrc.local and set ORIENTED_DET_ROOT. Verify:
which odet
odet --version # or: python -c "import oriented_det; print(oriented_det.__file__)"Create the venv in the oriented-det repo (see its installation docs):
cd ~/Projects/oriented-det
uv venv --python 3.12
uv pip install torch torchvision
uv pip install -r requirements.txt
uv pip install -e .Settings are defined in netlify.toml:
- Build command:
hugo --minify - Publish directory:
public - Environment:
HUGO_VERSION,GIT_SUBMODULE_STRATEGY=recursive
After pushing to main, Netlify installs Hugo, initializes the theme submodule, and builds. If the Netlify UI still overrides build settings, either clear those overrides or align them with netlify.toml.
Posts live under content/posts/. The about page is content/about.md (layout: layouts/_default/about.html). Static assets (images, favicon) are under static/.
Taxonomies: tags, categories, and series (see config.toml). The oriented-det series hub is at /series/oriented-det/ (content/series/oriented-det/_index.md). Legacy YOLO/Kaggle posts use categories: ["archive"].
URLs: Blog home is /. /posts/ redirects to / on Netlify (individual posts stay at /posts/<slug>/).
layouts/index.html— blog home (post list) instead of the theme’s avatar landing pagelayouts/posts/li.html— post title plusdescriptionon list pageslayouts/_default/about.html— about page with avatar and social linkslayouts/partials/header.html— menutarget/relsupport and theme header build fixlayouts/partials/list.html— taxonomy/series list pages use the same post list markuplayouts/posts/list.html—/posts/section list (redirects to/on Netlify)assets/css/custom.css— single-column blog layout (post list, about page, post meta)assets/css/medium-zoom.css— overlay styles for click-to-zoom images (medium-zoom)assets/js/medium-zoom.min.js+assets/js/image-zoom.js— click-to-zoom on post imageslayouts/_default/_markup/render-image.html— markdown images get classpost-image-zoom(strips#layoutTextWidthfrom URLs)