基于内容的图像检索系统设计与实现--颜色信息--纹理信息--形状信息--PHASH--SHFT特征点的综合检测项目,包含简易版与完整版的源码及数据!

2023-11-19

百度云提取源码以及数据包,直接下载压缩包解压就可以使用,数据就在压缩包文件dataset中。
简化版:只有-颜色信息–纹理信息–形状信息–PHASH–SHFT特征点的综合检测
[百度云链接,提取码:6666] 戳我

完整版:包含只有-颜色信息–纹理信息–形状信息–PHASH–AHASH–DHASH–HSV中心矩法–VGG16–SHFT特征点–快速检索等等的综合检测
[百度云链接,提取码:6666]:戳我

项目报告:

摘要

图像作为最基本,最重要的多媒体信息交流形式之一,已经随着信息技术和网络技术的发展,而越来越广泛地应用于人们的社会生活和工作密切相关的各个领域。人们希望能够利用图像自身的可视化特征对图像信息进行检索。
基于内容的图像检索系统(Content Based Image Retrieval, 以下简称 CBIR),是计算机视 觉领域中关注大规模数字图像内容检索的研究分支。典型的 CBIR 系统,允许用户输入一张 图像,在图像数据库(或本地机、或网络)中查找具有相同或相似内容的其它图片。本课题的基本目的是要求实现基于视觉特征的图像检索,具体包括:实现基于颜色信息、纹理信息、形状信息的图像检索。本文在以上全局特征、浮点特征的基础上,还尝试使用局部特征、二进制特征实现图像检索,并对检索方式进行拓广,不仅实现最近邻查找(NN),还实现基于VPTree的近似最邻近(ANN)查找,并对不同特征、不同检索方式的实验结果进行对比分析。

关键词:CBIR,颜色直方图;颜色中心矩;灰度共生矩阵;形状不变矩;phash;

Abstract

As one of the most basic and important forms of multimedia information exchange, image has been more and more widely used in various fields closely related to people’s social life and work with the development of information technology and network technology. People hope to use the visual features of the image itself to retrieve image information.
Content based image retrieval (CBIR) is a research branch that focuses on large-scale digital image content retrieval in the field of computer vision. A typical CBIR system allows users to input an image and find other images with the same or similar content in the image database (or local machine, or network). The basic purpose of this subject is to realize image retrieval based on visual features, including: image retrieval based on color information, texture information and shape information. Based on the above global features and floating-point features, this paper also attempts to use local features and binary features to realize image retrieval, and expand the retrieval methods, not only to realize the nearest neighbor search (NN), but also to realize the approximate nearest neighbor (ANN) search based on vptree, and compares and analyzes the experimental results of different features and different retrieval methods.

Keywords: CBIR, color histogram; Color center moment; Gray level co-occurrence matrix; Shape invariant moment; phash;

研究意义及背景

基于网络技术的发展,图像的数量越来越多,所以图像检索技术变得尤为重要,所谓的图像检索技术是先提取图像的特征,然后在再对图像特征进行相似度量,最终找到相似图像的一种技术。提取的图像的特征大致可以分为两类,文本特征和视觉特征。其中视觉特征(CBIR)是一种利用推向的视觉信息来组织数字图像数据库的技术。从图像的相似度的匹配到图像特征提取都是CBIR所要研究的技术,目前最常用的CBIR是基于视觉的,越来越多的数字生成图像,所以需要新的方法来存储和访问这些数据,传统的数据库只允许对元数据进行文本信息搜索。基于内容的图像检索是以查询图像的形式根据用户的请求从大型图像数据库中检索图像技术。

最早的图像检索工作可以说是祈愿与1979年,这是图像数据库管理技术的应用潜力引起了很多学者的注意。20世纪到90年代初,由于互联网和新的数字图像传感器技术的进步,图像越来越多导致根据文本实现的检索难度变大。据文本实现的检索难度变大。持续增加的图像数据的成为一个棘手的问题。1996年,Jitendra Malik 等人将图像内容作为关键实现图像的检索技术。随后在1998年,Sharad Mehrora等人进行了大量的视觉特征提取和系统构建。虽然这些研究奠定了CBIR的基础,但是这个方法忽略了CBIR系统中,所提取的图像的高层语义和低层视觉的不一样,还有每个人对图像的认识也不同。1999年Mircealonescu等人发现检索系统的检索效果的另一个关键问题,就是图像相似性度量函数的选择,使用汉明距离函数可以计算图像间特征值得距离,实现图像的相似性度量。2000年Constati Vnertan等人提出重新使用彩色图像内容作为图像描述符,通过引入模糊性,这是由于像素颜色值的不精确和人的感知不同,他们提出使用模糊颜色直方图及其对应的模糊距离来检索各种颜色图像数据库。在2000年Stefano Berett等人再次提山使用局部描述符和有效索引的形国相似性检索。对现有文献的研究表明,最近有很多基于颜色、特征、纹理和空间关系的有效基础上进行CBIR的尝试。目前已有相当多的模型从不同角度解决了图像检索问题。

