精华内容
下载资源
问答
  • 集,与高分辨率图像块之间建立局部对应关系,这种对应关系即为局部几何相似性.将训练集信息有效传递至待重建 高分辨率图像块,图像放大的问题转化为重建系数的最优化问题,并且基于非局部平均思想,将其进而转化为加权最 ...
  • 针对传统外极线约束的匹配算法存在误匹配率、漏匹配率较高的问题,提出了基于图像相似几何特征的双目匹配检验和筛选算法。利用外极线几何约束算法获得不共外极线和共外极线的初始匹配点。根据左右图像正确的匹配点...
  • 图像相似性度量

    千次阅读 2016-02-29 18:02:22
    图像相似性度量 【转载】原文出处:http://blog.sina.com.cn/s/blog_4a540be60100vjae.html   图像相似度计算主要用于对于两幅图像之间内容的相似程度进行打分,根据分数的高低来判断图像内容的相近程度。  ...
    
    分类:

    图像相似性度量

    【转载】原文出处:http://blog.sina.com.cn/s/blog_4a540be60100vjae.html

     

    图像相似度计算主要用于对于两幅图像之间内容的相似程度进行打分,根据分数的高低来判断图像内容的相近程度。

       可以用于计算机视觉中的检测跟踪中目标位置的获取,根据已有模板在图像中找到一个与之最接近的区域。然后一直跟着。已有的一些算法比如BlobTracking,Meanshift,Camshift,粒子滤波等等也都是需要这方面的理论去支撑。

      还有一方面就是基于图像内容的图像检索,也就是通常说的以图检图。比如给你某一个人在海量的图像数据库中罗列出与之最匹配的一些图像,当然这项技术可能也会这样做,将图像抽象为几个特征值,比如Trace变换,图像哈希或者Sift特征向量等等,来根据数据库中存得这些特征匹配再返回相应的图像来提高效率。

      下面就一些自己看到过的算法进行一些算法原理和效果上的介绍。

       (1)直方图匹配。

          比如有图像A和图像B,分别计算两幅图像的直方图,HistA,HistB,然后计算两个直方图的归一化相关系数(巴氏距离,直方图相交距离)等等。

          这种思想是基于简单的数学上的向量之间的差异来进行图像相似程度的度量,这种方法是目前用的比较多的一种方法,第一,直方图能够很好的归一化,比如通常的256个bin条的。那么两幅分辨率不同的图像可以直接通过计算直方图来计算相似度很方便。而且计算量比较小。

          这种方法的缺点:

             1、直方图反映的是图像像素灰度值的概率分布,比如灰度值为200的像素有多少个,但是对于这些像素原来的位置在直方图中并没有体现,所以图像的骨架,也就是图像内部到底存在什么样的物体,形状是什么,每一块的灰度分布式什么样的这些在直方图信息中是被省略掉得。那么造成的一个问题就是,比如一个上黑下白的图像和上白下黑的图像其直方图分布是一模一样的,其相似度为100%。

             2、两幅图像之间的距离度量,采用的是巴氏距离或者归一化相关系数,这种用分析数学向量的方法去分析图像本身就是一个很不好的办法。

             3、就信息量的道理来说,采用一个数值来判断两幅图像的相似程度本身就是一个信息压缩的过程,那么两个256个元素的向量(假定直方图有256个bin条)的距离用一个数值表示那么肯定就会存在不准确性。

       下面是一个基于直方图距离的图像相似度计算的Matlab Demo和实验结果.

    %计算图像直方图距离
    %巴氏系数计算法

    M=imread('1.jpg');
    N=imread('2.jpg');
    I=rgb2gray(M);
    J=rgb2gray(N);

    [Count1,x]=imhist(I);
    [Count2,x]=imhist(J);
    Sum1=sum(Count1);Sum2=sum(Count2);
    Sumup = sqrt(Count1.*Count2);
    SumDown = sqrt(Sum1*Sum2);
    Sumup = sum(Sumup);
    figure(1);
    subplot(2,2,1);imshow(I);
    subplot(2,2,2);imshow(J);
    subplot(2,2,3);imhist(I);
    subplot(2,2,4);imhist(J);
    HistDist=1-sqrt(1-Sumup/SumDown)

     

    图像相似度计算

       通过上图可以看到这种计算图像相似度的方法确实存在很大的弊端。然而很多人也对于这种方法进行了修改,比如FragTrack算法,具体可以参见这篇论文《》。其中对图像分成横纵的小块,然后对于每一个分块搜索与之最匹配的直方图。来计算两幅图像的相似度,融入了直方图对应位置的信息。但是计算效率上很慢。

      还有一种是计算一个图像外包多边形,一般得到跟踪图像的前景图后计算其外包多边形,根据外包多边形做Delauny三角形分解,然后计算每个三角形内部的直方图,对于这两个直方图组进行相似距离计算。这样就融入了直方图的位置信息。

     (2)数学上的矩阵分解

       图像本身就是一个矩阵,可以依靠数学上矩阵分解的一些知识来获取矩阵中一些代表这个矩阵元素值和分布的一些鲁棒性特征来对图像的相似度进行计算。

        最常用的一般是SVD分解和NMF分解。

       下面简单介绍下SVD分解的一些性质,如果需要探究的更深入一点网上有一些相关文献,读者可以去探究的更清楚:

     <1> 奇异值的稳定性

     <2> 奇异值的比例不变性

     <3> 奇异值的旋转不变性

     <4> 奇异值的压缩性        

        综上所述,可以看出奇异值分解是基于整体的表示。图像奇异值特征向量不但具有正交变换、旋转、位移、镜像映射等代数和几何上的不变性,而且具有良好的稳定性和抗噪性,广泛应用于模式识别与图像分析中。对图像进行奇异值分解的目的是:得到唯一、稳定的特征描述;降低特征空间的维数;提高抵抗干扰和噪声的能力。但是由于奇异值分解得到的奇异矢量中有负数存在所以不能很好的解释其物理意义。

      非负矩阵分解(NMF):

        NMF的主要思想是将非负矩阵分解为可以体现图像主要信息的基矩阵与系数矩阵,并且可以对基矩阵赋予很好的解释,比如对人脸的分割,得到的基向量正是人的“眼睛”,“鼻子”等主要概念特征,源图像表示为这些特征的加权组合。所以NMF算法也在人脸识别等场合中发挥着巨大的作用。

       下面一个实验说明了SVD+NMF数学上的这些分解在图像相似度判定方面的应用,这个跟我目前的课题有关细节方面就不再透露更多了。

    图像相似度计算

    图像相似度计算

    图像相似度计算

    当然基于数学上的矩阵特征值计算的还有很多方法比如Trace变换,不变矩计算等等,当然如果有需要这方面资料的同学可以找我,我可以进行相关的帮助。
    (3)基于特征点的图像相似度计算

        每一幅图像都有自己的特征点,这些特征点表征图像中比较重要的一些位置,比较类似函数的拐点那种,通常比较常用的有Harris角点和Sift特征点。那么将得到的图像角点进行比较,如果相似的角点数目较多,那么可以认为这两幅图像的相似程度较高。这里主要介绍基于Sift算子。

       对于Sift的原理和代码可以参见David Lower的网站。

    David G Lowe Sift网站

       那么我们就可以通过找到匹配点的个数来判断两幅图像是否一致,这个算法的好处是对于一个物体,两个不同角度下得到的照片依然可以找到很多的匹配点,我也一直认为是一个综合来说结果相对较为准确的方法,但是由于每个特征点需要计算一个长度不小的特征值,也造成了该算法的时间消耗比较大。所以不常用于实时的视频处理。这个算法还有一个好处就是可以通过找到的匹配特征点进行图像校正。关于使用Sift做图像校正请参见我的另外一篇博文。

       图像相似度计算

    图像相似度计算

    我当时对于比如左边图像,找到50个特征点,如果其中有60%以上的与右边的匹配上了,认为两幅图像是相似图像。

    图像相似度计算

    上图使用Sift找到的匹配对应点,然后通过仿射变换的6维参数计算,然后逆变换得到校正后的图像,效果蛮不错的,可见Sift对于抗旋转和噪声的效果确实很好。

    对于Sift也不能全部相信,一般使用RANSAC对于错误匹配点去除可以达到更好的效果,当然目前也有很多对SIFT进行改进的算法。希望有这方面研究的可以多多交流。

     

    展开全文
  • 图像相似性度量方法

    千次阅读 2017-02-12 13:03:30
    图像相似度计算主要用于对于两幅图像之间内容的相似程度进行打分,根据分数的高低来判断图像内容的相近程度。    可以用于计算机视觉中的检测跟踪中目标位置的获取,根据已有模板在图像中找到一个与之最接近的...
     图像相似度计算主要用于对于两幅图像之间内容的相似程度进行打分,根据分数的高低来判断图像内容的相近程度。
    
     
       可以用于计算机视觉中的检测跟踪中目标位置的获取,根据已有模板在图像中找到一个与之最接近的区域。然后一直跟着。已有的一些算法比如BlobTracking,Meanshift,Camshift,粒子滤波等等也都是需要这方面的理论去支撑。
     
      还有一方面就是基于图像内容的图像检索,也就是通常说的以图检图。比如给你某一个人在海量的图像数据库中罗列出与之最匹配的一些图像,当然这项技术可能也会这样做,将图像抽象为几个特征值,比如Trace变换,图像哈希或者Sift特征向量等等,来根据数据库中存得这些特征匹配再返回相应的图像来提高效率。
     
      下面就一些自己看到过的算法进行一些算法原理和效果上的介绍。
     
       (1)直方图匹配。
     
          比如有图像A和图像B,分别计算两幅图像的直方图,HistA,HistB,然后计算两个直方图的归一化相关系数(巴氏距离,直方图相交距离)等等。
     
          这种思想是基于简单的数学上的向量之间的差异来进行图像相似程度的度量,这种方法是目前用的比较多的一种方法,第一,直方图能够很好的归一化,比如通常的256个bin条的。那么两幅分辨率不同的图像可以直接通过计算直方图来计算相似度很方便。而且计算量比较小。
     
          这种方法的缺点:
     
             1、直方图反映的是图像像素灰度值的概率分布,比如灰度值为200的像素有多少个,但是对于这些像素原来的位置在直方图中并没有体现,所以图像的骨架,也就是图像内部到底存在什么样的物体,形状是什么,每一块的灰度分布式什么样的这些在直方图信息中是被省略掉得。那么造成的一个问题就是,比如一个上黑下白的图像和上白下黑的图像其直方图分布是一模一样的,其相似度为100%。
     
             2、两幅图像之间的距离度量,采用的是巴氏距离或者归一化相关系数,这种用分析数学向量的方法去分析图像本身就是一个很不好的办法。
     
             3、就信息量的道理来说,采用一个数值来判断两幅图像的相似程度本身就是一个信息压缩的过程,那么两个256个元素的向量(假定直方图有256个bin条)的距离用一个数值表示那么肯定就会存在不准确性。
     
       下面是一个基于直方图距离的图像相似度计算的Matlab Demo和实验结果.
    %计算图像直方图距离
    %巴氏系数计算法
    M=imread('1.jpg');
    N=imread('2.jpg');
    I=rgb2gray(M);
    J=rgb2gray(N);
    [Count1,x]=imhist(I);
    [Count2,x]=imhist(J);
    Sum1=sum(Count1);Sum2=sum(Count2);
    Sumup = sqrt(Count1.*Count2);
    SumDown = sqrt(Sum1*Sum2);
    Sumup = sum(Sumup);
    figure(1);
    subplot(2,2,1);imshow(I);
    subplot(2,2,2);imshow(J);
    subplot(2,2,3);imhist(I);
    subplot(2,2,4);imhist(J);
    HistDist=1-sqrt(1-Sumup/SumDown)
     
    图像相似度计算


     
      
     
       通过上图可以看到这种计算图像相似度的方法确实存在很大的弊端。然而很多人也对于这种方法进行了修改,比如FragTrack算法,具体可以参见这篇论文《》。其中对图像分成横纵的小块,然后对于每一个分块搜索与之最匹配的直方图。来计算两幅图像的相似度,融入了直方图对应位置的信息。但是计算效率上很慢。
      还有一种是计算一个图像外包多边形,一般得到跟踪图像的前景图后计算其外包多边形,根据外包多边形做Delauny三角形分解,然后计算每个三角形内部的直方图,对于这两个直方图组进行相似距离计算。这样就融入了直方图的位置信息。
     (2)数学上的矩阵分解
       图像本身就是一个矩阵,可以依靠数学上矩阵分解的一些知识来获取矩阵中一些代表这个矩阵元素值和分布的一些鲁棒性特征来对图像的相似度进行计算。
        最常用的一般是SVD分解和NMF分解。
       下面简单介绍下SVD分解的一些性质,如果需要探究的更深入一点网上有一些相关文献,读者可以去探究的更清楚:
     <1> 奇异值的稳定性
     <2> 奇异值的比例不变性
     <3> 奇异值的旋转不变性
     <4> 奇异值的压缩性        
        综上所述,可以看出奇异值分解是基于整体的表示。图像奇异值特征向量不但具有正交变换、旋转、位移、镜像映射等代数和几何上的不变性,而且具有良好的稳定性和抗噪性,广泛应用于模式识别与图像分析中。对图像进行奇异值分解的目的是:得到唯一、稳定的特征描述;降低特征空间的维数;提高抵抗干扰和噪声的能力。但是由于奇异值分解得到的奇异矢量中有负数存在所以不能很好的解释其物理意义。
      非负矩阵分解(NMF):
        NMF的主要思想是将非负矩阵分解为可以体现图像主要信息的基矩阵与系数矩阵,并且可以对基矩阵赋予很好的解释,比如对人脸的分割,得到的基向量正是人的“眼睛”,“鼻子”等主要概念特征,源图像表示为这些特征的加权组合。所以NMF算法也在人脸识别等场合中发挥着巨大的作用。
       下面一个实验说明了SVD+NMF数学上的这些分解在图像相似度判定方面的应用,这个跟我目前的课题有关细节方面就不再透露更多了。
    图像相似度计算


    图像相似度计算


    图像相似度计算
    当然基于数学上的矩阵特征值计算的还有很多方法比如Trace变换,不变矩计算等等,当然如果有需要这方面资料的同学可以找我,我可以进行相关的帮助。


    (3)基于特征点的图像相似度计算
        每一幅图像都有自己的特征点,这些特征点表征图像中比较重要的一些位置,比较类似函数的拐点那种,通常比较常用的有Harris角点和Sift特征点。那么将得到的图像角点进行比较,如果相似的角点数目较多,那么可以认为这两幅图像的相似程度较高。这里主要介绍基于Sift算子。
       对于Sift的原理和代码可以参见David Lower的网站。
    David G Lowe Sift网站
       那么我们就可以通过找到匹配点的个数来判断两幅图像是否一致,这个算法的好处是对于一个物体,两个不同角度下得到的照片依然可以找到很多的匹配点,我也一直认为是一个综合来说结果相对较为准确的方法,但是由于每个特征点需要计算一个长度不小的特征值,也造成了该算法的时间消耗比较大。所以不常用于实时的视频处理。这个算法还有一个好处就是可以通过找到的匹配特征点进行图像校正。关于使用Sift做图像校正请参见我的另外一篇博文。
       图像相似度计算


    图像相似度计算
    我当时对于比如左边图像,找到50个特征点,如果其中有60%以上的与右边的匹配上了,认为两幅图像是相似图像。


    图像相似度计算
    上图使用Sift找到的匹配对应点,然后通过仿射变换的6维参数计算,然后逆变换得到校正后的图像,效果蛮不错的,可见Sift对于抗旋转和噪声的效果确实很好。
    对于Sift也不能全部相信,一般使用RANSAC对于错误匹配点去除可以达到更好的效果,当然目前也有很多对SIFT进行改进的算法。希望有这方面研究的可以多多交流。
    如果觉得这篇博文对你有用,可以打赏一下。
    展开全文
  • 前言 之前写了一篇关于计算互信息的文章,基本的原理已经在那篇文章...%将图像B经过几何变换之后再计算互信息 %x:水平方向上的位移 %y:垂直方向上的位移 %ang:图像的旋转角度 %A:参考图像 %B:浮动图像 function

    前言

    之前写了一篇关于计算互信息的文章,基本的原理已经在那篇文章里面写出来了,这里就不在赘述了。在这片文章中将介绍采用的是直方图计算的方式,比之前的方法快了很多,软件的代码是Matlab实现的,这里贴出来与大家分享。

    1. 代码

    %将图像B经过几何变换之后再计算互信息
    %x:水平方向上的位移
    %y:垂直方向上的位移
    %ang:图像的旋转角度
    %A:参考图像
    %B:浮动图像
    function [mi]=PV(x, y, ang, A, B)
    a=A;
    a=double(a);
    b=B;
    b=double(b);
    [M,N]=size(a);
    hab=zeros(256,256);
    ha=zeros(1,256);
    hb=zeros(1,256);
    if max(max(a))~=min(min(a))
        a=(a-min(min(a)))/(max(max(a))-min(min(a)));
    else
        a=zeros(M,N);
    end
    if max(max(b))~=min(min(b))
        b=(b-min(min(b)))/(max(max(b))-min(min(b)));
    else
        b=zeros(M,N);
    end
    a=double(int16(a*255))+1;
    b=double(int16(b*255))+1;
    [width,height]=size(b);
    u=(width-1)/2;
    v=(height-1)/2;
    rad=pi/180*ang;
    t1=[1 0 0;0 1 0;x y 1];
    t2=[1 0 0;0 1 0;-u -v 1];
    t3=[cos(rad) -sin(rad) 0;sin(rad) cos(rad) 0;0 0 1];
    t4=[1 0 0;0 1 0;u v 1];
    T=t2*t3*t4*t1;
    tform=maketform('affine',T);
    coordinate_x=zeros(width,height);
    coordinate_y=zeros(width,height);
    for i=1:width
        for j=1:height
            coordinate_x(i,j)=i;
        end
    end
    for i=1:width
        for j=1:height
            coordinate_y(i,j)=j;
        end
    end
    [w z]=tforminv(tform,coordinate_x,coordinate_y);
    for i=1:width
        for j=1:height
            source_x=w(i,j);
            source_y=z(i,j);
            if (source_x>width-1||source_y>height-1||...
                    double(uint16(source_x))<=1||...
                    double(uint16(source_y))<=1)
                hab(a(1,1),a(1,1))=hab(a(1,1),a(1,1))+1;
            else
                m=fix(source_x);
                n=fix(source_y);
                index_b=b(i,j);
                index_a0=a(m,n);
                index_a1=a(m+1,n);
                index_a2=a(m,n+1);
                index_a3=a(m+1,n+1);
                dx=source_x-m;
                dy=source_x-n;
                hab(index_a0,index_b)=hab(index_a0,index_b)+(1-dx)*(1-dy);
                hab(index_a1,index_b)=hab(index_a1,index_b)+dx*(1-dy);
                hab(index_a2,index_b)=hab(index_a2,index_b)+(1-dx)*dy;
                hab(index_a3,index_b)=hab(index_a3,index_b)+dx*dy;
            end
        end
    end
    hadsum=sum(sum(hab));
    index=find(hab~=0);
    pab=hab/hadsum;
    Hab=sum(sum(-pab(index).*log2(pab(index))));
    pa=sum(pab');
    index=find(pa~=0);
    Ha=sum(sum(-pa(index).*log2(pa(index))));
    pb=sum(pab);
    index=find(pb~=0);
    Hb=sum(sum(-pb(index).*log2(pb(index))));
    fprintf('图片A/B的互信息为:%f, x=%f,y=%f,angle=%f \n', (Ha+Hb-Hab),x,y,ang);
    mi = Ha+Hb-Hab;            


    展开全文
  • 针对基于自示例几何不变性的图像超分辨率算法没有充分利用图像的纹理和边缘信息,且采用的PatchMatch图像块匹配算法容易陷入局部极小点的问题,提出了一种基于改进PatchMatch的自相似性图像超分辨率算法。...
  • 图像几何

    千次阅读 2019-04-14 21:50:39
    矩是描述图像特征的算子,如今矩技术已广泛应用于图像检索...几何矩对简单图像有一定的描述能力,他虽然在区分度上不如其他三种矩,但与其他几种算子比较起来,他极其的简单,一般只需用一个数字就可表达。所以,一...

    矩是描述图像特征的算子,如今矩技术已广泛应用于图像检索和识别 、图像匹配 、图像重建 、数字压缩 、数字水印及运动图像序列分析等领域。常见的矩描述子可以分为以下几种:几何矩、正交矩、复数矩和旋转矩。

    其中几何矩提出的时间最早且形式简单,对它的研究最为充分。几何矩对简单图像有一定的描述能力,他虽然在区分度上不如其他三种矩,但与其他几种算子比较起来,他极其的简单,一般只需用一个数字就可表达。所以,一般我们是用来做粗区分,用来过滤显然不相关的文档。

    1. 数学中的矩

    2. 图像的几何矩

    补充一点,懂的请无视:

    可能有人会问,为什么像素点的值表示的是概率?meanshift算法里用到的反向投影图就是概率图。什么又是反向投影图呢?举个例子。

        (1)例如灰度图像如下

          Image=

          0 1 2 3

          4 5 6 7

          8 9 10 11

          8 9 14 15

        (2)该灰度图的直方图为(bin指定的区间为[0,4),[4,7),[7,12),[12,16))

          Histogram=

          4 3 7 2

        (3)反向投影图

          Back_Projection=

          4 4 4 4

          3 3 3 7

          7 7 7 7

          7 7 2 2
          可见,反向投影图就是反应了颜色分布的概率图。

    3. 几个图像的不变矩

    这7个不变矩构成一组特征量,Hu.M.K在1962年证明了他们具有旋转,缩放和平移不变性。实际上,在对图片中物体的识别过程中,只有M1和M2不变性保持的比较好,其他的几个不变矩带来的误差比较大,有学者认为只有基于二阶矩的不变矩对二维物体的描述才是真正的具有旋转、缩放和平移不变性(M1和M2刚好都是由二阶矩组成的)。

    由Hu矩组成的特征量对图片进行识别,优点就是速度很快,缺点是识别率比较低。Hu不变矩一般用来识别图像中大的物体,对于物体的形状描述得比较好,图像的纹理特征不能太复杂,像识别水果的形状,或者对于车牌中的简单字符的识别效果会相对好一些。

     其他常见的图像矩

            连续正交矩:Zernike矩和Legendre矩

           离散正交矩:Tchebichef矩、Krawtchouk矩、Hahn矩、Racah矩等。

           虽然非正交矩形式简单 、计算快、易于实现,但抗噪性差、基函数非正交 ,且具有较大的信息冗余。连续正交矩的基函数正交,不仅其矩变换可逆 ,且易于图像重建 , 由于其各阶矩相互独立,故具有最小的信息冗余。其不足之处是该矩的基函数只在特定范围内是正交的。

    4. OpenCV相关函数

    由OPENCV提供计算中心距、归一化中心距和hu矩的函数为:

    void cvMoments(const CvArr*image,CvMoments*moments,int isBinary=0)
    
    double cvGetCentralMoment(CvMoments*moments,intx_order,int y_order)
    
    double cvGetNormalizedCentralMoment(CvMoments*moments,int x_order,int y_order);
    
    void cvGetHuMoments(CvMoments*moments,CvHuMoments*HuMoments);

    其中cvMoments和上面的cvContourMoments是同一个函数。

    同时OPENCV还提供了输入图像直接进行hu矩匹配的函数是:

    double cvMatchShapes(constvoid*object1,const void*object2,int method,double parameter=0);

    5. 小结

            图像的矩通常描述了该图像形状的全局特征,并被广泛的应用在各种图像处理、计算机视觉和机器人技术领域的目标识别与方位估计中。一阶矩与形状有关,二阶矩显示曲线围绕直线平均值的扩展程度,三阶矩则是关于平均值的对称性的测量。不变矩是图像的统计特性,满足平移、伸缩、旋转均不变的不变性。

            如果把图像看成是一块质量密度不均匀的薄板,其图像的灰度分布函数f(x,y)就是薄板的密度分布函数,则其各阶矩有着不同的含义,如零阶矩表示它的总质量;一阶矩表示它的质心;二阶矩又叫惯性矩,表示图像的大小和方向。事实上,如果仅考虑阶次为2的矩集,则原始图像等同于一个具有确定的大小、方向和离心率,以图像质心为中心且具有恒定辐射率的椭圆。

            由三阶矩以下矩构成的七个矩不变量具有平移、旋转和尺度不变性等等。当密度分布函数发生改变时,图像的实质没有改变,仍然可以看做一个薄板,只是密度分布有所改变。虽然此时各阶矩的值可能发生变化,但由各阶矩计算出的不变矩仍具有平移、旋转和尺度不变性。通过这个思想,可对图像进行简化处理,保留最能反映目标特性的信息,再用简化后的图像计算不变矩特征,可减少计算量。

            研究表明,只有基于二阶矩的不变矩对二维物体的描述才是真正的与旋转、平移和尺度无关的。较高阶的矩对于成像过程中的误差,微小的变形等因素非常敏感,所以相应的不变矩基本上不能用于有效的物体识别。即使是基于二阶矩的不变矩也只能用来识别外形相差特别大的物理,否则他们的不变矩会因为很相似而不能识别。

    原文

    展开全文
  • MATLAB--数字图像处理 图像几何变换

    千次阅读 2019-12-12 22:33:36
    图像几何变换 二、实验目的 1.熟悉MATLAB软件的使用。 2.掌握图像几何变换的原理及数学运算。 3.于MATLAB环境下编程实现对图片不同的几何变换。 三、实验内容 1.将图像图像中心顺时针旋转30度,旋转之后的图像...
  • 针对传统图像角点特征匹配算法的匹配速度慢且准确率低等问题,提出一种基于空间纹理相似性图像角点特征匹配算法。首先,计算图像目标上角点对应的空间距离矩阵;然后,通过计算图像角点的空间距离矩阵在对应角点...
  • 数字图像处理第五章数字图像处理---几何变换与图像标准(一)点变换(二)仿射变换(三)投影变换(四)应用于图像几何变换(五)MATLAB 中的图像坐标系统5.1 输出图像位置5.2 控制输出网格(六)图像内插6.1 二维...
  • 图像检索 图像检索图像检索图像检索图像检索图像检索图像检索图像检索图像检索图像检索
  • 针对单幅图像超分辨率(SR)复原样本资源不足和抗噪差的问题,提出一种基于结构自相似和形变块特征的单幅图像超分辨率算法。首先,该方法通过构建尺度模型,尽可能地扩展搜索空间,克服单幅图像超分辨率训练样本不足的...
  • 在做分类时常常需要估算不同样本之间的相似性度量(Similarity Measurement),这时通常采用的方法就是计算样本间的“距离”(Distance)。采用什么样的方法计算距离是很讲究,甚至关系到分类的正确与否。  本文的目的...
  • opencv对图像几何处理及旋转图像的python实现 简介:在深度学习领域,...几何变换的原理大多都是相似,只是变换矩阵不同,因此,我们以最常用的平移和旋转为例进行学习。 对于一个相素位置的变换方法如下 式中的...
  • 几何变换不改变图像的像素值, 只是在图像平面上进行像素的重新安排。适当的几何变换可以最大程度地消除由于成像角度、透视关系乃至镜头自身原因所造成的几何失真所产生的负面影响。几何变换常常作为图像处...
  • 图像几何变形一般分为两大类:系统和非系统。系统一般有传感器本身引起的,有规律可循和可预测,可以用传感器模型来校正,卫星地面接收站已经完成这项工作;非系统性几何变形是不规律的,它可以是传感器平台...
  • 图像变换几何模型

    千次阅读 2014-08-11 21:13:54
    变换模型是指将两幅二维影像之间存在的几何形变计算成能拟合两幅影像之间变 化的几何模型,即寻找...移、旋转、缩放和拉伸等形变,这些形变可抽象为刚性变换、相似变换、放射变换和投 影变换,图27为变换模型示意图
  • python+OpenCV图像处理(四)图像的简单几何变换

    万次阅读 多人点赞 2018-07-03 11:20:07
    图像的简单几何变换先看一下关于图像几何变换的简介:几何变换不改变图像的像素值,只是在图像平面上进行像素的重新安排。适当的几何变换可以最大程度地消除由于成像角度、透视关系乃至镜头自身原因所造成的几何失真...
  • 图像相关:cvArr cvMat IplImage 数据数组的维数, 与数据的通道数 见P46 (76) 2. 常见的矩阵操作熟悉 3. 数据的保存和读取 4. 图像的加载和显示 5. 视频的操作 6. 内存与序列 a. 内存存储器 ...
  • 遥感数字图像处理——第六章——几何校正

    千次阅读 多人点赞 2019-07-10 10:37:42
    几何畸变会给基于遥感图像的定量分析、变化检测、图像融合、地图测量或更新等处理带来误差,所以需要针对图像几何畸变进行校正,也就是几何校正。 三、几何畸变原因 ◆传感器内部因素:包括透镜、探测元件、采样速率...
  • 人脸对齐中的相似性变换

    千次阅读 2020-05-16 15:30:51
    人脸对齐获取图像中人脸的几何结构,基于平移、缩放和旋转得到对齐后的标准人脸。 在欧式几何中,如果两个物体具有相同的形状,或者其中一个物体的形状与另一个物体的镜像相同,那么这两个物体是相似的。更准确地说...
  • 缩放就是改变图像的大小,使用cv2.resize()函数。图像的大小可以手动指定,也可以使用缩放比例。cv2.resize()支持多种插值算法,默认使用的是cv2.INTER_LINEAR(不管放大和缩小)。缩小最适合使用:cv2.INTER_AREA,...
  • 一 原理 几何矩是由Hu(Visual pattern recognition by moment invariants)在1962年提出的,具有平移、旋转和尺度不变。 定义如下:① (p+q)阶不变矩定义:② 对于数字图像,离散化,定义为: ③ 归一化中心...
  • 数字图像处理之几何变换(2)(一)Matlab中的图像坐标系统(1)输出图像位置(2)控制输出网格(二)图像内插(1)二维内插(2)内插方法的比较 (一)Matlab中的图像坐标系统 在考虑几何变换的其他情况之前,...
  • 然后计算顶点邻域之间的相似性,作为顶点几何灰度值的权值,并对顶点的邻域顶点的几何灰度值进行加权平均,得到该顶点的最终几何灰度值;最后将顶点沿着其法矢量方向移动几何灰度值大小的距离,得到光顺后的三角网格...
  • 常见相似性度量及各种距离

    千次阅读 2018-08-14 12:52:50
    工程上的很多问题,比如最经典的最小二乘法、聚类问题、分类问题、视觉中的立体匹配以及图像检索等等,都要涉及到比较两个向量或者集合或者概率分布的相似程度,而比较相似程度又可以转化为比较它们之间两两的距离,...
  • 几何变换的原理大多都是相似,只是变换矩阵不同,因此,我们以最常用的平移和旋转为例进行学习。在深度学习领域,我们常用平移、旋转、镜像等操作进行数据增广;在传统CV领域,由于某些拍摄角度的问题,我们需要对...
  • 使用自动派生的图像特征或内容(用于用户指定的查询)从图像数据库中检索相似图像是一个活跃的研究领域。 为了获得局部视觉描述符,通常首先将图像划分为多个部分。 划分图像的最简单方法是使用分区,该分区将图像...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 19,987
精华内容 7,994
关键字:

几何图像相似性