DiLiGenT光度立体数据集

简介

”DiLiGenT“ 光度立体数据集,全称为 calibrated Directional Lightings, objects of General reflectance, and ‘ground Truth’ shapes (normals),即使用标定过的定向光源,对一些具有常见反射率特性的物体进行光度立体拍摄,并获取到精确的物体表面法向信息作为真值的这样数据集。该工作由施伯鑫团队耗时2年多完成,主要目的在于提供一份标准的数据集,用于评估非朗伯材料(non-Lambertian materials)和未知照明条件下(unknown lightings)的光度立体计算方法,分析他们的优点和局限性。

该数据集早期发布在CVPR16上,论文名为 ”A Benchmark Dataset and Evaluation for Non-Lambertian and Uncalibrated Photometric Stereo“,网页版见https://www.cnblogs.com/gshang/articles/18447361。

正式发布在 IEEE,引用如下:

Boxin Shi, Zhipeng Mo, Zhe Wu, Dinglong Duan, Sai-Kit Yeung, and Ping Tan, "A Benchmark Dataset and Evaluation for Non-Lambertian and Uncalibrated Photometric Stereo", In IEEE Transactions on Pattern Analysis and Machine Intelligence (TPAMI), Volume 41, Issue 2, Pages 271-284,2019. 
  • PDF:https://ieeexplore.ieee.org/document/8281537
  • 补充材料:https://drive.google.com/open?id=1cf3uYTTTfS5ZyCvj2agdmVsmtAcTZpX2

根据以上资料,整理了数据集制作过程,以及数据集如何使用。

数据集制作过程

被摄物挑选

在挑选被摄物时,为满足评估的全面性。从表面双向反射率分布特性(BRDF, bidirectional reflectance distribution function)和表面形貌复杂性两个角度进行筛选,一共挑选得到了10个物件。

image-20241005160300296

BDRF特性 Ball Cat Pot1 Bear Pot2 Buddha Goblet Reading Cow Harvest
diffuse
(漫反射)
rough surface
(表面粗糙)
strong and sparse specular spikes
(强而稀疏的镜面尖峰)
broad and soft specular lobes on uniform
(均匀上宽而柔和的镜面反射波瓣)
spatially-varying materials
(空间变化的材料)
with metallic paint on mostly uniform
(金属漆基本均匀)
spatially-varying
(空间变化)
表面形貌特性 Ball Cat Pot1 Bear Pot2 Buddha Goblet Reading Cow Harvest
simple sphere
(简单球体)
smoothly curved surfaces
(光滑的曲面)
smooth surfaces with local details
(具有局部细节的光滑表面)
surfaces with complicated geometry
(具有复杂几何形状的曲面)
delicate shapes with concave parts
(带有凹形部件的精致形状)

相机选型

拍摄所使用的相机型号为 Point Grey 公司生产的 GRAS-50S5C-C ,分辨率为 \(2448 \times 2048\);搭配 50 mm 镜头。

image-20241005161242799

所有被摄物体直径约为20cm,放置在距相机约1.5m处以近似获得正投影效果。

为了避免相互反射,所有图像都在暗室中记录,除了目标物体外,所有物体都用黑布覆盖。对于每种照明条件,我们在不同曝光时间下拍摄四张图像并将它们组合起来以获得单个输入 HDR 图像,以便也可以精确存储高镜面观察结果。我们的数据捕获的一组典型曝光时间设置是 {20, 40, 70, 100} ms

光源制作

大多数非朗伯方法需要大约 100 个不同照明的图像,因此将96个白色LED灯按照 \(12 \times 8\) 排列成网格,可实现 \(74.6° \times 51.4°\) 拍摄角度覆盖。

拍摄

在拍摄过程中,光源固定,相机位于其中心。其中测试数据集是在仅改变拍摄角度的条件下获得的。

坐标系

这里统一使用相机坐标系,并将\(Z\)方向与视角对齐,即 \(\mathbf{v} = [0,0,1]^{\top}\)

\(\mathbf{n}\) : 表面法向量

\(\mathbf{l}\) : 光源方向向量

\(\mathbf{h}\) : 角平分线向量(向量 \(\mathbf{l}\) 和 向量 \(\mathbf{v}\) 的角平分线)

