CN111986133B - 一种应用于子弹时间的虚拟广告植入方法 - Google Patents
一种应用于子弹时间的虚拟广告植入方法 Download PDFInfo
- Publication number
- CN111986133B CN111986133B CN202010844356.9A CN202010844356A CN111986133B CN 111986133 B CN111986133 B CN 111986133B CN 202010844356 A CN202010844356 A CN 202010844356A CN 111986133 B CN111986133 B CN 111986133B
- Authority
- CN
- China
- Prior art keywords
- plane
- advertisement
- image
- scene
- points
- 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
- 238000002513 implantation Methods 0.000 title claims abstract description 29
- 238000000034 method Methods 0.000 title claims abstract description 23
- 230000000007 visual effect Effects 0.000 claims abstract description 14
- 239000011159 matrix material Substances 0.000 claims description 37
- 238000001514 detection method Methods 0.000 claims description 18
- 238000013519 translation Methods 0.000 claims description 12
- 230000009466 transformation Effects 0.000 claims description 11
- 230000015572 biosynthetic process Effects 0.000 claims description 7
- 238000003786 synthesis reaction Methods 0.000 claims description 7
- 238000004364 calculation method Methods 0.000 claims description 5
- 238000013178 mathematical model Methods 0.000 claims description 5
- 230000002194 synthesizing effect Effects 0.000 claims description 3
- 230000002452 interceptive effect Effects 0.000 abstract description 2
- 230000000694 effects Effects 0.000 description 5
- 238000005516 engineering process Methods 0.000 description 5
- 230000003068 static effect Effects 0.000 description 3
- 238000010586 diagram Methods 0.000 description 2
- 238000007781 pre-processing Methods 0.000 description 2
- 230000008569 process Effects 0.000 description 2
- 230000009471 action Effects 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000002474 experimental method Methods 0.000 description 1
- 239000007943 implant Substances 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000002360 preparation method Methods 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 238000005728 strengthening Methods 0.000 description 1
- 230000001131 transforming effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T5/00—Image enhancement or restoration
- G06T5/50—Image enhancement or restoration using two or more images, e.g. averaging or subtraction
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q30/00—Commerce
- G06Q30/02—Marketing; Price estimation or determination; Fundraising
- G06Q30/0241—Advertisements
- G06Q30/0276—Advertisement creation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T17/00—Three dimensional [3D] modelling, e.g. data description of 3D objects
- G06T17/20—Finite element generation, e.g. wire-frame surface description, tesselation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/80—Analysis of captured images to determine intrinsic or extrinsic camera parameters, i.e. camera calibration
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/40—Extraction of image or video features
- G06V10/44—Local feature extraction by analysis of parts of the pattern, e.g. by detecting edges, contours, loops, corners, strokes or intersections; Connectivity analysis, e.g. of connected components
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/40—Extraction of image or video features
- G06V10/46—Descriptors for shape, contour or point-related descriptors, e.g. scale invariant feature transform [SIFT] or bags of words [BoW]; Salient regional features
- G06V10/462—Salient features, e.g. scale invariant feature transforms [SIFT]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/74—Image or video pattern matching; Proximity measures in feature spaces
- G06V10/75—Organisation of the matching processes, e.g. simultaneous or sequential comparisons of image or video features; Coarse-fine approaches, e.g. multi-scale approaches; using context analysis; Selection of dictionaries
- G06V10/757—Matching configurations of points or features
-
- 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/10—Image acquisition modality
- G06T2207/10016—Video; Image sequence
- G06T2207/10021—Stereoscopic video; Stereoscopic image sequence
-
- 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/10—Image acquisition modality
- G06T2207/10028—Range image; Depth image; 3D point clouds
-
- 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/20212—Image combination
- G06T2207/20221—Image fusion; Image merging
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Multimedia (AREA)
- Business, Economics & Management (AREA)
- Finance (AREA)
- Software Systems (AREA)
- Accounting & Taxation (AREA)
- Development Economics (AREA)
- Strategic Management (AREA)
- Geometry (AREA)
- Artificial Intelligence (AREA)
- Entrepreneurship & Innovation (AREA)
- Economics (AREA)
- Marketing (AREA)
- General Business, Economics & Management (AREA)
- Health & Medical Sciences (AREA)
- Game Theory and Decision Science (AREA)
- Computing Systems (AREA)
- Databases & Information Systems (AREA)
- Evolutionary Computation (AREA)
- General Health & Medical Sciences (AREA)
- Medical Informatics (AREA)
- Computer Graphics (AREA)
- Processing Or Creating Images (AREA)
Abstract
本发明公开了一种应用于子弹时间的虚拟广告植入方法,包括以下步骤:S1:场景指定平面检测,进行场景的三维重建,获取场景的稀疏三维点云,在所述稀疏点云中搜索平面,由用户选取期望植入广告的平面;S2:指定广告在所述平面上的植入位置,所述位置由用户通过UI在某一视角的图像上进行选择,并以此计算其在场景平面上对应的三维点坐标;最后进行广告平面与场景的对齐及虚拟广告的生成。本发明操作简单,人工干预少;支持场景的三维重建;支持交互式调整广告位置,尺寸和角度,以满足个性化需求;满足高分辨率的实时播放要求。
Description
技术领域
本发明涉及计算机视觉和计算机图形学的三维重建和图像处理领域,尤其涉及一种应用于子弹时间的虚拟广告植入方法。
背景技术
子弹时间(Bullet time)作为一种用计算机辅助的摄影特效技术,经常应用于电视、广告或者电脑游戏当中,以实现强化慢镜头、时间静止等视觉效果,让观众或用户获得全新体验。子弹时间可分为静态子弹时间和动态子弹时间。在静态子弹时间中,相机***在同时刻从不同角度拍摄物体并呈现画面,以实现时间凝固的效果。在动态子弹时间中,相机***呈现不同时刻不同角度的画面,可从多角度观看动态的实景画面。
虚拟广告是一种近几年新兴的数字化营销手段,利用虚拟现实技术,将客户的广告植入到现场环境中。虚拟广告技术可以让场景中的“静态”广告牌动起来,实现在不同区域市场进行定向投放和满足不同客户的个性定制,从而实现收益的最大化。
在子弹时间中植入虚拟广告,具有巨大的潜在商业价值。既能让观众体验到子弹时间带来的视觉特效,又能对拍摄完成的视频进行二次内容合成,实现广告产品的全个性化定制;其重点与难点在于,如何保证所植入的广告在子弹时间的不同视角中,与实景画面保持一致与协调。
因此,本领域的技术人员致力于开发一种应用于子弹时间的虚拟广告植入方法,以实现在多视角下对视频进行二次内容合成,将虚拟广告与实景相结合,实时生成准确真实的广告图片。同时,用户可以交互式的调整广告在图像中的位置,尺寸以及角度,以满足其个性化需求。
发明内容
本发明所要解决的技术问题是克服现有技术的不足,实现在多视角下对视频进行二次内容合成,将虚拟广告与实景相结合,实时生成准确真实的广告图片。
为实现上述目的,本发明提供了一种应用于子弹时间的虚拟广告植入方法,包括以下步骤:
S1:场景指定平面检测,在所述步骤S1进行场景的三维重建,获取场景的稀疏三维点云,在所述稀疏三维点云中搜索平面,由用户选取期望植入广告的平面;
S2:广告平面对齐及虚拟广告生成,指定广告在所述平面上的植入位置,所述位置由用户通过UI在某一视角的图像上进行选择,并以此计算其在场景平面上对应的三维点坐标;最后进行广告平面与场景的对齐及虚拟广告的生成。
进一步地,所述步骤S1还包括:
S11、算法输入:从多目相机***同步采集一组图像,每个相机采集一帧图片;利用所述一组图像,进行相机标定,获取相机的内外参数;所述相机的所述内外参数及所述一组图像作为平面检测算法的输入;
S12、特征匹配:对所述一组图像进行特征匹配,获取两相邻图像的匹配特征点;
S13、三角测量:利用所述相机内外参数及相应的所述特征点图像坐标,进行三角测量,计算所述特征点在场景中的三维坐标,得到场景的所述稀疏三维点云;
S14、平面拟合:利用Ransac算法,拟合出所述稀疏三维点云中存在的所有平面;
S15、指定平面选取:用户在指定视角的图像中,通过UI选取待植入广告平面的图像锚点;根据该锚点,确定所述指定平面的参数方程。
进一步地,所述步骤S2还包括:
S21、算法输入包括待植入的广告图像、所述步骤S1中标定的相机内外参数、所述步骤S1中拟合的场景平面方程、指定待植入广告的图像锚点和采集需要植入广告的视频序列;
S22、计算广告植入锚点的三维坐标:根据所述相机内外参数以及所述场景平面方程,计算需要放置广告平面的三维点坐标;
S23、广告平面与场景平面对齐:根据广告平面锚点、广告平面法向量、场景平面法向量以及广告植入锚点的三维位置,计算广告平面与场景平面对齐需要的旋转矩阵和平移向量;设置所需要的调整广告尺寸和角度的变换矩阵;
S24、单应性矩阵计算:根据所述相机内外参数,将广告平面角点重投影到各视角下的图像,计算其对应的图像坐标,即重投影广告平面角点;根据广告平面角点的重投影坐标和广告图像的角点坐标,计算单应性矩阵;
S25、图像透视变换及合成:利用单应性矩阵对Logo图像进行透视变换,将变换后的图像和实景图像进行合成。
进一步地,所述步骤S12还包括:
S121、特征检测:对输入图像进行特征检测,使用AKAZE检测算法,检测图像特征点;
S122、特征匹配:对相邻两幅所述图像的特征进行暴力匹配,确定所述两幅图像匹配的特征点;
S123、内点检测:暴力匹配后的特征可能存在外点;利用Cross-Ratio-Check方法去除错误匹配,即两幅图像中的特征描述子进行一次暴力匹配,将两组匹配结果中均满足比率阈值的匹配作为内点。
进一步地,所述步骤S14中的Ransac算法为:
从一组包含外点的点云中,通过迭代的方式估计出平面的数学模型;在所述模型中,每次迭代找到平面后,将属于该平面的内点从点云中剔除;对剩余点云,再次执行所述Ransac算法迭代,搜索平面;直到剩余点云内点的数量小于阈值,停止执行所述Ransac算法,得到三维点云中所有可能存在的平面集合。
进一步地,所述步骤S15还包括:
S151:图像锚点选取:选取指定视角图片,并在该视角图片中绘制检测到的特征点,拾取某一平面上的N个所述特征点;所述特征点拾取完成后,可以确定所述特征点的三维坐标;
S152:地平面确定:当所述地平面特征点确定后,将其对应三维坐标带入到所有平面方程,按如下公式,计算损失:其中N为拾取的锚点数量,(A,B,C,D)为集合S中平面的参数,选取损失最小的平面作为指定平面。
进一步地,所述步骤S21中:
所述平面方程即为所述步骤S15中确定的场景平面,其方程为平面的一般参数方程A·x+B·y+C·z+D=0,其中平面单位法向量np=(A,B,C);
所述广告植入的图像锚点,用户在指定的视角图像中,通过UI选择要植入广告的图像坐标点;当需要更改广告植入位置时,重新拾取图像点坐标即可。
进一步地,所述三维锚点的计算公式如下所示,其中R,K,(u,v),t,(A,B,C,D)均为已知参数:
其中,[R|t]为当前相机的外参,K为当前相机的内参,(u,v)为广告在当前视角中的植入位置,(A,B,C,D)为场景平面方程参数。
进一步地,所述步骤S23中:
所述广告平面是预设在世界坐标系中位于xy轴上的矩形;其中心位于世界坐标系的原点,长度为2,高度为2r,r为广告图像的高宽比;其法向量为na=(0,0,1),所述广告平面的四个角点为pa1=(1,-r,0),pa2=(-1,-r,0),pa3=(-1,r,0),pa4=(1,r,0),所述广告平面的锚点为Pa0=(0,0,0);
在所述步骤S23中,需要计算广告平面与场景在三维空间中对齐需要的旋转和平移矩阵;根据场景平面的单位法向量np、广告平面法向量na、平面锚点Pp和广告平面锚点Pa,广告与场景平面对齐的旋转矩阵平移向量ta2p=pp,其中c=np·na,v=na×np,I为单位矩阵,[v]×为v的反对称矩阵;
设置所述模型的尺度变换矩阵s和绕z轴旋转矩阵Rz,其中 其中(sx,sy)为广告平面在xy轴上的缩放因子,α为绕z轴的旋转角度,均由用户通过UI根据实际需求调整;因此,总旋转矩阵/>平移向量
所述广告平面与所述场景平面对齐后,其角点坐标其中i∈{1,2,3,4};
所述步骤S23由用户在生成最终虚拟广告前进行调试,当获取植入广告的合适尺度和角度后,则终止执行所述步骤S23。
进一步地,所述步骤S24中:
所述重投影广告平面角点,即在已知各所述相机的内外参数和所述广告平面角点三维坐标的条件下,计算所述广告平面角点在各个视角图像上的重投影坐标;
所述计算单应性矩阵,即根据所述广告平面角点的投影图像点和广告图像角点,计算广告图像和各视角图像的单应性矩阵。
本发明致力于以一种简明有效的方式,将虚拟广告技术和子弹时间相结合,实现在多视角下对视频进行广告植入。本发明的特点在于:
1、操作简单,人工干预少;
2、支持场景的三维重建;
3、支持交互式调整广告位置,尺寸和角度,以满足个性化需求;
4、满足高分辨率的实时播放要求。
以下将结合附图对本发明的构思、具体结构及产生的技术效果作进一步说明,以充分地了解本发明的目的、特征和效果。
附图说明
图1是本发明的一个较佳实施例的应用于子弹时间的虚拟广告植入方法流程图;
图2是本发明的一个较佳实施例的场景指定平面检测流程图;
图3是本发明的一个较佳实施例的广告平面对齐及虚拟广告生成流程图;
图4是本发明的一个较佳实施例的子弹时间相机阵列方式示意图;
图5是本发明的一个较佳实施例的图像锚点拾取;
图6是本发明的一个较佳实施例的广告Logo;
图7是本发明的一个较佳实施例的虚拟广告植入示意图。
具体实施方式
以下参考说明书附图介绍本发明的多个优选实施例,使其技术内容更加清楚和便于理解。本发明可以通过许多不同形式的实施例来得以体现,本发明的保护范围并非仅限于文中提到的实施例。
在附图中,结构相同的部件以相同数字标号表示,各处结构或功能相似的组件以相似数字标号表示。附图所示的每一组件的尺寸和厚度是任意示出的,本发明并没有限定每个组件的尺寸和厚度。为了使图示更清晰,附图中有些地方适当夸大了部件的厚度。
如图1所示,本专利所述方法包括两个阶段,每阶段的步骤如下:
阶段1:场景指定平面检测
如图2所示,在该阶段进行场景的三维重建,获取场景的稀疏三维点云,在该点云中搜索可能存在的平面,由用户选取期望植入广告的平面
1、算法输入:从多目相机***同步采集一组彩色(RGB)图像,每个相机仅需采集一帧图片;利用该组图像,进行相机标定,获取相机的内外参数;该相机的内外参数及该组图像作为平面检测算法的输入
2、特征匹配:对该组图像进行特征匹配,获取两相邻图像的匹配特征点
3、三角测量:利用相机内外参数及相应的特征点图像坐标,进行三角测量,计算特征点在场景中的三维坐标,得到场景的稀疏三维点云
4、平面拟合:利用Ransac算法,拟合出三维点云中存在的所有平面
5、指定平面选取:用户在指定视角的图像中,通过UI选取待植入广告平面的图像锚点;根据该锚点,确定指定平面的参数方程
阶段2:广告平面对齐及虚拟广告生成
如图3所示,阶段2的步骤为:
1、算法输入:待植入的广告图像;阶段1中标定的相机内外参数;阶段1中拟合的平面方程(即场景平面);指定待植入广告的图像锚点(由用户在UI中拾取);采集需要植入广告的视频序列
2、计算广告植入锚点的三维坐标:根据相机内外参数以及场景平面方程,计算需要放置广告平面的三维点坐标
3、广告平面与场景平面对齐:根据广告平面锚点、广告平面法向量、场景平面法向量以及广告植入锚点的三维位置,计算广告平面与场景平面对齐需要的旋转矩阵和平移向量;另外,设置所需要的调整广告尺寸和角度的变换矩阵
4、单应性矩阵计算:根据相机内外参,将广告平面角点重投影到各视角下的图像,计算其对应的图像坐标;根据广告平面角点的重投影坐标和广告图像的角点坐标,计算单应性矩阵
5、图像透视变换及合成:利用单应性矩阵对Logo图像进行透视变换,将变换后的图像和实景图像进行合成
本专利利用立体视觉技术实现在子弹时间中的虚拟广告植入;利用从多相机***同步采集的RGB图像,进行相机内外参数标定,对场景进行三维重建,计算场景的三维点云和平面方程集合,选取广告植入的平面方程;根据用户指定的图像位置,对齐广告平面与场景平面,变换广告图片并生成虚拟广告。该方法主要分为场景三维平面确定,广告与场景平面对齐以及虚拟广告合成等部分。
实施例一
阶段1:场景指定平面检测
此阶段为预处理阶段,搭建完子弹时间相机***后,需要事先对场景同步采集一组数据,用于确定广告植入的平面参数方程;在同一场景、相机位姿保持不变的情况下,该阶段仅且只需执行一次。
1、多相机***的搭建,标定和数据采集
多相机***的搭建:本专利对于相机型号无特殊要求,相机数量可以根据场景大小或者子弹时间的实际需求选择,利用搭建好的相机从不同角度同步采集一组RGB图像;本专利中使用40个IoI Industry相机搭建的***进行数据采集。图4为子弹时间常用相机阵列方式示意图。
多相机***的标定:标定,即是计算出相机的内部参数(Intrinsic Parameters)和外部参数(Extrinsic Parameters)。在本专利中使用的相机参数是由AGI软件标定。
2、特征匹配
特征检测:对输入图像进行特征检测,可以选择SIFT,SURF,ORB,AKAZE等算法;在本专利中使用的是AKAZE检测算法,检测图像特征点;
特征匹配:对相邻两幅图像的特征进行暴力匹配(Brute Force Matching),确定两幅图像匹配的特征点;
内点检测:暴力匹配后的特征可能存在外点(Outlier);本专利利用Cross-Ratio-Check方法去除错误匹配,即两幅图像中的特征描述子各作为QueryDescriptor和TrainDescriptor进行一次暴力匹配,将两组匹配结果中均满足比率阈值的匹配作为内点(Inlier)
3、三角测量
三角测量:根据相机内外参以及匹配的特征点坐标,即可确定该点对应的三维坐标;计算所有图像中特征的三维点,形成场景的稀疏点云。
4、平面拟合
随机抽样一致性算法(Ransac):从一组包含外点的点云中,通过迭代的方式估计出平面的数学模型。为找到所有存在的平面,每次找到平面后,将属于该平面的内点从点云中剔除;对剩余点云,再次执行Ransac迭代,搜索平面;直到剩余点云内点的数量小于一定阈值(比如10),停止执行Ransac算法。在本步骤中,可以得到三维点云中所有可能存在的平面集合S。
5、场景三维平面选取:
图像锚点选取:在本步骤中,选取指定视角图片,并在该视角图片中绘制检测到的特征点,拾取某一平面上的N个特征点;该过程由用户通过UI完成(一般可选三个点);特征点拾取完成后,可以同时确定该特征点的三维坐标(查询步骤3中的三角测量结果)
场景三维平面确定:当平面特征点确定后,将其三维坐标带入到集合S中的所有平面方程,按如下公式,计算损失:其中N为拾取的锚点数量,(A,B,C,D)为集合S中平面的参数。选取损失最小的平面作为指定平面。
阶段2:广告平面对齐及虚拟广告生成
在阶段1中,利用特征匹配、平面拟合和用户交互可以确定植入广告所在场景平面的参数方程;该过程可以在预处理阶段完成。在阶段2中,需要指定广告在平面上的植入位置,该位置由用户通过UI在某一视角的图像上进行选择,并以此计算其在场景平面上对应的三维点坐标;最后进行广告平面与场景的对齐及虚拟广告的生成。
1、数据准备
平面方程:该平面方程即为阶段1中确定的场景平面,其方程为平面的一般参数方程A·x+B·y+C·z+D=0,其中平面单位法向量np=(A,B,C);
拾取广告植入的位置:如图5所示,用户在指定的视角图像中,通过UI选择要植入广告的图像坐标点;当需要更改广告植入位置时,重新拾取图像点坐标即可;
广告图像,如图6所示。
2、计算广告植入的三维锚点
在已知相机内外参数、平面方程和锚点图像坐标条件下,可以计算出该点在平面上对应的三维坐标Pp=(xp,yp,zp)。其计算公式如下所示:
[R|t]为当前相机的外参,K为当前相机的内参,(u,v)为广告在当前视角
其中,
中的植入位置,(A,B,C,D)为场景平面方程参数。
3、广告平面与场景平面对齐
广告平面:广告平面是预设在世界坐标系中位于xy轴上的矩形;其中心位于世界坐标系的原点,长度为2,高度为2r(r为广告图像的高宽比)。因此,其法向量为na=(0,0,1),广告平面的四个角点pa1=(1,-r,0),pa2=(-1,-r,0),pa3=(-1,r,0),pa4=(1,r,0),广告平面的锚点Pa0=(0,0,0);
在本步骤中,需要计算广告平面与场景在三维空间中对齐需要的旋转和平移矩阵。根据场景平面的单位法向量np、广告平面法向量na、平面锚点Pp和广告平面锚点Pa,广告与场景平面对齐的旋转矩阵平移向量ta2p=pp,其中c=np·na,v=na×np,I为单位矩阵,[v]×为v的反对称矩阵;
为方便用户对模型进行调整,需要设置模型的尺度变换矩阵s和绕z轴旋转矩阵Rz,其中其中(sx,sy)为广告平面在xy轴上的缩放因子,α为绕z轴的旋转角度,均由用户通过UI根据实际需求调整。因此,总旋转矩阵平移向量/>
广告平面与场景平面对齐后,其角点坐标其中i∈{1,2,3,4};
该步骤由用户在生成最终虚拟广告前进行调试,当获取植入广告的合适尺度和角度后,则不需要继续执行该步骤。
4、单应性矩阵计算
重投影广告平面角点:在已知各相机的内外参数和广告平面角点三维坐标的条件下,即可计算这些角点在各个视角图像上的重投影坐标;
计算单应性矩阵:根据广告平面角点的投影图像点和广告图像角点,计算广告图像和各视角图像的单应性矩阵。
5、图像透视变换及合成
如图7所示,利用单应性矩阵,对广告图像进行透视变换;将变换后的广告图像叠加到实景图中。
以上详细描述了本发明的较佳具体实施例。应当理解,本领域的普通技术无需创造性劳动就可以根据本发明的构思作出诸多修改和变化。因此,凡本技术领域中技术人员依本发明的构思在现有技术的基础上通过逻辑分析、推理或者有限的实验可以得到的技术方案,皆应在由权利要求书所确定的保护范围内。
Claims (3)
1.一种应用于子弹时间的虚拟广告植入方法,其特征在于,包括以下步骤:
S1:场景指定平面检测,在所述步骤S1进行场景的三维重建,获取场景的稀疏三维点云,在所述稀疏三维点云中搜索平面,由用户选取期望植入广告的平面;步骤S1还包括:
S11、算法输入:从多目相机***同步采集一组图像,每个相机采集一帧图片;利用所述一组图像,进行相机标定,获取相机的内外参数;所述相机的所述内外参数及所述一组图像作为平面检测算法的输入;
S12、特征匹配:对所述一组图像进行特征匹配,获取两相邻图像的匹配特征点;
S13、三角测量:利用所述相机内外参数及相应的所述特征点图像坐标,进行三角测量,计算所述特征点在场景中的三维坐标,得到场景的所述稀疏三维点云;
S14、平面拟合:利用Ransac算法,拟合出所述稀疏三维点云中存在的所有平面;所述Ransac算法为:
从一组包含外点的点云中,通过迭代的方式估计出平面的数学模型;在所述数学模型中,每次迭代找到平面后,将属于该平面的内点从点云中剔除;对剩余点云,再次执行所述Ransac算法迭代,搜索平面;直到剩余点云内点的数量小于阈值,停止执行所述Ransac算法,得到三维点云中所有可能存在的平面集合;
S15、指定平面选取:用户在指定视角的图像中,通过UI选取待植入广告平面的图像锚点;根据该锚点,确定所述指定平面的参数方程,所述步骤S15还包括:
S151:图像锚点选取:选取指定视角图片,并在该视角图片中绘制检测到的特征点,拾取某一平面上的N个所述特征点;所述特征点拾取完成后,可以确定所述特征点的三维坐标;
S152:地平面确定:当所述平面特征点确定后,将其对应三维坐标带入到所有平面方程,按如下公式,计算损失:其中N为拾取的锚点数量,(A,B,C,D)为集合S中平面方程的参数,选取损失最小的平面作为指定平面;
S2:广告平面对齐及虚拟广告生成,指定广告在所述平面上的植入位置,所述位置由用户通过UI在某一视角的图像上进行选择,并以此计算其在场景平面上对应的三维点坐标;最后进行广告平面与场景的对齐及虚拟广告的生成,所述步骤S2还包括:
S21、算法输入包括待植入的广告图像、所述步骤S1中标定的相机内外参数、所述步骤S1中拟合的场景平面方程、指定待植入广告的图像锚点和采集需要植入广告的视频序列,所述步骤S21中:
所述平面方程即为所述步骤S15中确定的场景平面,其方程为平面的一般参数方程A·x+B·y+C·z+D=0,其中平面单位法向量np=(A,B,C);
所述广告植入的图像锚点,用户在指定的视角图像中,通过UI选择要植入广告的图像坐标点;当需要更改广告植入位置时,重新拾取图像点坐标即可;
S22、计算广告植入锚点的三维坐标:根据所述相机内外参数以及所述场景平面方程,计算需要放置广告平面的三维点坐标;
其计算公式如下所示,其中R,K,(u,v),t,(A,B,C,D)均为已知参数:
其中,[R|t]为当前相机的外参,K为当前相机的内参,(u,v)为广告在当前视角中的植入位置,(A,B,C,D)为场景平面方程参数;
S23、广告平面与场景平面对齐:根据广告平面锚点、广告平面法向量、场景平面法向量以及广告植入锚点的三维位置,计算广告平面与场景平面对齐需要的旋转矩阵和平移向量;设置所需要的调整广告尺寸和角度的变换矩阵;
所述广告平面是预设在世界坐标系中位于xy轴上的矩形;其中心位于世界坐标系的原点,长度为2,高度为2r,r为广告图像的高宽比;其法向量为na=(0,0,1),所述广告平面的四个角点为pa1=(1,-r,0),pa2=(-1,-r,0),pa3=(-1,r,0),pa4=(1,r,0),所述广告平面的锚点为Pa0=(0,0,0);
在所述步骤S23中,需要计算广告平面与场景在三维空间中对齐需要的旋转和平移矩阵;根据场景平面的单位法向量np、广告平面法向量na、平面锚点Pp和广告平面锚点Pa,广告与场景平面对齐的旋转矩阵平移向量ta2p=pp,其中c=np·na,v=na×np,I为单位矩阵,[v]×为v的反对称矩阵;
设置所述数学模型的尺度变换矩阵s和绕z轴旋转矩阵Rz,其中 其中(sx,sy)为广告平面在xy轴上的缩放因子,α为绕z轴的旋转角度,均由用户通过UI根据实际需求调整;因此,总旋转矩阵/>平移向量
所述广告平面与所述场景平面对齐后,其角点坐标其中i∈{1,2,3,4};
所述步骤S23由用户在生成最终虚拟广告前进行调试,当获取植入广告的合适尺度和角度后,则终止执行所述步骤S23;
S24、单应性矩阵计算:根据所述相机内外参数,将广告平面角点重投影到各视角下的图像,计算其对应的图像坐标,即重投影广告平面角点;根据广告平面角点的重投影坐标和广告图像的角点坐标,计算单应性矩阵;
S25、图像透视变换及合成:利用单应性矩阵对Logo图像进行透视变换,将变换后的图像和实景图像进行合成。
2.如权利要求1所述的应用于子弹时间的虚拟广告植入方法,其特征在于,所述步骤S12还包括:
S121、特征检测:对输入图像进行特征检测,使用AKAZE检测算法,检测图像特征点;
S122、特征匹配:对相邻两幅所述图像的特征进行暴力匹配,确定所述两幅图像匹配的特征点;
S123、内点检测:暴力匹配后的特征可能存在外点;利用Cross-Ratio-Check方法去除错误匹配,即两幅图像中的特征描述子进行一次暴力匹配,将两组匹配结果中均满足比率阈值的匹配作为内点。
3.如权利要求1所述的应用于子弹时间的虚拟广告植入方法,其特征在于,所述步骤S24中:
所述重投影广告平面角点,即在已知各所述相机的内外参数和所述广告平面角点三维坐标的条件下,计算所述广告平面角点在各个视角图像上的重投影坐标;
所述计算单应性矩阵,即根据所述广告平面角点的投影图像点和广告图像角点,计算广告图像和各视角图像的单应性矩阵。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010844356.9A CN111986133B (zh) | 2020-08-20 | 2020-08-20 | 一种应用于子弹时间的虚拟广告植入方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010844356.9A CN111986133B (zh) | 2020-08-20 | 2020-08-20 | 一种应用于子弹时间的虚拟广告植入方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111986133A CN111986133A (zh) | 2020-11-24 |
CN111986133B true CN111986133B (zh) | 2024-05-03 |
Family
ID=73443825
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010844356.9A Active CN111986133B (zh) | 2020-08-20 | 2020-08-20 | 一种应用于子弹时间的虚拟广告植入方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111986133B (zh) |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1144588A (zh) * | 1994-03-14 | 1997-03-05 | 美国赛特公司 | 一种将图像植入视像流的*** |
WO2011121117A1 (en) * | 2010-04-02 | 2011-10-06 | Imec | Virtual camera system |
CN102982548A (zh) * | 2012-12-11 | 2013-03-20 | 清华大学 | 多目立体视频采集***及其相机参数标定方法 |
CN105976399A (zh) * | 2016-04-29 | 2016-09-28 | 北京航空航天大学 | 一种基于sift特征匹配的运动目标检测方法 |
WO2019096016A1 (zh) * | 2017-11-14 | 2019-05-23 | 深圳岚锋创视网络科技有限公司 | 一种实现子弹时间拍摄效果的方法及全景相机 |
CN109842811A (zh) * | 2019-04-03 | 2019-06-04 | 腾讯科技(深圳)有限公司 | 一种在视频中植入推送信息的方法、装置及电子设备 |
CN110599605A (zh) * | 2019-09-10 | 2019-12-20 | 腾讯科技(深圳)有限公司 | 图像处理方法及装置、电子设备和计算机可读存储介质 |
CN111372122A (zh) * | 2020-02-27 | 2020-07-03 | 腾讯科技(深圳)有限公司 | 一种媒体内容植入方法、模型训练方法以及相关装置 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111986296B (zh) * | 2020-08-20 | 2024-05-03 | 叠境数字科技(上海)有限公司 | 一种用于子弹时间的cg动画合成方法 |
-
2020
- 2020-08-20 CN CN202010844356.9A patent/CN111986133B/zh active Active
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1144588A (zh) * | 1994-03-14 | 1997-03-05 | 美国赛特公司 | 一种将图像植入视像流的*** |
WO2011121117A1 (en) * | 2010-04-02 | 2011-10-06 | Imec | Virtual camera system |
CN102982548A (zh) * | 2012-12-11 | 2013-03-20 | 清华大学 | 多目立体视频采集***及其相机参数标定方法 |
CN105976399A (zh) * | 2016-04-29 | 2016-09-28 | 北京航空航天大学 | 一种基于sift特征匹配的运动目标检测方法 |
WO2019096016A1 (zh) * | 2017-11-14 | 2019-05-23 | 深圳岚锋创视网络科技有限公司 | 一种实现子弹时间拍摄效果的方法及全景相机 |
CN109842811A (zh) * | 2019-04-03 | 2019-06-04 | 腾讯科技(深圳)有限公司 | 一种在视频中植入推送信息的方法、装置及电子设备 |
CN110599605A (zh) * | 2019-09-10 | 2019-12-20 | 腾讯科技(深圳)有限公司 | 图像处理方法及装置、电子设备和计算机可读存储介质 |
CN111372122A (zh) * | 2020-02-27 | 2020-07-03 | 腾讯科技(深圳)有限公司 | 一种媒体内容植入方法、模型训练方法以及相关装置 |
Non-Patent Citations (2)
Title |
---|
2016里约***田径赛场虚拟跟踪定位***的应用解析――里约奥运田径赛场Ncam虚拟跟踪定位***的使用心得浅谈;冯涛;陈智民;;现代电视技术;20170415(04);全文 * |
基于联合特征匹配的多视角三维重建方法;李硕明;陈越;;计算机***应用;20161015(10);全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN111986133A (zh) | 2020-11-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111986296B (zh) | 一种用于子弹时间的cg动画合成方法 | |
CN108711185B (zh) | 联合刚性运动和非刚性形变的三维重建方法及装置 | |
CN109314753B (zh) | 使用光流生成中间视图的方法和计算机可读存储介质 | |
Kawai et al. | Diminished reality based on image inpainting considering background geometry | |
US6717586B2 (en) | Apparatus, method, program code, and storage medium for image processing | |
EP2930689B1 (en) | Method for rendering | |
US20030012410A1 (en) | Tracking and pose estimation for augmented reality using real features | |
Meilland et al. | A unified rolling shutter and motion blur model for 3D visual registration | |
CN110648274B (zh) | 鱼眼图像的生成方法及装置 | |
CN110458964B (zh) | 一种现实环境动态光照的实时计算方法 | |
CN108958469A (zh) | 一种基于增强现实的在虚拟世界增加超链接的方法 | |
CN111192308B (zh) | 图像处理方法及装置、电子设备和计算机存储介质 | |
JP2001274973A (ja) | 顕微鏡画像合成装置、顕微鏡画像合成方法、顕微鏡画像合成処理プログラムを記録したコンピュータ読み取り可能な記録媒体 | |
CN114913308A (zh) | 摄像机跟踪方法、装置、设备及存储介质 | |
CN113763544A (zh) | 图像确定方法、装置、电子设备和计算机可读存储介质 | |
CN111986133B (zh) | 一种应用于子弹时间的虚拟广告植入方法 | |
Inamoto et al. | Free viewpoint video synthesis and presentation of sporting events for mixed reality entertainment | |
CN115834800A (zh) | 一种控制拍摄内容合成算法的方法 | |
CN111260544B (zh) | 数据处理方法及装置、电子设备和计算机存储介质 | |
Malerczyk et al. | 3D reconstruction of sports events for digital TV | |
Kawai et al. | From image inpainting to diminished reality | |
JP2001222707A (ja) | 中間画像合成方法、中間画像合成装置、中間画像合成プログラムを記録した記録媒体 | |
Lee et al. | [POSTER] Geometric Mapping for Color Compensation Using Scene Adaptive Patches | |
CN113298868B (zh) | 模型建立方法、装置、电子设备、介质及程序产品 | |
JP2001256492A (ja) | 画像合成装置、画像合成方法、画像合成プログラムを記録したコンピュータ読み取り可能な記録媒体 |
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 |