CN102663445B - 基于层次时间记忆算法的图像理解系统及其图像理解方法 - Google Patents

基于层次时间记忆算法的图像理解系统及其图像理解方法 Download PDF

Info

Publication number
CN102663445B
CN102663445B CN201210088032.2A CN201210088032A CN102663445B CN 102663445 B CN102663445 B CN 102663445B CN 201210088032 A CN201210088032 A CN 201210088032A CN 102663445 B CN102663445 B CN 102663445B
Authority
CN
China
Prior art keywords
matrix
image
collection
level network
time memory
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201210088032.2A
Other languages
English (en)
Other versions
CN102663445A (zh
Inventor
夏知拓
阮昊
王昊
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shanghai Institute of Optics and Fine Mechanics of CAS
Original Assignee
Shanghai Institute of Optics and Fine Mechanics of CAS
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Shanghai Institute of Optics and Fine Mechanics of CAS filed Critical Shanghai Institute of Optics and Fine Mechanics of CAS
Priority to CN201210088032.2A priority Critical patent/CN102663445B/zh
Publication of CN102663445A publication Critical patent/CN102663445A/zh
Application granted granted Critical
Publication of CN102663445B publication Critical patent/CN102663445B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Image Analysis (AREA)

Abstract

一种基于层次时间记忆算法的图像理解系统及其图像理解方法,该图像理解系统由层次时间记忆网络训练模块、层次时间记忆网络数据库和图像理解模块组成,其图像理解方法包括构建训练图像集P、利用训练图像集P训练层次时间记忆网络、将训练好的层次时间记忆网络存入层次时间记忆网络数据库中和利用层次时间记忆网络数据库中存储的各层次时间记忆网络对目标图像进行理解四个步骤,本发明应用了新的时间模式集学习方法和数据库技术,可以快速的将多项图像内容属性转化为自然语义描述,实现对图像的深度理解,与传统的图像理解方法相比,此方法简单实用,具有很高的实用性和灵活性。

Description

基于层次时间记忆算法的图像理解系统及其图像理解方法
技术领域
本发明涉及图像语义理解,特别是一种基于层次时间记忆算法的图像理解系统及图像理解方法,具体是指一种基于层次时间记忆算法,对图像的多个属性进行识别,根据识别结果添加语义标签,将图像内容信息转化成自然语言描述的图像理解的方法。
背景技术
图像理解(Image Understanding,IU)就是对图像的语义理解。它是以图像为对象,知识为核心,研究图像中有什么目标、目标之间的相互关系、图像是什么场景以及如何应用场景的一门学科。
图像理解属于数字图像处理的研究内容之一,属于高层操作。其重点是在图像分析的基础上进一步研究图像中各目标的性质及其相互关系,并得出对图像内容含义的理解以及对原来客观场景的解释,进而指导和规划行为。图像理解所操作的对象是从描述中抽象出来的符号,其处理过程和方法与人类的思维推理有许多相似之处。
目前常用的图像理解方法主要是先使用一些图像处理算法对图像进行特征提取,然后再使用图像识别算法和推理算法对提取出的特征进行分类识别,常用的图像处理算法包括快速傅利叶变换、边缘提取等算法,常用的图像识别和推理算法包括支持向量机(SVM)、隐藏马尔科夫模型(Hidden Markov Models,HMM)和矩特征Zernike矩等,从算法的实现上来看,目前常用的图像处理算法普遍存在着计算量大的缺点,隐藏马尔科夫模型中已有的二维Markov模型存在着局部依赖性强、计算过程复杂难以编程实现的缺点,矩特征Zernike矩对图像的识别效果容易受参数的影响,识别波动率大。
层次时间记忆是一种新型的算法模型,模仿了人类新大脑皮层的结构和信息处理方式,应用了贝叶斯网络中的节点间信息持续共享原理和信度传播原理。层 次时间记忆网络是一个树形多层的节点层次结构,包括输入层、中间层和输出节点,其中输入层中包含有多个输入层节点,中间层中包含有多个中间层节点,而且层次时间记忆网络中的每个节点均包含一个具有计算功能的计算单元和一个具有存储功能的存储单元,并且接收到的信息在垂直的范围内可以循环传递。
作为一种新的算法模型,层次时间记忆算法模型以其抗噪声、容错、自适应、自学能力强和识别于一体等特点受到研究人员的重视,在模式识别领域中得到探索性的应用。本发明提出的基于层次时间记忆算法的图像理解系统和图像理解方法,针对图像理解的需求,应用了一种新的、运算量更小的层次时间记忆算法,并结合了数据库技术,使得图像理解系统更容易实现,而且具有更强的灵活性,并克服了采用传统的图像理解方法计算量大、实现困难等缺点,可以广泛的应用在非结构化数据存储、个性化网络服务和安防监控等多种领域。
发明内容
本发明公布了一种基于层次时间记忆算法的图像理解系统及其图像理解方法,根据本发明所述的图像理解系统和图像理解方法,可以有效的将图像内容信息转化为自然语言描述,实现对图像内容的深度理解。
本发明的技术解决方案如下:
一种基于层次时间记忆算法的图像理解系统,其特点在于包括依次连接层次时间记忆网络训练模块、层次时间记忆网络数据库和图像理解模块,所述的层次时间记忆网络训练模块包括图像存储子模块和训练实施子模块,所述的图像理解模块包括读取子模块和理解实施子模块,其连接关系是:
所述的图像存储子模块的输入端即层次时间记忆网络训练模块的输入端,所述的图像存储子模块的输出端与所述的训练实施子模块的输入端相连,所述的训练实施子模块的输出端与所述的层次时间记忆网络数据库的输入端相连,所述的读取子模块的第一输入端供接收外部待理解目标图像,该读取子模块的第二输入端与所述的层次时间记忆网络数据库的输出端相连,读取子模块的输出端与所述的理解实施子模块的输入端相连,该理解实施子模块的输出端即为本系统的输出端。
利用上述的图像理解系统的图像理解方法,其特征在于该方法包括以下步骤:
a)所述的层次时间记忆网络训练模块的输入端接收训练图像,构建训练图 像集P并存入所述的图像存储子模块;
b)所述的训练实施子模块利用训练图像集P对层次时间记忆网络进行训练;
c)将训练好的层次时间记忆网络存入所述的层次时间记忆网络数据库;
d)所述的图像理解模块接收外部待理解的目标图像op,利用层次时间记忆网络数据库中存储的各层次时间记忆网络对所述的目标图像op进行理解。
所述的构建训练图像集P的过程如下: 
根据实际需求,用户有目的地选取具有代表性的分属n个类别的若干图像组成训练图像集P,并且将所述的图像按类别存放在不同的图像组中,并为每个图像组设置语义标签,即
P={(SP1,label1),(SP2,label2),…(SPi,labeli),…(SPn,labeln)},n≥1
其中:SPi为第i个图像组,labeli为第i个图像组的语义标签,labeli是SPi所属类别的自然语言描述,每一个图像组中又包含若干图像,为图像组中每个图像进行编号,第i个图像组SPi表示为:
SPi={pi,1,pi,2,…pi,j,…}
上式表示图像组SPi中的每一个图像pi,j的第一个下标i代表此图像所在的图像组,并且pi,j也有相应的语义标签labeli,然后用户将训练图像集P输入到层次时间记忆网络训练模块的输入端,将所述的训练图像集P的图像按图像组和语义标签分别存储在图像存储子模块(1-1)。
所述的训练实施子模块对层次时间记忆网络进行训练,包括以下步骤:
b-1)所述的训练实施子模块创建一个未经训练的层次时间记忆网络uHTM,以下简称为uHTM,uHTM是一个树形多层的节点层次结构,包括输入层、中间层和一个输出节点,所述的输入层包含N×M个输入层节点,所述的中间层包含e×f个中间层节点,每个中间层节点与所述的输入层中 个输入层节点相连,所述的e≤N,f≤M,且e和f可分别整除N和M,所述的输出节点与所述的中间层的e×f个中间层节点相连,所有的节点都包含一个计算单元和一个存储单元;
b-2)所述的训练实施子模块对存储在图像存储子模块的训练图像集P中的每个图像pi,j,采用分量法、最大值法或加权平均法等图像灰度化处理方法,提 取其二维灰度信息,得到二维矩阵Ai,j
b-3)所述的训练实施子模块采用最邻近插值、双线性插值或三次卷积法等常用图像缩放算法将所述的二维矩阵Ai,j转换成大小为N×M的二维矩阵Bi,j,并且Bi,j与训练图像集P中的每个图像pi,j对应着相同的图像组,所述的二维矩阵集B={B1,1,B1,2…Bi,1,…Bi,j,Bi,j+1…};
b-4)空间模式集的学习,包括下列步骤:
①设定训练初始值:所述的训练实施子模块设定欧氏距离参数D和欧氏距离参数增量ΔD,并将uHTM的中间层中每一个中间层节点的空间模式集Y和uHTM的输出节点的空间模式集Z初始化为空集,将uHTM的输出节点的时间模式集Time初始化为空集,并设定uHTM的输出节点的空间模式集Z中所能包含的聚类矩阵的个数最大值为Nc,并保存在相应节点的存储单元中;
②所述的一个输入层节点按B1,1,B1,2…Bi,1,…Bi,j,Bi,j+1…的顺序读取所述的二维矩阵集B={B1,1,B1,2…Bi,1,…Bi,j,Bi,j+1…}中的二维矩阵Bi,j保存在相应节点的存储单元;
③将该二维矩阵Bi,j传递给与此输入层节点相连的uHTM的中间层节点;
④所述的中间层节点,将从与其相连的l×m个输入层节点接收到的二维矩阵Bi,j组成一个l×m的矩阵Ma,并保存到该中间层节点的存储单元中,然后该中间层节点的计算单元对该中间层节点的空间模式集Y进行判断并进行处理:
当空间模式集Y为空集,则直接将该l×m的矩阵Ma作为一个聚类矩阵加入到该中间层节点的空间模式集Y中;
当空间模式集Y不为空集,则此中间层节点的计算单元按下列公式计算出矩阵Ma与空间模式集Y中各聚类矩阵的欧氏距离d(Ma,O):
d ( Ma , O ) = Σ x = 1 l Σ y = 1 m ( Ma ( x , y ) - O ( x , y ) ) 2
其中:O为空间模式集Y中的一个聚类矩阵,Ma(x,y)和O(x,y)分别代表矩阵Ma与矩阵O中坐标为(x,y)的值;
当所述的欧氏距离d(Ma,O)>D,则保持空间模式集Y不变,
当所述的d(Ma,O)≤D,则将该l×m的矩阵Ma作为一个新的聚类矩阵加入 到空间模式集Y中,
⑤所有的中间层节点按步骤④处理后,然后计算出中间层节点的空间模式集Y中的各聚类矩阵的平均值矩阵Me,然后将该平均值矩阵Me传递给uHTM的输出节点;
⑥所述的输出节点从各个中间层节点接收到的e×f个平均值矩阵Me正好可以组成一个N×M的矩阵Mt,并将该Mt存储在所述的输出节点的存储单元中,然后所述的输出节点的计算单元检查该输出节点的存储单元所存储的空间模式集Z并作如下处理:
当所述的空间模式集Z为空集,则将输入矩阵Bi,j作为一个聚类矩阵加入空间模式集Z中;
当空间模式集Z不为空,则计算矩阵Mt与空间模式集Z中各聚类矩阵的欧氏距离,
当所述的欧氏距离大于或等于所述的欧氏距离参数D,维持现状,
若所述的欧氏距离小于欧氏距离参数D,则将所述的输入的二维矩阵Bi,j作为一个新的聚类矩阵加入到所述的空间模式集Z,聚类矩阵数N+1;
⑦当聚类矩阵数=Nc时,则转入步骤⑧,Nc为本输出节点的空间模式集Z中聚类矩阵的个数的最大值Nc
当聚类矩阵数<Nc,且二维矩阵集B中所有的二维矩阵未被读取完,则返回步骤②,继续进行空间模式集的学习;
当聚类矩阵数<Nc,且二维矩阵集B中所有的二维矩阵已被读完,则令欧氏距离参数D=D+ΔD,返回步骤②重新进行空间模式集的学习;
⑧空间模式集的学习结束,将空间模式集 保存在输出节点的存储单元中,其中cg代表一个聚类矩阵,即输入的二维矩阵集B中的一个N×M的二维矩阵Bi,j
b-5)时间模式集的学习:
①所述的uHTM的输出节点的计算单元将所述的空间模式集 中的聚类矩阵分成n组,分组方法为,由空间模式集的学习过程可知,空间模式集 中的每一个聚类矩阵都是二维矩阵集 B={B1,1,B1,2…Bi,1,…Bi,j,Bi,j+1…}中的一个二维矩阵,当二维矩阵cg的第一个下标为i,则将cg归入分组Gi中,分组之后,就得到一个时间模式集Time={G1,…Gi,…Gn},其中分组Gi中包含qi个聚类矩阵;
②uHTM的输出节点的计算单元根据二维矩阵集B中不同二维矩阵输入的前后关系计算出时间邻接矩阵T,为了计算时间邻接矩阵,首先要计算出时间模式集Time={G1,…Gi,…Gn}中各分组中聚类矩阵的平均值矩阵E1,…Ei,…En,其中平均值矩阵Ei是分组Gi中包含的qi个聚类矩阵的平均值矩阵,由以上计算过程可知,平均值矩阵Ei的大小也为N×M,然后利用以下公式计算出时间邻接矩阵T:
T = 1 n Σ i = 1 n - 1 ( E i + 1 - E i )
其中:n为时间模式集Time={G1,…Gi,…Gn}中分组的个数,得到的时间邻接矩阵T也是一个N×M的二维矩阵,并将时间邻接矩阵T保存在uHTM的输出节点的存储单元中;
③uHTM的输出节点的计算单元依据以下公式计算时间模式集Time中每一个分组Gi对应的时间邻接量ti
t i = 1 q i 2 Σ u = 1 N Σ v = 1 M T ( u , v )
其中:qi是分组Gi中聚类矩阵的数量,T(u,v)为时间邻接矩阵T中坐标为(u,v)的元素;
④uHTM中的输出节点将所述的空间模式集Z、时间模式集Time以及时间模式集Time中各分组Gi对应的时间邻接量ti存储在输出节点的存储单元中,获得训练好的层次时间记忆网络tHTM;
b-5)训练实施子模块(1-2)将训练后的层次时间记忆网络tHTM用可扩展标记语言(XML)保存成XML文件,将此XML文件的文件名XMLname、存储路径XMLpath、层次时间记忆网络输入端的大小InputSize、可识别语义标签的数量LabelNum和语义标签集Labels组成数据帧HTMInfo,其中Labels的表示方法为:
Labels=″label1+label2+…+labeli+…+labeln
即各语义标签labeli按其下标i的大小依次排列,中间用字符“+”相连,作为分割各语义标签的标志位,然后将HTMInfo通过层次时间记忆网络训练模块的输出端发送到层次时间记忆网络数据库进行存储。
所述的将训练好的层次时间记忆网络存入所述的层次时间记忆网络数据库的具体过程是:在层次时间记忆网络数据库中创建数据表trainedHTM,表的结构如以下SQL语言所述:
CREATE TABLE IF NOT EXISTS trainedHTM 
(
XMLname CHAR(255) NOT NULL,
XMLpath CHAR(255) NOT NULL,
InputSize CHAR(255) NOT NULL,
LabelNum INT NOT NULL,
Labels CHAR(255) NOT NULL
)
其中:XMLname为保存有训练好的层次时间记忆网络的XML文件的文件名,XMLname为上述XML文件的存储路径,InputSize为输入层大小,LabelNum为可识别的语义标签的数目,Labels为语义标签集,CHAR表示此字段为字符格式,INT表示此字段为整数格式,NOT NULL表示此字段不能为空,然后依照上述数据表trainedHTM的数据结构,将从层次时间记忆网络训练模块的输出端接收到的数据帧HTMInfo存入层次时间记忆网络数据库的数据表trainedHTM中;
所述的对所述的目标图像op进行理解,包括以下步骤:
1)所述的读取子模块的第一输入端接收待理解的目标图像op存储在读取子模块(3-1);
2)所述的读取子模块的第二输入端从层次时间记忆网络数据库中输出端读取数据表trainedHTM中的读取与待理解的目标图像op相关的数据项HTMdatak,并将其发送给理解实施子模块;
3)理解实施子模块从所述的数据项HTMdatak中解析出训练好的层次时间记忆网络tHTMk的XML文件的文件名XMLnamek,XML文件的存储路径XMLpathk,层次时间记忆网络输入层大小InputSizek,可识别的语义标签的数量LabelNumk和语义标签集Labelsk,并根据存储路径XMLpathk加载XML文件, 解析出训练好的层次时间记忆网络tHTMk,并设定判定阈值th;
4)理解实施子模块采用分量法、最大值法或加权平均法等图像灰度化处理方法,对所述的目标图像op的二维灰度信息,得到二维矩阵A2;采用最邻近插值、双线性插值或三次卷积法等常用图像缩放算法对二维矩阵A2进行大小变换,得到目标矩阵B2,使目标矩阵B2的大小与所述的层次时间记忆网络tHTMk的输入层的大小InputSizek一致;
5)所述的tHTMi的输入层节点读入目标矩阵B2对应元素的数值;
6)理解实施子模块计算目标矩阵B2与tHTMk中输出节点的空间模式集  Z = { c 1 , . . . , c g , . . . , c N g } 中各聚类矩阵的欧氏距离 D op = { D 1 , . . . , D g , . . . , D N c } , 并依据空间模式集 中各聚类矩阵cg在输出节点的时间模式集Time={G1,…Gi,…Gn}中的分组确定Dg对应的分组Gi,即如果cg位于分组Gi中,则Dg就对应着分组Gi
7)理解实施子模块利用下式计算目标图像op与各语义标签labeli相匹配程度的中间概率值tproi
tpro i = t i 1 q i Σ g ∈ G i D g
其中:ti为tHTMi的输出节点保存的时间邻接量,Dg为目标矩阵B2与属于分组Gi中各聚类矩阵ci的欧氏距离,qi为Gi中聚类矩阵的数量;
8)计算归一化概率值proi
pro i = tpro i Σ i = 1 n tpro i
其中:n为输出节点的时间模式集Time={G1,…Gi,…Gn}中的分组的个数,依上述归一化公式,可以保证proi位于0和1之间;
9)将归一化概率值proi与事先设定好的判定阈值th进行比较,当proi≥th,则将语义标签labeli添加到所述的目标图像op的语义描述字段S中,转入步骤10)
当proi<th,则不将语义标签labeli添加到此目标图像op的语义描述字段S 中,并转到步骤2),所述的读取子模块从层次时间记忆网络数据库中读取其他数据项;
当proi<th,且遍历层次时间记忆网络数据库中的所有数据项,则转入步骤11);
10)图像理解模块通过其输出端将目标图像op的语义描述字段S输出,实现了对目标图像op的自然语言理解;
11)图像理解模块通过其输出端输出Err,表示对目标图像op理解失败。 
与现在技术相比,本发明具有以下优点:
本发明中提出的基于层次时间记忆算法的图像理解系统及其图像理解方法,应用了一种新的、运算量更小的层次时间记忆算法和数据库技术,利用本发明中所述的图像理解系统和图像理解方法可以有效的将图像内容信息转化为自然语义描述,实现对图像内容的深度理解,由于运用了数据库技术,用户可以灵活的对其需要理解的图像内容信息进行配置,具有极高的灵活性和通用性。与传统的图像理解方法相比,本发明中提出的图像理解系统和图像理解方法较大程度的减少了运算时间,克服了传统图像方法计算量大、灵活性和通用性差等缺点。
附图说明
图1基于层次时间记忆算法的图像理解系统的结构框图
图2时间记忆网络训练模块1的结构框图
图3图像理解模块3的结构框图
图4层次时间记忆网络训练流程图
图5空间模式集的学习流程图
图6时间模式集的学习流程图
图7外部待理解的目标图像op
图8对输入的目标图像op进行理解的流程图
图9用层次时间记忆网络tHTM对B2实施理解的流程图
图10输出的语义描述字段S
具体实施方式
以下结合附图和实施例对本发明做进一步说明,但不应以此限制本发明的保护范围。
请参照图1,图1是本发明中基于层次时间记忆算法的图像理解系统的结构框图,由图1可见,本发明中所述的基于层次时间记忆算法的图像理解系统,包括依次连接层次时间记忆网络训练模块1、层次时间记忆网络数据库2和图像理解模块3,所述的层次时间记忆网络训练模块1包括图像存储子模块1-1和训练实施子模块1-2,所述的图像存储子模块1-1的输入端即层次时间记忆网络训练模块1的输入端,图像存储子模块1-1的输出端与训练实施子模块1-2的输入端相连,训练实施子模块1-2的输出端(即层次时间记忆网络训练模块1的输出端)与层次时间记忆网络数据库2的输入端相连,所述的图像理解模块3包括读取子模块3-1和理解实施子模块3-2,所述的读取子模块3-1的第一输入端(即图像理解模块3的第一输入端)接收外部待理解目标图像,读取子模块3-1的第二输入端与层次时间记忆网络数据库2的输出端相连,读取子模块3-1的输出端与理解实施子模块3-2的输入端相连,理解实施子模块3-2的输出端即为图像理解模块3的输出端。
所述的图像理解系统的图像理解方法,该方法包括以下步骤:
a)所述的层次时间记忆网络训练模块1的输入端接收训练图像集P,构建训练图像集P;
b)所述的层次时间记忆网络训练模块1利用训练图像集P对层次时间记忆网络进行训练;
c)将训练好的层次时间记忆网络存入所述的层次时间记忆网络数据库2;
d)所述的图像理解模块3接收外部待理解的目标图像op,利用层次时间记忆网络数据库2中存储的各层次时间记忆网络对所述的目标图像op进行理解。
以下结合本发明实施例在场景理解中的具体应用对上述步骤进行详细阐述:
所述的层次时间记忆网络训练模块1的输入端接收训练图像,构建训练图像集P,包括以下步骤:
根据场景理解的实际需求,用户有目的选取具有代表性的分属于“人”和“车”两个不同类别的图像组SP1和SP2,共100张图像组成训练图像集P,并分别为代 表“人”和“车”的两个图像组SP1和SP2设定语义标签people和car,表示为:
P={(SP1,people),(SP2,car)}
其中:图像组SP1和图像组SP2所对应的语义标签分别为people和car,people和car是对图像组SP1和SP2中的图像所属类别“人”和“车”的自然语言描述,在本实施例中,图像组SP1中包含45张图像,图像组SP2中包含55张图像,对图像组SP1和图像组SP2中的图像进行编号,记为:
SP1={p1,1,p1,2,…p2,45]
SP2={p2,1,p2,2,…p2,55];
上式表示如果图像pi,j的第一个下标i为1,则代表此图像所在的图像组为SP1,那么其语义标签为people,如果图像pi,j的第一个下标i为2,则代表此图像所在的图像组为SP2,其语义标签为car,然后用户将训练图像集P输入到层次时间记忆网络训练模块1的输入端,所述的层次时间记忆网络训练模块1将从其输入端接收到的训练图像集P以及其中的各图像组和语义标签存储在图像存储子模块1-1中;
请参照图4,图4是层次时间记网络的训练流程图,从图中可见,利用本发明中提出的图像理解方法中的步骤b,对层次时间记忆网络进行训练的步骤如下:
b-1)所述的训练实施子模块1-2创建一个未经训练的层次时间记忆网络uHTM,以下简称为uHTM,uHTM是一个树形多层的节点层次结构,包括输入层、中间层和一个输出节点,将所述的输入层的大小设为160×210,即uHTM包含160×210个输入层节点,将uHTM的中间层的大小设为16×21(此处16≤160,21≤210,且16和21可分别整除160和210),所述的中间层包含16×21个中间层节点,所述的中间层中每个中间层节点与uHTM的输入层中10×10(此处,  个输入层节点相连,uHTM的输出节点与uHTM的中间层中所有的16×21个中间层节点相连,以上所述的uHTM中所有的节点都包含一个计算单元和一个存储单元;
b-2)在本实施例中所述的训练实施子模块1-2对所述的训练图像集P的每个图像pi,j,采用分量法这种最为典型的图像灰度化处理方法,提取出图像的8 阶二维灰度矩阵,得到8阶二维灰度二维矩阵Ai,j
b-3)在本实施例中所述的训练实施子模块1-2采用常用图像缩放算法中的最邻近插值法将所述的二维矩阵Ai,j转换成大小为160×210的二维矩阵Bi,j,并且Bi,j与训练图像集P中的每个图像pi,j一一对应,在本实施例中得到的二维矩阵集为B={B1,1,B1,2…Bi,1,…Bi,j,Bi,j+1…B2,55];
b-4)请参照图5,图5是空间模式集的学习流程图,由图5可见,时间模式集的学习,包括下列步骤:
①设定训练初始值:所述的训练实施子模块(1-2)设定欧氏距离参数D=25和欧氏距离参数增量ΔD=1.5,并将uHTM的中间层中每一个中间层节点的空间模式集Y和uHTM的输出节点的空间模式集Z初始化为空集,将uHTM的输出节点的时间模式集Time初始化为空集,并设定uHTM的输出节点的空间模式集Z中所能包含的聚类矩阵的个数最大值为Nc=20,并保存在相应节点的存储单元中;
②所述的一个输入层节点按B1,1,B1,2…Bi,1,…Bi,j,Bi,j+1…B2,55的顺序读取所述的二维矩阵集B={B1,1,B1,2…Bi,1,…Bi,j,Bi,j+1…B2,55]中的二维矩阵Bi,j保存在相应节点的存储单元;
③将该二维矩阵Bi,j传递给与此输入层节点相连的uHTM的中间层节点;
④所述的中间层节点,将从与其相连的10×10个输入层节点接收到的二维矩阵Bi,j组成一个10×10的矩阵Ma,并保存到该中间层节点的存储单元中,然后该中间层节点的计算单元对该中间层节点的空间模式集Y进行判断并进行处理:
当空间模式集Y为空集,则直接将该10×10的矩阵Ma作为一个聚类矩阵加入到该中间层节点的空间模式集Y中;
当空间模式集Y不为空集,则此中间层节点的计算单元按下列公式计算出矩阵Ma与空间模式集Y中各聚类矩阵的欧氏距离d(Ma,O):
d ( Ma , O ) = Σ x = 1 10 Σ y = 1 10 ( Ma ( x , y ) - O ( x , y ) ) 2
其中:O为空间模式集Y中的一个聚类矩阵,Ma(x,y)和O(x,y)分别代表矩阵Ma与矩阵O中坐标为(x,y)的值;
当所述的欧氏距离d(Ma,O)>25,则保持空间模式集Y不变,
当所述的d(Ma,O)≤25,则将该10×10的矩阵Ma作为一个新的聚类矩阵加入到空间模式集Y中,
⑤所有的中间层节点按步骤④处理后,计算出中间层节点的空间模式集Y中的各聚类矩阵的平均值矩阵Me,然后将该平均值矩阵Me传递给uHTM的输出节点;
⑥所述的输出节点从各个中间层节点接收到的16×21个平均值矩阵Me正好可以组成一个160×210的矩阵Mt,并将该Mt存储在所述的输出节点的存储单元中,然后所述的输出节点的计算单元检查该输出节点的存储单元所存储的空间模式集Z并作如下处理:
当所述的空间模式集Z为空集,则将输入矩阵Bi,j作为一个聚类矩阵加入空间模式集Z中;
当空间模式集Z不为空,则计算矩阵Mt与空间模式集Z中各聚类矩阵的欧氏距离,
当所述的欧氏距离大于或等于所述的欧氏距离参数25,维持现状,
若所述的欧氏距离小于欧氏距离参数25,则将所述的输入的二维矩阵Bi,j作为一个新的聚类矩阵加入到所述的空间模式集Z,聚类矩阵数N+1;
⑦当聚类矩阵数=20时,则转入步骤⑧,20为本输出节点的空间模式集Z中聚类矩阵的个数的最大值;
当聚类矩阵数<20,且二维矩阵集B中所有的二维矩阵未被读取完,则返回步骤②,继续进行空间模式集的学习;
当聚类矩阵数<20,且二维矩阵集B中所有的二维矩阵已被读完,则令欧氏距离参数D=D+ΔD,返回步骤②重新进行空间模式集的学习;
⑧空间模式集的学习结束,将空间模式集Z={c1,…,cg,…c20]保存在输出节点的存储单元中,其中cg代表一个聚类矩阵,即输入的二维矩阵集B中的一个160×210的二维矩阵Bi,j
b-5)时间模式集的学习:请参照图6,图6是时间模式集的学习流程图,从图6中可以看出时间模式集的学习过程如下:
①所述的uHTM的输出节点的计算单元将所述的空间模式集 Z={c1,…,cg,…c20]中的聚类矩阵分成2组,分组方法为,由空间模式集的学习过程可知,空间模式集Z={c1,…,cg,…c20]中的每一个聚类矩阵都是二维矩阵集B={B1,1,B1,2…Bi,1,…Bi,j,Bi,j+1…B2,55]中的一个二维矩阵,如果二维矩阵cg的第一个下标为1,则将cg归入分组G1中,如果二维矩阵cg的第一个下标为2,则将cg归入分组G2中,分组之后,得到时间模式集Time={G1,G2},在本实施例中分组G1中包含9个聚类矩阵,分组G2中包含11个聚类矩阵;
②uHTM的输出节点的计算单元根据二维矩阵集B中不同二维矩阵输入的前后关系计算出时间邻接矩阵T,为了计算时间邻接矩阵,首先要计算出时间模式集Time={G1,G2}中各分组中聚类矩阵的平均值矩阵E1,E2,其中平均值矩阵E1是分组G1中包含的9个聚类矩阵的平均值矩阵,平均值矩阵E2是分组G2中包含的11个聚类矩阵的平均值矩阵,由以上计算过程可知,平均值矩阵E1和E2的大小也为160×210,然后利用以下公式计算出时间邻接矩阵T:
T = 1 n Σ i = 1 n - 1 ( E i + 1 - E i )
在本实施例中,n=2,得到的时间邻接矩阵T也是一个160×210的二维矩阵,并将T保存在uHTM的输出节点的存储单元中;
③uHTM的输出节点的计算单元依据以下公式计算时间模式集Time中每一个分组Gi对应的时间邻接量ti
t i = 1 q i 2 Σ u = 1 N Σ v = 1 M T ( u , v )
其中:qi是分组Gi中聚类矩阵的数量,T(u,v)为时间邻接矩阵T中坐标为(u,v)的元素,本实施例中,q1=9,q2=11,N=160,M=210,经计算得到的输出节点的时间邻接量为t1=0.64,t2=0.38;
④uHTM中的输出节点将其空间模式集Z、时间模式集Time以及时间模式集Time中分组G1和G2对应的时间邻接量t1和t2存储在此uHTM中的输出节点的存储单元中,经过上述空间模式集和时间模式集的学习,就得到了训练好的层次时间记忆网络tHTM,在本实施例中,对100张图像进行训练,训练时间约为23秒,比采用分割相似度的方法大幅度的节省了训练时间;
b-6)训练实施子模块1-2将训练后的层次时间记忆网络tHTM用可扩展标记 语言(XML)保存成XML文件,将此XML文件的文件名XMLname、存储路径XMLpath、层次时间记忆网络输入端的大小InputSize、可识别语义标签的数量LabelNum和语义标签集Labels组成数据帧HTMInfo,其中Labels的表示方法为:
Labels=″label1+label2+…+labeli+…+labeln
即各语义标签labeli按其下标i的大小依次排列,中间用字符“+”相连,作为分割各语义标签的标志位,在本实施例中,XML文件的文件名XMLname为PeoAndCar.xml,存储路径XMLpath采用了Windows操作系统下的表示方法,本实施例中存储路径为D:\ImageUnderstanding\PeoAndCar.xml,层次时间记忆网络输入层的大小InputSize表示为“160*210”,可识别语义标签的数量LabelNum为2,语义标签集Labels表示为“people+car”,语义标签集Labels用符号“+”来连接各语义标签是为是用“+”来做为解析时的标志位,然后将HTMInfo通过层次时间记忆网络训练模块1的输出端发送到层次时间记忆网络数据库2的输入端。
本发明中提出的步骤c,即将训练好的层次时间记忆网络存入所述的层次时间记忆网络数据库2,提出了利用了数据库对多个层次时间记忆网络进行管理的方法,可以做到对图像的多个属性进行理解,本实施例中其具体实施步骤包括:
在本实施例中,层次时间记忆网络数据库2用到的数据库管理平台为Microsoft SQL server 2008,在层次时间记忆网络数据库2中创建数据表trainedHTM,表的结构如以下SQL语言所述:
CREATE TABLE IF NOT EXISTS trainedHTM 
(
XMLname CHAR(255) NOT NULL,
XMLpath CHAR(255) NOT NULL,
InputSize CHAR(255) NOT NULL,
LabelNum INT NOT NULL,
Labels CHAR(255)NOT NULL
)
其中:XMLname为保存有训练好的层次时间记忆网络的XML文件的文件名,XMLname为上述XML文件的存储路径,InputSize为输入层大小,LabelNum为 可识别的语义标签的数目,Labels为语义标签集,CHAR表示此字段为字符格式,INT表示此字段为整数格式,NOT NULL表示此字段不能为空,依照数据表trainedHTM的数据结构,将从层次时间记忆网络训练模块1的输出端接收到的数据帧HTMInfo存入层次时间记忆网络数据库2的数据表trainedHTM中,所用到的SQL server 2008的数据库操作语句如下:
INSERT INTO trainedHTM
(
XMLname,XMLpath,InputSize,LableNum,Labels
)
VALUES
(
“PeoAndCar.xml”,“D:\ImageUnderstanding\PeoAndCar.xml”,“160*210”,2,“people+car”
)
在本实施例中,由于采用了数据库技术,用户还可以根据需求训练能够对图像的其他属性进行理解的层次时间记忆网络,并将其存储在数据库中,这样在实际实用过程中,用户就可以更加灵活的对需要识别的图像属性进行配置,所以本发明中所述的图像理解系统具有更高的灵活性和通用性。
请参见图7,图7为本实施例中的外部待理解的目标图像op,由图7可见,op为场景识别中典型的图像,其分辨率为640×840,请参照图8,图8是对输入的目标图像op进行理解的流程图,由图8可见,本发明中所述的图像理解模块3接收外部待理解的目标图像op,利用层次时间记忆网络数据库2中存储的各层次时间记忆网络对输入的目标图像op进行理解包括以下步骤:
1)所述的读取子模块3-1的第一输入端接收待理解的目标图像op存储在读取子模块3-1中;
2)在本实施例中,图像理解模块3的第二输入端(即读取子模块3-1的第二输入端)依需求从层次时间记忆网络数据库2中读取数据表trainedHTM中的保存有上述tHTM的数据项HTMdata,并将其发送给理解实施子模块3-2;
3)理解实施子模块3-2从数据项HTMdata中解析出保存有已训练好的层次时间记忆网络tHTM的XML文件的文件名PeoAndCar.xml,XML文件的存储路 径D:\ImageUnderstanding\PeoAndCar.xml,层次时间记忆网络输入层大小160*210,可识别的语义标签的数量2和语义标签集people+car,并根据存储路径加载XML文件,从用符号“+”作为标志位解析出已训练好的层次时间记忆网络tHTM的语义标签label1=people和label2=car,并设定判定阈值th=0.7;
4)理解实施子模块3-2采用分量法最常用的图像灰度化处理方法,提取出存储在读取子模块3-1目标图像op的二维灰度信息,得到二维矩阵A2;理解实施子模块3-2采用最典型的最邻近插值这一图像缩放算法对二维矩阵A2进行大小变换,得到矩阵B2,使矩阵B2的大小与解析出的已训练好的层次时间记忆网络tHTM的输入层的大小160×210一致;
请参照图9,图9是用层次时间记忆网络tHTM对B2实施理解的流程图,从图9可以看到,用层次时间记忆网络tHTM对B2实施理解包括以下步骤:
5)所述的tHTM的输入层节点读入矩阵B2对应元素的数值;
6)理解实施子模块3-2计算矩阵B2与tHTM中输出节点的空间模式集Z={c1,…,cg,…c20}中各聚类矩阵cg的欧氏距离Dop={D1,…Dg,…D20},如果聚类矩阵cg在输出节点的时间模式集Time={G1,G2}中的所在的分组为G1,则Di对应的分组也为G1,如果聚类矩阵cg在输出节点的时间模式集Time={G1,G2}中所在的分组为G2,则Di对应的分组也为G2
7)理解实施子模块3-2计算目标图像op与各语义标签labeli相匹配程度的中间概率值tproi
tpro i = t i 1 q i Σ g ∈ G i D g
其中:ti为tHTMi的输出节点保存的时间邻接量,Dg为矩阵B2与属于分组Gi中各聚类矩阵ci的欧氏距离,qi为Gi中聚类矩阵的数量,在本实施例中,q1=9,q2=11,t1=0.64,t2=0.38,根据以上公式计算得出tpro1=41.36,tpro2=5.64;
8)理解实施子模块3-2利用中间概率值tproi计算归一化后的概率值proi
pro i = tpro i Σ i = 1 n tpro i
其中:n为输出节点的时间模式集Time={G1,…Gi,…Gn}中分组的个数,在本实施例中输出节点的时间模式集Time中只有两个分组G1和G2,依上述归一化公式,可以保证proi位于0和1之间,在本实施例中,最终得到pro1=0.88,pro2=0.12;
9)将得到的概率值pro1=0.88,pro2=0.12与事先设定好的判定阈值th=0.7进行比较,因为pro1≥0.7,则将语义标签label1=people添加到此目标图像op的语义描述字段S中,因为pro2<0.7,则不将语义标签labeli添加到此目标图像op的语义描述字段S中,得到语义描述字段S=people;
10)因为在本实施例中得到的语义描述字段S不为空,图像理解模块3通过其输出端将目标图像op的语义描述字段S=people输出,在本实施例中的输出语义描述字段S见图10,由以上过程就实现了对目标图像op的自然语言理解,得知目标图像op中有“人”存在。
本实施例的优点:
本实施例应用了本发明中提出的基于层次时间记忆算法的图像理解系统及其图像理解方法实现了典型的场景理解,与传统的分割相似度的方法相比,大幅度的节省了训练时间,而且由于本实施例还运用了本发明中提出的数据库技术,可以通过数据库管理多个层次时间记忆网络以实现对图像的多个属性进行理解,所以还具有更高的灵活性和通用性。

