All pages
Powered by GitBook
1 of 14

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Concepts

Project

How to create a no code AI application using Power Apps and Custom Vision?

A fast and easy way to prototype apps with AI capabilities

Shortlink: https://aka.ms/NoCodeAI

You might have an idea for an application using AI and not have anyone to build it. You might be a programmer and want to try out your ideas and Azure Custom Vision before you start writing code. No matter what your coding skills are, if you want to prototype an application with AI, Power Platform and it's AI Builder feature is a fast and easy option.

This article explains what the power platform is as well as goes through a step by step process to create an app that detects objects from photos using Power Apps and AI Builder. Check out the video below to see the app we will build to detect different Mixed Reality Headsets such as HoloLens version 1 and 2 Augmented Reality and Virtual Reality headsets and their hand controllers.

Read or skip through the questions to learn how to build your first Power App with AI features.

How to use your Custom Vision model in a Power App?

Once you are happy with you model's performance, you can add it to a new app by choosing Use model and New app.

Use your model in a new app

You will be redirected to Power App editor and an Object Detection component that uses your model will be added automatically. In the editor, you can add new pages to navigate, design and customize your pages.

Your AI model used in the Object Detection component

Once you are happy with the design, you can publish and share your app. You can use your new app by downloading Power Apps from Apple, Android or Microsoft stores. Once you sign in, your app will be listed in the mobile Power Apps.

Power App in Android Play Store

How to improve Model performance?

Getting the best model performance for your business can be a rather iterative process. Results can vary depending on the customizations you make to the model, and the training data you provide.

To help facilitate this process, AI Builder allows you to have multiple versions of your model so you can use your model and continue to improve it at the same time.

What are some best practices for training for object detection?

Use diverse images to train with all possible use cases. For example if you are training your data to detect a VR headset, use images of the headset used in different environments as well as the out of the box images. If you only train with images with people wearing the headset, your model would not recognize images of the same device when it is in its box.

  • Use images with variety of backgrounds. Photos in context are better than photos in front of the neutral backgrounds.

  • Use training images that have different lighting. For example, include images images taken with flash, high exposure, and so on.

  • Use images of objects in varied sizes. Different sizing helps the model generalize better.

  • Use images taken from different angles. If all your photos are from a set of fixed cameras such as surveillance cameras, assign a different label to each camera. This can help avoid modeling unrelated objects such as lampposts as the key feature. Assign camera labels even if the cameras capture the same objects.

How to share your models?

By default, only you can see the models you create and publish. This feature allows you to test them and use them within apps and flows without exposing them.

If you want others to use your model, you can share it with specific users, groups, or your whole organization.

What is Power Platform?
What are Power Apps?
What is AI Builder?
What are some of the use cases for AI Builder?
Is AI Builder the right choice?
Can I use Power Apps and AI Builder for production?
What will my production app cost?
What are the preview features?
What is Object Detection?
How to try out Object Detection capabilities?
What can you do with Object Detection?
How to detect objects from images?
How to improve Model performance?
What are some best practices for training for object detection?
How to share your models?
How to use your model in a Power App?
Where to go next?
Should I keep using my power app or rebuild it?
How to create a custom feature for Power Apps?
How to compare costs for Power Apps and Logic Apps?
AI and Cognitive Services Resources

What is training data?

A machine learning model is a file that has been trained to recognize certain types of patterns. You train a model over a set of data, providing it an algorithm that it can use to reason over and learn from those data.

Training data is the textbook that will teach your AI to do its assigned task, and will be used over and over again to fine-tune its predictions and improve its success rate. Your AI will use training data in several different ways, all with the aim of improving the accuracy of its predictions. It does this through the variables contained in the data. By identifying these and evaluating their impact on the algorithm, data scientists can strengthen their AI through copious adjustments. The best data will be extremely rich in detail, capable of improving your AI after hundreds of training cycles by hinting at a wide range of variables that affect your algorithm.

Headset training data in different environments and varied objects
HoloLens training data
HoloLens and VR headset data with different background
HoloLens training data with low light
HoloLens training image with different size and angle

What's next?

Now you have your app's prototype, you can add more features, get feedback and test your app.

