matlab加权平均法图像拼接代码(matlab怎么叠加图像)
admin 发布:2022-12-19 05:11 129
本篇文章给大家谈谈matlab加权平均法图像拼接代码,以及matlab怎么叠加图像对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。
本文目录一览:
matlab图像分块,边缘检测,图像拼接代码
你可以试试下面的程序:
I=imread('myphoto.jpg'); % 假设要处理的图像是myphoto.jpg
heights=size(I,1); % 图像的高
widths=size(I,2); % 图像的宽
m=8; % 假设纵向分成8幅图
n=10; % 假设横向分成10幅图
% 考虑到rows和cols不一定能被m和n整除,所以对行数和列数均分后要取整
rows=round(linspace(0,heights,m+1)); % 各子图像的起始和终止行标
cols=round(linspace(0,widths,n+1)); % 各子图像的起始和终止列标
blocks=cell(m,n); % 用一个单元数组容纳各个子图像
for k1=1:m
for k2=1:n
blocks{k1,k2}=I(rows(k1)+1:rows(k1+1),cols(k2)+1:cols(k2+1),:);
subimage=blocks{k1,k2};
% 以下是对subimage进行边缘检测
% 加入边缘检测的代码
% 以上是对subimage进行边缘检测
blocks{k1,k2}=subimage;
end
end
processed=I; % processed为处理后的图像,用原图像对其初始化
% 以下为拼接图像
for k1=1:m
for k2=1:n
processed(rows(k1)+1:rows(k1+1),cols(k2)+1:cols(k2+1),:)=blocks{k1,k2};
end
end
figure,imshow(processed)
% 以上的程序已测试过,对灰度图像和真彩图像都可以运行。
matlab图像拼接程序
其实很简单的,看懂下面的语句:
PicName1='a.jpg'; % 要合并的图片1
PicName2='b.jpg'; % 要合并的图片2
PicOut='c.jpg'; %合并的结果
IV1=imread(PicName1); % 读入图片1
IV2=imread(PicName2); % 读入图片2
PicData=[IV1; IV2]; % 如果是纵向拼接用这个
PicData=[IV1 IV2]; % 如果是横向拼接用这个
imwrite(PicData, PicOut, 'Quality', 75); % 输出图形
打字不易,如满意,望采纳。
加权平均值算法的matlab实现
就是一个输入输出
function fun=wm(a,w)
n=length(a);s=0;
for i=1:n
s=s+w(i)*a(i);
end
fun=s/sum(w);
end
用MATLAB实现图像的拼接显示
看楼主的要求,似乎没楼上说的那么复杂。
楼主只是要求把四幅图片变成同样大小然后拼接起来就是了。
如果上述理解无误,那么实现并不困难,主要有以下几点需要注意:
1、图像格式:由于图像格式包括索引色和真彩色这两大类不同的类型,所以需要统一转换一下才能拼接。这两类图像的判断根据是读入的数据是二维还是三维,对于二维的数据,如果调色板为空,则按照灰度图像处理。
2、数据格式:根据具体的图像文件格式不同,读入的数据可能是logical、uint8、uint16、uint32、single、uint64、double 等不同的格式,要想进行拼接,需要转换为同一种数据类型。
3、注意图像的宽高顺序:512*384的图像应为[384 512]。
参考代码
% 待拼接文件
imfile = {'1.jpg', '2.jpg', '3.gif', '4.png'};
% 读入文件,并调整大小、转换格式
A = cell(2,2);
for i=1:4
% 读入图像数据
[X, map] = imread(imfile{i});
if size(X,3) == 1
% 有些灰度图像无map数据
if isempty(map)
map = gray;
end
% 转换为真彩色
X = ind2rgb(X,map);
end
% 调整图像大小,并转换数据格式
A{i} = im2double( imresize(X, [384 512]) );
end
% 拼接图像并显示
A = [A{1} A{2}; A{3} A{4}];
imshow(A)
如何使用matlab计算加权平均分
根据加权平均分的定义,计算加权平均分只需使用matlab两个知识点:
sum()函数可以对参数(矩阵、向量)求和
matlab的点运算符(.)表示对矩阵中每个元素的运算
计算加权平均分的示例代码如下:
x
=
[80
92
83
67];
%
各科成绩
w
=
[2.5
1.0
1.5
3.0];
%
各科学分
y
=
sum(x.*w)/sum(w)
%
加权成绩
y
=
77.1875
matlab加权平均法图像拼接代码的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于matlab怎么叠加图像、matlab加权平均法图像拼接代码的信息别忘了在本站进行查找喔。
版权说明:如非注明,本站文章均为 AH站长 原创,转载请注明出处和附带本文链接;
相关推荐
- 04-30点击展开代码(点击展开更多)[20240430更新]
- 04-30树状图css代码(树状图或列表)[20240430更新]
- 04-30qq空间倒计时js代码(空间跨年倒计时代码)[20240430更新]
- 04-29java代码片段库工具(Java代码片段运行在哪里)[20240429更新]
- 04-29web代码编辑器(web代码编辑器原理)[20240429更新]
- 04-29标签代码(表格标签代码)[20240429更新]
- 04-29seo怎么推广,seo推广具体做什么
- 04-29代码钩子(钩子百度百科)[20240429更新]
- 04-29域名中商业组织代码(商业机构的域名代码是什么)[20240429更新]
- 04-29网上书店网站源代码(网上书店html代码)[20240429更新]
取消回复欢迎 你 发表评论:
- 标签列表
- 最近发表
- 友情链接