Download - Cloud Vsion APIによるGUIの検証自動化
![Page 1: Cloud Vsion APIによるGUIの検証自動化](https://reader037.vdocuments.mx/reader037/viewer/2022103010/5870641a1a28ab48378b48e7/html5/thumbnails/1.jpg)
![Page 2: Cloud Vsion APIによるGUIの検証自動化](https://reader037.vdocuments.mx/reader037/viewer/2022103010/5870641a1a28ab48378b48e7/html5/thumbnails/2.jpg)
Masashi Terui @ marcy_teruiI’m a Developer and Cloud Architect.
I’m a Remote-Multi-Worker at Serverworks Co., Ltd. / Section-9 / Freelance I’m a member of GCPUG, JAWS-UG and MyNA.
I’m around 30 years old. I’m a father of my son and my daughter. https://willy.works/
2
![Page 3: Cloud Vsion APIによるGUIの検証自動化](https://reader037.vdocuments.mx/reader037/viewer/2022103010/5870641a1a28ab48378b48e7/html5/thumbnails/3.jpg)
3
![Page 4: Cloud Vsion APIによるGUIの検証自動化](https://reader037.vdocuments.mx/reader037/viewer/2022103010/5870641a1a28ab48378b48e7/html5/thumbnails/4.jpg)
4
![Page 5: Cloud Vsion APIによるGUIの検証自動化](https://reader037.vdocuments.mx/reader037/viewer/2022103010/5870641a1a28ab48378b48e7/html5/thumbnails/5.jpg)
Vision API is 何
5
画像検索やGoogle Photos等で培われたGoogleの画像認識技術を
Web APIから呼び出して利用できるサービス
強化学習はGoogleによって随時行われ、勝手に精度が上がる
安い・1000検知/月まで無料
![Page 6: Cloud Vsion APIによるGUIの検証自動化](https://reader037.vdocuments.mx/reader037/viewer/2022103010/5870641a1a28ab48378b48e7/html5/thumbnails/6.jpg)
Vision API 主な機能
6
物体のカテゴライズ
有害コンテンツ判定
著名なロゴやランドマークの検知
顔検知(感情や装飾品など)
OCR ← 今回使うのはコレ
![Page 7: Cloud Vsion APIによるGUIの検証自動化](https://reader037.vdocuments.mx/reader037/viewer/2022103010/5870641a1a28ab48378b48e7/html5/thumbnails/7.jpg)
7
![Page 8: Cloud Vsion APIによるGUIの検証自動化](https://reader037.vdocuments.mx/reader037/viewer/2022103010/5870641a1a28ab48378b48e7/html5/thumbnails/8.jpg)
目的
8
Web(HTML)ではないGUIを自動操作して定型的な作業を省略したい
Web(HTML)ならSeleniumでおk
確認作業も省略したいから自動操作の結果を検証したい
「○○にxxxxというメッセージ・表示が出ること」的な確認
OCR機能が必要
![Page 9: Cloud Vsion APIによるGUIの検証自動化](https://reader037.vdocuments.mx/reader037/viewer/2022103010/5870641a1a28ab48378b48e7/html5/thumbnails/9.jpg)
理由
9
OpenCV(後述)でもOCRはできるが、デフォルトだと精度が悪く
チューニングの情報も少なくて苦労しそうだった
TensorFlowは情報も多くなってきたが、学習素材を用意したり
細かいチューニングも踏まえると費用対効果的に厳しい
時間削減が目的のアプリケーションで製造に時間を取られたくない
![Page 10: Cloud Vsion APIによるGUIの検証自動化](https://reader037.vdocuments.mx/reader037/viewer/2022103010/5870641a1a28ab48378b48e7/html5/thumbnails/10.jpg)
10
![Page 11: Cloud Vsion APIによるGUIの検証自動化](https://reader037.vdocuments.mx/reader037/viewer/2022103010/5870641a1a28ab48378b48e7/html5/thumbnails/11.jpg)
Sikuli
11
OpenCVと各種ドライバをゴニョゴニョしてGUI操作を行う
JVM上で動き、マルチプラットフォーム対応
Python(Jython), Ruby(JRuby)で自動化スクリプトが書ける
ドライバの依存とかでクラウドで動かせないのが難点。。。
![Page 12: Cloud Vsion APIによるGUIの検証自動化](https://reader037.vdocuments.mx/reader037/viewer/2022103010/5870641a1a28ab48378b48e7/html5/thumbnails/12.jpg)
12
![Page 13: Cloud Vsion APIによるGUIの検証自動化](https://reader037.vdocuments.mx/reader037/viewer/2022103010/5870641a1a28ab48378b48e7/html5/thumbnails/13.jpg)
13
![Page 14: Cloud Vsion APIによるGUIの検証自動化](https://reader037.vdocuments.mx/reader037/viewer/2022103010/5870641a1a28ab48378b48e7/html5/thumbnails/14.jpg)
14
![Page 15: Cloud Vsion APIによるGUIの検証自動化](https://reader037.vdocuments.mx/reader037/viewer/2022103010/5870641a1a28ab48378b48e7/html5/thumbnails/15.jpg)
15
![Page 16: Cloud Vsion APIによるGUIの検証自動化](https://reader037.vdocuments.mx/reader037/viewer/2022103010/5870641a1a28ab48378b48e7/html5/thumbnails/16.jpg)
精度
16
英語の精度は相当高い(今回は英語なのでバッチリだった)
記号が上手く認識できなかったり前後が抜けたりはあった
日本語もちょっと試した感じかなりいけそう
システム画面だったので手書きだとどうなるかは未検証
![Page 17: Cloud Vsion APIによるGUIの検証自動化](https://reader037.vdocuments.mx/reader037/viewer/2022103010/5870641a1a28ab48378b48e7/html5/thumbnails/17.jpg)
使いやすさ
17
APIは非常に平易で扱いやすい
google-api-clientがJythonで動くか不安だったけど、
普通にurllib2(Python標準ライブラリ)で簡単に実装できた
APIキーを含めたリクエストにBase64化した画像を添えて投げつける
またはGCSのパスを指定するだけ
![Page 18: Cloud Vsion APIによるGUIの検証自動化](https://reader037.vdocuments.mx/reader037/viewer/2022103010/5870641a1a28ab48378b48e7/html5/thumbnails/18.jpg)
18
![Page 19: Cloud Vsion APIによるGUIの検証自動化](https://reader037.vdocuments.mx/reader037/viewer/2022103010/5870641a1a28ab48378b48e7/html5/thumbnails/19.jpg)
まとめ
19
機械学習自体を自分でやらなくても、用途が合えば応用はできる
開発速度を上げるためにまずは巨人の肩に乗るのもアリ 身近な所に使える場所はいっぱいあるかも?
他にも色々あるよ
Cloud Speech API(音声認識) Natural Language API(テキスト分析)
Cloud Translate API(翻訳)
![Page 20: Cloud Vsion APIによるGUIの検証自動化](https://reader037.vdocuments.mx/reader037/viewer/2022103010/5870641a1a28ab48378b48e7/html5/thumbnails/20.jpg)