I’m sure its possible, but I’ve never done it myself. It would definitely take quite a bit of time (and code) to do this.
I just did a quick Google search and came across this – http://net.tutsplus.com/tutorials/wordpress/create-a-multi-layout-portfolio-with-wordpress/ ….not sure if it will work or not, but its worth a try if you really want it.