倾斜摄影建筑物模型自动纹理重建

2023-10-13 12:16黄先锋
测绘学报 2023年9期
关键词:错位纹理单体

程 昫,葛 亮,张 帆,黄先锋

1. 武汉大学测绘遥感信息工程国家重点实验室,湖北 武汉 430079; 2. 天津市测绘院有限公司,天津 300381

建筑物是城市三维模型的重要组成部分[1]。无人机倾斜摄影能快速采集场景三维信息及纹理信息[2-3],通过多视图立体重建得到三角网格模型[4-6],是城市三维建模的重要手段。根据城市信息模型(CIM)基础平台建设要求,建筑物模型应具备精确的几何表达、正确的拓扑关系和清晰的纹理贴图[7-9]。目前,多数商业软件通过半自动化的方式进行单体化模型生产,由生产人员参考三角网格模型对城市建筑物结构进行提取。该过程涉及一些规则化与简化操作,破坏了模型几何的准确性,导致纹理映射过程中模型表面纹理与真实位置存在偏移,且不同视角的影像纹理偏移程度不一,进而形成明显的纹理错位和接缝现象。

现有纹理映射方法多针对来自于倾斜影像密集匹配点云或激光雷达点云表面重建的三角网格模型,其面片尺寸较小,模型几何误差较小,影像间的亮度、色调差异是形成可见纹理接缝的主要原因。文献[10—13]通过图割优化纹理影像在各三角面上的分配,减少接缝数量,利用融合方法消除不同影像之间的色差,但对模型与影像之间的映射准确性要求较高。考虑到相机参数、模型坐标的解算误差带来的纹理偏移,文献[14—16]通过调整三角网顶点绑定的纹理坐标,重新接合断裂的纹理轮廓线,但通常需要人工指定调整点位,或对匹配点的数量及分布有一定要求。文献[17—19]将纹理坐标改正量加入全局优化的目标函数,在纹理映射的同时解算改正值,但计算成本高且不适用于视角变换过大的航空摄影。

不同于三角网格模型,建筑物单体化模型由分段平面构成。一方面由于平面尺寸较大,单个平面常常无法在单张影像上完整成像,或无法从单张影像获取最优视角下的纹理;另一方面由于几何结构简化,单体化模型表面纹理接缝处的错位往往更严重,且与接缝位置有一定关联。一些研究同样注意到建筑物模型纹理映射过程中的错位情况,文献[20—21]试图重新解算更精确的相机内外参数和模型,但相机参数误差并非纹理错位的主要原因,而恢复复杂的局部几何结构与模型矢量化的过程矛盾。文献[22—24]通过图像配准方法进行错位对齐,但需要人工量测配准控制点。

针对上述问题,本文提出一种针对倾斜摄影建筑物模型的自动纹理重建方法:通过优化纹理影像选择过程、增加纹理块配准步骤,解决单体化模型几何结构不准确带来的纹理错位问题,从而保证接缝两侧的纹理在几何、色彩两方面自然过渡。

1 本文方法

倾斜摄影建筑物模型自动纹理重建方法流程如图1所示,包含顾及模型误差的纹理影像选择、线引导的纹理块配准和匀光匀色3个关键步骤。流程所需输入为影像及内外参数、场景三角网格模型和手工编辑的建筑物单体化模型,其中单体化模型经法向聚类成分段多边形平面。纹理影像选择的过程充分考虑了几何建模误差对纹理映射的影响,通过约束模型表面纹理分块边界的位置,减轻接缝两侧的错位程度。随后在纹理块配准过程中,修正跨接缝的断裂直线结构,最小化纹理错位形成的可见接缝。算法的具体步骤如下所述。

图1 基于多视倾斜影像的建筑物单体化模型自动纹理映射流程Fig.1 Flowchart of texture mapping

1.1 顾及模型误差的纹理影像选择

倾斜影像数据冗余度大,同一栋建筑往往出现在几十至上百张影像中。由于像幅限制、遮挡等因素,单张影像往往无法覆盖整个建筑物模型,需要选择多张能完整覆盖模型的合适影像进行纹理映射。为便于说明,定义符号S表示全部影像的集合,冗余度较高;V为用于纹理映射的影像集合,保证模型表面每处有且仅有一张纹理影像来源,其中V⊆S。定义纹理映射质量函数Q,在建筑物模型M确定的情况下,应当选择合适的影像集合V保证纹理映射质量最优。该过程抽象为以下数学问题

