Skip to content

Repository files navigation

Flutter Computer Vision

This app is built to test AI object detection in Flutter by detecting people in an image.
It uses the Counting people Computer Vision Model by @pequi on Roboflow.
Technologies used in this project include Flutter and Roboflow AI Model.

Links

Download APKRoboflow Model

Packages

dioimage_pickerpermission_handlerurl_launcherflutter_dotenvmobxflutter_mobxwidgets_to_imagephoto_viewfl_chartdashed_border

Screenshots

Empty StateImage Picker DialogBefore Detection - GroupDetection Results - Group

Zoom View - GroupDetection Results - Group (Expanded)Detection Results - StreetDetection Results - Bus

Zoom View - BusNo People - MountainNo People - ForestAbout Bottom Sheet

Project Structure

lib
│ main.dart
│
└───src
├───core
│ ├───components
│ │ detection_info_bottom_sheet.dart
│ │ image_picker_alert_dialog.dart
│ │
│ ├───config
│ │ app_config.dart
│ │
│ ├───constants
│ │ app_border_radiuses.dart
│ │ app_paddings.dart
│ │
│ ├───exceptions
│ │ app_exception.dart
│ │
│ ├───extensions
│ │ detection_capture_scheduler_extension.dart
│ │ detection_image_boxes_extension.dart
│ │ detection_image_file_extension.dart
│ │ detection_object_ui_extension.dart
│ │ extensions_export.dart
│ │
│ ├───helpers
│ │ confidence_color_helper.dart
│ │
│ ├───services
│ │ env_service.dart
│ │ image_picker_service.dart
│ │ permission_service.dart
│ │
│ └───theme
│ app_colors.dart
│ app_theme.dart
│
└───features
└───detection_view
├───model
│ detection_object.dart
│ request_model.dart
│ response_model.dart
│
├───service
│ detection_service.dart
│
├───view
│ detection_view.dart
│
├───viewmodel
│ detection_viewmodel.dart
│ detection_viewmodel.g.dart
│
└───widgets
confidence_metric_card.dart
detected_object_list_tile.dart
detection_image_with_boxes.dart
donut_confidence_chart.dart
metric_card.dart
zoomable_detection_image.dart

Environment Variables

Before running the app, create a .env file in the project root and fill it with your Roboflow credentials/config values. These values are required for flutter run to work properly.

ROBOFLOW_API_KEY=ROBOFLOW_WORKSPACE_SLUG=ROBOFLOW_WORKFLOW_ID=

Installation

  1. Clone the repository:
    git clone https://github.com/MegrurNiftiyev/flutter_computer_vision.git

  2. Install dependencies:
    dart pub get

  3. Run the application:
    flutter run

About

Object detection mobile application built with MVVM architecture in Flutter using Roboflow API.

Topics

Resources

Stars

1 star

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages