The following article is most interesting:
http://blog.allanglesit.com/2011/03/linux-kvm-migrating-hyper-v-vhd-images-to-kvm/
The file format used by Hyper-V in its VHD files, is actually exactly the same as the VPC format used in Virtual PC. And KVM and QEMU do know how to read VPC. So you can do it directly, without conversion; just import an existing disk image into a new KVM virtual and you are there.
But if you want to convert, you can use a utility called “kvm-img”. In some references and some systems, it’s called “qemu-img”. The idea is, that a command line much like this:
qemu-img convert -f vpc -O raw hyper-v-disk-image.vhd kvm-raw-disk.img
will convert your Hyper-V virtual disk image to the “raw” type image which is first on the list for KVM and QEMU.