Upgrade to Pro — share decks privately, control downloads, hide ads and more …

What's new in Vision

What's new in Vision

集まれSwift好き!Swift愛好会スピンオフ WWDC22セッション要約会 @オンライン
https://love-swift.connpass.com/event/247317/

の資料

53e2d354b3299d64a54af680865516d5?s=128

Sato Takeshi

June 24, 2022
Tweet

More Decks by Sato Takeshi

Other Decks in Technology

Transcript

  1. What’s new in Vision 2022 年 6 月 24 日

    集まれ Swift 好き! Swift 愛好会スピンオフ WWDC22 セッション要約会 @ オンライン
  2. Who am I • Name • 佐藤タケシ ( さとうたけし )

    • Company • Merpay, Inc.(2019/01 ~) • Role • Software Engineer (iOS) • Account • Twitter: @hatakenokakashi • Facebook: 佐藤剛士 • GitHub: SatoTakeshiX
  3. 近著 商業誌 Amazon で販売中 同人誌 BOOTH で 販売中 商業誌 Amazon

    で販売中
  4. Vision/VisionKit Frameworkの新機能

  5. VisionとVisionKitの違い Vision Framework • 画像分析ができる Framework • 画像データを渡し、画像を分析する • 分析する種類によってクラスが分か

    れている • https://developer.apple.com/jp/mac hine-learning/api/ VisionKit Framework • Live Text • カメラを通してテキスト分析 • ドキュメントスキャン ◦ VNDocumentCameraViewCo ntroller ◦ iOS 13 ◦ Note アプリのようにドキュメント スキャンする
  6. Vision VisionKit

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

    • Quick Look Preview のサポート
  8. https://developer.apple.com/videos/play/wwdc2022/10024/

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

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

    の supportedRecognitionLanguages メソッドで言語が 取得できる
  11. 顔検出のRevision 1のコード、モデルを削除 • Vision はアルゴリズムのバージョンを Revision で指定できる • 顔の特徴点を検出する VNDetectFaceRectanglesRequest

    ◦ VNDetectFaceLandmarksRequestRevision1 が非推奨 • 顔の矩形を検出する VNDetectFaceLandmarksRequest ◦ VNDetectFaceRectanglesRequestRevision1 が非推奨 • Revision1 を指定している場合 Revision2 として扱われる
  12. Revision 1を指定してRevision 2になる影響 • Revision 1 の挙動は変わらない ◦ いきなり上下ひっくり返った顔結果が来ることはない •

    実行時間は変わらず • 正確さが向上 • コードの修正は不要
  13. Quick Look Previewのサポート • デバッカーに Vision の検出結果が表示されるようになった • 分析対象の画像に検出結果を表示 •

    Xcode Playground でも結果を表示
  14. VisionKitの新機能

  15. VisionKitの新機能 • DataScannerViewController が iOS 16 で登場 • カメラ画像からテキストやバーコード、 QR

    コードを読み取る
  16. 今までのカメラ映像からテキスト読み取り

  17. DataScannerViewController

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

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

  20. DataScannerViewControllerの使い方 • 端末が利用できるかのチェック ◦ isSupported ▪ A12 Bionic chip 以上の端末なら

    true ▪ 2018 年以降の端末 ◦ isAvailable ▪ 設定アプリでカメラ利用がオンになっていれば true ▪ またカメラ利用の制限がない場合
  21. DataScannerViewControllerの使い方 • info.plist に Privacy usage description を追加 ◦ カメラ実装するときと同じ

  22. DataScannerViewControllerの初期化

  23. 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
  24. None
  25. DataScannerViewControllerDelegate アイテムをタップしたら呼ばれる

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

  27. DataScannerViewController 画像を取得

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

  29. Live Text

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

  31. 広がるアイディア 日本語テキスト認識 • 家計簿アプリでレシート読み込み • メモアプリで印刷物の読み込み • ハッシュタグキャンペーン ◦ SNS

    に投稿された住所にいってドーナツを配るキャンペーン QR コード読み込み • 配送センターアプリ • ライブイベントの会場受付アプリ
  32. まとめ

  33. まとめ • Vision がアップデート ◦ テキスト認識に日本と韓国が追加 ◦ バーコード検出・オプティカルフロー検出の精度が向上 ◦ 顔検出の

    Revision 1 のコード、モデルを削除 ◦ Quick Look Preview のサポート • DataScannerViewController でビデオ画像によるテキストスキャンが簡単に 実装可能になる • Live Text で静止画もテキストスキャンの実装簡単になる
  34. 参考資料 • 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