本技术涉及人工智能,特别是涉及一种图像处理方法、装置及存储介质。
背景技术:
1、在对图像进行识别、分割、检测等处理时,可以利用图像处理模型进行处理。
2、相关技术中,图像处理模型一般可分为预处理层、推理层、后处理层等网络层,每一网络层中往往包括一个或多个算子。在利用图像处理模型对图像进行处理时,需要依次调用各个算子,由于图像处理模型中所包括的算子的数量较多,因此调用算子所耗时间较长,导致图像处理的效率较低。
技术实现思路
1、本技术实施例的目的在于提供一种图像处理方法、装置及存储介质,以提高图像处理效率。具体技术方案如下:
2、第一方面,本技术实施例提供了一种图像处理方法,所述方法包括:
3、获得待处理图像;
4、将所述待处理图像输入融合编译后的图像处理模型,得到图像处理结果,其中,所述融合编译后的图像处理模型为:基于所述图像处理模型对应的计算图,对所述图像处理模型的预处理层、推理层、后处理层中存在数据依赖关系的算子进行融合后、编译得到的网络模型;所述图像处理模型对应的计算图包含:在所述图像处理模型的图像处理流程中,算子之间的数据依赖关系。
5、本技术的一个实施例中,所述图像处理模型的融合编译过程包括:
6、提取所述图像处理模型的图像处理流程,得到所述图像处理模型中预处理层对应的预处理计算图、推理层对应的推理计算图、后处理层对应的后处理计算图;
7、对所述预处理计算图与推理计算图之间存在数据依赖关系的算子进行融合,实现对所述预处理计算图与推理计算图的融合;
8、对所述推理计算图与后处理计算图之间存在数据依赖关系的算子进行融合,实现对所述推理计算图与后处理计算图的融合;
9、对融合后的计算图进行编译,得到融合编译后的图像处理模型。
10、本技术的一个实施例中,所述对所述预处理计算图与推理计算图之间存在数据依赖关系的算子进行融合,实现对所述预处理计算图与推理计算图的融合,包括:
11、获得所述预处理计算图与推理计算图之间存在数据依赖关系的算子的类型,根据所获得的类型确定算子融合方式,按照所确定的算子融合方式,对所述预处理计算图与推理计算图之间存在数据依赖关系的算子进行融合,实现对所述预处理计算图与推理计算图的融合。
12、本技术的一个实施例中,所述方法还包括:
13、针对所述预处理计算图、推理计算图、后处理计算图中的至少一计算图中的每一算子,检测该算子与存在数据依赖关系的算子之间是否支持融合,若支持,对该算子与存在数据依赖关系的算子进行融合,得到融合后的算子;
14、针对融合后的每一算子,检测该算子与存在数据依赖关系的算子之间是否支持融合,若支持,对该算子与存在数据依赖关系的算子进行融合,得到新的融合后的算子。
15、本技术的一个实施例中,所述检测该算子与存在数据依赖关系的算子之间是否支持融合,包括:
16、确定以该算子的输出数据作为输入数据的其他算子的数目;
17、若确定出的数目大于1,则确定该算子与所述其他算子之间不支持融合;
18、若确定出的数目为1,则确定该算子与所述其他算子之间支持融合
19、本技术的一个实施例中,所述提取所述图像处理模型的图像处理流程,得到所述图像处理模型中预处理层对应的预处理计算图、推理层对应的推理计算图、后处理层对应的后处理计算图,包括:
20、获得表征所述图像处理模型的图像处理流程的描述文件;
21、根据所获得的描述文件,确定所述图像处理模型中预处理层对应的预处理计算图、推理层对应的推理计算图、后处理层对应的后处理计算图。
22、本技术的一个实施例中,针对所述融合编译后的图像处理模型中所包括的第一算子和第二算子,若所述第二算子的输入数据为所述第一算子的输出数据,则在对所述待处理图像进行处理的过程中,所述第二算子的输出数据与所述第一算子的输入数据复用同一内存块。
23、第二方面,本技术实施例提供了一种图像处理装置,所述装置包括:
24、图像获得模块,用于获得待处理图像;
25、图像处理模块,用于将所述待处理图像输入融合编译后的图像处理模型,得到图像处理结果,其中,所述融合编译后的图像处理模型为:基于所述图像处理模型对应的计算图,对所述图像处理模型的预处理层、推理层、后处理层中存在数据依赖关系的算子进行融合后、编译得到的网络模型;所述图像处理模型对应的计算图包含:在所述图像处理模型的图像处理流程中,算子之间的数据依赖关系。
26、本技术的一个实施例中,所述装置还包括:
27、计算图获得模块,用于提取所述图像处理模型的图像处理流程,得到所述图像处理模型中预处理层对应的预处理计算图、推理层对应的推理计算图、后处理层对应的后处理计算图;
28、第一融合模块,用于对所述预处理计算图与推理计算图之间存在数据依赖关系的算子进行融合,实现对所述预处理计算图与推理计算图的融合;
29、第二融合模块,用于对所述推理计算图与后处理计算图之间存在数据依赖关系的算子进行融合,实现对所述推理计算图与后处理计算图的融合;
30、模型编译模块,用于对融合后的计算图进行编译,得到融合编译后的图像处理模型。
31、本技术的一个实施例中,所述第一融合模块,具体用于:
32、获得所述预处理计算图与推理计算图之间存在数据依赖关系的算子的类型,根据所获得的类型确定算子融合方式,按照所确定的算子融合方式,对所述预处理计算图与推理计算图之间存在数据依赖关系的算子进行融合,实现对所述预处理计算图与推理计算图的融合。
33、本技术的一个实施例中,所述装置还包括第三融合模块,用于:
34、针对所述预处理计算图、推理计算图、后处理计算图中的至少一计算图中的每一算子,检测该算子与存在数据依赖关系的算子之间是否支持融合,若支持,对该算子与存在数据依赖关系的算子进行融合,得到融合后的算子;
35、针对融合后的每一算子,检测该算子与存在数据依赖关系的算子之间是否支持融合,若支持,对该算子与存在数据依赖关系的算子进行融合,得到新的融合后的算子。
36、本技术的一个实施例中,所述装置还包括第三融合模块,用于确定以该算子的输出数据作为输入数据的其他算子的数目;
37、若确定出的数目大于1,则确定该算子与所述其他算子之间不支持融合;
38、若确定出的数目为1,则确定该算子与所述其他算子之间支持融合。
39、本技术的一个实施例中,所述计算图获得模块,具体用于:
40、获得表征所述图像处理模型的图像处理流程的描述文件;
41、根据所获得的描述文件,确定所述图像处理模型中预处理层对应的预处理计算图、推理层对应的推理计算图、后处理层对应的后处理计算图。
42、本技术的一个实施例中,针对所述融合编译后的图像处理模型中所包括的第一算子和第二算子,若所述第二算子的输入数据为所述第一算子的输出数据,则在对所述待处理图像进行处理的过程中,所述第二算子的输出数据与所述第一算子的输入数据复用同一内存块。
43、第三方面,本技术实施例提供了一种电子设备,包括:
44、存储器,用于存放计算机程序;
45、处理器,用于执行存储器上所存放的程序时,实现上述第一方面中任一项所述的图像处理方法步骤。
46、第四方面,本技术实施例提供了一种计算机可读存储介质,所述计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现第一方面任一所述的图像处理方法步骤。
47、本技术实施例还提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述任一所述的图像处理方法。
48、本技术实施例有益效果:
49、本技术实施例提供的图像处理方案中,可以获得待处理图像;将待处理图像输入融合编译后的图像处理模型,得到图像处理结果,其中,融合编译后的图像处理模型为:基于图像处理模型对应的计算图,对图像处理模型的预处理层、推理层、后处理层中存在数据依赖关系的算子进行融合后、编译得到的网络模型;图像处理模型对应的计算图包含:在图像处理模型的图像处理流程中,算子之间的数据依赖关系。这样可以预先对图像处理模型中的预处理层、推理层、后处理层中存在数据依赖关系的算子进行融合,再对融合后的网络层进行编译,由于对存在数据依赖关系的算子进行融合可以减少模型中算子的数量,从而融合编译后图像处理模型中算子的数量下降,进而在利用融合编译后的图像处理模型对待处理图像进行处理时,所需调用的算子的数量下降,减少了调用较多的算子而带来的耗时。由此可见,应用本技术实施例提供的方案可以提高图像处理效率。
1.一种图像处理方法,其特征在于,所述方法包括:
2.根据权利要求1所述的方法,其特征在于,所述图像处理模型的融合编译过程包括:
3.根据权利要求2所述的方法,其特征在于,所述对所述预处理计算图与推理计算图之间存在数据依赖关系的算子进行融合,实现对所述预处理计算图与推理计算图的融合,包括:
4.根据权利要求2所述的方法,其特征在于,所述方法还包括:
5.根据权利要求4所述的方法,其特征在于,所述检测该算子与存在数据依赖关系的算子之间是否支持融合,包括:
6.根据权利要求2所述的方法,其特征在于,所述提取所述图像处理模型的图像处理流程,得到所述图像处理模型中预处理层对应的预处理计算图、推理层对应的推理计算图、后处理层对应的后处理计算图,包括:
7.根据权利要求1-6中任一项所述的方法,其特征在于,针对所述融合编译后的图像处理模型中所包括的第一算子和第二算子,若所述第二算子的输入数据为所述第一算子的输出数据,则在对所述待处理图像进行处理的过程中,所述第二算子的输出数据与所述第一算子的输入数据复用同一内存块。
8.一种图像处理装置,其特征在于,所述装置包括:
9.根据权利要求8所述的装置,其特征在于,所述装置还包括:
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现权利要求1-7任一所述的方法步骤。
