ivhc-estimator

 

IVHC (Fast image noise estimation)

This is an implementation of IVHC on Python and Matlab.
See also IVHC.
IVHC is a model to estimate Gaussian, signal-dependent, and processed noise in image and video signals.
The estimation is based on the classification of intensity-variances
of image patches in order to find homogeneous regions that best represent the noise.

Here is the block diagram of the intensity-variance
homogeneity classification (IVHC) noise estimation.

Inputs:

  • Noisy gray image
  • Max polynomial regression degree

Outputs:

  • Variance of noise in the Y channel (best representative)
  • Degree of processed noise
  • Noise level function

 

The repository includes:

  • Matlab and Python implementation of IVHC.
  • Matlab demo files to estimate AWGN, processed noise, and signal-dependent noise.
  • Python demo files to estimate AWGN, processed noise, and signal-dependent noise.

Python

Getting Started

  • demo.ipynb or (demo.py) is the easiest way
    to start. It shows an example of estimating three types of noise. AWGN, PPN, and PGN.

Python Installation

  1. Install dependencies
    pip3 install package [numpy, skimage, …]

  2. Run setup from the libs directory
    python3 setup.py install
    optional:
    run “python3 setup.py build” and copy .so (linux) or .pyd (windows) file to the demos.py path
    or if you have python3.6 copy “ivhc.cpython-36m-x86_64-linux-gnu.so” (linux) or “ivhc.cp36-win_amd64.pyd” (windows) to your demos.py path.

  3. Run demos.py:
    python3 demos.py

Matlab (windows only)

© 版权声明
THE END
喜欢就支持一下吧
点赞176 分享
评论 抢沙发
头像
欢迎您留下宝贵的见解!
提交
头像

昵称

取消
昵称表情代码图片

    暂无评论内容