Dear Oli,
This should all work. I think the behaviour you have observed might be because you can open the VSI file with or without the pyramids being "flattened" into individual series. If you use:
http://downloads.openmicroscopy.org/bio ... boolean%29
i.e. call r.setFlattenedResolutions(false) before you call r.setId() this will instruct the reader to keep the pyramids as resolution levels within a series rather than making them into separate series'. This should make r.getResolutionCount() return the sub-resolutions for the selected series (and the series count will decrease appropriately).
Regards,
Roger