【图像配准】基于灰度的模板匹配算法(三):划分强度一致法(PIU)
来源:互联网 发布:淘宝衣服图片素材 编辑:程序博客网 时间:2024/06/10 06:00
简介:
前面几篇文章介绍了一些比较基本的基于灰度的图像配准算法:
基于灰度的模板匹配算法(一):MAD、SAD、SSD、MSD、NCC、SSDA、SATD算法
基于灰度的模板匹配算法(二):局部灰度值编码
基于互信息的图像配准算法:MI、EMI、ECC算法
本文将介绍一种类似的相似度测量算法,叫做划分强度一致法(Partitioned Intensity Uniformity,PIU)。
PIU算法:
1992年,Woods提出了基于划分强度一致的MR-PET图像配准。在医学图像中,同一组织结构在不同的模态下灰度值是不同的。比如骨骼组织在CT图像中灰度值高,在MRI图像中灰度值偏低。
定义:
PIU测度的基本理念是:同一组织在不同模态下的灰度分布具有某种一致性。换句话说,一种模态下的某个灰度值的像素在另一种模态中是以一个不同的灰度值为中心的分布。
PIU测度的表达式定义为:
其中,N为模板中像素总个数,也就是模板行列数的乘积。与分别表示模板和子图中灰度为r、f的像素个数。表示搜索图中的某个子图。
表示模板R中灰度值为r的像素在子图中对应位置上像素灰度值之和。其他式子也是同样的道理。
实例验证:
MATLAB代码:
%//划分强度一致法(Partitioned Intennsity Uniformity, PIU)%%//-------------------------------------------------------clear all;close all;img=rgb2gray(imread('lena.jpg'));[img_rows img_clos]=size(img);%//搜索图尺寸x0=40;y0=30;len=64;R=img(x0:x0+len-1,y0:y0+len-1);%//取一部分作为模板figure;imshow(R);title('模板');[rows clos]=size(R);%//模板尺寸N=rows*clos;%%//-------------------------------------------------------uFr=zeros(256,1);uRf=zeros(256,1);dFr=zeros(256,1);dRf=zeros(256,1);a=zeros(256,1);b=zeros(256,1);piu=zeros(img_rows-len,img_clos-len);for i=1:img_rows-len for j=1:5:img_clos-len S=img(i:i+len-1,j:j+len-1);%//子图 for r=0:255 pos=find(R==r); nr=size(pos,1)+eps;%//参考图像中灰度值为r的像素个数 value1=S(pos); uFr(r+1,1)=sum(value1)/nr;%//R中像素为r的位置处,对应S上的像素点均值 t1=double(S(pos))-uFr(r+1,1); dFr(r+1,1)=sum(t1.^2)/nr; pos=find(S==r); nf=size(pos,1)+eps;%//参考图像中灰度值为r的像素个数 value2=R(pos); uRf(r+1,1)=sum(value2)/nf; t2=double(R(pos))-uRf(r+1,1); dRf(r+1,1)=sum(t2.^2)/nf; a(r+1,1)=(nr*dFr(r+1,1))/(N*uFr(r+1,1)+eps); b(r+1,1)=(nf*dRf(r+1,1))/(N*uRf(r+1,1)+eps); end piu(i,j)=sum(a)+sum(b); endend%%//-------------------------------------------------------piu_min=min(min(piu));[y,x]=find(piu==piu_min);x=x-1;y=y-1;figure;imshow(img);hold on;rectangle('position',[x,y,len-1,len-1],'edgecolor','r');title('搜索结果');hold off;%over
输出结果:
参考文献:
1、张娟.医学图像配准中相似性测度的研究[M],2014.
1 0
- 【图像配准】基于灰度的模板匹配算法(三):划分强度一致法(PIU)
- 【图像配准】基于灰度的模板匹配算法(二):局部灰度值编码
- 【图像配准】基于灰度的模板匹配算法(一):MAD、SAD、SSD、MSD、NCC、SSDA、SATD算法
- 图像配准】基于灰度的模板匹配算法(一):MAD、SAD、SSD、MSD、NCC、SSDA、SATD算法
- 【图像配准】基于灰度的模板匹配算法(一):MAD、SAD、SSD、MSD、NCC、SSDA、SATD算法
- 基于灰度的模板匹配算法
- [opencv]模板匹配算法(单图像模板匹配和基于模板匹配的目标跟踪)
- [opencv]模板匹配算法(单图像模板匹配和基于模板匹配的目标跟踪)
- 基于灰度的模板匹配算法(一):MAD、SAD、SSD、MSD、NCC、SSDA算法
- 基于灰度的模板匹配算法(一):MAD、SAD、SSD、MSD、NCC、SSDA算法
- 基于灰度的模板匹配算法(一):MAD、SAD、SSD、MSD、NCC、SSDA算法
- 基于灰度的模板匹配算法(一):MAD、SAD、SSD、MSD、NCC、SSDA算法
- 基于灰度的模板匹配算法(一):MAD、SAD、SSD、MSD、NCC、SSDA算法
- 【一种基于灰度差的模板匹配】
- 图像处理常用算法GPU实现三:基于模板匹配的边缘检测
- 图像处理常用算法GPU实现三:基于模板匹配的边缘检测
- 灰度模板匹配算法
- 基于灰度的模板匹配算法:MAD、SAD、SSD、MSD、NCC、SSDA算法
- HDU 5119 Happy Matt Friends(DP)
- Testlink实验心得
- 最简单的单身模式
- Codeforces 166E Tetrahedron
- 【工具系列一】——Tomcat的基本配置
- 【图像配准】基于灰度的模板匹配算法(三):划分强度一致法(PIU)
- Ubuntu12.02 NFS安装与OK6410
- 通过GDB重新获得进程的输出
- 软件测试基础_什么是软件测试
- 一个数被3除余2,被5除余3,被7除余2,求满足条件的前N个数
- android开发步步为营之72:右滑关闭Activity
- ARM 体系结构与汇编指令
- DP hduHDU 5119
- java学习笔记之面向对象