how to read and write a gray AVI video file in 16 bit
18 Ansichten (letzte 30 Tage)
Ältere Kommentare anzeigen
I want save a grayscale matrix in a videofile without lost information.
And i want to read this file to compare it.
I try this :
% Create and save
Fmt = 'Grayscale AVI';
% Fmt = 'Uncompressed AVI';
vidObj = VideoWriter('video16.avi',Fmt);
open(vidObj);
for i = 1:100
gray_img = rand(480, 640) * 2^16;
writeVideo(vidObj, double(gray_img./2^16));
end
close(vidObj);
figure;imagesc(gray_img);colormap gray;impixelinfo;
disp( mean2(gray_img) );
% Read and show
vidObj = VideoReader('video16.avi');
for k = 1 : vidObj.NumFrames
frame = read(vidObj, k);
imshow(frame);
end
figure;imagesc(frame);colormap gray;impixelinfo;
disp( mean2(frame) );
but my read frames are always in 8 bit format
Any help should be appreciate
Thanks
0 Kommentare
Antworten (2)
ScottB
am 24 Jan. 2024
The command VideoWriter has an attribute called "VideoBitsPerPixel" which is the number of bits per pixel in each output frame.
0 Kommentare
Siehe auch
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!