Should I keep using my power app or rebuild it?

When your needs change, you can consider refactoring your application to a serverless backend and a custom built UI. If the app is working fine for you and your users, you can continue using and improving overtime using Power Apps.

What would be the changes that requires the upgrade? There are two possibilities for the changed requirements for your app:

  • Feature

  • Budget

How to create a custom feature for Power Apps?

Ready made tools are always limited to the features the product team decides to include. If you are writing custom code, you can add any feature that you need. Thankfully, for the features that are not implemented yet, it is always possible to author a custom connector that you can use with or without Power Apps.

A connector is a proxy or a wrapper around an API that allows the underlying service to talk to Microsoft Power Automate, Microsoft Power Apps, and Azure Logic Apps. It provides a way for users to connect their accounts and leverage a set of pre-built actions and triggers to build their apps and workflows.

Check out the list of and yourself.

How to compare costs for Power Apps and Logic Apps?

Once you start using your app, you will have a better idea about the number of users accessing AI capabilities and the number of images that you need to train. You can use and to compare options. You can check any other service price through .

What could go wrong?

Training your data for bias

If we think about our Custom Vision, Mixed Reality Headset detection project example, we can train our data to be biased to detect HoloLens 2 or other headsets by giving more image samples for the specific headset. As a result the application will detect the headset with most images(ex: HoloLens 2), even when it is not the actual type of the headset in the image.

Test results biased for HoloLens 2

What is Power Platform?

Power Platform is a set of tools, API's and SDK's that helps you analyze your data and build automations, applications and virtual agents with or without having to write any code.

What are Power Apps?

Power Apps is a set of tools that allows you to create applications with a drag and drop UI and easy integration of your data and 3rd party APIs through connectors.

Power Apps Connectors
how to build a custom connector
AI Builder Cost Calculator
Logic App Cost Calculator
Azure Product Cost Calculator

Introduction to AI Fundamental

Introduction to fundamental concepts and AI app prototypes

A connector is a proxy or a wrapper around an API that allows the underlying service to talk to Microsoft Power Automate, Microsoft Power Apps, and Azure Logic Apps. It provides a way for users to connect their accounts and leverage a set of pre-built actions and triggers to build their apps and workflows. For example, you can use Twitter connector to get tweet data and visualize it in a dashboard or use Twilio connector to send your users text messages without having to be an expert in Twitter or Twilio APIs or having to write a line of code.

Check out the list of connectors for Power Apps to see all the APIs that are available. Notice Power Automate or Logic App connectors might not be the same.

What is AI Builder?

AI Builder is one of the additional features of Power Apps. With AI Builder, you can add intelligence to your apps even if you have no coding or data science skills.

AI Builder Features on Power Apps

What are some of the use cases for AI Builder?

You can use pre-trained models to:

  • Detect objects from images

  • Analyze your customers sentiment from feedback

  • Detect keywords from text

  • Extract specific information about your business from text

Power Platform features

How to detect objects from images?

To start creating your AI model for your app, sign in to and click on AI Builder on the left hand menu. Select Object Detection from the "Refine Model for your business needs" option.

Name your new AI model with a unique name. Select Common Objects and proceed to next section.

Name the objects that you are going to detect.

Upload images that contain the object you will detect. To start with you can upload 15 images for each object.

Make sure each object has approximately the same amount of images tagged. If you have more examples of one object, the training data will be likely to detect that object when it is not.

What is Object Detection?

AI Builder Object detection is an AI model that you can train to detect objects in pictures. AI models usually require that you provide samples of data to train before you are able to perform predictions. Prebuilt models are pre-trained by using a set of samples that are provided by Microsoft, so they are instantly ready to be used in predictions.

Object detection can detect up to 500 different objects in a single model and support JPG, PNG, BMP image format or photos through the Power Apps control.

How to try out Object Detection capabilities?

False positive HoloLens 2 detection

Tag your objects by selecting a square that your object is in and choosing the name of the object.

Tagging objects

Once you are done choose Done Tagging and Train. Training process will take some time.

You can choose to not use images after you upload and tag them.

If you choose to not use an image or clear any tags, you can do that at any time by going back to your model under the AI Builder on the left hand side menu and choose your model and choose edit.

