Buscar pacotes, repositórios e categorias de apps

Capa de flutter_vision
Detalhes do pacotev3.0.2

flutter_vision

Plugin para gerenciar Yolov5, Yolov8 e Yolov11 com suporte a LiteRT (TensorFlow Lite). Suporta detecção de objetos e segmentação no Android. iOS, em desenvolvimento.

AndroidiOS
Downloads em 30 dias
505
Curtidas
116
Pontos Pub
160

Instalar pacote

flutter pub add flutter_vision

Visão geral do pacote

Orientação gerada a partir de informações públicas. Apenas para referência.

flutter_vision é um plugin Flutter que habilita detecção de objetos e segmentação usando modelos YOLOv5, YOLOv8 e YOLOv11 por meio do LiteRT (TensorFlow Lite). Ele suporta as plataformas Android e iOS, oferecendo inferência eficiente diretamente no dispositivo para tarefas de visão computacional. O plugin foi projetado para desenvolvedores que desejam integrar análise de imagens em tempo real em aplicativos móveis, com desenvolvimento contínuo para aprimorar funcionalidades e desempenho. É especialmente útil para aplicações que exigem reconhecimento rápido e preciso de objetos e localização diretamente no dispositivo.

Casos de uso

  • Detecção de objetos em tempo real em aplicativos móveis
  • Segmentação de imagem para realidade aumentada
  • OCR e análise visual no dispositivo
  • Sistemas de vigilância baseados em dispositivos móveis
  • Marcação de fotos com inteligência artificial

Principais recursos

  • Suporta modelos YOLOv5, YOLOv8 e YOLOv11
  • Utiliza o TensorFlow Lite por meio do LiteRT para desempenho otimizado
  • Compatibilidade multiplataforma com Android e iOS
  • Leve e adequado para implantação móvel
  • Suporte integrado para detecção de objetos e segmentação

Indicado para

  • Desenvolvedores de aplicativos móveis trabalhando com visão artificial
  • Equipes construindo recursos de visão computacional no dispositivo
  • Projetos que exigem inferência de baixa latência
  • Desenvolvedores direcionando Android e iOS com configuração mínima
  • Prototipagem de aplicativos de câmera com IA

Considerações

  • Ainda em desenvolvimento ativo
  • Documentação disponível limitada
  • O desempenho depende do hardware do dispositivo
  • O tamanho do modelo pode afetar o tamanho do pacote do aplicativo
  • A integração com iOS pode exigir configuração adicional

README original

Snapshot do README original do repositório-fonte vinculado. Consulte o repositório para o conteúdo mais recente.

flutter_vision

A Flutter plugin for managing Yolov5, Yolov8, and Yolov11 accessing with LiteRT (TensorFlow Lite). Support object detection and segmentation on Android. iOS not updated, working in progress.

Installation

Add flutter_vision as a dependency in your pubspec.yaml file.

Android

In android/app/build.gradle, add the following setting in android block.

    android{
        aaptOptions {
            noCompress 'tflite'
            noCompress 'lite'
        }
    }

iOS

Coming soon ...

Usage

For YoloV5, YoloV8, and YoloV11 MODEL

  1. Create a assets folder and place your labels file and model file in it. In pubspec.yaml add:
  assets:
   - assets/labels.txt
   - assets/yolovx.tflite
  1. Import the library:
import 'package:flutter_vision/flutter_vision.dart';
  1. Initialized the flutter_vision library:
 FlutterVision vision = FlutterVision();
  1. Load the model and labels: modelVersion: yolov5 or yolov8 or yolov8seg or yolo11 or yolov11
await vision.loadYoloModel(
        labels: 'assets/labelss.txt',
        modelPath: 'assets/yolov5n.tflite',
        modelVersion: "yolov5",
        quantization: false,
        numThreads: 1,
        useGpu: false);
For camera live feed
  1. Make your first detection: confThreshold work with yolov5 other case it is omited.

Make use of camera plugin

final result = await vision.yoloOnFrame(
        bytesList: cameraImage.planes.map((plane) => plane.bytes).toList(),
        imageHeight: cameraImage.height,
        imageWidth: cameraImage.width,
        iouThreshold: 0.4,
        confThreshold: 0.4,
        classThreshold: 0.5);
For static image
  1. Make your first detection or segmentation:
final result = await vision.yoloOnImage(
        bytesList: byte,
        imageHeight: image.height,
        imageWidth: image.width,
        iouThreshold: 0.8,
        confThreshold: 0.4,
        classThreshold: 0.7);
  1. Release resources:
await vision.closeYoloModel();

About results

For Yolo v5, v8, or v11 in detection task

result is a List<Map<String,dynamic>> where Map have the following keys:

   Map<String, dynamic>:{
    "box": [x1:left, y1:top, x2:right, y2:bottom, class_confidence]
    "tag": String: detected class
   }

For YoloV8 in segmentation task

result is a List<Map<String,dynamic>> where Map have the following keys:

   Map<String, dynamic>:{
    "box": [x1:left, y1:top, x2:right, y2:bottom, class_confidence]
    "tag": String: detected class
    "polygons": List<Map<String, double>>: [{x:coordx, y:coordy}]
   }

Example

Screenshot_2022-04-08-23-59-05-652_com vladih dni_scanner_example Home Detection Segmentation

Contact

  • For flutter_vision bug reports and feature requests please visit GitHub Issues
  • For direct contact: yurihuallpavargas@gmail.com

Categorias

Dependências

Lista de dependências 1 itens

Repositório-fonte

Projetos que usam este pacote

Ainda não há dados.