第一章绪论

1.1实训目的与内容

实训目的:通过该课题的研究,可以用不同的方法进行图片检索比如:基于颜色特征的检索,基于纹理特征的检索,基于形状特征的检索,基于HOG特征和SVM分析的检索。通过这些方法能比较出各个图片的适应情况,为不同的图片选择更好的检索方法。也为之后图片进行自动化机器学习打下基础。具体包括:

1.实现基于颜色信息的图像 检索,可通过颜色直方图、颜色矩、颜色一致性矢量等方法来实现。

2.实现基于纹理特征 的图像检索,可从四个方面进行:统计法、结构法、模型法、频谱法。

3.实现基于形状特 征的图像检索,可分别从图像的边信息和区域信息来实现。

4.实现基于综合信息的图像检索。

实训内容:
该项目的实训内容主要包括:

1.能够利用颜色特征实时从图像库中检索出和输入图像相同或相似的图像,按照相似度 大小排列,并显示在系统中。

2.能够利用纹理特征实时从图像库中检索出和输入图像相同或相似的图像,按照相似度 大小排列,显示在系统中。

3.能够利用形状特征实时从图像库中检索出和输入图像相同或相似的图像,按照相似度 大小排列,并显示在系统中。

4.除上述要求外自己实现新的特征和新的方法,我们小组选择使用SIFT算子特征、PHASH方法进行拓展,对实验各种类型进行比较分析,在对比中找到不同方法之间的差异性,进行相应的改进和综合,找到(改进)出最优秀的那个图像检索方法。

1.2图像检索系统工作流程

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

较为详细的为,基于内容的图像检索是有两大部分组成的,包括特征提取部分以及相似度匹配部分。图像检索的具体步骤是根据不同的特征提取方法,对图像做相应的预处理,再提取图像的特征,并把提取出的特征值保存到特征库里,然后对待检索图像进行同样的处理,得到同种算法提取的特征向量,并与特征库中的特征向量做相似性度量,最后输出检索结果。

特征提取:特征提取―特征提取是图像检索系统最核心的一个部分,图像检索系统的检索效率的高低的关键就在于提取特征是不是可以充分的代表待检索图像,特征提取把图像描述成一种可以表达图像信息的低维特征,高质量的特征是正确检索的保证,因此选择稳定、有代表性的、便于匹配的特征十分必要。

检索模块:该模系是图像进行相似性匹配的部分,通过使用合适的相似性度量函数对所提取的图像的特征向量进行距离计算,最后达到对检索图像做相似度匹配的目的。

查询模块:该模系完成的工作是输入待检索图像,然后通过对所计算的图像直接之间的相似度大本进行本序,最后得到图像的相似图像检索结果并加以展示。

1.3图像检索系统框架

1.基于内容的图像检索框架
在这里插入图片描述
2.基于内容的图像检索系统逻辑模型
在这里插入图片描述
3.用户界面系统设计
在这里插入图片描述
4.用户界面分享
在这里插入图片描述

第二章基于颜色信息的图像检索

2.1 核心算法描述

在RGB颜色空间中,R、G、B各颜色分量彼此独立。RGB颜色空间的缺点在于不符合人眼的视觉特性,直接处理多有不便,因此通常需要转换到其他颜色空间进行处理。HSI色彩空间是从人的视觉系统出发。HSI颜色空间中,H是Hue(色度)的缩写,S是Saturation(饱和度)的缩写,I是Intensity(强度)的缩写。

颜色相关直方图(color correlogram),结合了图像中的颜色与空间信息,用颜色之间(不同颜色或相同颜色)的量化距离来构建直方图。颜色直方图有许多的优点:对图像进行旋转之后,它的颜色直方图不发生改变;颜色直方图容易提取,且比较容易计算两个直方图之间的相似度。

