资源简介
使用不同去隔行方法进行隔行变逐行的matlab代码,包括奇偶场直接合并,场复制和场内插三种方法
代码片段和文件信息
clear;
clc;
%% 读取隔行扫描后的图像
dir_name=dir(‘E:\dsylsy\movie_g\*.jpg‘);
l=length(dir_name);
path0=‘E:\dsylsy\movie_g\‘;
path1=‘E:\dsylsy\movie_z1\‘;
path2=‘E:\dsylsy\movie_z2\‘;
path3=‘E:\dsylsy\movie_z3\‘;
j=1;
k=1;
for b=1:l/2
a=num2str(b);
c=num2str(j‘%03d‘);
d=num2str(k‘%03d‘);
file0_1=strcat([‘movie-‘]a‘_01.jpg‘);
file0_2=strcat([‘movie-‘]a‘_02.jpg‘);
file1=strcat([‘movie-‘]c‘.jpg‘);
file2=strcat([‘movie-‘]d‘.jpg‘);
pathfile0_1=fullfile(path0file0_1);
pathfile0_2=fullfile(path0file0_2);
pathfile1_1=fullfile(path1file1);
% pathfile1_2=fullfile(path1file1_2);
pathfile2_1=fullfile(path2file2_1);
pathfile2_2=fullfile(path2file2_2);
pathfile3_1=fullfile(path3file8_1);
pathfile3_2=fullfile(path3file1_2);
I1=imread(pathfile0_1);%读入奇数行
I2=imread(pathfile0_2);%读入偶数行
[mnp]=size(I1);
[xyz]=size(I2);
%% 去隔行处理方法1:奇偶场直接合并2*N幅图像转换为n幅图像
for i=1:(m+x)
if mod(i2)~=0
result1_1(i::)=I1((i+1)/2::);
else result1_1(i::)=I2(i/2::);
end
end
imwrite(result1_1pathfile1_1);
%% 去隔行处理方法2:场复制合并
%复制奇场
for i=1:2*m
if mod(i2)==0
result2_1(i::)=I1(i/2::);
else result2_1(i::)=I1((i+1)/2::);
- 上一篇:自己写的简单的隔行扫描代码
- 下一篇:matlab gui程序设计 学生成绩管理系统
评论
共有 条评论