What is the set of languages accepted by empty stack pda? I am having a confusion. Empty stack pda will always accept episilon. Therefore a language not accepting episilon will still be accept episilon, so how can we avoid this?
When defining the semantics of PDAs accepting with an empty stack, we initialize the stack with a special "bottom-of-stack" symbol. This solves your difficulty.

The set of languages accepted by empty-stack PDAs is the context-free languages. It is exactly the same set of languages accepted by final-state PDAs. The picture changes when considering deterministic PDAs: final-state DPDA accept the deterministic context-free languages, whereas empty-stack DPDAs accept the prefix-free deterministic context-free languages.