matlab |画像のズームインとサンプリングおよびサンプリングのズームアウトを実装する| yuvコンポーネントをファイルに書き込む

最近、yuv画像のuv成分をY成分と同じサイズに増幅する実験が使用されました。

T=2;
pic_U_=zeros(row,col);
pic_V_=zeros(row,col);

%放大uv分量
for i=1:row%行
    for j=1:col%列
        x=round(i/T);
        y=round(j/T);
        pic_U_(i,j)=pic_U(x,y);
        pic_V_(i,j)=pic_V(x,y);
        pic_U_=uint8(pic_U_);
        pic_V_=uint8(pic_V_);
    end
end

いくつかの処理の後、適切なUV成分を得るためにサンプルを減らします

function [out]=yuv_change(output_image,output_image_YUV)%后面那个是用fopen打开可写入的文件路径
%row 高
%col  宽
output_image_Y= output_image(:,:,1);

U=output_image(:,:,2);
output_image_U= U(1:2:size(U,1),1:2:size(U,2));

V=output_image(:,:,3);
output_image_V= V(2:2:size(V,1),1:2:size(V,2));

%output_image=fopen(path,'a+');%

output_image_Y=uint8(output_image_Y');  
fwrite(output_image_YUV,output_image_Y, 'uint8');

%output_image=fopen(path,'wb');%
output_image_U=uint8(output_image_U');  
fwrite(output_image_YUV,output_image_U, 'uint8');


%output_image=fopen(path,'wb');%
output_image_V=uint8(output_image_V');  
fwrite(output_image_YUV,output_image_V, 'uint8');
out=output_image_YUV;







参照できます

おすすめ

転載: blog.csdn.net/weixin_46096297/article/details/111564563