CN106921434B - 一种新型可见光室内定位***的定位信息发射和检测方法 - Google Patents
一种新型可见光室内定位***的定位信息发射和检测方法 Download PDFInfo
- Publication number
- CN106921434B CN106921434B CN201710217927.4A CN201710217927A CN106921434B CN 106921434 B CN106921434 B CN 106921434B CN 201710217927 A CN201710217927 A CN 201710217927A CN 106921434 B CN106921434 B CN 106921434B
- Authority
- CN
- China
- Prior art keywords
- matrix
- data
- vector
- data segment
- sent
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04B—TRANSMISSION
- H04B10/00—Transmission systems employing electromagnetic waves other than radio-waves, e.g. infrared, visible or ultraviolet light, or employing corpuscular radiation, e.g. quantum communication
- H04B10/11—Arrangements specific to free-space transmission, i.e. transmission through air or vacuum
- H04B10/114—Indoor or close-range type systems
- H04B10/116—Visible light communication
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01C—MEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
- G01C21/00—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
- G01C21/20—Instruments for performing navigational calculations
- G01C21/206—Instruments for performing navigational calculations specially adapted for indoor navigation
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01S—RADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
- G01S5/00—Position-fixing by co-ordinating two or more direction or position line determinations; Position-fixing by co-ordinating two or more distance determinations
- G01S5/16—Position-fixing by co-ordinating two or more direction or position line determinations; Position-fixing by co-ordinating two or more distance determinations using electromagnetic waves other than radio waves
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04B—TRANSMISSION
- H04B10/00—Transmission systems employing electromagnetic waves other than radio-waves, e.g. infrared, visible or ultraviolet light, or employing corpuscular radiation, e.g. quantum communication
- H04B10/50—Transmitters
- H04B10/501—Structural aspects
- H04B10/502—LED transmitters
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04B—TRANSMISSION
- H04B10/00—Transmission systems employing electromagnetic waves other than radio-waves, e.g. infrared, visible or ultraviolet light, or employing corpuscular radiation, e.g. quantum communication
- H04B10/50—Transmitters
- H04B10/516—Details of coding or modulation
- H04B10/548—Phase or frequency modulation
- H04B10/556—Digital modulation, e.g. differential phase shift keying [DPSK] or frequency shift keying [FSK]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/24—Testing correct operation
- H04L1/245—Testing correct operation by using the properties of transmission codes
- H04L1/246—Testing correct operation by using the properties of transmission codes two-level transmission codes, e.g. binary
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Radar, Positioning & Navigation (AREA)
- Remote Sensing (AREA)
- Electromagnetism (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- General Physics & Mathematics (AREA)
- Automation & Control Theory (AREA)
- Optical Communication System (AREA)
- Mobile Radio Communication Systems (AREA)
Abstract
本发明公开了一种新型可见光室内定位***的定位信息发射和检测方法。本方法为:1)对LED灯要发送的ID数据分成多个数据段并编码,得到LED灯的待发送信号;2)LED灯将待发送信号生成设定帧结构并调制后进行周期性发送;3)移动设备使用摄像头拍摄所述LED灯,得到一视频文件;然后提取该视频文件中的若干图片并获取图片中的明暗条纹;4)移动设备对获取的所述明暗条纹进行解调,然后根据所用的编码法则对解调后的数据进行译码得到ID数据。本发明在信噪比较低,信息丢失较严重时,仍能有较高的识别成功率。
Description
技术领域
本发明属于通信技术领域,涉及新型可见光定位***中的定位信息发射和检测的关键技术,具体涉及在发射可见光信号以及接收端摄像帧分析时多帧合成过程中引入编解码以提高可见光信号检测效率和稳定性的技术。
技术背景
随着近年来信息技术的快速进步及移动设备的广泛推广,搭载于移动端的定位服务日益成为人们生活的重要辅助工具。精准的室内定位技术,可以为人们在超市、商场等多种室内场合提供便利,在帮助人们快速定位的同时,也蕴含着巨大的商机。
目前普遍使用的室内可见光定位***主要方式之一,是将室内的发光二极管照明设备当作发射机,在照明同时加载人眼无法察觉的开关键控(On-Off Keying,OOK)信号或频移键控(Frequency-shift keying)信号。使用移动设备摄像头拍摄照片,根据照片中有效曝光区域内的明暗条纹数量解调数据。考虑到普通摄像装置的互补金属氧化物半导体(Complementary Metal Oxide Semiconductor,CMOS)感光器件的卷帘快门(RollingShutter,RS)效应,当摄像装置的参数设置合适时,得到的图像上会呈现一组采样得到的亮暗条纹,叠加在拍摄的实际场景上。通过对这样的载有OOK或FSK信息的图像的解调,可以得到所拍摄的LED灯所发送的信息。
本发明所描述的***和所提出的技术,是建立在上述使用移动终端摄像装置拍摄LED式的室内可见光定位技术之上的。考虑到用户真正使用移动终端的定位应用时的真实场景和室内精确定位中长码字的传输需要,本发明提出了两种长码字的发射和检测方案:一是用特殊规则的编码对LED灯的ID进行编码后发送,移动端接收多帧图片并解调,译码得到长码字;二是将多帧图片中的信息直接拼接得到长码字。
发明内容
当使用频率调制或OOK或FSK调制方法调制LED灯,传输长序列LED ID信息时,摄像头拍摄的单帧图片明暗条纹无法承载所有的ID信息,因此仅使用单帧图片无法正确解调出LED灯发送的数据;且在单帧图片中,对比度高的条纹集中在图片中光源位置附近,远离光源位置的条纹信噪比过低,难以解调出有效信息,进一步压缩了单帧图片中的有效信息量。因此,将长码字通过多帧图片来传输十分必要。
本发明的目的在于针对以上问题,提出了两种可见光定位***的定位信息发射和检测方案,实现***传输长序列LED ID信息时,接收端多帧图片中长码字的提取。一是用特殊规则的编码对LED灯的ID进行编码后发送,移动端接收多帧图片并解调,译码得到长码字;二是将多帧图片中的信息直接拼接得到长码字。
一、如图1所示,为基于对长码字信息进行编解码的信号发射及检测方案
1)通过LED灯发送的ID原始数据为一个长串码字,将该原始数据切分为多个数据段并进行编码;
2)将编码后的多段数据以特定帧结构进行调制,产生OOK信号或FSK信号,并将所有特定帧循环周期性发送,从而传送整个长串码字;
3)移动设备使用摄像头拍摄LED视频,获取图像中的明暗条纹。其中,图像的明暗条纹与编码后的发射信息对应;
4)使用图像处理方法识别并解调数据,去掉无法识别的数据,得到步骤2)发送的长串码字中的一部分数据段;
5)根据已知的发射端编码法则,对接收到的部分数据段译码得到原始的灯ID信息。
进一步地,将通过LED灯发送的ID原始数据进行编码,得到待发送的信息可以以下面的方式1实现:
1)将要发送的LED ID原始数据分割成M个指定长度的数据段,每个数据段都是一个二进制向量,则可以构成一个M*L的矩阵X=[x1;x2;…xM];其中每个数据段构成的是1*L的向量;
2)将矩阵X与一个由0和1构成的大小为N*M的生成矩阵G相乘得到一个新的矩阵Z。其中矩阵G的构造应根据具体通信环境而定,传输过程中丢失的数据段个数和传输的总数据段个数的比值不同,G中1和0的比值也会不同,由于丢失数据段的个数和丢失的位置具有随机性,大多数情况下并不存在使得解码过程绝对成功的矩阵G,因此可利用程序模拟随机丢失数据段的过程,选择解码成功率最高的矩阵G作为生成矩阵。根据矩阵乘法可知矩阵Z中的向量zi(i=1,2,…,N)是X中多个向量的模2和(如z2=0*x1+1*x2+1*x3…),模2加法等同于异或运算,即两个二进制数中对应位相加,不进位,相同为0,不同为1;
3)Z作为冗余放在X向量的后面组成新的矩阵P=[X;Z]。
4)将P与一个由0和1构成的大小为L*(N+M)的生成矩阵G’相乘得到一个新的矩阵R。其中矩阵G’的构造应根据具体通信环境而定,传输过程中丢失的数据段个数和传输的总数据段个数的比值不同,G’中1和0的比值也会不同,由于丢失数据段的个数和丢失的位置具有随机性,大多数情况下并不存在使得解码过程绝对成功的矩阵G’,因此可利用程序模拟随机丢失数据段的过程,选择解码成功率最高的矩阵G’作为生成矩阵。L大于M+N即可,一般情况下L越大解码成功率越高,但传输效率降低,实际使用时根据具体情况选择合适的L。根据矩阵乘法可知矩阵R中的向量zi(i=1,2,…,L)是P中多个向量的模2和(如r2=0*p1+1*p2+1*p3…)。模2加法等同于异或运算,即两个二进制数中对应位相加,不进位,相同为0,不同为1;
5)R为编码后的LEDID信息。
以上过程的示意图如图2所示。
进一步地,将通过LED灯发送的ID原始数据进行编码,得到待发送的信息也可以以下面的方式2实现,方式2是对方式1的简化处理,编码解码的过程更简单,但是在信噪比低的环境下解码成功率要低于方式1:
1)将要发送的LED ID原始数据分割成若干个指定长度的数据段,每个数据段都是一个二进制向量,则可以构成一个M*L的矩阵X=[x1;x2;…xM];其中每个数据段构成的是1*L的向量;
2)将X与一个由0和1构成的大小为N*M生成矩阵G相乘得到一个新的矩阵Z。其中矩阵G的构造应根据具体通信环境而定,传输过程中丢失的数据段个数和传输的总数据段个数的比值不同,G中1和0的比值也会不同,由于丢失数据段的个数和丢失的位置具有随机性,大多数情况下并不存在使得解码过程绝对成功的矩阵G,因此可利用程序模拟随机丢失数据段的过程,选择解码成功率最高的矩阵G作为生成矩阵。具体实施方案中提供了一种传输数据长度较短的特殊情况下的构造。由矩阵乘法可知矩阵Z中的向量zi(i=1,2,…,N)是X中多个向量的模2和(如z2=0*x1+1*x2+1*x3…)。模2加法等同于异或运算,即两个二进制数中对应位相加,不进位,相同为0,不同为1;
3)Z作为冗余放在矩阵X的后面组成新的矩阵R=[X;Z]。
4)R为编码后的LED ID信息。
以上过程的示意图如图3所示。
进一步地,将通过LED灯发送的ID原始数据进行编码,得到待发送的信息可以以下面的方式3实现:
1)将要发送的LED ID原始数据分割成若干个指定长度的数据段,每个数据段都是一个二进制向量,则可以构成一个M*L的矩阵X=[x1;x2;…xM];其中每个数据段构成的是1*L的向量;
2)将X进行预编码,如进行LDPC、RS、BCH等编码,产生一个N*L的矩阵Z。预编码可提高低信噪比环境下解码成功率。这里的预编码方法包括但是不仅限于上述3种提到的编码方法;
3)将Z与一个由0和1构成的大小为K*N的生成矩阵G相乘得到一个新的矩阵P。其中矩阵G的构造应根据具体通信环境而定,传输过程中丢失的数据段个数和传输的总数据段个数的比值不同,G中1和0的比值也会不同,由于丢失数据段的个数和丢失的位置具有随机性,大多数情况下并不存在使得解码过程绝对成功的矩阵G,因此可利用程序模拟随机丢失数据段的过程,选择解码成功率最高的矩阵G作为生成矩阵。由矩阵乘法可知矩阵P中的向量pi(i=1,2,…,K)是Z中多个向量的模2和(如p2=0*z1+1*z2+1*z3…)。模2加法等同于异或运算,即两个二进制数中对应位相加,不进位,相同为0,不同为1;
4)新组成的矩阵R=[X;P]为编码后的LED ID信息。
以上过程的示意图如图4所示。
进一步地,将编码后的多段数据以特定帧结构进行调制,产生OOK信号或FSK信号,并将所有特定帧循环周期性发送,从而传送整个长串码字包括:
1)将编码后的多个数据段发送,每个数据段作为一个发送单元,每两个发送单元前面***同步头信息和标记每个数据段编号的编号位,一个发送单元及它前面***的同步头信息和编号位即一个特定帧结构;
2)上述待发送信息即所有特定帧用OOK或FSK等的调制方式通过LED循环周期性发送。
进一步地,移动设备使用摄像头拍摄LED视频,获取图像中的明暗条纹包括:
1)根据发端LED闪烁频率和长码字的发送周期确定移动设备摄像头的曝光时间、曝光值和帧率等参数;LED闪烁频率和长码字的发送周期是由使用者初始设定并存储在移动设备中,对于移动设备来说是已知的,也可以通过对图像作频域分析得到LED闪烁频率,在长码字中加入附加的信息给出长码字的发送周期。
2)用接收终端的摄像头拍摄LED灯,得到一段连续时间的视频文件;
3)提取视频文件中的若干帧图片,得到一系列含有明暗条纹的图片。
进一步地,使用图像处理方法识别并解调数据
1)对每一帧的图片进行图像处理,依次提取每一图片中的明暗条纹并转换为二进制数据串,得到一系列二进制数据串;
2)在这一系列二进制数据串中寻找同步头,并提取出可识别的相邻两个同步头之间的数据,可得到多个数据段及它们的编号。由于接收到的这几个数据段相比于原始发送多个的数据段,缺失了几个数据段,无法直接按同步头编号进行简单拼接,因此要进一步对接收到的这几个数据段进行译码。
进一步地,对接收到的部分数据段译码得到最原始的灯ID信息。对于前面给出的三种编码方式,译码时都是根据发射端编码法则,即生成矩阵,由接收到的部分数据段来反推出发送的原始数据。因此均可以归结为“矩阵A和矩阵G相乘得到矩阵B,由矩阵B和矩阵G反推出A”问题,这个问题的解决可采用消息传递法、高斯消元算法等方法来实现。
这项技术在实际使用时,会根据具体应用场景和使用需求,一般只采用其中的一种编码方式和一种解码方式,也可以在特定帧中加入附加信息给出当前使用的是哪一种方式。
二、将多帧图片中的信息直接拼接得到长码字的信号发射和解调方法
1)LED灯对包含光源ID信息的数据进行调制,产生OOK信号或FSK信号,并以特定格式发送长串码字;
2)移动设备使用摄像头拍摄视频接收数据,获取图像中的明暗条纹,其中,图像的明暗条纹与光源的身份信息对应;
3)使用图像处理方法识别并解调数据,得到所述光源的身份信息;
进一步地,产生OOK信号或FSK,并以特定格式发送长串码字包括:
1)将格式转换后的身份信息分割成若干个指定长度的发送单位;
2)使用编码方法(如曼彻斯特编码)对每个发送单位的信号进行编码;
3)每两个发送单位之间***用于识别的同步头信息和编号;
4)待发送信号用OOK或FSK的调制方式通过LED循环发送。
进一步地,移动设备使用摄像头拍摄视频接收数据,获取图像中的明暗条纹包括:
1)根据发端LED闪烁频率和长码字的发送周期确定移动设备摄像头的曝光时间、曝光值和帧率等参数;LED闪烁频率是和长码字的发送周期可以由使用者初始设定并存储在移动设备中的,对于移动设备来说是已知的,也可以通过对图像作频域分析得到LED闪烁频率,在长码字中加入附加的信息给出长码字的发送周期。
2)用摄像头拍摄LED灯,得到一段连续时间的视频文件;
3)提取视频文件中的若干帧图片,得到一系列含有明暗条纹的图片。
进一步地,使用图像处理方法识别并解调数据,得到所述光源的身份信息包括:
1)对每一帧的图片进行图像处理,得到一系列二进制数据串;
2)寻找同步头,将两个相邻的同步头之间的数据提取出来。
3)去掉同步头部分,根据各个数据段的编号将有效数据拼接成长序列。
以上两个方案都可以实现长LED ID信息的传输以及从多帧图片中对长码字进行提取。方案二实现上相对简单。方案一比起方案二,在拍摄设备高速移动、图像成像质量差等恶劣情况下具有容错率高、识别速度快等优点,更适合用于实际应用。
与现有技术相比,本发明的积极效果为:
由于单张照片中能够得到的信息是有限的,现有技术只对单张照片进行处理因此传输的码字长度较短。本发明制定了多张照片分段传输长码字,因此能够实现长码字的传输;同时由于引入了异或编码的技术,因此在信噪比较低,信息丢失较严重时,仍能有较高的识别成功率。
附图说明
图1为本发明的方法流程图;
图2为编码方式1过程示意图;
图3为编码方式2过程示意图;
图4为编码方式3过程示意图;
图5为将编码后的LEDID信息R调制到LED灯光示意图;
图6为根据双向图恢复上层节点的示意图;
(a)初始译码,(b)删除度为1的节点,(c)再次需找度为1的节点,
(d)与S2相连的节点异或,(e)删除与S2相连的节点,(f)完成译码。
具体实施方式
下面是具体实施方案,并配合附图说明,对本方案作详细的说明。
一、基于对长码字进行编解码的信号发射及检测方案
关于生成矩阵G的构造,在最简单的方式2中提供了一种传输数据长度较短的特殊情况下的构造。
首先将通过LED灯发送的ID原始数据进行编码,方式1:
1.通过LED灯发送的ID原始数据一共M*K比特,分割为M个长度为K比特的数据段,每个数据段都是一个二进制向量,构成一个M的*L矩阵X=[x1;x2;…xM];其中每个数据段构成的是1*L的向量;
2.构造一个N*M的由0和1构成的生成矩阵G,将G与矩阵X相乘得到矩阵Z,根据矩阵乘法可知矩阵Z中的向量zi(i=1,2,…,N)是X中多个向量的模2和(如z2=0*x1+1*x2+1*x3…),模2加法等同于异或运算,即两个二进制数中对应位相加,不进位,相同为0,不同为1;
3.将Z作为冗余放在矩阵X的后面组成新的矩阵P=[X;Z]。
4.构造一个L*(M+N)的由0和1构成的生成矩阵G’,将G’与矩阵P相乘得到矩阵R,根据矩阵乘法可知矩阵R中的向量ri(i=1,2,…,L)是P中多个向量的模2和(如r2=0*p1+1*p2+1*p3…)。模2加法等同于异或运算,即两个二进制数中对应位相加,不进位,相同为0,不同为1;
5.R即编码后的LEDID信息。
以上过程的示意图如图2所示。
首先将通过LED灯发送的ID原始数据进行编码,方式2:
1.通过LED灯发送的ID原始数据一共M*K比特,分割为M个长度为K比特的数据段,每个数据段都是一个二进制向量,则可以构成一个M*L的矩阵X=[x1;x2;…xM];其中每个数据段构成的是1*L的向量;
2.构造一个N*M的由0和1构成的生成矩阵G,将G与矩阵X相乘得到矩阵Z,由矩阵乘法可知矩阵Z中的向量zi(i=1,2,…,N)是X中多个向量的模2和(如z2=0*x1+1*x2+1*x3…)。模2加法等同于异或运算,即两个二进制数中对应位相加,不进位,相同为0,不同为1;
3.将Z作为冗余放在矩阵X的后面组成新的矩阵R=[X;Z]。
4.R即编码后的LEDID信息。
以待发送的原始数据为6段即M=6,加入冗余为6段即N=6,传输过程中最多丢失4段为例,这样的条件下仍然不存在使解码绝对可成功的矩阵G,可使用程序,模拟在待确定的G形成的最终12段数据中,随机丢失0~4段数据,能够正确解码的概率,选择其中概率最高的G。根据具体情况也可能可以找到更合适的矩阵,下面提供一种特殊情况下的构造,例如:假设接收到的数据会8~12段数据会呈现连续的两段的特征,则使用以下生成矩阵G
使用本实施例提供的解码方式,以最差情况即丢失了4段数据,只接收到8段数据,也可以保证一定能解码成功。
以上过程的示意图如图3所示。
首先将通过LED灯发送的ID原始数据进行编码,方式3:
1.通过LED灯发送的ID原始数据一共M*K比特,分割为M个长度为K比特的数据段,每个数据段都是一个二进制向量,则可以构成一个M*L的矩阵X=[x1;x2;…xM];其中每个数据段构成的是1*L的向量;
2.对X进行预编码,预编码的具体方式可以是LDPC编码、RS编码或BCH编码等编码,产生一个N*L的矩阵Z,这里的预编码方法包括但是不仅限于上述3种提到的编码方法
3.构造一个K*N的由0和1构成的生成矩阵G,将G与矩阵Z相乘得到矩阵P,由矩阵乘法可知矩阵P中的向量pi(i=1,2,…,K)是Z中多个向量的模2和(如p2=0*z1+1*z2+1*z3…)。模2加法等同于异或运算,即两个二进制数中对应位相加,不进位,相同为0,不同为1;
4.新组成的矩阵R=[X;P],即编码后的LEDID信息。
以上过程的示意图如图4所示。
将编码后的LEDID信息R调制到LED灯光上。
R中一个元素作为一个发送单位,每个发送单位是一串由0和1组成的数字序列。利用OOK或FSK调制方式,在每两个发送单位之间添加同步头和编号位,其中编号位和数字序列均经过曼彻斯特编码后发送。本实施方案采用的同步头为10001,编号位长度为3bit,示意图如图5。
由于曼彻斯特码用01来表示0,10来表示1,因此,最后调制得到的一个发送单位的信息长度为Ls=6+3*2+K*2。发送高电平代表1,低电平代表0,高电平对应灯具发光,低电平对应灯具不发光。每个0和1信号持续的时间Ts相同,Fs=1/Ts称为LED灯的发射频率。一个完整的编码后ID信号的发送周期T=M*Ls*Ts。
移动设备使用摄像头拍摄LED视频,获取图像中的明暗条纹,具体步骤如下:
用调整好参数的摄像头拍摄LED灯,得到一段连续的视频文件,提取视频文件中的若干帧图片,得到一系列含有明暗条纹的图片。
使用图像处理方法对每一帧图像进行处理,得到一系列二进制数据串。
在这一系列二进制数据串中寻找同步头,并提取出两个同步头之间的数据,可以得到多个数据段及其编号。根据已知的发射端编码规则,对接收到的这些数据段进行译码得到原始的灯ID信息。对于前面给出的三种编码方式,译码时都是根据发射端编码法则,即生成矩阵,由接收到的部分数据段来反推出发送的原始数据。因此均可以归结为“矩阵A和矩阵G相乘得到矩阵B,由矩阵B和矩阵G反推出矩阵A”问题。对于这个问题本实施例提供了两种可行的译码方案。
①消息传递法
对于编码方式1的译码方法:
步骤1,由接收到的数据段可以得到R中部分元素,根据R和P的对应关系建立双向图,上层节点代表P中元素,下层节点代表R中元素。
步骤2,由于R中每个元素都是P中一个或多个元素的模2和,用度数来表示R中的某个元素是P中几个元素的模2和。任意选取一个度数为1的下层节点。如果不存在则译码停止;如果存在,即可恢复与该下层节点相连的的唯一上层节点。
步骤3,对于已经恢复的上层节点,若有度为不为1的下层节点与其相连,有异或运算的特点,可以通过这个已经恢复的上层节点来恢复其他下层节点,故可以删除它与其他下层节点之间的连线,对于这些下层节点来说它们的度数减小1。
步骤4,重复步骤2和3,直到恢复出所有的上层节点。即恢复了P中部分元素。
根据双向图恢复上层节点的示意图如图6所示。
步骤5,到步骤4已经恢复了向量P中部分元素,P=[X Z],若未能完全恢复出X中全部元素,则对Z进行步骤1,2,3,4中的操作,可以从Z得到一部分X中元素,从而提高了恢复出X中全部元素的概率。
对于编码方式2的译码方法:
由接收到的数据段可以得到R中部分元素,R=[X Z],由于接收到的仅是R中部分元素,若未能全部恢复出X中元素,则对Z进行下列操作。
步骤1,根据Z和X的对应关系建立双向图,上层节点代表X中元素,下层节点代表Z中元素。
步骤2,由于Z中每个元素都是X中一个或多个元素的模2和,用度数来表示Z中的某个元素是X中几个元素的模2和。任意选取一个度数为1的下层节点。如果不存在则译码停止;如果存在,即可恢复与该下层节点相连的的唯一上层节点。
步骤3,对于已经恢复的上层节点,若有度为不为1的下层节点与其相连,有异或运算的特点,可以通过这个已经恢复的上层节点来恢复其他下层节点,故可以删除它与其他下层节点之间的连线,对于这些下层节点来说它们的度数减小1。
步骤4,重复步骤2和3,直到恢复出所有的上层节点。即得到X中。
根据双向图恢复上层节点的示意图如图6所示。
对Z进行步骤1,2,3,4中的操作,可以从Z得到一部分X中元素,从而提高了恢复出X中全部元素的概率。
对于编码方式3的译码方法:
由接收到的数据段可以得到R中部分元素,R=[X;P],由于接收到的仅是R中部分元素,若未能全部恢复出X中元素,则对P进行下列操作。
步骤1,根据P和Z的对应关系建立双向图,上层节点代表Z中元素,下层节点代表P中元素。
步骤2,由于P中每个元素都是Z中一个或多个元素的模2和,用度数来表示P中的某个元素是Z中几个元素的模2和。任意选取一个度数为1的下层节点。如果不存在则译码停止;如果存在,即可恢复与该下层节点相连的的唯一上层节点。
步骤3,对于已经恢复的上层节点,若有度为不为1的下层节点与其相连,有异或运算的特点,可以通过这个已经恢复的上层节点来恢复其他下层节点,故可以删除它与其他下层节点之间的连线,对于这些下层节点来说它们的度数减小1。
步骤4,重复步骤2和3,直到恢复出所有的上层节点。即恢复了Z。
根据双向图恢复上层节点的示意图如图6所示。
步骤5,由于Z是X经过预编码得到的,根据预编码的译码规则对Z进行译码可以得到X,从而提高了恢复出X中全部元素的概率。
②高斯消元法
对编码方式1的译码方法
对生成矩阵进行列变换,对应列接收的数据包进行相同形式的变换,在生成矩阵G’中加入元素0补全为L*L的矩阵,变换为[Ek*k|P]的形式,对应的R1、R2…RL变成R1’、R2’…RL’。
所需要求的P1=R1’,P2=R2’…PL=RL’,即可得到P,P=[X;Z]。
由于接收到的仅是R中部分元素,若未能全部恢复出X中元素,则同理利用生成矩阵G对Z进行操作可恢复部分X中元素,由此可提高恢复出X中全部元素的概率。
对编码方式2的译码方法
R=[X;Z],由于接收到的仅是R中部分元素,若未能全部恢复出X中元素,则进行以下操作:
对生成矩阵G进行列变换,对应列接收的数据包进行相同形式的变换,在生成矩阵G中加入元素0补全为N*N的矩阵,变换为[Ek*k|P]的形式,对应的Z1、Z2…ZN变成Z1’、Z2’…ZL’。
所需要求的X1=Z1’,X2=Z2’…XL=XL’,即可得到部分X中元素,由此可提高恢复出X中全部元素的概率。
对编码方式3的译码方法
R=[X;P],由于接收到的仅是R中部分元素,若未能全部恢复出X中元素,则进行以下操作。
对生成矩阵G进行列变换,对应列接收的数据包进行相同形式的变换,在生成矩阵G中加入元素0补全为N*N的矩阵,变换为[Ek*k|P]的形式,对应的P1、P2…PN变成P1’、P2’…PL’。所需要求的Z1=P1’,Z2=Z2’…ZL=PL’,即可得到Z
由于Z是由X通过预编码得到的,根据预编码的译码规则即可得到X中部分元素,由此可提高恢复出X中全部元素的概率。
二、将多帧图片中的信息直接拼接得到长码字的信号发射和解调方法
通过LED灯发送的ID原始数据一共M*K比特,分割为M个长度为K比特的数据段,每个数据段看作一个向量,构成一个1*M的矩阵X=[x1;x2;…xM]。
将LED ID信息R调制到LED灯光上。X中一个元素作为一个发送单位,每个发送单位是一串由0和1组成的数字序列。利用OOK调制方式,在每两个发送单位之间添加同步头和编号位,其中编号位和数字序列均经过曼彻斯特编码后发送。本实施方案采用的同步头为10001,编号位长度为3bit,示意图如图5所示。
由于曼彻斯特码用01来表示0,10来表示1,因此,最后调制得到的一个发送单位的信息长度为Ls=6+3*2+K*2。发送高电平代表1,低电平代表0,高电平对应灯具发光,低电平对应灯具不发光。每个0和1信号持续的时间Ts相同,Fs=1/Ts称为LED灯的发射频率。一个完整的ID信号的发送周期T=M*Ls*Ts。
移动设备使用摄像头拍摄LED视频,获取图像中的明暗条纹,具体步骤如下:
用调整好参数的摄像头拍摄LED灯,得到一段连续的视频文件,提取视频文件中的若干帧图片,得到一系列含有明暗条纹的图片。
使用图像处理方法对每一帧图像进行处理,得到一系列二进制数据串。
寻找同步头,并提取出两个同步头之间的数据,可以得到多个数据段及其编号。根据编号将各个数据段拼接得到灯ID原始数据。
Claims (5)
1.一种新型可见光室内定位***的定位信息发射和检测方法,其步骤为:
1)对LED灯要发送的ID数据分成多个数据段并编码,得到该LED灯的待发送信号;其中,所述ID数据为可见光室内定位***的定位信息;
2)所述LED灯将待发送信号生成设定帧结构并调制后进行周期性发送;
3)移动设备使用摄像头拍摄所述LED灯,得到一视频文件;然后提取该视频文件中的若干图片并获取图片中的明暗条纹;
4)所述移动设备对获取的所述明暗条纹进行解调,然后根据步骤1)所用的编码法则对解调后的数据进行译码得到所述ID数据;
其中,对所述ID数据分成多个数据段并编码的方法为:
11)将所述ID数据分割成M个指定长度的数据段,每个数据段为一个二进制向量,则构成一个M*L的矩阵X=[x1;x2;…xM];其中每个数据段构成的是1*L的向量;xM为第M个数据段;
12)将该矩阵X与一个由0和1构成的大小为N*M的生成矩阵G相乘得到一个新的矩阵Z;该矩阵Z中的元素Zi是该矩阵X中多个向量的模2和;
13)将矩阵Z作为冗余放在矩阵X后面组成新的矩阵P=[X;Z];
14)将该矩阵P与一个由0和1构成的大小为L*(N+M)的生成矩阵G’相乘得到一个新的矩阵R;该矩阵R中的元素Ri是矩阵P中多个向量的模2和;该矩阵R为所述ID数据编码后的待发送信号;
或者,对所述ID数据分成多个数据段并编码的方法为:
11)将所述ID数据分割成M个指定长度的数据段,每个数据段为一个二进制向量,则构成一个M*L的矩阵X=[x1;x2;…xM];其中每个数据段构成的是1*L的向量;xM为第M个数据段;
12)将该矩阵X与一个由0和1构成的大小为N*M生成矩阵G相乘得到一个新的矩阵Z,该矩阵Z中的向量Zi是该矩阵X中多个向量的模2和;
13)将该矩阵Z作为冗余放在矩阵X后面组成新的矩阵R=[X;Z];该矩阵R为所述ID数据编码后的待发送信号;
或者,对所述ID数据分成多个数据段并编码的方法为:
11)将所述ID数据分割成M个指定长度的数据段,每个数据段为一个二进制向量,则构成一个M*L的矩阵X=[x1;x2;…xM];其中每个数据段构成的是1*L的向量;xM为第M个数据段;
12)对该矩阵X进行预编码,得到一N*L的矩阵Z;
13)将该矩阵Z与一个由0和1构成的大小为K*N的生成矩阵G相乘得到一个新的矩阵P;该矩阵P中的向量Pi是矩阵Z中多个向量的模2和;
14)将该矩阵P作为冗余放在矩阵X后面组成新的矩阵R=[X;P];该矩阵R为所述ID数据编码后的待发送信号。
2.一种新型可见光室内定位***的定位信息发射和检测方法,其步骤为:
1)对LED灯要发送的ID数据分成多个数据段并编码,得到该LED灯的待发送信号;其中,所述ID数据为可见光室内定位***的定位信息;
2)所述LED灯将待发送信号生成设定帧结构并调制后进行周期性发送;
3)移动设备使用摄像头拍摄所述LED灯,得到一视频文件;然后提取该视频文件中的若干图片并获取图片中的明暗条纹;
4)所述移动设备对获取的所述明暗条纹进行解调,然后对解调后的数据进行拼接得到所述ID数据;
其中,对所述ID数据分成多个数据段并编码的方法为:
11)将所述ID数据分割成M个指定长度的数据段,每个数据段为一个二进制向量,则构成一个M*L的矩阵X=[x1;x2;…xM];其中每个数据段构成的是1*L的向量;xM为第M个数据段;
12)将该矩阵X与一个由0和1构成的大小为N*M的生成矩阵G相乘得到一个新的矩阵Z;该矩阵Z中的元素Zi是该矩阵X中多个向量的模2和;
13)将矩阵Z作为冗余放在矩阵X后面组成新的矩阵P=[X;Z];
14)将该矩阵P与一个由0和1构成的大小为L*(N+M)的生成矩阵G’相乘得到一个新的矩阵R;该矩阵R中的元素Ri是矩阵P中多个向量的模2和;该矩阵R为所述ID数据编码后的待发送信号;
或者,对所述ID数据分成多个数据段并编码的方法为:
11)将所述ID数据分割成M个指定长度的数据段,每个数据段为一个二进制向量,则构成一个M*L的矩阵X=[x1;x2;…xM];其中每个数据段构成的是1*L的向量;xM为第M个数据段;
12)将该矩阵X与一个由0和1构成的大小为N*M生成矩阵G相乘得到一个新的矩阵Z,该矩阵Z中的向量Zi是该矩阵X中多个向量的模2和;
13)将该矩阵Z作为冗余放在矩阵X后面组成新的矩阵R=[X;Z];该矩阵R为所述ID数据编码后的待发送信号;
或者,对所述ID数据分成多个数据段并编码的方法为:
11)将所述ID数据分割成M个指定长度的数据段,每个数据段为一个二进制向量,则构成一个M*L的矩阵X=[x1;x2;…xM];其中每个数据段构成的是1*L的向量;xM为第M个数据段;
12)对该矩阵X进行预编码,得到一N*L的矩阵Z;
13)将该矩阵Z与一个由0和1构成的大小为K*N的生成矩阵G相乘得到一个新的矩阵P;该矩阵P中的向量Pi是矩阵Z中多个向量的模2和;
14)将该矩阵P作为冗余放在矩阵X后面组成新的矩阵R=[X;P];该矩阵R为所述ID数据编码后的待发送信号。
3.如权利要求1或2所述的方法,其特征在于,所述预编码方法为LDPC编码、RS编码或BCH编码。
4.如权利要求1或2所述的方法,其特征在于,所述步骤2)的实现方法为:将编码后的每个数据段作为一个发送单元,每两个发送单元前面***同步头和标记每个数据段编号的编号位,将一个发送单元及其前面***的同步头和编号位作为一所述设定帧结构;然后进行调制后周期性发送。
5.如权利要求4所述的方法,其特征在于,所述移动终端对获取的所述明暗条纹进行解调的方法为:依次将每一图片的明暗条纹转换为一二进制数据串,得到一系列二进制数据串;然后从该一系列二进制数据串中寻找所述同步头,并提取出相邻两同步头之间的数据,得到多个数据段及编号。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710217927.4A CN106921434B (zh) | 2017-04-05 | 2017-04-05 | 一种新型可见光室内定位***的定位信息发射和检测方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710217927.4A CN106921434B (zh) | 2017-04-05 | 2017-04-05 | 一种新型可见光室内定位***的定位信息发射和检测方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN106921434A CN106921434A (zh) | 2017-07-04 |
CN106921434B true CN106921434B (zh) | 2019-05-21 |
Family
ID=59567179
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710217927.4A Active CN106921434B (zh) | 2017-04-05 | 2017-04-05 | 一种新型可见光室内定位***的定位信息发射和检测方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106921434B (zh) |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107240295A (zh) * | 2017-07-27 | 2017-10-10 | 中航联创科技有限公司上海分公司 | 基于可见光相机通信的地下停车场导航*** |
CN107835050B (zh) * | 2017-11-01 | 2019-06-18 | 中国科学院计算技术研究所 | 一种基于可见光通信的定位方法及*** |
CN108833013B (zh) * | 2018-06-11 | 2020-02-21 | 北京科技大学 | 一种可见光收发方法及*** |
CN109541544B (zh) * | 2018-10-24 | 2022-11-08 | 中山大学 | 一种异步可见光定位方法 |
CN110531318B (zh) * | 2019-09-03 | 2021-04-30 | 北京理工大学 | 一种用于可见光成像室内定位扩展发光单元id的方法 |
CN111711484A (zh) * | 2020-06-01 | 2020-09-25 | 深圳市南科信息科技有限公司 | 一种基于可见光成像定位的led-id高效编码算法 |
CN112511226B (zh) * | 2020-11-12 | 2022-01-28 | 暨南大学 | 可见光通信技术中照明、定位、通信三用的编码方法 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103383446A (zh) * | 2013-04-09 | 2013-11-06 | 北京半导体照明科技促进中心 | 基于可见光的室内定位方法、装置和***以及光源 |
CN103823204A (zh) * | 2014-03-10 | 2014-05-28 | 北京理工大学 | 一种基于可见光标签的室内定位方法 |
CN104079351A (zh) * | 2014-04-22 | 2014-10-01 | 中国人民解放军信息工程大学 | 一种可见光通信数据传输方法和装置 |
WO2016045391A1 (zh) * | 2014-09-24 | 2016-03-31 | 中兴通讯股份有限公司 | 一种数据传输方法及装置 |
-
2017
- 2017-04-05 CN CN201710217927.4A patent/CN106921434B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103383446A (zh) * | 2013-04-09 | 2013-11-06 | 北京半导体照明科技促进中心 | 基于可见光的室内定位方法、装置和***以及光源 |
CN103823204A (zh) * | 2014-03-10 | 2014-05-28 | 北京理工大学 | 一种基于可见光标签的室内定位方法 |
CN104079351A (zh) * | 2014-04-22 | 2014-10-01 | 中国人民解放军信息工程大学 | 一种可见光通信数据传输方法和装置 |
WO2016045391A1 (zh) * | 2014-09-24 | 2016-03-31 | 中兴通讯股份有限公司 | 一种数据传输方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
CN106921434A (zh) | 2017-07-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106921434B (zh) | 一种新型可见光室内定位***的定位信息发射和检测方法 | |
CN105871461B (zh) | 一种基于光二维码的多址接入方法及其可见光通信*** | |
KR101773446B1 (ko) | 컬러 qr코드를 생성하고 인식하는 방법 및 시스템 | |
CN108736973B (zh) | 一种可见光通信的调频编码解码及扩码方法 | |
JP2017511034A (ja) | 符号化光の休止期間を用いたシグナリング | |
US20160359561A1 (en) | Coded light | |
KR101803317B1 (ko) | 인체 통신을 수행하도록 구성된 캡슐 내시경 송신기 및 캡슐 내시경 수신기, 그리고 이들을 이용한 인체 통신 방법 | |
US8385470B2 (en) | Coding a signal with a shuffled-Hadamard function | |
Schmid et al. | Using smartphones as continuous receivers in a visible light communication system | |
KR20190047527A (ko) | 광학 카메라 통신 장치 및 방법 | |
CN107222258A (zh) | 一种数据获取方法、数据发送方法、装置及数据传输*** | |
CN111108702B (zh) | 用于对基于光的通信报文进行解码的技术 | |
KR20160137846A (ko) | 가시광 통신 시스템을 이용한 데이터 송수신 방법 및 장치 | |
US6750790B2 (en) | Data-encoding apparatus, data-encoding method, data-decoding apparatus, data-decoding method, data-transmitting apparatus, data-receiving apparatus, data storage medium and computer programs | |
CN107222260A (zh) | 一种基于变数据区长度的可见光通信编码扩码方法 | |
KR20180117042A (ko) | 희소 코딩을 이용한 정보 전송 방법 및 장치 | |
Alfarozi et al. | Square wave quadrature amplitude modulation for visible light communication using image sensor | |
CN107564064A (zh) | 一种定位点、其编码方法、定位方法及其*** | |
CN207218702U (zh) | 一种基于通用cmos摄像头的可见光通信装置 | |
CN107682692A (zh) | 光成像通信的自适应检测***及方法 | |
Tang et al. | Sequential maximum likelihood decoding incorporating reliability determination for image sensor communication | |
US11979193B2 (en) | Communication method and device in optical camera communication system | |
CN110649966B (zh) | 基于可见光和手机摄像头成像特性实现近距离光通信的方法 | |
CN108023640B (zh) | 一种基于平板灯和移动终端摄像头的可见光通信*** | |
US11005564B2 (en) | Communication method and apparatus using hybrid modulation scheme in communication system |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |