I spent several hours over the past week testing Neovim features and plugins to
update my vim and Neovim configuration, in
what became a major overhaul. This post is a concise summary of changes with
their rationale and directions.
[Read More]
Short recap of my history as a vim and Neovim user
My (Neo)vim journey so far
When writing a post about my recent (Neo)vim configuration overhaul, I wanted to start with an overview of how my (Neo)vim usage evolved in time and how it reached the point it stands at now. This overview ended up being a fairly lengthy write-up, which I therefore decided to publish...
[Read More]
How I sped up an e-book
Making an unreasonably slow EPUB usable
This post is a short recap of a funny situation where I had to deal with a seemingly innocent-looking e-book that ended up being unreadable on my e-reader. The solution turned out to be relatively simple, but I have not found references to any similar problem on the web, therefore...
[Read More]
CI for a collaborative LaTeX setup
Automated LaTeX workflow, the git way
LaTeX is a vital component of my work, and usually it is my go-to tool whenever I need to typeset any non-trivial document. TeX is a de facto standard tool for scientific typesetting, and in technical fields most publications, books, and reports are usually composed with it, most often using...
[Read More]
Migration to Jekyll Scholar and GitHub Actions
New bibliography management and build system for the website
Note (2024-08-31): This post was written in February 2020. Support for
building and deploying Jekyll sites on GitHub pages has been streamlined in the
meantime and can now be performed with stock actions. See
jekyll-build-pages and
deploy-pages.
[Read More]
Image registration guided by zero-average volume changes
Building a mean volume anatomic atlas
In Uppsala I spent several months investigating the generation of displacement fields with known volume changes, and I even implemented a software suite for the purpose. This might seem an odd topic to pick as working subject, so it is worth a bit of clarification about its purpose and applications....
[Read More]
Useful command line tools
Improved workflow on the shell
This post is meant to be a brief introduction to some productivity tools that can make a command line workflow smoother and more efficient. While well known, standard tools with similar function already exist (e.g. bash, grep, find, etc.), the tools presented hereafter have a handy user interface with sensible...
[Read More]
Landmark-based groupwise registration with SGD and B-splines
Implementing a simple extension to Elastix
Currently, I work mostly on image registration algorithms, and I devoted quite some time looking into groupwise registration techniques. In its essence, groupwise registration is a process that aligns multiple images, mapping them to a common reference space, without having to explicitly define such reference space (e.g. without manually selecting...
[Read More]
GPU-accelerated single-pass volumetric raycasting in Qt and OpenGL
Implementing a simple, yet easy to extend visualiser
Visualisation is a complementary but very important part of my work on image analysis. And since I work mainly with tridimensional volume images, visualisation is inherently a more complicated task compared to image analysis in only two dimensions. To help my work, I decided to implement a small tool for...
[Read More]
Building a Python C extension module with CMake
Extending Python, with automatic cross-platform configuration
Python is a high-level programming language whose extremely simple and elegant yet very powerful and expressive syntax has granted it enormous popularity in most programming contexts. Scientific applications are no exception on this respect, and this may look strange at a first glance, given that Python’s runtime is painfully slow...
[Read More]