CN103092848B - 一种图片存储与检索方法 - Google Patents

一种图片存储与检索方法 Download PDF

Info

Publication number
CN103092848B
CN103092848B CN201110336050.3A CN201110336050A CN103092848B CN 103092848 B CN103092848 B CN 103092848B CN 201110336050 A CN201110336050 A CN 201110336050A CN 103092848 B CN103092848 B CN 103092848B
Authority
CN
China
Prior art keywords
picture
level
index
image data
level list
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
CN201110336050.3A
Other languages
English (en)
Other versions
CN103092848A (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.)
Zhejiang Dahua Technology Co Ltd
Original Assignee
Zhejiang Dahua Technology Co Ltd
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 Zhejiang Dahua Technology Co Ltd filed Critical Zhejiang Dahua Technology Co Ltd
Priority to CN201110336050.3A priority Critical patent/CN103092848B/zh
Publication of CN103092848A publication Critical patent/CN103092848A/zh
Application granted granted Critical
Publication of CN103092848B publication Critical patent/CN103092848B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Television Signal Processing For Recording (AREA)
  • Processing Or Creating Images (AREA)

Abstract

本发明涉及一种大数量图片的存储与检索方法,包括在硬盘上划分分区,使该分区包含一级索引,二级索引,三级索引和图片数据包;三级索引中存放的内容包括:图片数据包地址和图片在图片数据包中的偏移,图片的长度和图片的拍摄时间,该方法包括以下存储步骤:获取图片;提取图片的信息,将图片的信息匹配至一级索引;若匹配成功,通过一级索引定位到二级索引;再根据二级索引定位到三级索引;以及通过三级索引定位到图片数据包,将图片存储到图片数据包,并将图片在图片数据包中的偏移,图片的长度和图片的拍摄时间记录到三级索引,并更新该图片所属的一级索引和二级索引的最晚图片时间;以及继续获取图片;该方法还包括相应的检索步骤。

Description