2.1.1 RGB模型介绍

RGB是常用的一种彩色信息表达方式,它使用红、绿、蓝三原色的亮度来定量表示颜色。该模型也称为加色混色模型,是以RGB三色光互相叠加来实现混色的方法,因而适合于显示器等发光体的显示。
RGB可以看做三维直角坐标颜色系统中的一个单位正方体。任何一种颜色在RGB 颜色空间中都可以用三维空间中的一个点来表示。在RGB 颜色空间上,当任何一个基色的亮度值为零时,即在原点处,就显示为黑色。当三种基色都达到最高亮度时,就表现为白色。在连接黑色与白色的对角线上,是亮度等量的三基色混合而成的灰色,该线称为灰色线。
在这里插入图片描述
2.1.2 HSI模型介绍

HSI (HueSatrationntenst HSI)模型用H、S、I三参数描述颜色特性,它是 由Munseu 提出的一种颜色模型。其中H 定义颜色的波长,称为色调;S表示颜色的深浅程度,称为饱和度; I表示强度或亮度。HSI颜色模型反映了人的视觉对色彩的感觉。由于人的视觉对亮度的敏感程度远强于对颜色浓淡的敏感程度,为了便于色彩处理和识别,人的视觉系统经常采用HSI色彩空间,它比RGB色彩空间更符合人的视觉特性。在图像处理和计算机视觉中大量算法都可在HSI色彩空间中方便地使用,它们可以分开处理而且是相互独立的。
在这里插入图片描述
2.1.3 RGB转换到HSI的几何方法公式

假设RGB模型的R,G,B值的取值范围为[0,1][0,1][0,1]。
HSI模型的三个分量:强度(II),色调(HH),饱和度(SS)的计算公式如下:
在这里插入图片描述

2.2 系统架构说明

2.2.1 图像颜色特征

基于颜色中心距的特征提取:颜色矩是一种简单有效的颜色特征表示方法,有一阶矩(也就是均值,mean)、二阶矩(也就是标准差, variance)和三阶矩(斜度,skewness)等,由于颜色信息主要分布于低阶矩中,所以用一阶矩,二阶矩和三阶矩足以表达图像的颜色分布,颜色矩已证明可有效地表示图像中的颜色分布。HSI颜色空间不适合显示器系统,但是更符合人眼的视觉特性,因此通常会将颜色从RGB空间域转换到HSV颜色空间进行处理。

颜色直方图特征提取步骤:
1.图像灰度化 Gray=0.30R+0.59G+0.11*B;
2.将图像从RGB颜色空间转至HSI颜色空间;
3.以 HSI 空间的 Hue 分量为例,如果记 Hue(pi)为图像 P 的第 i 个像素的 Hue 值,则其
前三阶中心矩分别为:
在这里插入图片描述
4.提取出现频率较高的特征值;
5.将特征值存放在图像特征数据库中。
颜色直方图相似度度量的方法:选择加权的欧氏距离进行相似度度量。

颜色中心距特征提取步骤:
1.图像灰度化 Gray=0.30R+0.59G+0.11*B;
2.将图像从RGB颜色空间转至HSI颜色空间;
3.对HSI模型的三个分量分别求其前三阶中心矩,得到9个特征值;
4.将特征值存放在图像特征数据库中。
颜色中心距相似度度量的方法,选择用余弦相似度来进行相似度度量。

2.3 实验结果及分析

结果一:
在这里插入图片描述
结果二:
在这里插入图片描述

结果三:
在这里插入图片描述

第三章基于纹理信息的图像检索

3.1核心算法描述

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

图像纹理特性中有一个重要的概念,即为灰度共生矩阵:灰度共生矩阵(GLDM)的统计方法是20世纪70年代初由R.Haralick等人提出的,它是在假定图像中各像素间的空间分布关系包含了图像纹理信息的前提下,提出的具有广泛性的纹理分析方法。

3.1.1灰度共生矩阵

灰度共生矩阵被定义为从灰度为i的像素点出发,离开某个固定位置(相隔距离为d,方位为)的点上灰度值为的概率,即,所有估计的值可以表示成一个矩阵的形式,以此被称为灰度共生矩阵。对于纹理变化缓慢的图像,其灰度共生矩阵对角线上的数值较大;而对于纹理变化较快的图像,其灰度共生矩阵对角线上的数值较小,对角线两侧的值较大。由于灰度共生矩阵的数据量较大,一般不直接作为区分纹理的特征,而是基于它构建的一些统计量作为纹理分类特征。Haralick曾提出了14种基于灰度共生矩阵计算出来的统计量:即:能量、熵、对比度、均匀性、相关性、方差、和平均、和方差、和熵、差方差、差平均、差熵、相关信息测度以及最大相关系数。
同时,灰度共生矩阵的特征量有五个,分别为:
1.对比度:度量 矩阵的值是如何分布和图像中局部变化的多少,反应了图像的清晰度和纹理的沟纹深浅。纹理的沟纹越深,反差越大,效果越清晰;反之,对比值小,则沟纹浅,效果模糊。
2.能量:能量变换反映了图像灰度分布均匀程度和纹理粗细度。若灰度共生矩阵的元素值相近,则能量较小,表示纹理细致;若其中一些值大,而其它值小,则能量值较大。能量值大表明一种较均一和规则变化的纹理模式。
3.熵:图像包含信息量的随机性度量。当共生矩阵中所有值均相等或者像素值表现出最大的随机性时,熵最大;因此熵值表明了图像灰度分布的复杂程度,熵值越大,图像越复杂。
4.逆方差:逆方差反映了图像纹理局部变化的大小,若图像纹理的不同区域间较均匀,变化缓慢,逆方差会较大,反之较小。
5.相关性用来度量图像的灰度级在行或列方向上的相似程度,因此值得大小反应了局部灰度相关性,值越大,相关性也越大。

3.2 系统架构说明

3.2.1 基于颜色直方图特征提取步骤
1.图像灰度化 Gray=0.30R+0.59G+0.11*B;
2.将图像从RGB颜色空间转至HSI颜色空间;
3.量化HIS参数以及通过加权公式将H,I,S三个特征值合成一个一维的特征值;
4.提取出现频率较高的特征值;
5.将特征值存放在图像特征数据库中。
灰度共生矩阵是通过计算图像中一定距离和一定方向上的两点灰度值间的相关性,来反映推向在方向、间隔、变化幅度及快慢上的综合信息。

3.2.2 各种度数计算式

共生矩阵0度的计算式:
p1(IN(M,N)+1,IN(M,N+1)+1)= p1(IN(M,N)+1,IN(M,N+1)+1)+1;
共生矩阵45度的计算式:
p1(IN(M,N)+1,IN(M-1,N+1)+1)= p1(IN(M,N)+1,IN(M-1,N+1)+1)+1;
共生矩阵90度的计算式:
p1(IN(M,N)+1,IN(M-1,N)+1)= p1(IN(M,N)+1,IN(M-1,N)+1)+1;
共生矩阵135度的计算式:
p1(IN(M,N)+1,IN(M-1,N-1)+1)= p1(IN(M,N)+1,IN(M-1,N-1)+1)+1;
对于纹理特性,选择的是预选相似度来进行相识度度量。

3.3 实验结果及分析

结果一:
在这里插入图片描述

结果二:
在这里插入图片描述

结果三:
在这里插入图片描述

第四章基于形状信息的图像检索

4.1核心算法描述

形状是描述图像内容的本质特征, 在实际检索中, 很多查询可能并不针对图像的颜色, 因为同一物体可能有各种不同的颜色, 但其形状总是相似的。如检索某辆汽车的图像,汽车可以是红的、绿的等, 但形状决不会像飞机的外形[13]。另外, 对于图形来说, 形状是它唯一重要的特征。目前用于图像检索的形状描述方法主要有两类:基于边缘和基于区域的形状方法。基于边缘的形状特征提取是利用图像的边缘信息,在边缘检测的基础上,用面积、周长、偏心率、角点、链码、兴趣点、傅里叶描述子、矩描述子等特征来描述物体的形状,适用于图像边缘较清晰、容易获取的图像。

4.1.1 形状不变矩法

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

4.1.2 边缘方向直方图法

边缘方向直方图是描述图像形状的一种方法。图像中目标的形状是由边缘勾勒出来的。
边缘是图像灰度变化的地方,对应目标或目标和背景的边界,所以对边缘方向进行统计得到
的直方图的形状将在一定程度上反映图像中的形状信息。如果图像中有比较规则的目标,则
边缘方向直方图会有明显的周期性;否则,边缘方向直方图会显得比较随机。

4.2系统架构说明

4.2.1 形状不变矩法
算法步骤:

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

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

3.用 sobel 算子对图像进行锐化;
Sobel 算子:
在这里插入图片描述
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.将特征值存如图像特征数据库中。

形状特征选择的相似度是余弦相似度来进行相似度度量的。

4.2.2 边缘直方算法

  1. 把一副彩色 RGB 的图像转换为灰度图像;
  2. 用高斯滤波对图像进行平滑滤波,用于消除噪声干扰;
  3. 用 sobel 算子对图像进行锐化求梯度;
  4. 对锐化后的图像求边缘方向角,角度范围在 0 度 — 360 度;
    5.求取边缘方向角直方图,并将得到的边缘方向直方图进行归一化和平滑;
    6.将边缘方向直方图信息存入图像特征数据库中。

4.3实验结果及分析

结果一:

在这里插入图片描述
结果二:
在这里插入图片描述
结果三:

在这里插入图片描述

第五章基于PHASH的图像检索

5.1 核心算法描述

通过哈希算法可以将图片转换为哈希值(图片指纹), 根据指纹的hamming distance判断图片的相似程度。 以图搜图的原理: 将上传的图片的转化为指纹,与数据库里其他的图片指纹比较,查找出最相似程度(汉明距离较小)的图片。

哈希算法大概有 4 种:
差值哈希:DHash(Difference Hash)
均值哈希:AHash(Average Hash)
感知哈希:PHash(Perceptual Hash)
小波哈希:WHash(Wavelet Hash)

我们选择PHash,即感知Hash进行图片检索。 PHash算法即感知哈希算Perceptual Hash algorithm,计算基于低频的均值哈希。对每张图像生成一个指纹字符串,通过对该字符串比较可以判断图像间的相似度。

PHash算法原理:
将图像转为灰度图,然后将图片大小调整为3232像素并通过DCT变换,取左上角的88像素区域。然后计算这64个像素的灰度值的均值。将每个像素的灰度值与均值对比,大于均值记为1,小于均值记为0,得到64位哈希值。

5.1.1 PHash算法实现

将图片转为灰度值
将图片尺寸缩小为3232
在这里插入图片描述计算DCT左上角8
8像素区域均值,求hash值

在这里插入图片描述
hash值匹配:
在这里插入图片描述

5.2 系统架构说明

5.2.1 PHash图片检索步骤

1.缩放图片为32*32

2.转化为灰度图
为了简化计算量

3.离散余弦变换(DCT)
4.缩小DCT,取左上角的8*8
离散余弦变换(DCT for Discrete Cosine Transform)是与傅里叶变换相关的一种变换,它类似于离散傅里叶变换(DFT for Discrete Fourier Transform),但是只使用实数。离散余弦变换相当于一个长度大概是它两倍的离散傅里叶变换,这个离散傅里叶变换是对一个实偶函数进行的(因为一个实偶函数的傅里叶变换仍然是一个实偶函数),在有些变形里面需要将输入或者输出的位置移动半个单位(DCT有8种标准类型,其中4种是常见的)。

5.计算平均值
如同均值哈希一样,计算DCT的均值。
6.计算图像哈希值(大于等于平均值为1,小于平均值为0)
7.进一步减小DCT并计算hash值。
这是最主要的一步,根据8*8的DCT矩阵,设置0或1的64位的hash值,大于等于DCT均值的设为”1”,小于DCT均值的设为“0”。结果并不能告诉我们真实性的低频率,只能粗略地告诉我们相对于平均值频率的相对比例。只要图片的整体结构保持不变,hash结果值就不变。能够避免伽马校正或颜色直方图被调整带来的影响。

对于phash算法得到的哈希值,选择的是用汉明距离来进行相似度度量。

5.3 实验结果及分析

结果一:
在这里插入图片描述
结果二:
在这里插入图片描述
结果三:
在这里插入图片描述

第六章基于SIFT特征点的图像检索

6.1 核心算法描述

尺度不变特征转换即SIFT (Scale-invariant feature transform)是一种计算机视觉的算法。它用来侦测与描述影像中的局部性特征,它在空间尺度中寻找极值点,并提取出其位置、尺度、旋转不变量,此算法由 David Lowe在1999年所发表,2004年完善总结。其应用范围包含物体辨识、机器人地图感知与导航、影像缝合、3D模型建立、手势辨识、影像追踪和动作比对。

SIFT函数介绍:

  1. sift = cv2.xfeatures2d.SIFT_create() 实例化
    参数说明:sift为实例化的sift函数
  2. kp = sift.detect(gray, None) 找出图像中的关键点
    参数说明: kp表示生成的关键点,gray表示输入的灰度图,
  3. ret = cv2.drawKeypoints(gray, kp, img) 在图中画出关键点
    参数说明:gray表示输入图片, kp表示关键点,img表示输出的图片
    4.kp, dst = sift.compute(kp) 计算关键点对应的sift特征向量
    参数说明:kp表示输入的关键点,dst表示输出的sift特征向量,通常是128维的

6.2 系统架构说明

第一步:进行高斯模糊,获得不同模糊度的图片
第二步:进行直接的降采样,获得多分辨的图片
第三步:将高斯模糊后的图片进行相减操作获得差分金字塔,使用DOC公式
第四步:对差分金字塔进行上下金字塔的比较,获得极值点
第五步:使用泰勒展开式,获得精确的极值点
第六步:使用herrian公式,通过特征向量变化,比较λ1和λ2的大小,用于消除边界点
第七步:使用sobel算子,计算特征点的梯度大小和梯度方向
第八步:统计特征点临近位置的梯度方向,做出直方图,求出特征点的主要方向
第九步:对应于特征的主要方向,进行旋转,保持特征点大小的方向不变性
第十步:对领域的特征点进行统计,按照44的数目,每个区域生成8个方向,即每个方向的出现的次数作为特征,一般使用16个区域,即168= 128个特征

shift特征点:用来进行侦查和描述图片的特征,它在空间尺度中寻找极值点,并提取位置,尺度(梯度大小),旋转不变量(方向)

第一步:先对图像进行高斯模糊,获得5-6张的模糊后的图片,高斯方程为G(x, y, σ) = 1/(2piσ^2) * e-(x2+y2)/2σ2,σ越大,高斯模糊的程度就越高。
在这里插入图片描述
第二步:构造多分辨金字塔,多分辨金字塔的构造直接使用降采样不需要模糊的操作,这里可以使用平均降采样。
在这里插入图片描述
第三步:构造高斯差分金字塔, 图中的每组5张图片为原始图片经过不同σ高斯参数模糊后获得的图。将5张图进行上下的相减操作,获得的差分图。
在这里插入图片描述
不同的高斯项进行相减,最后
I(x, y)表示差分金字塔的大小值
在这里插入图片描述
第四步:对获得的高斯差分金字塔,查找极值点, 对于一个点是否是极值点,将其上面一幅图对应的9个点+下面一幅图对应的9个点,加上该点周围的8的点,判断这个点是否是极值点。
在这里插入图片描述第五步:如果是极值点,即为关键点,这里我们对关键点做一个精确的定位,这里使用泰勒公式进行展开,D(x) = D + ∂ D^T / ∂x * x + 1/2 * x^T * ∂D^2 / ∂X2 * x x表示的是x轴上的偏移量,对x进行求导等于0,解得最终的结果代回D(x),D(x)为最终的极值点。

泰勒的二阶展开式
在这里插入图片描述
第六步:消除边界效应
在这里插入图片描述
第七步:使用sobel算子,每个特征点得到三个信息,获得位置, 计算梯度的大小,以及梯度的方向。
在这里插入图片描述
第八步:统计相邻部分的梯度的方向,画出直方图,把直方图中出现次数最多的作为主方向,如果次方向的次数大于主方向的0.8,那么次方向也是辅助方向
在这里插入图片描述
第九步:将梯度的方向进行按照原来的方向进行旋转,以保证梯度旋转的不变性
在这里插入图片描述
第十步:对特征点进行领域的位置统计,来生成sift特征向量, 对于左边的那个图,从44个领域中统计八个方向,因此有48个sift,右边有16个即16*8=128个特征向量。
在这里插入图片描述
6.3 实验结果及分析

结果一:
在这里插入图片描述
结果二:
在这里插入图片描述
结果三:
在这里插入图片描述

参考文献

