여러 방법이 있는데요.
그중에서 가장 많이 사용하는 방법은 OpenGL을 이용하는 것입니다.
카메라에서 들어오는 데이터와 화면에 표시하고 싶은 스티커를 OpenGL로 같이 드로잉하고
사진을 찍을 때는 OpenGL로 드로잉 후 프레임 버퍼의 픽셀 데이터를 읽어서 파일로 저장하시면 됩니다.
OpenGL이 힘드시면 카메라에 들어오는 데이터는 그냥 TextureView나 SurfaceView로 표시하고
그 위에 표시하고 싶은 것들은 뷰로 표시 합니다.
그리고 사진찍을때는 카메라의 API를 이용하여 사진을 찍고
사진 찍을 파일을 읽어 Bitmap으로 만들고 화면에 같이 표시한 내용을 Canvas를 이용하여 그립니다.
그리고 다시 Bitmap을 파일로 저장하면 됩니다.
위의 두 방식 모두 초급 개발자가 하시기 조금 어렵습니다.
이것 저것 직접 부딪히며 개발하시며 익히셔야 합니다.