CN113763440A - 一种图像处理方法、装置、设备及存储介质 - Google Patents
一种图像处理方法、装置、设备及存储介质 Download PDFInfo
- Publication number
- CN113763440A CN113763440A CN202110455496.1A CN202110455496A CN113763440A CN 113763440 A CN113763440 A CN 113763440A CN 202110455496 A CN202110455496 A CN 202110455496A CN 113763440 A CN113763440 A CN 113763440A
- Authority
- CN
- China
- Prior art keywords
- image
- model
- target
- target object
- training
- 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
- 238000012545 processing Methods 0.000 claims abstract description 120
- 239000011159 matrix material Substances 0.000 claims abstract description 89
- 238000000034 method Methods 0.000 claims abstract description 69
- 238000009877 rendering Methods 0.000 claims abstract description 18
- 238000012549 training Methods 0.000 claims description 119
- 238000000605 extraction Methods 0.000 claims description 44
- 230000000873 masking effect Effects 0.000 claims description 41
- 230000008569 process Effects 0.000 claims description 27
- 238000013519 translation Methods 0.000 claims description 18
- 238000004590 computer program Methods 0.000 claims description 16
- 238000013145 classification model Methods 0.000 claims description 13
- 230000001960 triggered effect Effects 0.000 claims description 5
- 238000013461 design Methods 0.000 claims description 2
- 230000001976 improved effect Effects 0.000 abstract description 10
- 238000013507 mapping Methods 0.000 abstract description 6
- 238000003062 neural network model Methods 0.000 description 42
- 210000002683 foot Anatomy 0.000 description 30
- 230000000694 effects Effects 0.000 description 20
- 230000006870 function Effects 0.000 description 18
- 238000012360 testing method Methods 0.000 description 16
- 238000005516 engineering process Methods 0.000 description 15
- 238000013473 artificial intelligence Methods 0.000 description 12
- 230000015654 memory Effects 0.000 description 12
- 238000010586 diagram Methods 0.000 description 11
- 238000004422 calculation algorithm Methods 0.000 description 8
- 238000004891 communication Methods 0.000 description 8
- 238000010801 machine learning Methods 0.000 description 7
- 238000004364 calculation method Methods 0.000 description 6
- 241000282414 Homo sapiens Species 0.000 description 5
- 230000004913 activation Effects 0.000 description 5
- 238000011176 pooling Methods 0.000 description 5
- 230000007306 turnover Effects 0.000 description 5
- 239000000284 extract Substances 0.000 description 4
- 238000002372 labelling Methods 0.000 description 4
- 230000009286 beneficial effect Effects 0.000 description 3
- 239000000463 material Substances 0.000 description 3
- 238000011160 research Methods 0.000 description 3
- 230000009466 transformation Effects 0.000 description 3
- 235000002566 Capsicum Nutrition 0.000 description 2
- 239000006002 Pepper Substances 0.000 description 2
- 241000722363 Piper Species 0.000 description 2
- 235000016761 Piper aduncum Nutrition 0.000 description 2
- 235000017804 Piper guineense Nutrition 0.000 description 2
- 235000008184 Piper nigrum Nutrition 0.000 description 2
- 210000003423 ankle Anatomy 0.000 description 2
- 238000013459 approach Methods 0.000 description 2
- 238000013528 artificial neural network Methods 0.000 description 2
- 230000006399 behavior Effects 0.000 description 2
- 238000013135 deep learning Methods 0.000 description 2
- 239000011521 glass Substances 0.000 description 2
- 230000002452 interceptive effect Effects 0.000 description 2
- 150000003839 salts Chemical class 0.000 description 2
- 238000005070 sampling Methods 0.000 description 2
- 230000000007 visual effect Effects 0.000 description 2
- 238000004458 analytical method Methods 0.000 description 1
- 230000003190 augmentative effect Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 239000003086 colorant Substances 0.000 description 1
- 238000012937 correction Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000018109 developmental process Effects 0.000 description 1
- 238000003384 imaging method Methods 0.000 description 1
- 230000001939 inductive effect Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000005259 measurement Methods 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 238000003058 natural language processing Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000005192 partition Methods 0.000 description 1
- 230000008447 perception Effects 0.000 description 1
- 238000007781 pre-processing Methods 0.000 description 1
- 230000002787 reinforcement Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 230000011218 segmentation Effects 0.000 description 1
- 238000013526 transfer learning Methods 0.000 description 1
- 238000000844 transformation Methods 0.000 description 1
- 230000001131 transforming effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/30—Determination of transform parameters for the alignment of images, i.e. image registration
- G06T7/33—Determination of transform parameters for the alignment of images, i.e. image registration using feature-based methods
- G06T7/337—Determination of transform parameters for the alignment of images, i.e. image registration using feature-based methods involving reference images or patches
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/22—Matching criteria, e.g. proximity measures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/24—Classification techniques
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T15/00—3D [Three Dimensional] image rendering
- G06T15/005—General purpose rendering architectures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T3/00—Geometric image transformations in the plane of the image
- G06T3/04—Context-preserving transformations, e.g. by using an importance map
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/20—Special algorithmic details
- G06T2207/20081—Training; Learning
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/20—Special algorithmic details
- G06T2207/20084—Artificial neural networks [ANN]
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Life Sciences & Earth Sciences (AREA)
- Artificial Intelligence (AREA)
- General Engineering & Computer Science (AREA)
- Evolutionary Computation (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Computing Systems (AREA)
- Biomedical Technology (AREA)
- General Health & Medical Sciences (AREA)
- Computational Linguistics (AREA)
- Biophysics (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Molecular Biology (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Bioinformatics & Computational Biology (AREA)
- Health & Medical Sciences (AREA)
- Evolutionary Biology (AREA)
- Computer Graphics (AREA)
- Processing Or Creating Images (AREA)
Abstract
本申请实施例公开了一种图像处理方法、装置、设备及计算机可读存储介质。其中方法包括:获取待处理图像,并根据待处理图像中的参考区域确定出参考区域图像,对参考区域图像进行关键点提取,得到参考区域图像中目标对象中各对象关键点的特征信息,根据虚拟立体模型上的各模型特征点的特征信息和目标对象中各对象关键点的特征信息,确定虚拟立体模型与目标对象之间的投影矩阵,按照投影矩阵将虚拟立体模型渲染到待处理图像上,得到目标图像,并显示目标图像。可见,基于虚拟立体模型上的各模型特征点的特征信息和目标对象中各对象关键点的特征信息间的映射关系,将虚拟立体模型直接渲染到平面图像上,可以较好地提高图像的匹配度。
Description
技术领域
本发明涉及计算机技术领域,具体涉及一种图像处理方法、装置、设备及计算机可读存储介质。
背景技术
随着网络购物平台的不断发展,以及物流渠道的不断完善,线上购物已逐渐成为人们的主流消费方式。但受地域限制,用户在线上购买衣服、鞋子等物品时无法进行试穿,难以确定购买的物品是否合适。增强现实(Augmented Reality,AR)技术是解决上述问题的一种主要途径,用户通过佩戴的AR眼镜,从虚拟鞋柜中取出待售物品例如鞋子对应的模型,通过AR技术生成试穿物品的虚拟立体图像来达到模拟试穿的目的。实践发现,在AR试穿场景下,3D模型与脚等试穿部位的匹配较差,虚拟试穿往往会呈现出抖动等缺点。
发明内容
本发明实施例提供了一种图像处理方法、装置、设备及存储介质,能够较好地提高图像的匹配度。
一方面,本申请实施例提供了一种图像处理方法,包括:
获取待处理图像,并根据所述待处理图像中的参考区域确定出参考区域图像,所述参考区域图像包括目标对象;
对所述参考区域图像进行关键点提取,得到所述目标对象中各对象关键点的特征信息;
根据虚拟立体模型上的各模型特征点的特征信息和所述目标对象中各对象关键点的特征信息,确定所述虚拟立体模型与所述目标对象之间的投影矩阵;
按照所述投影矩阵将所述虚拟立体模型渲染到所述待处理图像上,得到目标图像,并显示所述目标图像。
一方面,本申请实施例提供了一种图像处理方法,包括:
显示模型选择页面,所述模型选择页面包括至少一个模型的模型信息;
响应于图像处理事件被触发,显示待处理图像,所述待处理图像中包括目标对象;
响应于目标模型的触发操作,显示目标图像,所述目标图像是将所述目标模型关联的虚拟立体模型渲染到所述目标对象所在位置上后得到的。
一方面,本申请实施例还提供了一种图像处理装置,包括:
获取单元,用于获取待处理图像,并根据所述待处理图像中的参考区域确定出参考区域图像,所述参考区域图像包括目标对象;
处理单元,用于对所述参考区域图像进行关键点提取,得到所述目标对象中各对象关键点的特征信息;以及用于根据虚拟立体模型上的各模型特征点的特征信息和所述目标对象中各对象关键点的特征信息,确定所述虚拟立体模型与所述目标对象之间的投影矩阵;以及用于按照所述投影矩阵将所述虚拟立体模型渲染到所述待处理图像上,得到目标图像,并显示所述目标图像。
一方面,本申请实施例还提供了一种图像处理装置,包括:
显示单元,用于显示模型选择页面,所述模型选择页面包括至少一个模型的模型信息;以及用于响应于图像处理事件被触发,显示待处理图像,所述待处理图像中包括目标对象;以及用于响应于目标模型的触发操作,显示目标图像,所述目标图像是将所述目标模型关联的虚拟立体模型渲染到所述目标对象所在位置上后得到的。
相应地,本发明实施例还提供了一种智能设备,包括:存储装置和处理器;所述存储装置中存储有计算机程序;处理器,执行计算机程序,实现上述的图像处理方法。
相应地,本发明实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时,上述的图像处理方法被实现。
相应地,本申请提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中,计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行上述的图像处理方法。
在本申请实施例中,获取待处理图像,并根据待处理图像中的参考区域确定出参考区域图像,对参考区域图像进行关键点提取,得到参考区域图像中目标对象中各对象关键点的特征信息,根据虚拟立体模型上的各模型特征点的特征信息和目标对象中各对象关键点的特征信息,确定虚拟立体模型与目标对象之间的投影矩阵,按照投影矩阵将虚拟立体模型渲染到待处理图像上,得到目标图像,并显示目标图像。可见,基于虚拟立体模型上的各模型特征点的特征信息和目标对象中各对象关键点的特征信息间的映射关系,将虚拟立体模型直接渲染到平面图像上,通过3D模型到2D图像之间进行的投影匹配,可以较好地提高图像的匹配度,使得在试穿场景下可以很好地实现将诸如3D鞋子素材渲染在2D图像中的用户的脚上。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施例提供的一种图像处理的应用场景图;
图2为本申请实施例提供的一种图像处理方法的流程图;
图3为本申请实施例提供的一种基于图像处理方法的试鞋流程图;
图4a为本申请实施例提供的一种试鞋图片的示意图;
图4b为本申请实施例提供的一种对象关键点提取的示意图;
图4c为本申请实施例提供的一种试鞋效果图的示意图;
图5a为本申请实施例提供的另一种图像处理方法的流程图;
图5b为本申请实施例提供的另一种基于图像处理方法的试鞋流程图;
图6为本申请实施例提供的一种遮罩处理过程示意图;
图7为本申请实施例提供的一种图像处理装置的结构示意图;
图8为本申请实施例提供的另一种图像处理装置的结构示意图;
图9为本申请实施例提供的一种智能设备的结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述。
本申请实施例涉及人工智能(Artificial Intelligence,AI)及机器学习(Machine Learning,ML),通过将AI和ML相结合能够挖掘和分析待处理图像中的特征(如关键点的特征信息),使得智能设备能够基于虚拟立体模型上的各模型特征点的特征信息和目标对象中各对象关键点的特征信息间的映射关系,将虚拟立体模型直接渲染到待处理图像上,进而得到目标图像。其中,AI是利用数字计算机或者数字计算机控制的机器模拟、延伸和扩展人的智能,感知环境、获取知识并使用知识获得最佳结果的理论、方法、技术及应用系统。换句话说,人工智能是计算机科学的一个综合技术,它企图了解智能的实质,并生产出一种新的能以人类智能相似的方式做出反应的智能机器。人工智能也就是研究各种智能机器的设计原理与实现方法,使机器具有感知、推理与决策的功能。
AI技术是一门综合学科,涉及领域广泛,既有硬件层面的技术也有软件层面的技术。人工智能基础技术一般包括如传感器、专用人工智能芯片、云计算、分布式存储、大应用程序的处理技术、操作/交互系统、机电一体化等技术。人工智能软件技术主要包括计算机视觉技术、语音处理技术、自然语言处理技术以及机器学习/深度学习等几大方向。其中,计算机视觉技术是一门研究如何使机器“看”的科学,更进一步的说,就是指用摄影机和电脑代替人眼对目标进行识别、跟踪和测量等机器视觉,并进一步做图形处理,使电脑处理成为更适合人眼观察或传送给仪器检测的图像。作为一个科学学科,计算机视觉研究相关的理论和技术,试图建立能够从图像或者多维数据中获取信息的人工智能系统;其通常包括图像处理、视频处理、视频语义理解、视频内容/行为识别等技术。本申请实施例主要涉及计算机视觉技术中的图像处理技术,主要包括图像位置预测(即确定参考区域图像)、图像分类(即按照分类规则对像素点进行分类)、以及图像关键点提取。
机器学习是一门多领域交叉学科,涉及概率论、统计学、逼近论、凸分析、算法复杂度理论等多门学科。专门研究计算机怎样模拟或实现人类的学习行为,以获取新的知识或技能,重新组织已有的知识结构使之不断改善自身的性能。机器学习是AI的核心,是使计算机具有智能的根本途径,其应用遍及人工智能的各个领域。机器学习/深度学习通常包括人工神经网络、置信网络、强化学习、迁移学习、归纳学习、式教学习等技术。本申请主要涉及采用样本数据对初始模型进行训练,得到训练后的关键点提取模型。
请参见图1,图1为本申请实施例提供的一种图像处理的应用场景图。如图1所示,图像处理的应用场景中包括了终端设备101和服务器102。其中,终端设备101为用户所使用的设备,终端设备101可以包括但不限于:智能手机(如Android手机、iOS手机等)、平板电脑、便携式个人计算机、移动互联网设备(Mobile Internet Devices,MID)等设备;终端设备配置有显示装置,显示装置也可为显示器、显示屏、触摸屏等等,触摸屏也可为触控屏、触控面板等等,本申请实施例不做限定。
服务器102是指能够为终端设备101提供图像处理服务(即为待处理图像生成处理后的目标图像)的后台设备。服务器102可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式系统,还可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、CDN、以及大数据和人工智能平台等基础云计算服务的云服务器。此外,还可以将多个服务器组成为一个区块链网络,每个服务器为区块链网络中的一个节点。终端和服务器之间可以通过有线通信或者无线通信方式进行直接或间接地连接,本申请在此不做限制。
需要说明的是,图1所示的图像处理的应用场景中终端设备和服务器的数量仅为举例,例如,终端设备和服务器的数量可以为多个,本申请并不对终端设备和服务器的数量进行限定。
可选的,图像处理的应用场景中也可以只包括搭载有图像处理装置的终端设备101,终端设备101在获取用户输入的待处理图像后,通过搭载的图像处理装置对输入的待处理图像、结合在应用程序中已经加载的虚拟立体模型(或者从服务器获取到的虚拟立体模型)进行图像处理,并将图像处理的结果(即目标图像)返回给用户(如通过显示屏显示目标图像)。
图1所示的图像处理的应用场景中,图像处理流程主要包括以下步骤:(1)智能设备获取待处理图像(如用户通过摄像头采集含有目标对象的待处理图像),并根据待处理图像中的参考区域确定出参考区域图像;其中,参考区域是待处理图像中的子区域(如通过N个候选框对待处理图像进行图像区域截取,得到N个参考区域),参考区域图像是包括目标对象的参考区域;(2)智能设备对参考区域图像进行关键点提取,得到目标对象中各对象关键点的特征信息;例如,将参考区域图像输入关键点提取模型,并获取该关键点提取模型输出的标对象中各对象关键点的特征信息;(3)智能设备根据虚拟立体模型上的各模型特征点的特征信息和目标对象中各对象关键点的特征信息,确定虚拟立体模型与目标对象之间的投影矩阵;例如,通过虚拟立体模型上的各模型特征点和目标对象中各对象关键点的位置对应关系,计算虚拟立体模型与目标对象之间的投影矩阵;(4)智能设备按照投影矩阵将虚拟立体模型渲染到待处理图像上(如通过虚拟立体模型的投影图像覆盖在待处理图像中的目标对象上),得到目标图像,并显示目标图像。
下面以试鞋场景为例(即目标对象为鞋子)进行举例说明,用户在需要试鞋时,上传试鞋图片(或者选择已上传的试鞋图片),智能设备根据试鞋图片(即待处理图像中)中的参考区域(即从试鞋图片中截取到的子区域)确定出参考区域图像(即包含鞋子对象图片的参考区域),需要说明的是,若存在多个包含用户鞋子的参考区域,则从多个包含用户鞋子的参考区域中选择得分最高的参考区域作为参考区域图像,打分规则可以根据实际需求进行设定,例如,分数的高低与参考区域中鞋子的完整性成正比,鞋子越靠近参考区域的中心位置则该参考区域得分越高等。智能设备在确定出参考区域图像后,对该参考区域图像进行关键点提取,得到参考区域图像中鞋子的对象关键点(用于指示鞋子的轮廓等特征信息的点)的特征信息(如关键点在参考区域图像中的位置信息);然后根据用户选择的需要进行试穿的鞋子对应的3D鞋子对象模型(即虚拟立体模型)上的各模型特征点(用于指示虚拟立体模型的轮廓等特征信息的点)的特征信息(如各个模型特征点与虚拟立体模型的中心点的位置关系等)和参考区域图像中鞋子的对象关键点的特征信息,确定3D鞋子对象模型与目标对象之间的投影矩阵;接着按照投影矩阵将虚拟立体模型渲染到待处理图像上,得到试鞋效果图(即目标图像),并通过用户所使用的终端设备显示该试鞋效果图。在一种实施方式中,智能设备通过投影矩阵将3D鞋子对象模型投影为与目标对象位姿相匹配的平面图像,并将该平面图像覆盖在目标对象所在位置上,得到试鞋效果图。
在本申请实施例中,获取待处理图像,并根据待处理图像中的参考区域确定出参考区域图像,对参考区域图像进行关键点提取,得到参考区域图像中目标对象中各对象关键点的特征信息,根据虚拟立体模型上的各模型特征点的特征信息和目标对象中各对象关键点的特征信息,确定虚拟立体模型与目标对象之间的投影矩阵,按照投影矩阵将虚拟立体模型渲染到待处理图像上,得到目标图像,并显示目标图像。可见,基于虚拟立体模型上的各模型特征点的特征信息和目标对象中各对象关键点的特征信息间的映射关系,将虚拟立体模型直接渲染到平面图像上,通过3D模型到2D图像之间进行的投影匹配,可以较好地提高图像的匹配度,使得在试穿场景下可以很好地实现将诸如3D鞋子素材渲染在2D图像中的用户的脚上。
请参阅图2,图2为本申请实施例提供的一种图像处理方法的流程图。该方法可以由智能设备来执行,该智能设备具体可以是图1中所示的终端设备101,也可以是图1中所示的服务器102,本申请实施例的方法可以包括如下步骤。
S201:获取待处理图像,并根据待处理图像中的参考区域确定出参考区域图像。待处理图像可以是智能设备通过采集设备(如摄像头)采集的包含目标对象的图像,也可以是用户从素材库(如模板图库)中选取的包含目标对象的图像。参考区域是待处理图像中的子区域,在一种实施方式中,智能设备通过N个候选框对待处理图像进行图像区域截取后得到的,N为整数,且N>1;这N个候选框中,两两之间可以存在部分区域重合,也可以互不重合;各个候选框的尺寸可以相同,也可以不同,对此本申请不作限制。目标对象具体可以包括但不限于:可穿戴设备、衣服、鞋子、裤子、眼镜、饰品、围巾等可以进行穿戴的物品。
参考区域图像是参考区域中包括目标对象的参考区域。需要说明的是,若存在多个包含目标对象的参考区域,则从多个包含目标对象的参考区域中选择得分最高的参考区域作为参考区域图像,打分规则可以根据实际需求进行设定,例如,分数的高低与参考区域中目标对象的完整性成正比(即包含完整的目标对象的参考区域得分大于仅包含部分目标对象的参考区域),目标对象越靠近参考区域的中心位置则该参考区域得分越高等。
S202:对待处理参考区域图像中的目标对象进行关键点提取,得到目标对象中各对象关键点的特征信息。对象关键点是用于指示目标对象的轮廓等特征信息的点,对象关键点的特征信息包括各对象关键点在参考区域图像中的位置信息。
在一种实施方式中,智能设备将待处理参考区域输入关键点提取模型,并获取该关键点提取模型输出的目标对象中个对象关键点的特征信息。其中,关键点提取模型是根据关键点训练图像集合进行监督训练得到的,关键点训练图像集合包括平面图像和该平面图像对应的标注数据,该平面图像对应的标注数据包括对M个立体标注模型进行关键点标注后、再进行平面投影得到的平面标注图像,平面图像是删除平面标注图像中的关键点后得到的图像,M为正整数。
S203:根据虚拟立体模型上的各模型特征点的特征信息和目标对象中各对象关键点的特征信息,确定虚拟立体模型与目标对象之间的投影矩阵。虚拟立体模型是根据用户选择的需要进行模拟试穿的对象确定的;例如,用户需要模拟试穿A款鞋子,在用户选中A款鞋子后,智能设备根据A款鞋子的标识获取A款鞋子对应的虚拟立体模型。
模型特征点是用于指示虚拟立体模型的轮廓等特征信息的点,模型特征点的特征信息包括各模型特征点与参考点(如虚拟立体模型的中心点)的位置关系。在一个实施例中,虚拟立体模型上的各模型特征点的特征信息是在构建该虚拟立体模型时标注的。
在一种实施方式中,智能设备通过多点透视成像(perspective-n-point,PNP)算法(如SolvePNP算法)计算将虚拟立体模型投影到目标对象所在参考区域上,所需的投影矩阵,该投影矩阵可由平移分量(用于指示虚拟立体模型投影到目标对象所在参考区域上时,虚拟立体模型的中心点需要移动的距离)和旋转分量(用于指示虚拟立体模型在三维坐标上绕X轴,Y轴和Z轴旋转的角度)组成。
S204:按照投影矩阵将虚拟立体模型渲染到待处理图像上,得到目标图像,并显示目标图像。目标图像是通过投影矩阵将虚拟立体模型投影到待处理图像中(目标对象所在位置处)得到的模拟试穿图像;例如,按照投影矩阵将3D鞋子模型渲染到待处理图像上,即可得到3D鞋子模型的模拟试穿图像(即目标图像)。
在一种实施方式中,智能设备根据分类规则对参考区域图像进行分类处理,得到参考区域图像的遮罩对象信息;例如,在参考区域图像中的第一区域内,对象A覆盖在对象B上(即对象A的显示优先级高于对象B)。智能设备按照投影矩阵对虚拟立体模型进行二维平面图像投影处理(即将虚拟立体模型投影到参考区域图像中(目标对象所在位置处)),得到投影图像;根据参考区域图像的遮罩对象信息,对投影图像进行遮罩处理(即通过投影图像覆盖(或替换)参考区域图像,并根据各个像素点的显示优先级进行显示),得到目标图像。需要说明的是,步骤S202-步骤S204得到投影图像的过程中仅对参考区域图像进行图像处理,相较于直接对待处理图像进行图像处理来说,可以有效降低计算量,节省计算资源。
在本申请实施例中,获取待处理图像,并根据待处理图像中的参考区域确定出参考区域图像,对参考区域图像进行关键点提取,得到参考区域图像中目标对象中各对象关键点的特征信息,根据虚拟立体模型上的各模型特征点的特征信息和目标对象中各对象关键点的特征信息,确定虚拟立体模型与目标对象之间的投影矩阵,按照投影矩阵将虚拟立体模型渲染到待处理图像上,得到目标图像,并显示目标图像。可见,基于虚拟立体模型上的各模型特征点的特征信息和目标对象中各对象关键点的特征信息间的映射关系,将虚拟立体模型直接渲染到平面图像上,可以较好地提高图像的匹配度。
请参阅图3,图3为本申请实施例提供的一种基于图像处理方法的试鞋流程图。该方法可以由智能设备来执行,该智能设备具体可以是图1中所示的终端设备101,也可以是图1中所示的服务器102,本申请实施例的方法可以包括如下步骤。
S301:获取试鞋图片,并根据试鞋图片的N个子区域,确定出包含鞋子图像对象的子区域位置信息,N为整数,且N>1。其中,试鞋图片即待处理图像,试鞋图片的N个子区域即参考区域,包含鞋子图像对象的子区域即参考区域图像,鞋子图像对象即目标对象。在一种实施方式中,响应于图像处理事件被触发,智能设备获取并显示待处理图像,所述待处理图像中包括目标对象。
图4a为本申请实施例提供的一种试鞋图片的示意图,如图4a所示,试鞋图片被划分为14个子区域,在一种实施方式中,智能设备可以通过目标检测模型,从试鞋图片中确定出包含鞋子图像对象的子区域A的位置信息,子区域A的位置信息包括子区域A的中心点坐标(cx,cy),以及鞋子图像对象的位置信息(rx,ry,rw,rh)。其中,rx和ry是鞋子图像对象的中心点坐标,rx=cx+Δcx,ry=cy+Δcy,Δcx是子区域A的中心点距离鞋子图像对象的中心点的横坐标偏移量,Δcy是子区域A的中心点距离鞋子图像对象的中心点的纵坐标偏移量;rw和rh是鞋子图像对象的宽度和高度,rw=w,rh=h,w是子区域A的宽度,h是子区域A的高度。
S302:对包含鞋子图像对象的子区域进行关键点提取,得到鞋子图像对象中各对象关键点的特征信息。各对象关键点的特征信息包括各对象关键点的位置信息。图4b为本申请实施例提供的一种对象关键点提取的示意图。如图4b所示,智能设备通过关键点提取模型对包含鞋子图像对象的子区域401进行关键点提取,可以得到关键点提取结果402,基于该关键点提取结果402可以得到各对象关键点的位置信息(如各对象关键点的坐标)。
S303:根据3D鞋子对象模型上的各模型特征点的特征信息与鞋子图像对象中各对象关键点的特征信息,确定3D鞋子对象模型与鞋子图像对象之间的投影矩阵。3D鞋子对象模型(即虚拟立体模型)是用户选择的需要进行试穿的鞋子对象对应的虚拟立体模型,各模型特征点是用于指示3D鞋子对象模型的轮廓等特征信息的点,各模型特征点的特征信息包括各个模型特征点与3D鞋子对象模型的中心点的位置关系。
在一种实施方式中,智能设备显示模型选择页面(如鞋子选择页面),所述模型选择页面包括至少一个模型的模型信息,该模型具体可以是指商品页面中售卖的商品,模型信息即商品信息,如商品的参数、图片等;例如,在购鞋页面(即模型选择页面)中,包括至少一个鞋子(即模型)的相关信息(即模型信息,如鞋子的图片、鞋子的参数等)。响应于目标模型的触发操作,获取目标模型对应的虚拟立体模型(如当检测到用户选中目标鞋子时,智能设备获取目标鞋子的标识对应的3D鞋子对象模型)。进一步地,智能设备通过3D鞋子对象模型上的各模型特征点与鞋子图像对象中各对象关键点的对应关系,计算(如通过SolvePNP算法等多点透视成像算法)3D鞋子对象模型与鞋子图像对象之间的投影矩阵。
S304:按照投影矩阵将3D鞋子对象模型渲染到试鞋图片上,得到试鞋效果图,并显示该试鞋效果图。其中,试鞋效果图即目标图像。在一种实施方式中,智能设备显示目标图像,所述目标图像是将所述目标模型关联的虚拟立体模型渲染到所述目标对象所在位置上后得到的。具体地,智能设备通过投影矩阵将3D鞋子对象模型投影为与目标对象位姿相匹配的平面图像,并将该平面图像覆盖在目标对象所在位置上,得到试鞋效果图。图4c为本申请实施例提供的一种试鞋效果图的示意图。如图4c所示,该试鞋效果图是基于本申请实施例提供的图像处理方法(步骤S301-步骤S304),对图4a所示的试鞋图片进行处理后得到的。
下面通过一个实际应用的例子进行说明:(1)用户使用终端设备(手机、ipad等)打开购物App,并进入球鞋分区;(2)用户选择中意的球鞋,当该球鞋的模拟试穿事件被触发时(如用户点击“AR试鞋”按钮时),打开终端设备携带的图像采集装置(如相机),采集用户当前穿鞋的图像(可参考图4a);(3)终端设备或者为终端设备提供图像处理服务的服务器按照上述步骤S201-步骤S204或者步骤S301-步骤S304对采集的用户当前穿鞋的图像进行处理(从输入的图像中获取鞋子的位置和自身姿态,渲染系统根据这些信息将对应的3D球鞋渲染在特定位置),得到模拟试穿图像(可参考图4b),并在终端设备上显示,用户就可以在屏幕上看到自己脚上的鞋子被替换成了自己选择的鞋子。用户可以通过调整手机和脚的位置(即通过采集多方位穿鞋的图片,得到不同视角的模拟试穿图像),使得用户可以更加直观的确定选择的球鞋是否合适。
在本申请实施例中,智能设备获取试鞋图片,并根据试鞋图片的N个子区域,确定出包含鞋子图像对象的子区域位置信息,对包含鞋子图像对象的子区域进行关键点提取,得到鞋子图像对象中各对象关键点的特征信息,根据3D鞋子对象模型上的各模型特征点的特征信息与鞋子图像对象中各对象关键点的特征信息,确定3D鞋子对象模型与鞋子图像对象之间的投影矩阵,按照投影矩阵将3D鞋子对象模型渲染到试鞋图片上,得到试鞋效果图,并显示该试鞋效果图。其中,试鞋效果图即目标图像。可见,基于3D鞋子对象模型上的各模型特征点的特征信息和鞋子图像对象中各对象关键点的特征信息间的映射关系,将3D鞋子对象模型直接渲染到试鞋图片上,可以较好地提高图像的匹配度。
请参阅图5a,图5a为本申请实施例提供的另一种图像处理方法的流程图。该方法可以由智能设备来执行,该智能设备具体可以是图1中所示的终端设备101,也可以是图1中所示的服务器102,本申请实施例的方法可以包括如下步骤。
S5011:获取待处理图像。参考图5b中的步骤S5021,在一种实施方式中,智能设备可以通过图像采集装置获得实时图像流(即待处理图像);例如,通过用户所使用的移动终端设备的摄像头获得待处理图像。
S5012:根据待处理图像中的参考区域确定出目标参考区域。在一种实施方式中,智能设备将待处理图像作为位置预测模型的输入,并获取该位置预测模型输出的目标参考区域的位置信息,并根据该目标参考区域的位置信息从待处理图像中确定出目标参考区域。
具体地,智能设备通过N个候选框对待处理图像进行图像区域截取,得到N个参考区域,N为大于1的正整数;分别计算各个参考区域中存在目标对象的概率,并根据各个参考区域中存在目标对象的概率从N个参考区域中确定出目标参考区域;其中,目标参考区域中存在目标对象的概率大于概率阈值(如0.8),且目标参考区域中存在目标对象的概率大于P个参考区域中存在目标对象的概率,P为正整数,且P小于N。以目标对象是鞋子为例,若待处理图像中包括两只鞋子,则将N个参考区域中存在目标对象的概率大于概率阈值,且目标参考区域中存在目标对象的概率大于N-2个参考区域中存在目标对象的概率的参考区域(即存在鞋子对象的概率最大的两个参考区域),确定为目标参考区域;若待处理图像中包括一只鞋子,则将N个参考区域中存在目标对象的概率大于概率阈值,且目标参考区域中存在目标对象的概率大于N-1个参考区域中存在目标对象的概率的参考区域(即存在鞋子对象的概率最大的一个参考区域),确定为目标参考区域。其中,所述各个参考区域中存在所述目标对象的概率是通过位置预测模型计算得到的,所述位置预测模型是通过训练图像对初始模型进行训练得到的。
参考图5b中的步骤S5022,智能设备通过第一神经网络模型(位置预测模型)预测目标对象(如鞋子)的第一位置(粗略位置),第一神经网络模型预测的结果由候选框(如矩形框)坐标位置偏移量、候选框类别概率分布和候选框坐标计算模块组成(即第一神经网络模型的直接输出)。在实际应用中,本申请所使用的第一神经网络模型的整体计算量在20MFLOPS以内,该第一神经网络模型能够对终端设备摄像头视角内0.1至3米范围内穿着的鞋子进行检测。
第一神经网络模型由卷积层、池化层、非线性激活函数、上采样层构成,通过神经网络不同层与层之间的组装形成一个全连接网络结构。第一神经网络模型可以使用PyTorch框架训练,并以TNN框架在移动端部署。在训练过程中,第一神经网络模型的图像训练集由预先采集的训练图像(如不同用户穿着鞋子的图片)构成,经过X次(如40000次)迭代训练完成。在每次迭代的过程中,训练程序会在训练数据(原图)上随机选择一块不超过第一面积阈值(如原图面积90%)且不小于第二面积阈值(如原图面积30%)的候选框(如矩形框)区域,在训练过程中,还可以对候选框区域做随机尺度变化,以达到数据增强的目的。
在一个实施例中,目标对象是鞋子对象,训练数据可以包括:(1)从Objectron、Object365等公开数据集上获取的含有鞋子的图片;(2)使用终端设备(如手机)搭载的采集装置(如后置摄像头)采集的模仿试鞋场景拍摄的用户穿着鞋子的脚部图片;(3)使用终端设备(如手机)搭载的采集装置(如后置摄像头)采集的室内办公桌椅、电脑,咖啡厅沙发等常见的无鞋子的图片(这些图片作为负例数据,以降低第一神经网络模型识别错误的概率)。
除此之外,第一神经网络模型的训练过程中还可以随机使用颜色空间(即采用不同颜色或者采用不同滤镜对输入的数据进行预处理),以达到数据增强的目的。针对输入图像,第一神经网络模型会产生N个(如1024个)候选框,每个候选框的中心位置各不相同,每个候选框的大小可以相同,也可以不同。第一神经网络模型的输出包括两项数据:一项数据用于计算候选框中包含目标对象(如鞋子)的概率,可表示为(p0,p1);其中,p0用于指示选框中不包含目标对象的概率,p1用于指示选框中包含目标对象的概率,在一个实施例中,p0+p1=1。另一项数据用于计算候选框的位置信息(候选框的坐标和尺寸),候选框的位置信息可表示为(Δcx,Δcy,w,h);其中,Δcx和Δcy表示该候选框的中心距离目标对象的中心的偏移量,w和h表示目标对象的宽和高,对应目标对象的大小。假设候选框的中心点位于(cx,cy),那么最终候选框坐标计算模块将计算得到目标对象的第一位置(rx,ry,rw,rh),具体计算公式为:
其中,rx和ry是目标对象的中心点的坐标,rw和rh是目标对象的宽度和高度。
S5013:根据目标参考区域,得到参考区域图像。在一种实施方式中,智能设备将目标参考区域作为校准模型的输入,并获取该校准模型输出的参考区域图像的位置信息,并根据该参考区域图像的位置信息,从待处理图像(坐标系是根据待处理图像建立的),或者从目标参考区域中(坐标系是根据目标参考区域建立的)确定出参考区域图像。具体地,智能设备获取目标参考区域的位置信息和目标对象的位置信息,将目标参考区域的位置信息和目标对象的位置信息输入校准模型,并获取校准模型输出的校准位置信息,根据校准位置信息从待处理图像中确定出参考区域图像。其中,所述校准模型是根据参考区域训练图像集合训练得到的,所述参考区域训练图像集合中包括参考区域训练图像,所述参考区域训练图像是对目标参考训练区域对应的区域图像进行处理(如随机椒盐噪声处理、随机旋转处理、随机竖直或水平翻转处理等)后得到的,所述目标参考训练区域是所述位置预测模型在根据训练图像集合进行训练的过程中输出的。
参考图5b中的步骤S5023,智能设备通过第二神经网络模型(即校准模型)对目标参考区域(即目标对象的位置,如鞋子的2D矩形框)进行校准,得到参考区域图像(即目标对象的第二位置,也就是说目标对象的第二位置是对目标对象的第一位置进行校准后得到的)。第二神经网络模型的输入是根据步骤S5012输出的候选框(该候选框是通过目标对象的第一位置确定的)经过缩放处理后在原图(该候选框)中截取的部分图像。可以理解的是,第二神经网络模型的目标对象的第二位置所指示的候选框相较于目标对象的第一位置所指示的候选框的准确度更高。
在一个实施例中,第二神经网络模型可以是整体计算量在10M FLOPS以内的高速模型,它由卷积层、池化层、非线性激活函数组成。第二神经网络模型可以使用PyTorch框架进行训练,并以TNN框架在智能设备上进行部署。以目标对象是鞋子对象为例,在训练过程中,第二神经网络模型的训练集可以由从Objectron、Object365等公开数据集上获取的含有鞋子的图片,以及使用终端设备(如手机)搭载的采集装置(如后置摄像头)采集的模仿试鞋场景拍摄的用户穿着鞋子的脚部图片组成。训练过程中还可以通过随机椒盐噪声、随机旋转、随机竖直水平翻转等方式,来达到数据增强的目的。
第二神经网络模型可以通过全监督训练得到,监督信号是第二神经网络模型输出的候选框中心点坐标和真实值(训练数据上的标注值)之间的误差。具体可以用L1Loss表示:
其中,xi和yi用于指示预测的候选框中心点的横坐标和纵坐标;xi′和yi′用于指示该候选框的中心点的实际横坐标和纵坐标。
S5014:对待处理参考区域图像中的目标对象进行关键点提取,得到目标对象中各对象关键点的特征信息。在一种实施方式中,智能设备将参考区域图像输入关键点提取模型,并获取关键点提取模型输出的目标对象中各对象关键点的特征信息;其中,关键点提取模型是根据关键点训练图像集合进行监督训练得到的,关键点训练图像集合包括平面图像和该平面图像对应的标注数据,标注数据包括对M个立体标注模型进行关键点标注后、再进行平面投影得到的平面标注图像,平面图像是删除平面标注图像中的关键点后得到的图像,M为正整数。
在一种实施方式中,目标对象是鞋子对象,M个立体标注模型均为设计的第一侧鞋子类型的立体标注模型,在对待处理参考区域图像中的目标对象进行关键点提取,得到目标对象中各对象关键点的特征信息,之前,还可以对目标对象进行类型识别处理。若参考区域图像中的目标对象是第二侧鞋子类型,则对参考区域图像进行水平翻转处理,得到翻转图像(如对右脚图像进行水平翻转即可得到左脚图像);将翻转图像输入关键点提取模型,并获取关键点提取模型输出的翻转图像中各关键点的特征信息;对翻转图像中各关键点的特征信息进行水平翻转处理(即将翻转得到的左脚图像还原为右脚图像),得到目标对象中各对象关键点的特征信息。其中,所述参考区域图像中的目标对象的类型是通过分类模型对所述参考区域图像进行分类处理后得到的,所述分类模型是根据类型训练图像集合进行训练得到的,所述类型训练图像集合包括类型训练图像,所述类型训练图像是对参考区域训练图像对应的区域图像进行处理后得到的,参考区域训练图像是校准模型在根据参考区域训练图像集合进行训练的过程中输出的。
参考图5b中的步骤S5024,智能设备通过第三神经网络模型(分类模型)获得鞋子是左脚还是右脚的信息(即确定鞋子对象是第一侧鞋子类型还是第二侧鞋子类型)。具体的实施方式可参考步骤S5023,第三神经网络模型的输入是根据步骤S5023输出的候选框,经过放大后截取的部分图像,输出是一个值域在概率范围(如[0,1])之间的概率值,该概率表示鞋子对象是右脚(第二侧鞋子类型)的概率。也就是说,该概率值越小,则鞋子对象是左脚(第一侧鞋子类型)的可能性越大,该概率值越大,则鞋子对象是右脚(第二侧鞋子类型)的可能性越大。
在一个实施例中,第三神经网络模型的计算量在10M FLOPS内,该第三神经网络模型由卷积层、池化层、非线性激活函数组成。第三神经网络模型的训练数据可以由从Objectron、Object365等公开数据集上获取的含有鞋子的图片,以及使用终端设备(如手机)搭载的采集装置(如后置摄像头)采集的模仿试鞋场景拍摄的用户穿着鞋子的脚部图片组成。训练数据中的左右脚信息来源于标注人员的人工标定。在训练的每一次迭代过程中,每张图片可以通过随机高斯模糊来达到数据增强的目的。此外,还可以通过随机镜面翻折图片以及左右脚分类以获得更多的训练数据。第三神经网络模型可以通过全监督训练得到,其监督信号可以是标准的分类监督信号交叉熵:
l=Σ-logPi
其中,Pi表示鞋子对象是右脚(第二侧鞋子类型)的概率。
进一步地,参考图5b中的步骤S5025,智能设备通过第四神经网络模型(关键点提取模型)获得鞋子对象的(平面)关键点。这些关键点是在一个事先制作好的3D鞋子对象模型上标注出来的,这些关键点用于指示鞋子对象的外轮廓、鞋面、鞋脖等部位的特征。
第四神经网络模型的输入是根据步骤S5023出的候选框,经过缩放处理后截取的部分图像。若步骤S5024指示鞋子对象是右脚(即鞋子对象是第二侧鞋子类型),则对输入图像的x坐标进行水平翻转(即将该输入图像转变为左脚)。第四神经网络模型的输出是Y个(如140个)平面坐标点,Y为正整数。进一步地对Y个平面坐标点的x坐标再进行一次水平翻转处理,使得输出结果它从左脚(即鞋子对象是第一侧鞋子类型)再次转回右脚(即鞋子对象是第二侧鞋子类型)。相应地,若步骤S5024指示鞋子对象是左脚(即鞋子对象是第一侧鞋子类型),则将输入图像直接输入第四神经网络模型,得到第四神经网络模型输出的Y个(如140个)平面坐标点(即无需进行水平翻转处理)。
在一个实施例中,第四神经网络模型的计算量在40M FLOPS以内,第四神经网络模型由卷积层、池化层、非线性激活函数、全连接层组成。第四神经网络模型的训练数据可以由从Objectron、Object365等公开数据集上获取的含有鞋子的图片,以及使用终端设备(如手机)搭载的采集装置(如后置摄像头)采集的模仿试鞋场景拍摄的用户穿着鞋子的脚部图片组成。
在第四神经网络模型的训练过程中,训练数据的标注工作可以在标注工具上完成,通过调整3D鞋子对象模型的位置和角度提高3D鞋子对象模型的平面投影图像与脚部的匹配度。每张平面投影图像的关键点标注完成后可以得到一个4*4的矩阵,通过对该矩阵进行变换,可以求得从3D鞋子对象模型投影到平面投影图像的变换矩阵。将事先在3D鞋子对象模型上标注的3D点(即模型特征点)通过变换矩阵计算后,即可获得在平面投影图像上的2D关键点位置。此外,可以通过对3D鞋子对象模型和平面投影图像进行随机旋转、放大、剪切变换等操作来达到数据增强的目标。第四神经网络模型可以通过监督训练得到,其监督信号可以用L2Loss表示:
L2Loss=Σ|xi-xi′|+|yi-yi′|
其中,xi和yi用于指示预测的候选框中心点的横坐标和纵坐标;xi′和yi′用于指示该候选框的中心点的实际横坐标和纵坐标。需要说明的是,在目标对象为鞋子对象时,通过建立鞋子对象的单侧关键点提取模型(即只建立左侧鞋子对象模型,或者只建立右侧鞋子对象模型),可以有效降低两侧鞋子对象相互之间造成的干扰,提高关键点提取模型的预测准确度。
S5015:根据虚拟立体模型上的各模型特征点的特征信息和目标对象中各对象关键点的特征信息,确定虚拟立体模型与目标对象之间的投影矩阵。在一种实施方式中,智能设备可以通过多点透视成像(perspective-n-point,PNP)算法(如SolvePNP算法)计算将虚拟立体模型投影到目标对象所在参考区域上,所需的投影矩阵,该投影矩阵可由平移分量(用于指示虚拟立体模型投影到目标对象所在参考区域上时,虚拟立体模型的中心点需要移动的距离)和旋转分量(用于指示虚拟立体模型在三维坐标上绕X轴,Y轴和Z轴旋转的角度)组成。
在另一种实施方式中,虚拟立体模型上的各特征点包括虚拟立体模型的中心点,目标对象中各对象关键点包括目标对象的中心点,投影矩阵包括平移矩阵和旋转矩阵。智能设备根据虚拟立体模型的中心点的位置信息和目标对象的中心点的位置信息,计算平移矩阵;根据虚拟立体模型上的各模型特征点与目标对象中各对象关键点的对应关系,计算旋转矩阵;将平移矩阵和旋转矩阵确定为虚拟立体模型与目标对象之间的投影矩阵。
参考图5b中步骤S5026,智能设备结合步骤S5025输出鞋子对象的(平面)关键点,以及事先在3D鞋子对象模型上标注的模型特征点,通过SolvePNP算法,计算出将3D鞋子对象模型投影到参考区域图像所需的平移分量和旋转分量。平移分量可以由一个3*1的向量组成,每个向量分别表示3D鞋子对象的中心点在三维立体坐标中X,Y,Z轴方向上需要移动的距离。旋转分量可以由一个3*3的矩阵组成,该矩阵用于表示一个3D物体绕三维立体坐标中X,Y,Z轴旋转的角度。
可选的,智能设备根据虚拟立体模型上的各模型特征点和目标对象中各对象关键点的位置对应关系,计算虚拟立体模型与目标对象之间的投影矩阵;例如,虚拟立体模型的中心点的位置信息(如坐标)和目标对象的中心点的位置信息,计算平移分量(用于指示在三维坐标中,从虚拟立体模型的中心点到目标对象的中心点在各个方向上所需要移动的距离);类似地,通过存在对应关系的模型特征点的位置信息和对象关键点的位置信息,计算旋转分量(用于指示虚拟立体模型需要进行旋转的角度),并根据平移分量和旋转分量得到虚拟立体模型与目标对象之间的投影矩阵。
S5016:根据分类规则对参考区域图像进行分类处理,得到参考区域图像的遮罩对象信息。分类规则可以根据实际需求进行设置,以目标对象是鞋子对象为例,可以将参考区域图像划分为背景类、鞋子对象类、脚腕类和裤腿管类。在一种实施方式中,智能设备将参考区域图像输入分类模型,得到该分类模型输出的参考区域图像中各个像素点的类型(即遮罩对象信息)。其中,分类模型采用训练数据对初始模型进行训练得到的,该训练数据是按照分类规则对原始数据进行标注后得到的。
参考图5b中的步骤S5027,智能设备通过第五神经网络模型(分类模型)对步骤S5023输出的参考区域图像进行像素级四类别分割,四个类别依次是背景类、鞋子、脚腕、裤腿管。具体地,智能设备将步骤S5023输出的参考区域图像经过缩放后截取的部分图像作为第五神经网络模型的输入。第五神经网络模型由卷积层、池化层、非线性激活函数和上采样层组成,第五神经网络模型的输出为长宽和截取的部分图像相同的四通道概率图,每个通道的值域在[0,1]之间,每个通道的概率值用于表示该通道所属像素点是该通道对应类别的概率。第五神经网络模型的训练数据可以由从Objectron、Object365等公开数据集上获取的含有鞋子的图片,以及使用终端设备(如手机)搭载的采集装置(如后置摄像头)采集的模仿试鞋场景拍摄的用户穿着鞋子的脚部图片组成。在每次迭代训练过程中,可以通过随机颜色空间增强和随机水平、竖直翻转等操作,来达到数据增强的目的。第五神经网络模型在训练中可以使用交叉熵损失函数对其进行监督,具体公式如下:
L=∑-logPi
其中,Pi(i=0,1,2,3)是最终输出的概率图上每一个像素点被预测为第i个类别的概率。
S5017:按照投影矩阵对虚拟立体模型进行二维平面图像投影处理,得到投影图像。
S5018:根据参考区域图像的遮罩对象信息,对投影图像进行遮罩处理,得到目标图像。在一种实施方式中,智能设备根据参考区域图像中遮罩对象信息所表示的遮罩图像对象在参考区域图像中的位置区域,对投影图像的目标区域进行遮罩处理,得到遮挡图像;将遮挡图像覆盖到待处理图像的参考区域中,得到目标图像。其中,遮罩处理是指根据遮罩图像对象在参考区域图像中的位置区域对投影图像构建遮挡关系,使得投影图像上的目标区域被遮罩对象信息所表示的遮罩图像对象遮挡。图6为本申请实施例提供的一种遮罩处理过程示意图,如图6所示,图像601为遮罩处理前的投影图像,区域6011显示的的鞋子对象(即鞋子对象覆盖在了裤腿管上方),但区域6011中遮挡关系为裤腿管在在鞋子对象上方;图像602为遮罩处理后的遮挡图像,如图像602所示,在进行遮罩处理后,在区域6021中显示裤腿管(即通过裤腿管这点区域6021中的鞋子对象)。
可选的,智能设备根据参考区域图像确定参考区域图像中各个类别的像素点在各个像素位置上优先级,根据各个类别的像素点在各个像素位置上优先级,在投影图像的目标像素位置上显示目标像素点,得到目标图标像。其中,目标像素位置是投影图像中的任一像素位置,目标像素点是目标像素位置包括的至少一个类别的像素点中所属类别的优先级最高的像素点。
参考图5b中的步骤S5028,智能设备依据步骤S5026输出的携带鞋子对象的角度和位置信息的投影矩阵,使用投影工具(如OpenGL工具)将3D鞋子对象模型投影到参考区域图像上,得到投影图像;再依据步骤S5027输出的分类结果(即长宽和截取的部分图像相同的四通道概率图),在投影图像上构建遮挡关系,从而达到更真实的虚拟试穿的效果;例如,使得鞋子的背面能够被脚、脚上的裤子等要素遮挡。
本申请实施例在图2和图3实施例的基础上,通过校正模型对目标子区域进行校准处理,提高了参考区域图像的准确度;在目标对象为鞋子对象时,通过建立鞋子对象的单侧关键点提取模型,可以有效降低两侧鞋子对象相互之间造成的干扰,提高关键点提取模型的预测准确度;通过对投影图像进行遮罩处理,可以使得模拟试穿图像(即目标图像)更加接近实际试穿图像,提高目标图像的真实度。
上述详细阐述了本申请实施例的方法,为了便于更好地实施本申请实施例的上述方案,相应地,下面提供了本申请实施例的装置。
请参见图7,图7为本申请实施例提供的一种图像处理装置的结构示意图,该装置可以搭载在上述方法实施例中的智能设备上,该智能设备具体可以是图1中的终端设备101,或者服务器102。图7所示的图像处理装置可以用于执行上述图2,图5a和图5b所描述的方法实施例中的部分或全部功能。其中,各个单元的详细描述如下:
获取单元701,用于获取待处理图像,并根据所述待处理图像中的参考区域确定出参考区域图像,所述参考区域图像包括目标对象;
处理单元702,用于对所述参考区域图像进行关键点提取,得到所述目标对象中各对象关键点的特征信息;以及用于根据虚拟立体模型上的各模型特征点的特征信息和所述目标对象中各对象关键点的特征信息,确定所述虚拟立体模型与所述目标对象之间的投影矩阵;以及用于按照所述投影矩阵将所述虚拟立体模型渲染到所述待处理图像上,得到目标图像,并显示所述目标图像。
在一个实施例中,所述处理单元702,具体用于:
根据分类规则对所述参考区域图像进行分类处理,得到所述参考区域图像的遮罩对象信息;
按照所述投影矩阵对所述虚拟立体模型进行二维平面图像投影处理,得到投影图像;
根据所述参考区域图像的遮罩对象信息,对所述投影图像进行遮罩处理,得到目标图像。
在一个实施例中,所述处理单元702,具体用于:
根据所述参考区域图像中遮罩对象信息所表示的遮罩图像对象在参考区域图像中的位置区域,对所述投影图像的目标区域进行遮罩处理,得到遮挡图像;
将所述遮挡图像覆盖到所述待处理图像的所述参考区域中,得到目标图像;
其中,所述遮罩处理是指根据遮罩图像对象在参考区域图像中的位置区域对投影图像构建遮挡关系,使得投影图像上的目标区域被遮罩对象信息所表示的遮罩图像对象遮挡。
在一个实施例中,所述处理单元702,具体用于:
通过N个候选框对所述待处理图像进行图像区域截取,得到N个参考区域,N为大于1的正整数;
分别计算各个参考区域中存在所述目标对象的概率,并根据各个参考区域中存在所述目标对象的概率从所述N个参考区域中确定出目标参考区域;
根据所述目标参考区域,得到参考区域图像;
其中,所述目标参考区域中存在所述目标对象的概率大于概率阈值,且所述目标参考区域中存在所述目标对象的概率大于P个参考区域中存在所述目标对象的概率,P为正整数,且P小于N。
在一个实施例中,所述处理单元702,具体用于:
获取所述目标参考区域的位置信息和所述目标对象的位置信息;
将所述目标参考区域的位置信息和所述目标对象的位置信息输入校准模型,并获取所述校准模型输出的校准位置信息;
根据所述校准位置信息从所述待处理图像中确定出参考区域图像;
其中,所述各个参考区域中存在所述目标对象的概率是通过位置预测模型计算得到的,所述校准模型是根据参考区域训练图像集合训练得到的,所述参考区域训练图像集合中包括参考区域训练图像,所述参考区域训练图像是对目标参考训练区域对应的区域图像进行处理后得到的,所述目标参考训练区域是所述位置预测模型在根据训练图像集合进行训练的过程中输出的。
在一个实施例中,所述处理单元702,具体用于:
将所述参考区域图像输入关键点提取模型,并获取所述关键点提取模型输出的所述目标对象中各对象关键点的特征信息;
其中,所述关键点提取模型是根据关键点训练图像集合进行监督训练得到的,所述关键点训练图像集合包括平面图像和该平面图像对应的标注数据,所述标注数据包括对M个立体标注模型进行关键点标注后、再进行平面投影得到的平面标注图像,所述平面图像是删除所述平面标注图像中的关键点后得到的图像,M为正整数。
在一个实施例中,所述目标对象是鞋子图像对象,所述M个立体标注模型均为设计的第一侧鞋子类型的立体标注模型;所述处理单元702,具体用于:
若所述参考区域图像中的目标对象是第二侧鞋子类型,则对所述参考区域图像进行水平翻转处理,得到翻转图像;
将所述翻转图像输入关键点提取模型,并获取所述关键点提取模型输出的所述翻转图像中各关键点的特征信息;
对所述翻转图像中各关键点的特征信息进行水平翻转处理,得到所述目标对象中各对象关键点的特征信息。
在一个实施例中,所述参考区域图像中的目标对象的类型是通过分类模型对所述参考区域图像进行分类处理后得到的,所述分类模型是根据类型训练图像集合进行训练得到的,所述类型训练图像集合包括类型训练图像,所述类型训练图像是对参考区域训练图像对应的区域图像进行处理后得到的,参考区域训练图像是校准模型在根据参考区域训练图像集合进行训练的过程中输出的。
在一个实施例中,所述虚拟立体模型上的各特征点包括所述虚拟立体模型的中心点,所述目标对象中各对象关键点包括所述目标对象的中心点,所述投影矩阵包括平移矩阵和旋转矩阵;所述处理单元702,具体用于:
根据虚拟立体模型的中心点的位置信息和所述目标对象的中心点的位置信息,计算平移矩阵;
根据所述虚拟立体模型上的各模型特征点与所述目标对象中各对象关键点的对应关系,计算旋转矩阵;
将所述平移矩阵和所述旋转矩阵确定为所述虚拟立体模型与所述目标对象之间的投影矩阵。
根据本申请的一个实施例,图2,图5a和图5b所示的图像处理方法所涉及的部分步骤可由图7所示的图像处理装置中的各个单元来执行。例如,图2中所示的步骤S201可由图7所示的获取单元701执行,步骤S202-步骤S204可由图7所示的处理单元702执行。图5a中所示的步骤S5011可由图7所示的获取单元701执行,步骤S5012-步骤S5018可由图7所示的处理单元702执行。图5b中所示的步骤S5021可由图7所示的获取单元701执行,步骤S5022-步骤S5028可由图7所示的处理单元702执行。图7所示的图像处理装置中的各个单元可以分别或全部合并为一个或若干个另外的单元来构成,或者其中的某个(些)单元还可以再拆分为功能上更小的多个单元来构成,这可以实现同样的操作,而不影响本申请的实施例的技术效果的实现。上述单元是基于逻辑功能划分的,在实际应用中,一个单元的功能也可以由多个单元来实现,或者多个单元的功能由一个单元实现。在本申请的其它实施例中,图像处理装置也可以包括其它单元,在实际应用中,这些功能也可以由其它单元协助实现,并且可以由多个单元协作实现。
根据本申请的另一个实施例,可以通过在包括中央处理单元(CPU)、随机存取存储介质(RAM)、只读存储介质(ROM)等处理元件和存储元件的例如计算机的通用计算装置上运行能够执行如图2,图5a和图5b中所示的相应方法所涉及的各步骤的计算机程序(包括程序代码),来构造如图7中所示的图像处理装置,以及来实现本申请实施例的图像处理方法。所述计算机程序可以记载于例如计算机可读记录介质上,并通过计算机可读记录介质装载于上述计算装置中,并在其中运行。
基于同一发明构思,本申请实施例中提供的图像处理装置解决问题的原理与有益效果与本申请方法实施例中图像处理装置解决问题的原理和有益效果相似,可以参见方法的实施的原理和有益效果,为简洁描述,在这里不再赘述。
请参见图8,图8为本申请实施例提供的另一种图像处理装置的结构示意图,该装置可以搭载在上述方法实施例中的智能设备上,该智能设备具体可以是图1中的终端设备101。图8所示的图像处理装置可以用于执行上述图3所描述的方法实施例中的部分或全部功能。其中,各个单元的详细描述如下:
显示单元801,用于显示模型选择页面,所述模型选择页面包括至少一个模型的模型信息;以及用于响应于图像处理事件被触发,显示待处理图像,所述待处理图像中包括目标对象;以及用于响应于目标模型的触发操作,显示目标图像,所述目标图像是将所述目标模型关联的虚拟立体模型渲染到所述目标对象所在位置上后得到的。
根据本申请的一个实施例,图3所示的图像处理方法所涉及的部分步骤可由图8所示的图像处理装置中的各个单元来执行。例如,图3中所示的步骤S304可由图8所示的显示单元801执行。图8所示的图像处理装置中的各个单元可以分别或全部合并为一个或若干个另外的单元来构成,或者其中的某个(些)单元还可以再拆分为功能上更小的多个单元来构成,这可以实现同样的操作,而不影响本申请的实施例的技术效果的实现。上述单元是基于逻辑功能划分的,在实际应用中,一个单元的功能也可以由多个单元来实现,或者多个单元的功能由一个单元实现。在本申请的其它实施例中,图像处理装置也可以包括其它单元,在实际应用中,这些功能也可以由其它单元协助实现,并且可以由多个单元协作实现。
根据本申请的另一个实施例,可以通过在包括中央处理单元(CPU)、随机存取存储介质(RAM)、只读存储介质(ROM)等处理元件和存储元件的例如计算机的通用计算装置上运行能够执行如图3中所示的相应方法所涉及的各步骤的计算机程序(包括程序代码),来构造如图7中所示的图像处理装置,以及来实现本申请实施例的图像处理方法。所述计算机程序可以记载于例如计算机可读记录介质上,并通过计算机可读记录介质装载于上述计算装置中,并在其中运行。
基于同一发明构思,本申请实施例中提供的图像处理装置解决问题的原理与有益效果与本申请方法实施例中图像处理装置解决问题的原理和有益效果相似,可以参见方法的实施的原理和有益效果,为简洁描述,在这里不再赘述。
请参阅图9,图9为本申请实施例提供的一种智能设备的结构示意图,所述智能设备至少包括处理器901、通信接口902和存储器903。其中,处理器901、通信接口902和存储器903可通过总线或其他方式连接,本申请实施例以通过总线连接为例。其中,处理器901(或称中央处理器(Central Processing Unit,CPU))是智能设备的计算核心以及控制核心,其可以解析终端设备内的各类指令以及处理终端设备的各类数据,例如:CPU可以用于解析用户向终端设备所发送的开关机指令,并控制终端设备进行开关机操作;再如:CPU可以在终端设备内部结构之间传输各类交互数据,等等。通信接口902可选的可以包括标准的有线接口、无线接口(如WI-FI、移动通信接口等),受处理器901的控制可以用于收发数据;通信接口902还可以用于终端设备内部数据的传输以及交互。存储器903(Memory)是终端设备中的记忆设备,用于存放程序和数据。可以理解的是,此处的存储器903既可以包括终端设备的内置存储器,当然也可以包括终端设备所支持的扩展存储器。存储器903提供存储空间,该存储空间存储了终端设备的操作系统,可包括但不限于:Android系统、iOS系统、WindowsPhone系统等等,本申请对此并不作限定。
在一个实施例中,该智能设备可以是终端设备也可以是服务器。在此情况下,处理器901通过运行存储器903中的可执行程序代码,执行如下操作:
通过通信接口902获取待处理图像,并根据所述待处理图像中的参考区域确定出参考区域图像,所述参考区域图像包括目标对象;
对所述参考区域图像进行关键点提取,得到所述目标对象中各对象关键点的特征信息;
根据虚拟立体模型上的各模型特征点的特征信息和所述目标对象中各对象关键点的特征信息,确定所述虚拟立体模型与所述目标对象之间的投影矩阵;
按照所述投影矩阵将所述虚拟立体模型渲染到所述待处理图像上,得到目标图像,并显示所述目标图像。
作为一种可选的实施方式,处理器901按照所述投影矩阵将所述虚拟立体模型渲染到所述待处理图像上,得到目标图像的具体实施方式为:
根据分类规则对所述参考区域图像进行分类处理,得到所述参考区域图像的遮罩对象信息;
按照所述投影矩阵对所述虚拟立体模型进行二维平面图像投影处理,得到投影图像;
根据所述参考区域图像的遮罩对象信息,对所述投影图像进行遮罩处理,得到目标图像。
作为一种可选的实施方式,处理器901根据所述参考区域图像的遮罩对象信息,对所述投影图像进行遮罩处理,得到目标图像的具体实施方式为:
根据所述参考区域图像中遮罩对象信息所表示的遮罩图像对象在参考区域图像中的位置区域,对所述投影图像的目标区域进行遮罩处理,得到遮挡图像;
将所述遮挡图像覆盖到所述待处理图像的所述参考区域中,得到目标图像;
其中,所述遮罩处理是指根据遮罩图像对象在参考区域图像中的位置区域对投影图像构建遮挡关系,使得投影图像上的目标区域被遮罩对象信息所表示的遮罩图像对象遮挡。
作为一种可选的实施方式,处理器901根据所述待处理图像中的参考区域确定出参考区域图像的具体实施方式为:
通过N个候选框对所述待处理图像进行图像区域截取,得到N个参考区域,N为大于1的正整数;
分别计算各个参考区域中存在所述目标对象的概率,并根据各个参考区域中存在所述目标对象的概率从所述N个参考区域中确定出目标参考区域;
根据所述目标参考区域,得到参考区域图像;
其中,所述目标参考区域中存在所述目标对象的概率大于概率阈值,且所述目标参考区域中存在所述目标对象的概率大于P个参考区域中存在所述目标对象的概率,P为正整数,且P小于N。
作为一种可选的实施方式,处理器901根据所述目标参考区域,得到参考区域图像的具体实施方式为:
获取所述目标参考区域的位置信息和所述目标对象的位置信息;
将所述目标参考区域的位置信息和所述目标对象的位置信息输入校准模型,并获取所述校准模型输出的校准位置信息;
根据所述校准位置信息从所述待处理图像中确定出参考区域图像;
其中,所述各个参考区域中存在所述目标对象的概率是通过位置预测模型计算得到的,所述校准模型是根据参考区域训练图像集合训练得到的,所述参考区域训练图像集合中包括参考区域训练图像,所述参考区域训练图像是对目标参考训练区域对应的区域图像进行处理后得到的,所述目标参考训练区域是所述位置预测模型在根据训练图像集合进行训练的过程中输出的。
作为一种可选的实施方式,处理器901对所述参考区域图像进行关键点提取,得到所述目标对象中各对象关键点的特征信息的具体实施例为:
将所述参考区域图像输入关键点提取模型,并获取所述关键点提取模型输出的所述目标对象中各对象关键点的特征信息;
其中,所述关键点提取模型是根据关键点训练图像集合进行监督训练得到的,所述关键点训练图像集合包括平面图像和该平面图像对应的标注数据,所述标注数据包括对M个立体标注模型进行关键点标注后、再进行平面投影得到的平面标注图像,所述平面图像是删除所述平面标注图像中的关键点后得到的图像,M为正整数。
作为一种可选的实施方式,所述目标对象是鞋子图像对象,所述M个立体标注模型均为设计的第一侧鞋子类型的立体标注模型;处理器901将所述参考区域图像输入关键点提取模型,并获取所述关键点提取模型输出的所述目标对象中各对象关键点的特征信息的具体实施方式为:
若所述参考区域图像中的目标对象是第二侧鞋子类型,则对所述参考区域图像进行水平翻转处理,得到翻转图像;
将所述翻转图像输入关键点提取模型,并获取所述关键点提取模型输出的所述翻转图像中各关键点的特征信息;
对所述翻转图像中各关键点的特征信息进行水平翻转处理,得到所述目标对象中各对象关键点的特征信息。
作为一种可选的实施方式,所述参考区域图像中的目标对象的类型是通过分类模型对所述参考区域图像进行分类处理后得到的,所述分类模型是根据类型训练图像集合进行训练得到的,所述类型训练图像集合包括类型训练图像,所述类型训练图像是对参考区域训练图像对应的区域图像进行处理后得到的,参考区域训练图像是校准模型在根据参考区域训练图像集合进行训练的过程中输出的。
作为一种可选的实施方式,所述虚拟立体模型上的各特征点包括所述虚拟立体模型的中心点,所述目标对象中各对象关键点包括所述目标对象的中心点,所述投影矩阵包括平移矩阵和旋转矩阵;处理器901根据虚拟立体模型上的各模型特征点的特征信息和所述目标对象中各对象关键点的特征信息,确定所述虚拟立体模型与所述目标对象之间的投影矩阵的具体实施方式为:
根据虚拟立体模型的中心点的位置信息和所述目标对象的中心点的位置信息,计算平移矩阵;
根据所述虚拟立体模型上的各模型特征点与所述目标对象中各对象关键点的对应关系,计算旋转矩阵;
将所述平移矩阵和所述旋转矩阵确定为所述虚拟立体模型与所述目标对象之间的投影矩阵。
在另一个实施例中,该智能设备可以是终端设备。在此情况下,处理器1001通过运行存储器1003中的可执行程序代码,执行如下操作:
显示模型选择页面,所述模型选择页面包括至少一个模型的模型信息;
响应于图像处理事件被触发,显示待处理图像,所述待处理图像中包括目标对象;
响应于目标模型的触发操作,显示目标图像,所述目标图像是将所述目标模型关联的虚拟立体模型渲染到所述目标对象所在位置上后得到的。
基于同一发明构思,本申请实施例中提供的智能设备解决问题的原理与有益效果与本申请方法实施例中图像处理方法解决问题的原理和有益效果相似,可以参见方法的实施的原理和有益效果,为简洁描述,在这里不再赘述。
本申请实施例还提供一种计算机可读存储介质,所述计算机可读存储介质中存储有一条或多条指令,所述一条或多条指令适于由处理器加载并执行上述方法实施例所述的图像处理方法。
本申请实施例还提供一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述方法实施例所述的图像处理方法。
本申请实施例还提供一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行上述图像处理的方法。
本申请实施例方法中的步骤可以根据实际需要进行顺序调整、合并和删减。
本申请实施例装置中的模块可以根据实际需要进行合并、划分和删减。
本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,该程序可以存储于一计算机可读存储介质中,可读存储介质可以包括:闪存盘、只读存储器(Read-Only Memory,ROM)、随机存取器(RandomAccess Memory,RAM)、磁盘或光盘等。
以上所揭露的仅为本申请一种较佳实施例而已,当然不能以此来限定本申请之权利范围,本领域普通技术人员可以理解实现上述实施例的全部或部分流程,并依本申请权利要求所作的等同变化,仍属于发明所涵盖的范围。
Claims (14)
1.一种图像处理方法,其特征在于,包括:
获取待处理图像,并根据所述待处理图像中的参考区域确定出参考区域图像,所述参考区域图像包括目标对象;
对所述参考区域图像进行关键点提取,得到所述目标对象中各对象关键点的特征信息;
根据虚拟立体模型上的各模型特征点的特征信息和所述目标对象中各对象关键点的特征信息,确定所述虚拟立体模型与所述目标对象之间的投影矩阵;
按照所述投影矩阵将所述虚拟立体模型渲染到所述待处理图像上,得到目标图像,并显示所述目标图像。
2.如权利要求1所述的方法,其特征在于,所述按照所述投影矩阵将所述虚拟立体模型渲染到所述待处理图像上,得到目标图像,包括:
根据分类规则对所述参考区域图像进行分类处理,得到所述参考区域图像的遮罩对象信息;
按照所述投影矩阵对所述虚拟立体模型进行二维平面图像投影处理,得到投影图像;
根据所述参考区域图像的遮罩对象信息,对所述投影图像进行遮罩处理,得到目标图像。
3.如权利要求2所述的方法,其特征在于,所述根据所述参考区域图像的遮罩对象信息,对所述投影图像进行遮罩处理,得到目标图像,包括:
根据所述参考区域图像中遮罩对象信息所表示的遮罩图像对象在参考区域图像中的位置区域,对所述投影图像的目标区域进行遮罩处理,得到遮挡图像;
将所述遮挡图像覆盖到所述待处理图像的所述参考区域中,得到目标图像;
其中,所述遮罩处理是指根据遮罩图像对象在参考区域图像中的位置区域对投影图像构建遮挡关系,使得投影图像上的目标区域被遮罩对象信息所表示的遮罩图像对象遮挡。
4.如权利要求1所述的方法,其特征在于,所述根据所述待处理图像中的参考区域确定出参考区域图像,包括:
通过N个候选框对所述待处理图像进行图像区域截取,得到N个参考区域,N为大于1的正整数;
分别计算各个参考区域中存在所述目标对象的概率,并根据各个参考区域中存在所述目标对象的概率从所述N个参考区域中确定出目标参考区域;
根据所述目标参考区域,得到参考区域图像;
其中,所述目标参考区域中存在所述目标对象的概率大于概率阈值,且所述目标参考区域中存在所述目标对象的概率大于P个参考区域中存在所述目标对象的概率,P为正整数,且P小于N。
5.如权利要求4所述的方法,其特征在于,所述根据所述目标参考区域,得到参考区域图像,包括:
获取所述目标参考区域的位置信息和所述目标对象的位置信息;
将所述目标参考区域的位置信息和所述目标对象的位置信息输入校准模型,并获取所述校准模型输出的校准位置信息;
根据所述校准位置信息从所述待处理图像中确定出参考区域图像;
其中,所述各个参考区域中存在所述目标对象的概率是通过位置预测模型计算得到的,所述校准模型是根据参考区域训练图像集合训练得到的,所述参考区域训练图像集合中包括参考区域训练图像,所述参考区域训练图像是对目标参考训练区域对应的区域图像进行处理后得到的,所述目标参考训练区域是所述位置预测模型在根据训练图像集合进行训练的过程中输出的。
6.如权利要求1所述的方法,其特征在于,所述对所述参考区域图像进行关键点提取,得到所述目标对象中各对象关键点的特征信息,包括:
将所述参考区域图像输入关键点提取模型,并获取所述关键点提取模型输出的所述目标对象中各对象关键点的特征信息;
其中,所述关键点提取模型是根据关键点训练图像集合进行监督训练得到的,所述关键点训练图像集合包括平面图像和该平面图像对应的标注数据,所述标注数据包括对M个立体标注模型进行关键点标注后、再进行平面投影得到的平面标注图像,所述平面图像是删除所述平面标注图像中的关键点后得到的图像,M为正整数。
7.如权利要求6所述的方法,其特征在于,所述目标对象是鞋子图像对象,所述M个立体标注模型均为设计的第一侧鞋子类型的立体标注模型,所述将所述参考区域图像输入关键点提取模型,并获取所述关键点提取模型输出的所述目标对象中各对象关键点的特征信息,包括:
若所述参考区域图像中的目标对象是第二侧鞋子类型,则对所述参考区域图像进行水平翻转处理,得到翻转图像;
将所述翻转图像输入关键点提取模型,并获取所述关键点提取模型输出的所述翻转图像中各关键点的特征信息;
对所述翻转图像中各关键点的特征信息进行水平翻转处理,得到所述目标对象中各对象关键点的特征信息。
8.如权利要求7所述的方法,其特征在于,所述参考区域图像中的目标对象的类型是通过分类模型对所述参考区域图像进行分类处理后得到的,所述分类模型是根据类型训练图像集合进行训练得到的,所述类型训练图像集合包括类型训练图像,所述类型训练图像是对参考区域训练图像对应的区域图像进行处理后得到的,所述参考区域训练图像是校准模型在根据参考区域训练图像集合进行训练的过程中输出的。
9.如权利要求1所述的方法,其特征在于,所述虚拟立体模型上的各特征点包括所述虚拟立体模型的中心点,所述目标对象中各对象关键点包括所述目标对象的中心点,所述投影矩阵包括平移矩阵和旋转矩阵;所述根据虚拟立体模型上的各模型特征点的特征信息和所述目标对象中各对象关键点的特征信息,确定所述虚拟立体模型与所述目标对象之间的投影矩阵,包括:
根据虚拟立体模型的中心点的位置信息和所述目标对象的中心点的位置信息,计算平移矩阵;
根据所述虚拟立体模型上的各模型特征点与所述目标对象中各对象关键点的对应关系,计算旋转矩阵;
将所述平移矩阵和所述旋转矩阵确定为所述虚拟立体模型与所述目标对象之间的投影矩阵。
10.一种图像处理方法,其特征在于,包括:
显示模型选择页面,所述模型选择页面包括至少一个模型的模型信息;
响应于图像处理事件被触发,显示待处理图像,所述待处理图像中包括目标对象;
响应于目标模型的触发操作,显示目标图像,所述目标图像是将所述目标模型关联的虚拟立体模型渲染到所述目标对象所在位置上后得到的。
11.一种图像处理装置,其特征在于,所述图像处理装置包括:
获取单元,用于获取待处理图像,并根据所述待处理图像中的参考区域确定出参考区域图像,所述参考区域图像包括目标对象;
处理单元,用于对所述参考区域图像进行关键点提取,得到所述目标对象中各对象关键点的特征信息;以及用于根据虚拟立体模型上的各模型特征点的特征信息和所述目标对象中各对象关键点的特征信息,确定所述虚拟立体模型与所述目标对象之间的投影矩阵;以及用于按照所述投影矩阵将所述虚拟立体模型渲染到所述待处理图像上,得到目标图像,并显示所述目标图像。
12.一种图像处理装置,其特征在于,所述图像处理装置包括:
显示单元,用于显示模型选择页面,所述模型选择页面包括至少一个模型的模型信息;以及用于响应于图像处理事件被触发,显示待处理图像,所述待处理图像中包括目标对象;以及用于响应于目标模型的触发操作,显示目标图像,所述目标图像是将所述目标模型关联的虚拟立体模型渲染到所述目标对象所在位置上后得到的。
13.一种智能设备,其特征在于,包括:存储装置和处理器;
所述存储装置中存储有计算机程序;
处理器,用于加载并执行所述计算机程序,以实现如权利要求1-9任一项所述的图像处理方法,或者实现如权利要求10所述的图像处理方法。
14.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机程序,所述计算机程序适于被处理器加载并执行如权利要求1-9任一项所述的图像处理方法,或者执行如权利要求10的图像处理方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110455496.1A CN113763440A (zh) | 2021-04-26 | 2021-04-26 | 一种图像处理方法、装置、设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110455496.1A CN113763440A (zh) | 2021-04-26 | 2021-04-26 | 一种图像处理方法、装置、设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN113763440A true CN113763440A (zh) | 2021-12-07 |
Family
ID=78786916
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110455496.1A Pending CN113763440A (zh) | 2021-04-26 | 2021-04-26 | 一种图像处理方法、装置、设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113763440A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114283068A (zh) * | 2021-12-31 | 2022-04-05 | 北京德火科技有限责任公司 | 一种使用虚拟场景与现实摄制图像进行拼接的方法及系统 |
CN114638026A (zh) * | 2022-02-17 | 2022-06-17 | 广东时谛智能科技有限公司 | 鞋体设计过程中的区块划分方法和装置 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108961149A (zh) * | 2017-05-27 | 2018-12-07 | 北京旷视科技有限公司 | 图像处理方法、装置和系统及存储介质 |
CN109190636A (zh) * | 2018-07-30 | 2019-01-11 | 北京航空航天大学 | 一种遥感图像舰船目标信息提取方法 |
CN111369686A (zh) * | 2020-03-03 | 2020-07-03 | 足购科技(杭州)有限公司 | 能够处理局部遮挡物的ar成像虚拟试鞋方法及装置 |
CN111401376A (zh) * | 2020-03-12 | 2020-07-10 | 腾讯科技(深圳)有限公司 | 目标检测方法、装置、电子设备以及存储介质 |
CN111444928A (zh) * | 2020-03-30 | 2020-07-24 | 北京市商汤科技开发有限公司 | 关键点检测的方法、装置、电子设备及存储介质 |
CN111507806A (zh) * | 2020-04-23 | 2020-08-07 | 北京百度网讯科技有限公司 | 虚拟试鞋方法、装置、设备以及存储介质 |
CN111882408A (zh) * | 2020-09-27 | 2020-11-03 | 北京达佳互联信息技术有限公司 | 虚拟试用方法、装置、电子设备及存储设备 |
-
2021
- 2021-04-26 CN CN202110455496.1A patent/CN113763440A/zh active Pending
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108961149A (zh) * | 2017-05-27 | 2018-12-07 | 北京旷视科技有限公司 | 图像处理方法、装置和系统及存储介质 |
CN109190636A (zh) * | 2018-07-30 | 2019-01-11 | 北京航空航天大学 | 一种遥感图像舰船目标信息提取方法 |
CN111369686A (zh) * | 2020-03-03 | 2020-07-03 | 足购科技(杭州)有限公司 | 能够处理局部遮挡物的ar成像虚拟试鞋方法及装置 |
CN111401376A (zh) * | 2020-03-12 | 2020-07-10 | 腾讯科技(深圳)有限公司 | 目标检测方法、装置、电子设备以及存储介质 |
CN111444928A (zh) * | 2020-03-30 | 2020-07-24 | 北京市商汤科技开发有限公司 | 关键点检测的方法、装置、电子设备及存储介质 |
CN111507806A (zh) * | 2020-04-23 | 2020-08-07 | 北京百度网讯科技有限公司 | 虚拟试鞋方法、装置、设备以及存储介质 |
CN111882408A (zh) * | 2020-09-27 | 2020-11-03 | 北京达佳互联信息技术有限公司 | 虚拟试用方法、装置、电子设备及存储设备 |
Non-Patent Citations (1)
Title |
---|
董洪义: "《深度学习之PyTorch物体检测实战》", 北京理工大学出版社, pages: 235 - 156 * |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114283068A (zh) * | 2021-12-31 | 2022-04-05 | 北京德火科技有限责任公司 | 一种使用虚拟场景与现实摄制图像进行拼接的方法及系统 |
CN114638026A (zh) * | 2022-02-17 | 2022-06-17 | 广东时谛智能科技有限公司 | 鞋体设计过程中的区块划分方法和装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111598998B (zh) | 三维虚拟模型重建方法、装置、计算机设备和存储介质 | |
US10679046B1 (en) | Machine learning systems and methods of estimating body shape from images | |
WO2021175050A1 (zh) | 三维重建方法和三维重建装置 | |
TWI559242B (zh) | 視覺化服飾檢索 | |
CN111787242B (zh) | 用于虚拟试衣的方法和装置 | |
CN109522790A (zh) | 人体属性识别方法、装置、存储介质及电子设备 | |
CN106709404A (zh) | 图像处理装置及图像处理方法 | |
JP7292492B2 (ja) | オブジェクト追跡方法及び装置、記憶媒体並びにコンピュータプログラム | |
CN113220251B (zh) | 物体显示方法、装置、电子设备及存储介质 | |
CN113763440A (zh) | 一种图像处理方法、装置、设备及存储介质 | |
CN113593001A (zh) | 目标对象三维重建方法、装置、计算机设备和存储介质 | |
CN117372604A (zh) | 一种3d人脸模型生成方法、装置、设备及可读存储介质 | |
CN113570615A (zh) | 一种基于深度学习的图像处理方法、电子设备及存储介质 | |
CN116012626A (zh) | 建筑立面图像的素材匹配方法、装置、设备和存储介质 | |
CN111275610A (zh) | 一种人脸变老图像处理方法及系统 | |
CN116071551A (zh) | 图像处理方法、计算机可读存储介质及电子设备 | |
CN116977539A (zh) | 图像处理方法、装置、计算机设备、存储介质和程序产品 | |
CN110942056A (zh) | 服饰关键点定位方法、装置、电子设备及介质 | |
CN115147469A (zh) | 配准方法、装置、设备及存储介质 | |
Ileperuma et al. | An enhanced virtual fitting room using deep neural networks | |
CN115994944A (zh) | 三维关键点预测方法、训练方法及相关设备 | |
CN113191462A (zh) | 信息获取方法、图像处理方法、装置及电子设备 | |
CN117689782B (zh) | 一种生成海报图像的方法、装置、设备及存储介质 | |
CN112915535B (zh) | 一种游戏数据处理方法以及相关设备 | |
CN112634418B (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 |