本发明涉及数据处理领域,具体而言,涉及一种图形绘制方法、装置、电子设备及存储介质。
背景技术:
1、在当前的android与linux开发实践中,对于用户界面(ui)设计和控件设计等领域,特别是在涉及图形绘制的场景中,通常能够借助系统内置的规则形状,如线段、矩形、圆形、椭圆以及圆角矩形等,来进行高效绘图。然而,当面对复杂且不规则的图形需求时,开发者往往需寻求ui设计师的支持,通过提供设计图的方式来满足需求。这种依赖不仅可能延长项目周期,还可能因图像与开发规范的不匹配导致额外调整,进而影响整体开发进程。更进一步,使用图像资源不仅增加了android应用程序安装包的体积,同时也可能引入额外的数据处理负担。
2、鉴于上述挑战,迫切需要探索一种能够显著提升效率、优化应用安装包大小、并严格遵循开发规范的不规则图形绘制解决方案,以有助于提高开发工作的效能,同时确保最终产品符合高质量标准,满足用户期待。
技术实现思路
1、有鉴于此,本发明的目的在于提供一种图形绘制方法、装置、电子设备和存储介质,其在android与linux等操作系统开发中,能够高效且严格遵循开发规范地进行不规则图形的绘制,且开发出的应用程序安装包中无需引入图像资源,极大地优化了开发出的应用程序安装包大小。
2、为了实现上述目的,本发明实施例采用的技术方案如下:
3、第一方面,本发明提供一种图形绘制方法,所述方法包括:
4、加载不规则形状的设计图,对所述设计图进行预处理,得到中间图像;
5、根据所述中间图像的像素值,获得像素阈值;
6、基于所述像素阈值,对所述中间图像进行边缘检测,得到所述中间图像的边缘像素点;
7、根据各所述边缘像素点,得到所述不规则形状的轮廓路径;
8、使用目标操作系统的路径类api接口和绘制形状类,绘制所述轮廓路径对应的图形轮廓,得到目标图形。
9、可选地,所述基于所述像素阈值,对所述中间图像进行边缘检测,得到所述中间图像的边缘像素点的步骤,包括:
10、分别使用多个模糊尺度,对所述中间图像进行去噪,得到多张去噪图像;
11、针对每张所述去噪图像,根据所述像素阈值,从所述去噪图像中提取预选边缘点,并根据所述预选边缘点,得到所述去噪图像的二值图像;
12、对各所述二值图像进行合并,得到综合图像,并从所述综合图像中提取出边缘像素点。
13、可选地,所述中间图像包括多个图像块,所述像素阈值包括各所述图像块的高阈值和低阈值;
14、所述根据所述像素阈值,从所述去噪图像中提取预选边缘点的步骤,包括:
15、针对每个所述图像块的每个像素点,若所述像素点的像素值大于所述图像块的高阈值,则将所述像素点作为强边缘点,若所述像素点的像素值位于所述图像块的高阈值和低阈值之间,则将所述像素点作为弱边缘点;
16、针对每个所述弱边缘点,当所述弱边缘点与任意一个所述强边缘点具有相邻关系时,将所述弱边缘点进行保留;
17、将各所述强边缘点和保留的所述弱边缘点,作为预选边缘点。
18、可选地,所述对各所述二值图像进行合并,得到综合图像的步骤,包括:
19、将各所述二值图像通过逻辑或操作进行合并,得到综合图像。
20、可选地,所述分别使用多个模糊尺度,对所述中间图像进行去噪,得到多张去噪图像的步骤,包括:
21、分别使用多个模糊尺度,对所述中间图像进行高斯模糊处理,得到多张平滑图像;
22、针对每张所述平滑图像,计算所述平滑图像的各像素点的梯度幅度;
23、根据所述梯度幅度,对每张所述平滑图像进行非极大值抑制,得到去噪图像。
24、可选地,所述根据所述中间图像的像素值,获得像素阈值的步骤,包括:
25、将所述中间图像划分为多个图像块;
26、针对每个所述图像块,根据所述图像块的各像素点的像素值,获得中位值,并根据所述中位值,获得所述图像块的高阈值和低阈值。
27、可选地,所述根据各所述边缘像素点,得到所述不规则形状的轮廓路径的步骤,包括:
28、将各所述边缘像素点进行连接,并对连接后得到的路径进行形态学操作,获得所述不规则形状的轮廓路径。
29、第二方面,本发明提供一种图形绘制装置,包括预处理模块、阈值获取模块、边缘检测模块、路径获取模块和绘制模块;
30、所述预处理模块,用于加载不规则形状的设计图,对所述设计图进行预处理,得到中间图像;
31、所述阈值获取模块,用于根据所述中间图像的像素值,获得像素阈值;
32、所述边缘检测模块,用于基于所述像素阈值,对所述中间图像进行边缘检测,得到所述中间图像的边缘像素点;
33、所述路径获取模块,用于根据各所述边缘像素点,得到所述不规则形状的轮廓路径;
34、所述绘制模块,用于使用目标操作系统的路径类api接口和绘制形状类,绘制所述轮廓路径对应的图形轮廓,得到目标图形。
35、第三方面,本发明提供一种电子设备,包括处理器和存储器,所述存储器存储有能够被所述处理器执行的计算机程序,所述处理器可执行所述计算机程序以实现如前述实施方式中任一项所述的图形绘制方法。
36、第四方面,本发明提供一种存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现如前述实施方式中任一项所述的图形绘制方法。
37、本发明实施例提供的图形绘制方法、装置、电子设备和存储介质,方法包括:加载不规则形状的设计图,对设计图进行预处理,得到中间图像;根据中间图像的像素值,获得像素阈值;基于像素阈值,对中间图像进行边缘检测,得到中间图像的边缘像素点;根据各边缘像素点,得到不规则形状的轮廓路径;使用目标操作系统的路径类api接口和绘制形状类,绘制轮廓路径对应的图形轮廓,得到目标图形。如此,通过从设计图中提取出不规则形状的轮廓路径后,调用路径类api接口和绘制形状类绘制轮廓路径对应的图像轮廓,从而在操作系统开发过程中,既能快速、高效且规范地进行不规则图形的绘制,又在开发出的应用程序安装包中无需引入图像资源,极大地优化了开发出的应用程序安装包大小。
38、为使本发明的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附附图,作详细说明如下。
1.一种图形绘制方法,其特征在于,所述方法包括:
2.根据权利要求1所述的图形绘制方法,其特征在于,所述基于所述像素阈值,对所述中间图像进行边缘检测,得到所述中间图像的边缘像素点的步骤,包括:
3.根据权利要求2所述的图形绘制方法,其特征在于,所述中间图像包括多个图像块,所述像素阈值包括各所述图像块的高阈值和低阈值;
4.根据权利要求2所述的图形绘制方法,其特征在于,所述对各所述二值图像进行合并,得到综合图像的步骤,包括:
5.根据权利要求2所述的图形绘制方法,其特征在于,所述分别使用多个模糊尺度,对所述中间图像进行去噪,得到多张去噪图像的步骤,包括:
6.根据权利要求1至5中任一项所述的图形绘制方法,其特征在于,所述根据所述中间图像的像素值,获得像素阈值的步骤,包括:
7.根据权利要求1至5中任一项所述的图形绘制方法,其特征在于,所述根据各所述边缘像素点,得到所述不规则形状的轮廓路径的步骤,包括:
8.一种图形绘制装置,其特征在于,包括预处理模块、阈值获取模块、边缘检测模块、路径获取模块和绘制模块;
9.一种电子设备,其特征在于,包括处理器和存储器,所述存储器存储有能够被所述处理器执行的计算机程序,所述处理器可执行所述计算机程序以实现如权利要求1至7中任一项所述的图形绘制方法。
10.一种存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至7中任一项所述的图形绘制方法。