how to split channels of a video

5 visualizaciones (últimos 30 días)
Awais Khan
Awais Khan el 24 de Abr. de 2019
Comentada: Awais Khan el 24 de Abr. de 2019
how to split channels of a video for example in rgb, we show video in these channel r, g, and b separately? and show video in each channel individually.

Respuestas (1)

KSSV
KSSV el 24 de Abr. de 2019
If you have a RGB frame F os size m*n*3...
R = F(:,:,1) ;
G = F(:,:,2) ;
B = F(:,:,3) ;
  3 comentarios
KSSV
KSSV el 24 de Abr. de 2019
vidObj = VideoReader('C:\Users\Public\Videos\Sample Videos\Wildlife.wmv'); % video file
%% Read the video frame by frame
numFrames = 0;
iwant = cell([],1) ;
while hasFrame(vidObj)
F = readFrame(vidObj);
numFrames = numFrames + 1;
imagesc(F)
drawnow
iwant{numFrames} = F ;
end
%% Write to video
v = VideoWriter('myFile','Archival');
v.VideoCompressionMethod
open(v)
for i = 1:numFrames
I = rgb2hsv(iwant{i}) ;
% Get h,s,v
h = I(:,:,1) ;
s = I(:,:,2) ;
v = I(:,:,3) ;
writeVideo(v,I)
end
close(v)
Awais Khan
Awais Khan el 24 de Abr. de 2019
KSSV, above code show error at writeVideo(v,I), if i replace I with rgb2hsv(iwant{i}), code runs successfully but object of spliting channels are not achieved, so kindly review it if you have find an error.

Iniciar sesión para comentar.

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by