一种图片存储与检索方法
技术领域
本发明涉及硬盘存储技术领域,尤其涉及硬盘存储技术中的大数量图片的存储与检索方法。
背景技术
在硬盘存储技术领域,如对于DVR(digital video recorder,数字视频录像机),其需要存储大量的音视频、图片等数据。对存储的内容需要及时存储并能快速检索,而且要有效的利用存储空间。传统存储图片方法是通过建立多级文件夹,按图片的属性把图片归类直接存储到某个文件夹中。使用传统的方式存储时,当图片数量过多后势必造成图片检索慢,且由于目前大部分文件系统的特性,每个文件占用的大小比文件实际大小略大,图片数过多时磁盘空间的浪费也相应增加。
发明内容
为克服上述缺陷,本发明提供了一种大数量图片的存储与检索方法,该方法包括在硬盘上划分出一个分区,其中,使该分区包含一个一级索引,若干个二级索引,若干个三级索引和相同个数的图片数据包(也可以是数据块、或数据区);一级索引划分为多个一级索引单元,每个一级索引单元用于记录二级索引文件地址和该一级索引下所有图片的公共属性,所述公共属性包括:图片的通道号、图片的事件编码、图片最早时间、图片的最晚时间;二级索引每个节点存放的内容包括:图片的最早时间、图片的最晚时间,以及非叶子节点有子节点地址,叶子节点有三级索引地址;三级索引中存放的内容包括:图片数据包地址和图片在图片数据包中的偏移,图片的长度和图片的拍摄时间,该方法包括以下存储步骤:
A.获取图片;
B.提取图片的信息,将图片的信息匹配至一级索引;
C.若匹配成功,通过一级索引定位到二级索引;
D.再根据二级索引定位到三级索引;以及
E.通过三级索引定位到图片数据包,将图片存储到图片数据包,并将图片在图片数据包中的偏移,图片的长度和图片的拍摄时间记录到三级索引,并更新该图片所属的一级索引和二级索引的最晚图片时间;以及
F.返回步骤A;
该方法包括以下检索步骤:
A.根据输入的检索条件依次检索一级索引;
B.通过一级索引定位到二级索引;
C.通过二级索引定位到三级索引;
D.通过三级索引定位到图片数据包中的图片,最后读取图片。
通过本发明,尤其是通过其中的多级索引可以快速检索图片,通过图片数据包的方式可以减少文件的个数,减少空间的浪费。
附图说明
图1为根据本发明的一个实施方案的一级索引逻辑结构;
图2为根据本发明的一个实施方案的二级索引逻辑结构;
图3为根据本发明的一个实施方案的三级索引逻辑结构;
图4为根据本发明的一个实施方案的添加图片流程图;
图5为根据本发明的一个实施方案的检索流程图。
具体实施方式
下面结合附图和实例,对本发明在DVR中的图片存储和图片检索分别进行进一步阐述:
以下实例中一级索引每个单元存放的内容为:图片的通道号、图片的事件编码、图片最早时间、图片的最晚时间、二级索引地址;二级索引每个节点存放的内容:图片的最早时间、图片的最晚时间、非叶子节点有子节点地址,叶子节点有三级索引地址;三级索引头存放的内容为:图片数据包地址;三级索引其它每个单元存放的内容:图片在图片数据包中的偏移、图片的长度、图片的拍摄时间;
图4为根据本发明的一个实施方案的添加图片流程图;以下将参考该图,描述添加图片流程。
1.根据硬盘的大小分区,例如使用西数的1T硬盘,划分成3个分区,分别为1G、499G,500G,第二个分区499G和第三个分区500G用于存放图片信息。接下来以第二个分区499G为例介绍如何存储和检索图片。
格式化第二个分区,并创建一级索引文件,创建后该文件具有固定长度且长度不可改变。一级索引存储方式如图1所示,划分为多个单元,每个单元大小相同且长度固定不变。每个单元用于记录二级索引文件地址和该一级索引下所有图片的公共属性等内容;
2.开启抓图模块,存储图片。
2.1.获取到一张图片时,提取它的图片信息:图片的通道号,图片的事件编码,图片的拍摄时间。
读取一级索引的内容,匹配一级索引中每个单元的通道号和图片事件编码,找到单元中公共属性与图片信息相匹配的最后一个单元,并根据该单元存放的二级索引地址定位到二级索引;若匹配不成功,找不到匹配的单元,则判断一级索引中是否满(即:一级索引是否有未使用的一级索引单元),若没有满,则新建二级索引,并将二级索引地址和图片的信息保存到一级索引的第一个未使用的索引单元中,这样可以保证该单元之前(包括该单元)都是指向二级索引,该单元之后未使用即未指向二级索引。
为了能够快速查询,二级索引采取B-树的存储方式。新建的二级索引树如图2所示,该树有4层,每个非叶子节点只有一个子节点,且每个节点的最早时间和最晚时间均为图片时间,叶子节点指向的三级索引为空(指该叶子节点未指向下文的三级索引)。
在B-树的存储方式中,若B-树的高度N,除叶子节点外,其余节点最多有M个子节点,即最多可存放MN个三级索引,若每个三级索引可存H个图片信息,这颗树最多可存MN*H,M、N、H的具体值可根据实际应用确定。为某一非叶子节点创建子节点时,为其连续分配M个空间,父节点和子节点通过双方各记录对方的地址方式相关联。
2.2.在定位到二级索引后,在二级索引中找到前序遍历中最后一个叶子节点。若该叶子节点未指向三级索引(或无效),则建立一个三级索引和图片数据包并将图片数据包地址记录到三级索引中,将三级索引信息(如三级索引地址等)记录到该节点中,将图片数据包地址记录到三级索引中;若该节点指向三级索引(或该节点指向的三级索引地址有效),则获取三级索引的地址,定位到三级索引。
2.3.定位到三级索引后,判断该三级索引是否存有图片。三级索引采用顺序存储方式,每个三级索引划分为1个头部信息和H个图片信息(H在实际使用中可取不同值),头部存放图片数据包地址,每个图片信息存放图片在图片数据包中的偏移量和图片长度,如图3。1)若三级索引存有图片;则获取最后一张图片信息,比较该图片日期与现要存的图片日期,1.1)若现要存的图片日期新,则判断该三级索引是否存满,1.1.1)若存满,在存储图片前需要新建三级索引,并把三级索引信息添加到二级索引前序遍历最后一个空叶子节点处;在新建三级索引和图片数据包前,判断二级索引是否满,若二级索引也存满,则需要先新建二级索引,并把二级索引信息更新至一级索引处,将二级索引地址和图片的信息保存到一级索引的第一个未使用的索引单元中,在新建二级索引前,要判断一级索引是否满,若一级索引没有满,则新建二级索引,若一级索引满,则将图片转存至其他分区。1.1.2)若未存满,则把数据追加到该单元指向的图片数据包的末尾,并更新三级索引的内容,把图片信息更新到三级索引,如记录该追加图片的偏移量、长度和图片的拍摄时间等。1.2)若现要存储的图片日期旧,则说明系统时间发生了异常,则新建二级索引,把二级索引信息更新到一级索引中,接下来的流程跳到2.2继续操作;2)若该三级索引未存图片,则接下来的流程同1.1.2)。
2.4.更新该图片所属的一级索引,二级索引各个节点的最晚图片时间。
3.检索图片
图5为根据本发明的一个实施方案的图片检索流程图;以下参考附图对该流程中的主要过程进行描述。
3.1.输入搜索条件,根据输入的检索条件依次检索一级索引,通过匹配通道号,图片的事件编码,图片时间等信息检索符合的二级索引
3.2.若上述过程中检索到符合的二级索引,则依次检索二级索引。二级索引区每个节点都记录有该节点下所有图片的最早图片时间和最晚图片时间。从B-树的树根开始检索,若检索图片的时间在该节点图片最早时间和图片最晚时间范围之内,则继续检索该节点的子节点,直到到达叶子节点,若叶子节点的时间范围符合条件则定位三级索引。
3.3.依次检索三级索引,若检索到符合的,则读取图片数据。三级索引从头至尾是时间的按顺序排列,用时间为关键字使用二分法查找到符合条件的图片索引,即可从图片数据包中读取该图片内容。
上述实施例用来解释说明本实用新型,而不是对本发明进行限制,在本发明的精神和权利要求的保护范围内,对本发明作出的任何修改和改变,都落入本发明的保护范围。