(1)

建筑物单体化模型往往由分段平面构成,模型纹理质量可视作全部平面的纹理质量之和。定义F为单个模型平面,建筑物模型M={F1,F2,…,Fn},则有

(2)

1.1.1 纹理质量评价

对于单个平面F,用于纹理映射的影像集合V={v1,v2,…,vn},则平面的纹理映射质量可近似为各影像纹理映射质量之和

(3)

式中,v为单张影像;q(F,v)为单张影像的纹理质量评价函数。

过曝欠曝、失焦模糊等因素会造成影像质量下降,同时观测视角、拍摄距离的变化也会对映射效果造成影响。纹理映射应当选择曝光合适、定焦清晰、正视拍摄主体且距离合适的影像,以保证纹理清晰、变形小且色彩自然。将q(F,v)简记为q,定义影像质量因子qφ、视线夹角因子qα、分辨率因子qμ和完整性因子qκ

q=qφ·qα·qμ·qκ

(4)

(5)

(6)

(7)

(8)

式中,φ(v)为影像可视区域灰度值的加权熵。基本形式的熵值反映了影像的信息量,利用像素点灰度值与128(灰度范围中值)的差构造权值,对过曝或欠曝的影像熵值进行惩罚,提高了影像评价因子qφ对曝光条件的敏感度;α(F,v)为光线与模型法向的夹角值,该值越小,视线越正;μ(F,v)为被观测的平面区域与影像可视区域的面积之比,该值越小,影像拍摄距离越近,纹理分辨率越高;κ(F,v)为被观测的平面区域与平面总面积之比,该值越大,影像观测越完整;τ为比例常数,限定了各因子数值范围,同时具备加权作用。

由遮挡检测[11]获得模型平面在各影像上的可视范围。

1.1.2 模型平面分割

一些商业软件将模型平面的纹理来源限定为单张影像,将纹理影像选择过程当作标签(image labeling)问题,这种处理方式并不合理,因为模型平面可能不存在完整观测的影像。即使观测完整,由于倾斜影像近端到远端分辨率差异过大,单张影像映射生成的纹理内部变形程度不一,同样影响视觉效果。基于上述考虑,本文预先对建筑物单体化模型各平面进行分割,采用粒度更小的单元进行纹理影像选择,消除面片尺寸的影响,使得单个平面可以综合多张影像的纹理信息。这种分割并不改变模型的几何结构。

考虑到模型几何建模的误差能反映相应区域纹理映射的错位程度,本文在平面分割的过程中引入单体化模型的几何误差,对纹理接缝可能产生的位置进行约束。如图2所示,由建筑物单体化模型和Mesh模型的贴合程度来评估单体化模型的几何误差。将单个三角形投影至栅格化后的模型平面,顶点垂距为该点的几何误差。垂点坐标光栅化后,投影区域内部的几何误差近似为顶点垂距的均值。当多个三角形投影至平面同一栅格点时,更新栅格值为当前最小垂距。该步骤事先并不判断哪些三角形对应当前平面,每次投影全部三角形,最终得到模型平面的二维浮点数矩阵。借鉴现有的图像分割算法[25]将平面划分成若干个超像素区域。

图2 单个平面的几何误差评估及分割过程Fig.2 Geometric error evaluation and segmentation for a single surface

1.1.3 纹理影像选择

多片纹理映射在模型表面形成多处接缝。不准确的模型结构导致接缝处纹理几何过渡的不连续,影响单体化模型纹理映射效果。纹理影像选择过程中,一方面要保证模型表面纹理分配的平滑性,减少接缝数量,另一方面还需考虑接缝位置对纹理映射效果的影响,尤其对于单体化模型而言,当接缝出现在误差较大的区域时纹理错位往往更严重。

若直接为各单元指定最佳影像,会导致纹理分块细碎且无法约束接缝位置。若由图割方式同时优化接缝的数量和位置,运算成本较大。本文在贪心算法的基础上进行改进,由初步分割结果进行聚类,聚类过程中分割单元的边界逐步远离纹理错位严重的区域,然后优先为大尺度的分割单元指定最佳影像,达到约束接缝数量和位置的目的。

