Can we go even without headers by including simple placeholders inside the input box? any other suggestions?
Are they necessary ? NO
But will they elevate the usability ? YES
By headers I assume you meant title.
Users can be of different types. There can be large number of naive users out there. The default forms will not be obvious to them. They should be explicitly directed and each forms must be described to them.
You can see many forms out there , just using the icons instead of the labels which can be confusing.
Another thing is browser support
Although very less fraction , there are people who still uses old browsers that does not support placeholders - you will be confusing them. So going ahead with just a placeholder alone is a strict no.
A few suggestions:
If possible you can use both label and icons together for better usability.
Also add a tip icon or an explicit explanation of confusing fields in your form.
Another way to go at it is , using a short and direct label(title) outside the field and a small explanation as placeholder inside the field.
Headers are the first thing that users look in a web page, so they can understand what the page is about. If you want usable interface, headers are mandatory! They are so important that when doing A/B test they are the first thing you should test.
In your case you are assuming that your users will know what will happen if they click the Browse button, but imagine if some old 60+ guy with almost no computer experience try use your form. He'll simply be lost. When designing your interface you should imagine that your users are using computer for the first time. This way you will support both novice and experienced users.