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's new in Vision
Search
Sato Takeshi
June 24, 2022
Technology
0
1.8k
What's new in Vision
集まれSwift好き!Swift愛好会スピンオフ WWDC22セッション要約会 @オンライン
https://love-swift.connpass.com/event/247317/
の資料
Sato Takeshi
June 24, 2022
Tweet
Share
More Decks by Sato Takeshi
See All by Sato Takeshi
まさかのバグ!SwiftUIプレビューでハマった国際化対応の落とし穴
satotakeshi
0
330
Swift愛好会 の 思い出
satotakeshi
0
98
Xcode 15, Swift 5.9で変わる開発体験
satotakeshi
3
3k
Meet passkeys
satotakeshi
2
370
Swift Concurrency入門
satotakeshi
11
5.3k
複数端末のつらさを乗り越えてiOS UITestを実行
satotakeshi
1
430
Xcodegenを個人アプリに導入
satotakeshi
3
810
SwiftUIで作る開閉式メニュー
satotakeshi
2
3.1k
swift-snapshot-testingでVisual Testingを効率化
satotakeshi
0
1.3k
Other Decks in Technology
See All in Technology
初めてAWSを使うときのセキュリティ覚書〜初心者支部編〜
cmusudakeisuke
1
280
Generative AI Japan 第一回生成AI実践研究会「AI駆動開発の現在地──ブレイクスルーの鍵を握るのはデータ領域」
shisyu_gaku
0
330
LLMを搭載したプロダクトの品質保証の模索と学び
qa
0
1.1k
20250913_JAWS_sysad_kobe
takuyay0ne
2
250
株式会社ログラス - 会社説明資料【エンジニア】/ Loglass Engineer
loglass2019
4
65k
組織を巻き込む大規模プラットフォーム移行戦略 〜50+サービスのマルチリージョン・マルチプロダクト化で学んだステークホルダー協働の実践〜 / Platform migration strategy engaging all stakeholders
toshi0607
2
140
今日から始めるAWSセキュリティ対策 3ステップでわかる実践ガイド
yoshidatakeshi1994
0
120
「Linux」という言葉が指すもの
sat
PRO
4
140
Snowflake Intelligence × Document AIで“使いにくいデータ”を“使えるデータ”に
kevinrobot34
1
120
Oracle Base Database Service 技術詳細
oracle4engineer
PRO
10
75k
[ JAWS-UG 東京 CommunityBuilders Night #2 ]SlackとAmazon Q Developerで 運用効率化を模索する
sh_fk2
3
460
2つのフロントエンドと状態管理
mixi_engineers
PRO
3
150
Featured
See All Featured
Docker and Python
trallard
46
3.6k
Keith and Marios Guide to Fast Websites
keithpitt
411
22k
jQuery: Nuts, Bolts and Bling
dougneiner
64
7.9k
The Illustrated Children's Guide to Kubernetes
chrisshort
48
50k
Building Flexible Design Systems
yeseniaperezcruz
329
39k
Chrome DevTools: State of the Union 2024 - Debugging React & Beyond
addyosmani
7
850
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
49
3k
Facilitating Awesome Meetings
lara
55
6.5k
Building an army of robots
kneath
306
46k
GraphQLの誤解/rethinking-graphql
sonatard
72
11k
GraphQLとの向き合い方2022年版
quramy
49
14k
The Art of Programming - Codeland 2020
erikaheidi
56
13k
Transcript
What’s new in Vision 2022 年 6 月 24 日
集まれ Swift 好き! Swift 愛好会スピンオフ WWDC22 セッション要約会 @ オンライン
Who am I • Name • 佐藤タケシ ( さとうたけし )
• Company • Merpay, Inc.(2019/01 ~) • Role • Software Engineer (iOS) • Account • Twitter: @hatakenokakashi • Facebook: 佐藤剛士 • GitHub: SatoTakeshiX
近著 商業誌 Amazon で販売中 同人誌 BOOTH で 販売中 商業誌 Amazon
で販売中
Vision/VisionKit Frameworkの新機能
VisionとVisionKitの違い Vision Framework • 画像分析ができる Framework • 画像データを渡し、画像を分析する • 分析する種類によってクラスが分か
れている • https://developer.apple.com/jp/mac hine-learning/api/ VisionKit Framework • Live Text • カメラを通してテキスト分析 • ドキュメントスキャン ◦ VNDocumentCameraViewCo ntroller ◦ iOS 13 ◦ Note アプリのようにドキュメント スキャンする
Vision VisionKit
Visionの新機能 • テキスト認識の言語に日本語と韓国語が追加! • テキスト認識・バーコード検出・オプティカルフロー検出の精度が向上 • 顔検出の Revision 1 のコード、モデルを削除
• Quick Look Preview のサポート
https://developer.apple.com/videos/play/wwdc2022/10024/
https://developer.apple.com/videos/play/wwdc2022/10024/
テキスト認識の言語に日本語と韓国語が追加! • iOS 16 で使える言語 ◦ 英語、フランス語、イタリア語、ドイツ語、スペイン語、ポルトガル語、中国語(繁 体字、簡体字)、日本語、韓国語が利用できる • VNRecognizeTextRequest
の supportedRecognitionLanguages メソッドで言語が 取得できる
顔検出のRevision 1のコード、モデルを削除 • Vision はアルゴリズムのバージョンを Revision で指定できる • 顔の特徴点を検出する VNDetectFaceRectanglesRequest
◦ VNDetectFaceLandmarksRequestRevision1 が非推奨 • 顔の矩形を検出する VNDetectFaceLandmarksRequest ◦ VNDetectFaceRectanglesRequestRevision1 が非推奨 • Revision1 を指定している場合 Revision2 として扱われる
Revision 1を指定してRevision 2になる影響 • Revision 1 の挙動は変わらない ◦ いきなり上下ひっくり返った顔結果が来ることはない •
実行時間は変わらず • 正確さが向上 • コードの修正は不要
Quick Look Previewのサポート • デバッカーに Vision の検出結果が表示されるようになった • 分析対象の画像に検出結果を表示 •
Xcode Playground でも結果を表示
VisionKitの新機能
VisionKitの新機能 • DataScannerViewController が iOS 16 で登場 • カメラ画像からテキストやバーコード、 QR
コードを読み取る
今までのカメラ映像からテキスト読み取り
DataScannerViewController
DataScannerViewControllerの機能 • ライブカメラプレビュー • 案内 • 項目のハイライト
DataScannerViewControllerの機能 • タップで焦点合わせ • ピンチアウト、ズームイン
DataScannerViewControllerの使い方 • 端末が利用できるかのチェック ◦ isSupported ▪ A12 Bionic chip 以上の端末なら
true ▪ 2018 年以降の端末 ◦ isAvailable ▪ 設定アプリでカメラ利用がオンになっていれば true ▪ またカメラ利用の制限がない場合
DataScannerViewControllerの使い方 • info.plist に Privacy usage description を追加 ◦ カメラ実装するときと同じ
DataScannerViewControllerの初期化
DataScannerViewController.RecognizedDataType • スキャンするデータのタイプ • 読み取れるコード一覧 ◦ / Aztec / Codebar
/ Code 39 Checksum /Code 39 / Code 39 Full ASCII /Code 39 Full ASCII Checksum /Code 93 / Code 93i / Code 128 / Matrix EAN-8 / Data /EAN-13 / GS1 DataBar Expanded / GS1 DataBar Limited / ITF/ ITF-14 / MicroPDF417 / MicroQR / PDF417 QR / UPC-E • サポート言語 ◦ English, French, Italian, German Spanish, Portuguese, Chinese, Japanese, Korian • テキストの種類 ◦ Full Street Address / Telephone Number / mail Address / URL / Shipment Tracking Number / Flight Number / Date, Time, and Duration
None
DataScannerViewControllerDelegate アイテムをタップしたら呼ばれる
DataScannerViewControllerDelegate アイテムが追加されたら呼ばれる
DataScannerViewController 画像を取得
DataScannerViewController for await in でデリゲートなしで結果取得
Live Text
Live Text • 静止画像も開発者がテキ ストを読み込める実装で きるようになる https://developer.apple.com/d ocumentation/visionkit/enabl ing_live_text_interactions_wi th_images
広がるアイディア 日本語テキスト認識 • 家計簿アプリでレシート読み込み • メモアプリで印刷物の読み込み • ハッシュタグキャンペーン ◦ SNS
に投稿された住所にいってドーナツを配るキャンペーン QR コード読み込み • 配送センターアプリ • ライブイベントの会場受付アプリ
まとめ
まとめ • Vision がアップデート ◦ テキスト認識に日本と韓国が追加 ◦ バーコード検出・オプティカルフロー検出の精度が向上 ◦ 顔検出の
Revision 1 のコード、モデルを削除 ◦ Quick Look Preview のサポート • DataScannerViewController でビデオ画像によるテキストスキャンが簡単に 実装可能になる • Live Text で静止画もテキストスキャンの実装簡単になる
参考資料 • Add Live Text interaction to your app •
What's new in Vision • Capture machine-readable codes and text with VisionKit • Scanning data with the camera