CN114860970A - 图片标注方法、装置、电子设备以及存储介质 - Google Patents
图片标注方法、装置、电子设备以及存储介质 Download PDFInfo
- Publication number
- CN114860970A CN114860970A CN202210625372.8A CN202210625372A CN114860970A CN 114860970 A CN114860970 A CN 114860970A CN 202210625372 A CN202210625372 A CN 202210625372A CN 114860970 A CN114860970 A CN 114860970A
- Authority
- CN
- China
- Prior art keywords
- picture
- original
- marked
- storage system
- storage path
- 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.)
- Pending
Links
- 238000002372 labelling Methods 0.000 title claims abstract description 38
- 238000000034 method Methods 0.000 claims abstract description 57
- 238000012545 processing Methods 0.000 claims description 67
- 238000004140 cleaning Methods 0.000 claims description 35
- 230000008569 process Effects 0.000 claims description 21
- 238000001514 detection method Methods 0.000 claims description 17
- 238000004590 computer program Methods 0.000 claims description 11
- 230000006835 compression Effects 0.000 claims description 9
- 238000007906 compression Methods 0.000 claims description 9
- 230000008859 change Effects 0.000 claims description 4
- 230000004044 response Effects 0.000 claims description 4
- 238000013473 artificial intelligence Methods 0.000 abstract description 7
- 238000005406 washing Methods 0.000 abstract description 2
- 238000010586 diagram Methods 0.000 description 9
- 238000004891 communication Methods 0.000 description 8
- 230000006870 function Effects 0.000 description 8
- 238000005516 engineering process Methods 0.000 description 5
- 238000004422 calculation algorithm Methods 0.000 description 4
- 238000010801 machine learning Methods 0.000 description 4
- 238000012549 training Methods 0.000 description 4
- GNFTZDOKVXKIBK-UHFFFAOYSA-N 3-(2-methoxyethoxy)benzohydrazide Chemical compound COCCOC1=CC=CC(C(=O)NN)=C1 GNFTZDOKVXKIBK-UHFFFAOYSA-N 0.000 description 3
- FGUUSXIOTUKUDN-IBGZPJMESA-N C1(=CC=CC=C1)N1C2=C(NC([C@H](C1)NC=1OC(=NN=1)C1=CC=CC=C1)=O)C=CC=C2 Chemical compound C1(=CC=CC=C1)N1C2=C(NC([C@H](C1)NC=1OC(=NN=1)C1=CC=CC=C1)=O)C=CC=C2 FGUUSXIOTUKUDN-IBGZPJMESA-N 0.000 description 3
- 238000013461 design Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 238000012986 modification Methods 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 238000006467 substitution reaction Methods 0.000 description 3
- 230000009286 beneficial effect Effects 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 241000282994 Cervidae Species 0.000 description 1
- YTAHJIFKAKIKAV-XNMGPUDCSA-N [(1R)-3-morpholin-4-yl-1-phenylpropyl] N-[(3S)-2-oxo-5-phenyl-1,3-dihydro-1,4-benzodiazepin-3-yl]carbamate Chemical compound O=C1[C@H](N=C(C2=C(N1)C=CC=C2)C1=CC=CC=C1)NC(O[C@H](CCN1CCOCC1)C1=CC=CC=C1)=O YTAHJIFKAKIKAV-XNMGPUDCSA-N 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 238000012790 confirmation Methods 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 239000003550 marker Substances 0.000 description 1
- 239000002184 metal Substances 0.000 description 1
- 239000013307 optical fiber Substances 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 230000001953 sensory effect Effects 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/50—Information retrieval; Database structures therefor; File system structures therefor of still image data
- G06F16/51—Indexing; Data structures therefor; Storage structures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/18—File system types
- G06F16/182—Distributed file systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/50—Information retrieval; Database structures therefor; File system structures therefor of still image data
- G06F16/58—Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually
- G06F16/583—Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually using metadata automatically derived from the content
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/54—Interprogram communication
- G06F9/546—Message passing systems or structures, e.g. queues
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N20/00—Machine learning
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2209/00—Indexing scheme relating to G06F9/00
- G06F2209/54—Indexing scheme relating to G06F9/54
- G06F2209/547—Messaging middleware
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2209/00—Indexing scheme relating to G06F9/00
- G06F2209/54—Indexing scheme relating to G06F9/54
- G06F2209/548—Queue
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Library & Information Science (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Evolutionary Computation (AREA)
- Medical Informatics (AREA)
- Artificial Intelligence (AREA)
- Computing Systems (AREA)
- Mathematical Physics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本公开提供了一种图片标注方法、装置、电子设备以及存储介质。涉及人工智能技术领域,尤其涉及数据清洗、数据标注等技术领域。具体实现方案为:获取外部存储系统中的原始图片的第一存储路径;根据第一存储路径获取原始图片,并基于原始图片获取待标注图片;将待标注图片存储到外部存储系统中,并获取待标注图片在外部存储系统中的第二存储路径;基于第二存储路径获取待标注图片,并对待标注图片进行标注处理。根据本公开的技术方案,能实现图片上传和图片标注之间的解耦,不仅能上传海量图片,还提升图片标注的效率。
Description
技术领域
本公开涉及人工智能技术领域,尤其涉及数据清洗、数据标注等技术领域,具体涉及一种图片标注方法、装置、电子设备以及存储介质。
背景技术
随着人工智能的发展,人工智能技术已经被应用到各行各业。作为人工智能行业的基础,数据是实现这一能力的决定性条件之一。因此,为机器学习算法训练提供高质量的标注数据服务成为了决定人工智能应用高度的重要条件之一。相关技术中,标注流程主要是通过前端上传图片,后端存储并进行图片标注,存在上传速度缓慢,标注效率低等问题。
发明内容
本公开提供了一种图片标注方法、装置、电子设备以及存储介质。
根据本公开的第一方面,提供了一种图片标注方法,包括:
获取外部存储系统中的原始图片的第一存储路径;
根据第一存储路径获取原始图片,并基于原始图片获取待标注图片;
将待标注图片存储到外部存储系统中,并获取待标注图片在外部存储系统中的第二存储路径;
基于第二存储路径获取待标注图片,并对待标注图片进行标注处理。
根据本公开的第二方面,提供了一种图片处理装置,包括:
获取模块,用于获取外部存储系统中的原始图片的第一存储路径;
第一处理模块,用于根据第一存储路径获取原始图片,并基于原始图片获取待标注图片;
第二处理模块,用于将待标注图片存储到外部存储系统中,并获取待标注图片在外部存储系统中的第二存储路径;
标注模块,用于基于第二存储路径获取待标注图片,并对待标注图片进行标注处理。
根据本公开的第三方面,提供了一种电子设备,包括:
至少一个处理器;以及
与该至少一个处理器通信连接的存储器;其中,
该存储器存储有可被该至少一个处理器执行的指令,该指令被该至少一个处理器执行,以使该至少一个处理器能够执行上述第一方面所提供的方法。
根据本公开的第四方面,提供了一种存储有计算机指令的非瞬时计算机可读存储介质,其中,该计算机指令用于使该计算机执行上述第一方面所提供的方法。
根据本公开的第五方面,提供了一种计算机程序产品,包括计算机程序,该计算机程序在被处理器执行时实现上述第一方面所提供的方法。
根据本公开的技术方案,能实现图片上传和图片标注之间的解耦,不仅能上传海量图片,还提升图片标注的效率。
应当理解,本部分所描述的内容并非旨在标识本公开的实施例的关键或重要特征,也不用于限制本公开的范围。本公开的其它特征将通过以下的说明书而变得容易理解。
附图说明
附图用于更好地理解本方案,不构成对本公开的限定。其中:
图1是根据本公开实施例的图片标注方法的流程示意图;
图2是根据本公开实施例的图片标注的架构示意图;
图3是根据本公开实施例的图片标注装置的组成结构示意图;
图4是根据本公开实施例的图片标注的场景示意图;
图5是用来实现本公开实施例的图片标注方法的电子设备的框图。
具体实施方式
以下结合附图对本公开的示范性实施例做出说明,其中包括本公开实施例的各种细节以助于理解,应当将它们认为仅仅是示范性的。因此,本领域普通技术人员应当认识到,可以对这里描述的实施例做出各种改变和修改,而不会背离本公开的范围和精神。同样,为了清楚和简明,以下的描述中省略了对公知功能和结构的描述。
本公开的说明书实施例和权利要求书及上述附图中的术语"第一"、"第二"和"第三"等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。此外,术语"包括"和"具有"以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元。方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
相关技术中,图片通过前端页面进行上传,可同时上传百张图片。图片上传过程中进行图片格式校验,如果格式不匹配进行丢弃。图片上传后存储到本地硬盘。图片标注过程中,从本地硬盘读取图片进行标注工作。然而,通过页面进行上传,一次只能上传百张图片,上传效率低,难以支撑数万图片上传。图片上传过程中进行图片清洗,影响上传效率。图片清洗时,只限于图片格式的清洗,清洗纬度少,容易上传过多无效图片,影响标注效率。不支持集群部署:图片只能存放在本地磁盘,服务无法通过代理服务器扩容。图片存放到本地磁盘,无法形成数据互备,数据安全性不能得到保障。
本公开为了至少部分地解决上述问题以及其他潜在问题中的一个或者多个问题,本公开提出了一种图片标注方法,利用本公开的实施方式的技术方案,可以至少实现图片上传和图片标注之间的解耦,提高图片上传效率以及存储安全性,进而提升了标注的效率。
本公开实施例提供一种图片标注方法,图1是根据本公开实施例的图片标注方法的流程示意图,该图片标注方法可以应用于图片处理装置。该图片处理装置位于电子设备,该电子设备包括但不限于固定设备和/或移动设备,例如,固定设备包括但不限于服务器,服务器可以是云服务器或普通服务器。例如,移动设备包括但不限于:手机或平板电脑中的一项或是多项终端。在一些可能的实现方式中,该方法还可以通过处理器调用存储器中存储的计算机可读指令的方式来实现。如图1所示,该图片标注方法包括:
S101:获取外部存储系统中的原始图片的第一存储路径;
S102:根据第一存储路径获取原始图片,并基于原始图片获取待标注图片;
S103:将待标注图片存储到外部存储系统中,并获取待标注图片在外部存储系统中的第二存储路径;
S104:基于第二存储路径获取待标注图片,并对待标注图片进行标注处理。
本公开实施例中,外部存储系统是具有存储功能的系统。外部存储系统用于存储大量原始图片或者经过对原始图片进行清洗处理后的图片。具体的,外部存储系统可以是分布式存储系统。比如,分布式存储系统可以是Ceph分布式存储系统。又比如,分布式存储系统可以是大数据分布式文件系统(Hadoop Distributed File System,HDFS)。再比如,分布式存储系统可以是具备冗余容错功能的分布式网络文件系统(Moose File System,MooseFS)。以上仅为示例性说明,不作为对外部存储系统全部可能的类型的限定,只是这里不做穷举。
这里,第一存储路径是原始图片在外部存储系统中的存储路径。
本公开实施例不对外部存储系统中图片的来源进行限定。比如,可以由用户通过用户界面接口将图片上传至外部存储系统。又比如,可以将装载有很多图片的移动硬盘直接挂载到外部存储系统。
本公开实施例中,待标注图片是等待标注的图片。比如,待标注图片可以是对原始图片进行数据清洗处理后得到的图片。又比如,待标注图片还可以是符合预设图片质量标准的原始图片。
这里,标注处理包括但不限于人工标注和自动标注。在检测到用户通过用户界面接口输入的针对某待标注图片的标注信息时,保存该标注信息,能支持用户对待标注图片进行人工标注。在预设时间内未检测到用户通过用户界面接口输入的标注信息,对待标注图片进行智能标注,并保存智能标注结果。智能标注可使用主动学习和指定模型两种方式,并可自动筛选和标注难例,待人工确认且达标后,完成标注。
本公开实施例的技术方案,获取外部存储系统中的原始图片的第一存储路径;根据第一存储路径获取原始图片,并基于原始图片获取待标注图片;将待标注图片存储到外部存储系统中,并获取待标注图片在外部存储系统中的第二存储路径;基于第二存储路径获取待标注图片,并对待标注图片进行标注处理。由于外部存储系统能存储海量图片,可支持海量图片的上传,根据第一存储路径从外部存储系统读取原始图片,提高了图片上传的效率。基于第二存储路径,对外部存储系统存储的待标注图片进行标注处理,能够实现图片上传与图片标注之间的解耦,提高了标注效率。另外,相对于将图片存储在本地磁盘而言,将图片存放在外部存储系统,能实现存储扩容。
在一些实施例中,原始图片的数量是多个,S101可变更为:获取外部存储系统中的多个原始图片的第一存储路径。该图片标注方法还包括:将各个原始图片对应的第一存储路径依次存储在消息队列中;读取消息队列以获得第一存储路径。
本公开实施例中,消息队列中包括原始图片的第一存储路径。比如,消息队列可以是kafka消息队列。再比如,消息队列可以是ActiveMQ消息队列。又比如,消息队列可以是RabbitMQ消息队列。以上仅为示例性说明,不作为对消息队列全部可能的类型的限定,只是这里不做穷举。
如此,通过读取消息队列能一次性获得多个原始图片对应的第一存储路径,有助于提高从外部存储系统读取原始图片的效率。
在一些实施例中,消息队列中还包括各个原始图片的标识信息,各个原始图片的第一存储路径与对应原始图片的标识信息关联。读取所述消息队列以获得所述第一存储路径,包括:读取所述消息队列中的标识信息,以获取目标标识信息的原始图片对应的第一存储路径。
这里,标识信息包括但不限于业务主题(topic)信息。在一些实施方式中,读取所述消息队列中的标识信息,以获取目标标识信息的原始图片对应的第一存储路径,包括:基于消息队列包括的业务主题信息,从消息队列中确定出目标业务的原始图片对应的第一存储路径;基于第一存储路径,从分布式存储系统读取目标业务的原始图片。
这里,业务主题信息,用于对业务进行分类。示例性的,用户上传a业务系统的一个图片,又上传b业务系统的一个图片,为了区分a业务系统和b业务系统的图片,可通过业务主题信息进行区分。
这里,目标业务为预处理的业务。目标业务可根据设计需求或用户需求进行设定或调整。举例来说,业务主题分为业务主题1、业务主题2、业务主题3、…、业务主题N共N个主题。消息队列中携带有图片所属业务主题信息,若当前存在M个消息队列,M个消息队列的业务主题分别为业务主题1、业务主题2、业务主题3、…、业务主题M,M小于等于N,假设目标业务的业务主题为业务主题1,则从M个消息队列中获取业务主题为业务主题1的消息队列,忽略其他消息队列。如此,能够根据业务类型实现对不同业务的原始图片的针对性处理。
如此,能够根据消息队列中的标识信息实现对不同业务的图片的处理。
为了确保标注数据的准确性,需要先对原始图片进行清洗处理。在一些实施例中,基于原始图片获取待标注图片,包括:对原始图片进行数据清洗处理,以得到待标注图片。
在一些实施例中,对外部存储系统存储的原始图片进行数据清洗处理,包括以下至少之一:对原始图片进行格式检测处理;对原始图片进行角度旋转处理;对原始图片进行破损检测处理;对原始图片进行质量压缩处理;对原始图片进行大小缩放处理。
在一些实施方式中,对原始图片进行格式检测处理,包括:判断原始图片格式是否符合预设图片格式,如果不符合,则丢弃或剔除该原始图片。这里,预设图片格式可根据设计需求或用户需求进行设定或调整。比如,预设图片格式可以是png、jpeg、webp、jpg等格式中的一种或几种。实际应用中,可通过图片的魔数来判断图片的格式。比如,png的十六进制魔数为"89504e47",若筛选png格式的图片,则读取图片的魔数,若魔数为"89504e47",则判断原始图片的格式为png格式。
在一些实施方式中,对原始图片进行破损检测处理,包括:读取图片,若能获取到图片的宽度,则判定图片未破损;否则,丢弃或剔除该原始图片。如此,根据是否能读取到图片宽度来判断图片是否破损,能快速对原始图片进行破损检测处理。
在一些实施方式中,对原始图片进行角度旋转处理,包括:通过获取图片属性信息中的图片旋转角度进行旋转。这里,图片属性信息可以是可交换图像文件(Exchangeableimage file format,简称Exif)信息。旋转角度可以理解为图片正向情况下顺时针所旋转的角度。具体的,所旋转的角度值,逆时针情况下等于旋转角度;顺时针情况下为360°减去旋转角度。
在一些实施方式中,对原始图片进行质量压缩处理,包括:在保证图片分辨率不变的情况下,缩小图片存储容量大小。
在一些施方式中,对原始图片进行大小缩放处理,包括以下至少之一:减小图片分辨率;减小图片存储容量。
实际应用中,上述格式检测处理、角度旋转处理、破损检测处理、质量压缩处理和大小缩放处理等清洗处理可以任意组合。
这里,清洗处理还可包括对图片进行自动去模糊、去近似、镜像等多种基础清洗操作。比如,可采用智能数据服务平台(EasyData)技术对图片进行清洗处理。本公开实施例不对清洗处理所采用技术进行限定。
如此,能增加图片清洗的维度,进而提升待标注图片的质量,提高标注效率。
在一些实施例中,该图片标注方法还可包括:将针对待标注图片的标注数据存储到第一数据库。
本公开实施例中,第一数据库是用于记录图片标注数据的数据库。比如,第一数据库可以是关系型数据库管理系统,如MySQL数据库、Oracle数据库、SQLServer数据库、SQLite数据库等。实际应用中,第一数据库可以是图片标注服务对应的数据库。
在一些实施例中,该图片标注方法还可包括:将待标注图片在外部存储系统中的第二存储路径存储到第二数据库。获取待标注图片在外部存储系统中的第二存储路径,包括:从第二数据库获取待标注图片在外部存储系统中的第二存储路径。
本公开实施例中,第二数据库是用于记录待标注图片在外部存储系统中的第二存储路径的数据库。比如,第二数据库可以是关系型数据库管理系统,如MySQL数据库、Oracle数据库、SQLServer数据库、SQLite数据库等。需要说明的是,第二数据库与第一数据库可以是同一个数据库,也可以是不同的数据库。实际应用中,第二数据库可以是图片清洗服务对应的数据库。
如此,将待标注图片与标注数据分开存储,增强了数据的安全性。
在一些实施例中,将待标注图片存储到外部存储系统中,包括:响应于待标注图片相对于原始图片发生改变,将待标注图片存储到外部存储系统中的第一存储区域,并将待标注图片在第一存储区域的存储路径,作为待标注图片在外部存储系统中的第二存储路径。
这里,外部存储系统包括多个存储区域,第一存储区域是该多个存储区域中的一个存储区域,用于存储待标注图片。比如,外部存储系统包括P个节点,第一存储区域包括节点1~节点i,第二存储区域包括分布式存储系统的节点i+1~节点P。这里,节点包括但不限于裸机、物理机、虚拟机等。
例如,在外部存储系统的第二存储区域中,存储有原始图片a,若原始图片a经数据清洗处理后发生改变,变为待标注图片a’,则将待标注图片a’存储到外部存储系统的第一存储区域中。
如此,通过将经过清洗后的图片与原始图片分开存储,能够提高数据安全性。另外,还有助于数据标注服务快速获取到大量待标注图片,提升标注效率。
在一些实施例中,将待标注图片存储到外部存储系统中,包括:响应于待标注图片相对于原始图片未发生改变,将原始图片的第一存储路径,作为待标注图片在外部存储系统中的第二存储路径。
例如,在外部存储系统的第二存储区域中,存储有原始图片b,若原始图片b经数据清洗处理后未发生任何改变,则将原始图片b作为待标注图片,将原始图片b在分布式存储系统的存储路径作为待标注图片在外部存储系统中的第二存储路径,存储到第二数据库中。这里,第二存储路径与第一存储路径的存储地址不同。比如,第二存储路径是在分布式存储系统的第一存储区域中的存储路径,具体可以是节点1/D盘/文件夹1。又比如,第一存储路径是在分布式存储系统的第二存储区域中的存储路径,具体可以是节点i+1/C盘/桌面。以上仅为示例性说明,不作为对存储路径全部可能的类型的限定,只是这里不做穷举。
如此,若经清洗后原始图片未发生改变,不对该原始图片进行另存,能减少对外部存储系统的存储资源的占用,有助于提高外部存储系统的存储容量。
图2示出了图片标注的总体架构示意图,如图2所示,该架构包括:图片上传、图片清洗和图片标注三大部分。
其中,图片上传流程主要包括:
步骤a:将原始图片批量上传至分布式存储系统如Ceph分布式存储系统,此时每张图片具有对应的存储路径。图片通过分布式存储,安全性增强。
步骤b:图片存储路径挂载到多个图片上传服务器上。将图片先存到分布式存储系统,存储路径挂载到图片上传服务器,能提高图片上传速度。
步骤c:图片上传服务器递归扫描存储路径中的图片文件夹,并将完整图片路径存入消息队列的业务主题(topic)中。
其中,图片清洗流程主要包括:
步骤d:图片清洗服务器从消息队列的topic中读取图片的存储路径。
步骤e:图片清洗服务器通过存储路径读取图片,获取图片流,通过魔数判断进行图片格式检测,例如只允许png、jpeg、webp、jpg等格式的图片,若符合图片格式则进入步骤f处理,若不符合图片格式则丢弃该图片。
步骤f:图片清洗服务器根据步骤e的处理结果进行图片破损检测。实现如下:读取图片,若能读取到宽度则判定图片未破损,即图片是完整的,进入步骤g,若图片破损则丢弃该图片。
步骤g:图片清洗服务器根据步骤f的处理结果进行图片角度旋转,通过获取图片Exif信息中的图片旋转角度方向(orientation)进行旋转。旋转角度是指图片正向情况下顺时针所旋转的角度。所旋转的角度,逆时针情况下等于旋转角度;顺时针情况下为360°减去旋转角度。处理完成后进入步骤h。
步骤h:图片清洗服务器根据步骤g的处理结果进行图片质量压缩和图片缩放。其中,质量压缩是指图片分辨率不变,图片存储容量大小变小;图片缩放是指图片分辨率、图片存储容量均变小。
上述步骤e、f、g、h四个清洗步骤是可选的,并可任意组合。
步骤i:将处理后的图片拷贝到分布式存储系统中的新的磁盘中,并将该路径存储到第一图片库如MySQL中。
若不需要执行步骤e、f、g、h,则直接将图片在分布式存储系统中的原始磁盘中的路径,存储到第一数据库MySQL。
其中,图片标注流程主要包括:
步骤j:读取第一数据库中存储的图片存储路径。
步骤k:根据图片存储路径在分布式存储系统中加载图片。
步骤l:标注员进行图片标注服务。
步骤m:图片标注结果存储到第二数据库中。
可见,通过使用分布式存储,将图片上传、图片清洗与图片标注服务解耦,实现图片快速上传、有效清洗、高效标注,提升图片标注效率,助力机器学习算法训练。
上述图片标注方法可应用到模型训练的图片标注服务,有以下有益效果:
1.提高图片上传效率,实现批量图片快速上传。
2.提高图片清洗效率,通过对图片进行图片格式检测、图片破损检测、图片角度旋转、图片质量压缩和缩放,每一步清洗可选择性编排,实现清洗效率大幅度提升。
3.提高图片存储安全性:通过分布式存储,提供了数据备份,提高了图片存储安全性。
4.提升标注效率:图片上传过程中无需等待图片清洗,标注过程中无需等待图片上传和图片清洗,提升了图片标注效率。
应理解,图2所示的架构图仅仅是示意性而非限制性的,本领域技术人员可以基于图2的例子进行各种显而易见的变化和/或替换,得到的技术方案仍属于本公开实施例的公开范围。
本公开实施例提供了一种图片标注装置。如图3所示,该图片处理装置可以包括:获取模块301,用于获取外部存储系统中的原始图片的第一存储路径;第一处理模块302,用于根据第一存储路径获取原始图片,并基于原始图片获取待标注图片;第二处理模块303,用于将待标注图片存储到外部存储系统中,并获取待标注图片在外部存储系统中的第二存储路径;标注模块304,用于基于第二存储路径获取待标注图片,并对待标注图片进行标注处理。
在一些实施例中,外部存储系统为分布式存储系统。
在一些实施例中,该数据标注装置还包括:生成模块,用于将各个原始图片对应的第一存储路径依次存储在消息队列中;读取模块,用于读取消息队列以获得第一存储路径。
在一些实施例中,消息队列中还包括各个原始图片的标识信息,各个原始图片的第一存储路径与对应原始图片的标识信息关联,读取模块,用于:读取消息队列中的标识信息,以获取目标标识信息的原始图片对应的第一存储路径。
在一些实施例中,第一处理模块302,包括:清洗子模块,用于对原始图片进行数据清洗处理,以得到待标注图片。
在一些实施例中,清洗子模块对原始图片进行数据清洗处理,包括以下至少之一:对原始图片进行格式检测处理;对原始图片进行角度旋转处理;对原始图片进行破损检测处理;对原始图片进行质量压缩处理;对原始图片进行大小缩放处理。
在一些实施例中,该数据标注装置还包括:第一存储模块,用于将针对待标注图片的标注数据存储到本地的第一数据库。
在一些实施例中,该第二处理模块403,包括:第一确定子模块,用于响应于待标注图片相对于原始图片发生改变,将待标注图片存储到外部存储系统中的第一存储区域,并将待标注图片在第一存储区域的存储路径,作为待标注图片在外部存储系统中的第二存储路径;和/或,
第二确定子模块,用于响应于待标注图片相对于原始图片未发生改变,将原始图片的第一存储路径,作为待标注图片在外部存储系统中的第二存储路径。
在一些实施例中,该数据标注装置还包括:第二存储模块,用于将待标注图片在外部存储系统中的第二存储路径存储到本地的第二数据库;第二处理模块,包括:获取子模块,用于从第二数据库获取待标注图片在外部存储系统中的第二存储路径。
本领域技术人员应当理解,本公开实施例的图片处理装置中各处理模块的功能,可参照前述的图片标注方法的相关描述而理解,本公开实施例的图片处理装置中各处理模块,可通过实现本公开实施例所述的功能的模拟电路而实现,也可以通过执行本公开实施例所述的功能的软件在电子设备上的运行而实现。
本公开实施例的图片处理装置,通过使用分布式存储图片,将图片上传、图片清洗与图片标注服务解耦,实现图片快速上传、有效清洗、高效标注,提升图片标注效率,助力机器学习算法训练。
图4示出了图片处理的场景示意图,从图4可以看出,电子设备如云服务器接收终端发送的数据清洗配置信息,该数据清洗配置信息可包括目标业务类型、清洗类型、清洗步骤等信息;电子设备根据该数据清洗配置信息,从消息队列中读取待清洗的图片,并将清洗后的图片在分布式存储系统中的存储路径,存储到第二数据库;电子设备接收终端发送的图片标注服务请求,从第二数据库中读取待标注图片的存储路径,基于该存储路径从分布式存储系统读取图片,以供终端侧标注员进行标注,或者根据数据标注服务请求自动对该待标注图片进行标注,并将标注好的数据存储到第一数据库中。
本公开不对终端、电子设备的个数进行限定,实际应用中可包括多个终端、多个电子设备。
应理解,图4所示的场景图仅仅是示意性而非限制性的,本领域技术人员可以基于图4的例子进行各种显而易见的变化和/或替换,得到的技术方案仍属于本公开实施例的公开范围。
本公开的技术方案中,所涉及的用户个人信息的获取,存储和应用等,均符合相关法律法规的规定,且不违背公序良俗。
根据本公开的实施例,本公开还提供了一种电子设备、一种可读存储介质和一种计算机程序产品。
图5示出了可以用来实施本公开的实施例的示例电子设备500的示意性框图。电子设备旨在表示各种形式的数字计算机,诸如,膝上型计算机、台式计算机、工作台、个人数字助理、服务器、刀片式服务器、大型计算机、和其它适合的计算机。电子设备还可以表示各种形式的移动装置,诸如,个人数字处理、蜂窝电话、智能电话、可穿戴设备和其它类似的计算装置。本文所示的部件、它们的连接和关系、以及它们的功能仅仅作为示例,并且不意在限制本文中描述的和/或者要求的本公开的实现。
如图5所示,设备500包括计算单元501,其可以根据存储在只读存储器(Read-OnlyMemory,ROM)502中的计算机程序或者从存储单元505加载到随机访问存储器(RandomAccess Memory,RAM)503中的计算机程序,来执行各种适当的动作和处理。在RAM 503中,还可存储设备500操作所需的各种程序和数据。计算单元501、ROM 502以及RAM 503通过总线504彼此相连。输入/输出(Input/Output,I/O)接口505也连接至总线504。
设备500中的多个部件连接至I/O接口505,包括:输入单元506,例如键盘、鼠标等;输出单元507,例如各种类型的显示器、扬声器等;存储单元508,例如磁盘、光盘等;以及通信单元509,例如网卡、调制解调器、无线通信收发机等。通信单元509允许设备500通过诸如因特网的计算机网络和/或各种电信网络与其他设备交换信息/数据。
计算单元501可以是各种具有处理和计算能力的通用和/或专用处理组件。计算单元501的一些示例包括但不限于中央处理单元(Central Processing Unit,CPU)、图形处理单元(Graphics Processing Unit,GPU)、各种专用的人工智能(ArtificialIntelligence,AI)计算芯片、各种运行机器学习模型算法的计算单元、数字信号处理器(Digital Signal Processor,DSP)、以及任何适当的处理器、控制器、微控制器等。计算单元501执行上文所描述的各个方法和处理,例如图片标注方法。例如,在一些实施例中,图片标注方法可被实现为计算机软件程序,其被有形地包含于机器可读介质,例如存储单元508。在一些实施例中,计算机程序的部分或者全部可以经由ROM 502和/或通信单元509而被载入和/或安装到设备500上。当计算机程序加载到RAM 503并由计算单元501执行时,可以执行上文描述的图片标注方法的一个或多个步骤。备选地,在其他实施例中,计算单元501可以通过其他任何适当的方式(例如,借助于固件)而被配置为执行图片标注方法。
本文中以上描述的系统和技术的各种实施方式可以在数字电子电路系统、集成电路系统、场可编程门阵列(Field Programmable Gate Array,FPGA)、专用集成电路(Application Specific Integrated Circuit,ASIC)、专用标准产品(Application-Specific Standard Products,ASSP)、芯片上系统的系统(System on Chip,SOC)、负载可编程逻辑设备(Complex Programmable Logic Device,CPLD)、计算机硬件、固件、软件、和/或它们的组合中实现。这些各种实施方式可以包括:实施在一个或者多个计算机程序中,该一个或者多个计算机程序可在包括至少一个可编程处理器的可编程系统上执行和/或解释,该可编程处理器可以是专用或者通用可编程处理器,可以从存储系统、至少一个输入装置、和至少一个输出装置接收数据和指令,并且将数据和指令传输至该存储系统、该至少一个输入装置、和该至少一个输出装置。
用于实施本公开的方法的程序代码可以采用一个或多个编程语言的任何组合来编写。这些程序代码可以提供给通用计算机、专用计算机或其他可编程图片处理装置的处理器或控制器,使得程序代码当由处理器或控制器执行时使流程图和/或框图中所规定的功能/操作被实施。程序代码可以完全在机器上执行、部分地在机器上执行,作为独立软件包部分地在机器上执行且部分地在远程机器上执行或完全在远程机器或服务器上执行。
在本公开的上下文中,机器可读介质可以是有形的介质,其可以包含或存储以供指令执行系统、装置或设备使用或与指令执行系统、装置或设备结合地使用的程序。机器可读介质可以是机器可读信号介质或机器可读储存介质。机器可读介质可以包括但不限于电子的、磁性的、光学的、电磁的、红外的、或半导体系统、装置或设备,或者上述内容的任何合适组合。机器可读存储介质的更具体示例会包括基于一个或多个线的电气连接、便携式计算机盘、硬盘、随机存取存储器、只读存储器、可擦除可编程只读存储器(ErasableProgrammable Read-Only Memory,EPROM)、快闪存储器、光纤、便捷式紧凑盘只读存储器(Compact Disk Read Only Memory,CD-ROM)、光学储存设备、磁储存设备、或上述内容的任何合适组合。
为了提供与用户的交互,可以在计算机上实施此处描述的系统和技术,该计算机具有:用于向用户显示信息的显示装置(例如,阴极射线管(Cathode Ray Tube,CRT)或者液晶显示器(Liquid Crystal Display,LCD)监视器);以及键盘和指向装置(例如,鼠标或者轨迹球),用户可以通过该键盘和该指向装置来将输入提供给计算机。其它种类的装置还可以用于提供与用户的交互;例如,提供给用户的反馈可以是任何形式的传感反馈(例如,视觉反馈、听觉反馈、或者触觉反馈);并且可以用任何形式(包括声输入、语音输入、或者触觉输入)来接收来自用户的输入。
可以将此处描述的系统和技术实施在包括后台部件的计算系统(例如,作为数据服务器)、或者包括中间件部件的计算系统(例如,应用服务器)、或者包括前端部件的计算系统(例如,具有图形用户界面或者网络浏览器的用户计算机,用户可以通过该图形用户界面或者该网络浏览器来与此处描述的系统和技术的实施方式交互)、或者包括这种后台部件、中间件部件、或者前端部件的任何组合的计算系统中。可以通过任何形式或者介质的数字数据通信(例如,通信网络)来将系统的部件相互连接。通信网络的示例包括:局域网(Local Area Network,LAN)、广域网(Wide Area Network,WAN)和互联网。
计算机系统可以包括客户端和服务器。客户端和服务器一般远离彼此并且通常通过通信网络进行交互。通过在相应的计算机上运行并且彼此具有客户端和服务器关系的计算机程序来产生客户端和服务器的关系。服务器可以是云服务器,也可以为分布式存储系统的服务器,或者是结合了区块链的服务器。
应该理解,可以使用上面所示的各种形式的流程,重新排序、增加或删除步骤。例如,本公开中记载的各步骤可以并行地执行也可以顺序地执行也可以不同的次序执行,只要能够实现本公开公开的技术方案所期望的结果,本文在此不进行限制。
上述具体实施方式,并不构成对本公开保护范围的限制。本领域技术人员应该明白的是,根据设计要求和其他因素,可以进行各种修改、组合、子组合和替代。任何在本公开的精神和原则之内所作的修改、等同替换和改进等,均应包含在本公开保护范围之内。
Claims (21)
1.一种图片标注方法,包括:
获取外部存储系统中的原始图片的第一存储路径;
根据所述第一存储路径获取所述原始图片,并基于所述原始图片获取待标注图片;
将所述待标注图片存储到所述外部存储系统中,并获取所述待标注图片在所述外部存储系统中的第二存储路径;
基于所述第二存储路径获取所述待标注图片,并对所述待标注图片进行标注处理。
2.根据权利要求1所述的方法,其中,所述外部存储系统为分布式存储系统。
3.根据权利要求1-2中任一项所述的方法,其中,所述原始图片包括多个原始图片,所述方法还包括:
将各个原始图片对应的第一存储路径依次存储在消息队列中;
读取所述消息队列以获得所述第一存储路径。
4.根据权利要求3所述的方法,所述消息队列中还包括各个原始图片的标识信息,各个原始图片的第一存储路径与对应原始图片的标识信息关联,所述读取所述消息队列以获得所述第一存储路径,包括:
读取所述消息队列中的标识信息,以获取目标标识信息的原始图片对应的第一存储路径。
5.根据权利要求1-2中任一项所述的方法,其中,所述基于所述原始图片获取待标注图片,包括:
对所述原始图片进行数据清洗处理,以得到所述待标注图片。
6.根据权利要求5所述的方法,其中,对所述原始图片进行数据清洗处理,包括以下至少之一:
对所述原始图片进行格式检测处理;
对所述原始图片进行角度旋转处理;
对所述原始图片进行破损检测处理;
对所述原始图片进行质量压缩处理;
对所述原始图片进行大小缩放处理。
7.根据权利要求1-2中任一项所述的方法,还包括:
将针对所述待标注图片的标注数据存储到本地的第一数据库。
8.根据权利要求1-2中任一项所述的方法,其中,所述将所述待标注图片存储到所述外部存储系统中,包括:
响应于所述待标注图片相对于所述原始图片发生改变,将所述待标注图片存储到所述外部存储系统中的第一存储区域,并将所述待标注图片在所述第一存储区域的存储路径,作为所述待标注图片在所述外部存储系统中的第二存储路径;和/或
响应于所述待标注图片相对于所述原始图片未发生改变,将所述原始图片的第一存储路径,作为所述待标注图片在所述外部存储系统中的第二存储路径。
9.根据权利要求8所述的方法,还包括:
将所述待标注图片在所述外部存储系统中的第二存储路径存储到本地的第二数据库;
所述获取所述待标注图片在所述外部存储系统中的第二存储路径,包括:
从所述第二数据库获取所述待标注图片在所述外部存储系统中的第二存储路径。
10.一种图片标注装置,包括:
获取模块,用于获取外部存储系统中的原始图片的第一存储路径;
第一处理模块,用于根据所述第一存储路径获取所述原始图片,并基于所述原始图片获取待标注图片;
第二处理模块,用于将所述待标注图片存储到所述外部存储系统中,并获取所述待标注图片在所述外部存储系统中的第二存储路径;
标注模块,用于基于所述第二存储路径获取所述待标注图片,并对所述待标注图片进行标注处理。
11.根据权利要求10所述的装置,其中,所述外部存储系统为分布式存储系统。
12.根据权利要求10-11中任一项所述的装置,其中,所述原始图片包括多个原始图片,所述装置还包括:
生成模块,用于将各个原始图片对应的第一存储路径依次存储在消息队列中;
读取模块,用于读取所述消息队列以获得所述第一存储路径。
13.根据权利要求12所述的装置,所述消息队列中还包括各个原始图片的标识信息,各个原始图片的第一存储路径与对应原始图片的标识信息关联,所述读取模块,用于:
读取所述消息队列中的标识信息,以获取目标标识信息的原始图片对应的第一存储路径。
14.根据权利要求10-11中任一项所述的装置,其中,所述第一处理模块,包括:
清洗子模块,用于对所述原始图片进行数据清洗处理,以得到所述待标注图片。
15.根据权利要求14所述的装置,其中,所述清洗子模块对所述原始图片进行数据清洗处理,包括以下至少之一:
对所述原始图片进行格式检测处理;
对所述原始图片进行角度旋转处理;
对所述原始图片进行破损检测处理;
对所述原始图片进行质量压缩处理;
对所述原始图片进行大小缩放处理。
16.根据权利要求10-11中任一项所述的装置,还包括:
第一存储模块,用于将针对所述待标注图片的标注数据存储到本地的第一数据库。
17.根据权利要求10-11中任一项所述的装置,其中,所述第二处理模块,包括:
第一确定子模块,用于响应于所述待标注图片相对于所述原始图片发生改变,将所述待标注图片存储到所述外部存储系统中的第一存储区域,并将所述待标注图片在所述第一存储区域的存储路径,作为所述待标注图片在所述外部存储系统中的第二存储路径;和/或
第二确定子模块,用于响应于所述待标注图片相对于所述原始图片未发生改变,将所述原始图片的第一存储路径,作为所述待标注图片在所述外部存储系统中的第二存储路径。
18.根据权利要求17所述的装置,还包括:
第二存储模块,用于将所述待标注图片在所述外部存储系统中的第二存储路径存储到本地的第二数据库;
所述第二处理模块,包括:
获取子模块,用于从所述第二数据库获取所述待标注图片在所述外部存储系统中的第二存储路径。
19.一种电子设备,包括:
至少一个处理器;以及
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行权利要求1-9中任一项所述的方法。
20.一种存储有计算机指令的非瞬时计算机可读存储介质,其中,所述计算机指令用于使所述计算机执行根据权利要求1-9中任一项所述的方法。
21.一种计算机程序产品,包括计算机程序,所述计算机程序在被处理器执行时实现根据权利要求1-9中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210625372.8A CN114860970A (zh) | 2022-06-02 | 2022-06-02 | 图片标注方法、装置、电子设备以及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210625372.8A CN114860970A (zh) | 2022-06-02 | 2022-06-02 | 图片标注方法、装置、电子设备以及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114860970A true CN114860970A (zh) | 2022-08-05 |
Family
ID=82625282
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210625372.8A Pending CN114860970A (zh) | 2022-06-02 | 2022-06-02 | 图片标注方法、装置、电子设备以及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114860970A (zh) |
-
2022
- 2022-06-02 CN CN202210625372.8A patent/CN114860970A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111339186A (zh) | 工作流引擎数据同步方法、装置、介质及电子设备 | |
CN112835904A (zh) | 一种数据处理方法和数据处理装置 | |
CN110633594A (zh) | 一种目标检测方法和装置 | |
CN112613964A (zh) | 一种对账方法、装置、设备及存储介质 | |
CN111274455B (zh) | 图数据处理方法、装置、电子设备及计算机可读介质 | |
CN114297278A (zh) | 批量数据快速写入方法、系统和装置 | |
CN112860762B (zh) | 用于检测时间段重叠的方法和装置 | |
CN111160410A (zh) | 一种物体检测方法和装置 | |
CN112860412B (zh) | 业务数据处理方法、装置、电子设备及存储介质 | |
CN110716804A (zh) | 无用资源的自动删除方法、装置、存储介质及电子设备 | |
CN113190558A (zh) | 一种数据加工方法和系统 | |
CN111723063A (zh) | 一种离线日志数据处理的方法和装置 | |
CN111047657A (zh) | 图片压缩方法、装置、介质及电子设备 | |
CN114860970A (zh) | 图片标注方法、装置、电子设备以及存储介质 | |
CN113779021B (zh) | 数据处理方法、装置、计算机系统及可读存储介质 | |
CN112148705A (zh) | 数据迁移的方法和装置 | |
CN113220237B (zh) | 一种分布式存储方法、装置、设备及存储介质 | |
CN111125163A (zh) | 用于处理数据的方法和装置 | |
CN111061719B (zh) | 数据收集方法、装置、设备和存储介质 | |
CN111262727B (zh) | 服务的扩容方法、装置、设备及存储介质 | |
CN113742485A (zh) | 一种处理文本的方法和装置 | |
CN113807056A (zh) | 一种文档名称序号纠错方法、装置和设备 | |
CN111610908B (zh) | 一种生成框架图的方法、计算机设备及可读存储介质 | |
CN112308678A (zh) | 基于图像识别的价格信息处理方法、装置、设备和介质 | |
CN109657523B (zh) | 一种可行驶区域检测方法和装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |