(上海航空電器有限公司, 上海 201108)
高效率的變字長顏色編碼與解碼技術*
欒新源
(上海航空電器有限公司, 上海 201108)
提出了一種新的mB/nB(m 光通信;變字長顏色編碼;解碼 隨著LED在照明、通信等領域的廣泛應用,可見光通信(Visible Light Communications,VLC)近年來得到迅速發(fā)展。通過在公共基礎照明設施上增加數(shù)據(jù)傳輸功能,就可構建室內(nèi)可見光無線通信網(wǎng)絡,將信息從燈具發(fā)送到客戶端??梢姽馀c日常生活息息相關,辦公室、家庭以及公共場合中許多設備均含可見光光源,可為室內(nèi)用戶提供隨時隨地的便捷數(shù)據(jù)服務。 表1比較了各種定位技術性能[1]。其中,VLC定位技術不但定位精度高,而且具有高速通信的優(yōu)勢,被認為是極具發(fā)展?jié)摿蛻们熬暗募夹g。 基于成像VLC定位系統(tǒng)用成像器件做接收端,用圖像和燈具之間的幾何關系定位,試驗結(jié)果表明,該方法的誤差精度可控制在數(shù)厘米范圍內(nèi)[2-3]。表2比較了幾種VLC定位技術性能[4]。 表1 室內(nèi)定位技術性能比較 注:精度在0.01~0.1 m,稱為厘米級;0.1~0.5 m,稱為分米級;0.5~1 m,稱為亞米級;1~10 m,稱為米級。 由于基于單攝像頭接收方法與基于雙攝像頭接收方法的定位精度相近,而實施更簡單,因此基于單攝像頭接收的定位技術是未來趨勢。中國互聯(lián)網(wǎng)協(xié)會發(fā)布的《中國移動互聯(lián)網(wǎng)發(fā)展狀況及安全報告(2017)》顯示,2016年中國境內(nèi)活躍智能手機達23.3億部,這些智能手機普遍擁有攝像頭及安裝應用軟件的能力,為基于單攝像頭接收的定位技術提供了良好的發(fā)展契機[5]。但目前基于單攝像頭接收的VLC定位技術存在通信編碼效率有限、定位實時性差的問題,為此本文提出一種變字長顏色編碼技術來提高通信效率,從而進一步促進手機VLC定位技術的普及。 表2 幾種定位技術性能對比 注:TOA,Time Of Arrival;TDOA,Time Difference Of Arrival;AOA,Arrival Of Angle;RSS,Received Signal Strength。 1.1 變字長編碼技術 mB/nB(m 變字長編碼技術目的是獲得較高的照明穩(wěn)定度,同時提高編碼效率,電路實施比OFDM等編碼方法要簡潔,硬件成本也得以大幅下降。其傳輸流程如圖1所示。 圖1 變字長編碼技術發(fā)射與接收框圖 12B/14B編碼是將12位二進制串映射到14位二進制編碼空間的方法,實現(xiàn)方法有同步塊分組法與查表法。同步塊分組法分解成7B/8B和5B/6B計算編碼,算法復雜[6];查表法則需要占用4 096字節(jié)的RAM。 在12位編碼中含有少于5個0或1組成的組合個數(shù)為: 占總數(shù)1 588/4 096=38.77%的碼需要映射到14位編碼中去,使得0和1個數(shù)的差值不大于2。 故變字長編碼方法就是只映射這38.77%的二進制串,剩余的二進制串中0和1的個數(shù)相對均衡,不做映射。故而12位二進制串編碼中有38.77%采用14位二進制串傳輸,字節(jié)長度會變長,另外61.23%依然采用12位傳輸。 1.2 變字長顏色編碼設計 在早期的研究中設計了一款用琥珀色、薄荷色和藍色混光的筒燈[7],顯色指數(shù)在94%以上,混光后發(fā)光效率為80 lm/W以上,遠高于RGB三色混光約23 lm/W的發(fā)光效率。本編碼技術以琥珀色、薄荷色和藍色混光為例,詳細描述編、解碼規(guī)則。 圖2展示了12位顏色編碼效果。a0,a1和a2位是前置頭,用于判定數(shù)據(jù)的起始位置。a3~a14為數(shù)據(jù)位,其中a0不能為琥珀色。a0,a1和a2是分時混光色。例如前述研究的混色比例中[7],同時點亮薄荷色加琥珀色LED呈現(xiàn)的是低色溫暖白色。如果先點亮薄荷色,接著關掉,然后快速點亮琥珀色,再關掉,由于人眼有視覺暫留的現(xiàn)象,看到的還是低色溫暖白色,這種混光方法稱為場序顏色顯示[8](Field-sequential color displays)。 圖2 12位顏色編碼 圖3展示了14位顏色編碼效果。a0,a1和a2位是前置頭,用于判定數(shù)據(jù)的起始位置。a3~a16為數(shù)據(jù)位,其中a0為琥珀色,表示傳輸數(shù)據(jù)位長為14位。 圖3 14位顏色編碼 新的顏色編碼技術使得12B/14B變字長編碼有了高效的實施手段。該顏色編碼技術利用場序顏色顯示技術將顏色位作為前置頭,用來表明字節(jié)的開始。a3~an為數(shù)據(jù)區(qū),12位編碼n取14,14位編碼n取16。編碼步驟如下: ① 設有十進制數(shù)D,先轉(zhuǎn)成二進制數(shù): 式中“%”符號為求余數(shù),“/”符號為整除。 ② 將二進制數(shù)首尾互換,使之滿足: D=an×2n-3+an-1×2n-4+…+a3 1.3 新編碼技術性質(zhì)定義 設利用新的12B/14B變字長編碼技術生成的序列記為A={a0,a1…an},它滿足如下性質(zhì)。 性質(zhì)1: 性質(zhì)2:a0,a1,a2只能是三種顏色(琥珀色、藍色和薄荷色)中的一種,且不能重復。a3…an只能是黑色或白色。14位編碼時,a0必為琥珀色,a1為藍色或薄荷色,a2必對應為薄荷色或藍色。12位編碼時,a0只能為藍色或薄荷色,a1從剩下兩種顏色選一,a2為剩下的一種顏色。 性質(zhì)3:數(shù)據(jù)高位在后,即先傳數(shù)據(jù)的低位,然后傳高位,解碼時可實現(xiàn)向下兼容。 性質(zhì)4:0和1的個數(shù)差值不大于2。 可利用性質(zhì)1來解碼。由性質(zhì)2可知,除了利用a0位來表明傳輸?shù)氖?2位編碼還是14位編碼外,還可利用顏色的不重復性來做顏色校驗,驗證數(shù)據(jù)傳輸?shù)臏蚀_性。利用性質(zhì)4也可做數(shù)據(jù)傳輸準確性校驗。 與傳統(tǒng)添加字節(jié)頭方法相比,新的顏色編碼技術編碼效率高,減少了冗余碼元。 考慮到數(shù)據(jù)區(qū)條紋會受到外界光干擾、顏色污染等,除采取二值化、濾波等圖像處理手段外,這里還引入算術平均法計算單位寬度。設數(shù)據(jù)區(qū)條紋寬度分別為w0~wg,g≤13,設平均寬度為mx,則有: 每個條紋寬度與平均寬度比值為0或1的個數(shù),也即Resulti表示連續(xù)若干個0或1。這里定義白條紋為1;黑條紋為0。計算方法為: 將上式中的寬度比值拼接成二進制串,可表示為: 此時二進制串Binary也可表達為(n≤16): 高位在后,將上式中二進制串轉(zhuǎn)成十進制數(shù): ResultF=an×2n-3+an-1×2n-4…+a3 如圖4所示,每個數(shù)據(jù)都是單位長度,設白為1,黑為0,二進制串為{10 1010 1010 1010},高位在后,由上式轉(zhuǎn)成十進制數(shù)為5 461。 圖4 數(shù)據(jù)寬度 解碼示例如圖5所示,設w0~w8寬度為5個像素,w9為15個像素。平均像素寬度mx=60/12=5,則w0~w8與平均寬度的比值為1,w9與平均寬度的比值為3。二進制串為{1010 1010 1000},高位在后,由上式轉(zhuǎn)成十進制數(shù)為341。 圖5 解碼示例 編碼效率是指信息碼元位數(shù)與碼長之比,也稱為碼率,通常用η來表示,反映碼字中有用碼元(信息碼元)所占的比例,其是評判各種編碼方法有效性優(yōu)劣的重要指標。η值越大,單位時間內(nèi)信道傳送的信息碼元的效率越高。要傳送k位信息碼元,經(jīng)過編碼后得到長度為n (n≥k)的碼字,編碼效率為 η=k/n 用于VLC成像定位系統(tǒng)的通信編碼方法主要有4-PPM編碼方法[9]、模板匹配法[10]及頻率編碼法[11-12]。其中模板匹配法依賴于不同圖案模板的匹配以實現(xiàn)信息的傳遞,較難量化其編碼效率。成像大小變化較大時,模板匹配計算量比較大,最終會造成定位系統(tǒng)實時性低。 頻率編碼法中一幀圖像的多個條紋(大于3才有周期循環(huán))只能傳輸1位信息,傳輸效率約為33%, 而4-PPM編碼效率只有50%。新的12B/14B變字長編碼效率提高到94%。 變字長雖然可以提高編碼效率,但是必須提供額外的信息告訴接收端當前字長數(shù),所以在一般通信系統(tǒng)中變字長編碼比較少見?;旃饧夹g的出現(xiàn)正好提供了一個好的載體,通過顏色編碼技術實現(xiàn)12B/14B變字長編碼。 通過顏色位做區(qū)分符,實現(xiàn)一符三用:做起始位標志、12位/14位標志位和校驗位。和其他形式的區(qū)分方法相比,顏色編碼技術具有傳輸效率高、算法復雜度低的優(yōu)點(如表3所列)。 表3 區(qū)分方法對比 由于3種顏色是事先已知的,所以接收端可將3種顏色作為標志,檢查是否正確,另外還可用0和1的個數(shù)差值不大于2的特性來做校驗。如表4所列,和其他形式的校驗方法相比,顏色編碼技術仍然具有占用位數(shù)少、傳輸效率高、算法復雜度低的優(yōu)點。 表4 檢驗方法對比 變字長顏色編碼技術能夠用一幀圖像完成完整的數(shù)據(jù)傳輸,包含字節(jié)頭且數(shù)據(jù)位足夠長,還含有校驗信息。表5是變字長顏色編碼和現(xiàn)有編碼方法的性能對比。用于VLC成像定位系統(tǒng)的4-PPM編碼方法,需要額外的前置頭、字節(jié)頭和校驗碼,且解碼復雜[9]。模板匹配法[10]能表達的地址個數(shù)有限,算法本身也容易受到環(huán)境光干擾。頻率編碼法[11-12]一幀圖像只能傳輸1位信息,傳輸效率低,需要多幀圖像組成一個字節(jié),而且需要額外的字節(jié)頭和校驗位。 表5 變字長顏色編碼和現(xiàn)有編碼方法性能比較 利用研制的筒燈[7](顏色簡寫如表6所列)進行編碼實驗。在距離筒燈2 m位置,攝像頭(規(guī)格如表7所列)拍攝筒燈,攝像頭光圈為F1.4,曝光時間為50 μs。圖像捕捉與解碼程序用PC端的 VS2010 C++語言開發(fā)。筒燈的PWM頻率為1 kHz,遠超人眼反應時間。 表6 顏色對照表 表7 成像器件規(guī)格 圖6 普通編碼 圖6展示了在沒有區(qū)分符情況下的碼元發(fā)送效果。沒有區(qū)分符,筒燈發(fā)送出來的條紋首尾相連,按二進制解碼很困難。設定筒燈編號為1365,要求筒燈采用12位顏色編碼發(fā)送,根據(jù)編碼規(guī)則,可編碼為M,B1,A,1,0,1,0,1,0,1,0,1,0,1,0,接收端程序?qū)ζ溥M行識別與解碼。 圖7中Gmask和Rmask為搜索到的顏色頭,ColorBar為條紋區(qū)。根據(jù)第1節(jié)的編碼規(guī)則可知,第1位和第3位是薄荷色和琥珀色,第2位必然為藍色。在第2位條紋區(qū)搜索10個點確認為藍色,顏色位校驗正確。顏色頭之間為數(shù)據(jù)區(qū),找到顏色頭位置后,數(shù)據(jù)區(qū)也可確定。圖7中白色矩形框上方imageROI小窗口為顏色頭之間的數(shù)據(jù)區(qū)條紋。 圖7 顏色頭辨識 理想數(shù)據(jù)區(qū)應是黑白條紋,但從圖7中看出數(shù)據(jù)區(qū)受到其他顏色或噪聲的污染。為減少噪聲對數(shù)據(jù)的污染,將數(shù)據(jù)條紋圖像灰度化、高斯濾波、二值化后得到黑白條紋圖像,該結(jié)果顯示在圖8的ROI窗口中(圖右下方黑白條紋窗口),cmd窗口中height=39值為數(shù)據(jù)條紋高度,width=189值為條紋寬度,單位為像素。 黑白數(shù)據(jù)條紋解碼實施過程如下: ① 搜索白條的寬度; ② 對白條的寬度排序,取中間值作為該白條寬度; 通過卷積神經(jīng)網(wǎng)絡在目標檢測領域的應用,本文實現(xiàn)了鐵路視頻圖像關鍵幀提取器的設計和實現(xiàn),其中粗識別階段選取傳統(tǒng)的SIFT特征點,精識別階段利用卷積神經(jīng)網(wǎng)絡挖掘圖像深度特征,提高了關鍵幀提取的精度。 ③ 搜索黑條的寬度; ④ 對黑條的寬度排序,取中間值作為該黑條寬度; ⑤ 重復①,直到到達圖像最右邊; ⑥ 將所有條紋寬度arWidth[i]相加,計算平均寬度mx=寬度和/12,代碼如下: for(i=0; i<12; i++) mx += (double)arWidth[i]; mx /= 12.0; ⑦ 求條紋寬度與平均寬度的比值result[i],代碼如下: for(i=0; i<12; i++){ result[i] =(int)((double)arWidth[i]/mx+0.5) ; t[i]=0; } ⑧ 將結(jié)果拼接成二進制串,代碼如下: int temp16=0; for(i=0; i<6; i++) { for(j=0;j t[j+temp16]=1; for(j=0;j t[j+result[2*i]+temp16]=0; temp16=temp16+result[2*i]+result[2*i+1]; } 數(shù)組t[]存儲拼接完成結(jié)果。 ⑨ 將t[]存儲的二進制串轉(zhuǎn)換成十進制數(shù),高位在后,代碼如下: for(i=11;i>=0;i--){ temp12=pow(2.0,i); //pow(2.0,i)函數(shù)表示2i resultF=t[i]*temp12+resultF; } 數(shù)組轉(zhuǎn)換后的十進制值存儲在resultF中。 ⑩ 輸出解碼結(jié)果resultF。 解碼后獲取到筒燈發(fā)送的編號,通過編號可查詢到預先設置的筒燈坐標信息,進而通過圖像定位公式計算出手持終端的位置。亮為1,黑為0,可目測黑白數(shù)據(jù)條紋二進制碼數(shù)值為1010 1010 1010,傳輸規(guī)則是高位在后,手工計算值為1 365。 圖8 圖像處理及解碼 表8中“要求發(fā)送值”為根據(jù)第1節(jié)編碼方法得出的理論值,“程序輸出值”表示筒燈實際發(fā)送出的值及接收端程序處理的值,“觀測值”指通過目測輸出的圖像,手工計算的值。圖8中code=1365值即為程序解碼值。(cmd窗口中X=328.651,Y=938.638和Z=912.388為程序通過圖像定位公式,計算出的攝像頭像素面中心在室內(nèi)坐標系中的坐標,Distance=1832.612為燈到攝像頭鏡頭的垂直距離,單位為mm。) 表8 實施效果 通過表8對比,可知筒燈按照要求發(fā)送了編碼信息,而解碼程序很好地執(zhí)行解碼任務,解出正確的碼值,充分說明本編碼方法是切實可行的。 [1] 張宴龍.室內(nèi)定位關鍵技術研究[D].合肥:中國科學技術大學,2014. [2] Sevincer A,Bhattarai A,Bilgi M,et al.LIGHTNETs:Smart LIGHTing and Mobile Optical Wireless NETworks-A Survey[J]. Communications Surveys&Tutorials,2013,15(4):1620-1641. [3] Liu Y,Dashti M,Zhang J.Indoor localization on mobile phone platforms using embedded inertial sensors[C]//Proceedings of the Positioning Navigation and Communication (WPNC),2013:1-5. [4] 許銀帆,黃星星,李榮玲,等.基于LED可見光通信的室內(nèi)定位技術研究[J].中國照明電器,2014(4):11-15. [5] Schroth G,Huitl R,Chen D,et al.Mobile Visual Location Recognition[J].Signal Processing Magazine,2011,28(4):77-89. [6] 秦蒙,王輝,秋云海,等.光纖通信中8B/10B編碼器的設計與實現(xiàn)[J].電視技術,2014(1):50-54. [7] 欒新源,劉廷章,周壯麗.基于改進人工魚群算法的LED混光方法[J].發(fā)光學報,2015(1):113-120. [8] Miettinen I,N?s?nen R,H?kkinen J.Effects of Saccade Length and Target Luminance on the Refresh Frequency Threshold for the Visibility of Color Break-Up[J].Journal of Display Technoogy,2008,4(1):81-85. [9] Nakazawa Y,Makino H,Nishimori K,et al.Indoor positioning using a high-speed, fish-eye lens-equipped camera in visible light communication[C]//Proceedings of the 2013 International Conference on Indoor Positioning and Indoor Navigation,2013:1-8. [10] Cha J,Lee S.A study on location DB matching of IPS in specific area using LED lights and image sensor[C]//Proceedings of the 4th International Conference on Future Generation Information Technology,2012:202-205. [11] Kuo Y S,Pannuto P,Hsiao K J,et al.Luxapose: Indoor positioning with mobile phones and visible light[C]//Proceedings of the 20th ACM Annual International Conference on Mobile Computing and Networking,2014:447-458. [12] 郭成,胡洪.光信號解碼方法和裝置及系統(tǒng):中國,201410141223.x [P].2014. 欒新源,主要研究領域為光通信、智能照明等。 High-efficiency Variable-length Color Coding and Decoding Technology LuanXinyuan (Shanghai Aviation Electric Co.,Ltd.,Shanghai 201108,China) The mB/nB(m visible light communication;variable-length color coding;decoding TN929.1 : A 2017-06-12) 裝備預研中航工業(yè)聯(lián)合基金(6141B05060106)。引 言
1 變字長顏色編碼技術
2 變字長顏色碼解碼技術
3 變字長編碼性能分析
4 實驗結(jié)果及分析
結(jié) 語