聚类过程如图3所示。首先统计超像素内误差值>τe的像素比例r,将r>τr的超像素标记为种子点。由种子点出发进行区域生长,逐次合并邻接的非种子超像素,最后整个平面视作最大尺度的超像素。分割边界随尺度增大而逐步远离误差大的区域。

图3 种子区域及聚类过程Fig.3 Hierarchical clustering

算法1展示了完整的纹理影像选择过程。首先按式(4)函数值q(F,v)对观测影像排序,然后对分割结果聚类,得到模型平面的树状结构表示。由根结点出发广度遍历,逐层使用贪心算法选择纹理影像。为保证层与层之间的一致性,非根结点优先遵循父结点的选择结果。最后,将绑定相同影像的连通区域合并成纹理块,相邻纹理块之间形成接缝线。使用道格拉斯-普克算法,将接缝线离散为少量点顺序表示的折线段。

算法1:纹理影像选择算法

输入:模型平面F及影像集合S={v0,v1,…,vn-1},三角网格模型Mesh

输出:纹理分块texturepatches,接缝线seamlines

S←SortbyQualityScore(S); ∥影像排序

EM←ErrorAssessment(F,Mesh); ∥误差评估图

LM←Segmentation(EM); ∥二维分割图

pyramid←HierarchicalClustering(LM); ∥层次聚类

for rank ∈ pyramid do ∥各尺度分割结果

for node ∈ rank do ∥当前尺度下的超像素区域

if node.OfView≠-1 then

continue;

forv∈Sdo ∥顺序遍历纹理影像

if (a(F,v)>τa‖μ(F,v)>τμ) then

∥ 增加角度、分辨率的判断

continue;

if node.CompleteViewed(v) then

∥完整可视

node.OfView =v;

break;

for node ∈ pyramid.FloorRank do

texturepatches←合并绑定同一影像的超像素区域

seamlines←相邻纹理块边界形成接缝

return texturepatches, seamlines;

1.2 线引导的纹理块配准

纹理影像选择过程并未直接处理错位,因此还需进一步配准来完成对齐处理。由于多数接缝处于弱纹理的墙面区域,接缝两侧的点特征数量少且不稳定,本文利用建筑表面相对丰富的直线特征构造刚性配准模型,对齐跨纹理块的线条错位。

1.2.1 影像线匹配

对于单条接缝,接缝两侧的纹理块各自对应一张纹理影像,匹配阶段即在两张影像上寻找同名线特征。由几何、灰度相似性建立匹配约束得到候选匹配,并通过交叉验证(cross check)和比率测试(ratio test)剔除错误匹配。

将接缝线投影到影像上,利用LSD算法[26]完成初步提取,仅保留和接缝线相交的线特征。由于窗框等人工直线结构具有一定宽度,往往能提取到距离过近的两条平行线特征,需要加入灰度信息进行区分。最终形成包含点位、方向和灰度特征的线特征描述子

line={P,Q,lbd}

(9)

式中,P、Q为线段端点;lbd为线段的灰度特征描述[27]。

如图4所示,参数化的模型平面确定了影像之间的单应变换H,则左片线特征映射到右片的过程为P′=H(p)。记线段的方向矢量为PQ,单位法向为n,则两线特征的夹角、距离及描述子距离为

图4 平面单应变换Fig.4 Planar homography

θ=arccos(PQ,P′Q′)

(10)

d1=max(P′P·n,Q′P·n)

(11)

d2=euclidean(lbd′,lbd)

(12)

式中,P′、Q′分别为映射后端点;lbd′映射前后不变,线段距离视作点到直线距离的最大值。设置绝对阈值τθ、τd1、τd2,通过比较线段夹角、距离和描述子距离产生候选匹配,以描述子距离决定最佳匹配。

为剔除错误匹配,利用次佳匹配与最佳匹配的描述子距离之比反映匹配的稳健程度,仅保留比值大于0.5的匹配。对右片进行同样操作,保留共同匹配。为提高匹配召回率,对于未匹配的线段重复上述步骤,直至不再产生新的匹配。

1.2.2 纹理块配准

