gpupixel

gpupixel

Real-time image and video processing library similar to GPUImage, with built-in beauty filters, achieving commercial-grade beauty effects. Written in C++11 and based on OpenGL/ES.

Stars: 1191

Visit
 screenshot

GPUPixel is a real-time, high-performance image and video filter library written in C++11 and based on OpenGL/ES. It incorporates a built-in beauty face filter that achieves commercial-grade beauty effects. The library is extremely easy to compile and integrate with a small size, supporting platforms including iOS, Android, Mac, Windows, and Linux. GPUPixel provides various filters like skin smoothing, whitening, face slimming, big eyes, lipstick, and blush. It supports input formats like YUV420P, RGBA, JPEG, PNG, and output formats like RGBA and YUV420P. The library's performance on devices like iPhone and Android is optimized, with low CPU usage and fast processing times. GPUPixel's lib size is compact, making it suitable for mobile and desktop applications.

README:

English | 简体中文

Build · Demo · Integration

GPUPixel Stars GPUPixel Release GPUPixel Stars GPUPixel Stars


Welcome to join us to make GPUPixel better by participating discussions, opening issues, submitting PRs 👏.

Introduction

⛰️ GPUPixel is a real-time, high-performance image and video filter library, extremely easy to compile and integrate with small library size.

🔑 GPUPixel is written in C++11 and is based on OpenGL/ES, incorporating a built-in beauty face filter that achieves commercial-grade beauty effects.

🔌 GPUPixel supports platforms including iOS, Android, Mac, Win and Linux. It can theoretically be ported to any platform that supports OpenGL/ES.

Effects Preview

👉 Video: YouTube | BiliBili

Origin Smooth White ThinFace
BigEye Lipstick Blusher ON-OFF

Architecture

Features

This table compares the features supported by GPUPixel and GPUImage and Android-GPUImage:

✅: Supported | ❌: Not supported | ✏️: Planning

GPUPixel GPUImage Android-GPUImage
📷 Filters:
Skin Smoothing Filter
Skin Whitening Filter
Face Slimming Filter
Big Eyes Filter
Lipstick Filter
Blush Filter
More Build in Filter
🎬 Input Formats:
YUV420P(I420)
RGBA
JPEG
PNG
NV21(for Android) ✏️
🎥 Output Formats:
RGBA
YUV420P(I420) ✏️
💻 Platform:
iOS
Mac
Android
Win
Linux

Performance

iPhone

- iPhone 6P iPhone 8 iPhone X iPhone 11 iPhone 14 pro
CPU 5% 5% 3% 3% 3%
Time Taken 10ms 4ms 3ms 3ms 3ms

Android

- Xiaomi 10 Huawei Mate30 Vivo SAMSUNG Google Pixel
CPU 3% 5% - - -
Time Taken 6ms 5ms - - -

Lib Size

iOS(.framework) MacOS(.framework) Android(.aar)
Size 2.4 MB 2.6 MB 2.1 MB

Before You Start

⭐️ Star us on GitHub, and be instantly notified for new releases!

Getting Started

See the doc: Introduction | Build | Examples | Integrated

Contributing

Welcome to join us to make GPUPixel better by participating discussions, opening issues, submitting PRs.

At the same time, please consider supporting GPUPixel by sharing it on social media and at events and conferences.

Contributors

Acknowledgement

Reference Project

  1. GPUImage
  2. CainCamera
  3. AwemeLike
  4. VNN

License

This repository is available under the MIT License.

For Tasks:

Click tags to check more tools for each tasks

For Jobs:

Alternative AI tools for gpupixel

Similar Open Source Tools

For similar tasks

For similar jobs