Let's talk about the last one:
url("images/banner_img.png");
That is relative to your CSS file.
You said that the link ended up being:
http://localhost/learning_academy/public/asset/css/images/banner_bg.png
That means your CSS file must be in /localhost/learning_academy/public/asset/css/ right?
To solve this problem we have to know the path to the CSS.
You can actually try the full path just to try it out.
Add the following to your CSS file:
background-image: url("http://localhost/learning_academy/public/asset/css/images/banner_bg.png")
But also you are referring to the image as two different names so a bit confusing:
1) banner_img.png
2) banner_bg.png