オムライスの備忘録

数学・統計学・機械学習・プログラミングに関することを記す

opencv ノイズ除去

  • 2020/08/30

参考

アルゴリズム

  • Non-local Means Denoising
    • 画像中の小領域(例えば5x5) を設定
    • 画像中の別の場所に同じようなパッチ(小領域)が存在する可能性は高いということを前提とする(注目画素の周辺にある可能性が高い)
    • これらの似ているパッチ(小領域)を使って画素の平均をとる
    • ある画素に対して周囲に小さな小領域を定義し,画像中から似ているパッチを見つけ,似ているパッチの平均値を出力画像の対応する画素の画素値とします
    • カラー画像のノイズ除去を行う場合は,画像をCIELAB色空間へと変換してからL成分とAB成分に対して独立してノイズ除去を適用します

パラメータ

  • opencv (cv2.fastNlMeansDenoisingColored)
    • h : フィルタの強さを決定するパラメータ.hの値が大きいとノイズをより消せますが,画像の詳細な部分も失ってしまいます(10であればOK).
    • hForColorComponents : カラー画像用のフィルタの強さを決定するパラメータ(hと同様10はOK).
    • templateWindowSize : テンプレートとなるウィンドウの大きさ.奇数でなければならない(7が推奨されている).
    • searchWindowSize : 探索ウィンドウの大きさ.奇数でなければならない(21が推奨されている).