Claims (3)

1.一种利用基于层次时间记忆算法的图像理解系统的图像理解方法,所述的图像理解系统,包括依次连接的层次时间记忆网络训练模块(1)、层次时间记忆网络数据库(2)和图像理解模块(3),所述的层次时间记忆网络训练模块(1)包括图像存储子模块(1-1)和训练实施子模块(1-2),所述的图像理解模块(3)包括读取子模块(3-1)和理解实施子模块(3-2),其连接关系是:
所述的图像存储子模块(1-1)的输入端即层次时间记忆网络训练模块(1)的输入端,所述的图像存储子模块(1-1)的输出端与所述的训练实施子模块(1-2)的输入端相连,所述的训练实施子模块(1-2)的输出端与所述的层次时间记忆网络数据库(2)的输入端相连,所述的读取子模块(3-1)的第一输入端供接收外部待理解目标图像,该读取子模块(3-1)的第二输入端与所述的层次时间记忆网络数据库(2)的输出端相连,读取子模块(3-1)的输出端与所述的理解实施子模块(3-2)的输入端相连,该理解实施子模块(3-2)的输出端即为本系统的输出端;其特征在于该方法包括以下步骤:
a)所述的层次时间记忆网络训练模块(1)的输入端接收训练图像,构建训练图像集P并存入所述的图像存储子模块(1-1);
b)所述的训练实施子模块(1-2)利用训练图像集P对层次时间记忆网络进行训练;
c)将训练好的层次时间记忆网络存入所述的层次时间记忆网络数据库(2);
d)所述的图像理解模块(3)接收外部待理解的目标图像op,利用层次时间记忆网络数据库(2)中存储的各层次时间记忆网络对所述的目标图像op进行理解;
所述的构建训练图像集P的过程如下:
根据实际需求,用户有目的地选取具有代表性的分属n个类别的若干图像组成训练图像集P,并且将所述的图像按类别存放在不同的图像组中,并为每个图像组设置语义标签,即
P={(SP1,label1),(SP2,label2),…(SPi,labeli),…(SPn,labeln)},n≥1
其中:SPi为第i个图像组,labeli为第i个图像组的语义标签,labeli是SPi所属类别的自然语言描述,每一个图像组中又包含若干图像,为图像组中每个图像进行编号,第i个图像组SPi表示为:
SPi={pi,1,pi,2,…pi,j,…}
上式表示图像组SPi中的每一个图像pi,j的第一个下标i代表此图像所在的图像组,并且pi,j也有相应的语义标签labeli,然后用户将训练图像集P输入到层次时间记忆网络训练模块(1)的输入端,将所述的训练图像集P的图像按图像组和语义标签分别存储在图像存储子模块(1-1)中;
所述的训练实施子模块(1-2)对层次时间记忆网络进行训练,包括以下步骤:
b-1)所述的训练实施子模块(1-2)创建一个未经训练的层次时间记忆网络uHTM,以下简称为uHTM,uHTM是一个树形多层的节点层次结构,包括输入层、中间层和一个输出节点,所述的输入层包含N×M个输入层节点,所述的中间层包含e×f个中间层节点,每个中间层节点与所述的输入层中个输入层节点相连,所述的e≤N,f≤M,且e和f可分别整除N和M,所述的输出节点与所述的中间层的e×f个中间层节点相连,所有的节点都包含一个计算单元和一个存储单元;
b-2)所述的训练实施子模块(1-2)对存储在图像存储子模块(1-1)中的训练图像集P中的每个图像pi,j,采用分量法、最大值法或加权平均法对图像进行灰度化处理,提取其二维灰度信息,得到二维矩阵Ai,j
b-3)所述的训练实施子模块(1-2)采用最邻近插值、双线性插值或三次卷积法对图像进行缩放,将所述的二维矩阵Ai,j转换成大小为N×M的二维矩阵Bi,j,并且Bi,j与训练图像集P中的每个图像pi,j对应着相同的图像组,所述的二维矩阵集B={B1,1,B1,2…Bi,1,…Bi,j,Bi,j+1…};
b-4)空间模式集的学习,包括下列步骤:
①设定训练初始值:所述的训练实施子模块(1-2)设定欧氏距离参数D和欧氏距离参数增量ΔD,并将uHTM的中间层中每一个中间层节点的空间模式集Y和uHTM的输出节点的空间模式集Z初始化为空集,将uHTM的输出节点的时间模式集Time初始化为空集,并设定uHTM的输出节点的空间模式集Z中所能包含的聚类矩阵的个数最大值为Nc,并保存在相应节点的存储单元中;
②所述的一个输入层节点按B1,1,B1,2…Bi,1,…Bi,j,Bi,j+1…的顺序读取所述的二维矩阵集B={B1,1,B1,2…Bi,1,…Bi,j,Bi,j+1…}中的二维矩阵Bi,j保存在相应节点的存储单元;
③将该二维矩阵Bi,j传递给与此输入层节点相连的uHTM的中间层节点;
④所述的中间层节点,将从与其相连的l×m个输入层节点接收到的二维矩阵Bi,j组成一个l×m的矩阵Ma,并保存到该中间层节点的存储单元中,然后该中间层节点的计算单元对该中间层节点的空间模式集Y进行判断并进行处理:
当空间模式集Y为空集,则直接将该l×m的矩阵Ma作为一个聚类矩阵加入到该中间层节点的空间模式集Y中;
当空间模式集Y不为空集,则该中间层节点的计算单元按下列公式计算出矩阵Ma与空间模式集Y中各聚类矩阵的欧氏距离d(Ma,O):
d ( Ma , O ) = Σ x = 1 l Σ y = 1 m ( Ma ( x , y ) - O ( x , y ) ) 2
其中:O为空间模式集Y中的一个聚类矩阵,Ma(x,y)和O(x,y)分别代表矩阵Ma与矩阵O中坐标为(x,y)的值;
当所述的欧氏距离d(Ma,O)>D,则保持空间模式集Y不变,当所述的d(Ma,O)≤D,则将该l×m的矩阵Ma作为一个新的聚类矩阵加入到空间模式集Y中,
⑤所有的中间层节点按步骤④处理后,计算出中间层节点的空间模式集Y中的各聚类矩阵的平均值矩阵Me,然后将该平均值矩阵Me传递给uHTM的输出节点;
⑥所述的输出节点从各个中间层节点接收到的e×f个平均值矩阵Me正好可以组成一个N×M的矩阵Mt,并将该Mt存储在所述的输出节点的存储单元中,然后所述的输出节点的计算单元检查该输出节点的存储单元所存储的空间模式集Z并作如下处理:
当所述的空间模式集Z为空集,则将输入矩阵Bi,j作为一个聚类矩阵加入空间模式集Z中;
当空间模式集Z不为空,则计算矩阵Mt与空间模式集Z中各聚类矩阵的欧氏距离,
当所述的欧氏距离大于或等于所述的欧氏距离参数D,维持现状,当所述的欧氏距离小于欧氏距离参数D,则将所述的输入的二维矩阵Bi,j作为一个新的聚类矩阵加入到所述的空间模式集Z,聚类矩阵数N+1;
⑦当聚类矩阵数=Nc时,则转入步骤⑧,Nc为本输出节点的空间模式集Z中聚类矩阵的个数的最大值Nc
当聚类矩阵数<Nc,且二维矩阵集B中所有的二维矩阵未被读取完,则返回步骤②,继续进行空间模式集的学习;
当聚类矩阵数<Nc,且二维矩阵集B中所有的二维矩阵已被读完,则令欧氏距离参数D=D+ΔD,返回步骤②;
⑧空间模式集的学习结束,将空间模式集保存在输出节点的存储单元中,其中cg代表一个聚类矩阵,即输入的二维矩阵集B中的一个N×M的二维矩阵Bi,j
b-5)时间模式集的学习:
①所述的uHTM的输出节点的计算单元将所述的空间模式集中的聚类矩阵分成n组,分组方法为,由空间模式集的学习过程可知,空间模式集中的每一个聚类矩阵都是二维矩阵集B={B1,1,B1,2…Bi,1,…Bi,j,Bi,j+1…}中的一个二维矩阵,当二维矩阵cg的第一个下标为i,则将cg归入分组Gi中,分组之后,就得到一个时间模式集Time={G1,…Gi,…Gn},其中分组Gi中包含qi个聚类矩阵;
②uHTM的输出节点的计算单元根据二维矩阵集B中不同二维矩阵输入的前后关系计算出时间邻接矩阵T,为了计算时间邻接矩阵,首先要计算出时间模式集Time={G1,…Gi,…Gn}中各分组中聚类矩阵的平均值矩阵E1,…Ei,…En,其中平均值矩阵Ei是分组Gi中包含的qi个聚类矩阵的平均值矩阵,由以上计算过程可知,平均值矩阵Ei的大小也为N×M,然后利用以下公式计算出时间邻接矩阵T:
T = 1 n &Sigma; i = 1 n - 1 ( E i + 1 - E i )
其中:n为时间模式集Time={G1,…Gi,…Gn}中分组的个数,得到的时间邻接矩阵T也是一个N×M的二维矩阵,并将时间邻接矩阵T保存在uHTM的输出节点的存储单元中;
③uHTM的输出节点的计算单元依据以下公式计算时间模式集Time中每一个分组Gi对应的时间邻接量ti
t i = 1 q i 2 &Sigma; u = 1 N &Sigma; v = 1 M T ( u , v )
其中:qi是分组Gi中聚类矩阵的数量,T(u,v)为时间邻接矩阵T中坐标为(u,v)的元素;
④uHTM中的输出节点将所述的空间模式集Z、时间模式集Time以及时间模式集Time中各分组Gi对应的时间邻接量ti存储在输出节点的存储单元中,获得训练好的层次时间记忆网络tHTM;
b-6)训练实施子模块(1-2)将训练后的层次时间记忆网络tHTM用可扩展标记语言(XML)保存成XML文件,将此XML文件的文件名XMLname、存储路径XMLpath、层次时间记忆网络输入端的大小InputSize、可识别语义标签的数量LabelNum和语义标签集Labels组成数据帧HTMInfo,其中Labels的表示方法为:
Labels="label1+label2+…+labeli+…+labeln"
即各语义标签labeli按其下标i的大小依次排列,中间用字符“+”相连,作为分割各语义标签的标志位,然后将HTMInfo通过层次时间记忆网络训练模块(1)的输出端发送到层次时间记忆网络数据库(2)的输入端。
2.根据权利要求1所述的图像理解方法,其特征在于,所述的将训练好的层次时间记忆网络存入所述的层次时间记忆网络数据库(2)的具体过程是:在层次时间记忆网络数据库(2)中创建数据表trainedHTM,表的结构如以下SQL语言所述:
其中:XMLname为保存有训练好的层次时间记忆网络的XML文件的文件名,XMLpath为上述XML文件的存储路径,InputSize为输入层大小,LabelNum为可识别的语义标签的数目,Labels为语义标签集,CHAR表示此字段为字符格式,INT表示此字段为整数格式,NOT NULL表示此字段不能为空,然后依照上述数据表trainedHTM的数据结构,将从层次时间记忆网络训练模块(1)的输出端接收到的数据帧HTMInfo存入层次时间记忆网络数据库(2)的数据表trainedHTM中。
3.根据权利要求1所述的图像理解方法,其特征在于,所述的对所述的目标图像op进行理解包括以下步骤:
1)所述的读取子模块(3-1)的第一输入端接收待理解的目标图像(op)存储在读取子模块(3-1)中;
2)所述的读取子模块(3-1)的第二输入端从层次时间记忆网络数据库(2)中输出端读取数据表trainedHT中读取与待理解的目标图像op相关的数据项HTMdatak,并将其发送给理解实施子模块(3-2);
3)理解实施子模块(3-2)从所述的数据项HTMdatak中解析出训练好的层次时间记忆网络tHTMk的XML文件的文件名XMLnamek,XML文件的存储路径XMLpathk,层次时间记忆网络输入层大小可识别的语义标签的数量和语义标签集Labelsk,并根据存储路径XMLpathk加载XML文件,解析出训练好的层次时间记忆网络tHTMk,并设定判定阈值th;
4)理解实施子模块(3-2)采用分量法、最大值法或加权平均法对图像进行灰度化处理,对所述的目标图像op的二维灰度信息,得到二维矩阵A2;采用最邻近插值、双线性插值或三次卷积法对二维矩阵A2进行大小变换,得到目标矩阵B2,使目标矩阵B2的大小与所述的层次时间记忆网络tHTMk的输入层的大小InputSizek一致;
5)所述的tHTMi的输入层节点读入目标矩阵B2对应元素的数值;
6)理解实施子模块(3-2)计算目标矩阵B2与tHTMk中输出节点的空间模式集中各聚类矩阵的欧氏距离并依据空间模式集中各聚类矩阵cg在输出节点的时间模式集Time={G1,…Gi,…Gn}中的分组确定Dg对应的分组Gi,即如果cg位于分组Gi中,则Dg就对应着分组Gi
7)理解实施子模块(3-2)利用下式计算目标图像op与各语义标签labeli相匹配程度的中间概率值tproi
tpro i = t i 1 q i &Sigma; g &Element; G i D g
其中:ti为tHTMi的输出节点保存的时间邻接量,Dg为目标矩阵B2与属于分组Gi中各聚类矩阵ci的欧氏距离,qi为Gi中聚类矩阵的数量;
8)计算归一化概率值proi
pro i = tpro i &Sigma; i = 1 n tpro i
其中:n为输出节点的时间模式集Time={G1,…Gi,…Gn}中的分组的个数,依上述归一化公式,可以保证proi位于0和1之间;
9)将归一化概率值proi与事先设定好的判定阈值th进行比较,当proi≥th,则将语义标签labeli添加到所述的目标图像op的语义描述字段S中,转入步骤10)
当proi<th,则不将语义标签labeli添加到此目标图像op的语义描述字段S中,并转到步骤2),所述的读取子模块(3-1)从层次时间记忆网络数据库(2)中读取其他数据项;
当proi<th,且遍历层次时间记忆网络数据库(2)中的所有数据项,则转入步骤11);
10)图像理解模块(3)通过其输出端将目标图像op的语义描述字段S输出,实现了对目标图像op的自然语言理解;
11)图像理解模块(3)通过其输出端输出Err,表示对目标图像op理解失败。
CN201210088032.2A 2012-03-29 2012-03-29 基于层次时间记忆算法的图像理解系统及其图像理解方法 Active CN102663445B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201210088032.2A CN102663445B (zh) 2012-03-29 2012-03-29 基于层次时间记忆算法的图像理解系统及其图像理解方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201210088032.2A CN102663445B (zh) 2012-03-29 2012-03-29 基于层次时间记忆算法的图像理解系统及其图像理解方法

