Skip to content

quietvoid/libfgm

Repository files navigation

Note: This is a fork of MulticoreWare's repo: https://bitbucket.org/multicoreware/libfgm

 

Libfgm

  • Libfgm can be used to extract characteristics of the film grain and add it to a binary file.
  • Libfgm is available under APACHE 2.0 license

Requirements:

Building

g++ -O3 *.cpp $(pkg-config opencv4 --cflags --libs)

Sample commandline:

  • libfgm --input noise.yuv --width W --height H --output filtered.yuv --model model.bin [ --pix-fmt --kalman-weight --wiener-weight --wiener-filter <0/1/2> --frames --skip --frequency-filter <0/1>]

Help:

  • --input
  • --output
  • --model
  • --width W - width of the input video
  • --height H - height of the input video
  • --wiener-weight Range: [1,9]; default: 1
  • --kalman-weight Range: [0,9]; default: 1
  • --wiener-filter <0/1/2> 0 - 3x3 filter; 1 - 5x5 filter; 2 - 7x7 filter; default: 0
  • --frames - count of frames to process
  • --skip - count of frames to skip initially
  • --pix-fmt [yuv420p, yuv422p, yuv444p, yuv422p10, yuv444p10, yuv420p10]; default: yuv420p
  • --model-id <0/1>; default: 0 0 = FrequencyFilteringModel 1 = AutoRegressionModel