薬剤師のプログラミング学習日記

プログラミングやコンピュータに関する記事を書いていきます

2021-01-01から1年間の記事一覧

画像の回転角度をCNNの回帰で予測する

CNNといえば画像の分類問題でよく目にしますが、回帰問題にも用いることができます。分類問題ではデータがどのクラスに属するか、という問題を扱いますが、回帰問題では入力データから連続的な数値の予測を行います。 そこで、回転した画像からその回転角度…

YOLOv3のData Augmentationとモデル評価

前回はとりあえずオリジナルのデータセット(錠剤とカプセルの画像)で学習して、実際にそれらが検出できるかというところまでやってみました。しかし、Lossの落ちやモデル評価までは踏み込めていなかったので、今回はこれらについて少し掘り下げてみようと…

物体検出モデルYOLOv3で画像から錠剤を検出する

前回は錠剤画像の刻印を強調してみましたが、今度は物体検出モデルを使って薬が写った画像から錠剤(またはカプセル)を検出してみます。 Windows10でkeras版のYOLOv3を使用しました。 環境を構築し、自分で写真を撮ってオリジナルのデータセットを作成して…

錠剤画像の刻印(識別コード)を強調させて表示する

薬剤師をしていると調剤された薬の監査や持ち込まれた薬の鑑別を毎日のようにしますが、現在はこれらの業務の支援システムがいろんなメーカーから出ているようです。 共通してみられる機能に、撮影した錠剤の画像から薬がどの薬であるかを推定できる、あるい…

Pythonを定期実行してExcelファイルの中身を確認する

指定したExcelファイル内を検索して、特定のワード(語句)があるかどうかを確認するPythonプログラムを定期的に自動実行するようにしました。共有フォルダなど自分の管理外にあるようなExcelファイルが不定期に更新される場合、自分に必要な情報が載ってい…

手書き数字認識CNNモデルを自作データセットで再学習する

あらかじめMNISTで学習しておいたCNNモデルを自分で集めた手書き数字画像データセットに対して精度が高くなるよう再学習しました。 事前学習済みCNNモデルの重みを微調整する 手書き数字画像データセットを可視化する グレースケール画像でデータを描画 PCA…

自分の手書き数字のデータセットを作る

自分で集めた手書きの数字画像からデータセットを作りました。MNISTのように、手軽に自分のモデルの学習に使うことができるようにプログラムを書きました。 数字画像データを人手でラベル付けする データ拡張(Data Augmentation) 画像を水増ししてラベル間…

畳み込みニューラルネットワークを自作の手書き数字画像に利用する

自分で用意した画像から手書き数字の切り出し→前処理と行なってきました。今度はこれらの手書き数字をMNISTデータセットで学習させた畳み込みニューラルネットワーク(convolutional neural network:CNN)に読ませるということをやってみます。また、モデル…

手書き数字データに前処理を行う

前回「画像から手書き数字を切り出す - 薬剤師のプログラミング学習日記」で自分で用意した画像データから手書き数字の部分だけを切り出すことができました。あとはこの手書き数字を画像識別モデルに読ませて数字認識をさせたいところですが、切り出した画像…

画像から手書き数字を切り出す

手書き数字をコンピュータに読ませて入力作業を自動化するため、画像から特定の領域にある数字を切り出すプログラムを書きました。 なお、本記事の内容は「数字認識を使って棚卸を自動化するアプリケーションを作る」で行った処理のひとつとなっています。 …

Pythonで画像の傾きを補正して水平にする

コピー機等でスキャンした画像データをよく見ると、ほんのわずかに傾いているものがあります。Windowsだと標準ソフトのフォトあたりを使うと、スライダーをマウスで動かしながら画像の回転を行うことができますが、角度の最小単位が1度ずつとなっていて微妙…

数字認識を使って棚卸を自動化するアプリケーションを作る

機械学習ライブラリにおける画像分類のチュートリアルなどで目にすることが多い手書き数字認識ですが、実際の業務で行う棚卸で利用することができそうだと考え、あれこれ試行錯誤してやってみました。とりあえず実用で使えるレベルで形になったので、書いて…