Publications (2)

Publication Number Publication Date
CN102663445A CN102663445A (zh) 2012-09-12
CN102663445B true CN102663445B (zh) 2015-04-15

Family

ID=46772928

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201210088032.2A Active CN102663445B (zh) 2012-03-29 2012-03-29 基于层次时间记忆算法的图像理解系统及其图像理解方法

Country Status (1)

Country Link
CN (1) CN102663445B (zh)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103544496B (zh) * 2012-07-12 2016-12-21 同济大学 基于空间与时间信息融合的机器人场景识别方法
CN109977100B (zh) * 2016-05-24 2021-01-22 甘肃百合物联科技信息有限公司 一种增强积极心理状态的方法
JP6942488B2 (ja) * 2017-03-03 2021-09-29 キヤノン株式会社 画像処理装置、画像処理システム、画像処理方法、及びプログラム
US11200424B2 (en) * 2018-10-12 2021-12-14 Adobe Inc. Space-time memory network for locating target object in video content
CN112164092B (zh) * 2020-10-13 2022-09-27 南昌航空大学 一种广义马尔可夫稠密光流确定方法及系统
CN114025106A (zh) * 2021-12-16 2022-02-08 海宁奕斯伟集成电路设计有限公司 智能处理器、图像智能处理系统、方法及存储介质

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6122399A (en) * 1997-09-04 2000-09-19 Ncr Corporation Pattern recognition constraint network
CN101373518A (zh) * 2008-06-28 2009-02-25 合肥工业大学 图像理解中基于语义信息原型向量构成及序参量重构方法

