目的
健康診断の数値が悪くなってきたので、ダイエットしないとな…と思っていた昨今、とりあえずデータ収集して分析してみるかと思い立ち、体重やら摂取カロリーのデータ収集をやろうと思い立った。
データ収集の検討
体重はBluetooth接続してスマホアプリに記録するものを持っていたが、アプリを立ち上げるのが面倒で使わなくなっていた。
Wifi経由のものならアプリを開かずとも済むとのことなので買いなおした。
https://amzn.asia/d/2hCMy8m
カロリー計測は、あすけんが有名だがデータ書き出しは出来ないらしい。
カロミルなら書き出せはしないが栄養サマリーとして画像を保存することはできた。
https://www.calomeal.com/about-calomeal/
画像が保存できるなら、それをOCRで読み取ってデータ化すればよい。
何でOCRするのか
結論から言うとPowerAutomate Desktopを利用して、WindowsOCRを使えば無料でそれなりの読み取りが可能になった。
Tesseract
PythonでOCRをするならTesseractが有名なようなので、まず最初にこちらを参考にさせていただきやってみた。
https://qiita.com/ryome/items/16fc42854fe93de78a23
エンジンはBest版を利用した。
https://github.com/tesseract-ocr/tessdata_best
3( 金 ) 栄養 サマ リー カロ ミル
1535 /1eotkcal
-
た ん ば ぱく 質 脂質
104.0 /72.og 46.1 /48.0g
還 上 |- 人
炭水化物
糖 質
188.9 /220.1g 173.7 /202.1g
和香
食物 繊維 塩分
15.2718.og 10.82 /e.sog
| に 上 上 上 上 上
ウワー微妙。
他の日もやってみたが変わらず。
WindowsOCR
PowerAutomate DesktopにあるOCRフローのWindowsOCRエンジンでやってみた。
画像は先ほどと同じものを使用。
1 / 3 ( 金 ) 栄 養 サ マ リ ー 日 ノ 食 事 管 理 ア プ リ
カ ロ ミ ル
カ ロ リ -
1535 / 1601kc 引
た ん ば く 質 脂 質
104. O / 72. og 46.1 / 48. og
炭 水 化 物 糖 質
188.9 / 220. lg 173.7 / 202. lg
食 物 繊 維 塩 分
15.2 / 18. og 10.82 / 6.50g
Tesseractより全然いい…。
ということで、PowerAutomate Desktopを利用してOCRすることにした。
ちなみにカロミルから保存された画像はwebpになっていたのだが、PowerAutomate DesktopのOCRはwebpを扱えなかったので事前にPythonのPillowでjpgに変換した。
PowerAutomateでwebpからjpgにする方法が分からなかったのでPythonでやったが、もしPowerAutomateで出来る方法が分かったら変えたい。
まとめ
ほかにいいOCRあったら教えてください。
やっぱり有料のやつは精度がもっといいのかなあ。