clc
clear all
close all
%% 图像读取、显示和保存
I=imread('2.jpg');
I=double(I);
[nrow,ncol]=size(I)
figure
imshow(uint8(I))
%取子图像和均匀采样
I_s=I(1:200,1:300);
I_s=I(1:2:end,1:2:end);
figure
imshow(uint8(I_s))
%% 图像缩放
I=imread('2.jpg');
I=double(I);
[nrow,ncol]=size(I)
figure
imshow(uint8(I))
size_s=[200,200]
%使用matlab函数
I_s=imresize(I,size_s,'bilinear');
figure
imshow(uint8(I_s))
I=I_s;
size_b=[nrow,ncol]
%重写缩放函数
ratio=size_s./size_b;
I_resize=zeros(size_b);
for row=1:size_b(1)
for col=1:size_b(2)
%bilinear
y=row*ratio(1);
x=col*ratio(2);
x1=floor(x);
x2=ceil(x);
y1=floor(y);
y2=ceil(y);
if(y==0) y=1;
elseif(y>size_s(1))
y=size_s(1);
end
if(x==0)
x=1;
elseif(x>size_s(2))
x=size_s(2);
end
if(y1==0)
y1=1;
elseif(y1>size_s(1))
y1=size_s(1);
end
if(x1==0) x1=1;
elseif(x1>size_s(2))
x1=size_s(2);
end
if(y2==0)
y=1;
elseif(y2>size_s(1))
y2=size_s(1);
end
if(x2==0)
x2=1;
elseif(x2>size_s(2))
x2=size_s(2);
end
if(x1==x2)
I_R1=I(y1,x1);
I_R2=I(y2,x1);
else
I_R1=(x2-x)/(x2-x1)*I(y1,x1)+(x-x1)/(x2-x1)*I(y1,x2);
I_R2=(x2-x)/(x2-x1)*I(y2,x1)+(x-x1)/(x2-x1)*I(y2,x2);
end
if(y1==y2)
I_P=I_R1;
else
I_P=(y2-y)/(y2-y1)*I_R1+(y-y1)/(y2-y1)*I_R2;
end
I_resize(row,col)=I_P;
end
end
figure
imshow(uint8(I_resize))
没有合适的资源?快使用搜索试试~ 我知道了~
数字图像处理中对图像进行压缩,保存,显示等一系列操作,源码已经可以运行
共3个文件
jpg:1个
m:1个
db:1个
1.该资源内容由用户上传,如若侵权请联系客服进行举报
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
版权申诉
0 下载量 129 浏览量
2023-01-30
19:42:53
上传
评论
收藏 12KB ZIP 举报
温馨提示
数字图像处理中对图像进行压缩,保存,显示等一系列操作,源码已经可以运行,具体的例子直接下载MATLAB环境中运行即可得到相应的结果.zip
资源推荐
资源详情
资源评论
收起资源包目录
数字图像处理中对图像进行压缩,保存,显示等一系列操作,源码已经可以运行,具体的例子直接下载MATLAB环境中运行即可得到相应的结果.zip (3个子文件)
图像处理
2.jpg 5KB
Thumbs.db 9KB
picture.m 2KB
G2
共 3 条
- 1
资源评论
处处清欢
- 粉丝: 154
- 资源: 2511
下载权益
C知道特权
VIP文章
课程特权
开通VIP
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功