Giter Club home page Giter Club logo

learning's Introduction

Learning

The easy way to use Machine Learning Kit in Flutter.

Getting Started

Add dependency to your flutter project:

$ pub add learning

Optimization

For best performance (and to minimize application size), it's better to add dependency directly from each of sub-package you want to use in your application.

Usage

Learning consists of 13 different sub-packages that we can add separately based on our application needs. Please reference to each link below to learn more about the usage of each learning package.

Vision Version Links Example
learning_text_recognition ^0.0.4 Pub.dev
Github
Example
text_recognition.apk
learning_face_detection ^0.0.3 Pub.dev
Github
Example
face_detection.apk
learning_pose_detection ^0.0.2 Pub.dev
Github
Example
pose_detection.apk
learning_selfie_segmentation ^0.0.3 Pub.dev
Github
Example
selfie_segmentation.apk
learning_image_labeling ^0.0.2 Pub.dev
Github
Example
image_labeling.apk
learning_barcode_scanning ^0.0.3 Pub.dev
Github
Example
barcode_scanning.apk
learning_object_detection ^0.0.2 Pub.dev
Github
Example
object_detection.apk
learning_digital_ink_recognition ^0.0.2 Pub.dev
Github
Example
digital_ink_recognition.apk

NLP Version Links Example
learning_language ^0.0.4 Pub.dev
Github
Example
language.apk
learning_translate ^0.0.4 Pub.dev
Github
Example
translate.apk
learning_entity_extraction ^0.0.3 Pub.dev
Github
Example
entity_extraction.apk
learning_smart_reply ^0.0.3 Pub.dev
Github
Example

Helper Version Links
learning_input_image ^0.0.6+2 Pub.dev
Github

Example Project

You can learn more from example project here.

learning's People

Contributors

honjow avatar salkuadrat avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar

learning's Issues

Can the model download address in learning_digital_ink_recognition come from other locations, such as our own server?

Can the model download address in learning_digital_ink_recognition come from other locations, such as our own server?

Data download scheduled for file: https://dl.google.com/handwriting/models/qrnn.en.reco_20200318.fst_20191208.recospec.zip
Data download scheduled for file: https://dl.google.com/handwriting/models/en.20191208.compact.fst.zip
Starting download: https://dl.google.com/handwriting/models/en.20191208.compact.fst.zip

https://dl.google.com Replace with own domain name

Photo orientation

Can i use learning_face_detection package to fix the selfie photo orientation?

License and pricing

Since this package uses com.google.mlkit.vision, what about license and pricing?

I want to put a condition when it finds a specific value and sends it to another page, but it does not stop sending values ​​to the page

I want to put a condition when it finds a specific value and sends it to another page, but it does not stop sending values ​​to the page

` Future<void> _startRecognition(InputImage image) async {
   TextRecognitionState state = Provider.of(context, listen: false);

   if (state.isNotProcessing) {
     state.startProcessing();
     state.image = image;
     state.data = await _textRecognition?.process(image);
     state.stopProcessing();
   }
   ///=======
   if(state.text.length>=12){

     Navigator.push(
       context,
       MaterialPageRoute(builder: (context) => fff(state.text)),
     );

     state.stopProcessing();
     state.removeListener(() { state;});
   }`

APP CRASH WHEN RUN ON ANDROID 13 DEVICE

my app use this package worked with anydevice . But when release app and run on device android 13 app crashed. please tell me if somebody know solutions. thanks

iOS build failure: No such module 'MLKit'

Hey @salkuadrat, thanks for the great work on this plugin - it's really helpful. I set up learning_translate and learning_language and they work perfectly on android. However, the iOS build is still failing. Not sure if the problem is related to this plugin or if it's my setup.

This is the error message when running flutter build ios. Same error happens using Xcode (and yes, I made sure to open xcworkspace and not xcodeproj as suggested here):

Swift Compiler Error (Xcode): No such module 'MLKit'
/Users/x/.pub-cache/hosted/pub.dartlang.org/learning_translate-0.0.4/ios/Classes/SwiftLearningTranslatePlugin.swift:3:7

In Xcode, it looks like this module doesn't exist either, however, there's one called "GoogleMLKit" (in case this has something to do with it (?)):

I'd greatly appreciate any help on this.

DigitalInkRecognition returns null scores

Hi,

First off thanks for the libraries, they're pretty awesome!

I was playing around with the digital ink recognition part of the example app and noticed that the scores of every RecognitionCandidate returned was null.

Reproduction steps

  1. Add the following printout statement on line 80 of digital_ink_recognition.dart:
for (final candidate in state.data) {
  debugPrint(
      '$LearningDigitalInkRecognition: _startRecognition : text=${candidate.text} : score=${candidate.score}');
}
  1. Launch the example app
  2. On the main screen select "Digital Ink Recognition"
  3. Draw a "W" on the canvas
  4. Tap the "Start Recognition" button

Expected output

  • A list of RecognitionCandidate, each with member variables text (String) and score (double?) set to non-null values when appropriate

Actual output

  • A list of RecognitionCandidate which all have the variable text populated with a meaningful value but score is null
  • As the log below shows, the first candidate at least should have a score as we can see it being printed out in both tf_recognizer.cc and helper.cc

Execution Log

I/flutter ( 1994): main
I/MddModelManager( 1994): isModelDownloadedAndValid()
I/MddModelManager( 1994): isModelDownloadedAndValid()
I/native  ( 1994): tf_recognizer.cc:192 inkhash: 59ce57784a4f74a8
I/native  ( 1994): tf_recognizer.cc:219 LabeledInkCurveProcessor returned 4 timesteps for 59ce57784a4f74a8.

I/native  ( 1994): tf_recognizer.cc:293 best result: 'W'  score: 52.4192

I/native  ( 1994): tf_recognizer.cc:345  1  request 17.71%    1.3ms  overall 24.61%    0.01s  LabeledInkProcessor
I/native  ( 1994):  2  request 55.93%    4.2ms  overall 51.79%    0.02s  RunTfLiteModelRunner
I/native  ( 1994):  3  request 26.36%    2.0ms  overall 23.60%    0.01s  Decoder
I/native  ( 1994):     request           7.5ms  overall           0.04s  Total
I/native  ( 1994):

I/native  ( 1994): helper.cc:160 Recognition result: W with score: 52.4192

I/flutter ( 1994): LearningDigitalInkRecognition: _startRecognition : text=W : score=null

I/flutter ( 1994): LearningDigitalInkRecognition: _startRecognition : text=w : score=null
I/flutter ( 1994): LearningDigitalInkRecognition: _startRecognition : text=Wi : score=null
I/flutter ( 1994): LearningDigitalInkRecognition: _startRecognition : text=wi : score=null
I/flutter ( 1994): LearningDigitalInkRecognition: _startRecognition : text=W  : score=null
I/flutter ( 1994): LearningDigitalInkRecognition: _startRecognition : text=WW : score=null
I/flutter ( 1994): LearningDigitalInkRecognition: _startRecognition : text=w  : score=null
I/flutter ( 1994): LearningDigitalInkRecognition: _startRecognition : text=WN : score=null
I/flutter ( 1994): LearningDigitalInkRecognition: _startRecognition : text=WV : score=null
I/flutter ( 1994): LearningDigitalInkRecognition: _startRecognition : text=Wr : score=null

Flutter Doctor

[✓] Flutter (Channel stable, 2.5.0, on macOS 11.4 20F71 darwin-arm, locale en-US)
    • Flutter version 2.5.0 at /Users/charles/NonSystemic/Code/flutter2
    • Upstream repository https://github.com/flutter/flutter.git
    • Framework revision 4cc385b4b8 (6 days ago), 2021-09-07 23:01:49 -0700
    • Engine revision f0826da7ef
    • Dart version 2.14.0

[✓] Android toolchain - develop for Android devices (Android SDK version 30.0.3)
    • Android SDK at /Users/charles/Library/Android/sdk
    • Platform android-30, build-tools 30.0.3
    • Java binary at: /Applications/Android Studio.app/Contents/jre/Contents/Home/bin/java
    • Java version OpenJDK Runtime Environment (build 11.0.10+0-b96-7281165)
    • All Android licenses accepted.

[✓] Xcode - develop for iOS and macOS
    • Xcode at /Applications/Xcode.app/Contents/Developer
    • Xcode 12.5, Build version 12E262
    • CocoaPods version 1.10.1

[✓] Android Studio (version 2020.3)
    • Android Studio at /Applications/Android Studio.app/Contents
    • Flutter plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/9212-flutter
    • Dart plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/6351-dart
    • Java version OpenJDK Runtime Environment (build 11.0.10+0-b96-7281165)

[✓] VS Code (version 1.60.0)
    • VS Code at /Applications/Visual Studio Code.app/Contents
    • Flutter extension version 3.26.0

[✓] Connected device (1 available)
    • Pixel 3a (mobile) • 95SAY0VKZU • android-arm64 • Android 11 (API 30)

• No issues found!

text recognition example

Using latest flutter and pub versions, when running I get: The 'Pods-Runner' target has transitive dependencies that include statically linked binaries: (GoogleUtilitiesComponents)

MissingPluginException(No implementation found for method process on channel LearningSelfieSegmentation)

Hi!
Great work! On android, Selfie segmentation worked really good 😄

