结构光编码方法、编解码方法、装置、计算机设备及介质转让专利
申请号 : CN202110000614.X
文献号 : CN112729166B
文献日 : 2022-03-11
发明人 : 高磊 , 何苗
申请人 : 熵智科技(深圳)有限公司
摘要 :
权利要求 :
1.一种结构光编码方法,其特征在于,所述结构光编码为二值条纹码,所述二值条纹码包括n幅格雷码主码以及m幅移动辅码,其中,第n幅所述格雷码主码与m幅所述移动辅码之间平移设置,将所述格雷码主码作为编码的整数部分,将所述移动辅码作为小数部分,在原有格雷码主码的边界的基础之上,形成多个新的特征边界,所述多个特征边界唯一且全面覆盖格雷码主码;
对于任一特征边界,其对应的移动辅码的编码值x=(s+Edir*Eidx)/(2*s);
其中,s表示格雷码码字宽度,Edir表示移动辅码的等效移动方向,第n幅格雷码主码为参考基准S0,若所述特征边界位于所述参考基准S0上,则Edir=0;若所述特征边界位于参考边界的左侧,则Edir=‑1,所述参考边界为参考基准S0上与所述特征边界最邻近的边界;若所述特征边界位于所述参考边界的右侧,则Edir=+1;Eidx表示移动辅码的等效移动像素位,其大小为所述特征边界与所述参考边界之间序号差的绝对值。
2.根据权利要求1所述的一种结构光编码方法,其特征在于,所述特征边界将所述格雷码主码细分为若干最小单元,每个所述最小单元的大小与投影仪的像素点相同设置。
3.根据权利要求1所述的结构光编码方法,其特征在于,所述格雷码主码幅数其中,period表示格雷码周期数,其值等于投影仪X方向分辨率/码字宽度;ceil()表示向上取整函数;所述移动辅码的幅数m=2*n‑1。
4.根据权利要求1所述的一种结构光编码方法,其特征在于,所述第n幅格雷码主码与m幅所述移动辅码之间平移设置时,每次平移一个像素点设置。
5.一种结构光编解码方法,其特征在于,包括如下步骤:S1根据权利要求1至4任一项所述的结构光编码方法生成二值条纹码,所述二值条纹码中将所述格雷码主码作为编码的整数部分,将所述移动辅码作为小数部分,在原有格雷码主码的边界的基础之上,形成多个新的特征边界,所述多个特征边界唯一且全面覆盖格雷码主码;
S2使用所述二值条纹码进行投影,获取投影图像;
S3对所述投影图像按顺序结合并进行解码,以确定绝对编码值K:所述绝对编码值K=k+x,其中,k为所述格雷码主码的编码值,x为所述移动辅码的编码值;
对于任一特征边界,其对应的移动辅码的编码值x=(s+Edir*Eidx)/(2*s);
其中,s表示格雷码码字宽度,Edir表示移动辅码的等效移动方向,第n幅格雷码主码为参考基准S0,若所述特征边界位于所述参考基准S0上,则Edir=0,所述参考边界为参考基准S0上与所述特征边界最邻近的边界;若所述特征边界位于所述参考边界的左侧,则Edir=‑
1;若所述特征边界位于所述参考边界的右侧,则Edir=+1;Eidx表示移动辅码的等效移动像素位,其大小为所述特征边界与所述参考边界之间序号差的绝对值。
6.根据权利要求5所述的一种结构光编解码方法,其特征在于,使用第n幅格雷码主码为参考基准S0,所述步骤S3包括如下步骤:S31解码格雷码主码,获取格雷码主码的编码值k;
S32查找所述第n幅格雷码主码与m幅所述移动辅码以获取指定序号对应的特征边界,基于所述特征边界与参考边界的相对位置确定对应所述特征边界的编码值x大小,所述参考边界为参考基准S0上与所述特征边界最邻近的边界;
S33基于所述格雷码主码的编码值k与所述移动辅码的编码值x获取绝对编码值K大小。
7.一种结构光编解码装置,其特征在于,包括:编码模块,用于生成二值条纹码,所述二值条纹码包括n幅格雷码主码以及m幅移动辅码,其中,第n幅所述格雷码主码与m幅所述移动辅码之间平移设置,将所述格雷码主码作为编码的整数部分,将所述移动辅码作为小数部分,在原有格雷码主码的边界的基础之上,形成多个新的特征边界,所述多个特征边界唯一且全面覆盖格雷码主码;
投影图像获取模块,用于使用所述二值条纹码进行投影,获取投影图像;
解码模块,用于对所述投影图像按顺序结合并进行解码,以确定绝对编码值K:所述绝对编码值K=k+x,其中,k为所述格雷码主码的编码值,x为所述移动辅码的编码值;
对于任一特征边界,其对应的移动辅码的编码值x=(s+Edir*Eidx)/(2*s);
其中,s表示格雷码码字宽度,Edir表示移动辅码的等效移动方向,第n幅格雷码主码为参考基准S0,若所述特征边界位于所述参考基准S0上,则Edir=0;若所述特征边界位于参考边界的左侧,则Edir=‑1,所述参考边界为参考基准S0上与所述特征边界最邻近的边界;若所述特征边界位于所述参考边界的右侧,则Edir=+1;Eidx表示移动辅码的等效移动像素位,其大小为所述特征边界与所述参考边界之间序号差的绝对值。
8.一种计算机设备,包括存储器、处理器以及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现权利要求5至6任一项所述方法的步骤。
9.一种计算机可读存储介质,其上存储有计算机程序,其特征在于:所述计算机程序被处理器执行时实现权利要求5至6任一项所述方法的步骤。
说明书 :
结构光编码方法、编解码方法、装置、计算机设备及介质
技术领域
背景技术
而广泛使用。格雷码加相移的三维测量技术的优点为算法实现简单,易于实现产品化,但是
缺点非常明显,尤其是格雷码的使用造成测量系统对测量工件的表面明暗比较敏感,其基
于灰度的编码策略对工件纹理及表面反射非常敏感,容易导致条纹正弦性丢失而解码失
败,一般要喷显影剂才能测量,无法测量较暗的工件,无法测量表面剧烈变化的工件。
发明内容
幅所述移动辅码之间平移设置,以形成多个唯一的特征边界。
=2*n‑1。
参考边界为参考基准S0上与所述特征边界最邻近的边界;
位于所述参考基准S0上,则Edir=0;若所述特征边界位于所述参考边界的左侧,则Edir =‑1;
若所述特征边界位于所述参考边界的右侧,则Edir =+1;
特征边界;
码值。
述任一项所述方法的步骤。
的特征边界作为特征匹配点,在保证成像系统亚像素精度的基础下,对被测工件表面反射
及纹理具有更高的鲁棒性。
动辅码作为小数部分, 实现了视场空间的无级细分, 提高了编码的分辨率, 同时由于本
发明以二值条纹码的边缘为特征点进行匹配,由于不依赖于像素灰度值,仅依赖二值条纹
码的边缘信息,故而具有更高的鲁棒性和适应性。
附图说明
具体实施方式
非以任何方式限制本发明的保护范围。
的厚度、尺寸和形状。附图仅为示例 而非严格按比例绘制。
附加有一个或多个其它特征、步骤、整体、操作、元件、部件和/或它们的组合。
计算值中的固有偏差。
用词 典中定义的用语)应被解释为具有与它们在相关技术的上下文中的含义一致的含义,
并且 将不被以理想化或过度正式意义解释,除非本文中明确如此限定。
码之间平移设置,以形成多个唯一的特征边界,即各特征边界不重复。
配点,在保证成像系统亚像素精度的基础下,对被测工件表面反射及纹理具有更高的鲁棒
性。
作为编码的整数部分, 综合使用移动辅码作为小数部分, 实现了视场空间的无级细分,
提高了编码的分辨率, 同时由于本发明以二值条纹码的边缘为特征点进行匹配,由于不依
赖于像素灰度值,仅依赖二值条纹码的边缘信息,故而具有更高的鲁棒性和适应性。
进制移动编码的位移,在原有格雷码主码的边界的基础之上,形成多个新的特征边界,所述
多个特征边界唯一且全面覆盖格雷码主码,从而将格雷码主码的不同区域内再次细分编
码。
在实际操作中可根据经验确定格雷码主码以及对应的移动辅码的幅数;本实施例中,作为
一优选方案,所述格雷码主码幅数n=ceil( ),其中,period表示格雷码周期数,其值
等于投影仪X方向分辨率/码字宽度,投影仪参数由厂家出厂设定,码字宽度根据经验设定;
ceil()表示向上取整函数;移动辅码幅数m=2*n‑1。
为一优选方案,所述步骤S1中,所述第n幅格雷码主码与m幅所述移动辅码之间平移设置时,
每次平移一个像素点设置。
码主码以及7幅移动辅码。其中,m,n的取值过程如下,本实施例中,格雷码码字宽度s=4,投
影仪X方向分辨率为64,则格雷码周期数period取值等于投影仪X方向分辨率/码字宽度,为
16,对应的n=ceil( )=4,m=2*n‑1=7。图中,GC1、GC2、GC3、GC4表示格雷码主码,S0‑S7
表示移动辅码。其中,GC4与S0相同,既作为最后一幅格雷码编码GC4,也作为移动辅码的参
考基准S0。本实施例中,S1‑S4表示移动辅码参考基本S0依次向右偏移1‑4位,S5‑S7表示移
动辅码参考基本S0依次向左移动1‑3位。
GC1、GC2、GC3、GC4表示格雷码主码,S0‑S7表示移动辅码,同样,GC4与S0相同,既作为最后一
幅格雷码编码GC4,也作为移动辅码的参考基准S0,移动辅码参考基准S0物理上全为右移。
间唯一编码,通过投射二值条纹码进行空间编码,以二值条纹码的特征边界作为特征匹配
点,在保证成像系统亚像素精度的基础下,对被测工件表面反射及纹理具有更高的鲁棒性。
分作为编码的整数部分, 综合使用移动辅码作为小数部分, 实现了视场空间的无级细分,
提高了编码的分辨率, 同时由于本发明以二值条纹码的边缘为特征点进行匹配,由于不依
赖于像素灰度值,仅依赖二值条纹码的边缘信息,故而具有更高的鲁棒性和适应性。
以及m幅二进制移动编码的位移,在原有格雷码主码的边界的基础之上,形成多个新的特征
边界,所述多个特征边界唯一且全面覆盖格雷码主码,从而将格雷码主码的不同区域内再
次细分编码。
定格雷码主码以及对应的移动辅码的幅数;本实施例中,作为一优选方案,所述格雷码主码
幅数n=ceil( ),其中,period表示格雷码周期数,其值等于投影仪X方向分辨率/码
字宽度,投影仪参数由厂家出厂设定,码字宽度根据经验设定;ceil()表示向上取整函数;
移动辅码幅数m=2*n‑1。
为一优选方案,所述步骤S1中,所述第n幅格雷码主码与m幅所述移动辅码之间平移设置时,
每次平移一个像素点设置。
按顺序结合并进行解码,确定绝对编码值K。
参考边界为参考基准S0上与所述特征边界最邻近的边界;所述序号可为投影仪分辨率的像
素编码。
处的位置进行编码,处于图像中黑色条纹中的码值为0,处于白色条纹中的码值为1,把获取
的码值按序排列组成该点的格雷码编码,再把格雷码码字转换成二进制,再转换成十进制,
以此获得该点所处的条纹级数。
中一实施例中,所述第n幅格雷码主码记为S0,且将所述S0作为移动辅码的参考基准,所述
步骤S32中,移动辅码解码如下:对于任一移动辅码Si,x=(s+Edir*Eidx)/(2*s),i∈(1,m);其
中,s表示格雷码码字宽度, Edir表示移动辅码的等效移动方向,若所述特征边界位于所述
参考基准S0上,则Edir=0;若所述特征边界位于所述参考边界的左侧,则Edir =‑1;若所述特
征边界位于所述参考边界的右侧,则Edir =+1; Eidx表示移动辅码的等效移动像素位,其大
小为所述特征边界与所述参考边界之间序号差的绝对值。
相同,既作为最后一幅格雷码编码GC4,也作为移动辅码的参考基准S0。本实施例中,S1‑S4
表示移动辅码相对参考基准S0依次向右偏移1‑4位,S5‑S7表示移动辅码相对参考基准S0依
次向左移动1‑3位。
将二进制码转换成十进制码(即当前像素所在的行数或者列数)。从而确定k值。图1所示实
施例中,主码范围k为[0,…,15]间的整数。以图1中序号为21的编码为例,格雷码编码为
1110,响应格雷码主码k=5。
近的条纹边界)的左侧,则Edir =‑1;若S1‑S7中二值编码条纹边界位于参考边界的右侧,则
Edir =+1;对于基准S0,Edir=0。Eidx表示移动辅码的等效移动像素位,其计算值等于二值编码
条纹边界与最邻近参考基准S0条纹边界之间序号差的绝对值。
近条纹边界(即参考边界)序号为19号,位于其右侧,二者序号差为2,故Edir=+1、Eidx=2;则该
特征边界的编码值x=(4+1*2)/(2*4)=6/8。
完成),图示序号为21的编码,其绝对编码值K=5+6/8。
同。
后一幅格雷码编码GC4,也作为移动辅码的参考基准S0,移动辅码相对参考基准S0物理上全
为右移。
将二进制码转换成十进制码(即当前像素所在的行数或者列数)。从而确定k值。本实施例
中,主码范围k为[0,…,15]间的整数。以图2序号为25的编码为例,其格雷码编码为1010,响
应格雷码主码k=6。
宽度, Edir表示移动辅码的等效移动方向,若所述特征边界位于所述参考基准S0上,则Edir=
0;若所述特征边界位于所述参考边界的左侧,则Edir =‑1;若所述特征边界位于所述参考边
界的右侧,则Edir =+1;Eidx表示移动辅码的等效移动像素位,其大小为所述特征边界与所述
参考边界之间序号差的绝对值。
序号为27号,位于其左侧,其序号差为2,故Edir=‑1、Eidx=2,对应的移动辅码编码x=(4+(‑1)*
2)/(2*4)=2/8。
辅码x(由S0‑S7编码完成),则图示序号为25的编码,其绝对编码值K=6+2/8。
的特征边界;
编码值。
码实现空间唯一编码,通过投射二值条纹码进行空间编码,以二值条纹码的特征边界作为
特征匹配点,在保证成像系统亚像素精度的基础下,对被测工件表面反射及纹理具有更高
的鲁棒性。
函数;所述移动辅码的幅数m=2*n‑1。
界的编码值x大小,所述参考边界为参考基准S0上与所述特征边界最邻近的边界;
述特征边界位于所述参考基准S0上,则Edir=0;若所述特征边界位于所述参考边界的左侧,
则Edir =‑1;若所述特征边界位于所述参考边界的右侧,则Edir =+1; Eidx表示移动辅码的等
效移动像素位,其大小为所述特征边界与所述参考边界之间序号差的绝对值。
表示移动辅码的等效移动方向,若所述特征边界位于所述参考基准S0上,则Edir=0;若所述
特征边界位于所述参考边界的左侧,则Edir =‑1;若所述特征边界位于所述参考边界的右
侧,则Edir =+1; Eidx表示移动辅码的等效移动像素位,其大小为所述特征边界与所述参考
边界之间序号差的绝对值。
器或机柜式服务器(包括独立的服务器,或者多个服务器所组成的服务器集群)等。本实施
例的计算机设备20至少包括但不限于:可通过系统总线相互通信连接的存储器21、处理器
22,如图5所示。需要指出的是,图5仅示出了具有组件21‑22的计算机设备20,但是应理解的
是,并不要求实施所有示出的组件,可以替代的实施更多或者更少的组件。
(ROM)、电可擦除可编程只读存储器(EEPROM)、可编程只读存储器(PROM),存储器21也可以
是计算机设备20的外部存储设备,例如该计算机设备20上配备的插接式硬盘,智能存储卡
(Smart Media Card, SMC),安全数字(Secure Digital, SD)卡,闪存卡(Flash Card)等。
当然,存储器21还可以既包括计算机设备20的内部存储单元也包括其外部存储设备。本实
施例中,存储器21通常用于存储安装于计算机设备20的操作系统和各类应用软件,例如方
法实施例的结构光编解码方法的程序代码等。此外,存储器21还可以用于暂时地存储已经
输出或者将要输出的各类数据。
20的总体操作。本实施例中,处理器22用于运行存储器21中存储的程序代码或者处理数据,
例如运行结构光编解码装置10,以实现方法实施例中的结构光编解码方法。
(ROM)、电可擦除可编程只读存储器(EEPROM)、可编程只读存储器(PROM)、磁性存储器、磁
盘、光盘、服务器、App应用商城等等,其上存储有计算机程序,程序被处理器执行时实现相
应功能。本实施例的计算机可读存储介质用于存储结构光编解码装置的程序代码,被处理
器执行时实现方法实施例中的结构光编解码方法。
术领域,均同理包括在本发明的专利保护范围内。