Well to offset all the dark try a lighter shade that is complimentary to the dark colors. Maybe try a beige or tan. You could even be bold and rich earthy feel with a rust (not too dark).
Use either a brown or gray. Brown will bring out the other colors in the green. The gray wont make it look so out there. It will help calm the color and make it look more like a pastel color.
You should do a neutral light color. The best color I think would be a khaki color. It would match anything. If you ever change the carpet you would not need to paint again too.