Slide 1

Slide 1 text

What’s new in Vision 2022 年 6 月 24 日 集まれ Swift 好き! Swift 愛好会スピンオフ WWDC22 セッション要約会 @ オンライン

Slide 2

Slide 2 text

Who am I ● Name ● 佐藤タケシ ( さとうたけし ) ● Company ● Merpay, Inc.(2019/01 ~) ● Role ● Software Engineer (iOS) ● Account ● Twitter: @hatakenokakashi ● Facebook: 佐藤剛士 ● GitHub: SatoTakeshiX

Slide 3

Slide 3 text

近著 商業誌 Amazon で販売中 同人誌 BOOTH で 販売中 商業誌 Amazon で販売中

Slide 4

Slide 4 text

Vision/VisionKit Frameworkの新機能

Slide 5

Slide 5 text

VisionとVisionKitの違い Vision Framework ● 画像分析ができる Framework ● 画像データを渡し、画像を分析する ● 分析する種類によってクラスが分か れている ● https://developer.apple.com/jp/mac hine-learning/api/ VisionKit Framework ● Live Text ● カメラを通してテキスト分析 ● ドキュメントスキャン ○ VNDocumentCameraViewCo ntroller ○ iOS 13 ○ Note アプリのようにドキュメント スキャンする

Slide 6

Slide 6 text

Vision VisionKit

Slide 7

Slide 7 text

Visionの新機能 ● テキスト認識の言語に日本語と韓国語が追加! ● テキスト認識・バーコード検出・オプティカルフロー検出の精度が向上 ● 顔検出の Revision 1 のコード、モデルを削除 ● Quick Look Preview のサポート

Slide 8

Slide 8 text

https://developer.apple.com/videos/play/wwdc2022/10024/

Slide 9

Slide 9 text

https://developer.apple.com/videos/play/wwdc2022/10024/

Slide 10

Slide 10 text

テキスト認識の言語に日本語と韓国語が追加! ● iOS 16 で使える言語 ○ 英語、フランス語、イタリア語、ドイツ語、スペイン語、ポルトガル語、中国語(繁 体字、簡体字)、日本語、韓国語が利用できる ● VNRecognizeTextRequest の supportedRecognitionLanguages メソッドで言語が 取得できる

Slide 11

Slide 11 text

顔検出のRevision 1のコード、モデルを削除 ● Vision はアルゴリズムのバージョンを Revision で指定できる ● 顔の特徴点を検出する VNDetectFaceRectanglesRequest ○ VNDetectFaceLandmarksRequestRevision1 が非推奨 ● 顔の矩形を検出する VNDetectFaceLandmarksRequest ○ VNDetectFaceRectanglesRequestRevision1 が非推奨 ● Revision1 を指定している場合 Revision2 として扱われる

Slide 12

Slide 12 text

Revision 1を指定してRevision 2になる影響 ● Revision 1 の挙動は変わらない ○ いきなり上下ひっくり返った顔結果が来ることはない ● 実行時間は変わらず ● 正確さが向上 ● コードの修正は不要

Slide 13

Slide 13 text

Quick Look Previewのサポート ● デバッカーに Vision の検出結果が表示されるようになった ● 分析対象の画像に検出結果を表示 ● Xcode Playground でも結果を表示

Slide 14

Slide 14 text

VisionKitの新機能

Slide 15

Slide 15 text

VisionKitの新機能 ● DataScannerViewController が iOS 16 で登場 ● カメラ画像からテキストやバーコード、 QR コードを読み取る

Slide 16

Slide 16 text

今までのカメラ映像からテキスト読み取り

Slide 17

Slide 17 text

DataScannerViewController

Slide 18

Slide 18 text

DataScannerViewControllerの機能 ● ライブカメラプレビュー ● 案内 ● 項目のハイライト

Slide 19

Slide 19 text

DataScannerViewControllerの機能 ● タップで焦点合わせ ● ピンチアウト、ズームイン

Slide 20

Slide 20 text

DataScannerViewControllerの使い方 ● 端末が利用できるかのチェック ○ isSupported ■ A12 Bionic chip 以上の端末なら true ■ 2018 年以降の端末 ○ isAvailable ■ 設定アプリでカメラ利用がオンになっていれば true ■ またカメラ利用の制限がない場合

Slide 21

Slide 21 text

DataScannerViewControllerの使い方 ● info.plist に Privacy usage description を追加 ○ カメラ実装するときと同じ

Slide 22

Slide 22 text

DataScannerViewControllerの初期化

Slide 23

Slide 23 text

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

Slide 24

Slide 24 text

No content

Slide 25

Slide 25 text

DataScannerViewControllerDelegate アイテムをタップしたら呼ばれる

Slide 26

Slide 26 text

DataScannerViewControllerDelegate アイテムが追加されたら呼ばれる

Slide 27

Slide 27 text

DataScannerViewController 画像を取得

Slide 28

Slide 28 text

DataScannerViewController for await in でデリゲートなしで結果取得

Slide 29

Slide 29 text

Live Text

Slide 30

Slide 30 text

Live Text ● 静止画像も開発者がテキ ストを読み込める実装で きるようになる https://developer.apple.com/d ocumentation/visionkit/enabl ing_live_text_interactions_wi th_images

Slide 31

Slide 31 text

広がるアイディア 日本語テキスト認識 ● 家計簿アプリでレシート読み込み ● メモアプリで印刷物の読み込み ● ハッシュタグキャンペーン ○ SNS に投稿された住所にいってドーナツを配るキャンペーン QR コード読み込み ● 配送センターアプリ ● ライブイベントの会場受付アプリ

Slide 32

Slide 32 text

まとめ

Slide 33

Slide 33 text

まとめ ● Vision がアップデート ○ テキスト認識に日本と韓国が追加 ○ バーコード検出・オプティカルフロー検出の精度が向上 ○ 顔検出の Revision 1 のコード、モデルを削除 ○ Quick Look Preview のサポート ● DataScannerViewController でビデオ画像によるテキストスキャンが簡単に 実装可能になる ● Live Text で静止画もテキストスキャンの実装簡単になる

Slide 34

Slide 34 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