Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
What an ML-ful World! MLKit for Android dev.
Search
Britt Barak
October 12, 2018
Programming
160
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
What an ML-ful World! MLKit for Android dev.
Britt Barak
October 12, 2018
More Decks by Britt Barak
See All by Britt Barak
[Vonage] Introducing Conversations
brittbarak
1
150
Kids, Play Nice! Kotlin-Java Interop In Mind
brittbarak
2
470
Sharing is Caring- Getting Started with Kotlin Multiplatform
brittbarak
2
2.2k
Between JOMO and FOMO: You are reshaping communication.
brittbarak
2
1.3k
Build Apps For The Ones You Love
brittbarak
1
150
Make your app dance with MotionLayout
brittbarak
8
1.5k
Who's afraid of ML? V2 : First steps with MlKit
brittbarak
1
490
Oh, the places you'll go! Cracking Navigation on Android
brittbarak
0
520
The organic evolution - how and why we created peer mentorship program
brittbarak
0
76
Other Decks in Programming
See All in Programming
Java × distroless で 軽量なコンテナイメージを / Java on Distroless
contour_gara
0
550
[2026年度第1回ORセミナー] 計画最適化ベンチャーと競技プログラミング人材
terryu16
0
270
Developing with AI Agents — Codex, Claude Code & Cowork Practical Guide
x5gtrn
PRO
0
1.3k
Webフレームワークの ベンチマークについて
yusukebe
0
170
技術的負債解消で開発者の未来を開く- AIの力でコード刷新
kmd2kmd
0
110
Contextとはなにか
chiroruxx
1
330
AIとASP.NET Coreで雑Webアプリを作った話
mayuki
0
660
代数的データ型って何が嬉しいの? #frontend_phpcon_do
kajitack
8
3.7k
Spec Driven Development | AI Summit Lisbon
danielsogl
PRO
0
200
気づいたらRubyで100作品 ー クリエイティブコーディングが生活の一部になるまで / 100 Ruby Sketches Later: How Creative Coding Became Part of My Life
chobishiba
3
590
Make SRE Operations Easier with Azure SRE Agent
kkamegawa
0
6.9k
そのテスト、説明できますか?~LWテスト戦略FW~のご紹介
nakahara
0
150
Featured
See All Featured
The Invisible Side of Design
smashingmag
302
52k
Visual Storytelling: How to be a Superhuman Communicator
reverentgeek
2
560
The Illustrated Children's Guide to Kubernetes
chrisshort
51
52k
Why You Should Never Use an ORM
jnunemaker
PRO
61
9.9k
How to Align SEO within the Product Triangle To Get Buy-In & Support - #RIMC
aleyda
2
1.5k
Future Trends and Review - Lecture 12 - Web Technologies (1019888BNR)
signer
PRO
0
3.6k
The Curious Case for Waylosing
cassininazir
1
390
Documentation Writing (for coders)
carmenintech
77
5.4k
What does AI have to do with Human Rights?
axbom
PRO
1
2.2k
Leveraging LLMs for student feedback in introductory data science courses - posit::conf(2025)
minecr
1
290
Leadership Guide Workshop - DevTernity 2021
reverentgeek
1
310
Amusing Abliteration
ianozsvald
1
210
Transcript
What an ML-ful world Britt Barak
Once upon a time @BrittBarak
beta @BrittBarak
ML Capability ?! @BrittBarak
Who is afraid of Machine Learning? & First Steps With
ML-Kit @BrittBarak
Britt Barak Developer Experience, Nexmo Google Developer Expert Britt Barak
@brittBarak
None
@BrittBarak
= @BrittBarak
§ What’s the difference? @BrittBarak
…and classify? @BrittBarak
@BrittBarak
This is a strawberry @BrittBarak
This is a strawberry Red Seeds pattern Narrow top leaves
@BrittBarak Pointy at the bottom Round at the top
Strawberry Not Not Not Strawberry Strawberry Not Not Not @BrittBarak
~*~ images ~*~ @BrittBarak
@BrittBarak Vision library
Text Recognition @BrittBarak
Face Detection @BrittBarak
Barcode Scanning @BrittBarak
Image Labelling @BrittBarak
Landmark Recognition @BrittBarak
Custom Models @BrittBarak
Example @BrittBarak
@BrittBarak
@BrittBarak
Detector detector .execute(image) Result: @BrittBarak “Ben & Jerry’s pistachio ice
cream”
1. Setup Detector @BrittBarak
Local or cloud? @BrittBarak
@BrittBarak
Local •Realtime •Offline support •Security / Privacy •Bandwith •… @BrittBarak
Cloud •More accuracy & features •But more latency •Pricing @BrittBarak
1. Setup Detector @BrittBarak
Text Detector textDetector = FirebaseVision.getInstance() @BrittBarak
Text Detector textDetector = FirebaseVision.getInstance() .onDeviceTextRecognizer @BrittBarak
Text Detector textDetector = FirebaseVision.getInstance() .cloudTextRecognizer @BrittBarak
2. Process input @BrittBarak
FirebaseVisionImage •Bitmap •image Uri •Media Image •byteArray •byteBuffer @BrittBarak
image = FirebaseVisionImage.fromBitmap(bitmap) @BrittBarak Text Detector
3. Execute the model @BrittBarak
Text Detector textDetector.processImage(image) @BrittBarak
Text Detector textDetector.processImage(image) .addOnSuccessListener { } @BrittBarak
Text Detector textDetector.processImage(image) .addOnSuccessListener { firebaseVisionTexts -> processOutput(fbVisionTexts) } @BrittBarak
4. Process output @BrittBarak
firebaseVisionTexts.text @BrittBarak
someTextView.text = firebaseVisionTexts.text @BrittBarak UI
Result @BrittBarak
Result @BrittBarak
(another) Example : Labelling @BrittBarak
Detector detector .execute(image) Result: @BrittBarak ice cream pint
Vegetables Deserts Vegetables
1. Setup Detector @BrittBarak
Image Classifier imageDetector = FirebaseVision.getInstance() @BrittBarak
Image Classifier imageDetector = FirebaseVision.getInstance() .visionLabelDetector @BrittBarak
Image Classifier imageDetector = FirebaseVision.getInstance .visionCloudLabelDetector @BrittBarak
2. Process input @BrittBarak
image = FirebaseVisionImage.fromBitmap(bitmap) @BrittBarak Image Classifier
3. Execute the model @BrittBarak
Image Classifier imageDetector.detectInImage(image) @BrittBarak
Image Classifier imageDetector.detectInImage(image) .addOnSuccessListener{ } @BrittBarak
Image Classifier imageDetector.detectInImage(image) .addOnSuccessListener{ fBLabels -> processOutput(fBLabels) } @BrittBarak
4. Process output @BrittBarak
fbLabel.label fbLabel.confidence fbLabel.entityId @BrittBarak
UI for (fbLabel in labels) { s = "${fbLabel.label} :
${fbLabel.confidence}" } @BrittBarak
Result
Result
It is an ML-ful world Enjoy!
Thank you! Keep in touch!