Also Published As

Publication number Publication date
CN102663445A (zh) 2012-09-12

Similar Documents

Publication Publication Date Title
CN102663445B (zh) 基于层次时间记忆算法的图像理解系统及其图像理解方法
Chen et al. Text2shape: Generating shapes from natural language by learning joint embeddings
CN109271522B (zh) 基于深度混合模型迁移学习的评论情感分类方法及系统
Liu et al. Scene classification using hierarchical Wasserstein CNN
CN105512289B (zh) 基于深度学习和哈希的图像检索方法
CN104778224B (zh) 一种基于视频语义的目标对象社交关系识别方法
CN106383877B (zh) 一种社交媒体在线短文本聚类和话题检测方法
Picard et al. Improving image similarity with vectors of locally aggregated tensors
CN105868773A (zh) 一种基于层次随机森林的多标签分类方法
CN105631479A (zh) 基于非平衡学习的深度卷积网络图像标注方法及装置
CN105469096A (zh) 一种基于哈希二值编码的特征袋图像检索方法
CN109684476B (zh) 一种文本分类方法、文本分类装置及终端设备
CN112307351A (zh) 用户行为的模型训练、推荐方法、装置和设备
CN109918506A (zh) 一种文本分类方法及装置
CN103412878B (zh) 基于领域知识地图社区结构的文档主题划分方法
CN105718532A (zh) 一种基于多深度网络结构的跨媒体排序方法
CN112417289A (zh) 一种基于深度聚类的资讯信息智能推荐方法
CN110245228A (zh) 确定文本类别的方法和装置
CN113392179A (zh) 文本标注方法及装置、电子设备、存储介质
CN115689672A (zh) 聊天式商品导购方法及其装置、设备、介质
CN110111365B (zh) 基于深度学习的训练方法和装置以及目标跟踪方法和装置
CN113268993A (zh) 基于互信息的属性异构信息网络无监督网络表示学习方法
Yang et al. Cn: Channel normalization for point cloud recognition
CN113657272B (zh) 一种基于缺失数据补全的微视频分类方法及系统
CN109670071B (zh) 一种序列化多特征指导的跨媒体哈希检索方法和系统

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant