前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >巴氏距离实例

巴氏距离实例

作者头像
钱塘小甲子
发布2019-01-29 09:59:42
1.7K0
发布2019-01-29 09:59:42
举报
文章被收录于专栏:钱塘小甲子的博客

之前提到了巴氏距离,巴氏距离用来检测两张图像不像是一个很好的工具哟~

我们就用Matlab来检测一下巴氏距离的威力吧!

这是我大国武的樱顶,想想清明时节樱花纷飞现在被我拿来做实验,理工男啊!

樱花以秒速3.5米下落,我又该如何寻思你。

首先这是主教拍摄樱顶的图片

巴氏距离实例
巴氏距离实例

这张是上半部分,但是两张还是很想哦,至少人类是这么认为的。

巴氏距离实例
巴氏距离实例

这是第三张,基本就不太能够辨认了。

巴氏距离实例
巴氏距离实例

我们把第一张图片对应的直方图称为PsOrg,第二张很匹配的称为PsMa,第三张对应的直方图称为PsNonMa。请原谅我把c++命名习惯放到Matlab里面来了。然后我们要做的就是计算第二张图片与原图(第一张图片)之间的巴氏距离,以及第三张图片与第二张图片之间的巴氏距离。反正,结果是这样的:

巴氏距离实例
巴氏距离实例

这是三张图片对应的直方图。

巴氏距离实例
巴氏距离实例

这是最后的两个巴氏距离,当然啦,前一个第一张和第二张的,后一个是第一张和第三张的。说明第一张图片和第二张图片更加像,看来我的眼光还是挺好哒。

不说了,上matlab 的程序:

clc

fn='I:\orginalPicture.png';

I=imread (fn);

J=I;

%计算灰度图象的直方图数据

L=256; %灰度级 

PsOrg = zeros(L,1); %统计直方图结果数据

nk=zeros(L,1);

[row,col]=size(I);

n=row*col; %总像素个数

for i = 1:row

for j = 1:col

num = double(I(i,j))+1; %获取像素点灰度级

nk(num) = nk(num)+1; %统计nk 

end

end

%计算直方图概率估计

for i=1:L

PsOrg(i)=nk(i)/n; 

end

figure;

subplot(2,1,1);imshow(J),title('原图');

subplot(2,1,2),bar(PsOrg),title('直方图');

、、

%figure;

%subplot(3,1,1);

�r(PsOrg);

%subplot(3,1,2);

�r(PsMa);

%subplot(3,1,3);

�r(PsNon);

sumMa = 0;

sumNonMa =0;

for i = 1:256

sumMa=sumMa+sqrt(PsMa(i)*PsOrg(i));

sumNonMa=sumNonMa+sqrt(PsNon(i)*PsOrg(i));

end

sumMa

sumNonMa

%figure(4),imhist(hist);

%p=imhist(hist); %生成直方图函数,返回灰度图象直方图数据

%figure(5),plot(p); 

这一段可以算出图片的直方图和直方图矩阵,三张图片都可以这么算

sumMa = 0;

sumNonMa =0;

for i = 1:256

sumMa=sumMa+sqrt(PsMa(i)*PsOrg(i));

sumNonMa=sumNonMa+sqrt(PsNon(i)*PsOrg(i));

end

sumMa

sumNonMa

这一段就是求两个巴氏距离的程序。

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2015年11月03日,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
图数据库 KonisGraph
图数据库 KonisGraph(TencentDB for KonisGraph)是一种云端图数据库服务,基于腾讯在海量图数据上的实践经验,提供一站式海量图数据存储、管理、实时查询、计算、可视化分析能力;KonisGraph 支持属性图模型和 TinkerPop Gremlin 查询语言,能够帮助用户快速完成对图数据的建模、查询和可视化分析。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档