How to make filters? I am trying to make filters like sepia filter in my app like other photo editing applications , till now I don't have any idea about it , Can any one help me out for it about its algorithms and how to do it ? and Can I implement in opencv using native c++ or we have any of its build in functions ?
You can look at implementations for open source image editing programs (e.g. GIMP). This link from MSDN Magazine, January 2005 by Stephen Toub, entitled "Sepia Tone, StringLogicalComparer, and More" in the .NET matters section specifies a linear transformation of the color space to get a Sepia effect: "New Red = R*.393 + G*.769 + B*.189 New Green = R*.349 + G*.686 + B*.168 New Blue = R*.272 + G*.534 + B*.131" where each channel is normalized to lie in $[0,1]$. 

Its just applying the formula on each pixel, so you don't need any special libraries.