Inspiration

  1. With the rapid development of social media in recent years, people send and receive a large number of pictures on social media every day, most of which we just glance at the most important part of the picture for just a few seconds at most, and don't care about the rest of the picture. This situation caused a huge waste of network traffic, we developed a picture compression software to ease this situation.

What it does

  1. The compression software we develop focuses on what is most noticed part in each picture, that is, the important part. We use Pytorch object detection technology to extract the important parts of each picture, preserving the quality of the important parts, and then we will reduce the quality of remaining parts of the picture, that is, the unimportant parts. Finally, we will merge together the high quality, important parts and the low quality, the unimportant parts. In this way, we get a compressed picture that is significantly smaller than the original image size, at mean time without affecting the user ’s experience when they glance picture.

How we built it

3.We use pytorch to develop yolo v3 to detect and extract the bounding box of important part of the image. We use color quantization to reduce the quality of unimportant part of the image.

Challenges we ran into

4.One challenge is that the boundary between important part and unimportant part some time maybe too obvious and thus affect user’s experience. And other challenge is that the processing time of our compression maybe too long for huge amount of image processing.

Accomplishments that we're proud of

5.We greatly reduce the image size after compression we dose not affect user’s experience.

What we learned

6.We have learned some technic of the pytorch implementation of object detection and how to reduce the quality of part of an image etc.

What's next for EndPresso

7.We plan add feathering to ease the obvious boundary between important and unimportant parts of image that could affect user’s experience. We also plan try to apply GAN(Generative Adversarial Network) to restore the quality of unimportant part in some cases.

Built With

Share this project:

Updates