0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

カロミルで付けた摂取カロリーをデータ収集する

Posted at

目的

健康診断の数値が悪くなってきたので、ダイエットしないとな…と思っていた昨今、とりあえずデータ収集して分析してみるかと思い立ち、体重やら摂取カロリーのデータ収集をやろうと思い立った。

データ収集の検討

体重は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

tempFile366778101924718127.jpg
この画像を実行すると以下の出力が得られた。

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あったら教えてください。
やっぱり有料のやつは精度がもっといいのかなあ。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?