I am not sure if the image color can be changed using CSS.
But you can change the image on mouse over by setting the src attribute to different value using JavaScript. Or change the background of the image
Code:
<html>
<head>
<script>
function changecolor(){
document.getElementById("logo").setAttribute("class", "logo");
}
function changecolorback(){
document.getElementById("logo").setAttribute("class", "");
}
</script>
<style>
.logo {
position:absolute;
background-color:blue;
opacity: 0.8;
z-index: 100;
}
</style>
</head>
<body>
<img src = "box.png" onmouseover = "changecolor()" onmouseout = "changecolorback()" id = "logo" />
</body>
</html>