MotoJapan's Tech-Memo

技術めも

【お家IT#2】Webアプリと画像認識で家の食品名と賞味期限を簡単に登録したい(構想編)

下記記事の続きです。
motojapan.hateblo.jp

構想

Google Spreadsheetを探して、食品名と賞味期限を手入力するのは、実は結構めんどくさい。
なので、Webアプリ開発と画像認識の勉強も兼ねて、下のような構成を構想。
写真を撮影すると商品情報が取得でき、自動で登録されるようにしたい。

右側データ管理、通知は過去の記事でGASで実装済み。今回は左側webアプリサーバー、画像認識、登録などの一連のフローを実装予定。
f:id:motojapan:20171026004433p:plain

つまりはこんなイメージ。(みんな幸せ)
f:id:motojapan:20171016003018p:plain

環境

想定環境はRaspberry piをサラから使うので、下記の通り。

実装項目

ざっと思いつくやるべき項目を列挙。(超雑)
青字がフロントエンドとバックエンドの通信周り
赤字が最終的に求めたいデータ

バックエンド

  • Webサーバーを立ち上げる
  • Webサーバーをバックグラウンド実行する
  • HTTPS対応する(必要に応じて)
  • formを受信する(単純なPOSTデータの受信)
  • base64で画像を受信する(解析用画像の受信)
  • jsonを送信する(結果の送信)
  • pythonからgoogle spread sheetを読み書きする

フロントエンド

  • Webカメラを起動する
  • カメラを切り替える(フロント/バック)
  • Webカメラを起動後のvideoタグのレイアウトサイズを調べる
  • formを送信する(単純なPOSTデータの送信)
  • base64で画像を送信する(解析用画像の送信)
  • jsonを受信する(結果の受信)
  • CSSでレイアウト整理する

画像解析

  • 画像からバーコード情報を読み取る(画像⇒数列)
  • バーコード情報から商品名を調べる(数列⇒商品情報)
  • 画像から賞味期限を読み取る(画像⇒文字列)


以降は、この項目の開発メモ、ハマった話を書き残す予定。

興味がある人は次回以降の記事をご覧ください。