利用影像间的同名线特征建立模型表面纹理块的全局刚性配准模型,对齐接缝两侧的错位。为简化计算,配准基元退化为同名点对,配准变换为各纹理块的整体平移。如图5所示,线特征与接缝线的交点投影至模型平面形成匹配点对,从而将影像间的匹配关系转移到模型平面。统计各接缝线上的匹配点对,将包含最多匹配点对的纹理块当作基准,其余纹理块相对基准块平移。

图5 同名点对构建配准模型Fig.5 Registration based on matched points

每对匹配点可列立如下误差方程

εij=Δxi-Δxj-(xi-xj)

(13)

式中,x为匹配点坐标;Δx为点所在纹理块的位移矢量;i、j为纹理块的索引。基准块包含的匹配点位移矢量为0。

合并全部匹配点对的误差方程,列立全局最小二乘的矩阵表示形式

Ε=A·ΔX-b

(14)

(15)

式中,系数矩阵A的行数为匹配点对数;线性方程的解ΔX*代表非基准纹理块的位移矢量;Ε为匹配点对的残差。

1.3 匀光匀色

对于模型表面任意一点x的着色过程如下:判断点x所在的纹理块,修正点位至x′=x-Δx*,Δx*为式(15)中求解的未知向量ΔX*的数值元素,由新坐标重投影至对应的纹理影像,双线性采样RGB值。

不同时相、光照条件下的影像在亮度和色调上存在较大差异,同时遮挡带来的阴影使得同一张影像内部也有亮度不均匀的现象。为保证模型表面色彩的一致性,依次进行全局和局部匀光匀色处理:将颜色值由RGB空间转入YCrCb空间,分离色调和亮度。利用接缝线上的色调与亮度差异构建最小二乘方程,进而计算各纹理块的亮度和色调改正值,完成全局颜色调整。为各接缝生成一定宽度的缓冲区,在缓冲区内利用泊松融合[28]进行局部匀光匀色。最终重新转换回RGB空间。

2 试 验

试验使用某市CIM试验区的倾斜航摄数据进行测试,其中包含住宅、办公楼、体育馆等多种典型城市建筑。采用本文方法对5种不同外观、复杂程度的建筑物单体化模型进行纹理映射,从定性和定量两个角度对中间步骤及最终结果进行分析,验证本文算法的有效性。

2.1 数据准备

倾斜影像采集设备为Sony A7R2组成的五拼倾斜相机,相机画幅为7952×5304像素,空三入网照片数10 019张,入网率99.93%,单张照片连接点平均数47,平均地面分辨率约0.023 m,检查点精度误差≤6 cm。利用商业软件进行空中三角测量和核心区域的重建,重建结果如图6所示,黄色三角形标记了试验使用的5处建筑物。

图6 核心区域重建结果Fig.6 Reconstruction results of core area

根据城市信息模型(CIM)Ⅲ级模型标准,通过人工交互的方式完成测区内建筑物单体化模型生产,要求建筑物单体化模型的矢量包围盒应同Mesh模型表面贴合,建筑立面的阳台、飘窗,屋顶重要装饰、女儿墙等附属部件需进行细节建模,平面/高程精度≤0.3 m。图7展示了5处建筑物的原始Mesh模型和人工编辑后的建筑物单体化模型。

图7 建筑物Mesh模型和单体化模型Fig.7 Mesh and reality CSG building model

2.2 结果与分析

为了直观评价不同影像的纹理映射效果,如图8所示,将影像映射至模型A立面,纹理映射效果均不同程度地受到观测角度、完整性、分辨率、图像过曝和离焦模糊的影响,由此归纳相关影响因子。纹理质量评价时,各因子的比例常数可由经验指定或从数据本身获取,试验中τφ取各影像均值,τμ取平均地面分辨率,τα=30°,τκ=1。

图8 不同影像生成的模型A立面纹理Fig.8 Model A façade texture from different images

如图9所示,模型B立面内部生成的接缝线被约束在模型几何误差小的区域。一方面,接缝处的几何误差直接影响纹理映射偏差,另一方面几何误差小的区域多为弱纹理的墙面,往往不容易察觉错位。因此,引入单体化模型几何误差优化接缝位置。试验中,利用平均地面分辨率栅格化模型平面,由超像素分割算法SLIC[25]进行二维分割,分割尺寸参数为40,聚类种子点相关阈值τe=0.2 m,τr=0.8。