By the way, on ios, I got this error message when selecting image.
Hope this will help.

[VERBOSE-2:ui_dart_state.cc(186)] Unhandled Exception: MissingPluginException(No implementation found for method process on channel LearningSelfieSegmentation)
#0 MethodChannel._invokeMethod
package:flutter/…/services/platform_channel.dart:156

#1 SelfieSegmenter.process
package:learning_selfie_segmentation/src/segmenter.dart:18

#2 _SelfieSegmentationPageState._process
package:bgchanger/main.dart:108

when I use the learning_face_detection,I got the log blew,please help me.

E/Vision (31182): Error loading module com.google.android.gms.vision.face optional module true: ge: No acceptable module found. Local version is 0 and remote version is 0.
I/Vision (31182): Request download for engine face is a no-op because rate limiting
I/GRALLOC (31182): LockFlexLayout: baseFormat: 11, yStride: 320, ySize: 76800, uOffset: 76800, uStride: 320
W/DynamiteModule(31182): Local module descriptor class for com.google.android.gms.vision.face not found.
I/DynamiteModule(31182): Considering local module com.google.android.gms.vision.face:0 and remote module com.google.android.gms.vision.face:0
E/Vision (31182): Error loading module com.google.android.gms.vision.face optional module true: ge: No acceptable module found. Local version is 0 and remote version is 0.
I/Vision (31182): Request download for engine face is a no-op because rate limiting
I/flutter (31182): Waiting for the face detection module to be downloaded. Please wait.
I/GRALLOC (31182): LockFlexLayout: baseFormat: 11, yStride: 320, ySize: 76800, uOffset: 76800, uStride: 320
I/DynamiteModule(31182): Considering local module com.google.android.gms.vision.dynamite:0 and remote module com.google.android.gms.vision.dynamite:2703
I/DynamiteModule(31182): Selected remote version of com.google.android.gms.vision.dynamite, version >= 2703
V/DynamiteModule(31182): Dynamite loader version >= 2, using loadModule2NoCrashUtils
I/GRALLOC (31182): LockFlexLayout: baseFormat: 11, yStride: 320, ySize: 76800, uOffset: 76800, uStride: 320
W/DynamiteModule(31182): Local module descriptor class for com.google.android.gms.vision.face not found.
I/DynamiteModule(31182): Considering local module com.google.android.gms.vision.face:0 and remote module com.google.android.gms.vision.face:0
E/Vision (31182): Error loading module com.google.android.gms.vision.face optional module true: ge: No acceptable module found. Local version is 0 and remote version is 0.
I/Vision (31182): Request download for engine face is a no-op because rate limiting
W/DynamiteModule(31182): Local module descriptor class for com.google.android.gms.vision.face not found.
I/DynamiteModule(31182): Considering local module com.google.android.gms.vision.face:0 and remote module com.google.android.gms.vision.face:0
E/Vision (31182): Error loading module com.google.android.gms.vision.face optional module true: ge: No acceptable module found. Local version is 0 and remote version is 0.
I/Vision (31182): Request download for engine face is a no-op because rate limiting
I/flutter (31182): Waiting for the face detection module to be downloaded. Please wait.
I/GRALLOC (31182): LockFlexLayout: baseFormat: 11, yStride: 320, ySize: 76800, uOffset: 76800, uStride: 320
I/DynamiteModule(31182): Considering local module com.google.android.gms.vision.dynamite:0 and remote module com.google.android.gms.vision.dynamite:2703
I/DynamiteModule(31182): Selected remote version of com.google.android.gms.vision.dynamite, version >= 2703
V/DynamiteModule(31182): Dynamite loader version >= 2, using loadModule2NoCrashUtils
I/GRALLOC (31182): LockFlexLayout: baseFormat: 11, yStride: 320, ySize: 76800, uOffset: 76800, uStride: 320

face detection and your apk doesn't recognizes faces

Hello,
thanks for the lib and the compiled apk.
Unfortunately on my Samsung SM-T500 (Galaxy Tab a7) the image recongnition doesn't work using the live camera preview.
It works using camera from gallery.
I'm using learning_face_detection: ^0.0.3 and camera: ^0.9.4+5
Also I tried to add "implementation 'com.google.mlkit:face-detection:16.1.3'" in build.gradle with no success.

To be honest this seems related to this device only. On my Xiaomi phone it works. What is very strange is that on this tablet every mlkit package I tried on pub.dev doesn't work with this tablet. Could it be related to the camera plugin then? Thanks

Text Recognition doesn't work on iOS

I have this problem only on iOS devices when I run the app:

" Runner[2241:317680] The selected imageFormatGroup is not supported by iOS. Defaulting to brga8888 "

Can someone help me?

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.