\(\theta_h\) : 向量 \(\mathbf{n}\) 和向量 \(\mathbf{h}\) 的夹角

\(\theta_d\) : 向量 \(\mathbf{h}\) 和向量 \(\mathbf{l}\) (或者向量 \(\mathbf{v}\) )的夹角

image-20241005174206010

光源标定

照明强度标定

使用 Macbeth white balance chart 进行光源强度标定。

光源方向标定

在传统的光度立体光源方向标定方法中,假设了光源为固定照明方向,并且相机成像为正交投影。通过识别图像中铬球(镜面反射)的镜面反射点(图中最亮的亮斑处即为反射点)来计算该处的表面法线。然后根据反射定律,假设该点的表面法线平分了观察方向和光源方向之间的角度,由此推出光源方向计算公式为:

\[\mathbf{l} = 2(\mathbf{n}^{\top}\mathbf{v})\mathbf{n} - \mathbf{v} \]

但作者认为这样的标定仍不够精确,因为实际成像过程是透视变换,而非正交投影。因此,作者基于 “点光源照明和透视相机模型” 来重新标定光源方向。

image-20241006171859197

求解步骤可以概括为:

1)计算相机坐标系下的铬球中心点 \(\mathbf{C}\) 的三维坐标;

2)优化光源到相机坐标系的变换矩阵 \((\mathbf{R},\mathbf{T})\) 使得所有光源到其理论光源方向直线的距离最小;

详细推导过程如下:

已知光度立体相机内参 \(K\) , 铬球半径 \(r\) ,铬球镜面反射点在相机坐标系下的坐标 \(\mathbf{x}\) , 则该位置的观察方向为

\[\mathbf{v} = \mathbf{K}^{-1}\mathbf{x} \]

铬球中心点 \(\mathbf{C}\) 到经过该点的直线距离为 \(r\),即

\[\left \| {\mathbf{C} - \mathbf{v}\mathbf{v}^{\top} \mathbf{C}} \right \| = r \]

将图像中的所有椭圆上的点代入上式中,即可求得铬球中心点 \(\mathbf{C}\) 的三维坐标。

在上图中,铬球表面的亮斑在相机坐标系下的三维坐标为 \(\mathbf{P}_j\) , 其在图像中对应的像素坐标为 \(\mathbf{p}_j\) ,则过 \(\mathbf{p}_j\) 的光线为 \(\mathbf{K}^{-1}\mathbf{p}_j\) , \(\mathbf{P}_j\) 是由光线 \(\mathbf{K}^{-1}\mathbf{p}_j\) 与铬球相交得到的。而铬球表面的点坐标由 球体中心点 \(\mathbf{C}\) 和铬球半径 \(r\) 决定的。

假设所有光源的世界坐标集合为 \(\{\hat{\mathbf{S}}_1, \hat{\mathbf{S}}_2, \cdots,\hat{\mathbf{S}}_{96} \}\),因为这些灯固连在一起,因此经过某个特定的 \(\{ \mathbf{R}, \mathbf{T}\}\) 变换,转换到光度立体相机坐标系,得到 \(\{ \mathbf{S}_1, \mathbf{S}_2, \cdots, \mathbf{S}_{96} \}\)。即 $\mathbf{S}_j = \mathbf{R}\hat{\mathbf{S}}_j+\mathbf{T} $ 。

则可定义如下代价函数:

\[f(\mathbf{R},\mathbf{T}) = {\sum_{j=1}^{96}} \text{dist}(\mathbf{R}\hat{\mathbf{S}}_j+\mathbf{T}, \mathbf{l}_j, \mathbf{P}_j) \]

其中,方向向量 \(\mathbf{l}_j\) 由 镜面反射点 \(\mathbf{P}_j\) 处,\(\mathbf{K}^{-1}\mathbf{p}_j\) 关于表面法向量 \(\mathbf{n}_{\mathbf{P}_j}\) 的反射。其中距离函数 \(\text{dist} (\mathbf{S}, \mathbf{l}, \mathbf{P})\) 定义为点 \(\mathbf{S}\) 到经过 \(\mathbf{P}\) 且方向向量为 \(\mathbf{l}\) 的直线的距离的平方。即:

