機械学習をやろうとしたらデータクレンジングに明け暮れていた件(3) ~データの整合性チェック~

技研のまつけんです。

前回前々回に引き続き、クレンジングの話をしたいと思います。今回は、前々回の記事で予告した「整合性チェック」です。前々回の記事の中でも、ファイル数や命名規則などのチェックを行いましたが、今回は「重複」と「欠け」などのチェックを行います。

「重複」というのは、全く同じデータが複数あることです。操作ミスで複製してしまったり、別名で保存してしまうことがあります。「欠け」のチェックは、例えば、毎月データを取得した筈なのに、そうなっていない場合に、それを検出するということです。

続きを読む

Python用ライブラリ用のwrapperを作って使っている話

技術研究所 (技研) のまつけんです。

Python用のライブラリには、cv2 (OpenCV)、numpy (NumPy)、pandas (Pandas)などがあります。大抵のことが出来るので大変便利なのですが、引数の与え方などで不便を感じることがあります。そこで、今回は、私が普段、それらのライブラリをwrapするのに使っているサブルーチンを紹介したいと思います。

OpenCV用 (wrap_cv2.py)

色の定義

頻繁に利用する色 (無彩色、原色、補色) を定義します。OpenCVはRGBではなくBGRが基本なので、その順番となっています。

続きを読む

OpenCVでレシートを適切なサイズに縮小する

技術研究所 (技研) のまつけんです。

リモートワークが増えたことで、会社に領収書やレシートの写真を提出することが多くなりました。紙のレシートを、スキャナやスマホで電子化する (画像ファイルにする) と、不必要に高精細な画像になってしまうことが多いように感じます。そこで、今回は、レシートの写真を自動で、文字が判読できる範囲内で縮小する (解像度を落とす) Pythonプログラムを作成してみました。機械学習などは使わず、OpenCVとNumPyだけで画像処理によって実現しています。

続きを読む