AI Builder will give you a Performance score over 100 and a way to quickly test your model before publishing. You can edit your models and retrain to improve your performance. Next section will give you some best practices to improve your performance.

Performance score of trained model
Power Apps
Build Object Detection on Power Apps - AI Builder
Train your custom model screen for Object Detection
Name each objects to be detected
Training image format and size for object detection
You can try out and see how object detection works before having to create and accounts or apps yourself on the Azure Computer Vision page.
Try out Computer Vision capabilities with your own images

What can you do with Object Detection?

  • Object counting and inventory management

  • Brand logo recognition

  • Wildlife animal recognition

Trained custom model result with AI Builder

Is AI Builder the right choice?

How to decide if Power Platform and AI Builder is the right choice for what I want to build?

Great question! There are so many tools out there and many ways to do the same thing. How do you know which one is the right solution before investing time and effort?

I have a rule of thumb when I want to build something, use whatever is available and easy to use first. When your needs exceed what the tool you are using covers, look into another solution or building it yourself.

Use the tool easiest to get started when you are building your idea. When your needs exceed the capabilities of the tool you are using, find a solution that enables you. Don't invest in building things from scratch before you know it is worth it to do so.

For example, if you have an app idea, it is better to have a prototype running as easily as possible. You can test your ideas before investing your time into building custom designed UI or features. In our specific case, you can first prototype your app with the drag and drop UI of Power Apps and using prebuilt AI models. When your specific needs surface, such as recognizing a particular object or keyword, you can invest your time into creating your custom models to train for the object or keyword detection.

Can I use Power Apps and AI Builder for production?

Yes you can. As any tool that does things magically, AI Builder in Power Apps comes with a cost. That does not mean you can't .

What will my production app cost?

If you want to go to production with Power Apps, it is a good idea to consider the costs. Thankfully there is an app for that. let's you input what AI tools you will need and how many users will be accessing your app's AI features and gives you the price it will cost you.

What are preview features?

AI Builder was released for public preview on June 10, 2019 in Europe and the United States. Preview release features are subject to change and may have restricted functionality before the official release for general availability. Preview releases are not meant for production use. You can try them out and influence the final product by giving feedback.

The General Availability (GA) release will occur in a phased manner, with some features remaining in preview status while others are released for GA. You can check out the release status on the .

try your ideas out for free
AI Builder Calculator
AI Builder documentation
AI Builder cost calculator
AI Builder Preview features notice

Resources

A cheatsheet for links to AI resources

AI Lessons: https://aka.ms/AILessons

Short link to AI Resources: https://aka.ms/CurriculumAIResources

Core Concepts

  • What is a Machine Learning Model?

Cognitive Services

Computer Vision

Language

Speech

Power Platform

Logic Apps

Azure

Further Reading

Training Data

  • Coco: COCO is a large-scale object detection, segmentation, and captioning dataset.

Computer Vision API v3.1

  • Object Detection

  • Optical Character Recognition(OCR)

  • OCR-Form-Tool Repo

  • Face Detection

  • Brand Detection

  • Spatial Analysis

  • AI Show: Spatial Analysis Episode

  • Custom Vision Improve Performance

  • Audio Content Creation Tool

  • Audio Content Creation Docs

  • List of Power Automate Connectors

  • Custom Connectors

  • AI Builder Overview

  • AI Builder Documentation

  • Power Platform Videos

  • AI Builder Release Status

  • AI Builder Cost Calculator

  • Computer Vision Overview
    Computer Vision Documentation
    What's New in Computer Vision
    Ignite 2020: What's new in Cognitive Services Video
    Text Analytics Docs
    Speech Service Overview
    Speech Studio
    Custom Speech Docs
    Custom Speech Portal
    Power Apps Free Trial
    Power Platform Overview
    Power Platform Documentation
    List of Power Apps Connectors
    Logic Apps Documentation
    Logic Apps Pricing
    List of Logic Apps Connectors
    Azure Product Cost Calculator
    Bias in Machine Learning: How Facial Recognition Models Show Signs of Racism, Sexism and Ageism
    https://cocodataset.org/#home
    Object Detection App made with Power Apps