CN114359094A - 图像处理方法、装置、设备及存储介质 - Google Patents
图像处理方法、装置、设备及存储介质 Download PDFInfo
- Publication number
- CN114359094A CN114359094A CN202111659648.6A CN202111659648A CN114359094A CN 114359094 A CN114359094 A CN 114359094A CN 202111659648 A CN202111659648 A CN 202111659648A CN 114359094 A CN114359094 A CN 114359094A
- Authority
- CN
- China
- Prior art keywords
- image
- layer
- editing operation
- processed
- mosaic
- 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
- 238000003672 processing method Methods 0.000 title claims abstract description 31
- 230000000873 masking effect Effects 0.000 claims abstract description 114
- 238000000034 method Methods 0.000 claims abstract description 46
- 230000004044 response Effects 0.000 claims abstract description 31
- 230000015654 memory Effects 0.000 claims description 27
- 238000004590 computer program Methods 0.000 claims description 10
- 230000000694 effects Effects 0.000 description 66
- 230000009286 beneficial effect Effects 0.000 description 13
- 230000008569 process Effects 0.000 description 9
- 238000010586 diagram Methods 0.000 description 7
- 230000005540 biological transmission Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000010365 information processing Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
Images
Landscapes
- Processing Or Creating Images (AREA)
- Studio Circuits (AREA)
- Image Processing (AREA)
Abstract
本申请提供一种图像处理方法、装置、设备及存储介质,该方法包括:响应于在待处理图像上的第一编辑操作,在待处理图像上添加第一图层和第一蒙版层;根据第一编辑操作在第一蒙版层上确定第一编辑操作区域;响应于在添加了第一图层和第一蒙版层的待处理图像上的第二编辑操作,在当前的待处理图像上添加第二图层和第二蒙版层;根据第二编辑操作在第二蒙版层上确定第二编辑操作区域;根据第一编辑操作区域和第二编辑操作区域对待处理图像进行马赛克处理,从而实现了节省计算资源和存储资源的目的。
Description
技术领域
本申请涉及图像处理领域,尤其涉及一种图像处理方法、装置、设备及存储介质。
背景技术
马赛克,是指将影像特定区域进行色阶细节劣化并造成色块打乱的效果的一种图像处理技术,在进行图像处理时,对图像进行马赛克处理是一种常见的图像处理方式。
现有技术中,在对图像进行马赛克处理时,通常在每绘制一次马赛克之后,就会生成一个新图片,然后在下次绘制马赛克时,会在前一次生成的新图片的基础上再次绘制马赛克,因此,现有技术中在对图像进行马赛克处理时,存在占用计算资源和存储资源的问题。
发明内容
本申请实施例提供一种图像处理方法、装置、设备及存储介质,用于解决现有技术中在对图像进行马赛克处理时,存在占用计算资源和存储资源的问题。
第一方面,本申请实施例提供一种图像处理方法,该方法包括:响应于在待处理图像上的第一编辑操作,在待处理图像上添加第一图层和第一蒙版层,第一图层用于显示第一马赛克图像,第一马赛克图像为根据待处理图像生成的马赛克图像,第一蒙版层位于第一图层上,第一蒙版层用于隐藏第一马赛克图像;根据第一编辑操作在第一蒙版层上确定第一编辑操作区域,第一编辑操作区域用于显示第一图层上对应区域的第一马赛克图像;响应于在添加了第一图层和第一蒙版层的待处理图像上的第二编辑操作,在当前的待处理图像上添加第二图层和第二蒙版层,第二图层用于显示第二马赛克图像,第二马赛克图像为根据待处理图像生成的马赛克图像,第二蒙版层位于第二图层上,第二蒙版层用于隐藏第二马赛克图像;根据第二编辑操作在第二蒙版层上确定第二编辑操作区域,第二编辑操作区域用于显示第二图层上对应区域的第二马赛克图像;根据第一编辑操作区域和第二编辑操作区域对待处理图像进行马赛克处理。
本申请实施例提供的技术方案可以包括以下有益效果:每在待处理图像上进行一次编辑操作,就会在待处理图像上添加一个图层和一个蒙版层,由于添加的多个图层上可以根据用户需求显示不同的马赛克图像,因此,在对待处理图像进行马赛克处理时,就可以实现不同的马赛克效果之间的相互叠加或者覆盖;同时,由于对待处理图像进行马赛克处理均是通过图层实现的,而图层比较轻量,因此,在对待处理图像进行大量马赛克操作时,也可以节省计算资源和存储资源,从而避免程序崩溃。
在一种可能的实施方式中,该方法还包括:响应于对第二滑动操作的撤销操作,删除第二图层和第二蒙版层;或,在第二编辑操作结束之后,响应于对第一滑动操作的撤销操作,删除第一图层、第一蒙版层、第二图层和第二蒙版层。
本申请实施例提供的技术方案可以包括以下有益效果:对编辑操作进行撤销,也即对相应操作生成的马赛克效果进行撤销,在撤销生成的马赛克效果时,由于是对图层进行删除,且图层比较轻量,这样在进行大量撤销操作时,即使删除了大量图层,也不会对内存资源和计算资源产生很大影响,从而避免了占用计算资源和存储资源的问题,节省了计算资源和存储资源。
在一种可能的实施方式中,第一编辑操作为第一滑动操作;相应的,根据第一编辑操作在第一蒙版层上确定第一编辑操作区域,包括:根据第一滑动操作在第一蒙版层上确定多个第一经过点;根据多个第一经过点确定第一编辑操作区域。
本申请实施例提供的技术方案可以包括以下有益效果:若第一编辑操作为第一滑动操作,则通过记录该第一滑动操作在蒙版层上经过的多个第一经过点,可以准确确定出唯一一个编辑操作区域,若仅通过滑动操作的起始位置和终止位置确定编辑操作区域,则会由于中间点的位置不明确,导致无法确定出准确的编辑操作区域,导致对待处理图像进行马赛克处理失败的问题,从而提高了对待处理图像进行马赛克处理的准确率。
在一种可能的实施方式中,根据多个第一经过点确定第一编辑操作区域,包括:在多个第一经过点中确定第一目标经过点,其中,第一目标经过点为除多个第一经过点中生成时间最早的经过点之外的任意一个经过点;连接第一目标经过点和第一目标经过点相邻的前一个经过点,生成第一编辑操作区域。
本申请实施例提供的技术方案可以包括以下有益效果:通过按照多个经过点的生成时间的先后顺序连接编辑操作经过的多个经过点,可以唯一确定出一个编辑操作区域,从而提高了对待处理图像进行马赛克处理的准确率。
在一种可能的实施方式中,第二编辑操作为第二滑动操作;相应的,根据第二编辑操作在第二蒙版层上确定第二编辑操作区域,包括:根据第二滑动操作在第二蒙版层上确定多个第二经过点;根据多个第二经过点确定第二编辑操作区域。
本申请实施例提供的技术方案可以包括以下有益效果:若第二编辑操作为第二滑动操作,则通过记录该第二滑动操作在蒙版层上经过的多个第二经过点,可以准确确定出唯一一个第二编辑操作区域,若仅通过滑动操作的起始位置和终止位置确定编辑操作区域,则会由于中间点的位置不明确,导致无法确定出准确的编辑操作区域,导致对待处理图像进行马赛克处理失败的问题,从而提高了对待处理图像进行马赛克处理的准确率。
在一种可能的实施方式中,根据多个第二经过点确定第二编辑操作区域,包括:在多个第二经过点中确定第二目标经过点,其中,第二目标经过点为除多个第二经过点中生成时间最早的经过点之外的任意一个经过点;连接第二目标经过点和第二目标经过点相邻的前一个经过点,生成第二编辑操作区域。
本申请实施例提供的技术方案可以包括以下有益效果:通过按照多个经过点的生成时间的先后顺序连接编辑操作经过的多个经过点,可以唯一确定出一个编辑操作区域,从而提高了对待处理图像进行马赛克处理的准确率。
在一种可能的实施方式中,该方法还包括:根据预设比例对待处理图像进行缩放处理;相应地,根据多个第一经过点确定第一编辑操作区域,包括:根据预设比例对多个第一经过点的大小和多个第一经过点中每两个第一经过点之间的距离进行缩放处理,得到多个第三经过点;根据多个第三经过点确定第一编辑操作区域;相应地,根据多个第二经过点确定第二编辑操作区域,包括:根据预设比例对多个第二经过点的大小和多个第二经过点中每两个第二经过点之间的距离进行缩放处理,得到多个第四经过点;根据多个第四经过点确定第二编辑操作区域。
本申请实施例提供的技术方案可以包括以下有益效果:当待处理图像进行了缩放处理时,需要对编辑操作对应的经过点以及经过点之间的距离一并进行相应比例的缩放处理,这样确定出的编辑操作区域才会显示在进行了缩放处理之后的待处理图像上的正确位置,从而提高了对待处理图像进行马赛克处理的准确率。
在一种可能的实施方式中,在待处理图像上添加第一图层和第一蒙版层之前,该方法还包括:根据待处理图像的尺寸确定第一图层的尺寸,待处理图像的尺寸与第一图层的尺寸相同,第一蒙版层的尺寸大于或者等于第一图层的尺寸;相应地,响应于在待处理图像上的第一编辑操作,在待处理图像上添加第一图层和第一蒙版层,包括:响应于在待处理图像上的第一编辑操作,在待处理图像上添加与待处理图像的尺寸相同的第一图层,并添加第一蒙版层。
本申请实施例提供的技术方案可以包括以下有益效果:在对待处理图像添加用于显示马赛克图像的图层时,由于马赛克图像是根据待处理图像生成的,也即,马赛克图像的尺寸与待处理图像的尺寸相同,因此,用于显示马赛克图像的图层的尺寸也需要和待处理图像的尺寸相同,这样在对待处理图像进行马赛克处理时,才可以正确显示出马赛克效果,从而提高了对待处理图像进行马赛克处理的准确率。
在一种可能的实施方式中,在待处理图像上添加第二图层和第二蒙版层之前,该方法还包括:根据待处理图像的尺寸确定第二图层的尺寸,待处理图像的尺寸与第二图层的尺寸相同,第二蒙版层的尺寸大于或者等于第二图层的尺寸;相应地,响应于在添加了第一图层和第一蒙版层的待处理图像上的第二编辑操作,在当前的待处理图像上添加第二图层和第二蒙版层,包括:响应于在待处理图像上的第二编辑操作,在当前的待处理图像上添加与待处理图像的尺寸相同的第二图层,并添加第二蒙版层。
本申请实施例提供的技术方案可以包括以下有益效果:在对待处理图像添加用于显示马赛克图像的图层时,由于马赛克图像是根据待处理图像生成的,也即,马赛克图像的尺寸与待处理图像的尺寸相同,因此,用于显示马赛克图像的图层的尺寸也需要和待处理图像的尺寸相同,这样在对待处理图像进行马赛克处理时,才可以正确显示出马赛克效果,从而提高了对待处理图像进行马赛克处理的准确率。
第二方面,本申请实施例提供一种图像处理装置,包括:第一添加模块,用于响应于在待处理图像上的第一编辑操作,在待处理图像上添加第一图层和第一蒙版层,第一图层用于显示第一马赛克图像,第一马赛克图像为根据待处理图像生成的马赛克图像,第一蒙版层位于第一图层上,第一蒙版层用于隐藏第一马赛克图像;第一确定模块,用于根据第一编辑操作在第一蒙版层上确定第一编辑操作区域,第一编辑操作区域用于显示第一图层上对应区域的第一马赛克图像;第二添加模块,用于响应于在添加了第一图层和第一蒙版层的待处理图像上的第二编辑操作,在当前的待处理图像上添加第二图层和第二蒙版层,第二图层用于显示第二马赛克图像,第二马赛克图像为根据待处理图像生成的马赛克图像,第二蒙版层位于第二图层上,第二蒙版层用于隐藏第二马赛克图像;第二确定模块,用于根据第二编辑操作在第二蒙版层上确定第二编辑操作区域,第二编辑操作区域用于显示第二图层上对应区域的第二马赛克图像;处理模块,用于根据第一编辑操作区域和第二编辑操作区域对待处理图像进行马赛克处理。
本申请实施例提供的技术方案可以包括以下有益效果:每在待处理图像上进行一次编辑操作,就会在待处理图像上添加一个图层和一个蒙版层,由于添加的多个图层上可以根据用户需求显示不同的马赛克图像,因此,在对待处理图像进行马赛克处理时,就可以实现不同的马赛克效果之间的相互叠加或者覆盖;同时,由于对待处理图像进行马赛克处理均是通过图层实现的,而图层比较轻量,因此,在对待处理图像进行大量马赛克操作时,也可以节省计算资源和存储资源,从而避免程序崩溃。
第三方面,本申请实施例提供一种终端设备,包括:处理器,存储器,显示器;存储器用于存储程序和数据,处理器调用存储器存储的程序,以执行第一方面的图像处理方法。
本申请实施例提供的技术方案可以包括以下有益效果:每在待处理图像上进行一次编辑操作,就会在待处理图像上添加一个图层和一个蒙版层,由于添加的多个图层上可以根据用户需求显示不同的马赛克图像,因此,在对待处理图像进行马赛克处理时,就可以实现不同的马赛克效果之间的相互叠加或者覆盖;同时,由于对待处理图像进行马赛克处理均是通过图层实现的,而图层比较轻量,因此,在对待处理图像进行大量马赛克操作时,也可以节省计算资源和存储资源,从而避免程序崩溃。
第四方面,本申请实施例提供一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现第一方面的图像处理方法。
本申请实施例提供的技术方案可以包括以下有益效果:每在待处理图像上进行一次编辑操作,就会在待处理图像上添加一个图层和一个蒙版层,由于添加的多个图层上可以根据用户需求显示不同的马赛克图像,因此,在对待处理图像进行马赛克处理时,就可以实现不同的马赛克效果之间的相互叠加或者覆盖;同时,由于对待处理图像进行马赛克处理均是通过图层实现的,而图层比较轻量,因此,在对待处理图像进行大量马赛克操作时,也可以节省计算资源和存储资源,从而避免程序崩溃。
第五方面,本申请实施例提供一种计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现第一方面的图像处理方法。
本申请实施例提供的技术方案可以包括以下有益效果:每在待处理图像上进行一次编辑操作,就会在待处理图像上添加一个图层和一个蒙版层,由于添加的多个图层上可以根据用户需求显示不同的马赛克图像,因此,在对待处理图像进行马赛克处理时,就可以实现不同的马赛克效果之间的相互叠加或者覆盖;同时,由于对待处理图像进行马赛克处理均是通过图层实现的,而图层比较轻量,因此,在对待处理图像进行大量马赛克操作时,也可以节省计算资源和存储资源,从而避免程序崩溃。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施例提供的图像处理方法的一种应用场景示意图;
图2为本申请实施例提供的图像处理方法的流程图;
图3为本申请实施例提供的待处理图像与各图层之间的位置关系示意图;
图4为本申请实施例提供的滑动操作区域的示意图;
图5为本申请实施例提供的图像处理装置的结构示意图;
图6为本申请实施例提供的终端设备的结构示意图。
具体实施方式
为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在根据本实施例的启示下做出的所有其他实施例,都属于本申请保护的范围。
本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”、“第三”“第四”等(如果存在)是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本申请的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
背景技术中提供的现有技术中,在对待处理图像进行马赛克处理时,至少存在以下技术问题:
(1)现有技术中在对待处理图像进行马赛克处理时,通常是使用一种马赛克效果,比如,对待处理图像添加高斯模糊效果,或者对待处理图像添加方格马赛克效果,若要实现对待处理图像使用两种马赛克效果,则两种马赛克效果的位置是固定的,比如,固定高斯模糊效果位于方格马赛克效果上面,或者固定方格马赛克效果位于高斯模糊效果上面,因此,现有技术中在对图像进行马赛克处理时,存在无法对多种马赛克效果进行相互叠加的问题;
(2)在对图像进行马赛克处理时,通常在每绘制一次马赛克之后,就会生成一个新图片,然后在下次绘制马赛克时,会在前一次生成的新图片的基础上再次绘制马赛克,而由于图片数据较大,每次生成一个新图片,会导致最终得到的进行了马赛克处理的图像数据非常大,若需要进行大量的马赛克操作或者撤销操作,可能会导致内存变化较大,中央处理器(central processing unit,简称:CPU)的计算资源占用过多,因此,现有技术中在对图像进行马赛克处理时,存在占用计算资源和存储资源的问题。
针对上述的问题,本申请提出一种图像处理方法,通过在待处理图像上进行第一编辑操作,终端设备在响应到第一编辑操作之后,在待处理图像上生成一个用于显示马赛克图像的第一图层,以及一个用于隐藏马赛克图像的第一蒙版层,然后终端设备根据第一编辑操作在第一蒙版层上确定出一个区域(相当于在蒙版层上抠出一个区域),这个区域可以用来显示第一图层上对应区域的马赛克图像,最终待处理图像、第一图层以及第一蒙版层结合起来就可以得到进行了一次马赛克处理的图像。若需要再次进行马赛克处理,则终端设备再次响应到第二编辑操作之后,在已经进行了一次马赛克处理的图像上再生成一个用于显示另一个马赛克图像的第二图层,以及一个用于隐藏该另一个马赛克图像的第二蒙版层,然后终端设备根据第二编辑操作在第二蒙版层上再次确定出一个区域,以便于显示第二图层上对应区域的马赛克图像,最终,待处理图像、第一图层、第一蒙版层、第二图层和第二蒙版层结合起来就可以得到进行了两次不同马赛克处理的图像。若要进行多次马赛克处理,则可以按照上述方式进行,在对应显示马赛克图像的图层上显示需求的马赛克图像即可。这样就可以将多种马赛克效果进行相互叠加,并且,由于图层比较轻量,即使进行大量的马赛克处理或者撤销处理也不会占用计算资源和存储资源。下面首先对本申请中涉及的名词进行解释。
CPU:计算机系统的运算和控制核心,是信息处理、程序运行的最终执行单元。
图层:通俗地讲,图层就像是含有文字或图形等元素的胶片,一张张按顺序叠放在一起,组合起来形成页面的最终效果。图层可以将页面上的元素精确定位。图层中可以加入文本、图片、表格、插件,也可以在里面再嵌套图层。
蒙版:将不同灰度色值转化为不同的透明度,并作用到它所在的图层,使图层不同部位透明度产生相应的变化。黑色为完全透明,白色为完全不透明。对于本申请来说,蒙版层作用于其下方的图层,将下方图层上显示的马赛克图像进行隐藏。
本申请提供的图像处理方法,其核心思想是通过添加图层和蒙版层,使用多个图层和蒙版层实现对待处理图像的马赛克处理。每进行一次编辑操作都会生成一个图层和一个蒙版层,图层上用于显示用户需求的马赛克图像,蒙版层用于隐藏其下方的图层上显示的马赛克图像,当用户进行编辑操作时,会在蒙版层上确定出一个与编辑操作对应的编辑操作区域,通过该编辑操作区域显示下方图层上对应区域的马赛克图像,从而用户的每次编辑操作都可以生成一种马赛克效果。由于用户可以根据自己的需求确定图层上显示的马赛克图像,因此,多种马赛克效果可以相互叠加和覆盖,并且,对待处理图像进行马赛克处理是在多个图层上进行的,而图层比较轻量,在用户进行大量马赛克处理或者撤销处理时,程序运行的系统的计算资源和存储资源都不回产生很大影响,从而不占用计算资源和存储资源,程序也不会崩溃。
在一种实施例中,可以在一种应用场景中应用该图像处理方法。图1为本申请实施例提供的图像处理方法的一种应用场景示意图,如图1所示,在该场景中,终端设备的触控屏上显示有待处理图像,当终端设备响应到待处理图像上的第一编辑操作开始时,会在待处理图像上生成一个图层和一个蒙版层,图层上用于显示马赛克图像,该马赛克图像为根据待处理图像生成的图像,在该场景中以该马赛克图像的效果为高斯模糊效果为例;蒙版层用于将马赛克图像进行隐藏,因此,在第一编辑操作还未形成第一编辑操作区域时,能看到的只有待处理图像上显示的图案,而图层上显示的马赛克图像已经被蒙版层隐藏了。当终端设备响应到待处理图像上的第一编辑操作结束时,根据第一编辑操作在蒙版层上生成一个第一编辑操作区域,该第一编辑操作区域就可以显示出下方图层上对应区域的高斯模糊的马赛克图像,也即,在蒙版层上擦除了一个第一编辑操作区域的区域,当该区域被擦除时,就可以将下方图层上的马赛克图像显示出来,也就完成了对待处理图像的一次马赛克处理。
在上述场景中,当终端设备响应到待处理图像上的第二编辑操作开始时,会再次生成一个图层和一个蒙版层,图层上用于显示另一个马赛克图像,在该场景中以该马赛克图像的效果为点状效果为例;在第二编辑操作还未形成第二编辑操作区域时,能看到的只有待处理图像以及待处理图像上的高斯模糊效果,而点状效果的马赛克图像被蒙版层隐藏了。当终端设备响应到待处理图像上的第二编辑操作结束时,根据第二编辑操作在蒙版层上生成一个第二编辑操作区域,该第二编辑操作区域就可以显示出下方图层上对应区域的点状效果的马赛克图像,且由于第一编辑操作区域和第二编辑操作区域有重叠部分,而第二编辑操作在第一编辑操作之后,因此,重叠部分可以显示第二编辑操作区域显示的点状效果的马赛克图像,从而实现了在待处理图像上对多种马赛克效果的叠加。
在上述场景中,仅仅示例说明了两种马赛克效果的叠加处理,当需要进行更多马赛克效果的叠加处理,只需在已生成马赛克效果的图像上再次进行编辑操作,并在图层上显示出需求的马赛克图像即可。
在上述场景中,若需要对马赛克效果进行撤销,则需要按照马赛克处理时间的顺序从后往前依次删除对应操作的图层即可,比如,若要撤销第二编辑操作添加的马赛克效果,则删除掉第二编辑操作对应添加的图层和蒙版层即可,若在第二编辑操作结束后,要撤销第一编辑操作添加的马赛克效果,则先删除掉第二编辑操作对应添加的图层和蒙版之后,再删除掉第一编辑操作对应添加的图层和蒙版即可。
结合上述场景,下面通过几个具体实施例对本申请提供的图像处理方法的技术方案进行详细说明。
图2为本申请实施例提供的图像处理方法的流程图,如图2所示,该方法可以包括以下步骤:
S201:响应于在待处理图像上的第一编辑操作,在待处理图像上添加第一图层和第一蒙版层。
在本步骤中,第一图层可以用于显示第一马赛克图像,第一马赛克图像可以为根据待处理图像生成的马赛克图像,第一蒙版层可以位于第一图层上,第一蒙版层可以用于隐藏第一马赛克图像。
在上述方案中,当终端设备响应到待处理图像上的第一编辑操作开始时,比如,可以在终端设备的显示页面上添加了一个拖动手势,将该拖动手势作用于待处理图像,就可以在待处理图像上生成一个第一图层和一个第一蒙版层,由于第一蒙版层隐藏了第一图层上显示的第一马赛克图像,因此,在添加了第一图层和第一蒙版层之后,终端设备的显示页面上能看到的只有待处理图像。
在上述方案中,第一编辑操作可以包括多种类型的编辑操作,比如,滑动操作、长按操作或者重按操作等,上述添加的拖动手势可以理解为一种滑动操作。
在上述方案中,终端设备的显示页面也可以称为终端设备上用于编辑图片的控制器视图。
S202:根据第一编辑操作在第一蒙版层上确定第一编辑操作区域。
在本步骤中,第一编辑操作区域用于显示第一图层上对应区域的第一马赛克图像。终端设备在响应到第一编辑操作结束之后,第一蒙版层上会确定出一个第一编辑操作区域,也即,在第一蒙版层上擦除了一个第一编辑操作区域,这样,第一图层上对应的区域的第一马赛克图像就会显示出来,从而就可以实现对待处理图像进行一次马赛克处理。
在上述方案中,在该第一编辑操作结束之后,可以将该第一编辑操作的过程封装在一个类中,比如,自定义的“NTMosaicPath”类,然后将该类存放在一个可变数组中,并对可变数组和控制器之间设置对应关系,也即将可变数组作为控制器的成员变量,从而就可以记录每次的操作过程,以便于可以保存从原图到任意一步操作得到的马赛克效果,这样在后续需要实现马赛克绘制或者显示时,只需要根据对应的编辑操作调用该类的相关方法即可,以及后续在进行撤销操作时,根据对应的编辑操作调用该类的相关方法就可以在可变数组中删除掉对应操作过程对应的类,从而实现在控制器上进行对应撤销操作。
S203:响应于在添加了第一图层和第一蒙版层的待处理图像上的第二编辑操作,在当前的待处理图像上添加第二图层和第二蒙版层。
在本步骤中,第二图层可以用于显示第二马赛克图像,第二马赛克图像可以为根据待处理图像生成的马赛克图像,第二蒙版层可以位于第二图层上,第二蒙版层可以用于隐藏第二马赛克图像。
在上述方案中,当终端设备响应到已经添加了第一图层和第一蒙版层的待处理图像上的第二编辑操作开始时,比如,可以在终端设备的显示页面上再次添加一个拖动手势,将该拖动手势作用于已经添加了第一图层和第一蒙版层的待处理图像,就可以在已经添加了第一图层和第一蒙版层的待处理图像上再次生成一个第二图层和一个第二蒙版层,由于第二蒙版层隐藏了第二图层上显示的第二马赛克图像,因此,在添加了第二图层和第二蒙版层之后,终端设备的显示页面上能看到的只有添加了第一编辑操作对应的马赛克效果的待处理图像。
在上述方案中,第二图层和第二蒙版层的位置可以在第一蒙版层之上。图3为本申请实施例提供的待处理图像与各图层之间的位置关系示意图,如图3所示,待处理图像可以位于最底层,当第一编辑操作开始时,待处理图像上会生成一个第一图层,第一图层上生成一个第一蒙版层;当第二编辑操作开始时,第一蒙版层上会生成一个第二图层,第二图层上生成一个第二蒙版层。
S204:根据第二编辑操作在第二蒙版层上确定第二编辑操作区域。
在本步骤中,第二编辑操作区域用于显示第二图层上对应区域的第二马赛克图像。终端设备在响应到第二编辑操作结束之后,第二蒙版层上会确定出一个第二编辑操作区域,也即,在第二蒙版层上擦除了一个第二编辑操作区域,这样,第二图层上对应的区域的第二马赛克图像就会显示出来,从而就可以实现对待处理图像进行两个马赛克效果的叠加覆盖处理。
在上述方案中,第一马赛克图像的马赛克效果与第二马赛克图像的马赛克效果可以相同,也可以不同。
S205:根据第一编辑操作区域和第二编辑操作区域对待处理图像进行马赛克处理。
在本步骤中,在确定出第一编辑操作区域和第二编辑操作区域之后,若第一马赛克图像的马赛克效果与第二马赛克图像的马赛克效果不同,则第一编辑操作区域和第二编辑操作区域上分别显示了不同的马赛克效果,因此,可以实现对待处理图像进行两种马赛克效果的叠加覆盖;若第一马赛克图像的马赛克效果与第二马赛克图像的马赛克效果相同,则第一编辑操作区域和第二编辑操作区域上显示了相同的马赛克效果,因此,可以实现对待处理图像上的多个不同区域进行马赛克处理,或者对待处理图像上的一个区域进行一种马赛克效果的叠加。
本实施例提供的图像处理方法,每在待处理图像上进行一次编辑操作,就会在待处理图像上添加一个图层和一个蒙版层,由于添加的多个图层上可以根据用户需求显示不同的马赛克图像,因此,在对待处理图像进行马赛克处理时,就可以实现不同的马赛克效果之间的相互叠加或者覆盖;同时,由于对待处理图像进行马赛克处理均是通过图层实现的,而图层比较轻量,因此,在对待处理图像进行大量马赛克操作时,也可以节省计算资源和存储资源,从而避免程序崩溃。
下面对上述图像处理方法进行详细说明。
在一种实施例中,该方法还包括:响应于对第二编辑操作的撤销操作,删除第二图层和第二蒙版层;或,在第二编辑操作结束之后,响应于对第一编辑操作的撤销操作,删除第一图层、第一蒙版层、第二图层和第二蒙版层。
在该方案中,对编辑操作进行撤销,也即对相应操作生成的马赛克效果进行撤销,在撤销生成的马赛克效果时,可以按照编辑操作的时间顺序从后往前依次删除对应操作的图层即可,由于是对图层进行删除,且图层比较轻量,这样在进行大量撤销操作时,即使删除了大量图层,也不会对内存资源和计算资源产生很大影响,从而避免了占用计算资源和存储资源的问题,节省了计算资源和存储资源。
在上述方案中,前述已经介绍了可以将一次编辑操作的过程封装在一个类中,然后将多个编辑操作对应的多个类按照多个编辑操作的产生时间顺序从前往后依次存放在可变数组中。当需要对生成的马赛克效果进行撤销时,可以首先获取可变数组中的最后一个元素,该最后一个元素也即最后一个编辑操作对应的类,然后将该类中的用于显示马赛克图像的图层“mosaicImageLayer”和用于隐藏“mosaicImageLayer”图层上显示的马赛克图像的蒙版层“mosaicImageLayerMaskLayer”删除掉,然后在可变数组中移除最后一个元素,即可实现对最后一次生成的马赛克效果进行撤销。
在一种实施例中,第一编辑操作为第一滑动操作;相应的,根据第一编辑操作在第一蒙版层上确定第一编辑操作区域,包括:根据第一滑动操作在第一蒙版层上确定多个第一经过点;根据多个第一经过点确定第一编辑操作区域。
在该方案中,在第一编辑操作为第一滑动操作时,可以通过记录第一滑动操作在第一蒙版层上经过的多个第一经过点,从而准确确定出第一滑动操作生成的唯一一个第一编辑操作区域,若仅通过第一滑动操作的起始位置和终止位置确定编辑操作区域,则会由于中间点的位置不明确,导致无法确定出准确的编辑操作区域,导致对待处理图像进行马赛克处理失败的问题,从而提高了对待处理图像进行马赛克处理的准确率。
在上述方案中,由于前述已经介绍了可以将每次编辑操作的过程封装在自定义的“NTMosaicPath”类中,比如,在编辑操作为滑动操作时,该“NTMosaicPath”类中可以实现对该次滑动操作的路径的记录,也即,对该次滑动操作对应的多个经过点进行记录。该“NTMosaicPath”类中设计有“UIBezierPath”对象,该“UIBezierPath”对象的实例对象“path”可以用来绘制马赛克,通过将该“UIBezierPath”对象和“CAShapeLayer”结合使用可以实现在蒙版层“mosaicImageLayerMaskLayer”上绘制编辑操作区域,以及显示最终的马赛克效果;该“NTMosaicPath”类中还设计有“startPoint”实例对象和“linePoints”实例对象,比如,在编辑操作为滑动操作时,“startPoint”实例对象可以用于记录该“NTMosaicPath”类对应的滑动操作的起始位置,“linePoints”实例对象可以用于记录该“NTMosaicPath”类对应的滑动操作经过的点,也即上述多个经过点。
在上述方案中,“NTMosaicPath”类不仅可以实现对对应的编辑操作和记录,还可以实现对用于显示马赛克图片的图层“CALayer”以及用于隐藏马赛克图片的蒙版层“CAShapeLayer”进行初始化并记录。“NTMosaicPath”类中的“ratio”对象可以用于存放当前待处理图像的缩放比例;“NTMosaicPath”类中的“mosaicType”对象可以用于记录用户所选择的马赛克图像对应的马赛克类型;“NTMosaicPath”类中的“mosaicImageLayer”对象可以用于显示用户选择的马赛克图像,“NTMosaicPath”类中的“mosaicImageLayerMaskLayer”对象可以用于隐藏“mosaicImageLayer”对象显示的马赛克图像,并根据用户的编辑操作确定出编辑操作区域,从而实现马赛克的绘制显示。
在上述方案中,第一编辑操作除了可以为滑动操作以外,还可以为长按操作或者重按操作。当第一编辑操作为长按操作或者重按操作时,根据第一编辑操作在第一蒙版层上确定第一编辑操作区域,可以为,根据长按操作或者重按操作的触控点为中心,形成一个中心圆区域,该中心圆区域的半径可以预先设置,这样第一编辑操作区域即为该中心圆区域。
在一种实施例中,根据多个第一经过点确定第一编辑操作区域,包括:在多个第一经过点中确定第一目标经过点,其中,第一目标经过点为除多个第一经过点中生成时间最早的经过点之外的任意一个经过点;连接第一目标经过点和第一目标经过点相邻的前一个经过点,生成第一编辑操作区域。
在该方案中,由于第一编辑操作为第一滑动操作,因此,第一编辑操作的起始位置(起始点)和结束位置(结束点)之间包括有很多第一经过点,按照多个第一经过点的生成时间从前往后的顺序连接每相邻两个第一经过点,就可以得到一个唯一的第一编辑操作区域。若只通过第一编辑操作的起始点和结束点确定第一编辑操作区域,则由于中间经过的多个第一经过点的位置不明确,会导致无法准确的确定第一编辑操作区域,而通过按照多个第一经过点的生成时间的先后顺序连接第一滑动操作经过的多个第一经过点,可以唯一确定出一个第一编辑操作区域,从而提高了对待处理图像进行马赛克处理的准确率。
图4为本申请实施例提供的滑动操作区域的示意图。如图4所示,以第一编辑操作为第一滑动操作为例,则第一编辑操作区域即为第一滑动操作区域,第一滑动操作在起始点开始,向结束点进行滑动,中间会经过多个第一经过点,连接每个第一经过点,就可以得到唯一的第一滑动操作区域。
在一种实施例中,第二编辑操作为第二滑动操作;相应的,根据第二编辑操作在第二蒙版层上确定第二编辑操作区域,包括:根据第二滑动操作在第二蒙版层上确定多个第二经过点;根据多个第二经过点确定第二编辑操作区域。
在该方案中,在第二编辑操作为第二滑动操作时,第二滑动操作和第一滑动操作的原理类似。在第二滑动操作开始时,通过记录第二滑动操作在第二蒙版层上经过的多个第二经过点,可以准确确定出第二滑动操作生成的唯一一个第二编辑操作区域,若仅通过第二滑动操作的起始位置和终止位置确定第二编辑操作区域,则会由于中间点的位置不明确,导致无法确定出准确的编辑操作区域,导致对待处理图像进行马赛克处理失败的问题,从而提高了对待处理图像进行马赛克处理的准确率。
在上述方案中,第二编辑操作除了可以为滑动操作以外,也可以为长按操作或者重按操作。当需要进行多次编辑操作时,用户可以根据自己的需求选择编辑操作的类型,比如,第一编辑操作为滑动操作,第二编辑操作为长按操作等。
在一种实施例中,根据多个第二经过点确定第二编辑操作区域,包括:在多个第二经过点中确定第二目标经过点,其中,第二目标经过点为除多个第二经过点中生成时间最早的经过点之外的任意一个经过点;连接第二目标经过点和第二目标经过点相邻的前一个经过点,生成第二编辑操作区域。
在该方案中,在第二编辑操作为第二滑动操作时,第二滑动操作的起始点和结束点之间包括有很多第二经过点,按照多个第二经过点的生成时间从前往后的顺序连接每相邻两个第二经过点,就可以得到一个唯一的第二编辑操作区域。若只通过第二滑动操作的起始点和结束点确定第二编辑操作区域,则由于中间经过的多个第二经过点的位置不明确,会导致无法准确的确定第二编辑操作区域,而通过按照多个第二经过点的生成时间的先后顺序连接第二滑动操作经过的多个第二经过点,可以唯一确定出一个第二编辑操作区域,从而提高了对待处理图像进行马赛克处理的准确率。在第二编辑操作为第二滑动操作时,第二编辑操作区域也即第二滑动操作区域,通过多个第二经过点确定第二滑动操作区域也可以如图4所示。
在一种实施例中,该方法还包括:根据预设比例对待处理图像进行缩放处理;相应地,根据多个第一经过点确定第一编辑操作区域,包括:根据预设比例对多个第一经过点的大小和多个第一经过点中每两个第一经过点之间的距离进行缩放处理,得到多个第三经过点;根据多个第三经过点确定第一编辑操作区域;相应地,根据多个第二经过点确定第二编辑操作区域,包括:根据预设比例对多个第二经过点的大小和多个第二经过点中每两个第二经过点之间的距离进行缩放处理,得到多个第四经过点;根据多个第四经过点确定第二编辑操作区域。
在该方案中,在对待处理图像进行缩放处理之后,由于此时待处理图像上需要进行马赛克处理的区域大小比例发生了改变,比如,第一编辑操作为第一滑动操作,第二编辑操作为第二滑动操作时,可以对第一滑动操作对应的第一经过点,以及第二滑动操作对应的第二经过点,以及多个第一经过点之间的距离和多个第二经过点之间的距离一并进行相应比例的缩放处理;第一编辑操作为长按操作,第二编辑操作为重按操作时,可以对形成的中心圆区域的半径进行相应比例的缩放处理。如前述“NTMosaicPath”类中的“ratio”对象,可以存放待处理图像的当前缩放比例,这样才可以保证在待处理图像进行了缩放处理之后,编辑操作区域可以满足需要进行马赛克处理的区域的需求,从而保证确定出的编辑操作区域可以显示在进行了缩放处理之后的待处理图像上的正确位置上,从而提高了对待处理图像进行马赛克处理的准确率。
在一种实施例中,在待处理图像上添加第一图层和第一蒙版层之前,该方法还包括:根据待处理图像的尺寸确定第一图层的尺寸,待处理图像的尺寸与第一图层的尺寸相同,第一蒙版层的尺寸大于或者等于第一图层的尺寸;相应地,响应于在待处理图像上的第一编辑操作,在待处理图像上添加第一图层和第一蒙版层,包括:响应于在待处理图像上的第一编辑操作,在待处理图像上添加与待处理图像的尺寸相同的第一图层,并添加第一蒙版层。
在该方案中,在对待处理图像添加用于显示第一马赛克图像的第一图层时,由于第一马赛克图像是根据待处理图像生成的,也即,马赛克图像的尺寸与待处理图像的尺寸相同,因此,用于显示第一马赛克图像的第一图层的尺寸也需要和待处理图像的尺寸相同,这样在对待处理图像进行马赛克处理时,才可以正确显示出第一马赛克图像的马赛克效果,从而提高了对待处理图像进行马赛克处理的准确率。
在一种实施例中,在待处理图像上添加第二图层和第二蒙版层之前,该方法还包括:根据待处理图像的尺寸确定第二图层的尺寸,待处理图像的尺寸与第二图层的尺寸相同,第二蒙版层的尺寸大于或者等于第二图层的尺寸;相应地,响应于在待处理图像上的第二编辑操作,在待处理图像上添加第二图层和第二蒙版层,包括:响应于在待处理图像上的第二编辑操作,在待处理图像上添加与待处理图像的尺寸相同的第二图层,并添加第二蒙版层。
在该方案中,在对待处理图像添加用于显示第二马赛克图像的第二图层时,由于第二马赛克图像是根据待处理图像生成的,也即,第二马赛克图像的尺寸与待处理图像的尺寸相同,因此,用于显示第二马赛克图像的第二图层的尺寸也需要和待处理图像的尺寸相同,这样在对待处理图像进行马赛克处理时,才可以正确显示出第二马赛克图像显示的马赛克效果,从而提高了对待处理图像进行马赛克处理的准确率。
在一种实施例中,根据前述的“NTMosaicPath”类的介绍,本实施例提供的图像处理方法,可以以编辑操作为根据用户的手势进行滑动操作来绘制马赛克为例,可以先在控制器的工具栏上选中马赛克工具。
在该方案中,在手势开始移动时,可以初始化“NTMosaicPath”类的实例对象“path”,并调用“startWithMosaicImage:”方法,从而可以实现图层“mosaicImageLayer”与蒙版层“mosaicImageLayerMaskLaye”的初始化。在调用“startWithMosaicImage:”方法的时候可以根据用户当前选择的不同的马赛克类型传入对应的马赛克图像,来设置“mosaicImageLayer”图层的“contents”属性,该“contents”属性可以实现在“mosaicImageLayer”图层放置对应的马赛克图像;然后设置“mosaicImageLayer”图层的“frame”属性,该“frame”属性可以用于确定“mosaicImageLayer”图层的尺寸,使“mosaicImageLayer”图层与待处理图像可以完全重合,比如,可以通过“frame”属性确定“mosaicImageLayer”图层的四个顶点的坐标,从而确定“mosaicImageLayer”图层的尺寸;然后将“mosaicImageLayer”图层和“mosaicImageLayerMaskLayer”蒙版层都添加到待处理图像上,并将“mosaicImageLayer”图层的“mask”属性设置为蒙版层“mosaicImageLayerMaskLayer”,从而使“mosaicImageLayer”上的马赛克图像被隐藏;最后将“NTMosaicPath”类保存到可变数组中。
在该方案中,在手势移动过程中,从可变数组中获取最后一个元素“NTMosaicPath”类的“path”对象,从而确定手势在当前待处理图像上的经过点,然后调用“addLineToPoint:”方法,实现将手势经过的多个经过点进行绘制,最后将贝塞尔曲线的“CGPath”参数(也即“UIBezierPath”对象的“CGPath”参数)赋值给“mosaicImageLayerMaskLayer”蒙版层的“path”参数做展示,这样就可以绘制出手势移动生成的区域。
在该方案中,在手势移动结束后,该次手势绘制的手势移动区域(也即前述的编辑操作区域)显示的马赛克效果就可以完整显示在待处理图像上,可以对待处理图像添加一个图层“layer”,这样手势移动区域显示的马赛克效果就可以显示在该“layer”图层上,由于“layer”图层是添加在待处理图像上的,因此,在手势移动结束之后,用户看到的是就是自己绘制的完整的马赛克效果图。
本实施例提供的图像处理方法,在每次进行编辑操作时,生成新的用于显示马赛克图像的图层和用于隐藏图层上显示的马赛克图像的蒙版层,然后将用户选择的马赛克类型对应的马赛克图像显示在用于显示马赛克图像的图层上,当用户进行了编辑操作时,蒙版层上会擦出掉一个编辑操作区域,以显示该区域隐藏的马赛克图像,这样在用户看来,其编辑操作即为在待处理图像绘制马赛克。当用户进行了多次编辑操作时,就可以实现待处理图像上的多种马赛克效果的相互叠加和覆盖;在撤销马赛克效果时,直接按照编辑操作的产生时间从后往前删除对应的图层和蒙版层即可;并且由于图层比较轻量,直接通过图层实现大量的马赛克效果的绘制和撤销时,程序运行的系统中的计算资源和内存资源不会有很大的变化,因此,节省了计算资源和内存资源,且程序运行时也不会崩溃。
从总体上来说,本申请提供的技术方案,是一种既可以节省计算资源和内存资源,又可以提升对图像进行马赛克处理的效率和准确率的技术实现方法。
图5为本申请实施例提供的图像处理装置的结构示意图,该图像处理装置500包括:
第一添加模块501,用于响应于在待处理图像上的第一编辑操作,在待处理图像上添加第一图层和第一蒙版层,第一图层用于显示第一马赛克图像,第一马赛克图像为根据待处理图像生成的马赛克图像,第一蒙版层位于第一图层上,第一蒙版层用于隐藏第一马赛克图像;
第一确定模块502,用于根据第一编辑操作在第一蒙版层上确定第一编辑操作区域,第一编辑操作区域用于显示第一图层上对应区域的第一马赛克图像;
第二添加模块503,用于响应于在添加了第一图层和第一蒙版层的待处理图像上的第二编辑操作,在当前的待处理图像上添加第二图层和第二蒙版层,第二图层用于显示第二马赛克图像,第二马赛克图像为根据待处理图像生成的马赛克图像,第二蒙版层位于第二图层上,第二蒙版层用于隐藏第二马赛克图像;
第二确定模块504,用于根据第二编辑操作在第二蒙版层上确定第二编辑操作区域,第二编辑操作区域用于显示第二图层上对应区域的第二马赛克图像;
处理模块505,用于根据第一编辑操作区域和第二编辑操作区域对待处理图像进行马赛克处理。
可选的,该装置还用于响应于对第二编辑操作的撤销操作,删除第二图层和第二蒙版层;或,在第二编辑操作结束之后,响应于对第一编辑操作的撤销操作,删除第一图层、第一蒙版层、第二图层和第二蒙版层。
可选的,第一编辑操作为第一滑动操作;相应的,第一确定模块502还用于根据第一滑动操作在第一蒙版层上确定多个第一经过点;根据多个第一经过点确定第一编辑操作区域。
可选的,第一确定模块502还用于在多个第一经过点中确定第一目标经过点,其中,第一目标经过点为除多个第一经过点中生成时间最早的经过点之外的任意一个经过点;连接第一目标经过点和第一目标经过点相邻的前一个经过点,生成第一编辑操作区域。
可选的,第二编辑操作为第二滑动操作;相应的,第二确定模块504还用于根据第二滑动操作在第二蒙版层上确定多个第二经过点;根据多个第二经过点确定第二编辑操作区域。
可选的,第二确定模块504还用于在多个第二经过点中确定第二目标经过点,其中,第二目标经过点为除多个第二经过点中生成时间最早的经过点之外的任意一个经过点;连接第二目标经过点和第二目标经过点相邻的前一个经过点,生成第二编辑操作区域。
可选的,该装置还用于根据预设比例对待处理图像进行缩放处理;相应地,第一确定模块502还用于根据预设比例对多个第一经过点的大小和多个第一经过点中每两个第一经过点之间的距离进行缩放处理,得到多个第三经过点;根据多个第三经过点确定第一编辑操作区域;相应地,第二确定模块504还用于根据预设比例对多个第二经过点的大小和多个第二经过点中每两个第二经过点之间的距离进行缩放处理,得到多个第四经过点;根据多个第四经过点确定第二编辑操作区域。
可选的,该装置还用于在待处理图像上添加第一图层和第一蒙版层之前,根据待处理图像的尺寸确定第一图层的尺寸,待处理图像的尺寸与第一图层的尺寸相同,第一蒙版层的尺寸大于或者等于第一图层的尺寸;相应地,第一添加模块501还用于响应于在待处理图像上的第一编辑操作,在待处理图像上添加与待处理图像的尺寸相同的第一图层,并添加第一蒙版层。
可选的,该装置还用于在待处理图像上添加第二图层和第二蒙版层之前,根据待处理图像的尺寸确定第二图层的尺寸,待处理图像的尺寸与第二图层的尺寸相同,第二蒙版层的尺寸大于或者等于第二图层的尺寸;相应地,第二添加模块503还用于响应于在添加了第一图层和第一蒙版层的待处理图像上的第二编辑操作,在当前的待处理图像上添加与待处理图像的尺寸相同的第二图层,并添加第二蒙版层。
本实施例提供的图像处理装置,用于执行前述方法实施例中的图像处理方法的技术方案,其实现原理和技术效果类似,在此不再赘述。
图6为本申请实施例提供的终端设备的结构示意图,该终端设备600包括:
处理器611、存储器612、显示器613;
存储器612用于存储程序和数据,处理器611调用存储器612存储的程序,以执行前述方法实施例提供的图像处理方法的技术方案。
在上述终端设备中,存储器612和处理器611之间直接或间接地电性连接,以实现数据的传输或交互。例如,这些元件相互之间可以通过一条或者多条通信总线或信号线实现电性连接,如可以通过总线连接。存储器612中存储有实现图像处理方法的计算机执行指令,包括至少一个可以软件或固件的形式存储于存储器中的软件功能模块,处理器611通过运行存储在存储器612内的软件程序以及模块,从而执行各种功能应用以及数据处理。
存储器可以是,但不限于,随机存取存储器(Random Access Memory,简称:RAM),只读存储器(Read Only Memory,简称:ROM),可编程只读存储器(Programmable Read-OnlyMemory,简称:PROM),可擦除只读存储器(Erasable Programmable Read-Only Memory,简称:EPROM),电可擦除只读存储器(Electric Erasable Programmable Read-Only Memory,简称:EEPROM)等。其中,存储器用于存储程序,处理器在接收到执行指令后,执行程序。进一步地,上述存储器内的软件程序以及模块还可包括操作系统,其可包括各种用于管理系统任务(例如内存管理、存储设备控制、电源管理等)的软件组件和/或驱动,并可与各种硬件或软件组件相互通信,从而提供其他软件组件的运行环境。
处理器可以是一种集成电路芯片,具有信号的处理能力。上述的处理器可以是通用处理器,包括中央处理器(Central Processing Unit,简称:CPU)、网络处理器(NetworkProcessor,简称:NP)等。可以实现或者执行本申请实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
本申请实施例还提供一种计算机可读存储介质,计算机可读存储介质包括程序,程序在被处理器执行时用于实现方法实施例中提供的图像处理方法的技术方案。
本申请还提供一种计算机程序产品,包括:计算机程序,该计算机程序被处理器执行时用于实现前述方法实施例提供的图像处理方法的技术方案。
本领域普通技术人员可以理解:实现上述各方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成。前述的程序可以存储于一计算机可读取存储介质中。该程序在执行时,执行包括上述各方法实施例的步骤;而前述的存储介质包括:ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
最后应说明的是:以上各实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述各实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的范围。
Claims (13)
1.一种图像处理方法,其特征在于,所述方法包括:
响应于在待处理图像上的第一编辑操作,在所述待处理图像上添加第一图层和第一蒙版层,所述第一图层用于显示第一马赛克图像,所述第一马赛克图像为根据所述待处理图像生成的马赛克图像,所述第一蒙版层位于所述第一图层上,所述第一蒙版层用于隐藏所述第一马赛克图像;
根据所述第一编辑操作在所述第一蒙版层上确定第一编辑操作区域,所述第一编辑操作区域用于显示所述第一图层上对应区域的所述第一马赛克图像;
响应于在添加了所述第一图层和所述第一蒙版层的待处理图像上的第二编辑操作,在当前的待处理图像上添加第二图层和第二蒙版层,所述第二图层用于显示第二马赛克图像,所述第二马赛克图像为根据所述待处理图像生成的马赛克图像,所述第二蒙版层位于所述第二图层上,所述第二蒙版层用于隐藏所述第二马赛克图像;
根据所述第二编辑操作在所述第二蒙版层上确定第二编辑操作区域,所述第二编辑操作区域用于显示所述第二图层上对应区域的所述第二马赛克图像;
根据所述第一编辑操作区域和所述第二编辑操作区域对所述待处理图像进行马赛克处理。
2.根据权利要求1所述的方法,其特征在于,所述方法还包括:
响应于对所述第二编辑操作的撤销操作,删除所述第二图层和所述第二蒙版层;或,
在所述第二编辑操作结束之后,响应于对所述第一编辑操作的撤销操作,删除所述第一图层、所述第一蒙版层、所述第二图层和所述第二蒙版层。
3.根据权利要求1所述的方法,其特征在于,所述第一编辑操作为第一滑动操作;
相应的,所述根据所述第一编辑操作在所述第一蒙版层上确定第一编辑操作区域,包括:
根据所述第一滑动操作在所述第一蒙版层上确定多个第一经过点;
根据所述多个第一经过点确定所述第一编辑操作区域。
4.根据权利要求3所述的方法,其特征在于,所述根据所述多个第一经过点确定所述第一编辑操作区域,包括:
在所述多个第一经过点中确定第一目标经过点,其中,所述第一目标经过点为除所述多个第一经过点中生成时间最早的经过点之外的任意一个经过点;
连接所述第一目标经过点和所述第一目标经过点相邻的前一个经过点,生成所述第一编辑操作区域。
5.根据权利要求1所述的方法,其特征在于,所述第二编辑操作为第二滑动操作;
相应的,所述根据所述第二编辑操作在所述第二蒙版层上确定第二编辑操作区域,包括:
根据所述第二滑动操作在所述第二蒙版层上确定多个第二经过点;
根据所述多个第二经过点确定所述第二编辑操作区域。
6.根据权利要求5所述的方法,其特征在于,所述根据所述多个第二经过点确定所述第二编辑操作区域,包括:
在所述多个第二经过点中确定第二目标经过点,其中,所述第二目标经过点为除所述多个第二经过点中生成时间最早的经过点之外的任意一个经过点;
连接所述第二目标经过点和所述第二目标经过点相邻的前一个经过点,生成所述第二编辑操作区域。
7.根据权利要求3至6任一项所述的方法,其特征在于,所述方法还包括:
根据预设比例对所述待处理图像进行缩放处理;
相应地,所述根据所述多个第一经过点确定所述第一编辑操作区域,包括:
根据所述预设比例对所述多个第一经过点的大小和所述多个第一经过点中每两个第一经过点之间的距离进行缩放处理,得到多个第三经过点;
根据所述多个第三经过点确定所述第一编辑操作区域;
相应地,所述根据所述多个第二经过点确定所述第二编辑操作区域,包括:
根据所述预设比例对所述多个第二经过点的大小和所述多个第二经过点中每两个第二经过点之间的距离进行缩放处理,得到多个第四经过点;
根据所述多个第四经过点确定所述第二编辑操作区域。
8.根据权利要求1所述的方法,其特征在于,所述在所述待处理图像上添加第一图层和第一蒙版层之前,所述方法还包括:
根据所述待处理图像的尺寸确定所述第一图层的尺寸,所述待处理图像的尺寸与所述第一图层的尺寸相同,所述第一蒙版层的尺寸大于或者等于所述第一图层的尺寸;
相应地,所述响应于在待处理图像上的第一编辑操作,在所述待处理图像上添加第一图层和第一蒙版层,包括:
响应于在待处理图像上的第一编辑操作,在所述待处理图像上添加与所述待处理图像的尺寸相同的第一图层,并添加所述第一蒙版层。
9.根据权利要求1所述的方法,其特征在于,所述在当前的待处理图像上添加第二图层和第二蒙版层之前,所述方法还包括:
根据所述待处理图像的尺寸确定所述第二图层的尺寸,所述待处理图像的尺寸与所述第二图层的尺寸相同,所述第二蒙版层的尺寸大于或者等于所述第二图层的尺寸;
相应地,所述响应于在添加了所述第一图层和所述第一蒙版层的待处理图像上的第二编辑操作,在当前的待处理图像上添加第二图层和第二蒙版层,包括:
响应于在添加了所述第一图层和所述第一蒙版层的待处理图像上的第二编辑操作,在当前的待处理图像上添加与所述待处理图像的尺寸相同的第二图层,并添加所述第二蒙版层。
10.一种图像处理装置,其特征在于,包括:
第一添加模块,用于响应于在待处理图像上的第一编辑操作,在所述待处理图像上添加第一图层和第一蒙版层,所述第一图层用于显示第一马赛克图像,所述第一马赛克图像为根据所述待处理图像生成的马赛克图像,所述第一蒙版层位于所述第一图层上,所述第一蒙版层用于隐藏所述第一马赛克图像;
第一确定模块,用于根据所述第一编辑操作在所述第一蒙版层上确定第一编辑操作区域,所述第一编辑操作区域用于显示所述第一图层上对应区域的所述第一马赛克图像;
第二添加模块,用于响应于在添加了所述第一图层和所述第一蒙版层的待处理图像上的第二编辑操作,在当前的待处理图像上添加第二图层和第二蒙版层,所述第二图层用于显示第二马赛克图像,所述第二马赛克图像为根据所述待处理图像生成的马赛克图像,所述第二蒙版层位于所述第二图层上,所述第二蒙版层用于隐藏所述第二马赛克图像;
第二确定模块,用于根据所述第二编辑操作在所述第二蒙版层上确定第二编辑操作区域,所述第二编辑操作区域用于显示所述第二图层上对应区域的所述第二马赛克图像;
处理模块,用于根据所述第一编辑操作区域和所述第二编辑操作区域对所述待处理图像进行马赛克处理。
11.一种终端设备,其特征在于,包括:
处理器,存储器,显示器;
所述存储器用于存储程序和数据,所述处理器调用所述存储器存储的程序,以执行权利要求1至9任一项所述的图像处理方法。
12.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至9任一项所述的图像处理方法。
13.一种计算机程序产品,其特征在于,包括计算机程序,所述计算机程序被处理器执行时用于实现权利要求1至9任一项所述的图像处理方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111659648.6A CN114359094A (zh) | 2021-12-30 | 2021-12-30 | 图像处理方法、装置、设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111659648.6A CN114359094A (zh) | 2021-12-30 | 2021-12-30 | 图像处理方法、装置、设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114359094A true CN114359094A (zh) | 2022-04-15 |
Family
ID=81104701
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111659648.6A Pending CN114359094A (zh) | 2021-12-30 | 2021-12-30 | 图像处理方法、装置、设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114359094A (zh) |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104751503A (zh) * | 2013-12-26 | 2015-07-01 | 北京大学 | 图层处理装置和图层处理方法 |
CN104869324A (zh) * | 2015-05-18 | 2015-08-26 | 成都平行视野科技有限公司 | 基于智能设备的图像软件的图像处理方法和图像处理系统 |
CN105787874A (zh) * | 2014-12-25 | 2016-07-20 | 深圳市腾讯计算机系统有限公司 | 一种对截图进行马赛克处理的方法和装置 |
CN106599857A (zh) * | 2016-12-20 | 2017-04-26 | 广东欧珀移动通信有限公司 | 图像识别方法、装置、计算机可读存储介质及终端设备 |
CN107369197A (zh) * | 2017-07-05 | 2017-11-21 | 腾讯科技(深圳)有限公司 | 图片处理方法、装置及设备 |
CN111324270A (zh) * | 2020-02-24 | 2020-06-23 | 北京字节跳动网络技术有限公司 | 图像处理方法、组件、电子设备及存储介质 |
CN112558961A (zh) * | 2020-12-24 | 2021-03-26 | 北京中交兴路车联网科技有限公司 | 一种呈现引导蒙版的方法和装置以及电子设备和存储介质 |
CN112860163A (zh) * | 2021-01-21 | 2021-05-28 | 维沃移动通信(深圳)有限公司 | 图像编辑方法和装置 |
-
2021
- 2021-12-30 CN CN202111659648.6A patent/CN114359094A/zh active Pending
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104751503A (zh) * | 2013-12-26 | 2015-07-01 | 北京大学 | 图层处理装置和图层处理方法 |
CN105787874A (zh) * | 2014-12-25 | 2016-07-20 | 深圳市腾讯计算机系统有限公司 | 一种对截图进行马赛克处理的方法和装置 |
CN104869324A (zh) * | 2015-05-18 | 2015-08-26 | 成都平行视野科技有限公司 | 基于智能设备的图像软件的图像处理方法和图像处理系统 |
CN106599857A (zh) * | 2016-12-20 | 2017-04-26 | 广东欧珀移动通信有限公司 | 图像识别方法、装置、计算机可读存储介质及终端设备 |
CN107369197A (zh) * | 2017-07-05 | 2017-11-21 | 腾讯科技(深圳)有限公司 | 图片处理方法、装置及设备 |
CN111324270A (zh) * | 2020-02-24 | 2020-06-23 | 北京字节跳动网络技术有限公司 | 图像处理方法、组件、电子设备及存储介质 |
CN112558961A (zh) * | 2020-12-24 | 2021-03-26 | 北京中交兴路车联网科技有限公司 | 一种呈现引导蒙版的方法和装置以及电子设备和存储介质 |
CN112860163A (zh) * | 2021-01-21 | 2021-05-28 | 维沃移动通信(深圳)有限公司 | 图像编辑方法和装置 |
Non-Patent Citations (2)
Title |
---|
小俊;: "将图片拼接变得自然、快捷", 人像摄影, no. 03, 1 March 2007 (2007-03-01), pages 112 - 113 * |
张克素,洪瑞阳,赵平喜: "《图形图像处理》", 31 January 2020, 厦门大学出版社, pages: 201 * |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105843494B (zh) | 一种实现区域屏幕截图的方法、装置和终端 | |
JP6768695B2 (ja) | 合成された絵を生成するための方法及び装置 | |
US20120229501A1 (en) | Method and a Computer System for Displaying and Selecting Images | |
CN111752557A (zh) | 一种展示方法及装置 | |
CN110737490A (zh) | 一种引导信息显示方法和装置 | |
CN113190781A (zh) | 页面布局方法、装置、设备及存储介质 | |
CN109857964B (zh) | 一种页面操作的热力图绘制方法、装置、存储介质及处理器 | |
CN108492349B (zh) | 书写笔画的处理方法、装置、设备和存储介质 | |
CN112698904A (zh) | 一种界面渲染方法、系统、设备及计算机可读存储介质 | |
CN111523531A (zh) | 文字处理方法、装置、电子设备及计算机可读存储介质 | |
US10573033B2 (en) | Selective editing of brushstrokes in a digital graphical image based on direction | |
CN112000328B (zh) | 一种页面可视化编辑方法、装置及设备 | |
CN115129278A (zh) | 图像显示控制方法、系统、可读存储介质及电子设备 | |
CN114237468B (zh) | 文字图片的翻译方法、装置、电子设备及可读存储介质 | |
CN110825989B (zh) | 图片展示方法、装置、电子设备及可读介质 | |
CN116303723A (zh) | 一种信息处理方法及装置 | |
CN114359094A (zh) | 图像处理方法、装置、设备及存储介质 | |
CN113724364B (zh) | 一种利用多边形实现遮挡且本体不渲染的设置方法及装置 | |
CN113096217B (zh) | 图片生成方法、装置、电子设备以及存储介质 | |
CN115033226A (zh) | 页面显示方法、装置、终端设备及计算机可读存储介质 | |
JP4232701B2 (ja) | レイアウトシステム、テンプレート生成システム、レイアウトプログラムおよびテンプレート生成プログラム、並びにレイアウト方法およびテンプレート生成方法 | |
CN112748917A (zh) | 图表显示方法及装置 | |
CN113849140B (zh) | 一种标签打印方法、装置、终端设备及存储介质 | |
CN117111817B (zh) | 批注信息擦除方法、装置、电子设备及存储介质 | |
CN118750880A (zh) | 一种基于Konva动效库的程序引擎的程序实现方法、装置、设备及介质 |
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 |