Claims (10)

1.一种大数量图片的存储与检索方法,该方法包括在硬盘上划分出一个分区,其特征在于:使该分区包含一个一级索引,若干个二级索引,若干个三级索引和相同个数的图片数据包;一级索引划分为多个一级索引单元,每个一级索引单元用于记录二级索引文件地址和该一级索引下所有图片的公共属性,所述公共属性包括:图片的通道号、图片的事件编码、图片最早时间、图片的最晚时间;二级索引每个节点存放的内容包括:图片的最早时间、图片的最晚时间,以及非叶子节点有子节点地址,叶子节点有三级索引地址;三级索引中存放的内容包括:图片数据包地址和图片在图片数据包中的偏移,图片的长度和图片的拍摄时间,该方法包括以下存储步骤:
A.获取图片;
B.提取图片的信息,将图片的信息匹配至一级索引;
C.若匹配成功,通过一级索引定位到二级索引;
D.再根据二级索引定位到三级索引;以及
E.通过三级索引定位到图片数据包,将图片存储到图片数据包,并将图片在图片数据包中的偏移,图片的长度和图片的拍摄时间记录到三级索引,并更新该图片所属的一级索引和二级索引的最晚图片时间;以及
F.返回步骤A;
该方法包括以下检索步骤:
A.根据输入的检索条件依次检索一级索引;
B.通过一级索引定位到二级索引;
C.通过二级索引定位到三级索引;
D.通过三级索引定位到图片数据包中的图片,最后读取图片。
2.根据权利要求1所述的一种大数量图片的存储与检索方法,其特征在于:
在提取图片的信息,将图片的信息匹配至一级索引的过程中,若匹配不成功,则判断一级索引中是否满,若没有满,则新建二级索引,并将二级索引地址和图片的信息保存到一级索引的第一个未使用的索引单元中,若满,则将图片转存至其他分区;若匹配成功,则选择符合条件的最后一个一级索引单元,并根据该单元存放的二级索引地址定位到二级索引。
3.根据权利要求2所述的一种大数量图片的存储与检索方法,其特征在于:二级索引采取B-树的存储方式;在定位到二级索引后,在二级索引中找到前序遍历中最后一个叶子节点,若该叶子节点指向三级索引,则定位到三级索引;若该叶子节点未指向三级索引,则新建三级索引和图片数据包,将该新建的三级索引信息记录到该叶子节点处,将新建的图片数据包地址记录到该三级索引中。
4.根据权利要求3所述的一种大数量图片的存储与检索方法,其特征在于:定位到三级索引后,判断该三级索引是否存有图片,若存有图片,则获取最后一张图片信息,比较该图片日期与现要存的图片日期,若现要存的图片日期新,则判断该三级索引是否存满,若未存满或者该三级索引未存图片,则把图片存储到该三级索引指向的图片数据包的末尾,并把图片在图片数据包中的偏移,图片的长度和图片的拍摄时间更新到三级索引,若存满,则在存储图片前先新建三级索引和图片数据包,将新建的三级索引信息记录到二级索引前序遍历最后一个空叶子节点处,将新建的图片数据包地址记录到三级索引中。
5.根据权利要求4所述的一种大数量图片的存储与检索方法,其特征在于:若现要存储的图片日期旧,则判断一级索引是否满,若一级索引没有满,则新建二级索引,并将二级索引地址和图片的信息保存到一级索引的第一个未使用的索引单元中,继而通过一级索引定位到二级索引,在二级索引中找到前序遍历中最后一个叶子节点,若该叶子节点指 向三级索引,则定位到三级索引,若该叶子节点未指向三级索引,则新建三级索引和图片数据包;若一级索引满,则将图片转存至其他分区。
6.根据权利要求5所述的一种大数量图片的存储与检索方法,在新建三级索引和图片数据包前,判断二级索引是否满,若二级索引满,则判断一级索引是否满,若一级索引没有满,则新建二级索引,并将二级索引地址和图片的信息保存到一级索引的第一个未使用的索引单元中,若一级索引满,则将图片转存至其他分区。
7.根据权利要求3、4、5或6所述的一种大数量图片的存储与检索方法,其特征在于:每个一级索引单元大小相同且长度固定不变。
8.根据权利要求7所述的一种大数量图片的存储与检索方法,其特征在于:根据输入的检索条件依次检索一级索引的步骤包括:通过匹配图片的通道号,图片的事件编码,图片时间信息找出适合的二级索引。
9.根据权利要求8所述的一种大数量图片的存储与检索方法,其特征在于:从B-树的树根开始检索,若检索图片的时间在该节点图片最早时间和图片最晚时间范围之内,则继续检索该节点的子节点,直到到达叶子节点,若叶子节点的时间范围符合条件则定位三级索引;依次检索三级索引,若检索到符合的,则读取图片数据。
10.根据权利要求9所述的一种大数量图片的存储与检索方法,其特征在于:所述图片为视频数字录像机中所接收的图片。
CN201110336050.3A 2011-10-28 2011-10-28 一种图片存储与检索方法 Active CN103092848B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201110336050.3A CN103092848B (zh) 2011-10-28 2011-10-28 一种图片存储与检索方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201110336050.3A CN103092848B (zh) 2011-10-28 2011-10-28 一种图片存储与检索方法