1.张金龙. 基于血—脑肿瘤屏障干预的胶质瘤治疗效果及相关机制研究[D]. 第三军医大学,2017.
2.林春伟. 基于卷积神经网络的肺结节检测方法研究[D]. 广州:华南理工大学;2017.
3.邓万凯. MRI图像的脑肿瘤分割方法研究[D];华中科技大学;2011年
4.王昌淼. 基于胸部影像的肺结节检测与分类关键技术研究[D]. 深圳:中国科学院深圳先进技术研究院,2018.
5.李小兵. MRI图像脑肿瘤分割与EEG脑癫痫检测的研究[D];大连理工大学;2010年
6.杨福兴. 左侧环侧裂区脑肿瘤对语言网络的影响的初步研究[D];中国人民解放军医学院;2017年
7.Shi jiaying. Lung Nodule Detection Using Convolutional Neural Networks[C]//Technical Report No. UCB/EECS-2018-27.
8.heeraz Akram et al. Artificial neural network based classification of lungs nodule using hybrid features from computerized tomographic images[J]. Applied Mathematics & Information Sciences 9.1 (2015), p. 183.
9.Kai-Lung Hua et al. Computer-aided classification of lung nodules on computed tomography images via deep learning technique[J]. OncoTargets and therapy 8 (2015).
10.Wei Shen et al. Multi-scale convolutional neural networks for lung nodule classification[C]//International Conference on Information Processing in Medical Imaging. Springer. 2015, pp. 588–599.
11.Lin Lu et al. Hybrid detection of lung nodules on CT scan images[C]//Medical physics 42.9 (2015), pp. 5042–5054.
12.Wenqing Sun, Bin Zheng, Wei Qian. Computer aided lung cancer diagnosis with deep learning algorithms[C]//Medical Imaging 2016: Computer-Aided Diagnosis. Vol. 9785. International Society for Optics and Photonics. 2016, 97850Z.
13.Disha Sharma and Gagandeep Jindal. Identifying lung cancer using image processing techniques[C]//International Conference on Computational Techniques and Artificial Intelligence (ICCTAI). 2011, pp. 115–120.
14.Zhao, R., Liao, W., Zou, B., Chen, Z., Li, S.: Weakly-supervised simultaneous evidence identifification and segmentation for automated glaucoma diagnosis. In: AAAI (2019)
15.Ms Gangotri Nathaney and Kanak Kalyani. Lung Cancer Detection System on Thoracic CT Images Based on ROI Processing[J]. Lung Cancer 4.4 (2015), pp. 173176.
16.Anita Chaudhary and Sonit Sukhraj Singh. Lung cancer detection on CT images by using image processing[C]//Computing Sciences (ICCS), 2012 International Conference on. IEEE. 2012, pp. 142–146.
17.Rajneet Kaur Ada. Early detection and prediction of lung cancer survival using neural network classifier[D]. London.2013.
18.Azian Azamimi Abdullah and Syamimi Mardiah Shaharum. Lung cancer cell classification method using artificial neural network[J]. information engineering letters 2.1 (2012).

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

基于内容的图像检索系统设计与实现--颜色信息--纹理信息--形状信息--PHASH--SHFT特征点的综合检测项目,包含简易版与完整版的源码及数据! 的相关文章

随机推荐

  • Python中MongoDB的使用方法

    一 MongoDB是什么 在百度上查询的时候主要看到三个关键字 数据库 非关系型 查询功能强大 总结为查询功能强大的非关系型数据库 什么是数据库 应该是用来存储数据的 非关系型的意思 不不不 关系型的意思我都不懂 查询功能强大的意思应该是查
  • python matplotlib pyplot绘制散点图

    pyplot散点图示例 import matplotlib pyplot as plt import numpy as np import math import random plt rcParams font sans serif Si
  • 【Blender】快捷键整理

    Z 弹出着色模式菜单 shift Z 线框展示 Ctrl 空格 最大化视窗切换 N 隐藏侧栏 T 显示隐藏左侧工具菜单 小键盘 在视口内最大化显示当前选择物体 FN home 在视口内最大化显示场景内所有物体 SHIFT C 查看全部 sh
  • N沟道和P沟道MOS管的四个不同点

    作者 快捷芯 功率半导体创新品牌 1 芯片材质不同 虽然芯片都是硅基 但是掺杂的材质是不同 使得N沟道MOS管是通过电子形成电流沟道 P沟道MOS管是用空穴流作为载流子 具体原理可以参考一些教科书 属于工艺方面的问题 2 同等参数P沟道MO
  • Upload-labs 1-21关 靶场通关攻略(全网最全最完整)

    Pass 01 前端验证 因为是进行前端JS校验 因此可以直接在浏览器检查代码把checkFile 函数 即如下图红色框选中的函数 删了或者也可以把红色框改成true 并按回车 即可成功上传php文件 复制图片地址并用蚁剑进行连接 Pass
  • Hiv练习题之网站连续登陆天数分析

    数据源 有如下登录信息 userId day 1 2019 05 01 1 2019 05 02 1 2019 05 03 1 2019 05 04 1 2019 05 05 1 2019 05 06 1 2019 05 07 1 2019
  • Leetcode28. 找出字符串中第一个匹配项的下标

    代码 class Solution public int strStr String haystack String needle if haystack equals needle return 0 int len needle leng
  • IDEA中创建单元测试过程 JUnit

    1 在src同级别下创意一个test目录 2 右键这个test文件夹 设置为测试专用文件夹 然后在在下面创建一个java目录 根据你的需求 多级建目录 3 选择一个类 比如xxxServiceImpl xxDaoImpl 然后邮件 选择go
  • synchronized关键字修饰static方法和非static方法学习测试结论

    最近在学习研究synchronized关键字 发现有个疑问 在同一个类中 有多个sync方法 当线程调用其中的一个方法的时候 其他的线程能调用其他的sync方法么 为此做了简单的测试 详细的测试过程略过 读者可使用测试代码自行操作 得出结论
  • OKHttp详解

    OkHttp 是一套处理 HTTP 网络请求的依赖库 由 Square 公司设计研发并开源 目前可以在 Java 和 Kotlin 中使用 对于 Android App 来说 OkHttp 现在几乎已经占据了所有的网络请求操作 RetroF
  • Web项目实战

    文章目录 运行环境 1 前言 2 挑选模板 2 1 前端模板 2 2 后端模板 2 3 总结 3 实现注册与登陆 3 1 项目结构 3 2 注册 3 2 1 JDBC连接池连接 3 2 2 dao层实现JDBC的判重 插入 3 2 3 设计
  • Linux字符设备驱动的register_chrdev()与unregister_chrdev()

    Linux下的设备驱动程序被组织为一组完成不同任务的函数的集合 通过这些函数使得Windows的设备操作犹如文件一般 在应用程序看来 硬件设备只是一个设备文件 应用程序可以象操作普通文件一样对硬件设备进行操作 如open close rea
  • 【RDMA】RDMA编程入门--编辑中

    目录 一 前言 二 基本概念 1 队列和队列成员 2 传输模式 简介 单边双边传输流程简述 3 编程接口 verbs API 三 编程示例 工作大致流程说明 四 编程代码实例 5 RDMA编程概述 5 1 传输操作 5 2传输模式 5 3相
  • easyexcel分批次导出excel文件

    使用easyexcel进行分批次导出1000万条数据的步骤如下 首先 需要在pom xml文件中添加easyexcel的依赖 例如
  • ChatGPT也不会的k8s安装方法——极简安装法

    要学习k8s 首先要有一个k8s 那么如何才能获得一个k8s呢 这不由得让我想到了最近比较火的ChatGPT 以下简称小恰 俗话说 遇事不决问小恰 解决效率翻上翻 让我们先来看看小恰怎么回答的吧 问小恰 由于众所周知的原因 国内使用小恰比较
  • 【Hyperledger Fabric 源码解读】solo

    release 2 2 orderer consensus solo consensus go Copyright IBM Corp All Rights Reserved SPDX License Identifier Apache 2
  • 持久化RDB/AOF-Redis(三)

    上篇文章说了数据持久化 这里再学习一个命令 数据结构 Redis 二 https blog csdn net ke1ying article details 131118016 一 查询所有key scan 0 match zhuge co
  • 【动态规划】从入门到实践---动态规划详解

    目录 1 动态规划概念 一 定义数组元素的含义 二 找到数组元素之间的关系表达式 三 找到初始值 2 案例详解 一 爬楼梯 1 定义数组元素的含义 2 找到数组元素之间的关系表达式 3 找到初始值 案例二 最短路径 题目 做题步骤 1 定义
  • eclipse项目上出现两个红点(类似两个红心)的标志

    找了老久 浪费光阴 肯定引用的jar包有问题 大不了重新引用一下
  • 基于内容的图像检索系统设计与实现--颜色信息--纹理信息--形状信息--PHASH--SHFT特征点的综合检测项目,包含简易版与完整版的源码及数据!

    百度云提取源码以及数据包 直接下载压缩包解压就可以使用 数据就在压缩包文件dataset中 简化版 只有 颜色信息 纹理信息 形状信息 PHASH SHFT特征点的综合检测 百度云链接 提取码 6666 戳我 完整版 包含只有 颜色信息 纹