Remove noise in video
25 Ansichten (letzte 30 Tage)
Ältere Kommentare anzeigen
Life is Wonderful
am 25 Feb. 2020
Bearbeitet: Life is Wonderful
am 15 Mär. 2020
I am playing a video file. In the video there are lot's flicker. In first step, I would like to make a detection for flicker frame and later on I would like to remove them as well.
Below is my code snippet. I need a algo for frame with noise detection.
%% Record video - VideoPlayer
clearvars
close all
clc
%%
filename = 'Trim.mp4'; % video to load
wb = waitbar(0,'Loading the file...'); % show progress bar
v = VideoReader(filename); % create VideoReader object
w = v.Width; % get width
h = v.Height; % get height
d = v.Duration; % get duration
s = struct('cdata',zeros(h,w,3,'uint8'),'colormap',[]); % struct to hold frames
k = 1; % initialize counter
NFrames = v.FrameRate*v.Duration % Number of frames
while hasFrame(v) % while object has frame
f = readFrame(v); % read the frame
s(k).cdata = f; % = imrotate(f,90); % rotate frame as needed
k = k + 1; % increment counter
waitbar(v.CurrentTime/d) % update progress bar
end
v.CurrentTime = 13; % set current time
f = readFrame(v); % get the frame
close(wb) % close progress bar
axes % create axes
imshow(f) % show the frame
title('Trim.mp4') % add title
I want to understand the under which condition reported frames and frame rate are different.
How to get the histogram for good vs bad frames.
Any help here ?
Thank you!
0 Kommentare
Akzeptierte Antwort
Image Analyst
am 11 Mär. 2020
In the loop, I'd get the mean into an array. Then I'd use some kind of outlier detection code to find peaks in the mean signal. Not step changes which indicate scene changes, but sharp peaks or valleys.
6 Kommentare
Weitere Antworten (0)
Siehe auch
Kategorien
Find more on Audio and Video Data in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!