More and more mobile and desktop applications are predicted to be soon working on augmented and virtual reality. Today's most popular social networks and video conference platforms such as Facebook, Instagram, Snapchat and Zoom are taking the advantage of AR to bring life to their user's social media feeds with the help of different face filter apps, customization of their feed's appearance, creation and the use of personalized AR avatars and much more. This increases product and service satisfaction, drives user engagement with the brand resulting in more sales and less product returns and service cancelations.
Face filtering is one of the most interesting and technologically advanced areas of the modern AR. One good example of its use is the Puma's recent advertising campaign promoting its ‘Play On’ pack of sneakers using Instagram's face AR filters with a bit of retro styling.
The article you're about to read is going to touch on today's very popular topic from the AR world which is how much does it cost to build a face filters app. But before we'll dive into this, let's start our journey from the very beginning and discuss what augmented reality is, how does it work and describe 4 different types of apps that are currently being developed and used. We'll close our discussion with section 5 by considering some of the most popular face filter apps which many of us use.
1. What is Augmented Reality and how does it work?
According to Merriam Webster, Augmented Reality is “an enhanced version of reality created by the use of technology to overlay digital information on an image of something being viewed through a device such as a smartphone camera”. In other words, the Augmented Reality enhances images, videos or any other content we see through the smartphone's camera by adding computer-generated content to it.
Some of the examples of the use of AR technology are the Nintendo’s Pokémon Go game where the users have to locate, capture, battle, and train virtual creatures, Weather Channel's visual demonstrations of the different weather scenarios, L'Oreal's Make App which lets users try various types of cosmetics without actually wearing them, Snapchat, Facebook or Instagram's image and video enhancement effects and much more.
- Step 1. The smartphone's camera identifies and transfers the image of the real-world object to the augmented reality app.
- Step 2. The AR software recognizes and analyzes the image and selects the correspondingly sized and formed augment that will be associated with it such as a text, video or a 3D model.
- Step 3. The latter is combined with an image or video of the real world and displayed on the smartphone's screen.
When it comes to its functionality, Augmented Reality apps can work in different ways. The next section describes 4 groups of AR applications that are currently being developed and used.
2. Different types of AR apps
Augmented Reality apps differ based on how they work and the type of technology they use. They can be divided into the following four groups:
In comparison to the other types of applications discussed next, these types of applications are not difficult to create because they do not require the implementation of complex technologies. For them to function, we need to use markers such as images, QR codes or icons that can be found in various parts of the real world.
Marker-based apps work in the following way. Using the smartphone's camera, the user scans a marker and the AR app projects images, videos or symbols on top of it.
A great example of a marker-based AR app is augmented reality business card app which is capable of scanning and saving the visual representation of an ordinary business card to augment and display important additional information on top of it.
Face Filter apps
These types of apps are concentrating on the user's face. Initially introduced by Snapchat, the face augmentation technology enjoyed great popularity and is now considered to be much more than a simple entertainment tool.
Today, face AR apps are often used in the e-commerce industry as virtual try-on, allowing consumers to virtually “wear” different types of make-up, accessories and clothes and therefore have a good understanding of how these products would look like in the real world. Other areas where face AR is being used are social networking and video editing apps like Instagram, Snapchat and TikTok. They allow users to apply augmented reality features to enhance their photo and video content.
Our Face AR Platform is a truly powerful tool for building Face AR apps for different user needs. Visit our website to find out more.
The proceeding section of this article is going to discuss the actual costs of developing a face filters application.
Location-based AR apps
These applications require integration with the smartphone's GPS, compass and other sensors. The latter is used for providing the user's location and mapping virtual objects to it. A great example of the location-based app is Pokemon Go, a very successful location-based mobile game.
Simultaneous Localization and Mapping AR Apps
These applications use complex algorithms and data received from multiple sensors. The associated camera images are used to identify a precise user location and carry on the respective mapping activity. These types of apps are the most complex and expensive to build. The examples include virtual subway maps, terrain mapping for localization and so on.
Next, let's make out the list of the main factors influencing the cost of building a face filter app. This will have a great influence on the respective time and monetary budget you'll need to allocate the resources for.
3. What are the main factors influencing the cost of developing a face filter app?
Factor 1. Operating systems the face filter app will be running on
Your face filter app should ideally be capable of working on both Android and iOS operating systems. However, adapting your app to both of them at the same time might substantially increase its corresponding development costs. Therefore, it might make sense to first build your Face AR app for one platform and then adopt it to the other. Another option is to take a look at the SDKs which will help you to build an app capable of running on both Android and iOS at the same time. The latter option is more convenient but often costly.
To choose the preferred operating system you're going to build your app on, use different web analytics tools such as Google or Adobe Analytics to find out what type of device the majority of your users use. After that, start building your face filter app based on their preferred operating system.
Factor 2. Hourly rates of the face filter app development companies
One of the most significant factors influencing the costs of the Face filter application development is the hourly rates of the developers you're going to hire. The relevant information listed in the respective directory of Clutch.io will largely depend on the developer's geographical location:
- USA & Canada: $100 to $300 per hour
- Western Europe (mostly UK and Germany): $80 to $300+ per hour
- Eastern Europe (mostly Ukraine): $25 to $150 per hour
- Asia (mostly India): $25 to $300+ per hour
The figures mentioned above also illustrate the availability of the development teams in specific regions of the world.
Factor 3. How complex the app is going to beThe more features the application is going to have, the more expensive the corresponding development is going to be. If you have a limited budget you might want to first consider building an MVP model. Some of the must-have features this face filter app should have are:
- Intuitive user interface. The interface should be well-designed to make sure the user will have a clear understanding of how the application should be used.
- Stable working performance. The face filter app should work without any failures to ensure users' satisfaction.
- High-quality 3D models. To make sure the application will build accurate face models and correctly apply filters chosen by the user resulting in higher user engagement, more in-app purchases and revenue.
- Constant updates. The face filter app should receive constant product updates which may include new functionality, bug fixes and existing feature improvements.
4. What are the actual costs of developing a face filter application?
The respective costs are going to be influenced by the amount of time for developing our application. The development stages the project will consist of are:
Stage 1. Initial analysis of the project
This stage is going to be devoted to analyzing the amount and nature of tasks during the whole project to make sure the final product will have all the necessary functionality our users need. This stage takes about 80 to 150 hours in time.
Stage 2. Choosing a software development kit
Feature-reach and high-quality face filter apps will often require a software development kit (SDK) capable of recognizing 2D models of the human's face and enriching them with additional content such as texts, images and videos. The main reason for using the software development kit is to ease the actual development process and often decrease associated costs.
If you are in the process of building your first ever face AR application which wouldn't have a lot of advanced features such as beautification, product try-on, background separation, you may want to look at the free open source AR SDKs we're going to discuss soon. They have limited functionality and time limitations, involve higher development risks and are often accompanied by watermarks.
Commercial SDKs, on the other hand, have the full product functionality and are offered with several pricing plans, depending on the functionality and the time the user needs. If you would like to build a feature-rich face filter app with lots of different content, it's a better idea to take a look at commercial SDKs that are currently available on the market.
Let us take a look at some of the open-source and commercial SDKs which can be used for building face filter applications:
Apple's SDK named ARKit was announced together with the release of the company's iOS 11 operating system in June 2017.
Its functionality includes the detection of faces in a front-camera, overlaying of virtual content and animation of facial expressions in real-time. In addition to that, it can estimate the real-world lighting conditions, as well as a texture to be used for mapping 2D imagery onto the face. TrueDepth cameras on iPhone X, iPhone XS, iPhone XS Max, iPhone XR, and iPad Pro can be used to track up to three faces at once.
The SDK can be integrated with third-party tools like Unity and Unreal and work with iPhone 6S and beyond. Supported devices listed in the following page.
Google's ARCore. Is an SDK used for creating Face Tracking SDKs for Android OS. Its update numbered 1.7. introduced in 2019 came up with a new Augmented Faces API available for the front-facing camera. The latter can create a high-quality 3D model of a user's face and apply different face filtering effects such as virtual masks, hats and even skin retouching.
Google's toolkit works with Java/OpenGL, Unity, and Unreal. Just like Apple's ARkit, Arcore is capable of matching the lighting conditions of the real-world environment with the ones of the virtual objects to make sure they both match each other. Supported devices listed in the following page.
Banuba Face Filters SDK . This Face Filter SDK is used for creating mobile camera-based face filter apps. It employs computer vision technology to build face applications for e-commerce, advertising, gaming, education and other domains.
Banuba SDK allows users to create virtual face masks, custom 3D avatars, perform background separation using the data received by both front and rear cameras. This is something the Apple's Arkit doesn't offer.
In addition to that, the Banuba SDK's code can be adapted to the face filter apps running on both iOS and Android as well as Windows and Mac operating systems. It also supports the stripped-down Android devices running on Android One and can adopt its effect to the device's technological capabilities.
Stage 3. Writing the code
Once we've selected the SDK that is going to be used for our future face AR app, it's time to deal with the actual code.
This stage will be made significantly easier if you've selected a commercial SDK with advanced functionality. In the case of Banuba SDK, the process of creating different face filter masks will be made easier by taking advantage of Banuba Studio. The latter makes it possible to create AR masks quickly and easily via a simple drag-and-drop interface without the need of having any special coding skills possessed by the developer.
The time required for completing this stage varies between 400 and 800 hours.
Stage 4. Designing the solution
This is one of the most important stages of developing a face filter application and consist of the need to:
- Build a wireframe
- Create 3D models of masks
- Design the application's user interface
- Build animated images.
The total time required to complete this stage is between 400 and 600 hours.
Stage 5. Creating extra features
When calculating the budget for developing a face filter application, it is important to think about the extra features it's going to have. Some of them may include:
- Signing in and registration functionality. To enable your users to register for an account and use some of the functionality you may want to monetize the app with.
- Payment feature. So that the users will be able to pay for some of the app's premium features.
- Access to the smartphone's gallery and camera to enhance the photos already taken by the user, make new ones or record videos.
- Sending push notifications. To provide users with news about the app's functionality updates and bug fixes.
- Giving ratings. To make sure the face filter app will be listed among the top ones in the respective sections of Google Play and/or App Store.
- Sharing functionality which is going to play a positive role in the app's promotion.
- Presence of sound effects playing a role in a user's engagement with the app.
- Storing functionality. Depending on whether it's going to be possible to store the enhanced images and videos locally on the device and or in the cloud.
These are just a few examples of the extra functionalities your app may have. Developing them may take about 15 to 100 hours.
Stage 6. Testing
Testing the Face AR app to make sure it functions without errors is also an important stage of its development process. The latter takes about 80 to 100 hours to complete, depending on the app's complexity.
Stage 7. After-sale support
Last but not least, it is also important to provide users with constant updates, bug fixes and functionality enhancements. It will amount to 20-40% of the application's development costs per year.
To sum up, the development work for creating a typical face filter app with basic functionality will usually amount to $40,000-$45,000. Building an app with richer functionality like Instagram or Snapchat will require you to part with $75,000- $80,000.
5. Examples of excellent face filter apps
There has never been a better time to use some of the latest face filter apps that are currently available. Modern smartphone technologies are capable of quickly applying immersive effects to the photos and videos created by the users.
Below are some examples of the well-known face filter apps with the above-mentioned functionality available for both Android and iOS devices.
Youcam Makeup uses the power of AI and the smartphone's camera to help users try out different cosmetic products such as lipsticks, eye makeup and blushes from the world's known brands like L'Oreal and Maybelline in real-time. In addition to augmenting selfies, the app also lets its users take advantage of live makeup cam and record a makeup video directly on the app.
It is also possible to share the respective results with friends and relatives, follow other users, shop for and review featured products.
Image source: prosyscom.tech
Snapchat in a mobile-based messaging platform that lets users share images, videos and stories. The audience can also create their photos and videos using different captions, filters, drawings and other elements and include them in their stories that get self-destructed a few seconds after being viewed. The platform is especially popular among young people and is gaining new users every day. The reasons why many prefer to use Snapchat is because they often favour visual communication supported by this platform to the text-based one.
Snapchat's Cat Face Filter.
This face filter app was firstly introduced in January 2017 by the Russian company Wireless Lab. It exploded in popularity in many countries of the world when many celebrities began to post their “aged” photos on social networks. The app's AI-based photo editing software can show how people would look when getting younger or older. Other competitors like Instagram and Snapchat do not offer such functionality.
Similar to its alternatives, the application may help users in discovering the hairstyle and color that best matches their physical appearance.
FaceApp's Ageing Face Filter.
After successfully introducing Snapchat-like filters on its platform, Facebook also brought them over to Instagram. These AR face app features can be applied to photos and videos taken both by front and rear-facing cameras. Instagram users have the possibility of augmenting their appearance with crowns, try on different face elements to turn themselves into rabbits or koalas and make different visual elements move around them.
Instagram's Dog Face Filter.
The costs of developing a face filter app will be influenced by the variety of factors, including the platforms it's going to work on, its functionality as well as the hourly rate of the developers you are going to be working with. Less complex apps developed in Eastern Europe or Asia will cost around $40,000-$45,000. The feature-rich face filter apps developed in the U.S. will require you to spend $75,000-$80,000.
Apart from considering building face filter apps using Apple and Google's open source SDKs, there is always an option of using commercial SDKs with more functionality by purchasing a licence or committing to a one-time payment.
What do you think about the process of building a typical face filter application? Are there any other factors that should be considered? Write your thoughts in the comments section below.