私はデジタル カメラを手早く汚れたスキャナーとして使用しています。解像度は実際には約 300dpi で、かなり妥当です。しかし、私のカメラはカラー画像を生成し、それをビットマップに縮小したいと考えています。画像をディザリングしたくありません。ドキュメントを白黒スキャナーに通した場合に得られるものを探しています。JPEG をグレースケール イメージに変換するのは簡単で、djpeg -grayscale
. 難しい部分は、どの灰色のピクセルを白にすべきか、どの灰色のピクセルを黒にすべきかを決定することです。
pbmplus ツールが提供するもの
djpeg -grayscale -pnm img.jpg | pgmtopbm -threshold -value $v > img.pbm
しかし、キラーはその値$v
です。適切な値は 0.3 から 0.6 の範囲のようで、手作業で試行錯誤を繰り返すのは私を苦しめています。(ImageMagick に詳しい人にとっては$v
、手元にあるのは-black-threshold
パラメーターの値です。)
手でしきい値をより速く見つけるのに役立つGUIを構築できると思いますが、私が本当に探しているのは、しきい値を設定してグレースケール画像をきれいなビットマップに変換するアルゴリズムです。理想的には、これはグレースケール画像の構造を調べるだけで機能します!