图9 模型B立面的接缝线Fig.9 Seamline on model B façade

以模型C为例进一步说明。如图10所示,模型C的大尺寸立面存在a、b、c 3处遮挡,没有一张完整观测影像。图11为该立面用于纹理映射的3张影像及对应纹理,影像部分已裁剪包含该立面的兴趣区域,立面左右两侧和底部均受到不同程度遮挡。图12为该立面生成的接缝线,本文方法在影像的重叠区域内生成了几何误差小的接缝路径,有效减轻了接缝处的错位程度。

图10 模型C立面Fig.10 Model C façade

图11 模型C立面的纹理影像Fig.11 Texture images of model C façade

如图13所示,具有一定宽度的人工直线结构往往能提取出两条距离过近的平行线段。由于模型和相机参数误差,仅仅利用夹角、距离等几何约束会导致跨接缝的纹理线上下边缘发生错误匹配,需要借助灰度梯度变化的方向进行区分,因此匹配过程中加入LBD灰度描述子。试验中,夹角阈值τθ=3°,线段距离阈值τd1=10像素,描述子距离阈值τd2=100。

图13 线特征匹配Fig.13 Line feature matching

试验选取的5处建筑分别包含大尺寸立面结构、自遮挡结构、主附楼结构及曲面结构,模型复杂程度和受遮挡程度不一。图14为采用本文方法进行纹理映射后的整体效果。为进一步说明错位对齐的必要性,试验对直接映射、仅匀色及配准后匀色3种情况下的纹理效果进行比较,图15为含接缝且有错位的代表性区域。

图14 整体纹理Fig.14 Overall texture

如图15所示,截取的局部区域进行直接映射时接缝处均存在一定程度的纹理错位,其中图(e)、(f)两处错位较为严重,这是由于该区域周围存在镂空结构,受遮挡较多,相邻纹理块对应的影像视角差异大,放大了模型几何误差造成的纹理映射偏差。依靠匀色操作仅隐藏轻微程度的错位,多数情况下匀色后的错位现象依然存在。图15第3行为本文方法得到的纹理映射结果,通过对接缝处的几何错位和色差进行调整,隐藏了原本可见的接缝。

接缝两侧同名点对之间的距离可以反映该处的纹理错位程度。为定量评价错位对齐效果,以模型D为例,统计配准前后模型表面的同名点对距离。模型D结构复杂且遮挡严重(图7),包含1368个顶点、916个三角面和192个分段平面。纹理映射过程中,影像上产生489组影像匹配线对,映射至模型表面产生匹配点对,可以量测绝对尺度下的距离。如图16所示,绿色圆圈为配准前各点对的距离,通过式(15)解算平移量可得到配准后的点对距离(红色三角形表示)。配准前x、y方向的距离均值为0.039 2 m和0.040 4 m,配准后为0.022 3 m和0.020 5 m。

图16 配准前后匹配点对距离Fig.16 Distance between matching point pair

3 结 论

现有纹理映射方法多针对三角网格模型,对于建筑物单体化模型,模型几何误差导致的纹理错位及大尺寸平面内部的纹理分块,对纹理映射提出新的挑战。本文提出了一种基于多视倾斜影像的建筑物单体化模型自动纹理映射方法:通过引入模型几何误差对纹理影像选择过程进行优化,约束接缝生成位置;利用影像同名线特征解算刚性配准变换,修正模型与纹理影像间不准确的映射关系。试验表明,该方法有效解决了建筑物单体化模型纹理映射过程中的错位问题,显著改善了纹理映射效果,对于提高建筑物单体化模型纹理重建步骤的自动化程度具有重要意义。

猜你喜欢
错位纹理单体
有趣的错位摄影
基于BM3D的复杂纹理区域图像去噪
使用纹理叠加添加艺术画特效
单体光电产品检验验收方案问题探讨
TEXTURE ON TEXTURE质地上的纹理
避免“错位相减,一用就错”的锦囊妙计
消除凹凸纹理有妙招!
相变大单体MPEGMA的制备与性能
巨无霸式医疗单体的选择
类姜黄素及其单体对β-内分泌酶活性的抑制作用