结构光三维表面成像:一个教程2

前文介绍了结构光三维重建系统,顺序投影技术(结构光三维表面成像:一个教程1)
本文将介绍第三节全框架空间变化颜色图案。


3.全框架空间变化颜色图案(Full-Frame Spatially Varying Color Pattern)

顺序投影技术的主要缺点包括:无法获取动态运动中的3D对象或诸如人体部位等实时对象。我们现在介绍一些单次拍摄3D表面成像技术,这些技术利用颜色信息或独特编码方案,并且在颜色图案照明下仅需要一个获取的对象图像来导出具有场景中每个可见点的(x,y,z)坐标。

3.1 彩虹3D相机(Rainbow 3D Camera)

图11展示了Rainbow 3D相机的基本概念[17-25]。 与必须从一对图像中提取相应特征以计算深度值的传统立体视觉不同,Rainbow 3D相机将空间变化的波长照明投影到物体表面。 彩虹光投影仪的固定几何形状确定光平面的投影角θ与特定光谱波长λ之间的一一对应关系,从而在每个表面点上提供易于识别的标志。 已知基线B和已知视角α的情况下,可以通过使用直接三角测量原理来计算与每个单独像素对应的3D范围值,并且可以在相机的帧速率的单个快照中获得3D范围图像的全帧 (30帧/秒或更快)。(full frame 不知道如何翻译)
Fig. 11

3.2 连续变化颜色编码(Continuously Varying Color Coding)

够构成不同的连续变化的彩色图案来编码空间位置信息[24]是有可能的。 例如,我们可以为投影机的每个颜色通道构建一个强度变化图案,这样当将它们加在一起时,这些图案在各个颜色通道中形成连续变化的颜色图案。 图12显示了三个加性原色通道的强度变化图案的例子。 当它们加在一起时,形成彩虹状的彩色投影图案。 请注意,这种类型的颜色图案不一定遵循色谱(波长)中的线性变化关系。 然而,由于每个颜色通道的贡献之间的比率是已知的,所以解码方案易于推导和实施。


Fig. 12

4 条纹索引(Stripe Indexing Single Shot)

条纹索引对于实现鲁棒(robust)的3D表面重构是必要的,因为所观察到的条纹的顺序并不一定与条纹的排列顺序相同。这是由于三维表面成像系统中固有的视差,由于物体三维表面特征的遮挡,使得所获得的图像中缺少条纹。我们现在提供一些代表性的条纹索引技术。

4.1 彩色条纹索引(Stripe Indexing Using Colors)

彩色图像传感器通常有三个独立的采集通道,每个通道对应一个频谱带。这些颜色值的线性组合可以产生无限数量的颜色。三个8位通道可以表示224种不同的颜色。这种丰富的色彩信息可用于增强3D成像精度,减少采集时间。例如,在投影图案中使用颜色来表示条纹索引(图13)可以帮助缓解使用单色模式[26,27]的相移或多条带技术所面临的歧义问题。这种颜色编码系统可以实现实时三维表面成像。也可以将多个图案编码成一个单一的颜色投影图像,每个模式在颜色空间中都具有唯一的颜色值。

Fig. 13


4.2 分段图案条纹索引(Stripe Indexing Using Segment Pattern)

为了区分一根条纹和其他条纹,你可以为每条条纹添加一些独特的片段图案(图14),这样,当执行3D重建时,算法可以使用每条条纹的独特的片段图案来区分它们。该方法在[28],是一种有趣而又聪明的方法,但它只适用于具有光滑连续表面的三维物体(因为表面形状造成的图案失真并不严重)否则,由于模式的变形或物体表面的不连续,可能很难恢复独特的片段图案。

Fig. 14


4.3 使用重复灰度图案的条纹索引(Stripe Indexing Using Repeated Gray-Scale Pattern)

如果使用两个以上的强度等级,则可以通过排列条纹的强度等级,使得任何一组条纹(N个条纹的滑动窗口)在一段长度内具有独特的强度图案[29]。 例如,如果使用三个灰度级(黑色,灰色和白色),则可以将图案设计为(图15)。
BWGWBGWGBGWBGBWBGW
图案匹配过程开始于与投影强度图案获取的图像强度的相关性。 一旦找到匹配,就会对子灰度级序列匹配执行进一步的搜索,例如WGB,GWB等三个字母的序列。

Fig. 15


4.4 基于De Bruijn序列的条纹索引(Stripe Indexing Based on De Bruijn Sequence)

