楽譜アーカイブアプリ - その26 ヒストグラムによるノイズ除去 [考え中の問題]
一昨日からスキャン画像のノイズ除去を考え始めた。対象にしているのが一般の画像ではなく楽譜なので、例えば孤立点を取り除くようなノイズ除去アルゴリズムでは付点音符の「テン」が無くなってしまいかねない。昨日はFourier変換を使う方法を考えた。使い慣れているのでわかりやすいが、いろいろなノイズを対象にしようとするとパラメータが増えてしまう。それに何かと言えばFourier変換ばっかしだし。もうちょっと違うやり方を考えてみる。
例えば
ところがこんな条件のいいデータはないだろう。たいてい図-9.2こんなだろう。しかしこれでもピークがふたつあるかどうかで判断できるだろう。 では図-9.3のようなデータになったらどうだろう。 これはコントラストが悪く、白と黒の区別があまりついていない場合である。インクの色が飛んだ上に紙が変色しているような場合である。こんなのでも人間が見ればちゃんと読めたりするものである。
これを何らかの基準を設けてスペースかそうでないかを判断するのは難しい。
さらに、図-9.4のような場合もあるだろう。 これはいわゆる「ノイズに埋もれる」という場合である。この場合は人間が見ても判断できないようなこともあるだろう。
図-9.3や図9.4のようなヒストグラムのなった場合は白旗をあげるしかないだろうな。
なやましいのは図-9.5のような場合。 これはやはり青線はスペース部だろうけど、これをプログラマチックに判断するにはどうすればいいか。それにあんがいこういうデータが多いかもしれない。
ちょっと実際のデータを取ってみてどういう傾向が一般的かを見る必要がある。
9.3.1 ヒストグラムデータから
ラティテュード補正のときにヒストグラムデータを作る。これを利用できないか。ノイズ除去と言ってもスペース部(何も書かれていない部分)を検出できればいいだけだし。例えば
- 全体をタイルに分割する
- タイルごとのヒストグラムを計算する
- スペース部は黒が少ないはず、ある基準を作ってそれを検出する
- スペース部と判断されたらそのタイル全体を白で塗りつぶす
ところがこんな条件のいいデータはないだろう。たいてい図-9.2こんなだろう。しかしこれでもピークがふたつあるかどうかで判断できるだろう。 では図-9.3のようなデータになったらどうだろう。 これはコントラストが悪く、白と黒の区別があまりついていない場合である。インクの色が飛んだ上に紙が変色しているような場合である。こんなのでも人間が見ればちゃんと読めたりするものである。
これを何らかの基準を設けてスペースかそうでないかを判断するのは難しい。
さらに、図-9.4のような場合もあるだろう。 これはいわゆる「ノイズに埋もれる」という場合である。この場合は人間が見ても判断できないようなこともあるだろう。
図-9.3や図9.4のようなヒストグラムのなった場合は白旗をあげるしかないだろうな。
なやましいのは図-9.5のような場合。 これはやはり青線はスペース部だろうけど、これをプログラマチックに判断するにはどうすればいいか。それにあんがいこういうデータが多いかもしれない。
ちょっと実際のデータを取ってみてどういう傾向が一般的かを見る必要がある。
2011-01-28 22:58
nice!(0)
コメント(0)
トラックバック(0)
コメント 0