Ну чтобы это сделать, тебе надо цепляться к hover
Вот пример, без особой анимации:
https://jsfiddle.net/ironfrol/pb4nayer/18/Тебе надо добавить текст в блок с картинкой, изначально его спрятать, а при наведении показывать.
А также при наведении можешь создать блок-маску для картинки с background и full width/height
ИЛИ
Родителю фон в черный и при наведении делать картинку прозрачной, тогда произойдет затемнение.
https://jsfiddle.net/tpn2v0ms/
а нужно еще добавить вот так примерно codepen.io/littlesnippets/pen/yVQJeW