That's a good question.
勉強する sounds like,,, you study alone. You study by yourself. like,, using a textbook or something.
学ぶ ,,,, We usually say that when we learn something from someone or something. not alone like 勉強する
習う is also to learn something from someone. But 習う means, you want to learn something from someone. You choose to learn and the teacher.
But, 学ぶ means, you learn something by accident.
So,,,, if you are studying English for the exam tomorrow, you can say
私は英語を勉強しています。
And if you are learning playing tennis from someone, you can say
私は テニスを習っています。