\[\text{dist} (\mathbf{S}, \mathbf{l}, \mathbf{P}) = \left \| { \mathbf{S} -\mathbf{P} - (\mathbf{l}\mathbf{l}^{\top})(\mathbf{Q} - \mathbf{P})} \right \| \]

这是一个非线性最小二乘问题,可以通过 Matlab 函数 lsqnonlin 来求解。

这种对所有光源同时求解比逐个求解单一光源具有更好的稳健性,因为在设计光源支架时,每个光源的位置都是精确设计了的。

表面法向量真值获取

使用结构光扫描设备恢复物体形貌,所使用的仪器为 Rexcan CS 搭配 TA300 转台。

image-20241006161948726

该结构光设备的点云间距在 [0.035, 0.2] mm 以内,表面噪声低于 0.01 mm。扫描仪搭载了两个 200 mm 的镜头,其 FOV 分别为 \(150° \times 105° \times 185°\) (宽、高、对角线);这样的镜头组可以实现 0.097 mm 的点云间距扫描效果。转盘的直径为 30 cm ,被摄物的直径约为 10 cm ,因此可以放置在旋转台中心,并完全在扫描仪相机的FOV 中。

转盘可以执行±180°旋转和±40°摆动两个方向的运动。通过编程使其以20°的旋转步长和10°的摆动步长移动,因此,在每一轮扫描任务中,物体会自动扫描 \(18 \times 9 = 162\) 次。与扫描仪关联的 eZScan 7 软件对所有扫描执行自动配准,并将它们合并为一个完整的网格。我们从扫描仪的输出中检查配准误差的直方图,并观察到平均距离通常在 0.01mm 的数量级。考虑到我们的物体大小约为 10 cm,配准误差足够低,可以为我们提供足够精确的形状。在扫描之前,我们会对 (READING) 和 (HARVEST) 等高镜面物体进行喷涂。最后,我们获得了 3D 网格,其中从正面视图没有观察到可见的孔或凸起,用于表面法线计算。

形状和图像对齐

通过扫描仪获取到的物体三维信息以及表面法向量信息是在扫描仪相机坐标系下的,而理论的表面法向量真值应该在光度立体相机坐标系下,因此二者需要对齐。作者通过 Meshlab 软件来实现对齐操作。

通过 Meshlab 软件提供的UI交互,可以将扫描得到的参考法线贴图与广度立体图像进行对齐(主要为旋转、缩放、平移)到大致一致,然后使用自动对齐算法进行精确计算,使其收敛到一个稳定的解,则认为已对齐。

为了验证这种对齐方法的有效性,作者测试了斯坦福大学3D扫描库中的几个形状,测试发现这种方法下,对齐结果和真实发现贴图之间的平均角度误差大约为1°(对于BUNNY这类光滑表面);但是对于HAPPY BUDDHA10这类复杂表面,误差则大于3°。但是,真实数据包含来自相机校准、镜头畸变和其他意外来源的噪声,这些也是误差的源头。通过对比发现,对于深度变化较大的对象(尤其是POT1、POT2和BUDDHA),即使提供了较好的初值,对齐结果也不是最优的。因此,必须根据自动对齐结果,以 Meshlab 允许的最小步骤小心旋转和平移来手动调整 3D 形状。在完成一个步骤的手动操作后,我们通过仔细检查两个法线图上的每一个小特征,比较从对齐形状渲染的法线图和参考法线图,直到所有部分都以亚像素精度对齐。

image-20241006165210573

表面法线误差计算

作者采用了基于角度误差的统计指标,用于评估各类光度立体的表现。

在图像中,对于每一个像素,都可以通过算法计算出其表面法向量 \(\mathbf{n}_0\) , 其与法向量真值 \(\mathbf{n}\) 之间的角度误差可以表示为 \(\arccos(\mathbf{n}_0^{\top} \mathbf{n})\) ,使用角度制单位计算。

对整张图计算平均角度误差,并使用箱线图统计误差的最小值、最大值、中位数、第一四分位数、第三四分位数。

数据集使用

在官方网站中,一共提供了如下几份数据集和相关资料:

名称 大小 说明
DiLiGenT.zip 850MB 光度立体数据集
DiLiGenT_Test.zip 759MB 光度立体测试数据集,不提供表面法向量真值
shapeToImageAlignmentToolbox.zip 8MB 执行形状到图像对齐并将网格渲染为法线贴图的代码和说明
ACLSfitBRDFzip 502MB 使用图像数据、校准照明和“地面实况”法线提供 BRDF 拟合结果。还提供了使用拟合的 BRDF 重建图像的示例代码
PointLight.zip 9KB 光源位置和相机内参矩阵,用于点光源模型/透视相机模型

DiLiGenT

压缩包目录结构如下:

├─estNormalNonLambert
├─estNormalUncalib
├─pmsData
│  ├─ballPNG
│  ├─bearPNG
│  ├─buddhaPNG
│  ├─catPNG
│  ├─cowPNG
│  ├─gobletPNG
│  ├─harvestPNG
│  ├─pot1PNG
│  ├─pot2PNG
│  └─readingPNG
├─sampleCodeBaseline
└─sampleCodeEvalNormal
  • pmsData。 所挑选的十个对象,在96个不同光源照明下拍摄所得的16位图像,分辨率为 \(612 \times 512\) , 物体的掩模图(mask.png),光源方向信息 (light_directions.txt,\(3 \times 96\) , 每一行作为一个单位矢量) ,光源强度(light_intensities.txt,\(3 \times 96\) , 每一行代表RGB通道;在执行光度立体前,需要按通道划分这些强度值来对图像进行归一化),文件夹中还提供了所有图像文件名(filenames.txt), 表面法向量真值mat文件(Normal_gt.mat),以及表面法向量的RGB渲染图像(Normal_gt.png)。
  • sampleCodeBaseline。使用“DiLiGenT”数据集加载图像并运行基线光度立体算法(简单线性最小二乘法)的示例。
  • estNormalNonLambert/ estNormalUncalib。 使用最先进的非朗伯/未标定光度立体算法,对 DiLiGenT 数据集进行结算,所获得的各个物体表面法向量mat文件。
  • sampleCodeEvalNormal。加载'estNormalNonLambert'/'estNormalUncalib'中的结果并计算误差统计数据的示例代码(基于每像素角度误差并使用箱须图进行可视化);这里的代码再现了论文的图 2/4

DiLiGenT_Test

压缩包目录结构如下:

├─estNormalNonLambert
├─estNormalNonLambertErrMap
├─estNormalUncalib
├─estNormalUncalibErrMap
├─pmsData
│  ├─bearPNG
│  ├─buddhaPNG
│  ├─catPNG
│  ├─cowPNG
│  ├─gobletPNG
│  ├─harvestPNG
│  ├─pot1PNG
│  ├─pot2PNG
│  └─readingPNG
└─sampleCodeBaseline

与DiLiGenT类似,但不提供面法向量真值mat文件(Normal_gt.mat),而是提供每个像素角度误差图和统计数据角度午餐。测试数据集包含在相同变化的光照条件下与主数据集中的#1--#9相对应的九个对象,但它们是从不同的视点拍摄的。

  • pmsData。图像和光照格式与主数据集相同,但未提供“Normal_gt.mat”和“Normal_gt.png”。

  • sampleCodeBaseline / estNormalNonLambert / estNormalUncalib。与主数据集具有相似的内容。

  • estNormalNonLambertErrMap / estNormalUncalibErrMap。提供了估计法线与“地面实况”的逐像素角度差异图(PNG 图像);每个文件名末尾的数字是平均角度误差。同一文件夹中还提供了错误统计信息(如 EMF 图像中的盒须图,详细信息请参阅我们的论文)

基准数据集测试结果

DiLiGenT数据集

image-20241006191603944

*: 单元格中的数据是平均角度误差(角度制)

DiLiGenT_Test数据集

image-20241006191658232

*: 单元格中的数据是平均角度误差(角度制)

参考资料

  • https://www.bilibili.com/video/BV1BA411x7qU

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/809155.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Pool Kings All In One

Pool Kings All In One 泳池之王 Pool Kings - Mountain Paradise / 泳池之王 - 山间天堂 Utah waterfall MountainPool Kings All In One泳池之王demosPool Kings - Mountain Paradise / 泳池之王 - 山间天堂Utah waterfall Mountainhttps://vimeo.com/233842674 https://www.…

