CN116843708B - 图像处理方法和装置 - Google Patents
图像处理方法和装置 Download PDFInfo
- Publication number
- CN116843708B CN116843708B CN202311099706.3A CN202311099706A CN116843708B CN 116843708 B CN116843708 B CN 116843708B CN 202311099706 A CN202311099706 A CN 202311099706A CN 116843708 B CN116843708 B CN 116843708B
- Authority
- CN
- China
- Prior art keywords
- path
- level
- angle
- pressure
- threshold
- 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.)
- Active
Links
- 238000003672 processing method Methods 0.000 title claims abstract description 22
- 238000012545 processing Methods 0.000 claims abstract description 107
- 238000000034 method Methods 0.000 claims abstract description 105
- 230000002708 enhancing effect Effects 0.000 claims abstract description 8
- 230000008569 process Effects 0.000 claims description 45
- 239000013598 vector Substances 0.000 claims description 44
- 238000004590 computer program Methods 0.000 claims description 8
- 238000004891 communication Methods 0.000 description 42
- 230000006854 communication Effects 0.000 description 42
- 230000006870 function Effects 0.000 description 34
- 238000004422 calculation algorithm Methods 0.000 description 22
- 238000007726 management method Methods 0.000 description 21
- 230000008859 change Effects 0.000 description 19
- 238000010586 diagram Methods 0.000 description 13
- 230000005236 sound signal Effects 0.000 description 13
- 238000010295 mobile communication Methods 0.000 description 12
- 230000000007 visual effect Effects 0.000 description 12
- 230000011218 segmentation Effects 0.000 description 9
- 230000009286 beneficial effect Effects 0.000 description 8
- 241001422033 Thestylus Species 0.000 description 6
- 239000000284 extract Substances 0.000 description 6
- 238000013507 mapping Methods 0.000 description 6
- 238000005192 partition Methods 0.000 description 6
- 230000000694 effects Effects 0.000 description 5
- 230000003287 optical effect Effects 0.000 description 5
- 238000013528 artificial neural network Methods 0.000 description 4
- 238000005516 engineering process Methods 0.000 description 4
- 238000007619 statistical method Methods 0.000 description 4
- 238000013473 artificial intelligence Methods 0.000 description 3
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 238000013461 design Methods 0.000 description 3
- 230000004927 fusion Effects 0.000 description 3
- 229920001621 AMOLED Polymers 0.000 description 2
- 230000003416 augmentation Effects 0.000 description 2
- 230000001413 cellular effect Effects 0.000 description 2
- 238000001914 filtration Methods 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 239000004973 liquid crystal related substance Substances 0.000 description 2
- 230000007774 longterm Effects 0.000 description 2
- 238000010606 normalization Methods 0.000 description 2
- 230000002093 peripheral effect Effects 0.000 description 2
- 239000002096 quantum dot Substances 0.000 description 2
- 238000009877 rendering Methods 0.000 description 2
- 238000000638 solvent extraction Methods 0.000 description 2
- 238000006467 substitution reaction Methods 0.000 description 2
- 230000001502 supplementing effect Effects 0.000 description 2
- 241001465754 Metazoa Species 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 230000007175 bidirectional communication Effects 0.000 description 1
- 238000013529 biological neural network Methods 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 230000015572 biosynthetic process Effects 0.000 description 1
- 210000004556 brain Anatomy 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 238000011088 calibration curve Methods 0.000 description 1
- 239000003795 chemical substances by application Substances 0.000 description 1
- 230000000295 complement effect Effects 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000007499 fusion processing Methods 0.000 description 1
- 230000036541 health Effects 0.000 description 1
- 230000004807 localization Effects 0.000 description 1
- 229910044991 metal oxide Inorganic materials 0.000 description 1
- 150000004706 metal oxides Chemical class 0.000 description 1
- 210000002569 neuron Anatomy 0.000 description 1
- 230000005855 radiation Effects 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
- 238000003786 synthesis reaction Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 230000001052 transient effect Effects 0.000 description 1
- 230000007704 transition Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/10—Segmentation; Edge detection
- G06T7/12—Edge-based segmentation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T5/00—Image enhancement or restoration
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Computer Vision & Pattern Recognition (AREA)
- User Interface Of Digital Computer (AREA)
Abstract
本申请提供了一种图像处理方法和装置,能够提高抠图处理后提取得到的目标图像的准确率,减少多抠、少抠等现象,提高用户体验感。该方法包括:检测到用户对初始图像的套索操作,得到套索操作对应的套索路径;对套索路径进行分段处理,得到多段路径,多段路径中每段路径对应一组触控参数;基于每段路径对应的触控参数,确定每段路径对应的预设区域的增强等级;在存在目标路径对应的预设区域的增强等级满足预设条件的情况下,对目标路径对应的预设区域进行增强处理,得到增强区域;在初始图像中,利用增强区域覆盖目标路径对应的预设区域,得到增强后图像;利用套索路径,对增强后图像进行抠图处理,得到目标图像。
Description
技术领域
本申请涉及终端技术领域,尤其涉及一种图像处理方法和装置。
背景技术
目前,用户可以通过终端设备对图像进行抠图处理,例如用户需要提取初始图像中的目标人物时,可以通过套索操作圈选该目标人物,得到套索路径以及套索路径圈选的套索区域;然后,终端设备基于该套索区域,对图像进行抠图处理,得到该目标人物。
然而,这样的图像处理方法使得提取得到的目标图像的准确率较低,例如多抠、少抠等,使得用户体验感较差。
发明内容
本申请提供了一种图像处理方法和装置,能够提高抠图处理后提取得到的目标图像的准确率,减少多抠、少抠等现象,提高用户体验感。
第一方面,提供了一种图像处理方法,该方法包括:检测到用户对初始图像的套索操作,得到所述套索操作对应的套索路径;对所述套索路径进行分段处理,得到多段路径,所述多段路径中每段路径对应一组触控参数,所述触控参数包括位置参数;基于所述每段路径对应的触控参数,确定所述每段路径对应的预设区域的增强等级;在所述多段路径中存在目标路径对应的预设区域的增强等级满足预设条件的情况下,对所述目标路径对应的预设区域进行增强处理,得到增强区域;在所述初始图像中,利用所述增强区域覆盖所述目标路径对应的预设区域,得到增强后图像;利用所述套索路径,对所述增强后图像进行抠图处理,得到目标图像。
本申请的图像处理方法,终端设备将套索路径划分为多段路径,并利用多段路径中每段路径的位置参数,确定每段路径对应的预设区域的增强等级;通过对增强等级满足预设条件的目标路径对应的预设区域进行增强处理,这样,相比于不对目标路径对应的预设区域进行增强处理,终端设备识别用户需要提取的目标图像的准确率更高,能够减少多抠或少抠的现象,从而有助于提高终端设备抠图处理得到的目标图像的准确性,提高用户体验感。示例性地,由于每段路径的位置参数可以反映每段路径的形状,这样,在目标路径形状复杂的情况下,例如是角度变化多的曲线,表示用户需要提取的目标图像在靠近目标路径的部分区域的形状比较复杂,使得在终端设备识别用户需要提取的目标图像的该部分区域的难度较大,因此,通过对目标路径对应的预设区域进行增强处理,可以使终端设备更容易识别用户需要提取的目标图像的该部分区域,从而有助于提高终端设备抠图处理得到的目标图像的准确性。
应理解,套索操作可以理解为用户圈选初始图像中部分图像内容的过程,套索路径可以理解为用户在套索操作操作过程中圈选的路径,套索路径可以是一个或多个闭合的曲线。套索路径可以理解为多个点形成的曲线,套索路径中每个点可以对应一个位置参数,因此,对套索路径进行分段处理得到多段路径之后,多段路径中每段路径对应一组位置参数。其中,位置参数可以是用于指示套索路径中不同位置的参数,例如可以是坐标等参数。
在第一方面的某些实现方式中,所述触控参数还包括与所述位置参数对应的时间参数和/或压力参数。
应理解,通过上述的技术方案,终端设备可以基于每段路径的位置参数、以及与位置参数对应的时间参数和/或压力参数,确定每段路径对应的预设区域的增强等级,这样,终端设备可以从多个维度确定每段路径对应的预设区域的增强等级,进一步使终端设备可以更准确的确定初始图像中需要进行增强处理的区域,从而有助于提高得到的目标图像的准确性,提高用户体验感。
在第一方面的某些实现方式中,所述增强等级包括角度等级、以及速度等级和/或压力等级;所述基于所述每段路径对应的触控参数,确定所述每段路径对应的预设区域的增强等级,包括:基于所述多段路径中的第一路径的位置参数,确定所述第一路径的角度等级;基于所述第一路径的位置参数和所述第一路径的位置参数对应的时间参数确定所述第一路径的速度等级,和/或,基于所述第一路径的位置参数和所述第一路径的位置参数对应的压力参数确定所述第一路径的压力等级。
应理解,通过上述的技术方案,终端设备可以基于每段路径的角度等级、速度等级和/或压力等级,确定每段路径对应的预设区域的增强等级,这样,终端设备可以从多个维度确定每段路径对应的预设区域的增强等级,进一步使终端设备可以更准确的确定初始图像中需要进行增强处理的区域,从而有助于提高得到的目标图像的准确性,提高用户体验感。
在第一方面的某些实现方式中,所述触控参数包括位置参数、与所述位置参数对应的时间参数和压力参数;所述预设条件包括下列至少一项:角度等级为第一角度等级、速度等级为第一速度等级;或,压力等级为第一压力等级、速度等级为所述第一速度等级;或,压力等级为所述第一压力等级、角度等级为所述第一角度等级;或,角度等级为所述第一角度等级、速度等级为所述第二速度等级、且压力等级为所述第二压力等级;或,速度等级为所述第一速度等级、压力等级为所述第二压力等级、且角度等级为所述第二角度等级;或,压力等级为所述第一压力等级、角度等级为所述第二角度等级、且速度等级为所述第二速度等级;其中,所述第一角度等级高于所述第二角度等级,所述第一速度等级高于所述第二速度等级,所述第一压力等级高于所述第二压力等级。
应理解,第一角度等级高于第二角度等级可以理解为角度等级为第一角度等级的路径对应的角度变化程度高于角度等级为第二角度等级的路径。
在第一方面的某些实现方式中,所述基于所述多段路径中的第一路径的位置参数,确定所述第一路径的角度等级,包括:基于所述第一路径的位置参数、以及与所述第一路径相邻的第二路径和第三路径的位置参数,计算所述第一路径与所述第二路径之间的第一夹角,以及所述第一路径与所述第三路径之间的第二夹角;基于所述第一夹角和所述第二夹角,确定所述第一路径的角度等级。
应理解,套索路径为闭合的曲线,因此,将套索路径划分为多段路径后,多段路径中的每段路径均存在两个相邻路径。
在第一方面的某些实现方式中,所述基于所述第一夹角和所述第二夹角,确定所述第一路径的角度等级,包括:在所述第一夹角和/或所述第二夹角大于或等于第一阈值的情况下,将所述第一路径的角度等级确定为所述第一角度等级;或,在所述第一夹角和所述第二夹角小于所述第一阈值,且所述第一夹角和/或所述第二夹角大于或等于第二阈值的情况下,将所述第一路径的角度等级确定为所述第二角度等级;或,在所述第一夹角和所述第二夹角小于所述第二阈值的情况下,将所述第一路径的角度等级确定为第三角度等级;其中,所述第二阈值小于所述第一阈值,所述第二角度等级高于所述第三角度等级。
应理解,第二阈值和第一阈值是预设的大于0小于360的值。第二角度等级高于第三角度等级可以理解为角度等级为第二角度等级的路径对应的角度变化程度高于角度等级为第三角度等级的路径。
在第一方面的某些实现方式中,所述方法还包括:确定所述第一路径中目标夹角的数量,所述目标夹角为第一向量和第二向量之间的夹角,所述夹角大于或等于第三阈值,所述第一向量是根据所述第一路径中的第一位置和第二位置确定的,所述第二向量是根据所述第一路径中的所述第二位置和第三位置确定的,所述第一向量的方向是所述第一位置指向所述第二位置,所述第二向量的方向是所述第二位置指向所述第三位置;所述基于所述第一夹角和所述第二夹角,确定所述第一路径的角度等级,包括:基于所述第一夹角、所述第二夹角以及所述目标夹角的数量,确定所述第一路径的角度等级。
应理解,通过基于第一夹角、第二夹角以及目标夹角的数量,确定第一路径的角度等级,终端设备可以通过第一夹角和第二夹角确定第一路径与第一路径的相邻路径之间的角度大小;通过目标夹角的数量,终端设备可以确定第一路径本身的角度变化程度,例如第一路径对应的目标夹角的数量越小,终端设备可以确定第一路径越平滑,越接近直线;第一路径对应的目标夹角的数量越大,终端设备可以确定第一路径的角度变化多,呈曲线状态。因此,终端设备通过按照与第一路径的角度等级的确定方式相同的方式,确定多段路径中每段路径的角度等级,可以从每段路径和每段路径的相邻路径之间的角度大小,以及每段路径本身的角度变化程度这两个维度,确定每段路径的角度等级,相比于通过每段路径和每段路径的相邻路径之间的角度大小,或者,通过每段路径对应的目标夹角的数量,确定每段路径的角度等级,通过这样的方案确定角度等级的准确率更高。
在第一方面的某些实现方式中,所述基于所述第一夹角、所述第二夹角以及所述目标夹角的数量,确定所述第一路径的角度等级,包括:在所述第一夹角和/或所述第二夹角大于或等于第四阈值,和/或,所述目标夹角的数量大于或等于第五阈值的情况下,将所述第一路径的角度等级确定为所述第一角度等级;在所述第一夹角和所述第二夹角小于所述第四阈值、所述第一夹角和/或所述第二夹角大于或等于第六阈值、且所述目标夹角的数量小于所述第五阈值,或,所述第一夹角和所述第二夹角小于所述第六阈值、且所述目标夹角的数量小于所述第五阈值且大于或等于第七阈值的情况下,将所述第一路径的角度等级确定为所述第二角度等级;或,在所述第一夹角和所述第二夹角小于所述第六阈值、且所述目标夹角的数量小于所述第七阈值的情况下,将所述第一路径的角度等级确定为第三角度等级;其中,所述第六阈值小于所述第四阈值,所述第七阈值小于所述第五阈值,所述第二角度等级高于所述第三角度等级。
应理解,第四阈值、第五阈值、第六阈值以及第七阈值为预设的正值。在第一夹角和/或第二夹角大于或等于第四阈值,和/或,目标夹角的数量大于或等于第五阈值的情况下,说明第一路径和第一路径的相邻路径之间的夹角较大,和/或,用户在圈选第一路径时角度变化较多,则用户需要提取的目标图像在第一路径附近的区域形状可能较复杂,终端设备需要对第一路径对应的预设区域进行增强处理,因此,第一路径的角度等级较高。在第一夹角和第二夹角小于第六阈值、且目标夹角的数量小于第七阈值的情况下,说明第一路径和第一路径的相邻路径之间的夹角较小,同时第一路径本身接近于直线,则用户需要提取的目标图像在第一路径附近的区域形状可能较简单,终端设备不需要对第一路径对应的预设区域进行增强处理,因此,第一路径的角度等级较低。
在第一方面的某些实现方式中,所述基于所述第一路径的位置参数和所述第一路径的位置参数对应的时间参数确定所述第一路径的速度等级,包括:基于所述第一路径的位置参数和所述第一路径的位置参数对应的时间参数,计算所述第一路径在所述套索操作过程中对应的平均速度;基于所述平均速度,确定所述第一路径的速度等级。
应理解,第一路径的位置参数可以理解为第一路径的两个端点的位置参数,第一路径的位置参数对应的时间参数可以理解为,用户在套索操作过程中,绘制该两个端点的时刻。因此,基于该两个端点的位置参数,终端设备可以确定第一路径的长度;将绘制该两个端点的时刻的时间差确定为用户绘制第一路径所用的时长;基于第一路径的长度和用户绘制第一路径所用的时长,终端设备可以计算得到第一路径在套索操作过程中对应的平均速度。
在第一方面的某些实现方式中,所述基于所述平均速度,确定所述第一路径的速度等级,包括:在所述平均速度小于或等于第八阈值的情况下,将所述第一路径的速度等级确定为所述第一速度等级;或,在所述平均速度大于所述第八阈值、且小于或等于第九阈值的情况下,将所述第一路径的速度等级确定为所述第二速度等级;或,在所述平均速度大于所述第九阈值的情况下,将所述第一路径的速度等级确定为第三速度等级;其中,所述第九阈值大于所述第八阈值,所述第二速度等级高于所述第三速度等级。
应理解,第八阈值和第九阈值为预设的正值,例如可以是根据经验设定、用户反馈或统计分析等方式确定的值。由于用户在圈选路径时的速度越大,说明用户绘制该段路径的难度可能较小,因此,平均速度越小对应的速度等级越高,即第一速度等级高于第二速度等级可以理解为,速度等级为第一速度等级的路径比速度等级为第二速度等级的路径的平均速度小;第二速度等级高于第三速度等级可以理解为,速度等级为第二速度等级的路径比速度等级为第三速度等级的路径的平均速度小于。
在第一方面的某些实现方式中,所述基于所述第一路径的位置参数和所述第一路径的位置参数对应的压力参数确定所述第一路径的压力等级,包括:基于所述第一路径的位置参数和所述第一路径的位置参数对应的压力参数,计算所述第一路径在所述套索操作过程中对应的平均压力;基于所述平均压力,确定所述第一路径的压力等级。
应理解,压力参数可以理解为压力。第一路径对应的一组位置参数中的全部或部分位置参数中,每个位置参数均对应一个压力参数,因此,第一路径对应多个压力参数,平均压力可以是该多个压力参数的平均值。
在第一方面的某些实现方式中,所述基于所述平均压力,确定所述第一路径的压力等级,包括:在所述平均压力大于或等于第十阈值的情况下,将所述第一路径的压力等级确定为所述第一压力等级;或,在所述平均压力小于所述第十阈值、且大于或等于第十一阈值的情况下,将所述第一路径的压力等级确定为所述第二压力等级;或,在所述第一路径的平均压力小于所述第十一阈值的情况下,将所述第一路径的压力等级确定为第三压力等级;其中,所述第十一阈值小于所述第十阈值,所述第二压力等级高于所述第三压力等级。
应理解,第十阈值和第十一阈值为预设的正值,例如可以是根据经验设定、用户反馈或统计分析等方式确定的值。第二压力等级高于第三压力等级可以理解为,压力等级为第二压力等级的路径比压力等级为第三压力等级的路径的平均压力大。
在第一方面的某些实现方式中,所述利用所述套索路径,对所述增强后图像进行抠图处理,得到目标图像,包括:从所述增强后图像中提取所述套索路径圈选的套索区域的最小外接矩形;对所述套索区域的最小外接矩形进行抠图处理,得到所述目标图像。
应理解,通过去除增强后图像中套索区域的最小外接矩形之外的区域,在终端设备进行抠图处理的过程中,可以减小套索区域的最小外接矩形之外的区域对终端设备识别目标图像的影响,有助于提高终端设备提取得到的目标图像的准确率,减少多抠或少抠的现象,从而提高用户体验感。
在第一方面的某些实现方式中,所述检测到用户对初始图像的套索操作,包括:检测到所述用户利用手写笔对所述初始图像的所述套索操作;所述方法还包括:接收来自所述手写笔的所述套索路径对应的触控参数,所述套索路径对应的触控参数包括所述多段路径中每段路径对应的触控参数。
应理解,在用户通过手写笔进行套索操作时,手写笔可以获取套索操作过程中的触控参数,并将触控参数发送至终端设备。例如,手写笔可以建立坐标系,并记录套索路径中多个位置在该坐标系中的坐标,得到多个坐标,该多个坐标即位置参数;还可以通过手写笔中设置的压力传感器获取压力,且在记录多个坐标时,记录多个坐标中每个坐标对应的压力,得到位置参数对应的压力参数;还可以在记录套索路径中多个坐标的同时,记录用户绘制该多个位置中每个位置的时刻,得到位置参数对应的时间参数。
第二方面,提供了一种图像处理装置,用于执行上述第一方面中任一种可能的实现方式中的方法。具体地,该装置包括用于执行上述第一方面中任一种可能的实现方式中的方法的模块。
第三方面,本申请提供了又一种图像处理装置,包括处理器,该处理器与存储器耦合,可用于执行存储器中的指令,以实现上述第一方面中任一种可能实现方式中的方法。可选地,该装置还包括存储器。可选地,该装置还包括通信接口,处理器与通信接口耦合。
在另一种实现方式中,该装置为配置于终端设备中的芯片。当该装置为配置于终端设备中的芯片时,上述通信接口可以是输入/输出接口。
第四方面,提供了一种处理器,包括:输入电路、输出电路和处理电路。所述处理电路用于通过所述输入电路接收信号,并通过所述输出电路发射信号,使得所述处理器执行上述第一方面中任一种可能实现方式中的方法。
在具体实现流程中,上述处理器可以为芯片,输入电路可以为输入管脚,输出电路可以为输出管脚,处理电路可以为晶体管、门电路、触发器和各种逻辑电路等。输入电路所接收的输入的信号可以是由例如但不限于接收器接收并输入的,输出电路所输出的信号可以是例如但不限于输出给发射器并由发射器发射的,且输入电路和输出电路可以是同一电路,该电路在不同的时刻分别用作输入电路和输出电路。本申请实施例对处理器及各种电路的具体实现方式不做限定。
第五方面,提供了一种处理装置,包括处理器和存储器。该处理器用于读取存储器中存储的指令,并可通过接收器接收信号,通过发射器发射信号,以执行上述第一方面中任一种可能实现方式中的方法。
可选地,所述处理器为一个或多个,所述存储器为一个或多个。
可选地,所述存储器可以与所述处理器集成在一起,或者所述存储器与处理器分离设置。
在具体实现流程中,存储器可以为非瞬时性(non-transitory)存储器,例如只读存储器(read only memory,ROM),其可以与处理器集成在同一块芯片上,也可以分别设置在不同的芯片上,本申请对存储器的类型以及存储器与处理器的设置方式不做限定。
应理解,相关的数据交互流程例如发送指示信息可以为从处理器输出指示信息的流程,接收能力信息可以为处理器接收输入能力信息的流程。
上述第五方面中的处理装置可以是一个芯片,该处理器可以通过硬件来实现也可以通过软件来实现,当通过硬件实现时,该处理器可以是逻辑电路、集成电路等;当通过软件来实现时,该处理器可以是一个通用处理器,通过读取存储器中存储的软件代码来实现,该存储器可以集成在处理器中,可以位于该处理器之外,独立存在。
第六方面,提供了一种计算机程序产品,所述计算机程序产品包括:计算机程序(也可以称为代码,或指令),当所述计算机程序被运行时,使得计算机执行上述第一方面中任一种可能实现方式中的方法。
第七方面,提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序(也可以称为代码,或指令)当其在计算机上运行时,使得计算机执行上述第一方面中任一种可能实现方式中的方法。
附图说明
图1为本申请实施例提供的终端设备的结构示意图;
图2为本申请实施例的终端设备的软件结构框图;
图3为本申请实施例提供的方法适用的应用场景的示意图;
图4为本申请实施例提供的一种图像处理方法的流程示意图;
图5为本申请实施例提供的一种第一夹角和第二夹角的示意图;
图6为本申请实施例提供的另一种第一夹角和第二夹角的示意图;
图7为本申请实施例提供的一种第一路径的示意图;
图8为本申请实施例提供的一种第一路径的角度等级的确定方法的流程示意图;
图9为本申请实施例提供的一种图像处理方法的流程示意图;
图10为本申请实施例提供的一种图像处理装置的示意性框图。
具体实施方式
下面将结合附图,对本申请中的技术方案进行描述。
在本申请的实施例中,采用了“第一”、“第二”等字样对功能和作用基本相同的相同项或相似项进行区分。例如,第一数值和第二数值仅仅是为了区分不同的数值,并不对其先后顺序进行限定。本领域技术人员可以理解“第一”、“第二”等字样并不对数量和执行次序进行限定,并且“第一”、“第二”等字样也并不限定一定不同。
需要说明的是,本申请实施例中,“示例性地”或者“例如”等词用于表示作例子、例证或说明。本申请中被描述为“示例性地”或者“例如”的任何实施例或设计方案不应被解释为比其他实施例或设计方案更优选或更具优势。确切而言,使用“示例性地”或者“例如”等词旨在以具体方式呈现相关概念。
本申请实施例中,“至少一个”是指一个或者多个,“多个”是指两个或两个以上。“和/或”,描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B的情况,其中A,B可以是单数或者复数。字符“/”一般表示前后关联对象是一种“或”的关系。“以下至少一项(个)”或其类似表达,是指的这些项中的任意组合,包括单项(个)或复数项(个)的任意组合。例如,a,b,或c中的至少一项(个),可以表示:a,b,c,a-b,a--c,b-c,或a-b-c,其中a,b,c可以是单个,也可以是多个。
本申请实施例提供的终端设备为具有触摸显示屏的终端设备,具体可以为手机、平板电脑(pad)、台式电脑、笔记本电脑等。本申请的实施例对终端设备所采用的具体技术和具体设备形态不做限定。
为了更好的理解本申请实施例中的终端设备,下面结合图1对本申请实施例的终端设备的硬件结构进行详细说明。
图1为本申请实施例提供的终端设备100的结构示意图。如图1所示,终端设备100可以包括处理器110,外部存储器接口120,内部存储器121,通用串行总线(universalserial bus,USB)接口130,充电管理模块140,电源管理模块141,电池142,天线1,天线2,移动通信模块150,无线通信模块160,音频模块170,扬声器170A,受话器170B,麦克风170C,耳机接口170D,传感器模块180,按键190,马达191,指示器192,摄像头193,显示屏194,以及用户标识模块(subscriber identification module,SIM)卡接口195等。其中传感器模块180可以包括压力传感器180A,陀螺仪传感器180B等。
可以理解的是,本申请实施例示意的结构并不构成对终端设备100的具体限定。在本申请另一些实施例中,终端设备100可以包括比图示更多或更少的部件,或者组合某些部件,或者拆分某些部件,或者不同的部件布置。图示的部件可以以硬件,软件或软件和硬件的组合实现。
处理器110可以包括一个或多个处理单元,例如:处理器110可以包括应用处理器(application processor,AP),调制解调处理器,图形处理器(graphics processingunit,GPU),图像信号处理器(image signal processor,ISP),控制器,视频编解码器,数字信号处理器(digital signal processor,DSP),基带处理器,和/或神经网络处理器(neural-network processing unit,NPU)等。其中,不同的处理单元可以是独立的器件,也可以集成在一个或多个处理器中。
控制器可以根据指令操作码和时序信号,产生操作控制信号,完成取指令和执行指令的控制。
处理器110中还可以设置存储器,用于存储指令和数据。在一些实施例中,处理器110中的存储器为高速缓冲存储器。该存储器可以保存处理器110刚用过或循环使用的指令或数据。如果处理器110需要再次使用该指令或数据,可从所述存储器中直接调用。避免了重复存取,减少了处理器110的等待时间,因而提高了系统的效率。
在一些实施例中,处理器110可以包括一个或多个接口。接口可以包括集成电路(inter-integrated circuit,I2C)接口,集成电路内置音频(inter-integrated circuitsound,I2S)接口,脉冲编码调制(pulse code modulation,PCM)接口,通用异步收发传输器(universal asynchronous receiver/transmitter,UART)接口,移动产业处理器接口(mobile industry processor interface,MIPI),通用输入输出(general-purposeinput/output,GPIO)接口,用户标识模块(subscriber identity module,SIM)接口,和/或通用串行总线(universal serial bus,USB)接口等。
I2C接口是一种双向同步串行总线,包括一根串行数据线(serial data line,SDA)和一根串行时钟线(derail clock line,SCL)。在一些实施例中,处理器110可以包含多组I2C总线。处理器110可以通过不同的I2C总线接口分别耦合触摸传感器180K,充电器,闪光灯,摄像头193等。例如:处理器110可以通过I2C接口耦合触摸传感器180K,使处理器110与触摸传感器180K通过I2C总线接口通信,实现终端设备100的触摸功能。
I2S接口可以用于音频通信。在一些实施例中,处理器110可以包含多组I2S总线。处理器110可以通过I2S总线与音频模块170耦合,实现处理器110与音频模块170之间的通信。在一些实施例中,音频模块170可以通过I2S接口向无线通信模块160传递音频信号,实现通过蓝牙耳机接听电话的功能。
PCM接口也可以用于音频通信,将模拟信号抽样,量化和编码。在一些实施例中,音频模块170与无线通信模块160可以通过PCM总线接口耦合。在一些实施例中,音频模块170也可以通过PCM接口向无线通信模块160传递音频信号,实现通过蓝牙耳机接听电话的功能。所述I2S接口和所述PCM接口都可以用于音频通信。
UART接口是一种通用串行数据总线,用于异步通信。该总线可以为双向通信总线。它将要传输的数据在串行通信与并行通信之间转换。在一些实施例中,UART接口通常被用于连接处理器110与无线通信模块160。例如:处理器110通过UART接口与无线通信模块160中的蓝牙模块通信,实现蓝牙功能。在一些实施例中,音频模块170可以通过UART接口向无线通信模块160传递音频信号,实现通过蓝牙耳机播放音乐的功能。
MIPI接口可以被用于连接处理器110与显示屏194,摄像头193等外围器件。MIPI接口包括摄像头串行接口(camera serial interface,CSI),显示屏串行接口(displayserial interface,DSI)等。在一些实施例中,处理器110和摄像头193通过CSI接口通信,实现终端设备100的拍摄功能。处理器110和显示屏194通过DSI接口通信,实现终端设备100的显示功能。
GPIO接口可以通过软件配置。GPIO接口可以被配置为控制信号,也可被配置为数据信号。在一些实施例中,GPIO接口可以用于连接处理器110与摄像头193,显示屏194,无线通信模块160,音频模块170,传感器模块180等。GPIO接口还可以被配置为I2C接口,I2S接口,UART接口,MIPI接口等。
USB接口130是符合USB标准规范的接口,具体可以是Mini USB接口,Micro USB接口,USB Type C接口等。USB接口130可以用于连接充电器为终端设备100充电,也可以用于终端设备100与外围设备之间传输数据。也可以用于连接耳机,通过耳机播放音频。该接口还可以用于连接其他终端设备,例如AR设备等。
可以理解的是,本申请实施例示意的各模块间的接口连接关系,只是示意性说明,并不构成对终端设备100的结构限定。在本申请另一些实施例中,终端设备100也可以采用上述实施例中不同的接口连接方式,或多种接口连接方式的组合。
充电管理模块140用于从充电器接收充电输入。其中,充电器可以是无线充电器,也可以是有线充电器。在一些有线充电的实施例中,充电管理模块140可以通过USB接口130接收有线充电器的充电输入。在一些无线充电的实施例中,充电管理模块140可以通过终端设备100的无线充电线圈接收无线充电输入。充电管理模块140为电池142充电的同时,还可以通过电源管理模块141为终端设备供电。
电源管理模块141用于连接电池142,充电管理模块140与处理器110。电源管理模块141接收电池142和/或充电管理模块140的输入,为处理器110,内部存储器121,显示屏194,摄像头193,和无线通信模块160等供电。电源管理模块141还可以用于监测电池容量,电池循环次数,电池健康状态(漏电,阻抗)等参数。在其他一些实施例中,电源管理模块141也可以设置于处理器110中。在另一些实施例中,电源管理模块141和充电管理模块140也可以设置于同一个器件中。
终端设备100的无线通信功能可以通过天线1,天线2,移动通信模块150,无线通信模块160,调制解调处理器以及基带处理器等实现。
天线1和天线2用于发射和接收电磁波信号。终端设备100中的每个天线可用于覆盖单个或多个通信频带。不同的天线还可以复用,以提高天线的利用率。例如:可以将天线1复用为无线局域网的分集天线。在另外一些实施例中,天线可以和调谐开关结合使用。
移动通信模块150可以提供应用在终端设备100上的包括2G/3G/4G/5G等无线通信的解决方案。移动通信模块150可以包括至少一个滤波器,开关,功率放大器,低噪声放大器(low noise amplifier,LNA)等。移动通信模块150可以由天线1接收电磁波,并对接收的电磁波进行滤波,放大等处理,传送至调制解调处理器进行解调。移动通信模块150还可以对经调制解调处理器调制后的信号放大,经天线1转为电磁波辐射出去。在一些实施例中,移动通信模块150的至少部分功能模块可以被设置于处理器110中。在一些实施例中,移动通信模块150的至少部分功能模块可以与处理器110的至少部分模块被设置在同一个器件中。
调制解调处理器可以包括调制器和解调器。其中,调制器用于将待发送的低频基带信号调制成中高频信号。解调器用于将接收的电磁波信号解调为低频基带信号。随后解调器将解调得到的低频基带信号传送至基带处理器处理。低频基带信号经基带处理器处理后,被传递给应用处理器。应用处理器通过音频设备(不限于扬声器170A,受话器170B等)输出声音信号,或通过显示屏194显示图像或视频。在一些实施例中,调制解调处理器可以是独立的器件。在另一些实施例中,调制解调处理器可以独立于处理器110,与移动通信模块150或其他功能模块设置在同一个器件中。
无线通信模块160可以提供应用在终端设备100上的包括无线局域网(wirelesslocal area networks,WLAN)(如无线保真(wireless fidelity,Wi-Fi)网络),蓝牙(bluetooth,BT),全球导航卫星系统(global navigation satellite system,GNSS),调频(frequency modulation,FM),近距离无线通信技术(near field communication,NFC),红外技术(infrared,IR)等无线通信的解决方案。无线通信模块160可以是集成至少一个通信处理模块的一个或多个器件。无线通信模块160经由天线2接收电磁波,将电磁波信号调频以及滤波处理,将处理后的信号发送到处理器110。无线通信模块160还可以从处理器110接收待发送的信号,对其进行调频,放大,经天线2转为电磁波辐射出去。
在一些实施例中,终端设备100的天线1和移动通信模块150耦合,天线2和无线通信模块160耦合,使得终端设备100可以通过无线通信技术与网络以及其他设备通信。所述无线通信技术可以包括全球移动通讯系统(global system for mobile communications,GSM),通用分组无线服务(general packet radio service,GPRS),码分多址接入(codedivision multiple access,CDMA),宽带码分多址(wideband code division multipleaccess,WCDMA),时分码分多址(time-division code division multiple access,TD-SCDMA),长期演进(long term evolution,LTE),BT,GNSS,WLAN,NFC ,FM,和/或IR技术等。所述GNSS可以包括全球卫星定位系统(global positioning system ,GPS),全球导航卫星系统(global navigation satellite system,GLONASS),北斗卫星导航系统(beidounavigation satellite system,BDS),准天顶卫星系统(quasi-zenith satellitesystem,QZSS)和/或星基增强系统(satellite based augmentation systems,SBAS)。
终端设备100通过GPU,显示屏194,以及应用处理器等实现显示功能。GPU为图像处理的微处理器,连接显示屏194和应用处理器。GPU用于执行数学和几何计算,用于图形渲染。处理器110可包括一个或多个GPU,其执行程序指令以生成或改变显示信息。
显示屏194用于显示图像,视频等。显示屏194包括显示面板。显示面板可以采用液晶显示屏(liquid crystal display,LCD),有机发光二极管(organic light-emittingdiode,OLED),有源矩阵有机发光二极体或主动矩阵有机发光二极体(active-matrixorganic light emitting diode,AMOLED),柔性发光二极管(flex light-emittingdiode,FLED),Miniled,MicroLed,Micro-oLed,量子点发光二极管(quantum dot lightemitting diodes,QLED)等。在一些实施例中,终端设备100可以包括1个或N个显示屏194,N为大于1的正整数。
终端设备100可以通过ISP,摄像头193,视频编解码器,GPU,显示屏194以及应用处理器等实现拍摄功能。
ISP 用于处理摄像头193反馈的数据。例如,拍照时,打开快门,光线通过镜头被传递到摄像头感光元件上,光信号转换为电信号,摄像头感光元件将所述电信号传递给ISP处理,转化为肉眼可见的图像。ISP还可以对图像的噪点,亮度,肤色进行算法优化。ISP还可以对拍摄场景的曝光,色温等参数优化。在一些实施例中,ISP可以设置在摄像头193中。
摄像头193用于捕获静态图像或视频。物体通过镜头生成光学图像投射到感光元件。感光元件可以是电荷耦合器件(charge coupled device,CCD)或互补金属氧化物半导体(complementary metal-oxide-semiconductor,CMOS)光电晶体管。感光元件把光信号转换成电信号,之后将电信号传递给ISP转换成数字图像信号。ISP将数字图像信号输出到DSP加工处理。DSP将数字图像信号转换成标准的RGB,YUV等格式的图像信号。在一些实施例中,终端设备100可以包括1个或N个摄像头193,N为大于1的正整数。
数字信号处理器用于处理数字信号,除了可以处理数字图像信号,还可以处理其他数字信号。例如,当终端设备100在频点选择时,数字信号处理器用于对频点能量进行傅里叶变换等。
视频编解码器用于对数字视频压缩或解压缩。终端设备100可以支持一种或多种视频编解码器。这样,终端设备100可以播放或录制多种编码格式的视频,例如:动态图像专家组(moving picture experts group,MPEG)1,MPEG2,MPEG3,MPEG4等。
NPU为神经网络(neural-network ,NN)计算处理器,通过借鉴生物神经网络结构,例如借鉴人脑神经元之间传递模式,对输入信息快速处理,还可以不断的自学习。通过NPU可以实现终端设备100的智能认知等应用,例如:图像识别,人脸识别,语音识别,文本理解等。
外部存储器接口120可以用于连接外部存储卡,例如Micro SD卡,实现扩展终端设备100的存储能力。外部存储卡通过外部存储器接口120与处理器110通信,实现数据存储功能。例如将音乐,视频等文件保存在外部存储卡中。
内部存储器121可以用于存储计算机可执行程序代码,所述可执行程序代码包括指令。内部存储器121可以包括存储程序区和存储数据区。其中,存储程序区可存储操作系统,至少一个功能所需的应用程序(比如声音播放功能,图像播放功能等)等。存储数据区可存储终端设备100使用过程中所创建的数据(比如音频数据,电话本等)等。此外,内部存储器121可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件,闪存器件,通用闪存存储器(universal flash storage,UFS)等。处理器110通过运行存储在内部存储器121的指令,和/或存储在设置于处理器中的存储器的指令,执行终端设备100的各种功能应用以及数据处理。
终端设备100可以通过音频模块170,扬声器170A,受话器170B,麦克风170C,耳机接口170D,以及应用处理器等实现音频功能。例如音乐播放,录音等。
音频模块170用于将数字音频信息转换成模拟音频信号输出,也用于将模拟音频输入转换为数字音频信号。音频模块170还可以用于对音频信号编码和解码。在一些实施例中,音频模块170可以设置于处理器110中,或将音频模块170的部分功能模块设置于处理器110中。
扬声器170A,也称“喇叭”,用于将音频电信号转换为声音信号。终端设备100可以通过扬声器170A收听音乐,或收听免提通话。
受话器170B,也称“听筒”,用于将音频电信号转换成声音信号。当终端设备100接听电话或语音信息时,可以通过将受话器170B靠近人耳接听语音。
麦克风170C,也称“话筒”,“传声器”,用于将声音信号转换为电信号。当拨打电话或发送语音信息时,用户可以通过人嘴靠近麦克风170C发声,将声音信号输入到麦克风170C。终端设备100可以设置至少一个麦克风170C。在另一些实施例中,终端设备100可以设置两个麦克风170C,除了采集声音信号,还可以实现降噪功能。在另一些实施例中,终端设备100还可以设置三个,四个或更多麦克风170C,实现采集声音信号,降噪,还可以识别声音来源,实现定向录音功能等。
耳机接口170D用于连接有线耳机。耳机接口170D可以是USB接口130,也可以是3.5mm的开放移动终端设备平台(open mobile terminal platform,OMTP)标准接口,美国蜂窝电信工业协会(cellular telecommunications industry association of the USA,CTIA)标准接口。
按键190包括开机键,音量键等。按键190可以是机械按键。也可以是触摸式按键。终端设备100可以接收按键输入,产生与终端设备100的用户设置以及功能控制有关的键信号输入。
马达191可以产生振动提示。马达191可以用于来电振动提示,也可以用于触摸振动反馈。例如,作用于不同应用(例如拍照,音频播放等)的触摸操作,可以对应不同的振动反馈效果。作用于显示屏194不同区域的触摸操作,马达191也可对应不同的振动反馈效果。不同的应用场景(例如:时间提醒,接收信息,闹钟,游戏等)也可以对应不同的振动反馈效果。触摸振动反馈效果还可以支持自定义。
指示器192可以是指示灯,可以用于指示充电状态,电量变化,也可以用于指示消息,未接来电,通知等。
SIM卡接口195用于连接SIM卡。SIM卡可以通过插入SIM卡接口195,或从SIM卡接口195拔出,实现和终端设备100的接触和分离。终端设备100可以支持1个或N个SIM卡接口,N为大于1的正整数。SIM卡接口195可以支持Nano SIM卡,Micro SIM卡,SIM卡等。同一个SIM卡接口195可以同时插入多张卡。所述多张卡的类型可以相同,也可以不同。SIM卡接口195也可以兼容不同类型的SIM卡。SIM卡接口195也可以兼容外部存储卡。终端设备100通过SIM卡和网络交互,实现通话以及数据通信等功能。在一些实施例中,终端设备100采用eSIM,即:嵌入式SIM卡。eSIM卡可以嵌在终端设备100中,不能和终端设备100分离。
终端设备100的软件系统可以采用分层架构,事件驱动架构,微核架构,微服务架构,或云架构。本申请实施例以分层架构的Android系统为例,示例性说明终端设备100的软件结构。
图2为本申请实施例的终端设备100的软件结构框图。
分层架构将软件分成若干个层,每一层都有清晰的角色和分工。层与层之间通过软件接口通信。在一些实施例中,将Android系统分为四层,从上至下分别为应用程序层,应用程序框架层,安卓运行时(Android runtime)和系统库,以及内核层。
应用程序层可以包括一系列应用程序包。如图2所示,应用程序包可以包括相机,图库,视频,短信息,视觉进程套件以及人工智能插件引擎等。
视觉进程套件,也可以称为vision-procesing kit,可以包括全局套索模块、分割管理器、分割器以及视觉插件管理器等多个模块。
其中,全局套索模块用于在检测到用户打开全局套索功能的操作的情况下,例如检测到用户采用手写笔点击终端设备的显示屏中的显示的套索功能图标,初始化分割管理器;也可以用于在检测到用户的套索操作完成之后,将套索路径通过分割管理器传输至分割器;还可以用于在接收到来自分割器的目标图像之后,注销分割器等。
分割器管理器,也可以称为segmentationmanager,可以用于管理分割器,例如指示分割器创建对象以及初始化分割器等。
分割器,也可以称为segmenter,可以用于拉起视觉插件管理器,以及指示图像视频处理解决方案插件创建基础算法对象等。
人工智能(artificial intelligence,AI)插件引擎可以包括图像视频处理解决方案插件、图像增强算法插件以及图像抠图算法插件等。
其中,图像视频处理解决方案插件可以用于确定套索区域中的图像类型为人物类型或者非人物类型,并在套索区域中的图像类型为人物类型的情况下,指示图像抠图算法插件加载人物抠图模型;在套索区域中的图像类型为非人物类型的情况下,指示图像抠图算法插件加载非人物抠图模型。
图像增强算法插件可以用于将套索路径划分为多段路径;也可以用于根据触控参数,确定每段路径对应的预设区域的增强等级,并对目标路径对应的预设区域进行增强处理,得到增强区域;还可以对图像进行剪裁处理,例如通过剪裁处理提取套索区域的最小外接矩形等。
图像抠图算法插件可以用于加载人物抠图模型或者非人物抠图模型,并利用人物抠图模型或者非人物抠图模型对图像进行抠图处理。其中,人物抠图模型可以用于对人物进行抠图处理,非人物抠图模型可以用于对非人物进行抠图处理。
应用程序框架层为应用程序层的应用程序提供应用编程接口(applicationprogramming interface,API)和编程框架。应用程序框架层包括一些预先定义的函数。如图2所示,应用程序框架层可以包括窗口管理器,内容提供器,视图系统,电话管理器,资源管理器,通知管理器等。
窗口管理器用于管理窗口程序。窗口管理器可以获取显示屏大小,判断是否有状态栏,锁定屏幕,截取屏幕等。
内容提供器用来存放和获取数据,并使这些数据可以被应用程序访问。所述数据可以包括视频,图像,音频,拨打和接听的电话,浏览历史和书签,电话簿等。
视图系统包括可视控件,例如显示文字的控件,显示图片的控件等。视图系统可用于构建应用程序。显示界面可以由一个或多个视图组成的。例如,包括短信通知图标的显示界面,可以包括显示文字的视图以及显示图片的视图。
电话管理器用于提供终端设备100的通信功能。例如通话状态的管理(包括接通,挂断等)。
资源管理器为应用程序提供各种资源,比如本地化字符串,图标,图片,布局文件,视频文件等等。
通知管理器使应用程序可以在状态栏中显示通知信息,可以用于传达告知类型的消息,可以短暂停留后自动消失,无需用户交互。比如通知管理器被用于告知下载完成,消息提醒等。通知管理器还可以是以图表或者滚动条文本形式出现在系统顶部状态栏的通知,例如后台运行的应用程序的通知,还可以是以对话窗口形式出现在屏幕上的通知。例如在状态栏提示文本信息,发出提示音,终端设备振动,指示灯闪烁等。
Android Runtime包括核心库和虚拟机。Android runtime负责安卓系统的调度和管理。
核心库包含两部分:一部分是java语言需要调用的功能函数,另一部分是安卓的核心库。
应用程序层和应用程序框架层运行在虚拟机中。虚拟机将应用程序层和应用程序框架层的java文件执行为二进制文件。虚拟机用于执行对象生命周期的管理,堆栈管理,线程管理,安全和异常的管理,以及垃圾回收等功能。
系统库可以包括多个功能模块。例如:表面管理器(surface manager),媒体库(Media Libraries),三维图形处理库(例如:OpenGL ES),2D图形引擎(例如:SGL)等。
表面管理器用于对显示子系统进行管理,并且为多个应用程序提供了2D和3D图层的融合。
媒体库支持多种常用的音频,视频格式回放和录制,以及静态图像文件等。媒体库可以支持多种音视频编码格式,例如: MPEG4,H.264,MP3,AAC,AMR,JPG,PNG等。
三维图形处理库用于实现三维图形绘图、图像渲染、合成和图层处理等。
2D图形引擎是2D绘图的绘图引擎。
内核层是硬件和软件之间的层。内核层用于驱动硬件,使得硬件工作。内核层至少包含显示驱动,屏幕驱动、图像处理器(graphics processing unit,GPU)驱动、摄像头、以及传感器驱动等,本申请实施例对此不做限制。例如,屏幕驱动可以驱动屏幕亮屏或息屏。
在用户需要对图像进行抠图处理时,例如提取图像中的人物、动物、建筑物等,可以通过套索操作圈选目标提取物,得到套索区域;然后,终端设备利用套索区域,对图像进行抠图处理,得到目标图像。
下面结合图3,对本申请实施例提供的方法适用的应用场景进行举例说明。
图3为本申请实施例提供的方法适用的应用场景300的示意图。如图3中的图像(a)所示,在用户需要提取初始图像中的人物时,可以通过套索操作得到套索区域301,套索区域301中包括用户需要提取的人物;然后,终端设备可以利用套索区域301,对图像进行抠图处理,得到图3中的图像(b)所示的目标图像,该目标图像可以是和初始图像大小相同的图像,且目标图像中除用户需要提取的人物之外的区域的像素值为0。
目前,在终端设备检测到用户对初始图像的套索操作完成之后,可以先对初始图像进行抠图处理,例如提取图像中所有的人物或者非人物;然后利用套索区域对提取得到的所有的人物或者非人物进行剪切处理,提取得到套索区域中包括的人物或者非人物,该套索区域中包括的人物或者非人物即目标图像。然而,通过这样的图像处理方法,得到的目标图像的准确率较低,例如多抠、少抠等,使得用户体验感较差。
为了解决上述技术问题,本申请提供一种图像处理方法,通过将套索路径划分为多段路径,并利用多段路径中每段路径的触控参数,在多段路径中确定用户在套索操作过程中角度变化频繁、速度缓慢或者压力较大的目标路径;然后对目标路径的周围的预设区域进行增强处理,这样,由于用户在套索操作过程中套索目标路径时角度变化频繁、速度缓慢或者压力较大,说明初始图像中的目标提取物在靠近目标路径的区域的形状复杂,可能导致终端设备在抠图处理过程中,提取目标提取物中靠近目标路径的区域时的难度较大,从而使抠图处理后得到的目标提取物中靠近目标路径的区域容易出现多抠或少抠的现象,因此,通过对目标路径的周围的预设区域进行增强处理,使得终端设备在抠图处理中更容易识别目标提取物中靠近目标路径的区域,从而有助于提高终端设备抠图处理得到的目标图像的准确性,提高用户体验感。
下面结合图4至图9对本申请的图像处理方法进行详细介绍。本申请所示出的实施例可以由终端设备执行,例如手机、平板电脑、智能手环等,也可以由支持终端设备实现图像处理方法的芯片、芯片系统或处理器执行,还可以由能实现全部或部分终端设备功能的逻辑模块或软件执行,本申请对此不做具体限定。其中所示的各设备的具体形态和数量仅为示例,不应对本申请提供的方法的实施构成任何限定。
下面,以终端设备为执行主体为例,对本申请实施例的图像处理方法进行详细说明。终端设备的硬件结构可以如图1所示,软件结构可以如图2所示,本申请对此不做具体限定。
图4为本申请实施例提供的一种图像处理方法400的流程示意图。如图4所示,方法400包括以下步骤:
S401、检测到用户对初始图像的套索操作,得到套索操作对应的套索路径。
应理解,初始图像可以为终端设备中存储或者缓存的任意图像,本申请对初始图像的格式以及来源不做具体限定。
套索操作可以理解为用户圈选初始图像中部分图像内容的过程,套索路径可以理解为用户在套索操作操作过程中圈选的路径,套索路径可以是一个或多个闭合的曲线。
可选地,S401具体可以通过以下方式实施:检测到用户对初始图像的套索操作,得到第一图像,第一图像包括套索操作对应的套索路径。
应理解,相比于初始图像,第一图像中增加了用户通过套索操作圈选的套索路径。第一图像例如可以是场景300中的图像(a)。在终端设备显示第一图像的情况下,用户还可以继续对第一图像中的套索路径进行调整,从而使套索路径与用户需要提取的目标图像的边缘更加贴合。
S402、对套索路径进行分段处理,得到多段路径,多段路径中每段路径对应一组触控参数,触控参数包括位置参数。
应理解,套索路径可以理解为多个点形成的曲线,套索路径中每个点可以对应一个位置参数,因此,对套索路径进行分段处理得到多段路径之后,多段路径中每段路径对应一组位置参数。其中,位置参数可以是用于指示套索路径中不同位置的参数,例如可以是坐标等参数。
S403、基于每段路径对应的触控参数,确定每段路径对应的预设区域的增强等级。
应理解,终端设备可以根据每段路径对应的预设区域的增强等级判断是否需要对该预设区域进行增强处理。每段路径可以在每段路径对应的预设区域之内。预设区域可以完全属于套索路径圈选的套索区域,或者,预设区域中部分区域属于套索路径圈选的套索区域,剩余部分区域在套索区域之外。
可选地,每段路径对应的预设区域可以是以每段路径的中心为圆心,预设长度为半径的圆对应的区域。
S404、判断多段路径中是否存在目标路径,目标路径对应的预设区域的增强等级满足预设条件。
应理解,目标路径可以是多段路径中的一段或者多段路径。
若否,则终端设备执行S408,即利用套索路径,对初始图像进行抠图处理,得到目标图像。
若是,则终端设备执行S405至S408。
应理解,在多段路径中不存在目标路径的情况下,终端设备可以确定初始图像中不存在需要增强的区域,所以终端设备可以直接利用套索路径,对初始图像进行抠图处理。
S405、对目标路径对应的预设区域进行增强处理,得到增强区域。
应理解,通过增强处理,可以提高目标路径对应的预设区域的清晰度,也可以使终端设备更容易识别目标路径对应的预设区域中的目标物和背景。对目标路径对应的预设区域进行增强处理,可以理解为终端设备提取初始图像中目标路径对应的预设区域,并对该预设区域进行增强处理。
可选地,增强处理包括锐化处理和直方图均衡化处理。
可选地,每段路径对应的预设区域的增强等级也可以理解为每段路径对应的增强等级,即在终端设备确定每段路径的增强等级之后,若根据每段路径的增强等级,确定每段路径中存在目标路径的增强等级满足预设条件后,对目标路径对应的预设区域进行增强处理。
S406、在初始图像中,利用增强区域覆盖目标路径对应的预设区域,得到增强后图像。
应理解,利用增强区域覆盖目标路径对应的预设区域可以理解为,将增强区域贴回初始图像中目标路径对应的预设区域的位置。
S407、利用套索路径,对增强后图像进行抠图处理,得到目标图像。
本申请的图像处理方法,终端设备将套索路径划分为多段路径,并利用多段路径中每段路径的位置参数,确定每段路径对应的预设区域的增强等级;通过对增强等级满足预设条件的目标路径对应的预设区域进行增强处理,这样,相比于不对目标路径对应的预设区域进行增强处理,终端设备识别用户需要提取的目标图像的准确率更高,能够减少多抠或少抠的现象,从而有助于提高终端设备抠图处理得到的目标图像的准确性,提高用户体验感。示例性地,由于每段路径的位置参数可以反映每段路径的形状,这样,在目标路径形状复杂的情况下,例如是角度变化多的曲线,表示用户需要提取的目标图像在靠近目标路径的部分区域的形状比较复杂,使得在终端设备识别用户需要提取的目标图像的该部分区域的难度较大,因此,通过对目标路径对应的预设区域进行增强处理,可以使终端设备更容易识别用户需要提取的目标图像的该部分区域,从而有助于提高终端设备抠图处理得到的目标图像的准确性。
下面,以多段路径中的第一路径为例,对触控参数包括位置参数的情况下,第一路径对应的预设区域的增强等级的三种具体确定方式进行详细说明。
应理解,第一路径可以是多段路径中的任意一段路径,多段路径中的其余路径对应的预设区域的增强等级的确定方式与第一路径对应的预设区域的增强等级的确定方式相同,即在方法400中,终端设备会按照第一路径对应的预设区域的增强等级的确定方式,确定多段路径中每段路径对应的预设区域的增强等级。
方式一:每段路径对应的预设区域的增强等级包括每段路径的角度等级,S403具体可以通过以下方式实施:基于第一路径的位置参数、以及与第一路径相邻的第二路径和第三路径的位置参数,计算第一路径与第二路径之间的第一夹角,以及第一路径与第三路径之间的第二夹角;基于第一夹角和第二夹角,确定第一路径的角度等级。
应理解,套索路径为闭合的曲线,因此,将套索路径划分为多段路径后,多段路径中的每段路径均存在两个相邻路径。
第一路径与第二路径之间的第一夹角可以理解为以下三种方式中任意一种:第一种、根据第一路径的位置参数拟合的直线与根据第二路径的位置参数拟合的直线的夹角;或,第二种、第一路径中两个端点的连线与第二路径中两个端点的连线之间的夹角;或,第三种、第一路径中两个端点中第一端点指向第二端点的向量与第二路径中两个端点中第二端点指向第三端点的向量之间的夹角,或者,第二端点的向量与第二路径中两个端点中第三端点指向第二端点的向量与第一路径中两个端点中第二端点指向第一端点的向量之间的夹角。应理解,第二夹角和第一夹角的理解方式类似,在此不再赘述。
上述第一夹角和第二夹角的第一种理解方式结合图5进行说明。图5为本申请实施例提供的一种第一夹角和第二夹角的示意图。如图5所示,将套索路径501划分为多段路径,其中每相邻两点之间的曲线为多段路径中的一段路径。假设点B和点C之间的曲线为第一路径,点A和点B之间的曲线为第二路径,点C和点D之间的曲线为第三路径,第一路径的位置参数拟合的直线为l 2,第二路径的位置参数拟合的直线为l 1,第三路径的位置参数拟合的直线为l 3。套索路径501圈选的区域是套索区域,l 2和l 1的夹角可以是∠β或∠α。第一夹角可以是l 2和l 1的夹角中相对于套索区域的外角,即图5中所示的∠α。同样,第二夹角是l 2和l 3的夹角中相对于套索区域的外角,即图5中所示的∠γ。或者,第一夹角可以是l 2和l 1的夹角中相对于套索区域的内角,即图5中所示的∠β。同样,第二夹角是l 2和l 3的夹角中相对于套索区域的外角,即图5中所示的∠δ。
上述第一夹角和第二夹角的第二种理解方式和第一种理解方式类似,两者之间的区别在于,在第二种理解方式中,第一路径是点B和点C的连线,第二路径是点A和点B的连线,第三路径是点C和点D的连线,可以参看上文的描述,在此不再赘述。
上述第一夹角和第二夹角的第三种理解方式结合图6进行说明。图6为本申请实施例提供的另一种第一夹角和第二夹角的示意图。如图6所示,将套索路径501划分为多段路径,其中每相邻两点之间的曲线为多段路径中的一段路径。假设点B和点C之间的曲线为第一路径,点A和点B之间的曲线为第二路径,点C和点D之间的曲线为第三路径。对于第一夹角,第一路径的两个端点为点B和点C,假设点C是第一端点,点B是第二端点;第二路径的两个端点为点A和点B,点C是第三端点,则如图6所示,第一夹角可以为和/>的夹角;类似地,第二夹角为/>和/>之间的夹角;或者;第一夹角也可以为/>和/>之间的夹角,第二夹角也可以为/>和/>之间的夹角。即相邻两个路径中,一个路径对应的向量和剩余一个路径对应的向量中,一个路径对应的向量指向的终点,是剩余一个向量的起点,示例性地,对于第一路径和第二路径,假设第一路径对应的向量为/>,则第二路径对应的向量为/>,第一路径对应的/>指向的终点点B是第二路径对应的/>的起点;或者,第一路径对应的向量也可以是/>,则第二路径对应的向量为/>,第二路径对应的/>指向的终点点B是第一路径对应的/>的起点。
在一种可能的实施方式中,基于第一夹角和第二夹角,确定第一路径的角度等级,包括:在第一夹角和/或第二夹角大于或等于第一阈值的情况下,将第一路径的角度等级确定为第一角度等级;或,在第一夹角和第二夹角小于第一阈值,且第一夹角和/或第二夹角大于或等于第二阈值的情况下,将第一路径的角度等级确定为第二角度等级;或,在第一夹角和第二夹角小于第二阈值的情况下,将第一路径的角度等级确定为第三角度等级;其中,第二阈值小于第一阈值,第一角度等级高于第二角度等级,第二角度等级高于第三角度等级。
应理解,第二阈值和第一阈值是预设的大于0小于360的值。第一角度等级高于第二角度等级可以理解为角度等级为第一角度等级的路径对应的角度变化程度高于角度等级为第二角度等级的路径,第二角度等级高于第三角度等级可以理解为角度等级为第二角度等级的路径对应的角度变化程度高于角度等级为第三角度等级的路径。角度等级可以用多种信息表示,例如角度等级可以为数值,并且在角度等级为数值时,可以是数值越大,指示的角度等级越高,也可以是数值越小,指示的角度等级越高,本申请对比不做具体限定。还例如,角度等级也可以为用描述角度变化程度的词语,例如第一角度等级为“频繁”,第二角度等级为“正常”,第三角度等级为“较少”。
在一种可能的实现方式中,终端设备可以通过以下方式基于第一夹角和第二夹角确定第一路径的角度等级:判断第一夹角和第二夹角中是否存在大于或等于第一阈值的夹角;若是,则将第一路径的角度等级确定为第一角度等级;若否,判断第一夹角和第二夹角是否均小于第二阈值;若是,则将第一路径的角度等级确定为第三角度等级;若否,则将第一路径的角度等级确定为第二角度等级。
应理解,终端设备确定第一路径的角度等级的过程中,也可以先判断第一夹角和第二夹角是否均小于第二阈值,即先确定第一路径的角度等级是否为第三角度等级;在确定第一路径的角度等级不是第三角度等级的情况下,再进一步判断第一路径的角度等级是否为第一角度等级;在确定第一路径的角度等级不是第三角度等级且不是第一角度等级的情况下,将第一路径的角度等级确定为第二角度等级,本申请对终端设备确定第一路径的角度等级的过程中执行上述步骤的顺序不做具体限定。
方式二:每段路径对应的预设区域的增强等级包括每段路径的角度等级,S403具体可以通过以下方式实施:确定第一路径中目标夹角的数量,目标夹角为第一向量和第二向量之间的夹角,夹角大于或等于第三阈值,第一向量是根据第一路径中的第一位置和第二位置确定的,第二向量是根据第一路径中的第二位置和第三位置确定的,第一向量的方向是第一位置指向第二位置,第二向量的方向是第二位置指向第三位置;基于目标夹角的数量,确定第一路径的角度等级。
应理解,第三阈值可以为预设的大于0小于360的值。多段路径中每段路径均对应一组位置参数,该一组位置参数可以是用于描述该每段曲线的函数,也可以是多个离散的点的位置参数。在该一组位置参数是用于描述该每段曲线的函数的情况下,在确定第一路径中目标夹角的数量之前,先对该函数进行离散处理,得到多个离散的点,多个离散的点中每个点对应一个位置参数,例如可以是该点的坐标等。因此,在第二种具体确定方式中,第一路径包括多个离散的点,或者也可以理解为,第一路径包括多个位置,且多个位置中每个位置均对应一个位置参数。
在一种实施方式中,第一位置和第三位置可以均与第二位置相邻。在第二种实施方式中,第一位置和/或第三位置不与第二位置相邻,且按照用户套索操作过程中圈选套索路径中不同位置的先后顺序,第二位置位于第一位置和第三位置之间,即用户圈选套索路径的过程中,可以先圈选第一位置,再圈选第二位置,最后圈选第三位置,或者,也可以先圈选第三位置,再圈选第二位置,最后圈选第一位置。
图7为本申请实施例提供的一种第一路径的示意图。假设第一路径为图7中所示的点B和点C之间的曲线,如图7所示,第一路径中除了包括两个端点位置B和位置C之外,还包括位置1至位置7,在第一位置和第三位置与第二位置相邻的情况下,假设第二位置为点3,则第一位置可以是点2,对应地,第三位置是点4;或者,第一位置可以是点4,则第三位置是2。在第一位置是点2,且第三位置是点4的情况下,如图7所示,第一向量的方向是位置2指向位置3,第二向量的方向为位置3指向位置4。类似地,在第一路径中,每三个相邻的位置均可以按照确定第一向量和第二向量之间的夹角的方式得到一个夹角,从而得到多个夹角,这样,终端设备可以确定该多个夹角中大于或等于第三阈值的目标夹角的数量。
在第一位置和/或第三位置不与第二位置相邻的情况下,终端设备可以从第一路径包括的多个位置中筛选部分位置,在终端设备筛选出的部分位置中,第一位置和第三位置是第二位置的相邻位置。例如,终端设备筛选图7中的位置B、位置2、位置4、位置6和位置C,假设第二位置是位置6,则第一位置可以是位置4,对应地,第三位置是位置C;或者,第一位置也可以是位置C,第三位置是位置4。如图7所示,在第一位置是位置4,第三位置为位置C的情况下,第一向量的方向为位置4指向位置6,第二向量为位置6指向位置C。终端设备进一步确定第一路径中目标夹角的数量的方式与上述第一位置和第三位置与第二位置相邻的情况类似,可以参看上文的描述,在此不再赘述。
在一种可能的实施方式中,基于第一路径包括的目标夹角的数量,确定第一路径的角度等级,包括:在目标夹角的数量大于或等于第四阈值的情况下,将第一路径的角度等级确定为第一角度等级;或,在目标夹角的数量小于第四阈值,且大于或等于第五阈值的情况下,将第一路径的角度等级确定为第二角度等级;或,在目标夹角的数量小于第五阈值的情况下,将第一路径的角度等级确定为第三角度等级;其中,第五阈值小于第四阈值,第一角度等级高于第二角度等级,第二角度等级高于第三角度等级。
应理解,第四阈值和第五阈值为预设的正值。
在一种可能的实施方式中,终端设备可以通过以下实现方式基于目标夹角的数量确定第一路径的角度等级:判断目标夹角的数量是否大于或等于第四阈值;若是,将第一路径的角度等级确定为第一角度等级;若否,判断目标夹角的数量是否小于第五阈值;若是,将第一路径的角度等级确定为第三角度等级;若否,将第一路径的角度等级确定为第二角度等级。
应理解,通过这样的实施方式,终端设备在确定第一路径的角度等级为第二角度等级的情况下,第一路径对应的目标夹角的数量小于第四阈值,且大于或等于第五阈值。
方式三:每段路径对应的预设区域的增强等级包括每段路径的角度等级,S403具体可以通过以下方式实施:确定第一路径中目标夹角的数量,目标夹角为第一向量和第二向量之间的夹角,夹角大于或等于第三阈值,第一向量是根据第一路径中的第一位置和第二位置确定的,第二向量是根据第一路径中的第二位置和第三位置确定的,第一向量的方向是第一位置指向第二位置,第二向量的方向是第二位置指向第三位置;基于第一路径的位置参数、以及与第一路径相邻的第二路径和第三路径的位置参数,计算第一路径与第二路径之间的第一夹角,以及第一路径与第三路径之间的第二夹角;基于第一夹角、第二夹角以及目标夹角的数量,确定第一路径的角度等级。
应理解,第一夹角和第二夹角的确定方式与第一种具体确定方式中第一夹角和第二夹角的确定方式相同,可以参看上文的描述,在此不再赘述。
通过基于第一夹角、第二夹角以及目标夹角的数量,确定第一路径的角度等级,终端设备可以通过第一夹角和第二夹角确定第一路径与第一路径的相邻路径之间的角度大小;通过目标夹角的数量,终端设备可以确定第一路径本身的角度变化程度,例如第一路径对应的目标夹角的数量越小,终端设备可以确定第一路径越平滑,越接近直线;第一路径对应的目标夹角的数量越大,终端设备可以确定第一路径的角度变化多,呈曲线状态。因此,终端设备通过按照与第一路径的角度等级的确定方式相同的方式,确定多段路径中每段路径的角度等级,可以从每段路径和每段路径的相邻路径之间的角度大小,以及每段路径本身的角度变化程度这两个维度,确定每段路径的角度等级,相比于通过每段路径和每段路径的相邻路径之间的角度大小,或者,通过每段路径对应的目标夹角的数量,确定每段路径的角度等级,通过这样的方案确定角度等级的准确率更高。
在一种可能的实施方式中,基于第一夹角、第二夹角以及目标夹角的数量,确定第一路径的角度等级,包括:在第一夹角和/或第二夹角大于或等于第四阈值,和/或,目标夹角的数量大于或等于第五阈值的情况下,将第一路径的角度等级确定为第一角度等级;在第一夹角和第二夹角小于第四阈值、第一夹角和/或第二夹角大于或等于第六阈值、且目标夹角的数量小于第五阈值,或,第一夹角和第二夹角小于第六阈值、且目标夹角的数量小于第五阈值且大于或等于第七阈值的情况下,将第一路径的角度等级确定为第二角度等级;或,在第一夹角和第二夹角小于第六阈值、且目标夹角的数量小于第七阈值的情况下,将第一路径的角度等级确定为第三角度等级;其中,第六阈值小于第四阈值,第七阈值小于第五阈值,第二角度等级高于第三角度等级。
应理解,第四阈值、第五阈值、第六阈值以及第七阈值为预设的正值。在第一夹角和/或第二夹角大于或等于第四阈值,和/或,目标夹角的数量大于或等于第五阈值的情况下,说明第一路径和第一路径的相邻路径之间的夹角较大,和/或,用户在圈选第一路径时角度变化较多,则用户需要提取的目标图像在第一路径附近的区域形状可能较复杂,终端设备需要对第一路径对应的预设区域进行增强处理,因此,第一路径的角度等级较高。在第一夹角和第二夹角小于第六阈值、且目标夹角的数量小于第七阈值的情况下,说明第一路径和第一路径的相邻路径之间的夹角较小,同时第一路径本身接近于直线,则用户需要提取的目标图像在第一路径附近的区域形状可能较简单,终端设备不需要对第一路径对应的预设区域进行增强处理,因此,第一路径的角度等级较低。
下面,结合图8对终端设备基于第一夹角、第二夹角以及目标夹角的数量,确定第一路径的角度等级的一种可能的实现方式进行说明。
图8为本申请实施例提供的一种第一路径的角度等级的确定方法800的流程示意图。如图8所示,方法800包括以下步骤:
S801、判断第一夹角和第二夹角中是否存在大于或等于第四阈值的夹角。
若是,终端设备执行S802、将第一路径的角度等级确定为第一角度等级。
若否,终端设备执行S803。
S803、判断目标夹角的数量是否大于或等于第五阈值。
若是,终端设备执行S802、将第一路径的角度等级确定为第一角度等级。
若否,终端设备执行S804。
S804、判断第一夹角和第二夹角是否均小于第六阈值。
若否,终端设备执行S805、将第一路径的角度等级确定为第二角度等级。
若是,终端设备执行S806。
S806、判断目标夹角的数量是否小于第七阈值。
若是,终端设备执行S807、将第一路径的角度等级确定为第三角度等级。
若否,终端设备执行S805、将第一路径的角度等级确定为第二角度等级。
应理解,方法800仅是一种示例,终端设备在基于第一夹角、第二夹角以及目标夹角的数量,确定第一路径的角度等级的过程中,也可以先对目标夹角的数量进行判断,再对第一夹角和第二夹角进行判断,即终端设备可以先判断目标夹角的数量是否大于或等于第五阈值;若是,终端设备将第一路径的角度等级确定为第一角度等级;若否,判断第一夹角和第二夹角中是否存在大于或等于第四阈值的夹角;若是,终端设备将第一路径的角度等级确定为第一角度等级;若否,判断目标夹角的数量是否小于第七阈值;若否,将第一路径的角度等级确定为第二角度等级;若是,判断第一夹角和第二夹角是否均小于第六阈值;若是,将第一路径的角度等级确定为第三角度等级;若否,将第一路径的角度等级确定为第二角度等级。此外,终端设备也可以先确定第一路径的角度等级是否为第三角度等级,即终端设备先执行S804至S807,再执行S801至S803。本申请对方法800中各步骤的执行顺序不做具体限定。
作为一个可选的实施例,触控参数还包括与位置参数对应的时间参数和/或压力参数。
通过上述的技术方案,终端设备可以基于每段路径的位置参数、以及与位置参数对应的时间参数和/或压力参数,确定每段路径对应的预设区域的增强等级,这样,终端设备可以从多个维度确定每段路径对应的预设区域的增强等级,进一步使终端设备可以更准确的确定初始图像中需要进行增强处理的区域,从而有助于提高得到的目标图像的准确性,提高用户体验感。
在一种可能的实施方式中,增强等级包括角度等级、以及速度等级和/或压力等级;S403具体可以通过以下方式实施:基于多段路径中的第一路径的位置参数,确定第一路径的角度等级;基于第一路径的位置参数和第一路径的位置参数对应的时间参数确定第一路径的速度等级,和/或,基于第一路径的位置参数和第一路径的位置参数对应的压力参数确定第一路径的压力等级。
在增强等级包括角度等级、以及速度等级和/或压力等级的情况下,确定第一路径对应的预设区域的增强等级即确定第一路径的角度、以及速度等级和/或压力等级。
应理解,终端设备基于多段路径中的第一路径的位置参数,确定第一路径的角度等级的具体方式,与上述触控参数包括位置参数的情况下,终端设备确定第一路径对应的预设区域的角度等级的三种具体方式类似,可以查看上文的描述,下面不再对第一路径的角度等级的确定方式进行赘述。
通过上述的技术方案,终端设备可以基于每段路径的角度等级、速度等级和/或压力等级,确定每段路径对应的预设区域的增强等级,这样,终端设备可以从多个维度确定每段路径对应的预设区域的增强等级,进一步使终端设备可以更准确的确定初始图像中需要进行增强处理的区域,从而有助于提高得到的目标图像的准确性,提高用户体验感。
应理解,在触控参数还包括与位置参数对应的时间参数和/或压力参数的情况下,S403的可能的实现方式可以包括以下三种情况,下面对该三种情况进行详细说明。
情况一、触控参数包括位置参数和与位置参数对应的压力参数;增强等级包括角度等级和压力等级;S403具体可以通过以下方式实施:基于多段路径中的第一路径的位置参数,确定第一路径的角度等级;基于第一路径的位置参数和第一路径的位置参数对应的压力参数确定第一路径的压力等级。
作为一个可选的实施例,基于第一路径的位置参数和第一路径的位置参数对应的压力参数确定第一路径的压力等级,包括:基于第一路径的位置参数和第一路径的位置参数对应的压力参数,计算第一路径在套索操作过程中对应的平均压力;基于平均压力,确定第一路径的压力等级。
应理解,压力参数可以理解为压力。第一路径对应的一组位置参数中的全部或部分位置参数中,每个位置参数均对应一个压力参数,因此,第一路径对应多个压力参数,平均压力可以是该多个压力参数的平均值。
在一种可能的实施方式中,基于平均压力,确定第一路径的压力等级,包括:在平均压力大于或等于第十阈值的情况下,将第一路径的压力等级确定为第一压力等级;或,在平均压力小于第十阈值、且大于或等于第十一阈值的情况下,将第一路径的压力等级确定为第二压力等级;或,在第一路径的平均压力小于第十一阈值的情况下,将第一路径的压力等级确定为第三压力等级;其中,第十一阈值小于第十阈值,第一压力等级高于第二压力等级,第二压力等级高于第三压力等级。
应理解,第十阈值和第十一阈值为预设的正值,例如可以是根据经验设定、用户反馈或统计分析等方式确定的值。第一压力等级高于第二压力等级可以理解为,压力等级为第一压力等级的路径比压力等级为第二压力等级的路径的平均压力大;第二压力等级高于第三压力等级可以理解为,压力等级为第二压力等级的路径比压力等级为第三压力等级的路径的平均压力大。压力等级可以为数值,并且数值越大,指示的压力等级可以越高;或者,也可以是数值越小,指示的压力等级越高,本申请对此不作具体限定。压力等级还可以为用于形容压力大小的词语,例如“高等”、“中等”以及“低等”等,其中,“高等”可以指示第一压力等级;“中等”可以指示第二压力等级;“低等”可以指示第三压力等级。
在一种可能的实施方式中,终端设备可以通过以下实现方式基于平均压力,确定第一路径的压力等级:判断第一路径的平均压力是否大于或等于第十阈值;若是,则将第一路径的压力等级确定为第一压力等级;若否,判断第一路径的平均压力是否小于第十一阈值;若是,则将第一路径的压力等级确定为第三压力等级;若否,则将第一路径的压力等级确定为第二压力等级。
应理解,终端设备确定第一路径的压力等级的过程中,也可以先判断第一路径的平均压力是否小于第十一阈值,即先确定第一路径的压力等级是否为第三压力等级;在确定第一路径的压力等级不是第三压力等级的情况下,再进一步判断第一路径的压力等级是否为第一压力等级;在确定第一路径的压力等级不是第三压力等级且不是第一压力等级的情况下,将第一路径的压力等级确定为第二压力等级,本申请对终端设备确定第一路径的压力等级的过程中执行上述步骤的顺序不做具体限定。
在一种可能的实施方式中,第十阈值可以通过以下方式确定:确定第一路径的位置参数对应的压力参数中的第一中位数;确定第一中位数至第一路径的位置参数对应的压力参数中的最大值之间的第二中位数,将第二中位数确定为第十阈值;和/或,第十一阈值可以通过以下方式确定:确定第一路径的位置参数对应的压力参数中的第一中位数;确定第一路径的位置参数对应的压力参数中的最小值至第一中位数之间的第三中位数,将第三中位数确定为第十一阈值。
在一个具体的示例中,假设第一路径的位置参数对应的压力参数中的最大值为a,最小值为b,第一中位数为c;在第一路径的位置参数对应的压力参数的个数为奇数的情况下,c是将第一路径的位置参数对应的压力参数按照大小顺序排序后,处于中间位置的压力参数,或者,在第一路径的位置参数对应的压力参数的个数为偶数的情况下,c是将第一路径的位置参数对应的压力参数按照大小顺序排序后,处于中间位置的两个压力参数的平均值。类似地,假设第二中位数为d,第三中位数是e,则d是c至a中按照大小顺序排序后,处于中间位置的压力参数,或者,处于中间位置的两个压力参数的平均值;e是b至c中按照大小顺序排序后,处于中间位置的压力参数,或者,处于中间位置的两个压力参数的平均值。则在终端设备确定第一路径的角度等级的过程中,在第一路径的平均压力处于[0,e)的情况下,将第一路径的角度等级确定为第三角度等级;在第一路径的平均压力处于[e,d)的情况下,将第一路径的角度等级确定为第二角度等级;在第一路径的平均压力处于[d,+∞)的情况下,将第一路径的角度等级确定为第一角度等级。
作为一个可选的实施例,基于第一路径的位置参数和第一路径的位置参数对应的压力参数确定第一路径的压力等级,包括:对第一路径的位置参数对应的压力参数进行标准化处理,得到第一路径的位置参数对应的标准压力参数,标准化处理为归一化处理,或,基于压力参数和标准压力参数之间的映射关系,将第一路径的位置参数对应的压力参数转换为与第一路径的位置参数对应的压力参数对应的标准压力参数;基于第一路径的位置参数对应的标准压力参数,计算第一路径的平均标准压力;基于第一路径的平均标准压力,确定第一路径的压力等级。
应理解,归一化处理可以通过以下公式实现:(x-xmin)/(xmax-xmin),其中,x为第一路径的位置参数对应的压力参数,xmin为第一路径的位置参数对应的压力参数中的最小值,xmax为第一路径的位置参数对应的压力参数中的最大值。
在一种可能的实施方式中,压力参数为压力,压力参数和标准压力参数之间的映射关系可以通过以下方式确定:在不同的压力下绘制一些标准压力参数,并记录每个标准压力参数对应的压力读数,根据这些标准压力参数和实际的压力读书,建立一个压力和标准压力参数之间的标定曲线或映射关系,该压力和标准压力参数之间的标定曲线或映射关系即压力参数和标准压力参数之间的映射关系。在一个具体的示例中,假设在压力参数为5MPa的情况下,记录标准压力参数为25;在压力参数为6MPa的情况下,记录标准压力参数为30;在压力参数为7MPa的情况下,记录标准压力参数为35,则终端设备可以确定压力参数与标准压力参数之间的映射关系为:y=5x,其中,x为压力参数,y为标准压力参数,终端设备在得到第一路径的位置参数对应的压力参数后,可以根据该压力参数与标准压力参数之间的映射关系,确定第一路径的位置参数对应的标准压力参数。
在一种可能的实施方式中,基于第一路径的平均标准压力,确定第一路径的压力等级,包括:在第一标准路径的平均标准压力大于或等于第十二阈值的情况下,将第一路径的压力等级确定为第一压力等级;或,在第一路径的平均标准压力小于第十二阈值、且大于或等于第十三阈值的情况下,将第一路径的压力等级确定为第二压力等级;或,在第一路径的平均标准压力小于第十三阈值的情况下,将第一路径的压力等级确定为第三压力等级,其中,第十五阈值小于所述第十四阈值,第一压力等级高于第二压力等级,第二压力等级高于所述第三压力等级。
应理解,第十三阈值和第十四阈值可以为预设的正值。基于第一路径的平均标准压力,确定第一路径的压力等级的具体实施方式与基于第一路径的平均压力,确定第一路径的压力等级的具体实施方式类似,可以参看上文的描述,在此不再赘述。
应理解,第十三阈值和第十阈值的确定方式类似,第十四阈值和第十一阈值的确定方式类似,可以参看上文的描述,在此不再赘述。
作为一个可选的实施例,在触控参数包括位置参数、与位置参数对应的压力参数的情况下,预设条件包括下列至少一项:压力等级为第一压力等级、且角度等级为第一速度等级;或,角度等级为第一角度等级、且压力等级为第二压力等级;或,压力等级为第一压力等级、且角度等级为第二角度等级。
对于多段路径中的第一路径,在第一路径的压力等级和角度等级中的至少一项为最高等级时,第一路径属于目标路径中的一段路径,终端设备可以对第一路径对应的预设区域进行增强处理。由于目标路径的压力等级较大,和/或,目标路径的角度等级较大,说明用户在圈选目标路径时的难度可能较大,则用户需要提取的目标图像在目标路径附近的区域的形状可能比较复杂,通过对目标路径对应的预设区域进行增强,可以提高终端设备提取的目标图像的准确性,减少多抠或少抠的现象,提高用户体验感。
情况二、触控参数包括位置参数和与位置参数对应的时间参数;增强等级包括角度等级和速度等级;S403具体可以通过以下方式实施:基于多段路径中的第一路径的位置参数,确定第一路径的角度等级;基于第一路径的位置参数和第一路径的位置参数对应的时间参数确定第一路径的速度等级。
作为一个可选的实施例,基于第一路径的位置参数和第一路径的位置参数对应的时间参数确定第一路径的压力等级,包括:基于第一路径的位置参数和第一路径的位置参数对应的时间参数,计算第一路径在套索操作过程中对应的平均速度;基于平均速度,确定第一路径的速度等级。
应理解,第一路径的位置参数可以理解为第一路径的两个端点的位置参数,第一路径的位置参数对应的时间参数可以理解为,用户在套索操作过程中,绘制该两个端点的时刻。因此,基于该两个端点的位置参数,终端设备可以确定第一路径的长度;将绘制该两个端点的时刻的时间差确定为用户绘制第一路径所用的时长;基于第一路径的长度和用户绘制第一路径所用的时长,终端设备可以计算得到第一路径在套索操作过程中对应的平均速度。
在一种可能的实施方式中,基于平均速度,确定第一路径的速度等级,包括:在平均速度小于或等于第八阈值的情况下,将第一路径的速度等级确定为第一速度等级;或,在平均速度大于第八阈值、且小于或等于第九阈值的情况下,将第一路径的速度等级确定为第二速度等级;或,在平均速度大于第九阈值的情况下,将第一路径的速度等级确定为第三速度等级;其中,第九阈值大于第八阈值,第一速度等级高于第二速度等级,第二速度等级高于第三速度等级。
应理解,第八阈值和第九阈值为预设的正值,例如可以是根据经验设定、用户反馈或统计分析等方式确定的值。由于用户在圈选路径时的速度越大,说明用户绘制该段路径的难度可能较小,因此,平均速度越小对应的速度等级越高,即第一速度等级高于第二速度等级可以理解为,速度等级为第一速度等级的路径比速度等级为第二速度等级的路径的平均速度小;第二速度等级高于第三速度等级可以理解为,速度等级为第二速度等级的路径比速度等级为第三速度等级的路径的平均速度小于。速度等级可以为数值,并且数值越大,指示的速度等级可以越高;或者,也可以是数值越小,指示的速度等级越高,本申请对此不作具体限定。速度等级还可以为用于形容速度大小的词语,例如“缓慢”、“中等”以及“快速”等,其中,“缓慢”可以指示第一速度等级;“中等”可以指示第二速度等级;“快速”可以指示第三速度等级。
在一种可能的实施方式中,终端设备可以通过以下实现方式基于平均速度,确定第一路径的速度等级:判断第一路径的平均速度是否小于或等于第八阈值;若是,则将第一路径的速度等级确定为第一速度等级;若否,判断第一路径的平均速度是否大于第九阈值;若是,则将第一路径的速度等级确定为第三速度等级;若否,则将第一路径的速度等级确定为第二速度等级。
应理解,终端设备确定第一路径的速度等级的过程中,也可以先判断第一路径的平均速度是否大于第九阈值,即先确定第一路径的速度等级是否为第三速度等级;在确定第一路径的速度等级不是第三速度等级的情况下,再进一步判断第一路径的速度等级是否为第一速度等级;在确定第一路径的速度等级不是第三速度等级且不是第一速度等级的情况下,将第一路径的速度等级确定为第二速度等级,本申请对终端设备确定第一路径的速度等级的过程中执行上述步骤的顺序不做具体限定。
在一种可能的实施方式中,第八阈值和/或第九阈值可以通过以下方式确定:获取多个用户在套索操作过程中,绘制预设长度的路径的平均速度,得到多个平均速度;根据该多个平均速度,确定第八阈值和/或第九阈值。根据该多个平均速度,确定第八阈值和/或第九阈值,具体可以通过以下方式实施:确定多个平均速度中的第四中位数;确定多个平均速度中的最小值至第四中位数之间的第五中位数,并将第五中位数确定为第八阈值,和/或,确定第四中位数至多个平均速度中的最大值之间的第五中位数,并将第五中位数确定为第九阈值。
应理解,第八阈值和第十一阈值的确定方式类似,第九阈值和第十阈值的确定方式类似,可以参看上文的描述,在此不再赘述。
作为一个可选的实施例,在触控参数包括位置参数、与位置参数对应的时间参数的情况下,预设条件包括下列至少一项:速度等级为第一速度等级、且角度等级为第一速度等级;或,角度等级为第一角度等级、且速度等级为第二速度等级;或,速度等级为第一速度等级、且角度等级为第二角度等级。
对于多段路径中的第一路径,在第一路径的速度等级和角度等级中的至少一项为最高等级时,第一路径属于目标路径中的一段路径,终端设备可以对第一路径对应的预设区域进行增强处理。由于目标路径的速度等级较大,和/或,目标路径的角度等级较大,说明用户在圈选目标路径时的难度可能较大,则用户需要提取的目标图像在目标路径附近的区域的形状可能比较复杂,通过对目标路径对应的预设区域进行增强,可以提高终端设备提取的目标图像的准确性,减少多抠或少抠的现象,提高用户体验感。
情况三、触控参数包括位置参数、以及与位置参数对应的时间参数和压力参数;增强等级包括角度等级、速度等级以及压力等级;S403具体可以通过以下方式实施:基于多段路径中的第一路径的位置参数,确定第一路径的角度等级;基于第一路径的位置参数和第一路径的位置参数对应的时间参数确定第一路径的速度等级;和,基于第一路径的位置参数和第一路径的位置参数对应的压力参数确定第一路径的压力等级。
应理解,第一路径的角度等级、速度等级以及压力等级的确定方式均可以参看上文的描述,在此不再赘述。
终端设备通过确定第一路径的角度等级、速度等级以及压力等级,并通过第一路径的角度等级、速度等级以及压力等级确定是否对第一路径对应的预设区域进行增强处理,使得终端设备可以从角度变化程度、用户绘制第一路径的速度大小以及用户绘制第一路径的压力大小三个维度,确定第一路径对应的预设区域的增强等级。由于角度变化程度越大、用户绘制第一路径的速度越大以及用户绘制第一路径的压力越大,说明在用户绘制第一路径的难度可能较大,即用户需要提取的目标图像在第一路径的附近区域的形状较为复杂,使得终端设备以相同的方式确定多段路径中每段路径对应的预设区域的增强等级的准确性较高,从而使终端设备可以对目标图像中形状较复杂的区域进行增强处理,从而有助于提高终端设备提取得到的目标图像的准确性。
作为一个可选的实施例,触控参数包括位置参数、与位置参数对应的时间参数和压力参数;预设条件包括下列至少一项:角度等级为第一角度等级、速度等级为第一速度等级;或,压力等级为第一压力等级、速度等级为第一速度等级;或,压力等级为第一压力等级、角度等级为第一角度等级;或,角度等级为第一角度等级、速度等级为第二速度等级、且压力等级为第二压力等级;或,速度等级为第一速度等级、压力等级为第二压力等级、且角度等级为第二角度等级;或,压力等级为第一压力等级、角度等级为第二角度等级、且速度等级为第二速度等级;其中,第一角度等级高于第二角度等级,第一速度等级高于第二速度等级,第一压力等级高于第二压力等级。
通过上述的技术方案,终端设备可以基于每段路径的位置参数、以及与位置参数对应的时间参数和压力参数,确定每段路径对应的预设区域的增强等级,这样,终端设备可以从三个维度确定每段路径对应的预设区域的增强等级,进一步使终端设备可以更准确的确定初始图像中需要进行增强处理的区域,从而有助于提高得到的目标图像的准确性,提高用户体验感。
作为一个可选的实施例,每段路径对应的预设区域的增强等级包括每段路径的角度等级对应的增强等级、每段路径的速度等级对应的增强等级以及每段路径的压力等级对应的增强等级;其中,增强等级包括第一等级、第二等级以及第三等级;S403具体可以通过以下方式实施:基于第一路径对应的触控参数,确定第一路径的角度等级、速度等级以及压力等级;根据角度等级与增强等级之间的第一对应关系,确定第一路径的角度等级对应的增强等级;根据速度等级与增强等级之间的第二对应关系,确定第一路径的速度等级对应的增强等级;和,根据压力等级与增强等级之间的第三对应关系,确定第一路径的压力等级对应的增强等级。
示例性地,假设第一等级为1、第二等级为2以及第三等级为3,则第一对应关系、第二对应关系以及第三对应关系如表1所示。其中,第一对应关系为:第一角度等级对应的增强等级为1,第二角度等级对应的增强等级为2,以及第三角度等级对应的增强等级为3;第二对应关系为:第一速度等级对应的增强等级为1,第二速度等级对应的增强等级为2,以及第三速度等级对应的增强等级为3;第三对应关系为:第一压力等级对应的增强等级为1,第二压力等级对应的增强等级为2,以及第三压力等级对应的增强等级为3。
表1
在一种可能的实施方式中,预设条件为:路径对应的预设区域的增强等级包括的第一等级的数量大于或等于第十六阈值;或,路径对应的预设区域的增强等级包括的第一等级的数量为第十七阈值,且包括的第二等级的数量大于或等于第十八阈值,其中,第十六阈值大于第十七阈值,第一等级高于第二等级。
示例性地,第十六阈值可以为2,第十七阈值可以为1,第十八阈值可以为2,则路径对应的预设区域的增强等级包括的第一等级的数量大于或等于2的情况下,或者路径对应的预设区域的增强等级包括的第一等级的数量为1,且包括的第二等级的数量大于或等于2的情况下,对该路径对应的预设区域进行增强处理。
应理解,在本申请实施例中,角度等级、速度等级以及压力等级的数量仅为示例,角度等级、速度等级以及压力等级分别还可以包括更多的等级,例如角度等级还可以包括第四角度等级等,本申请对此不做具体限定。
作为一个可选的实施例,S407具体可以通过以下方式实施:从增强后图像中提取套索路径圈选的套索区域的最小外接矩形;对套索区域的最小外接矩形进行抠图处理,得到目标图像。
应理解,通过去除增强后图像中套索区域的最小外接矩形之外的区域,在终端设备进行抠图处理的过程中,可以减小套索区域的最小外接矩形之外的区域对终端设备识别目标图像的影响,示例性地,在目标图像的颜色和最小外接矩形之外的区域接近的情况下,终端设备在识别目标图像的过程中,可能会将最小外接矩形之外的区域中的部分区域识别为目标图像中的一部分,从而导致终端设备出现多抠的现象。因此,通过上述的技术方案,有助于提高终端设备提取得到的目标图像的准确率,减少多抠或少抠的现象,从而提高用户体验感。
在一种可能的实施方式中,对套索区域的最小外接矩形进行抠图处理,得到目标图像,包括:判断套索区域的最小外接矩形的尺寸是否大于或等于预设尺寸;若否,将套索区域的最小外接矩形补充至预设尺寸,得到补充图像,补充图像中除套索区域的最小外接矩形之外的区域的像素值为0;将补充图像输入至抠图模型,输出目标图像。
应理解,预设尺寸可以根据抠图模型确定,例如预设尺寸可以为832*832像素。通过使套索区域的最小外接矩形之外的区域的像素值为0,可以减小补充的区域对终端设备识别目标图像的影响,从而有助于提高终端设备提取得到的目标图像的准确性。
在一种可能的实施方式中,若套索区域的最小外接矩形的尺寸大于或等于预设尺寸;将套索区域的最小外接矩形输入至抠图模型,输出目标图像。
在一种可能的实施方式中,抠图模型包括人物抠图模型和非人物抠图模型;方法400还包括:确定套索区域中的图像类型为人物类型或非人物类型;在套索区域中的图像类型为人物类型的情况下,加载人物抠图模型,或者,在套索区域中的图像类型为非人物类型的情况下,加载非人物抠图模型,其中,人物抠图模型用于提取图像中的人物,非人物抠图模型用于提取图像中的非人物。
应理解,通过上述的技术方案,有助于进一步提高终端设备提取目标图像的准确性。
作为一个可选的实施例,S407具体通过以下方式实施:对增强后图像进行图像融合,得到融合后图像;利用套索路径,对融合后图像进行抠图处理,得到目标图像。
应理解,图像融合可以采用均值滤波等多种方法实现。通过上述的技术方案,能够使增强区域与非增强区域之间的过渡更加平滑,这样,有助于提高终端设备识别目标图像的准确性。
作为一个可选的实施例,增强处理包括锐化处理和/或直方图均衡化处理。
作为一个可选的实施例,检测到用户对初始图像的套索操作,包括:检测到用户利用手写笔对初始图像的套索操作;方法400还包括:接收来自手写笔的套索路径对应的触控参数,套索路径对应的触控参数包括多段路径中每段路径对应的触控参数。
应理解,在用户通过手写笔进行套索操作时,手写笔可以获取套索操作过程中的触控参数,并将触控参数发送至终端设备。例如,手写笔可以建立坐标系,并记录套索路径中多个位置在该坐标系中的坐标,得到多个坐标,该多个坐标即位置参数;还可以通过手写笔中设置的压力传感器获取压力,且在记录多个坐标时,记录多个坐标中每个坐标对应的压力,得到位置参数对应的压力参数;还可以在记录套索路径中多个坐标的同时,记录用户绘制该多个位置中每个位置的时刻,得到位置参数对应的时间参数。
下面,结合图9,以图像处理方法适用的系统包括手写笔和终端设备为例,对图像处理方法进行详细说明。
图9为本申请实施例提供的一种图像处理方法900的流程示意图。如图9所示,方法900包括以下步骤:
S11、全局套索模块初始化分割管理器,并指示分割管理器获取代理。
S12、分割管理器指示分割器创建对象。
应理解,分割管理器指示分割器创建对象可以理解为分割管理器向分割器传输用于指示分割器创建对象的第一信息。
S13、分割器创建对象,并向分割管理器返回对象。
S14、分割管理器初始化分割器。
S15、分割器指示视觉插件管理器建立连接服务。
应理解,分割器指示视觉插件管理器建立连接服务可以理解为,分割器向视觉插件管理器传输用于请求视觉插件管理器建立连接服务的第一请求。
S16、视觉插件管理器通知分割器建立连接。
应理解,在分割器同意建立连接服务的情况下,视觉插件管理器可以向分割器传输用于指示同意建立连接服务的第二消息。
S17、分割器拉起图像视频处理解决方案插件。
S18、图像视频处理解决方案插件创建基础算法对象。
应理解,基础算法对象可以理解为图像视频处理解决方案后续执行的操作需要用到的算法,例如用于确定套索区域中的图像类型为人物类型或非人物类型的算法等。
S19、在全局套索操作模块检测到用户的套索操作后,指示分割器检测到用户的套索操作。
应理解,指示分割器检测到用户的套索操作可以理解为,全局套索操作模块向分割器传输用于通知检测到用户的套索操作的第三消息。
S20、分割器获取套索路径,并将套索路径传输至图像视频处理解决方案插件。
S21、图像视频处理解决方案插件基于套索路径确定套索区域,并确定套索区域中的图像类型为人物类型或非人物类型。
S22、图像视频处理解决方案插件指示图像抠图算法插件加载抠图模型。
S23、图像抠图算法插件加载抠图模型。
应理解,在图像视频处理解决方案插件确定套索区域中的图像类型为人物类型的情况下,指示图像抠图算法插件加载人物抠图模型;在图像视频处理解决方案插件确定套索区域中的图像类型为非人物类型的情况下,指示图像抠图算法插件加载非人物抠图模型。
S24、图像视频处理解决方案插件将套索路径传输至图像增强插件。
S25、手写笔将触控参数发送至图像增强插件。对应地,图像增强插件接收来自手写笔的触控参数。
S26、图像增强插件将套索路径划分为多段路径,多段路径中的每段路径对应一组触控参数。
S27、基于每段路径对应的触控参数,确定每段路径对应的预设区域的增强等级。
S28、在多段路径中存在目标路径对应的预设区域的增强等级满足预设条件的情况下,对目标路径对应的预设区域进行增强处理,得到增强区域。
S29、在初始图像中,利用增强区域覆盖目标路径对应的预设区域,得到增强后图像。
S30、对增强后图像进行图像融合处理,得到融合后图像。
S31、对融合后图像进行剪裁处理,提取套索区域的最小外接矩形。
S32、图像增强插件将套索区域的最小外接矩形传输至图像抠图算法插件。
可选地,图像增强插件判断套索区域的最小外接矩形是否大于或等于预设尺寸;若否,将套索区域的最小外接矩形补充至预设尺寸,得到补充图像,补充图像中除套索区域的最小外接矩形之外的区域的像素值为0;将补充图像输入至传输至图像抠图算法插件。
S33、图像抠图算法插件对套索区域的最小外接矩形进行抠图处理,得到目标图像。
应理解,S25至S33与S401至S408的具体实施方式类似,可以参看上文的描述,在此不再赘述。
S34、图像抠图算法插件将目标图像传输至图像视频处理解决方案插件。
S35、图像视频处理解决方案插件将目标图像传输至分割器。
S36、分割器将目标图像传输至全局套索模块。
可选地,全局套索模块可以将目标图像传输至视觉插件管理器以显示目标图像。
可选地,在终端设备得到目标图像后,可以继续执行S37至S41。
S37、全局套索模块注销分割管理器。
S38、分割管理器指示分割器断开连接服务。
S39、分割管理器注销图像视频处理解决方案插件。
S40、图像视频处理解决方案插件注销图像抠图算法插件。
S41、图像抠图算法插件卸载抠图模型。
应理解,上述各方法的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定。例如在方法900中,S19至S24可以与S25并行执行;S24可以在S25之前执行,也可以在S25之后执行,还可以和S25并行执行。
上文结合图3至图9,详细描述了本申请实施例的图像处理方法,下面结合图10,详细描述本申请实施例的图像处理装置。
图10为本申请实施例提供的一种图像处理装置1000的示意性框图。该装置1000包括处理器1001、通信接口1002和存储器1003。其中,处理器1001、通信接口1002和存储器1003通过内部连接通路互相通信,该存储器1003用于存储指令,该处理器1001用于执行该存储器1003存储的指令。通信接口1002可以用于向其他装置(例如处理器1001或者终端设备的触摸屏)发送信号,也可以用于从其他装置(例如存储器1003)接收信号。示例性地,通信接口1002读取存储器1003中存储的指令,并将该指令发送给处理器1001。
应理解,装置1000可以具体为上述实施例中的终端设备,并且可以用于执行上述方法实施例中与终端设备对应的各个步骤和/或流程。可选地,该存储器1003可以包括只读存储器和随机存取存储器,并向处理器提供指令和数据。存储器的一部分还可以包括非易失性随机存取存储器。例如,存储器还可以存储设备类型的信息。该处理器1001可以用于执行存储器中存储的指令,并且当该处理器1001执行存储器中存储的指令时,该处理器1001用于执行上述方法实施例的各个步骤和/或流程。
应理解,在本申请实施例中,该处理器可以是中央处理单元(central processingunit,CPU),该处理器还可以是其他通用处理器、数字信号处理器(DSP)、专用集成电路(ASIC)、现场可编程门阵列(FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
在实现过程中,上述方法的各步骤可以通过处理器中的硬件的集成逻辑电路或者软件形式的指令完成。结合本申请实施例所公开的方法的步骤可以直接体现为硬件处理器执行完成,或者用处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器,处理器执行存储器中的指令,结合其硬件完成上述方法的步骤。为避免重复,这里不再详细描述。
本申请还提供了一种计算机可读存储介质,该计算机可读存储介质用于存储计算机程序,该计算机程序用于实现上述方法实施例中所示的方法。
本申请还提供了一种计算机程序产品,该计算机程序产品包括计算机程序(也可以称为代码,或指令),当该计算机程序在计算机上运行时,该计算机可以执行上述方法实施例所示的方法。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的模块及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统、装置和模块的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的系统、装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述模块的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个模块或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或模块的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的模块可以是或者也可以不是物理上分开的,作为模块显示的部件可以是或者也可以不是物理模块,即可以位于一个地方,或者也可以分布到多个网络模块上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能模块可以集成在一个处理模块中,也可以是各个模块单独物理存在,也可以两个或两个以上模块集成在一个模块中。
所述功能如果以软件功能模块的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(read-only memory,ROM)、随机存取存储器(random access memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,仅为本申请的具体实施方式,但本申请实施例的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请实施例揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本申请实施例的保护范围之内。因此,本申请实施例的保护范围应所述以权利要求的保护范围为准。
Claims (13)
1.一种图像处理方法,其特征在于,包括:
检测到用户对初始图像的套索操作,得到所述套索操作对应的套索路径;
对所述套索路径进行分段处理,得到多段路径,所述多段路径中每段路径对应一组触控参数,所述触控参数包括位置参数;
基于所述每段路径对应的触控参数,确定所述每段路径对应的预设区域的增强等级;
在所述多段路径中存在目标路径对应的预设区域的增强等级满足预设条件的情况下,对所述目标路径对应的预设区域进行增强处理,得到增强区域;
在所述初始图像中,利用所述增强区域覆盖所述目标路径对应的预设区域,得到增强后图像;
利用所述套索路径,对所述增强后图像进行抠图处理,得到目标图像;
所述触控参数还包括与所述位置参数对应的时间参数和/或压力参数;所述增强等级包括角度等级、以及速度等级和/或压力等级;
所述基于所述每段路径对应的触控参数,确定所述每段路径对应的预设区域的增强等级,包括:
基于所述多段路径中的第一路径的位置参数,确定所述第一路径的角度等级;
基于所述第一路径的位置参数和所述第一路径的位置参数对应的时间参数确定所述第一路径的速度等级,和/或,基于所述第一路径的位置参数和所述第一路径的位置参数对应的压力参数确定所述第一路径的压力等级;
所述预设条件包括下列至少一项:
角度等级为第一角度等级、速度等级为第一速度等级;或,
压力等级为第一压力等级、速度等级为所述第一速度等级;或,
压力等级为所述第一压力等级、角度等级为所述第一角度等级;或,
角度等级为所述第一角度等级、速度等级为第二速度等级、且压力等级为第二压力等级;或,
速度等级为所述第一速度等级、压力等级为所述第二压力等级、且角度等级为第二角度等级;或,
压力等级为所述第一压力等级、角度等级为所述第二角度等级、且速度等级为所述第二速度等级;
其中,所述第一角度等级高于所述第二角度等级,所述第一速度等级高于所述第二速度等级,所述第一压力等级高于所述第二压力等级。
2.根据权利要求1所述的方法,其特征在于,所述基于所述多段路径中的第一路径的位置参数,确定所述第一路径的角度等级,包括:
基于所述第一路径的位置参数、以及与所述第一路径相邻的第二路径和第三路径的位置参数,计算所述第一路径与所述第二路径之间的第一夹角,以及所述第一路径与所述第三路径之间的第二夹角;
基于所述第一夹角和所述第二夹角,确定所述第一路径的角度等级。
3.根据权利要求2所述的方法,其特征在于,所述基于所述第一夹角和所述第二夹角,确定所述第一路径的角度等级,包括:
在所述第一夹角和/或所述第二夹角大于或等于第一阈值的情况下,将所述第一路径的角度等级确定为所述第一角度等级;或,
在所述第一夹角和所述第二夹角小于所述第一阈值,且所述第一夹角和/或所述第二夹角大于或等于第二阈值的情况下,将所述第一路径的角度等级确定为所述第二角度等级;或,
在所述第一夹角和所述第二夹角小于所述第二阈值的情况下,将所述第一路径的角度等级确定为第三角度等级;
其中,所述第二阈值小于所述第一阈值,所述第二角度等级高于所述第三角度等级。
4.根据权利要求2所述的方法,其特征在于,所述方法还包括:
确定所述第一路径中目标夹角的数量,所述目标夹角为第一向量和第二向量之间的夹角,所述夹角大于或等于第三阈值,所述第一向量是根据所述第一路径中的第一位置和第二位置确定的,所述第二向量是根据所述第一路径中的所述第二位置和第三位置确定的,所述第一向量的方向是所述第一位置指向所述第二位置,所述第二向量的方向是所述第二位置指向所述第三位置;
所述基于所述第一夹角和所述第二夹角,确定所述第一路径的角度等级,包括:
基于所述第一夹角、所述第二夹角以及所述目标夹角的数量,确定所述第一路径的角度等级。
5.根据权利要求4所述的方法,其特征在于,所述基于所述第一夹角、所述第二夹角以及所述目标夹角的数量,确定所述第一路径的角度等级,包括:
在所述第一夹角和/或所述第二夹角大于或等于第四阈值,和/或,所述目标夹角的数量大于或等于第五阈值的情况下,将所述第一路径的角度等级确定为所述第一角度等级;
在所述第一夹角和所述第二夹角小于所述第四阈值、所述第一夹角和/或所述第二夹角大于或等于第六阈值、且所述目标夹角的数量小于所述第五阈值,或,所述第一夹角和所述第二夹角小于所述第六阈值、且所述目标夹角的数量小于所述第五阈值且大于或等于第七阈值的情况下,将所述第一路径的角度等级确定为所述第二角度等级;或,
在所述第一夹角和所述第二夹角小于所述第六阈值、且所述目标夹角的数量小于所述第七阈值的情况下,将所述第一路径的角度等级确定为第三角度等级;
其中,所述第六阈值小于所述第四阈值,所述第七阈值小于所述第五阈值,所述第二角度等级高于所述第三角度等级。
6.根据权利要求1所述的方法,其特征在于,所述基于所述第一路径的位置参数和所述第一路径的位置参数对应的时间参数确定所述第一路径的速度等级,包括:
基于所述第一路径的位置参数和所述第一路径的位置参数对应的时间参数,计算所述第一路径在所述套索操作过程中对应的平均速度;
基于所述平均速度,确定所述第一路径的速度等级。
7.根据权利要求6所述的方法,其特征在于,所述基于所述平均速度,确定所述第一路径的速度等级,包括:
在所述平均速度小于或等于第八阈值的情况下,将所述第一路径的速度等级确定为所述第一速度等级;或,
在所述平均速度大于所述第八阈值、且小于或等于第九阈值的情况下,将所述第一路径的速度等级确定为所述第二速度等级;或,
在所述平均速度大于所述第九阈值的情况下,将所述第一路径的速度等级确定为第三速度等级;
其中,所述第九阈值大于所述第八阈值,所述第二速度等级高于所述第三速度等级。
8.根据权利要求1所述的方法,其特征在于,所述基于所述第一路径的位置参数和所述第一路径的位置参数对应的压力参数确定所述第一路径的压力等级,包括:
基于所述第一路径的位置参数和所述第一路径的位置参数对应的压力参数,计算所述第一路径在所述套索操作过程中对应的平均压力;
基于所述平均压力,确定所述第一路径的压力等级。
9.根据权利要求8所述的方法,其特征在于,所述基于所述平均压力,确定所述第一路径的压力等级,包括:
在所述平均压力大于或等于第十阈值的情况下,将所述第一路径的压力等级确定为所述第一压力等级;或,
在所述平均压力小于所述第十阈值、且大于或等于第十一阈值的情况下,将所述第一路径的压力等级确定为所述第二压力等级;或,
在所述第一路径的平均压力小于所述第十一阈值的情况下,将所述第一路径的压力等级确定为第三压力等级;
其中,所述第十一阈值小于所述第十阈值,所述第二压力等级高于所述第三压力等级。
10.根据权利要求1至9中任一项所述的方法,其特征在于,所述利用所述套索路径,对所述增强后图像进行抠图处理,得到目标图像,包括:
从所述增强后图像中提取所述套索路径圈选的套索区域的最小外接矩形;
对所述套索区域的最小外接矩形进行抠图处理,得到所述目标图像。
11.根据权利要求1至9中任一项所述的方法,其特征在于,所述检测到用户对初始图像的套索操作,包括:
检测到所述用户利用手写笔对所述初始图像的所述套索操作;
所述方法还包括:
接收来自所述手写笔的所述套索路径对应的触控参数,所述套索路径对应的触控参数包括所述多段路径中每段路径对应的触控参数。
12.一种图像处理装置,其特征在于,包括:处理器,所述处理器与存储器耦合,所述存储器用于存储计算机程序,当所述处理器调用所述计算机程序时,使得所述装置执行如权利要求1至11中任一项所述的方法。
13.一种计算机可读存储介质,其特征在于,用于存储计算机程序,所述计算机程序包括用于实现如权利要求1至11中任一项所述的方法的指令。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311099706.3A CN116843708B (zh) | 2023-08-30 | 2023-08-30 | 图像处理方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311099706.3A CN116843708B (zh) | 2023-08-30 | 2023-08-30 | 图像处理方法和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN116843708A CN116843708A (zh) | 2023-10-03 |
CN116843708B true CN116843708B (zh) | 2023-12-12 |
Family
ID=88165548
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311099706.3A Active CN116843708B (zh) | 2023-08-30 | 2023-08-30 | 图像处理方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116843708B (zh) |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH11306374A (ja) * | 1998-04-23 | 1999-11-05 | Internatl Business Mach Corp <Ibm> | 画像表示装置および画像処理方法 |
CN107730528A (zh) * | 2017-10-28 | 2018-02-23 | 天津大学 | 一种基于grabcut算法的交互式图像分割与融合方法 |
CN111402135A (zh) * | 2020-03-17 | 2020-07-10 | Oppo广东移动通信有限公司 | 图像处理方法、装置、电子设备及计算机可读存储介质 |
CN111553846A (zh) * | 2020-05-12 | 2020-08-18 | Oppo广东移动通信有限公司 | 超分辨率处理方法及装置 |
CN113409224A (zh) * | 2021-07-09 | 2021-09-17 | 浙江大学 | 一种图像目标针对性增强方法、装置、设备及存储介质 |
CN113570614A (zh) * | 2021-01-18 | 2021-10-29 | 腾讯科技(深圳)有限公司 | 图像处理方法、装置、设备及存储介质 |
CN116051593A (zh) * | 2022-12-23 | 2023-05-02 | 百果园技术(新加坡)有限公司 | 服装图像提取方法及其装置、设备、介质、产品 |
CN116433696A (zh) * | 2023-06-14 | 2023-07-14 | 荣耀终端有限公司 | 抠图方法、电子设备及计算机可读存储介质 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20140267426A1 (en) * | 2013-03-13 | 2014-09-18 | Nvidia Corporation | System, method, and computer program product for automatically extending a lasso region in two-dimensional image editors |
US10223795B2 (en) * | 2014-07-15 | 2019-03-05 | Koninklijke Philips N.V. | Device, system and method for segmenting an image of a subject |
-
2023
- 2023-08-30 CN CN202311099706.3A patent/CN116843708B/zh active Active
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH11306374A (ja) * | 1998-04-23 | 1999-11-05 | Internatl Business Mach Corp <Ibm> | 画像表示装置および画像処理方法 |
CN107730528A (zh) * | 2017-10-28 | 2018-02-23 | 天津大学 | 一种基于grabcut算法的交互式图像分割与融合方法 |
CN111402135A (zh) * | 2020-03-17 | 2020-07-10 | Oppo广东移动通信有限公司 | 图像处理方法、装置、电子设备及计算机可读存储介质 |
CN111553846A (zh) * | 2020-05-12 | 2020-08-18 | Oppo广东移动通信有限公司 | 超分辨率处理方法及装置 |
CN113570614A (zh) * | 2021-01-18 | 2021-10-29 | 腾讯科技(深圳)有限公司 | 图像处理方法、装置、设备及存储介质 |
CN113409224A (zh) * | 2021-07-09 | 2021-09-17 | 浙江大学 | 一种图像目标针对性增强方法、装置、设备及存储介质 |
CN116051593A (zh) * | 2022-12-23 | 2023-05-02 | 百果园技术(新加坡)有限公司 | 服装图像提取方法及其装置、设备、介质、产品 |
CN116433696A (zh) * | 2023-06-14 | 2023-07-14 | 荣耀终端有限公司 | 抠图方法、电子设备及计算机可读存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN116843708A (zh) | 2023-10-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111724293B (zh) | 图像渲染方法及装置、电子设备 | |
WO2020077511A1 (zh) | 一种拍摄场景下的图像显示方法及电子设备 | |
CN114650363B (zh) | 一种图像显示的方法及电子设备 | |
CN113170037B (zh) | 一种拍摄长曝光图像的方法和电子设备 | |
CN114089932B (zh) | 多屏显示方法、装置、终端设备及存储介质 | |
CN113935898A (zh) | 图像处理方法、系统、电子设备及计算机可读存储介质 | |
CN114140365B (zh) | 基于事件帧的特征点匹配方法及电子设备 | |
CN113641271B (zh) | 应用窗口的管理方法、终端设备及计算机可读存储介质 | |
CN116070035B (zh) | 数据处理方法和电子设备 | |
CN116048358B (zh) | 悬浮球的控制方法和相关装置 | |
CN115686182B (zh) | 增强现实视频的处理方法与电子设备 | |
CN116843708B (zh) | 图像处理方法和装置 | |
CN114003319B (zh) | 一种灭屏显示的方法和电子设备 | |
CN113573045A (zh) | 杂光检测方法及杂光检测装置 | |
CN116703741B (zh) | 一种图像对比度的生成方法、装置和电子设备 | |
CN116095219B (zh) | 通知显示方法和终端设备 | |
CN113986406B (zh) | 生成涂鸦图案的方法、装置、电子设备及存储介质 | |
CN115619628B (zh) | 图像处理方法和终端设备 | |
CN116051351B (zh) | 一种特效处理方法和电子设备 | |
CN116522400B (zh) | 图像处理方法和终端设备 | |
CN116709018B (zh) | 一种变焦条分割方法及电子设备 | |
CN116389884B (zh) | 缩略图显示方法及终端设备 | |
CN114764300B (zh) | 一种窗口页面的交互方法、装置、电子设备以及可读存储介质 | |
CN116668764B (zh) | 处理视频的方法及装置 | |
CN115482143B (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |