Dictation 採点アプリ開発メモ vol.09
キカガクさんの講義の一環で作る自作アプリに関するメモです。
2020.10.17(土)PM
ここまでの考察まとめ(画像付きは前回を参照)
AIモデル
・YOLOv2 (CreateML Object Detection)
・背景 白色 / 赤文字 & 太文字 / ○×ラベリング
画像枚数 175枚(○ 610、× 610)
・Iterations 2000 / Batch Size Auto
推論対象の画像は白色/黄色グリッドどちらでも大丈夫
推論対象は文字に被っていても良い
しかし、文字に被っていると認識率が甘い可能性がある
画像サイズによってIoU Threshold を変更する必要がある
・画像サイズ大(40 words くらい、542 x 571 pixel)IoU Threshold ??
・画像サイズ小(20 words くらい、270 x 505 pixel)IoU Threshold 0.0
×の時に赤文字で訂正するとBounding Box が大きくなる
・現状、○×で対応する必要がありそう
・ゆくゆくは× → 訂正もできると良い
赤文字・太文字以外は認識しない
アプリ開発アクションアイテム
AIモデルは一旦上記で対応する。画像サイズ小さい物だけ対応
・OK/NG Bounding Box の色を変更する
・OK / NG の数をカウントして、OK / (OK + NG) = 正解率 を出す
・その後、OK / NG の認識率をあげる方法を見つける
→ 画像サイズごとにIoU を変更する
OK/NG Bounding Box の色を変更する
こちらは実装完了
iPad への適用
そういえばiPad で適用していなかったなと思ってiPad で試したらエラーが...
Exception NSException * "Your application has presented a UIAlertController (<UIAlertController: 0x102019600>) of style UIAlertControllerStyleActionSheet from ObjectDetectionEx.ViewController (<ObjectDetectionEx.ViewController: 0x100d08120>).
このサイト参考にして解決
この3行を入れるとiPad でも利用可能になった。
actionSheet.popoverPresentationController?.sourceView = self.view
let screenSize = UIScreen.main.bounds
actionSheet.popoverPresentationController?.sourceRect = CGRect(x: screenSize.size.width/2, y: screenSize.size.height, width: 0, height: 0)
正解数 / 不正解数のカウント
どこでカウントしているのかは分かった
print("Number of Correct \(self.numOfCorrect)")
print("Number of Incorrect \(self.numOfIncorrect)")
正解数 / 不正解数の表示... の前に
よく分からないエラーで躓く。調べて見ると
this class is not key value coding-compliant for the key
上記エラーはStoryboardの接続が芳しくないときに発生するエラーです。
とのこと。うっかり余計なコネクションを作っていたらしい。
正解数 / 不正解数の表示
なんかうまくいかない...
ここで時間切れ
この記事が気に入ったらサポートをしてみませんか?