Skip to content

Low-cost and easy data collection using a self-made optical mark reader sheet for Evacuation Score

License

Notifications You must be signed in to change notification settings

shibataryohei/Marksheet

Repository files navigation

Name

直腸肛門奇形研究会が推奨する臨床的排便機能評価スコアを、自作マークシートを使って、臨床情報を集計しデータ化するシステムを開発しました。

Requirement

  • macOS (Mojave推奨)
  • Python 2.7+: 現在3系に移行中

インストールが不要なライブラリ (標準ライブラリ)

  • os: OSに依存した機能を使うためのライブラリ
  • datetime: 時間に関するデータを取り扱うためのライブラリ
  • shutil: ファイルのバッチ処理のためのライブラリ

Terminalからインストールするライブラリ

  • OpenCV: 画像処理やパターン認識などを行う
  • pdf2image: マークシートをスキャンしたPDFをPNGに変換する
  • PyPDF2: 複数のPDFファイルを連結して1つにする
  • Pandas: データ解析を支援する機能
  • Numpy: 数値計算のためのモジュール

もしPython初心者の方でつまずくことがあった場合は、下記の記事を参考にしてもらえるといいかもしれません。

Python初心者がnumpyとOpenCVをインストールするためにしたこと

pipがインストールされていない場合はpipをインストールしてください。

Pythonのパッケージ管理システムpipの使い方

# OpenCV
pip install opencv-python

# pdf2image
pip install pdf2image --user

# PyPDF2
pip install pypdf2

# pandas
pip install pandas

# Numpy
pip install numpy

Marksheet

マークシートはMarksheet.pptxを印刷してください。印刷する紙は、書きやすさや消しゴムを使った時の消え方などを考えると、上質紙の方が良いと思われます。下記のコピー用紙がちょうどいい塩梅かと思いました。

コクヨ コピー用紙 A4 スーパーファイングレード 厚紙用紙 50枚 インクジェットプリンタ用紙 KJ-M15A4-50

Install

このレポジトリの右上にあるClone or downloadのタブをクリックしてDownload ZIPを選択してZIPファイルをダウンロードしてください。GitHubを使える方は、このレポジトリをcloneしてもらえればと思います。

Usage

  1. Markshee/PDF_InputのフォルダにスキャンしたPDFファイルを移動させておく (複数のPDFファイルでもOK)
  2. ターミナルを起動
  3. cloneもしくはダウンロードしたこのレポジトリがあるディレクトリに移る
cd "ディレクトリ名"/Marksheet
  1. Marksheet.pyを実行する (Python 2.7)
python Marksheet.py
  1. CSV_OutputにCSVファイルが生成されていることを確認する

Licence

以下の条件を満たす限り、自由な複製・配布・修正を無制限に許可します。

  • 上記の著作権表示と本許諾書を、ソフトウェアの複製または重要な部分に記載する
  • 本ソフトウェアは無保証である。自己責任で使用する。

詳しくはLicense.mdを参照ください。

Recommendation

Python初心者の方で、インストールやプログラムの内容などの理解が足りない方は下記のブログ記事が役に立つかもしれません。

Acknowledgments

PythonとOpenCVで簡易OMR(マークシートリーダ)を作る
基本的にはこのマークシートは@sbtseijiさんの記事を参考にして作らせていただきました。本当にありがとうございます。

Update

  • Python 3系への移行
  • ERRORをcsvに加えられるようにする
  • DateとIDそれぞれで
  • Area_sumが閾値以下しかない->unmarked
  • Area_sumが大きいものが2つ->max*0.9->duplication?

About

Low-cost and easy data collection using a self-made optical mark reader sheet for Evacuation Score

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Languages