CHT

水电费是否收到fwe】今天探索一下CTH的电脑 PEPPA PIG放映室!tm的图怎么死了

visdom可视化工具

安装visdom可视化工具 pip install visdom -i 作者:太一吾鱼水 宣言:在此记录自己学习过程中的心得体会,同时积累经验,不断提高自己! 声明:博客写的比较乱,主要是自己看的。如果能对别人有帮助当然更好,不喜勿喷! 文章未经说明均属原创,学习笔记可…

测绘地理信息赋能新质生产力

在信息化与智能化浪潮的推动下,测绘地理信息作为连接现实世界与数字空间的桥梁,正逐步成为驱动经济社会发展的新质生产力。本文旨在深入探讨测绘地理信息如何通过技术创新与应用拓展,为各行各业赋能,塑造智慧社会的新面貌。一、测绘地理信息的转型之路随着卫星定位系统(如…

2024-2025-1 20241327 《计算机基础与程序设计》第2周学习总结

作业信息 |2024-2025-1-计算机基础与程序设计)| |-- |- |2024-2025-1计算机基础与程序设计第二周作业)| |快速浏览一遍教材计算机科学概论(第七版),课本每章提出至少一个自己不懂的或最想解决的问题并在期末回答这些问题 |作业正文|https://www.cnblogs.com/shr060414/p/18…

守护“金饭碗”:耕地保护,为经济社会发展筑牢根基

耕地,那片孕育着希望的田野,是我们共同的“金饭碗”。它不仅滋养着亿万生灵,更是我国经济社会发展的坚实后盾。那么,这“金饭碗”究竟蕴藏着怎样的力量,对我国经济社会发展起着怎样的作用呢?一、守护“金饭碗”,粮食安全有保障想象一下,如果我们的“金饭碗”不再丰盈,…

城市扩张与土地资源:压力之下寻平衡之道

在飞速发展的现代城市化进程中,城市扩张犹如一股不可阻挡的力量,既见证了人类文明的辉煌成就,也给土地资源带来了前所未有的压力与挑战。深入分析城市扩张对土地资源造成的影响,并探索可持续的解决方案,以期在城市发展的大潮中,找到与自然和谐共生的平衡点。 一、城市扩张…

实景三维赋能矿山安全风险监测预警

随着科技的不断进步,实景三维技术在矿山安全风险监测预警中的应用越来越广泛,它为矿山安全管理带来了革命性的变革。一、矿山安全现状矿山作为国家重要的能源和原材料基地,其安全生产直接关系到国民经济的发展和社会的稳定。然而,矿山作业环境复杂,地质条件多变,加之人为…

【笔记】SSTI学习

学习记录什么是SSTI的东西 所以什么是SSTI啊? 我不到啊!【笔记】SSTI学习 原文章:尝试黑客攻击 |SSTI (tryhackme.com) 介绍 服务器端模板注入(SSTI)是一种web漏洞攻击,它利用模板引擎的不安全特性实现。 什么是模板引擎? 模板引擎允许您创建可以在应用程序中重复使用的静…

# 2024-2025-1 学号(2024130) 《计算机基础与程序设计》第二周学习总结

作业信息 |这个作业属于哪个课程|<[2024-2025-1-计算机基础与程序设计]> (https://edu.cnblogs.com/campus/besti/2024-2025-1-CFAP))| |-- |-- | |这个作业要求在哪里|<[2024-2025-1计算机基础与程序设计第一周作业]>(https://edu.cnblogs.com/campus/besti/2024…

序列化器中拿到request

class UpdateMobileSerializer(serializers.ModelSerializer):old = serializers.CharField(write_only=True, validators=[RegexValidator(r"\d{11}", message="格式错误")])mobile = serializers.CharField(write_only=True, validators=[RegexValidator…

面相快速入门教程4五行与面相

4 五行与面相 现在,你进入了旅程中最重要的部分。在这里,你将学习到这些智慧所依据的原则,然后深入了解五种元素或原型的特质,它们在你的脸上闪耀着光芒。五种不同的元素各有两幅肖像样本,每种元素又各有两章。在第一章中,你将探索该性格的总体概况,了解它在你生活中的广…