I am not sure if there is OOTB for this, i let other experts to comment on these.
But you can surly create a custom service that can do Image compression. There are many java Image compression libraries available that you can use to compress the images and later using compressed images to save in JCR/DAM.
JAVA Digital Image Compression Technique :- https://www.tutorialspoint.com/java_dip/image_compression_technique.htm
Related Post :- http://stackoverflow.com/a/32112166/6433590
For creating a custom component/Service to upload images :- https://helpx.adobe.com/experience-manager/using/uploading-files-aem1.html
I hope this would be of some help to you.
~kautuk
Kautuk Sahni