Publications (2)

Publication Number Publication Date
CN103092848A CN103092848A (zh) 2013-05-08
CN103092848B true CN103092848B (zh) 2016-09-07

Family

ID=48205431

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201110336050.3A Active CN103092848B (zh) 2011-10-28 2011-10-28 一种图片存储与检索方法

Country Status (1)

Country Link
CN (1) CN103092848B (zh)

Families Citing this family (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104346359B (zh) * 2013-07-29 2017-11-17 深圳市腾讯计算机系统有限公司 一种存储索引的方法和装置
CN104298747A (zh) * 2014-10-13 2015-01-21 福建星海通信科技有限公司 大数据量图片的存储方法、以及检索方法
CN104657508A (zh) * 2015-03-17 2015-05-27 浪潮集团有限公司 图像数据存储装置和图像数据存储方法
CN104765836B (zh) * 2015-04-15 2019-03-26 高第网络技术(北京)有限公司 一种针对音频指纹库数据的多级索引方法
CN105574151B (zh) * 2015-12-16 2019-08-06 北京奇虎科技有限公司 图像存储方法和设备
US10885118B2 (en) * 2017-05-12 2021-01-05 Futurewei Technologies, Inc. Incremental graph computations for querying large graphs
CN109388729A (zh) * 2017-08-14 2019-02-26 阿里巴巴集团控股有限公司 音频子指纹的检索方法、装置以及音频查询系统
CN110019876B (zh) * 2017-12-25 2023-07-28 深圳云天励飞技术有限公司 数据查询方法、电子设备及存储介质
CN108304331B (zh) * 2018-01-30 2020-04-10 浙江鸿泉车联网有限公司 基于NorFlash的环形队列式数据存储方法及装置
CN109978829B (zh) * 2019-02-26 2021-09-28 深圳市华汉伟业科技有限公司 一种待检测对象的检测方法及其系统
CN110659373B (zh) * 2019-08-27 2022-11-08 浙江大华技术股份有限公司 图像检索的方法、设备、计算机设备和存储介质
CN110781326A (zh) * 2019-10-25 2020-02-11 湖南省公安厅 图片检索、获取方法、装置及图片存储系统

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5500887A (en) * 1994-05-14 1996-03-19 Electronics & Telecommunications Research Institute Data access method for subscriber location information
CN101404029A (zh) * 2008-11-04 2009-04-08 深圳市蓝韵实业有限公司 一种dicom图像文件存储方法
CN101551807A (zh) * 2009-05-07 2009-10-07 山东中创软件商用中间件股份有限公司 文件数据库多级索引技术
CN101833986A (zh) * 2010-05-20 2010-09-15 哈尔滨工业大学 一种三级音频索引的创建方法及音频检索方法
CN101840412A (zh) * 2010-03-01 2010-09-22 中国联合网络通信集团有限公司 医疗信息的存储方法、获取方法及设备、系统

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5500887A (en) * 1994-05-14 1996-03-19 Electronics & Telecommunications Research Institute Data access method for subscriber location information
CN101404029A (zh) * 2008-11-04 2009-04-08 深圳市蓝韵实业有限公司 一种dicom图像文件存储方法
CN101551807A (zh) * 2009-05-07 2009-10-07 山东中创软件商用中间件股份有限公司 文件数据库多级索引技术
CN101840412A (zh) * 2010-03-01 2010-09-22 中国联合网络通信集团有限公司 医疗信息的存储方法、获取方法及设备、系统
CN101833986A (zh) * 2010-05-20 2010-09-15 哈尔滨工业大学 一种三级音频索引的创建方法及音频检索方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
泰山古树名木网页简介;申卫星 等;《山东林业科技》;20031228(第5期);1 *

Also Published As

Publication number Publication date
CN103092848A (zh) 2013-05-08

Similar Documents

Publication Publication Date Title
CN103092848B (zh) 一种图片存储与检索方法
CN104933133B (zh) 分布式文件系统中的元数据快照存储和访问方法
US8402071B2 (en) Catalog that stores file system metadata in an optimized manner
US8225029B2 (en) Data storage processing method, data searching method and devices thereof
US7895211B2 (en) Method and system for reinserting a chain in a hash table
CN105320775A (zh) 数据的存取方法和装置
CN109376156B (zh) 读取具有存储感知的混合索引的方法
US20110093466A1 (en) Heuristic event clustering of media using metadata
CN103678491A (zh) 一种基于Hadoop中小文件优化和倒排索引的方法
CN107870973A (zh) 一种加快多路监控同时回放的文件存储系统
CN104424219B (zh) 一种数据文件的管理方法及装置
CN102576373B (zh) 内容管理装置、内容管理方法、内容管理程序及集成电路
KR100601610B1 (ko) 데이터 열의 임시 삭제방법, 탐색방법, 복원방법, 영구 삭제방법과 임시 삭제에 의해 분리된 데이터 열들을 복원하기 위한부가 정보를 저장하는 기록 매체
US20080140730A1 (en) Data storage device, method of rearranging data and recording medium therefor
CN102508913A (zh) 一种带有数据立方存储索引结构的云计算系统
US7783589B2 (en) Inverted index processing
CN103164528B (zh) 一种音视频数据的索引建立方法
CN114780530A (zh) 基于lsm树键值分离的时序数据存储方法及系统
CN1684065A (zh) 用于处理元数据的方法和设备
CN102332004A (zh) 用于海量数据管理的数据处理方法和系统
US6609134B1 (en) Apparatus and method for retrieving moving picture using tree-structured moving picture index descriptor
CN104317951B (zh) 基于前缀型数据库的存储空间清理方法和装置
CN102591958B (zh) 基于tcam的确定性有穷状态自动机的匹配方法和装置
CN103207916B (zh) 元数据处理的方法和装置
CN104298747A (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