为您推荐:
精华内容
最热下载
问答
  • 5星
    135.91MB qq_34351067 2021-04-16 14:11:28
  • 5星
    35.15MB HowardEmily 2021-01-14 11:50:13
  • 5星
    415KB weixin_43486940 2021-09-13 16:05:27
  • 5星
    3.04MB qq_34715954 2021-06-05 13:33:35
  • 5星
    326KB weixin_42120750 2021-04-26 16:06:08
  • 5星
    612KB weixin_42231537 2021-01-21 13:33:02
  • 5星
    11KB qq_44629109 2020-12-17 13:05:32
  • 5星
    923.93MB weixin_37932346 2021-04-23 20:19:48
  • 5星
    2.27MB weixin_44573410 2021-03-05 22:32:19
  • 5星
    203.91MB weixin_37932346 2021-04-24 01:17:07
  • 3.16MB qq_42233538 2020-06-05 00:14:54
  • 3星
    1.18MB m0_37863365 2018-03-13 20:30:30
  • 213.86MB kingle123 2018-10-24 10:29:24
  • 15.61MB Q1321814823 2021-03-07 00:27:12
  • 4星
    1.22MB yangtao_whut 2019-04-10 16:35:41
  • 1.05MB black_cat7 2020-06-22 09:09:05
  • 4星
    44KB zhangleiyigeren 2013-07-17 19:31:33
  • 3.26MB weixin_42139429 2021-02-04 04:01:27
  • 2.67MB xiaomaodiaoyu520 2021-04-24 04:01:30
  • 88.8MB jingjingliang1995 2019-04-02 22:01:43
  • 14.68MB weixin_38587473 2021-06-12 06:53:35
  • 1.33MB u013883025 2021-08-19 00:28:10
  • 85.48MB weixin_42123296 2021-03-11 19:10:38
  • 基于内容的图像检索系统的设计与实现 摘 要:图像作为最基本、最重要的多媒体信息形式之一,已经随着信息技术和网络技术的发展,而越来越广泛地应用于许多领域。如何提供一个快速的、有效的图像信息检索系统已成为...

    基于内容的图像检索系统的设计与实现

    摘 要:图像作为最基本、最重要的多媒体信息形式之一,已经随着信息技术和网络技术的发展,而越来越广泛地应用于许多领域。如何提供一个快速的、有效的图像信息检索系统已成为当今图像信息检索领域的研究热点之一。本检索系统是在Windows 7系统下,利用Matlab2014软件开发的基于图像内容的图像信息检索应用系统,该系统主要用完成对图像信息的快速检索。

    1 引言(Introduction)

    随着计算机硬件技术、软件技术以及网络技术的发展,集文字、声音、图像、视频、动画、通信等信息技术为一体的多媒体技术已成为当今信息交流的主体,同时交流的信息量也随之飞速增长。

    图像作为最基本,最重要的多媒体信息交流形式之一,已经随着信息技术和网络技术的发展,而越来越广泛地应用于人们的社会生活和工作密切相关的各个领域。传统的基于文本的图像检索系统已不能满足人们的要求,人们希望能够利用图像自身的可视化特征对图像信息进行检索。

    2 基于内容的图像检索的体系结构(Architecture of content-based image retrieval)

    基于内容的图像信息检索的体系结构主要分为两个子系统:图像特征提取子系统和信息查询子系统,如图1所示。

    information retrieval

    3 系统的设计与实现(Design and implementation of the system)

    3.1 系统设计的原则

    (1)尽量避免系统代码的重复开发。

    (2)尽可能提高系统的可扩展性。

    (3)系统功能采用模块化程序设计。

    (4)尽可能提高系统的人机接口交互性。

    3.2 系统的功能模块

    该检索系统由以下几个功能模块组成(图2):查询与显示模块,特征提取和描述模块,相似匹配模块,图像信息库管理模块[1]。

    (1)查询与显示模块

    查询与显示功能模块的主要功能是输入示例图像及图像的各种特征值并将这些信息传送给特征提取和描述模块,然后根据相似匹配模块传送回的图像的相似度,将最相似的前15幅图像和相似度按照顺序在窗口的显示区内显示出来。其中示例图像可以是库中图像,也可以是图像库外任何路径下的图像。另外在设置示例图像的特征值时可以采用单一的特征,如颜色、纹理、形状,也可是多个特征的组合,而且每个特征还可以设置不同的权重值[1]。

    (2)特征提取和描述模块

    特征提取和描述模块是该系统的后台模块之一,它的主要的功能是将用户提供的示例图像的特征及查询要求通过该模块转化为对图像内容的描述,然后将这些有关示例图像的图像内容的描述传送到相似匹配模块。

    (3)相似匹配模块

    相似匹配模块是该系统的另一个后台模块,其功能是将特征提取和描述模块中传送来的示例图像的图像内容的描述与图像库中图像的内容描述进行匹配,以确定它们在内容上的一致性和相似性,从而检索出所需要的图像[2]。该系统在利用颜色特征检索时,使用直方图相交法进行相似性匹配;利用纹理和形状特征检索时均采用欧式距离作为相似性匹配。

    (4)图像信息库管理模块

    图像信息库管理模块的主要功能是对图像信息库中的数据进行管理与维,信息库中包括原始图像文件库和图像特征数据文件库。图像信息库中的文件以分类文件夹形式存放,由操作系统来管理。建立图像特征数据文件库的目的是提高检索的速度。在图像文件存入图像文件库后,将其各种特征数据分别入图像特征数据文件库,在检索时,只需计算示例图像的特征,其他特征可以从特征数据文件中直接得到。

    3.3 系统的工作流程

    系统运行的工作流程如图3所示。

    3.4 系统的工作窗口

    本系统的工作窗口如图4所示。该窗口分为上、中、下三个部分,上部分是菜单栏和工具栏,中间部分是示例图像显示和查询信息设置按钮区,下部分是检索结果显示区。

    4 结论(Conclusion)

    基于内容的图像检索在对图像内容进行描述时主要采用了底层视觉特征,例如颜色、形状、纹理和对象空间位置关系等。图像的颜色、纹理和形状特征从不同角度反映了图像的属性,在对图像内容的描述方面各有自己的特点,一种特征只能描述图像的部分属性,对图像内容的描述也比较片面,缺少足够的区分信息,在图像尺寸或方向有较大变化时很难取得理想的检索效果[3]。为了有效提高检索性能,在实际应用中通常采用多个特征综合使用的检索方式进行检索操作。

    参考文献(References)

    [1] 吴柳蓉.基于内容的图像检索研究[D].广西大学,2008:37-38.

    [2] 刘茜.图像检索空间关系技术的研究[D].华北电力大学,2008:43-44.

    [3] 郭健.基于内容的图像检索技术研究[D].贵州大学,2006:17.


    v2-102ff7aa2d975dc37ef5d4f74d4585d9_b.jpg



    v2-559fec28d864f1049c7bd4df4dab91d7_b.jpg

    展开全文
    m0_59833680 2021-08-25 11:59:21
  • 4.44MB weixin_43687366 2019-03-10 19:41:29
  • 3.26MB weixin_38626179 2021-05-15 23:25:42
  • 4星
    39.42MB weixin_39260607 2017-12-05 18:02:37
  • 4.31MB u013883025 2021-08-19 00:53:15
  • 462KB oceandreami 2018-06-25 11:32:50
  • 373KB weixin_39709134 2021-08-11 09:31:50
  • vc++实现基于内容的图像检索系统(一) 系统设计 下载数据集 检索用的图像数据,下载网址: http://cecas.clemson.edu/~stb/research/headtracker/seq/ http://mmlab.ie.cuhk.edu.hk/projects/FSRCNN.html/ ...

    vc++实现基于内容的图像检索系统(一)

    系统设计

    下载数据集

    检索用的图像数据,下载网址:

    http://cecas.clemson.edu/~stb/research/headtracker/seq/

    http://mmlab.ie.cuhk.edu.hk/projects/FSRCNN.html/

    https://www.cnblogs.com/alexanderkun/p/4197796.html/

    数据集保存在images文件夹里。

    2.2 系统流程框架

    (1)图像检索系统工作流程

    基于内容的图像检索技术是对输入的图像进行分析并分类统一建模,提取其颜色、形状和空间位置等特征,检索时,用户提交查询的源图像,通过用户接口设置查询条件,可以采用一种或几种的特征组合来表示,然后在图像检索库中提取出查询到的所需关联图像,按照相似度从大到小的顺序,反馈给用户。用户可根据自己的满意程度,选择是否修改查询条件,继续查询,以达到满意的查询结果。具体操作为:

    a.输入带检索图像。

    b.选择检索库路径。

    c.选择检索方式:基于颜色特征、形状特征、纹理特征或者综合特征。

    d.点击【开始检索】按钮即可得到检索结果。

    e.退出。

    (2)图像检索系统框架

    基于内容的图像检索系统框架如图1所示。系统的核心是图像特征数据库。图像特征既可以从图像本身提取得到,又可以通过用户交互获得,并用于计算图像之间的相似度计算。
    系统框架应主要包含以下几个基本功能模块:输入待检索图像、选择检索库路径、检索方式选择、检索结果浏览等。
    (3)图像检索系统实现设计
    主要代码模块有:
    界面设计模块:窗口设计、对话框设计、组件设计。
    交互模块:映像检索消息处理。
    预处理模块:设置并显示待检索图像、选择检索库路径、扫描检索库中的图像个数、扫描当前目录中的图像个数、检索方式设置,由RGB 空间结构转换为HSV空间。
    功能模块:相似度计算、提取不变矩函数、计算颜色直方图、计算累计直方图、计算颜色矩。
    结果处理模块:检索结果浏览。
    在这里插入图片描述

    基于颜色特征的检索——颜色直方图
    (一)颜色空间转换:由RGB 空间结构转换为HSV空间;(二)计算颜色直方图:变量m_graph记录值的变化;
    (三)保存颜色直方图:保存在feature_color。
    具体方法在general()函数中实现:

    
    
    void
    CImagetrievalDlg::general(CString pathfile,int mode)
    
    {     
    
        CBitmap hbmp;
    
           HBITMAP hbitmap; 
    
           //装载资源
    
        hbitmap=(HBITMAP)::LoadImage
    (::AfxGetInstanceHandle(),pathfile,IMAGE_BITMAP,
    
                             0,0,LR_LOADFROMFILE|LR_CREATEDIBSECTION);  
    
           hbmp.Attach(hbitmap);    
    
           //获取图像格式
    
           BITMAP bm;  
    
           hbmp.GetBitmap(&bm);    
    
           //创建临时的内存DC对象
    
           CDC dcMem;      
    
           dcMem.CreateCompatibleDC(GetDC());    
    
           dcMem.SelectObject(hbmp);
    
           int width=bm.bmWidth;
    
           int height=bm.bmHeight;
    
           int totalnum= height *width;
    
           //初始化
    
           long m_graph[3][12];
    
           for(int i=0;i<3;i++)
    
                  for(int j=0;j<12;j++)
    
                  {
    
                    
    m_graph[i][j]=0;
    
                    
    if(mode==1)
    
                            feature_color[i][j]=0.0;
    
                    
    else
    
                            feature_color_1[i][j]=0.0;
    
                  }
    
           COLORREF color;
    
           double h=0,s=0,v=0;
    
           //计算颜色直方图
    
           for(long y=0;y<height;y++)
    
           {     
    
                  for(long x=0;x<width;x++)
    
                  {                   
    
                         color=dcMem.GetPixel(x,y);
    
                         //颜色空间转换
    
                         RGBToHSV(GetRValue(color),GetGValue(color),GetBValue(color),&h,&s,&v);
    
                     
    int result_h=(int)(6*h/PI);
    
                         if( result_h ==12)
    
                                m_graph[0][11]++;
    
                         else
    
                     m_graph[0][result_h]++;
    
                int result_s=(int)(s*12);
    
                         if( result_s ==12)
    
                                m_graph[1][11]++;
    
                         else
    
                             m_graph[1][result_s]++;
    
                int result_v=(int)(v*12);
    
                         if( result_v ==12)
    
                                m_graph[2][11]++;
    
                         else
    
                             m_graph[2][result_v]++;
    
                  }
    
           }
    
           //保存颜色直方图
    
           if(mode==1)
    
           {
    
           for(int i=0;i<3;i++)
    
                  for(int j=0;j<12;j++)
    
                         feature_color[i][j]=((float)m_graph[i][j])/((float)totalnum);
    
           }
    
           else
    
           {
    
           for(int i=0;i<3;i++)
    
                  for(int j=0;j<12;j++)
    
                         feature_color_1[i][j]=((float)m_graph[i][j])/((float)totalnum);
    
           }
    
    }
    
    
    

    基于颜色特征的检索——累计直方图

    (一)颜色空间转换:由RGB 空间结构转换为HSV空间;(二)计算累计直方图:变量m_graph记录值的变化;(三)保存累计直方图:保存在feature_color。具体方法在succession()函数中实现:

    
    
    void
    CImagetrievalDlg::succession(CString pathfile,int mode)
    
    {     
    
        CBitmap hbmp;
    
           HBITMAP hbitmap; 
    
           //装载资源
    
        hbitmap=(HBITMAP)::LoadImage
    (::AfxGetInstanceHandle(),pathfile,IMAGE_BITMAP,
    
                            0,0,LR_LOADFROMFILE|LR_CREATEDIBSECTION);  
    
           hbmp.Attach(hbitmap);    
    
           //获取图像格式
    
           BITMAP bm;  
    
           hbmp.GetBitmap(&bm);    
    
           //创建临时的内存DC对象
    
           CDC dcMem;      
    
           dcMem.CreateCompatibleDC(GetDC());    
    
           dcMem.SelectObject(hbmp);
    
           int width=bm.bmWidth;
    
           int height=bm.bmHeight;
    
           int totalnum= height *width;
    
     
    
           long m_graph[3][12];
    
           for(int i=0;i<3;i++)
    
                  for(int j=0;j<12;j++)
    
                  {
    
                    
    m_graph[i][j]=0;
    
                    
    if(mode==1)
    
                            feature_color[i][j]=0.0;
    
                    
    else
    
                            feature_color_1[i][j]=0.0;
    
                  }
    
           COLORREF color;
    
           double h=0,s=0,v=0;
    
     
    
           for(long y=0;y<height;y++)
    
           {     
    
                  for(long x=0;x<width;x++)
    
                  {                   
    
                         color=dcMem.GetPixel(x,y);
    
                         RGBToHSV(GetRValue(color),GetGValue(color),GetBValue(color),&h,&s,&v);
    
                     
    int result_h=(int)(6*h/PI);
    
                         if( result_h ==12)
    
                                m_graph[0][11]++;
    
                         else
    
                     m_graph[0][result_h]++;
    
     
    
                int result_s=(int)(s*12);
    
                         if( result_s ==12)
    
                                m_graph[1][11]++;
    
                         else
    
                             m_graph[1][result_s]++;
    
     
    
                int result_v=(int)(v*12);
    
                         if( result_v ==12)
    
                                m_graph[2][11]++;
    
                         else
    
                             m_graph[2][result_v]++;
    
                  }
    
           }     
    
           long temp[3][12];
    
           for(int i=0;i<3;i++)
    
           {
    
                  for(int j=0;j<12;j++)
    
                  {
    
                    
    temp[i][j]=m_graph[i][j];
    
                  }
    
           }
    
           for(int i=0;i<3;i++)
    
           {
    
           for(int j=0;j<12;j++)
    
             
    {
    
                
    for(int k=0;k<j;k++)
    
                   
    {
    
                       m_graph[i][j]+=temp[i][k];
    
                   
    }
    
             
    }
    
           }
    
           if(mode==1)
    
           {
    
           for(int i=0;i<3;i++)
    
                  for(int j=0;j<12;j++)
    
                         feature_color[i][j]=((float)m_graph[i][j])/((float)totalnum);
    
           }
    
           else
    
           {
    
           for(int i=0;i<3;i++)
    
                  for(int j=0;j<12;j++)
    
                         feature_color_1[i][j]=((float)m_graph[i][j])/((float)totalnum);
    
           }
    
    }
    
    
    
    展开全文
    qq_36791003 2019-07-09 10:42:22
  • 4星
    14KB juanj 2013-07-04 15:04:59
  • 颜色特征是在图像检索中应用最为广泛的视觉特征,主要原因在于颜色往往和图像中所包含的物体或场景十分相关。此外,颜色特征对图像本身的尺寸、方向、视角的依赖性较小,从而具有较高的检索性。利用颜色特征进行检索...

    1.系统设计

    1.1概念介绍

    1.1.1图像颜色特征

    颜色特征是在图像检索中应用最为广泛的视觉特征,主要原因在于颜色往往和图像中所包含的物体或场景十分相关。此外,颜色特征对图像本身的尺寸、方向、视角的依赖性较小,从而具有较高的检索性。利用颜色特征进行检索的方法主要基于直方图,如:直方图相交法,比例直方图法,距离法,参考颜色表法和聚类算法,累计直方图法,此外,还有HSI中心矩法。

    1. RGB模型

    RGB色彩模式是工业界的一种颜色标准,是通过对红(R)、绿(G)、蓝(B)三个颜色通道的变化以及它们相互之间的叠加来得到各式各样的颜色的,RGB即是代表红、绿、蓝三个通道的颜色,这个标准几乎包括了人类视力所能感知的所有颜色,是目前运用最广的颜色系统之一。

                                                                                       图1 RGB颜色空间

    1. HSI模型

    HSI模型是美国色彩学家孟塞尔(H.A.Munseu)于1915年提出的,它反映了人的视觉系统感知彩色的方式,以色调、饱和度和亮度三种基本特征量来感知颜色。

    图2 HSI颜色空间

     

    1. RGB转换成HSI(几何推导法):

     

    1. H的前三阶中心矩,S、I类似:

    1.1.2图像纹理特征

    图像纹理特征纹理特征是一种不依赖于颜色或亮度的反映图像中同质现象的视觉特征。纹理特征包含了物体表面结构组织排列的重要信息以及它们与周围环境的联系。用户可通过提交包含有某种纹理的图像来查找含有相似纹理的其他图像。从人类的感知经验出发, 纹理特征主要有粗糙性、方向性和对比度。纹理分析方法,大致可分为两类:1)统计方法。用于分析像木纹、沙地、草坪等细致而不规则的物体,并根据关于像素间灰度的统计性质对纹理规定特征及特征与参数间的关系。2)结构方法。适于像布料的印刷图案或砖瓦等一类元素组成的纹理及其排列比较

    规则的图案, 然后根据纹理基元及其排列规则来描述纹理的结构及特征、特征与参数间的关系。

    (1)灰度共生矩阵

    灰度共生矩阵是图像中相距为D的两个灰度像素同时出现的联合概率分布。通过计算灰度图像得到它的共生矩阵,然后透过计算这个共生矩阵得到矩阵的部分特征值,来分别代表图像的某些纹理特征。灰度共生矩阵能反映图像灰度关于方向、相邻间隔、变化幅度的综合信息,它是分析图像的局部模式和它们排列规则的基础。

    1. 矩阵一致性

    是灰度共生矩阵元素值的平方和,也称之为能量,反映了图像灰度分布均匀程度和纹理粗细度。

               

    1. 矩阵对比度

    度量矩阵的值是如何分布和图像中局部变化的多少,反应了图像的清晰度和纹理的沟纹深浅。纹理的沟纹越深,反差越大,效果清晰;反之,对比值小,则沟纹浅,效果模糊。

           

    1. 矩阵熵

    是图像包含信息量的随机性度量。当共生矩阵中所有值均相等或者像素值表现出最大的随机性时,熵最大;因此熵值表明了图像灰度分布的复杂程度,熵值越大,图像越复杂。

          

    1. 矩阵相关性

    也称为同质性,用来度量图像的灰度级在行或列方向上的相似程度,因此值的大小反应了局部灰度相关性,值越大,相关性也越大。

             

    1.1.3图像指纹特征

    pHash:感知哈希算法(Perceptual hash algorithm),它的作用是对每张图片生成一个"指纹"(fingerprint)字符串,然后比较不同图片的指纹。结果越接近,就说明图片越相似。

    pHash的工作过程:

    (1)缩小尺寸:pHash以小图片开始,但图片大于8*8,32*32是最好的。这样做的目的是简化了DCT的计算,而不是减小频率。

    (2)简化色彩:将图片转化成灰度图像,进一步简化计算量。

    (3)计算DCT:计算图片的DCT变换,得到32*32的DCT系数矩阵。

    (4)缩小DCT:虽然DCT的结果是32*32大小的矩阵,但我们只要保留左上角的8*8的矩阵,这部分呈现了图片中的最低频率。

    (5)计算平均值:如同均值哈希一样,计算DCT的均值。

    (6)计算hash值:这是最主要的一步,根据8*8的DCT矩阵,设置0或1的64位的hash值,大于等于DCT均值的设为”1”,小于DCT均值的设为“0”。组合在一起,就构成了一个64位的整数,这就是这张图片的指纹。

    结果并不能告诉我们真实性的低频率,只能粗略地告诉我们相对于平均值频率的相对比例。只要图片的整体结构保持不变,hash结果值就不变。能够避免伽马校正或颜色直方图被调整带来的影响。与均值哈希一样,pHash同样可以用汉明距离来进行比较。(只需要比较每一位对应的位置并算计不同的位的个数)

     

    1.1.4 图像形状特征

    形状不变矩法

    作为一组关于形状的统计值,矩不变量的表示形式有多种,如 Hu 矩,具有对图像的旋转、平移和尺度变化的不变性。基本思想就是用图像的 Hu 不变矩 u1~u7 和离心率 e 作为图像的形状特征索引,使用适当的相似性距离定义,计算出两幅图像的相似性距离。当距离足够小时,就认为两幅图像是相似的。

     

    1.1.5距离算法

    1. 余弦定理

    通过夹角的大小,来判断向量的相似程度。夹角越小,就代表越相似。余弦值越接近1,就表明夹角越接近0度,也就是两个向量越相似,这就叫"余弦相似性"。

                    

    (2)汉明距离

    对两个字符串进行异或运算,并统计结果为1的个数,即两个等长字符串的二进制对应不相同的位个数,那么这个数就是汉明距离。距离越小图片越相似。

    1.2实现工具

    (1)系统开发工具:java

    (2)数据库开发工具:MySQL

     

    1.3设计流程

    1.3.1工作流程

    基于内容的图像检索技术是对输入的图像进行分析并分类统一建模,提取其颜色、形状、纹理、轮廓和空间位置等特征,建立特征索引, 存储于特征数据库中。检索时,用户提交查询的源图像,通过用户接口设置查询条件,可以采用一种或几种的特征组合来表示,然后在图像数据库中提取出查询到的所需关联图像,按照相似度从大到小的顺序,反馈给用户。用户可根据自己的满意程度,选择是否修改查询条件,继续查询,以达到满意的查询结果。

    1.3.2系统框架

    图1 基于内容的图像检索框架

    图2 基于内容的图像检索系统逻辑模型

    1.3.3数据库构建与实现

    图像数据库包括两个部分:图像库和特征库。图像库是图像的集合,存储数字化的图像信息,具体在系统实现中,可以存放图像的路径和文件名称来表示;特征库存储图像中提取出的特征表达的相关信息,并为提取出的各个特征建立索引,且和图像间存在一一对应的关系。

    (1)图像数据库(本系统导入了7709张图片)

    图像是图像元灰度值的纪录, 以行列数据矩阵表示, 一般信息量比较大。直接读取图像的信息存入数据库中, 不但增加了数据库的容量, 而且增加了计算机的负担。若直接根据图像的路径名称建立图像地址库, 可有效提高计算机的计算效率。当需要提取图像时, 再根据图像的地址, 对图像进行检索, 平时, 只需对图像的基本信息进行管理。Path.txt导入数据库的结果如图3所示:

    图3 图库中每幅图像的路径

     

    1. 图像特征数据库

    通过执行各个特征操作类,读取图像、计算图像特征值、特征值入库。生成表如下:

     

    图4 颜色特征表

    图5 纹理特征表

    图6 Hash特征表

    图7 形状特征表

    2.所采用算法思想

    2.1图像预处理

    图像去躁——中值滤波

    2.2基于颜色图像检索

    (1)将图像从RGB颜色空间转至HSI颜色空间;

    (2)对HSI模型的三个分量分别求其前三阶中心矩,得到9个特征值。

    2.3基于纹理图像检索

    (1)图像灰度化Gray=0.30*R+0.59*G+0.11*B;

    (2)降低图像灰度等级,把图像256个灰度级按顺序分为8个区间;

    (3)然后获得图像 0度,45度,90度,135度四个方向的灰度共生矩阵;

    (4)求每个灰度共生矩阵的纹理一致性,纹理对比度,纹理熵;

    (5)求每个灰度共生矩阵的四个值的期望和标准差,得到8个特征值。

    2.4基于指纹图像检索(phash)

    (1)将图像缩小为32*32大小;

    (2)对32*32大小图像灰度化Gray=0.30*R+0.59*G+0.11*B;

    (3)对32*32大小图像进行离散余弦变换;

    计算DCT:对图像进行二维离散余弦变换:

    对图像进行二维离散余弦变换(2D-DCT)的步骤

         1.获得图像的二维数据矩阵f(x,y);

         2.求离散余弦变换的系数矩阵A;

         3.求系数矩阵对应的转置矩阵AT;

         4.根据公式F=A[f(x,y)]AT计算离散余弦变换;

    (4)用32*32大小图片前面8*8大小图片处理并计算这64个像素的均值;

    只保留矩阵左上8*8区域

    (5)8*8的像素值中大于均值的用1表示,小于均值的用0表示,得到一个64位二进制码作为该图像的phash值。

    2.5基于形状图像检索

    算法步骤:

    (1)图像灰度化   Gray=0.30*R+0.59*G+0.11*B;

    (2)用中值滤波算法对图像进行平滑滤波,用于消除噪声干扰,其中需要用到排序算法,将 3*3 窗口的像素值进行排序取中间值;

    (3)用 sobel 算子对图像进行锐化;

    Sobel 算子:

    X 方向:

    Y 方向:

    (4)对锐化后的图像用迭代阈值法进行二值化;

    ①选择一个初始阈值 t1,根据 t1将图像分割为 G1和 G2两部分,G1包含所有小于等于t1的 像素,G2包含所有大于 t1像素; ②分别求出 G1和 G2的平均灰度值 u1和u2;

    ③计算新的阈值t2=( u1+ u2)/2;

    ④如果| t1- t2|<=t0(t0为预先指定的很小的正数),即迭代过程中前后两次阈值很接近时, 中止迭代,否则t1= t2,重复上述过程。

    (5)计算图像的 Hu 不变矩和离心率作为特征值,并对其进行归一化;

    (6)将特征值存如图像特征数据库中。

    3.详细实现过程

    3.1图像预处理(prepare类)

    3.1.1图像去躁——中值滤波

    1. 使用bat文件生成txt文件,存储图像地址;
    2. 读取txt文件中的每条字符串,通过获得的字符串寻找图像地址,遍历每张图片;
    3. 获得图像的RGB值,用一维数组保存;
    4. 获取RGB分量,对每个分量使用统一的3*3模板,遍历像素值;
    5. 用数组保存每次取得的像素值,按从小到大排序,取中间值作为该分量遍历框的中心值;
    6. 给图片设置新的RGB值。
    7. 优点:抑制效果很好,画面的清晰度基本保持;
    8. 缺点:对高斯噪声的抑制效果不是很好

     

    3.1.2统一图像尺寸

    1. 为去躁后的每张图片设置统一的尺寸;
    2. 重构图像,并覆盖原来的图像。

     

    3.2存储图片路径

    连接数据库,将txt文件中的路径导入数据库“image”表,表中包含id,address两列,id递增。

    注:检索时通过匹配特征值获取id值,通过id值查询address图片地址,id唯一标识。

     

    3.3存储特征值

    3.3.1存储颜色特征值

    1. 获得图像的RGB分量,计算HSI分量的值;
    2. 一次循环获得H的一阶中心矩,S、I类似;
    3. 二次循环获得H的二、三阶中心矩,S、I类似;
    4. 保存图像的9个特征值;
    5. 连接数据库,将9个特征值插入数据库“color”表,表中包含id,color1,color2,color3,color4,color5,color6,color7,color8,color9共10列,id递增。

    3.3.2存储纹理特征值

    (1)图像灰度化Gray=0.30*R+0.59*G+0.11*B;

    (2)降低图像灰度等级,把图像256个灰度级按顺序分为8个区间;

    (3)然后获得图像0度,45度,90度,135度四个方向的灰度共生矩阵;

    (4)求每个灰度共生矩阵的纹理一致性,纹理对比度,纹理熵;

    (5)求每个灰度共生矩阵的四个值的期望和标准差,得到8个特征值。

    1. 连接数据库,将8个特征值插入数据库“texture”表,表中包含id,exp1,exp2,exp3,exp4,stadv1,stadv2,stadv3,stadv4共9列,id递增。

    3.3.3存储指纹特征值

    (1)将图像缩小为32*32大小;

    (2)对32*32大小图像灰度化Gray=0.30*R+0.59*G+0.11*B;

    (3)对32*32大小图像进行离散余弦变换;

    (4)用32*32大小图片前面8*8大小图片处理并计算这64个像素的均值;

    (5)8*8的像素值中大于均值的用1表示,小于均值的用0表示,得到一个64位二进制码作为该图像的phash值。

    (6)连接数据库,将特征值插入数据库“hash”表,表中包含id,feature两列,id递增。

    3.3.4 存储形状特征值

    (1)图像灰度化Gray=0.30*R+0.59*G+0.11*B;

    (2)灰度图二值化,空白为0,其余为1

    (3)计算重心、二阶矩、三阶矩(中心矩),中心矩规范化

    (4)计算不变矩

    (5)连接数据库,将7个特征值插入数据库“shape”表,表中包含id,shape0,shape1,shape2,shape3,shape4,shape5,shape6共8列,id递增。

    3.4检索图片

    3.4.1基于颜色检索图片

    1. 点击按钮获得待匹配文件路径;
    2. 根据路径计算对应图片的颜色的9个特征值;
    3. 连接数据库,查询颜色数据库“color”的所有值;
    4. 遍历查询结果,分别获得每行第2~10列的9个特征值并保存;
    5. 将计算得到的9个特征值分别与获得的数据库中每行9个特征值进行匹配(使用余弦定理);
    6. 指定一个序号从1开始,用TreeMap保存该序号与匹配的返回值;
    7. 按TreeMap的Value值从大到小进行排序,取前12个列表序号,保存为id值;
    8. 根据id值查询“image”表得到对应的address路径;
    9. 通过路径弹窗显示对应的图片。

    3.4.2基于纹理检索图片

    (1)点击按钮获得待匹配文件路径;

    (2)根据路径计算对应图片的纹理的8个特征值;

    (3)连接数据库,查询纹理数据库“texture”的所有值;

    (4)遍历查询结果,分别获得每行第2~9列的8个特征值并保存;

    (5)将计算得到的8个特征值分别与获得的数据库中每行8个特征值进行匹配(使用余弦定理);

    (6)指定一个序号从1开始,用TreeMap保存该序号与匹配的返回值;

    (7)按TreeMap的Value值从大到小进行排序,取前12个列表序号,保存为id值;

    (8)根据id值查询“image”表得到对应的address路径;

    (9)通过路径弹窗显示对应的图片。

    3.4.3基于指纹检索图片

    (1)点击按钮获得待匹配文件路径;

    (2)根据路径计算对应图片的hash特征值;

    (3)连接数据库,查询hash数据库“hash”的所有值;

    (4)遍历查询结果,分别获得每行第2列的特征值并保存;

    (5)将计算得到的特征值分别与获得的数据库中每行特征值进行匹配(使用汉明距离);

    (6)指定一个序号从1开始,用TreeMap保存该序号与匹配的返回值;

    (7)按TreeMap的Value值从大到小进行排序,取前12个列表序号,保存为id值;

    (8)根据id值查询“image”表得到对应的address路径;

    (9)通过路径弹窗显示对应的图片。

    3.4.4 基于形状检索图片

    (1)点击按钮获得待匹配文件路径;

    (2)根据路径计算对应图片的纹理的7个特征值;

    (3)连接数据库,查询形状数据库“shape”的所有值;

    (4)遍历查询结果,分别获得每行第2~8列的7个特征值并保存;

    (5)将计算得到的8个特征值分别与获得的数据库中每行7个特征值进行匹配(使用余弦定理);

    (6)指定一个序号从1开始,用TreeMap保存该序号与匹配的返回值;

    (7)按TreeMap的Value值从大到小进行排序,取前12个列表序号,保存为id值;

    (8)根据id值查询“image”表得到对应的address路径;

    (9)通过路径弹窗显示对应的图片。

     

    4.实验结果分析

    4.1预处理降噪和改变尺寸

        

    图7 图像预处理

     

    4.2图片检索结果

    4.2.1操作界面

    初始界面(如图8):

    图8 初始界面

     

     

    点击浏览后弹窗选择文件(如图9):

    图9 选择图片

     

    选择文件后,将文件地址显示在Textfield框中,并显示当前图像(如图10):

    图10 显示已选路径和图片

     

    4.2.2基于颜色检索结果

    点击“基于颜色检索”按钮,按相似度从大到小循环显示图片(如图11):

    图11 基于颜色检索结果

    因为输入图片的颜色较为复杂,因此返回的结果低于预期,但返回的结果集之间差距较小。

    4.2.3基于纹理检索结果

    点击“基于纹理检索”按钮,按相似度从大到小循环显示图片(如图12):

    图12 基于纹理检索结果

    结果较为准确,除了极个别的结果明显与输入不符以外,其它结果都较为准确,可以看出基于纹理检索的识别率较高。

    4.2.4基于指纹检索结果

    点击“基于指纹检索”按钮,按相似度从大到小循环显示图片(如图13):

    图13 基于指纹检索结果

    结果较为准确,能保证第一个结果准确,但是中间有误差。

    4.2.4基于形状检索结果

    点击“基于形状检索”按钮,按相似度从大到小循环显示图片(如图14):

    图14 基于形状检索结果

    除了第一个结果,其它结果并不准确,因此基于该方法有待改善。

     

    4.3结果分析

    1. 基于颜色的检索

    矩是用来描述随机变量的某些特征的数字,这里分别计算了HSI的前三阶中心矩,用来作为图像像素的特征值。

    利用余弦定理计算9个特征值的相似度,对于颜色比较单一的图像更为准确;

    1. 基于纹理的检索

    该方法研究了图像纹理中灰度级的空间依赖关系。它对灰度的分布特性是通过对灰度值不同的像素的分布来表示的,所以对那些灰度比较集中,轮廓比较鲜明的图像的识别能力更强。

    利用余弦定理计算8个特征值的相似度,准确度比较高。

    1. 基于指纹的检索

    它构成了一个64位的整数,就是这张图片的指纹,它主要也是用缩略图搜原图并能达到较好的效果。

    利用汉明距离计算hash特征值的相似度,对于轮廓比较鲜明的图像更为准确,      四种图像检索方式中,基于指纹检索的准确性相对最高。

    1. 基于形状的检索

    对图像的形状特征提取采用Hu矩表示,其在图像像素数目一定的情况下,具有对图像的旋转、平移和尺度变化的不变性。

    5.实训总结和心得

    (1)清空数据库表(id重置):

    TRUNCATE TABLE table1

    (2)求HSI的前三阶中心矩时,变量太多容易弄错;

    (3)弄懂图像的灰度共生矩阵相关参数的意义及求法;

    (4)掌握phash算法的步骤;

    (5)学会java swing的基本页面布局,学会使用监听事件;

    (6)学会TreeMap的按值排序算法:

    ArrayList<Entry<Integer,Double>>entryArrayList=newArrayList<>(treemap.entrySet());

    Collections.sort(entryArrayList, new Comparator<Map.Entry<Integer, Double>>() {

              public int compare(Map.Entry<Integer, Double> o1,Map.Entry<Integer,Double> o2) {return o2.getValue().compareTo(o1.getValue());//按value从大到小排序}});

    因为之前已经接触过图像处理方面的知识,所以这次的项目处理起来难度不大,而且了解了更多图像处理的知识,包括图像的预处理及各种图像检索的方法,其中感知哈希方法识别率较高,对于形状比较丰富的图片,形状不变矩法分辨能力较低,Hu不变矩一般用来识别图像中大的物体,对于物体的形状描述得比较好,图像的纹理特征不能太复杂,像识别水果的形状,或者对于车牌中的简单字符的识别效果会相对好一些。

     

    github:https://github.com/Gonlandoo/CBIR19

    展开全文
    qq_38006135 2019-07-17 13:00:06
  • 基于综合特征的图像检索系统摘要基于内容的图像检索(CBIR)是一个非常热门的研究领域。本文在对颜色特征、形状特征和纹理特征的研究基础上,将三种特征结合在一起,实现了可以自定义权重的综合特征的图像检索系统,...

    基于综合特征的图像检索系统

    摘要

    基于内容的图像检索(CBIR)是一个非常热门的研究领域。本文在对颜色特征、形状特征和纹理特征的研究基础上,将三种特征结合在一起,实现了可以自定义权重的综合特征的图像检索系统,并在平台上实现了这一系统。

    图像特征的提取和相似性度量是CBIR的两个关键技术。对于颜色特征,本文采用HSV空间中的颜色矩表示颜色特征;对于形状特征,本文采用图像的不变矩作为形状特征;对于纹理特征,为减少计算量,本文首先对图像进行预分割,提取分割后区域基于傅立叶描述子的纹理特征作为整个图像的纹理特征。在相似性度量方面,采用曼哈顿距离作为度量标准,得到各个特征的相似度向量。


    关键词:图像检索,颜色矩,不变矩,傅立叶描述子

    1 图像检索的发展历程

    从20世纪70年代开始,有关图像检索的研究就已开始,当时主要是基于文本的图像检索技术(Text-based Image Retrieval,简称TBIR),利用文本描述的方式描述图像的特征。到90年代以后,出现了对图像的内容语义,如图像的颜色、纹理、布局等进行分析和检索的图像检索技术,即基于内容的图像检索(Content-based Image Retrieval,简称CBIR)技术。

    2 基于内容的图像检索

    2.1 基于内容的图像检索的概念

    基于内容的图像检索根据图像、图像的内容语义以及上下文联系进行查找,以图像语义特征为线索从图像数据库中检出具有相似特性的其它图像。因为图像的规模一般要大于纯粹的文本信息,因此,基于内容的图像检索在检索的速度和效率上要求更高。 

    2.2 CBIR的研究现状

    在上世纪90年代,随着计算机和网络技术得到广泛应用之后,基于内容的图像检索技术取才得了较大的突破,人们也逐渐地将对基于内容的图像检索技术的研究成果应用到实际的工作和生活中,而对这种技术的需求的日益增长也驱动人们对基于内容的图像检索的技术向更高的层次进行研究。

    从当前的CBIR的研究的热点和未来的发展趋势的来看,可大致将其研究分为三层[3]:

    1. 最低层次的检索,在这个层次主要是利用全局特征(例如:颜色、纹理、形状等底层特征)去描述图像的内容,进行检索,这也是最直接的层面;

    2.较高层次的检索,该层次主要是利用图像对象语义来描述图像的内容,进行检索,这种技术是底层特征的基础上加入了图像语义特征(例如:对象与对象之间的空间关系等);

    3.最高层次的检索,该层次是利用图像概念级语义来描述图像的内容,进行检索,该技术是建立在图像对象语义特征提取的基础上加入了图像的概念级语义(例如:用户对图像的理解、情感等高层语义)。

    尽管对CBIR技术的研究已经经过了很长时间,但目前较为常用的CBIR技术基本上都是基于底层特征的检索。现有的CBIR底层特征的检索系统主要包括基于颜色的图像检索系统、基于纹理的图像检索系统和基于形状的图像检索系统,下面就对上述三种检索系统进行一下简单的概述。

    2.2.1 基于颜色特征的图像检索

    颜色是描述图像内容最直接的视觉特性。颜色特征是一种定义比较明确和简单的特征,人的视觉对它的敏感度最大,人眼可以很直观地利用颜色特征区分出两幅图像的不同之处,因此颜色特征成为在CBIR研究中最早被用到的图像特征。

    颜色特征的表示方法主要包括颜色索引、颜色矩等。颜色索引是一种以颜色直方图和直方图相交算法为基础的颜色特征表示方法,该方法在上述基础上,首先,将颜色空间划分为多个固定的子空间;其次,统计每个固定的子空间中像素的数目;最后,用直方图相交算法计算图像之间的相似度,按照相似度的大小对检索结果进行输出。

    该方法除了具有颜色特征通用的优点外,还有个突出优点是计算简单。但也存在两个不足之处:一是它没有办法反映出颜色的空间分布信息,例如两幅图像中对象空间分布的位置不同时,这两幅图像可能具有几乎完全一致的颜色直方图。二是量化方法的不一样也可能对检索结果也可能产生很大的影响,比如原来两幅图像的颜色直方图很相似,但是由于量化过大,使得某些颜色消失,最终得到的两幅图像的颜色直方图大相径庭,这样造成了图像检索的准确度大大折扣。

    由于颜色直方图在空间信息方面的缺失,后来又出现了颜色矩的概念来表示颜色特征,该方法先将图像按照一定的规则进行分块,然后对每一块提取颜色直方图。随后,出现了按物体对象的空间分割法,将图像按照图像中对象的分布进行分割,然后提取每个对象的颜色特征和对象之间的空间信息。上述两种方法都是在颜色整体特征的信息中加入了图像的空间分布信息,但是这两种方法存在的共同的缺陷是对于任意图像,如何对图像进行合适的分割。

    除了上述颜色特征的表示方法外,还有颜色相关向量法和颜色聚类法,这两种方法也在颜色的特征中添加了空间信息,在实际的应用中不常见,还处于研究阶段。

    2.2.2 基于纹理特征的图像检索

    和颜色一样,纹理是也是图像中一种不可或缺的视觉特性。纹理没有统一的定义,一般可以用图像的某种局部性质来对纹理下定义,纹理描述了局部区域中像素之间的关系,同时也描述了图像中的空间分布信息。对纹理可以通过粗糙度、方向性、对比度和规则性四个方面来描述。应用较为广泛的基于纹理特征的图像检索技术包括采用共生矩阵,和基于数学模型如小波变换的纹理特征检索。

    2.2.3 基于形状特征的图像检索

    形状描述的是图像中各种物体的外在特征,所以基于形状的检索系统中最关键的技术是如何表示图像中物体的特有的外在特征和如何对提取出的形状特征进行特征匹配,目前常用的描述形状特征的方法主要包括:矩描述法、边界描述法和几何参数法。

    以前表示形状特征的常用方法有链码、曲线、傅里叶描述子和B样条曲线等[6]。后来又出现了小波描述逼近法和超二次曲线法。

    形状特征的提取需要人工对图像进行分割、提取目标,就目前的发展状况,还没有实现对形状特征的自动提取。而人眼对颜色和纹理特征比较敏感,提取方法也相对比较简单,所以在目前的检索系统中使用最多的底层特征是颜色和纹理特征。

    3.基于综合特征的CBIR

    为了结合各个底层特征的优点,本文同时提取图像的颜色、形状和纹理三种特征结合为一个综合特征,并实现结合权重的自定义。

    3.1 颜色特征

    在颜色特征方面,为减小运算量,采用颜色矩作为检索的特征,分别提取被检测图像和数据库中图像的一、二、三阶矩。由于HSV颜色空间的色调、饱和度、明度与人眼对颜色的主观认识相对比较符合,与其他颜色空间相比HSV空间能更好的反映人类对颜色的感知,所以本文采用HSV颜色空间下的颜色矩作为颜色特征。使用曼哈顿距离进行颜色矩相似度度量。

    颜色信息集中在图像颜色的低阶矩中,主要是每种颜色分量的一阶矩(均值)、二阶矩(方差)、三阶矩(斜度),可以有效地表示图像中的颜色分布。

    3.2 形状特征

    本文利用形状不变矩作为图像检索的形状特征。利用目标区域所占的区域的矩作为形状描述参数是常用的形状描述方法。

    3.3 纹理特征

    由于图像检索的数据库一般比较大,如果直接对整幅图的纹理特征进行提取和分析,运算量将会非常大。所以本文先对图像进行分割,然后再对分割后的图像进行基于傅立叶描述子的纹理检测和纹理特征提取,以减少运算量。

    3.3.1 图像预分割

    为了减小运算量,突出图像的主要部分,我们在进行纹理特征提取之前对图像进行预分割。通常认为,图像特征主要体现在大连通域处,我们基于这个原理进行分割。首先将RGB图像二值化,进行形态学处理包括开运算和闭运算后,进行连通域分析,取最大的连通域作为目标区域进行纹理特征的检测。

    3.3.2

    在离散情况下,设边界上的点组成的有序点集可表示为一个复数序列

    傅立叶描述子将目标放在频域进行分析,得到的目标频谱中低频分量代表物体的宏观形状属性,而高频分量则可以代表物体的细节特征,某些情况下即纹理特征。

    3.3.3 纹理特征提取与检索

    我们取图像中最大连通区域作为傅立叶描述子处理的目标区域,但是由于二值化后连通域内部的点已经没有频率分析的意义。所以,我们提取最大连通域的边界,只对边界的有序复坐标做傅立叶描述子分析,得到图像的纹理特征。


    v2-36c8d8721d77ebb9e3522551878ba97c_b.jpg

    v2-5da7b2434192f6d92f451eedfd322355_b.jpg



    v2-6714f8fe7652e1e040c991aa02da456b_b.jpg

    v2-f0e44343b02cd5f7901d3351a511080e_b.jpg


    图1 图像预分割边界纹理

    分别对图1的边界进行长度为256点的傅立叶描述后,得到其频谱图如图2。


    v2-775d5db83de980a05710c14c7ae774a5_b.jpg

    v2-c38fa30f21118a3ab0531aeee767b6f5_b.jpg


    图2 两纹理图傅立叶描述子比较

    可以看出代表形状的低频分量占据了很大的能量,利用这样的特征向量在进行相似度度量时,纹理特征所占的比重会远小于形状特征,而且直观上看,两者的特征很难进行区分。所以我们去除频谱中的低频分量(去掉前15个点),只保留频谱中的高频分量,得到如下图所示的频谱图:


    v2-71f235337e45d533e6b10ecfbba09ba8_b.jpg

    v2-d72d4f6e9d9715a8d9b6d04601532de4_b.jpg


    图3两纹理图傅立叶描述子高频分量部分

    可见两者的高频纹理特征具有较大的区别性。

    同样利用度量,即得到纹理特征的相似性向量。

    3.4 综合特征

    我们综合颜色特征、形状特征、纹理特征三种特征进行检索,设三种特征的相似性向量分别作为相似度的判据,即可得到图像相似度检索的结果。

    4 图像检索系统设计

    本文在Matlab平台上设计了基于三种特征综合的图像检索系统,设计界面如图4所示。


    v2-f60b6eecdcf38ef3f3da1bcd7ee9928e_b.jpg


    图4 检索系统界面

    由于采用了三种特征进行综合的图像检索,运算时间较长,所以在655副图像的大数据库中随机抽取了24副图片作为小数据库,存放在程序目录下的Pic文件夹中,

    4.1 界面功能介绍

    4.1.1 图像文件路径设置

    在这一区域输入图像文件的路径,默认路径为程序目录下的“Pic\”文件夹。


    v2-f98d2371151f2e966e4f290376e74b7b_b.jpg


    图5 设置路径区域



    4.1.2 选择待匹配图像


    v2-e2faaf357cbd12bdff5f9a33b35dab34_b.jpg

    v2-33e43e85f97789b92a4495c778c77952_b.jpg

    v2-6316d774bf3afd143248c88a1561abd5_b.jpg


    图6 选择待匹配图片

    通过“选择待匹配图像”的下拉菜单选择待匹配的图像,选择后即显示在下方区域。

    4.1.3 自定义权重


    v2-75b0c62eee8d1a58d823b1754005669d_b.jpg


    图7 自定义权重区域

    在这一区域进行综合特征权重的自定义,可以通过滑动“Slide”进行设置,设置值会显示在后面的矩形框中,也可以在矩形框中输入权值,权值范围为0-1。


    v2-0d15e0bb5a9b10bb9d9f2d0e220f5e65_b.jpg


    图8 自定义权重示意

    4.1.4 待匹配图性质检测


    v2-04c7c6032fbfb16f68a14ac94190497d_b.jpg


    图9 待匹配图性质检测

    这一区域可以检测待匹配图的一些性质,包括HSV颜色空间三通道的颜色直方图,利用分水岭算法实现的边界检测,以及在纹理特征部分提取的纹理特征傅氏描述。


    v2-f239a80843628ecf598ffe84e6900f06_b.jpg


    图10 待匹配图颜色直方图


    v2-471595e9b470b4f5219a01ea05f8538b_b.jpg


    图11 待匹配图边界图


    v2-64138dddc63bd92318a359e40cc015cb_b.jpg


    图12 待匹配图纹理傅氏描述子

    4.1.5 检索结果显示

    选择好待匹配的图片,并设置好权重后,单击“开始检索”按钮,即开始进行检索。


    v2-558498a702807999555101940c2e56a7_b.jpg


    图13 检索过程示意图

    等待

    v2-b18112dc0b629f648cd9dbb402f5dbc3_b.jpg

    进度结束后即程序运行完毕,得到检索结果如图14所示。由于只是在小数据库内进行检索,因而除了第一相似图外,其他图像相似度并不很高。


    v2-70a3848d095b9f4ee089cc097dc122b6_b.jpg


    图14 检索结果示意图

    4.2 检索示例

    以下是几个在此系统上进行图像检索的示例。


    v2-20ab2345eb8063421f795a6dce9e39e4_b.jpg


    图15 检索结果示意图1


    v2-60ef179342f922c56b7db26be56e987e_b.jpg


    图16 检索结果示意图2


    v2-6b323442776756354ec5e631a43a1d9d_b.jpg


    图17 检索结果示意图3


    v2-3ac03adf2d0c748ee93e9fc8d529df56_b.jpg


    图18 检索结果示意图4

    4.3 检索系统使用说明和注意事项

    4.3.1 使用注意事项

    1.目前仅支持24副图片下的检索,如果想增加数据库数量,请在对应文件夹内按名称命名顺序依次增加,“25.jpg、26.jpg、……”,并在GUI程序Run.m中“开始检索”按钮的回调函数(即function pushbutton_Start_Callback)中将图片数量变量num的取值进行对应修改。

    2.需要先设置图片路径。如果在程序目录下的“Pic\”文件夹下,则无需修改。

    3.检索前需选择待匹配图片,否则将会提示:


    v2-28d94a311f2dd51187638e38b5f69ed6_b.jpg


    4.设置三种特征的权重必须为0-1之间的数字,不能超过这个范围或者为其他字符,否则将会提示:


    v2-08e849dfc5e63876577cd30c064423d1_b.jpg

    v2-3661309cdea0bc85ff079fc9341ebfbb_b.jpg


    5.进行待匹配图性质显示时,要先选择需要显示的性质,否则将会提示:


    v2-de75dc42228625dda119d5f8f862ea00_b.jpg


    4.3.2 子程序说明

    1.程序主目录下的“Pic”文件夹存放了24副图片,作为图像检索的数据库;

    2.hsvfeature.m ,提取HSV颜色空间的颜色矩特征的子程序;

    3.Shape_7_moment.m ,提取图像

    不变矩的子程序;

    4.Watershed.m ,基于分水岭轮廓检测的图像轮廓特征提取子程序,但是由于检索效果不好,所以没有采用到综合特征中去;

    5.Fourier_texture2.m ,基于傅立叶描述子的纹理特征提取子程序。


    5 参考文献

    [1] 王向阳. 一种基于彩色边缘综合特征的图像检索算法[J]. 模式识别与人工智能, 2010

    [2] 纪敏.MPEG-7颜色、纹理和形状描述子[J].计算机工程与应用,2004,40(26):44-47

    [3] 李向阳.基于内容的图像检索技术与系统[J].计算机研究与发展2001,3

    [4] Rafael C.Gonzalez 阮秋琦译. 数字图像处理(MATLAB版)[M]. 电子工业出版社,2005

    [5] Dunlop M.D..Multimedia Information for Retrieval, Ph.D. Thesis. Computing Science Department, University of Glasgow, Report 199l

    [6] Ellen M. Voorhees, Yuan-Wang Hou."Vector Expansion in a Large Collection”, First Text REtrieval Conference [TREC-1], 1993.

    [7] Frisse M.E.Searching for information in a hypertext medical handbook. Communications of the ACM, 3 I[7], pp.880-886.

    [8] R.Price, T.S Chua, and S.Al-Hawamdeh, Applying relevance feedback on a photo archival system. Journal of Information Science, 18:203-215, 1992

    [9] 梁艳.基于内容的图像检索技术及应用[J].科技信息(科学教研),2008年,20期.

    [10] 田靓.基于颜色内容的图像检索方法的比较[J].包装工程,2019,4.

    [11] Petrou.M(英)著.赖剑辉译.数字图像处理疑难解析[M].机械工业出版社,2015.4

    [12] 章毓晋.基于内容的视觉信息检索[M].图像图形科学丛书,2013

    展开全文
    m0_59833680 2021-08-25 11:58:35

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 107,067
精华内容 42,826
关键字:

图像检索系统