![Royal Society - Alt Text](https://royalsocietypublishing.org/sda/501077/DES9010_Publishing_Systems biology seminar series_website banner advert.jpg)

Journal of The Royal Society Interface Open Access Check for updates on crossmark

Open Access

基于计算机视觉重建蛾翅膀上的错觉伪装图案

Laurent Valentin Jospin Laurent Valentin Jospin École Polytechnique Fédérale de Lausanne, Lausanne, Switzerland

James Wang Porter James Wang Porter Department of Electrical, Electronic and Computer Engineering, The University of Western Australia, Perth, Australia

Farid Boussaid Farid Boussaid Department of Electrical, Electronic and Computer Engineering, The University of Western Australia, Perth, Australia

Mohammed Bennamoun Mohammed Bennamoun Department of Computer Science and Software Engineering, The University of Western Australia, Perth, Australia

and Jennifer L. Kelley Jennifer L. Kelley School of Biological Sciences, The University of Western Australia, Perth, Australia

Published:30 April 2025https://doi.org/10.1098/rsif.2024.0757

摘要

单眼深度线索,如阴影,是解析三维信息(如物体形状)的基础。动物的颜色图案可能会利用这种深度感知机制,产生虚假的错觉,用于伪装等功能。重建由虚假深度线索产生的潜在感知具有挑战性,特别是对于非人类动物观察者而言。在这里,我们提供了一种解决该问题的新颖方法,利用了通常用于三维场景重建的最先进的计算机视觉算法。我们使用了两种单图像单眼深度估计方法:固有图像分解和深度学习。我们首先检查了这些模型在使用模仿蛾翅膀图案的自然三维表面图像时的表现。然后,我们将这些模型应用于六种具有不同潜在深度信息的蛾(鳞翅目)的翅膀图案。对于其中一种,我们随后对翅膀图案进行了多视角重建,以揭示真实的(平面)翅膀形状。基于 Retinex 理论的固有图像分解对真实深度线索和高对比度图案都很敏感,而深度学习模型仅对具有强烈图像深度线索的蛾类做出反应。这两种方法都揭示了对视觉线索的解释不仅取决于可用的信息,还取决于对自然世界的体验。

1. 介绍

从二维图像中恢复三维形状是动物视觉系统最基本的功能之一。三维场景重建也是计算机视觉科学的核心,其应用范围广泛,包括人脸识别、自动驾驶、机器人技术和虚拟现实(VR)。动物视觉系统通常依赖双眼视觉和单眼深度线索的组合来恢复三维信息 [1]。虽然已知许多动物(例如鸟类 [2]) 具有重叠的视野,但除了一些值得注意的例外 [3,4] 之外,双眼视觉通常与使用立体视觉解析深度的能力无关 [2,5]。因此,深度信息通常是从单眼视觉线索获得的,包括阴影、遮挡、纹理梯度和线性透视 [1]。最著名的单眼线索是使用阴影来解析物体的形状 [6],通常称为“阴影恢复形状”(SFS) [7]。

SFS 依赖于这样一个概念:如果光来自单个光源,那么物体表面上给定点的亮度取决于表面法线相对于照明方向的倾斜度 [8,9]。然而,SFS 存在问题,因为物体表面上的多个点可能给出相同的亮度值,尽管它们具有不同的表面方向。人类视觉系统使用关于光如何与三维形状相互作用的假设来解决这个问题 [10]。例如,视觉系统“知道”光通常来自上方,因此它可以做出简化的假设,即顶部较亮的物体必须是凸的,而顶部较暗的物体必须是凹的 [6]。类似的假设也应用于计算机视觉算法中,例如假设物体的表面具有均匀的反射率。这种假设的问题在于它们可能不正确,并且可能会被利用来曲解观看者可获得的视觉信息。视觉错觉是展示这些假设如何不正确的有力方式,从而导致对物体和视觉场景的非常不同的解释 [10]。

艺术家、图形设计师和软件工程师使用阴影在平面画布或计算机屏幕上生成三维场景。博物学家早就意识到了这些原理,从而提出了动物可能会使用它们的身体颜色来产生错误的深度印象 [1114],例如,以增强伪装。一种被提议用于此功能的图案类型是“反阴影着色”,这是一种常见的图案形式,其中动物在接收最多光线的表面上最暗 [12,1517]。头顶照明和反阴影图案的组合具有(非互斥的)效果,即降低身体的对比度 [18],增强背景匹配 [19] 并消除 SFS 线索 [13,14,17,19]。对野生、自由生活的鸟类以及使用人类观察者搜索三维形状的研究表明,针对照明条件 [20,21] 或目标相对于光源的方向 [22] 进行最佳反阴影的目标更难被检测到。一项研究已将计算机视觉应用于反阴影的研究,表明基于凸性的检测器被反阴影动物的图像所愚弄 [9]。一个较少受到关注的想法是,除了消除 SFS 线索外,动物图案还可以通过产生错误的深度错觉来发挥作用 [14]。这种策略可以通过促进背景匹配、破坏身体表面和/或模仿不可食用物体(伪装)[23],例如叶子(图 1),来潜在地增强伪装。 The green fruit-piercing moth, Eudocima salaminia, has remarkable wing patterns which, to the human observer, appear highly three dimensional, resembling a curled leaf 图 1. 绿色穿果蛾 Eudocima salaminia 具有非凡的翅膀图案,对人类观察者来说,它看起来非常三维,类似于卷曲的叶子。照片由 Sandid 通过 Pixabay 拍摄(内容许可)。

Cott [14] 提出动物图案可能会产生“图像线索”,从而产生表面深度或物体形状差异的印象,而实际上并不存在差异。支持这个有趣想法的证据来自使用人类搜索具有“增强边缘”图案的目标的研究 [24,25]——颜色斑块通过高对比度边界突出显示,可能会产生表面深度变化的印象 [14]。观察者检测和识别具有增强边缘的目标的速度很慢,并报告说这些图案似乎模仿了视觉背景中的深度变化 [24]。然而,测试动物图案是否干扰非人类动物观察者的深度感知极具挑战性。以野生鸟类为捕食者的研究发现了一些证据,表明破坏身体表面可以增强伪装,但没有发现图像深度线索可以产生相同的生存优势 [26,27]。非人类捕食者可以使用 SFS 来解析深度线索 [[28](https://royalsocietypublishing.org/doi/10.1098/<#B28>–31],并且一些动物可以对背景中的深度线索做出反应;例如,乌贼 (Sepia officinalis) 可以使用它们非凡的颜色变化能力来产生与自然三维物体(例如鹅卵石)相匹配的图像线索 [32,33]。乌贼还使用视觉线索来改变其三维皮肤乳突的形态以进行伪装 [34]。因此,虽然许多动物可以解析深度线索,但不清楚非人类动物是否会被包含图像线索的自然动物图案所欺骗。测试这个想法需要对非人类动物的形状感知进行行为测试,这极具挑战性。

一种创新的解决方案是使用计算机视觉算法来重建动物伪装图案。计算机视觉以前曾被用于对使检测概率最小化或最大化的颜色进行建模 [35,36],以及对军备竞赛场景中伪装图案的演变进行建模 [37],但我们不知道有任何研究使用计算机视觉来重建动物图案中的深度线索。这样做的好处是,有几种最先进的方法可以从单个图像执行三维重建。此外,比较这些模型的性能可以深入了解图案可能欺骗观看者的方式。例如,一些模型基于视觉理论(例如 Retinex)以及光与三维形状相互作用的基本原理。然而,其他模型,例如基于深度学习的模型,采用不同的方法,从数据(即对自然场景中三维物体的体验)中学习,而不是依赖于关于物理世界的明确假设 [38]。比较这些不同类型的计算机视觉算法的结果可以为动物颜色图案可能曲解关于三维身体形状的信息的方式提供一种新颖的探索。

在这里,我们应用计算机视觉中的几种方法来重建六种具有不同图案的蛾(鳞翅目)的翅膀图案中包含的潜在单眼深度信息。蛾类是这种方法的理想选择,因为翅膀具有通常是扁平的表面,通常具有复杂的图案,包括潜在的图像深度线索 [23]。大多数蛾类是夜间活动的,因此必须避开在白天活跃的捕食者(例如鸟类),因为此时蛾类处于休息状态。我们使用了两种单图像单眼深度估计方法:固有图像分解和深度学习。固有图像分解使我们能够估计反射率和阴影对每个图像的相对贡献,从而对深度变化进行建模,而深度学习用于确定在不同先验和(大多数未知)约束下的结果。我们首先检查了这两种模型在重建蛾类图案可能模仿的自然三维表面(例如,卷曲的叶子、树皮、树干)时的表现。然后,我们将固有图像分解和深度学习应用于六种蛾类,这些蛾类在其潜在的错觉深度线索方面有所不同。最后,我们对一种蛾类 (Eudocima salaminia , Erebidae) 进行了多视角三维重建,以展示翅膀表面的“真实”形状以及从多个位置观看蛾类时获得的视觉信息。

2. 方法

2.1. 自然三维表面

我们拍摄了蛾类颜色可能模仿的自然物体和背景的图像。这些图像首先用于比较计算机算法在真实三维表面和形状的图像中的表现。我们使用了卷曲的柑橘叶 (Citrus reticulata) 的图像、马里树 (Corymbia calophylla) 树皮的图像、被蛀木昆虫损坏的树皮的图像,以及在林地(西澳大利亚 Dryandra 林地国家公园)拍摄的桉树树皮的图像。图像是在自然光照下以 RAW 格式使用配有 60 毫米微距镜头(Nikkor,日本)的 DSLR 相机(D7100;Nikon,日本)拍摄的。

2.2. 蛾类标本

我们从不同的科中选择了六种蛾类,对人类观察者来说,这些蛾类似乎具有不同程度的潜在图像深度线索(图 2)。绿色穿果蛾 E. salaminia (Erebidae 科)的保存标本来自堪培拉的澳大利亚国家昆虫收藏馆 (ANIC)。使用灯诱捕器(2016 年 11 月和 2021 年 3 月;西澳大利亚珀斯)采集的活标本获得了 Anthelid 蛾 Anthela sp. (Anthelidae)、烟草夜蛾 Spodoptera litura (Noctuidae)、栖息在树皮上的蛾 Syneora sp. (Geometridae)、南方老妇蛾 Dasypodia selenophora (Erebidae) 和黑白虎蛾 Ardices glatignyi (Arctiini) 的图像。其他三个蛾类标本用于进一步探索计算机算法如何在高对比度标记 (E. cocalus,从私人收藏中拍摄)、离合性标记 (Asura polyspila,在昆士兰州野外捕获)以及具有强烈图像深度线索的额外物种 (Uropyia meticulodina,图像来自 Flickr)中的表现。所有图像(除了 U. meticulodina)都是使用与拍摄自然三维表面 (§2.1) 相同的相机和镜头拍摄的,漫射照明由三个 LED 灯组(Phottix M200RGB;纽约)提供。使用澳大利亚生物地图集(https://www.ala.org.au) 识别标本。 The six species of moth used in this study 图 2. 本研究中使用的六种蛾类。从左到右:E. salaminia 具有类似叶子的伪装图案,对人类观察者来说具有强烈的深度线索,Anthela sp . 具有最小的翅膀图案,没有深度线索,Spodoptera litura 具有高度纹理化的翅膀图案,Syneora sp. 具有具有树皮状纹理的图案,D. selenophora (Noctuidae 科)具有突出的眼点,而 A. glatignyi 可能具有破坏性图案。图片:J.L.K.

2.3. 单眼深度估计

对于单眼深度估计,我们使用了两种并行方法。首先,我们开发了一个三步流程(基于封闭形式的解)来从每个图像中提取深度图(图 3; §§2.3.1 至 2.3.3 下文)。其次,我们使用了现有的基于深度学习的模型进行单眼重建(在 §5 中介绍),应用于相同的蛾类图像。 A three step pipeline for extraction of a depth map from a single image 图 3. 从单个图像中提取深度图的三步流程。第一步 (i) 是将图像 (I) 分解为阴影图 (S) 和反射率图 (R)。第二步 (ii) 是估计图像的法线以生成法线图 (N),而第三步 (iii) 是从法线图中恢复高度图 (H)。

一般来说,由于缺乏绝对参考,大多数单眼深度估计方法预测的深度被认为是隐含的或相对的深度估计(即与物理距离无关),而不是绝对的深度估计 [39]。这对于我们的估计来说已经足够了,因为我们感兴趣的是相对深度,而不是重建物理物体。

2.3.1. 用于固有图像分解的封闭形式解

从单个图像推断物体三维形状的问题是严重欠约束的。大多数方法假设底层物体具有均匀的反射率 𝑅,因此图像强度 𝐼 的任何变化都是由该像素接收到的光量引起的,我们将其称为阴影 𝑆。因此,参数 𝑆 包括落在物体表面上的光照和由表面相对于光照角度的倾斜引起的任何强度差异。如果假设单个光照方向,那么可以在对表面平滑度进行一些假设的情况下重建物体的法线图。虽然假设单个光照方向在生物学上是有意义的,因为太阳通常是户外环境中的主要光源,但在实践中很少能保证假设均匀的反射率。如果不能假设图像反射率是均匀的,那么需要首先区分反射率和阴影图(表示图像中 𝑆 的变化)。这个问题被称为固有图像分解 [40]。图像 𝐼 的反射率 𝑅 和阴影 𝑆 通过图像形成模型相关 [41]: 𝐼=𝑅×𝑆,(2.1) 这导致了一组欠约束的方程,因为每个像素产生三个方程,每个颜色通道一个,但有六个未知数。如果假设阴影项 𝑆 是单色的,则可以减少方程的数量,但问题仍然是欠约束的。

实际上,通过正则化问题来解决这种模糊性 [42];这可以从贝叶斯的角度理解为包括对底层问题的先验知识,以对解决方案集施加软约束 [43]。最常用于固有图像分解的约束集来自 Retinex 模型 [44],该模型假设图像强度中的平滑变化是由 𝑆 的变化引起的,而大的变化是由 𝑅 的变化引起的。这种先验可以通过假设 𝑅 梯度分布中存在较重的尾部来编码在概率模型中 [42,45]。其他形式的先验也可以与 Retinex 约束联合使用;例如,假设纹理相似的图像块具有相同的反射率 [44],或者高反射率区域的饱和度低于没有反射率的区域 [46]。

我们通过最小化一个正则化问题来解决方程 (2.1),使用一组类似于 [44] 提出的非局部反射率约束。首先,我们将图像转换为对数颜色空间,以便能够替换 log⁡(𝑅)=log⁡(𝐼)−log⁡(𝑆),并且仅求解 log⁡(𝑆)。然后,我们可以将最小化问题表示为: 𝑆=a⁢r⁢gSm⁢i⁢n⁢𝜆𝑅⁢𝑥⁢𝑅⁢𝑥⁡(𝑆)+𝜆𝑇⁢𝑥⁢𝑇⁢𝑥⁡(𝑆)+𝜆𝑆⁢𝑐⁢𝑆⁢𝑐⁡(𝑆),(2.2) 其中 𝑅⁢𝑥⁡(𝑆) 是 Retinex 约束,𝑇⁢𝑥⁡(𝑆) 是一个纹理约束,假设具有相关纹理的块具有相同的反射率,并且 𝑆⁢𝑐⁡(𝑆) 是一个用于消除阴影尺度的模糊性的约束。𝜆𝑅⁢𝑥、𝜆𝑇⁢𝑥 和 𝜆𝑆⁢𝑐 是权重,使我们能够调整每个约束的强度。在这里,我们使用 𝜆𝑅⁢𝑥=⁢1、𝜆𝑇⁢𝑥=⁢1,以便 Retinex 约束和纹理约束的效果是平衡的,并且 𝜆𝑆⁢𝑐=⁢1000,因为 𝑆⁢𝑐 约束只会影响最亮像素的小部分,并且必须比其他两个约束更强烈地强制执行。𝑅⁢𝑥⁡(𝑆) 被编码为: ∥𝜔⁡(𝐼)∇(log(𝐼)−log⁡(𝑆))+∇log⁡(𝑆)∥22.(2.3) 如果图像的梯度大于阈值 𝑡,则 𝜔⁡(𝐼) 为 0,否则为 100。𝑇⁢𝑥⁡(log⁡𝑆) 是 [44] 中介绍的纹理约束。𝑆⁢𝑐⁡(log⁡𝑆) 被编码为: ∥𝑏⁡(𝐼)⁢(log⁡(𝑆))∥22,(2.4) 当 𝐼 至少与 𝐼 中 95% 的最亮像素一样亮时,𝑏⁡(𝐼) 等于 1,否则等于 0。

实际上,求解方程 (2.2) 需要求解一个非常大的线性系统,由于参数数量非常多,因此无法直接求解。为了解决这个限制,我们使用了矩阵,这使我们能够将方程拟合到计算机内存中,从而允许我们使用迭代求解器来获得解。

2.3.2. 法线估计的封闭形式解

一旦解决了固有图像分解的问题,就需要从图像的 𝑅 和 𝑆 分量估计深度。这通常通过估计图像的法线图 𝑁 来完成。给定一个单一的光照方向向量 𝐷,并假设物体的表面是朗伯或准朗伯的,那么存在一个简单的方程 [47],将阴影分量 𝑆 和法线联系起来: 𝑆=⟨𝐷,𝑁⟩,(2.5) 当尝试求解 𝑁 时,这是欠约束的。与 §2.3.1 一样,为了使问题可解,我们需要对模型应用两个额外的约束。

𝐷 的平面方向可以选择为图像中梯度的主要方向,但光源的入射角是模糊的。因此,我们将入射光角任意设置为 45°。该值提供了垂直方向之间的最佳折衷,垂直方向确保所有像素都由小于 90° 的光线照亮,但消除了方向的所有影响,以及水平光方向,水平光方向最大化了方向效应,但也最大化了法线将指向远离光源的像素数量。由于这可能会倾斜重建的法线图,因此我们通过将平面拟合到最终高度图并消除数据中的任何线性趋势来对此进行校正(请参见 §2.3.3)。

第一个约束是通过假设梯度接近 0 来强制执行法线图的平滑度: ∇𝑁=0.(2.6) 第二个约束是强制执行法线的方向与反射率 𝑅 中存在明显边缘的边缘相反或朝向: Θ⁢(||∇𝑅⁢||−𝑐)⁢⟨𝑆∇𝑅,𝑁⟩=0,(2.7) 其中 𝑆 是 90° 旋转矩阵,𝑐 是反射率梯度的阈值,并且 Θ 是 Heaviside 函数。

有了这些额外的约束,就可以以最小二乘意义求解 方程 (2.5),以恢复图像中每个像素的法线向量。同样,这是使用稀疏矩阵来完成的,以适应大量的未知数。

2.3.3. 从法线图恢复高度图

法线图 𝑁 和高度图 𝐻 通过一个简单的非线性方程相关: 𝑁=(−𝜕𝐻/𝜕𝑥,−𝜕𝐻/𝜕𝑦,1)∥(−𝜕𝐻⁢𝜕𝑥,−𝜕𝐻/𝜕𝑦,1)∥,(2.7) 它将高度图的导数与法线图相关联。这种关系很容易从参数三维表面的法线定义中推导出来 [48]。因此,对于图像中的每个像素,梯度 ∇𝐻 可以计算为 −(𝑁𝑥/𝑁𝑧,𝑁𝑦/𝑁𝑧)。因此,找到 𝐻 等效于求解微分方程: ∇𝐻=−(𝑁𝑥/𝑁𝑧,𝑁𝑦/𝑁𝑧),(2.9) 可以通过有限差分来近似计算,以获得可以通过计算机求解的大型线性方程组。我们考虑翅膀周围的一个感兴趣区域,并设置一个初始条件,即该区域边界上的一个像素应为 0。

由于光方向 𝐷 的入射角选择会影响高度图中蛾翅膀的平均坡度,因此我们将一个平面拟合到该感兴趣区域中的像素。然后,我们减去拟合的平面,使得平均而言,翅膀是平的,并且仅可以看到翅膀重建中的非线性特征。为了生成法线图和高度图,通过在每个图像上手动绘制感兴趣区域(翅膀轮廓)来排除背景。最终结果在 (0) 黑色和 (255) 白色之间进行标准化以进行显示(请参见高度图 (H),图 3)。

2.3.4. 调整捕食者视觉系统的模型

动物的视觉敏感度各不相同;例如,蛾类的捕食者(如鸟类)是四色体的,并且具有延伸到紫外波长范围内的光谱敏感度 [49]。有一些出色的方法可用于校准图像并将其转换为不同的动物视觉系统(例如,对观察者的视觉敏感度、视觉敏锐度和观看距离进行建模 [50,51])。在这里,我们测试了这种方法的可行性,在输入到封闭形式模型之前,先对捕食者(鸟类)视觉和特定观看距离的图像进行建模。虽然这仍然会产生 RGB 输出图像,但蛾类翅膀图案和它们可能模仿的物体(例如,树皮、叶子)都被认为不具有紫外线反射率。但是,如果需要,我们可以使用的用于固有图像分解的封闭形式模型可以推广到三个以上的颜色通道,并且生成的阴影图 𝑆 可以编码为灰度图像。虽然将所提出的方法应用于适合捕食者(例如,鸟类)视觉系统的图像没有任何实际限制,但应谨慎解释输出。

2.3.5. 深度学习模型

已经为我们的实验选择了一些基于神经网络的单眼深度估计方法。首先,我们考虑 BinsFormer [52],这是一种基于 Transformer 的最先进方法,用于提出多个可能的深度级别,这些深度级别稍后使用基于注意力的模块进行聚合。在模型选择时,BinsFormer 是在 NYU [53] 和 KITTI [54] 等流行的单眼深度估计基准测试中性能最高的模型