发明内容
本发明实施例的目的在于提供一种图像处理方法及系统,以实现自动化上传待处理图像文件,对待处理图像文件中的目标区域进行打码处理得到目标图像文件和下载目标图像文件,可以提高信息的安全性,并提高对待处理图像文件进行处理的效率。具体技术方案如下:
第一方面,为了达到上述目的,本发明实施例提供了一种图像处理方法,所述方法应用于服务器,所述方法包括:
接收终端发送的第一通知消息,并提取所述第一通知消息携带的待处理图像文件的第一存储路径;其中,所述第一存储路径表示:所述待处理图像文件的存储位置;
获取所述第一存储路径下的待处理图像文件;
对所述待处理图像文件中的目标区域进行打码处理,得到目标图像文件;
将所述目标图像文件进行存储,并向终端发送携带有所述目标图像文件的第二存储路径的第二通知消息,以使终端在接收到所述第二通知消息时基于所述第二通知消息中携带的第二存储路径获取所述目标图像文件。
可选的,所述对所述待处理图像文件中的目标区域进行打码处理,得到目标图像文件,包括:
基于所述待处理图像文件的文件格式,判断所述待处理图像文件的类型;其中,所述待处理图像文件的类型为视频,或者图片;
若所述待处理图像文件为视频,判断所述待处理图像文件是否达到预设大小;
若所述待处理图像文件达到所述预设大小,将所述待处理图像文件加载至所述服务器的磁盘;
在所述服务器的磁盘中,对所述待处理图像文件进行分帧处理,得到所述待处理图像文件中包含的各图片;
对所述待处理图像文件中包含的各图片中的目标区域进行打码处理,得到目标图像文件。
可选的,所述对所述待处理图像文件中包含的各图片中的目标区域进行打码处理,得到目标图像文件,包括:
将所述服务器的磁盘中的所述待处理图像文件包含的每一图片,加载至所述服务器的内存中;
针对所述待处理图像文件包含的每一图片,在所述服务器的内存中,基于目标检测算法,确定该图片中的目标区域;
对该图片中的目标区域进行打码处理,得到目标图片;
将得到的各目标图片写入所述服务器的磁盘;
在所述服务器的磁盘中对各目标图片进行组合,得到目标图像文件。
可选的,还包括:
若判断出所述待处理图像文件未达到所述预设大小,将所述待处理图像文件加载至所述服务器的内存;
在所述服务器的内存中,对所述待处理图像文件进行分帧处理,得到所述待处理图像文件包含的各图片;
针对所述待处理图像文件包含的每一图片,在所述服务器的内存中,基于目标检测算法,确定该图片中的目标区域;
对该图片中的目标区域进行打码处理,得到目标图片;
对得到的各目标图片进行组合,得到目标图像文件。
可选的,还包括:
若判断出所述待处理图像文件为图片,将所述待处理图像文件加载至所述服务器的内存;
在所述服务器的内存中,基于目标检测算法,确定所述待处理图像文件中的目标区域;
对所述待处理图像文件中的目标区域进行打码处理,得到目标图像文件。
可选的,所述将所述目标图像文件进行存储,并向终端发送携带有所述目标图像文件的第二存储路径的第二通知消息,包括:
将所述目标图像文件按照文件名存储至文件存储系统中的第二存储路径下;其中,所述第二存储路径与所述第一存储路径相同;
对所述目标图像文件的文件名和所述第二存储路径进行拼装,得到第二通知消息,并向终端发送所述第二通知消息。
第二方面,为了达到上述目的,本发明实施例提供了一种图像处理方法,所述方法应用于终端,所述方法包括:
向服务器发送携带有待处理图像文件的第一存储路径的第一通知消息,以使所述服务器在接收到所述第一通知消息时,提取所述第一通知消息携带的所述第一存储路径;获取所述第一存储路径下的待处理图像文件;对所述待处理图像文件中的目标区域进行打码处理,得到目标图像文件;将所述目标图像文件进行存储,并向终端发送携带有所述目标图像文件的第二存储路径的第二通知消息;其中,所述第一存储路径表示:所述待处理图像文件的存储位置;
在接收到所述第二通知消息时,基于所述第二通知消息中携带的第二存储路径获取所述目标图像文件。
第三方面,为了达到上述目的,本发明实施例提供了一种图像处理系统,所述图像处理系统包括:终端和服务器,其中,
所述终端,用于向所述服务器发送携带有待处理图像文件的第一存储路径的第一通知消息;
所述服务器,用于接收所述终端发送的第一通知消息,并提取所述第一通知消息携带的所述第一存储路径;其中,所述第一存储路径表示:所述待处理图像文件的存储位置;获取所述第一存储路径下的待处理图像文件;对所述待处理图像文件中的目标区域进行打码处理,得到目标图像文件;将所述目标图像文件进行存储,并向终端发送携带有所述目标图像文件的第二存储路径的第二通知消息;
所述终端,还用于在接收到所述第二通知消息时,基于所述第二通知消息中携带的第二存储路径获取所述目标图像文件。
本发明实施例还提供了一种电子设备,包括处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;
存储器,用于存放计算机程序;
处理器,用于执行存储器上所存放的程序时,实现上述第一方面所述的图像处理方法步骤,或者上述第二方面所述的图像处理方法步骤。
本发明实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现上述第一方面所述的图像处理方法步骤,或者上述第二方面所述的图像处理方法步骤。
本发明实施例还提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述第一方面所述的图像处理方法,或者上述第二方面所述的图像处理方法。
本发明实施例提供的一种图像处理方法,服务器接收终端发送的第一通知消息,并提取第一通知消息携带的待处理图像文件的第一存储路径。第一存储路径表示待处理图像文件的存储位置。服务器获取第一存储路径下的待处理图像文件。服务器对待处理图像文件中的目标区域进行打码处理,得到目标图像文件。服务器将目标图像文件进行存储,并向终端发送携带有目标图像文件的第二存储路径的第二通知消息。终端在接收到第二通知消息时,基于第二通知消息中携带的第二存储路径获取目标图像文件。
基于上述处理,服务器可以直接按照终端发送的第一通知消息携带的第一存储路径获取待处理图像文件,并对待处理图像文件中的目标区域进行打码处理,并且还可以向终端发送携带目标图像文件的第二存储路径的第二通知消息。终端则可以按照第二存储路径,直接获取处理后的目标图像文件。也就是说,可以实现自动化上传待处理图像文件,对待处理图像文件脱敏处理和下载目标图像文件,可以提高信息的安全性,并提高对待处理图像文件进行处理的效率。
当然,实施本发明的任一产品或方法并不一定需要同时达到以上所述的所有优点。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员基于本申请所获得的所有其他实施例,都属于本发明保护的范围。
参见图1,本发明实施例提供了一种图像处理方法的流程图,该方法可以包括以下步骤:
S101:终端向服务器发送携带有待处理图像文件的第一存储路径的第一通知消息。
S102:服务器接收终端发送的第一通知消息,并提取第一通知消息携带的第一存储路径。
其中,第一存储路径表示:待处理图像文件的存储位置。
S103:服务器获取第一存储路径下的待处理图像文件。
S104:服务器对待处理图像文件中的目标区域进行打码处理,得到目标图像文件。
S105:服务器将目标图像文件进行存储。
S106:服务器向终端发送携带有目标图像文件的第二存储路径的第二通知消息。
S107:终端在接收到第二通知消息时,基于第二通知消息中携带的第二存储路径获取目标图像文件。
基于本发明实施例提供的图像处理方法,服务器可以直接按照终端发送的第一通知消息携带的第一存储路径获取待处理图像文件,并对待处理图像文件中的目标区域进行打码处理,并且还可以向终端发送携带目标图像文件的第二存储路径的第二通知消息。终端则可以按照第二存储路径,直接获取处理后的目标图像文件。也就是说,可以实现自动化上传待处理图像文件,对待处理图像文件脱敏处理和下载目标图像文件,可以提高信息的安全性,并提高对待处理图像文件进行处理的效率。
针对步骤S101和步骤S102,终端可以为具备图像采集功能的采集车辆中的车载电子设备(例如,中央域控制器),采集车辆可以在指定地区进行拍摄,得到包含指定地区的环境信息(例如,交通信号灯信息,建筑物信息,路况信息等)的图像文件(即本发明实施例中的待处理图像文件),并将拍摄得到的待处理图像文件上传至服务器。
终端可以通过以下方式将待处理图像文件上传至服务器。
方式一:
终端可以按照待处理图像文件的文件名,将待处理图像文件存储至文件存储系统。然后,终端可以确定待处理图像文件在文件存储系统中的存储路径(即第一存储路径),并向服务器发送携带有第一存储路径的第一通知消息。其中,文件存储系统可以为:S3(Simple Storage Service,简单存储服务)。
相应的,服务器可以接收终端发送的第一通知消息,并对第一通知消息进行解析,得到待处理图像文件的第一存储路径。
方式二:
服务器可以为多个,例如,服务器可以包括:数据收容服务器和数据脱敏服务器。其中,数据收容服务器用于获取终端上传的待处理图像文件。数据脱敏服务器用于对待处理图像文件进行后续处理,各服务器的具体处理方式可以参见后续实施例的相关介绍。
终端可以通过数据收容服务器向数据脱敏服务器发送第一通知消息。具体的,终端可以向数据收容服务器发送待处理图像文件。相应的,数据收容服务器可以接收终端发送的待处理图像文件,并将接收到的待处理图像文件存储至文件存储系统。
然后,数据收容服务器可以向数据脱敏服务器发送携带有待处理图像文件的第一存储路径的第一通知消息。例如,数据收容服务器可以对待处理图像文件的文件名和第一存储路径进行封装,得到对应的Kafka(一种高吞吐量的分布式发布订阅消息系统)消息,作为第一通知消息,并将第一通知消息添加至预设队列(可以称为第一预设队列)。
相应的,数据脱敏服务器可以从第一预设队列中获取第一通知消息,并对第一通知消息进行解析,得到待处理图像文件的第一存储路径。
基于上述处理,如果数据收容服务器直接将待处理图像文件的第一存储路径发送至数据脱敏服务器,当待处理图像文件较多时,数据脱敏服务器可能不能同时获取的待处理图像文件,因此,将待处理图像文件的第一存储路径添加至第一预设队列后,数据脱敏服务器可以依次从第一预设队列中获取每一第一存储路径,并依次获取第一存储路径下的待处理图像文件,可以降低数据脱敏服务器的处理压力。
针对步骤S103,在待处理图像文件存储至文件存储系统的情况下,在获取到待处理图像文件的第一存储路径之后,服务器可以从文件存储系统中,获取第一存储路径下的待处理图像文件。
一种实现方式中,当待处理图像文件为多个时,服务器可以开启多个处理线程,每一处理线程均用于获取第一存储路径下的待处理图像文件。
基于上述处理,服务器可以通过多个线程,分别获取第一存储路径下的待处理图像文件,可以提高服务器的处理效率。
为了提高服务器对图像文件进行处理的处理效率,本发明实施例提供的图像处理方法可以部署于服务器的GPU(Graphics Processing Unit,图像处理器)。服务器的配置文件中可以配置GPU号码和每个GPU上开启的处理线程的数目,便于后续技术人员按照业务需求对配置文件进行调整,例如,调整每个GPU上开启的处理线程的数目,以提高GPU的利用率。
针对步骤S104,待处理图像文件中的目标区域可以为待处理图像文件中包含隐私信息(例如,人脸、车牌等)的区域。服务器可以基于预设的目标检测算法,对待处理图像文件进行目标检测,得到待处理图像文件中的目标区域。
目标检测算法可以为R-CNN(Region Convolutional Neural Network,区域卷积神经网络)算法,或者,目标检测算法也可以为YOLO(You only look once,基于深度学习的端到端的目标检测算法),但并不限于此。
然后,服务器可以对待处理图像文件中的目标区域进行打码处理,得到目标图像文件。
例如,服务器可以将预设图像(例如,空白图像)覆盖待处理图像文件中的目标区域,或者对目标区域进行马赛克处理等,得到目标图像文件。或者,服务器可以将目标区域划分为多个子区域,并从每一子区域中选取一个像素点(可以称为指定像素点),将该子区域中其他像素点的像素值调整为指定像素点的像素值,得到目标图像文件。
待处理图像文件可以为视频图像,或者,待处理图像文件也可以为图片。对于不同的待处理图像文件,服务器可以采取不同的处理方式。
方式一:
在本发明的一个实施例中,在图1的基础上,参见图2,步骤S104可以包括以下步骤:
S1041:服务器基于待处理图像文件的文件格式,判断待处理图像文件的类型。
其中,待处理图像文件的类型为视频,或者图片。
S1042:若待处理图像文件为视频,服务器判断待处理图像文件是否达到预设大小。
S1043:若待处理图像文件达到预设大小,服务器将待处理图像文件加载至服务器的磁盘。
S1044:在服务器的磁盘中,对待处理图像文件进行分帧处理,得到待处理图像文件中包含的各图片。
S1045:服务器对待处理图像文件中包含的各图片中的目标区域进行打码处理,得到目标图像文件。
在接收到待处理图像文件时,服务器可以确定待处理图像文件的文件格式,并基于待处理图像文件的文件格式,判断待处理图像文件的类型。例如,待处理图像文件的文件格式为“AVI”,则可以确定待处理图像文件为视频。待处理图像文件的文件格式为“JPG”,则可以确定待处理图像文件为图片。
在确定出待处理图像文件为视频时,服务器可以继续判断待处理图像文件是否达到预设大小。预设大小可以由技术人员根据经验设置,例如,预设大小可以为40MB,或者预设大小也可以为50MB,但并不限于此。
当待处理图像文件达到预设大小时,如果在服务器的内存中对待处理图像进行处理,会占用服务器较大的内存,可能会导致服务器的处理效率较低。因此,可以将待处理图像文件存储至服务器的磁盘,并在服务器的磁盘中,对待处理图像文件进行处理,以提高服务器的处理效率。
在待处理图像文件为视频时,待处理图像文件中包含多个图片,每一图片中均可能存在涉及隐私信息的目标区域。因此,可以在服务器的磁盘中对待处理图像文件进行分帧处理,得到待处理图像文件中包含的各图片。进而,服务器可以对待处理图像文件中包含的每一图片中的目标区域进行打码处理,得到目标图像文件。
在本发明的一个实施例中,在图2的基础上,参见图3,步骤S1045可以包括以下步骤:
S10451:将服务器的磁盘中的待处理图像文件包含的每一图片,加载至服务器的内存中。
S10452:针对待处理图像文件包含的每一图片,在服务器的内存中,基于目标检测算法,确定该图片中的目标区域。
S10453:服务器对该图片中的目标区域进行打码处理,得到目标图片。
S10454:服务器将得到的各目标图片写入服务器的磁盘。
S10455:在服务器的磁盘中对各目标图片进行组合,得到目标图像文件。
在得到待处理图像文件中包含的每一图片之后,服务器可以依次将待处理图像文件中包含的每一图片加载至服务器的内存中,并基于目标检测算法,在服务器的内存中对待处理图像文件中包含的每一图片进行目标检测,得到该图片中的目标区域。
然后,针对待处理图像文件中包含的每一图片,服务器可以对该图片中的目标区域进行打码处理,得到目标图片,并将得到各目标图片写入服务器的磁盘。进而,服务器可以通过VideoWriter(视频制作)工具,在服务器的磁盘中对各目标图片进行组合,得到待处理图像文件对应的目标图像文件。
在本发明的一个实施例中,在图2的基础上,参见图4,该方法还可以包括以下步骤:
S1046:若判断出待处理图像文件未达到预设大小,将待处理图像文件加载至服务器的内存。
S1047:在服务器的内存中,对待处理图像文件进行分帧处理,得到待处理图像文件包含的各图片。
S1048:针对待处理图像文件包含的每一图片,在服务器的内存中,基于目标检测算法,确定该图片中的目标区域。
S1049:对该图片中的目标区域进行打码处理,得到目标图片。
S10410:对得到的各目标图片进行组合,得到目标图像文件。
如果待处理图像文件为视频图像,且待处理图像文件未达到预设大小,表示待处理图像文件所占的内存较小,直接在服务器的内存中对待处理图像文件进行处理不会影响服务器的处理效率。服务器可以直接将待处理图像文件加载至服务器的内存,并在服务器的内存中对待处理图像文件进行处理,得到目标图像文件。对处理图像文件进行处理的具体方式可以参见前述实施例的相关介绍。
方式二:
在本发明的一个实施例中,在图2的基础上,参见图5,步骤S104还可以包括以下步骤:
S10411:若判断出待处理图像文件为图片,服务器将待处理图像文件加载至服务器的内存。
S10412:在服务器的内存中,基于目标检测算法,确定待处理图像文件中的目标区域。
S10413:服务器对待处理图像文件中的目标区域进行打码处理,得到目标图像文件。
如果待处理图像文件为图片,由于图片所占的内存较小,可以直接将待处理图像文件加载至服务器的内存。然后,在服务器的内存中,基于目标检测算法,对待处理图像文件进行目标检测,确定待处理图像文件中的目标区域。进而,服务器可以对待处理图像文件中的目标区域进行打码处理,得到目标图像文件。
针对步骤S105和步骤S106,一种实现方式中,在图1的基础上,参见图6,步骤S105可以包括以下步骤:
S1051:服务器将目标图像文件按照文件名存储至文件存储系统中的第二存储路径下。
其中,第二存储路径与第一存储路径相同。
相应的,步骤S106可以包括以下步骤:
S1061:服务器对目标图像文件的文件名和第二存储路径进行拼装,得到第二通知消息,并向终端发送第二通知消息。
在得到目标图像文件之后,服务器可以直接按照目标图像文件的文件名,将目标图像文件存储至文件存储系统,并确定目标图像文件在文件存储系统中的存储路径(即第二存储路径)。第二存储路径与第一存储路径相同,也就是将目标图像文件存储至与待处理图像文件相同的存储路径。
然后,服务器可以对目标图像文件的文件名和第二存储路径进行拼装,得到对应的Kafka消息,作为第二通知消息。进而,向终端发送携带有第二存储路径的第二通知消息。相应的,终端在接收到第二通知消息时,可以对第二通知消息进行解析,得到第二存储路径,并获取第二存储路径下的待处理图像文件。
另一种实现方式中,服务器可以为多个,例如,服务器可以包括数据脱敏服务器和数据交换服务器。其中,数据脱敏服务器用于对待处理图像文件进行处理得到目标图像文件,数据交换服务器用于获取目标图像文件。数据脱敏服务器可以通过数据交换服务器向终端发送第二通知消息。
数据脱敏服务器在将目标图像文件存储至文件存储系统之后,可以将包含目标图像文件的文件标识存储至预设队列(可以称为第二预设队列)。相应的,数据交换服务器可以从第二预设队列中获取文件标识。目标图像文件的文件标识包括:目标图像文件的第二存储路径,上传目标图像文件对应的待处理图像文件的终端的设备标识,以及目标图像文件对应的待处理图像文件的上传时间。
在获取到文件标识之后,数据交换服务器可以将获取到的文件标识存储至预设数据库。其中,预设数据库可以为Redis(一种可基于内存,且可持久化的日志型、Key-Value数据库),或者,预设数据库也可以为Hbase(一种开源的非关系型分布式数据库),但并不限于此。
终端可以向数据交换服务器发送图像获取请求,图像获取请求中携带有终端标识和时间窗口。
后续,在接收到图像获取请求时,数据交换服务器可以确定与图像获取请求中携带的设备标识和时间段标识对应的文件标识(可以称为目标文件标识),也就是,从预设数据库中,确定出设备标识与图像获取请求携带的设备标识相同,且上传时间属于图像获取请求携带的时间窗口的目标文件标识。进而,数据交换服务器可以获取目标文件标识中的第二存储路径,该第二存储路径也就是终端请求获取的目标图像文件的第二存储路径。
进而,数据交换服务器可以向终端发送携带有第二存储路径的第二通知消息。相应的,终端可以从文件存储系统中,获取第二存储路径下的目标图像文件。
在本发明的一个实施例中,服务器包括数据收容服务器、数据脱敏服务器和数据交换服务器时,终端可以将待处理图像文件上传至数据收容服务器,终端将待处理图像文件上传至数据收容服务器时,待处理图像文件可能会发生数据丢失,导致数据收容服务器接收到的待处理图像文件不是完整的待处理图像文件。
因此,在接收到终端上传的待处理图像文件时,数据收容服务器还可以判断接收到的待处理图像文件是否发生数据丢失,以根据判定结果进行相应处理。
一种实现方式中,终端在上传待处理图像文件之前,可以生成用于确定待处理图像文件是否发生数据丢失的校验信息,例如,校验信息可以为CRC(Cyclic RedundancyCheck,循环冗余校验)码。然后,终端可以向数据收容服务器发送待处理图像文件和对应的校验信息。
相应的,数据收容服务器可以基于接收到的待处理图像文件对应的CRC码,对接收到的待处理图像文件进行校验,以确定待处理图像文件是否发生数据丢失。进而,数据收容服务器可以在确定待处理图像文件未发生数据丢失时,将待处理图像文件存储至第一存储系统。
另一种实现方式中,待处理图像文件中携带有待处理图像文件的文件大小。待处理图像文件中携带的文件大小也就是终端上传该图像文件时该图像文件的文件大小。
相应的,在接收到待处理图像文件时,数据收容服务器可以获取待处理图像文件中携带的文件大小。然后,判断待处理图像文件中携带的文件大小与接收到的待处理图像文件的实际文件大小是否相同,待处理图像文件的实际文件大小也就是数据收容服务器接收到的待处理图像文件的文件大小。如果待处理图像文件中携带的文件大小与接收到的待处理图像文件的实际文件大小相同,表明待处理图像文件未发生数据丢失。进而,数据收容服务器可以将待处理图像文件存储至文件存储系统。
基于上述处理,可以确定待处理图像文件是否发生数据丢失,在一定程度上避免将不完整的待处理图像文件上传至文件存储系统。
参见图7,图7为本发明实施例提供的另一种图像处理方法的流程图,该方法应用于图像处理系统,该图像处理系统包括:终端、数据收容服务、S3、数据脱敏服务、数据交换服务。数据收容服务为前述实施例中的数据收容服务器。S3为前述实施例中的文件存储系统。数据脱敏服务为前述实施例中的数据脱敏服务器。数据交换服务为前述实施例中的数据交换服务器。
终端向数据收容服务发送图像文件。数据收容服务在接收到终端上传的待处理图像文件时,上传文件到S3。也就是,数据收容服务在接收到终端上传的待处理图像文件时,将待处理图像文件存储至文件存储系统。
然后,数据收容服务发送Kafka消息,也就是,数据收容服务将包含待处理图像文件的第一存储路径的第一通知消息添加至第一预设队列。
数据脱敏服务拉取Kafka消息,并对Kafka消息进行解析。也就是,数据脱敏服务依次从第一预设队列中获取第一通知消息,并获取第一通知消息中的第一存储路径。进而,从文件存储系统中获取第一存储路径下的待处理图像文件。待处理图像文件可以为图片或者视频。
数据脱敏服务可以判断将图片、视频下载到内存或磁盘。在待处理图像文件为图片时,将图片加载到内存,并在数据脱敏服务的内存中对图片进行算法识别,以确定图片中的目标区域。对图片中的目标区域进行打码处理,得到目标图像文件。
在待处理图像文件为视频时,数据脱敏服务可以判断视频大小,也就是判断待处理图像文件是否达到预设大小。如果视频为小视频,也就是待处理图像文件未达到预设大小,将视频加载到内存,并在数据脱敏服务的内存中,将视频拆解为一组图片,也就是,对待处理图像文件进行分帧处理,得到待处理图像文件包含的各图片。针对待处理图像文件中包含的每一图片,对该图片进行算法识别以确定该图片中的目标区域。对该图片中的目标区域进行打码处理,得到目标图片。然后,将各目标图片合成视频,得到目标图像文件。
如果视频为大视频,也就是待处理图像文件达到预设大小,将视频下载到磁盘,并将视频拆解成一组图像到磁盘。也就是,将待处理图像文件加载至数据脱敏服务的磁盘,并在数据脱敏服务的磁盘中,对待处理图像文件进行分帧处理,得到待处理图像文件包含的各图片。将数据脱敏服务的磁盘中的待处理图像文件中包含的每一图片加载到数据脱敏服务的内存。针对待处理图像文件中的每一图片,在数据脱敏服务的内存中,对该图片进行算法识别以确定该图片中的目标区域。对该图片中的目标区域进行打码处理得到目标图片,并将目标图片写入数据脱敏服务的磁盘。然后,将各目标图片合成视频,得到目标图像文件,并将目标图像文件写入数据脱敏服务的磁盘。
在得到目标图像文件之后,数据脱敏服务可以将目标图像文件上传至S3,并发送Kafka消息。也就是将目标图像文件存储至文件存储系统,并对目标图像文件的文件名和第二存储路径进行封装,得到对应的Kafka消息,将得到的Kafka消息添加至第二预设队列。
数据交换服务可以从第二预设队列中获取Kafka消息,并将Kafka消息中的文件标识和第二存储路径对应的存储至预设数据库。当需要获取目标图像文件时,终端可以向数据交换服务发送图像获取请求。在接收到图像获取请求时,数据交换服务可以从预设数据库中获取图像获取请求所指示的目标文件标识中的第二存储路径,并向终端发送携带有第二存储路径的第二通知消息。进而,终端在接收到第二通知消息时,获取第二通知消息中携带的第二存储路径,从文件存储系统中获取第二存储路径下的目标图像文件。
基于上述处理,服务器可以直接按照终端发送的第一通知消息携带的第一存储路径获取待处理图像文件,并对待处理图像文件中的目标区域进行打码处理,并且还可以向终端发送携带目标图像文件的第二存储路径的第二通知消息。终端则可以按照第二存储路径,直接获取处理后的目标图像文件。也就是说,可以实现自动化上传待处理图像文件,对待处理图像文件脱敏处理和下载目标图像文件,可以提高信息的安全性,并提高对待处理图像文件进行处理的效率。
为本发明实施例还提供了一种图像处理系统,所述图像处理系统包括:终端和服务器,其中,
所述终端,用于向所述服务器发送携带有待处理图像文件的第一存储路径的第一通知消息;
所述服务器,用于接收所述终端发送的第一通知消息,并提取所述第一通知消息携带的所述第一存储路径;其中,所述第一存储路径表示:所述待处理图像文件的存储位置;获取所述第一存储路径下的待处理图像文件;对所述待处理图像文件中的目标区域进行打码处理,得到目标图像文件;将所述目标图像文件进行存储,并向终端发送携带有所述目标图像文件的第二存储路径的第二通知消息;
所述终端,还用于在接收到所述第二通知消息时,基于所述第二通知消息中携带的第二存储路径获取所述目标图像文件。
基于本发明实施例提供的图像处理系统,服务器可以直接按照终端发送的第一通知消息携带的第一存储路径获取待处理图像文件,并对待处理图像文件中的目标区域进行打码处理,并且还可以向终端发送携带目标图像文件的第二存储路径的第二通知消息。终端则可以按照第二存储路径,直接获取处理后的目标图像文件。也就是说,可以实现自动化上传待处理图像文件,对待处理图像文件脱敏处理和下载目标图像文件,可以提高信息的安全性,并提高对待处理图像文件进行处理的效率。
本发明实施例还提供了一种电子设备,如图8所示,包括处理器801、通信接口802、存储器803和通信总线804,其中,处理器801,通信接口802,存储器803通过通信总线804完成相互间的通信,
存储器803,用于存放计算机程序;
处理器801,用于执行存储器803上所存放的程序时,实现上述实施例中应用于服务器的图像处理方法的步骤,或者上述实施例中应用于终端的图像处理方法的步骤。
上述电子设备提到的通信总线可以是外设部件互连标准(Peripheral ComponentInterconnect,PCI)总线或扩展工业标准结构(Extended Industry StandardArchitecture,EISA)总线等。该通信总线可以分为地址总线、数据总线、控制总线等。为便于表示,图中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
通信接口用于上述电子设备与其他设备之间的通信。
存储器可以包括随机存取存储器(Random Access Memory,RAM),也可以包括非易失性存储器(Non-Volatile Memory,NVM),例如至少一个磁盘存储器。可选的,存储器还可以是至少一个位于远离前述处理器的存储装置。
上述的处理器可以是通用处理器,包括中央处理器(Central Processing Unit,CPU)、网络处理器(Network Processor,NP)等;还可以是数字信号处理器(Digital SignalProcessor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。
在本发明提供的又一实施例中,还提供了一种计算机可读存储介质,该计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现上述实施例中应用于服务器的图像处理方法的步骤,或者上述实施例中应用于终端的图像处理方法的步骤。
在本发明提供的又一实施例中,还提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述实施例中应用于服务器的图像处理方法的步骤,或者上述实施例中应用于终端的图像处理方法的步骤。
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机程序指令时,全部或部分地产生按照本发明实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(DSL))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,DVD)、或者半导体介质(例如固态硬盘Solid State Disk(SSD))等。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
本说明书中的各个实施例均采用相关的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统、电子设备、计算机可读存储介质和计算机程序产品实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
以上所述仅为本发明的较佳实施例,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内所作的任何修改、等同替换、改进等,均包含在本发明的保护范围内。