在大小为k的字母表上,秩为n的De Bruijn序列[30]是一个循环词,其中长度为n的每个k ^ n^词在我们循环行进时恰好出现一次。 一个简单的n = 3和k = 2(字母表为{0,1})的De Bruijn循环的例子如图16所示。当我们在周期中(顺时针或逆时针)行进时,我们将会遇到23=8个三位数的图案,000,001,010,011,100,101,110,111恰好一次。 序列中没有重复的三位数字图案。 换句话说,De Bruijn序列中没有任何子序列与任何其他子序列相关。 De Bruijn序列的这一独特特征可用于构建具有独特局部变异模式的条纹图案序列,这些图案序列不会重复出现[31-33]。(这一段没看懂)这种独特性使图案解码变得更容易。 与De Bruijn序列相关的图形称为De Bruijn图形[34]。
现在我们展示一个使用(R,G,B)颜色的二进制组合来生成基于De Bruijn序列的颜色索引条带的示例。 三种颜色的组合的最大数目是8(= 23)。由于我们不打算使用(0,0,0),因此我们只有七种可能的颜色。这个问题可以通过构造一个k = 7,n = 3的De Bruijn序列来解决。这导致了一个带有343个条纹的序列。如果条纹数量太多,可以通过设置k = 5,n = 3来使用De Bruijn序列的缩减集合[35]。在这种情况下条纹的数量减少到125.使用De Bruijn技术构建颜色索引的条纹序列有一个重要限制:所有相邻的条纹必须具有不同的颜色。否则,会出现一些双倍或三倍宽度的条纹,这会混淆3D重建算法。通过使用XOR操作可以轻松应用此约束。图17显示了一组具有实际颜色索引条纹图案的结果。在这个条纹序列中,所有相邻的条纹都有不同的颜色。可以使用De Bruijn技术的各种变化来生成用于3D表面成像应用的独特的颜色索引,灰度索引或其他类型的投影图案。

Fig. 16

Fig. 17

5 网格索引:2D空间网格图案(Grid Indexing: 2D Spatial Grid Patterns)

二维网格图案技术的基本概念是在投影的二维图案中唯一标记每个子窗口,使得任何子窗口中的图案相对于其在图案中的二维位置是唯一的且完全可识别的。

5.1 伪随机二进制阵列(Pseudo-random Binary Array, PRBA)

一个网格索引策略是使用伪随机二进制阵列(PRBA),以产生可以由点或其他图案标记网格位置,使得任何子窗口的编码图案是唯一的。 PRBA由一个使用伪随机序列编码的n1×n2数组定义,使得在整个阵列上滑动的任何k1×k2子窗口都是唯一的,并且完全定义数组列内的子窗口的绝对坐标(i,j)。
二进制数组的编码图案是基于一个伪随机二进制序列,使用原始多项式模块2n方法[36-40],其中2n -1 = 2k1k2-1, n1 = 2k1 -1, n2 = 2n-1/n1。图18显示了生成的PRBA的一个例子,其中k1=5,k2=2,n1=31,n2=33。

Fig. 18


5.2 作为码字的迷你图案(Mini-patterns Used as Code Words)

不使用伪随机二进制数组,可以使用多值伪随机数组。 人们可以用迷你图案将每个值表示为特殊的代码字,从而形成网格索引投影图案[41]。 图19显示了一个三值伪随机数组和一组迷你图案码字的示例(图中右下方显示)。 使用专门定义的码字,可以将多值伪随机数组转换为具有唯一子窗口的投影图案。
Fig. 19

5.3 彩色网格(Color-Coded Grids)

另一种网格索引策略是对垂直和水平条纹进行颜色编码,以便实现二维网格索引[42-44]。 垂直和水平条纹编码方案可以相同或完全不同,具体取决于应用(图20)。 不能保证子窗口的唯一性,但是在建立对应关系时,在大多数情况下双向彩色条纹可以帮助解码。 细网格线可能不如其他图案(点,正方形等)可靠。

Fig. 20


5.4 2D数组的彩色编码点(2D Array of Color-Coded Dots)

有一些生成伪随机数组的替代方法。在[45,46]中提出了一种强制算法来生成一个保存子窗口唯一性的数组,但它可能不会耗尽所有可能的子窗口图案。该方法在计算机算法中相对直观。例如,图21(左)使用三个码字(R,G,B)示出子窗口大小为3×3的6×6阵列。计算过程如下:首先用随机选择的图案填充6×6阵列的左上角。然后,用随机码字在右侧添加一个三元素列。子窗口的唯一性在添加这样的列之前被验证。继续添加列,直到所有列都填充了随机代码字,并验证子窗口唯一性。同样,从初始子窗口位置向下添加随机行。之后,沿对角线方向添加新的随机码字。重复这些步骤,直到所有的点都被填充颜色。同样,这个计算过程可能不能保证为所有阵列大小和代码字生成一个伪随机阵列,但在许多情况下已经取得了很好的结果。图21(右)展示了一个具有20×18维的伪随机数组的示例。
Fig. 21

5.5 混合方法(Hybrid Methods)

通过结合上面讨论的多种编码方案,有许多机会来改进3D表面成像系统性能的特定方面。 图22显示了一个例子。
Fig. 22

关于投影图案的设计暂时结束了,在接下来的教程里(第六节),我们将讨论一下衡量算法的方法。

下一期:结构光三维表面成像:一个教程3

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 212,332评论 6 493
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 90,508评论 3 385
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 157,812评论 0 348
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 56,607评论 1 284
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 65,728评论 6 386
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 49,919评论 1 290
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 39,071评论 3 410
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 37,802评论 0 268
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 44,256评论 1 303
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 36,576评论 2 327
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 38,712评论 1 341
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 34,389评论 4 332
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 40,032评论 3 316
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 30,798评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,026评论 1 266
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 46,473评论 2 360
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 43,606评论 2 350

推荐阅读更多精彩内容

  • 今天是我22周岁生日。俗话说,儿子的生日,母亲的苦难日,我想说,妈妈辛苦了!感谢爸妈将我带到这个世界,抚养我长大,...
    阿松v阅读 157评论 0 0
  • 思维导图,
    金海晨林阅读 177评论 0 0