As is the case where I’m put in any situation where there are multiple options, I’ve switched blog software many times. Mainly between WordPress, Textpattern, and now Moveable type.
While the migrations for most of these are fairly well supported (well, WP to MT is a bit of work), the one thing that gets you every time is non-text content. While the various conversion routines understand mostly how to convert database schemas and textual content, they fall over on other things such as images. This is mainly because there’s no standard way to store images in databases, and not even all blog software have built in management of images.
If you want to engineer your blog such that you’re not locked into a platform, I’d recommend you use an external image management system, and just use <img>
tags in your posts. Those will always work.