足以下條件,即認為像素點P位于角點追蹤器中間的黑色編碼小方格之中,否則,繼 續(xù)掃描;
[0091] 所述的滿足條件為:
[0092] Color1, color2, color3, Color4是相同的顏色;
[0093] (b3 - bj和(b2 - b4)都大于最小的編碼小方格尺寸,所述的最小的編碼小方格尺 寸設(shè)置為6像素;
[0094] (b3 - bj和(b2 - b4)都小于最大的編碼小方格尺寸,所述的最大的編碼小方格尺 寸設(shè)置為30像素。
[0095] 所述的根據(jù)提取的發(fā)送方顯示頻率fd和接收方拍攝頻率f。確定采用頁面選擇或 是頁面同步算法獲取二維碼頁面的步驟為:
[0096] A.當fd < l/2fc時,在接收方,發(fā)送方每張二維碼頁面最少被拍攝到兩次,因此使 用頁面選擇算法,通過頭部提取的序列號辨別出相同頁面并選出模糊度最小的頁面用于解 碼;
[0097] B.當l/2fc〈fd〈fc時,在接收方,發(fā)送方每張二維碼頁面只能被拍攝到1次完整的 頁面,在拍攝第2次的過程中,發(fā)送方手機屏幕已經(jīng)刷新為下一幀二維碼頁面,此時采用頁 面同步算法;其中,默認發(fā)送方顯示頻率小于fd接收方拍攝頻率fc,否則部分頁面無法讀 取;
[0098] 其中,采用頁面同步算法,從二維碼圖片頭部信息中得到該頁面同步框標記符;用 00, 01,10, 11循環(huán)地標記連續(xù)的頁面,定義每個頁面標記符與它前一個頁面標記符的差值 為1,相隔1個頁面的差值為2,相隔2個頁面的差值為3,例如01-00 = 1,則其差值=1, 00-11 = 1,11-00 = 3,從上往下識別頁面同步框左右兩列的顏色,當識別到顏色發(fā)生變化 時用dt表示顏色差值:
[0099] a. dt = 0 :說明該張二維碼圖片是一張完整的二維碼頁面;
[0100] b. dt = 1 :說明該張二維碼由兩張相鄰二維碼頁面拼合而成,頁面同步框顏色發(fā) 生變化的地方即為接縫處,可以通過重新組合就能恢復(fù)除原始的二維碼頁面;
[0101] C. dt彡1 :說明中間有些頁面完全沒拍攝到。
[0102] 步驟4 :利用步驟3得到的二維碼頁面,采用漸進的定位器定位算法,在上一個已 知位置的定位器的基礎(chǔ)上計算下一個定位器的位置,找到代碼區(qū)的左、中、右三列黑色定位 器;
[0103] 所述的找到代碼區(qū)中間一列的定位器中心點的位置步驟為:
[0104] 步驟4. 1 :在整個代碼區(qū)左、中、右放置3列黑色的定位器,每列定位器間隔一個 編碼小方格,為了定位器的位置易于檢測并確定,代碼區(qū)編碼使用白、紅、綠、藍四種顏色, 繼而準確定位出編碼小方格的位置;從而防止由于照相機鏡頭畸變帶來的二維碼圖片變形 造成定位錯誤(即便是整體嚴重扭曲變形的圖像,每個編碼小方格仍然是比較規(guī)則的正方 形)。
[0105] 步驟4. 2 :用x、y表示二維碼頁面中的橫縱坐標位置,使用中心調(diào)整算法由第i個 代碼定位器位置(Xl,Y1)計算第i+Ι個代碼定位器(x1+1,y 1+1)的位置;所述的步驟4. 2包括 如下步驟:
[0106] 步驟4. 2. 1 :在以(x1+1,y1+1)為中心,BST為邊長的矩形框中找出所有黑色像素點;
[0107] 步驟4. 2. 2 :計算矩形框內(nèi)黑色像素位置的平均值,將其賦值給(x1+1,y1+1);
[0108] 步驟4. 2. 3 :重復(fù)步驟步驟4. 2. 1和步驟4. 2. 2 ;直到(xi+1,yi+1)收斂于一個穩(wěn)定 的值;
[0109] 其中,BST表示左上角角點追蹤器的中央黑色的編碼小方格的豎直長度;
[0110] 步驟4. 3 :計算中間一列的定位器中心點的位置;所述的步驟4. 3包括如下步驟:
[0111] 步驟4. 3. 1 :以邊長為3 X BST矩形作為搜尋區(qū)域,從左上角的像素點開始掃描,如 果不是黑色像素點,就繼續(xù)掃描,否則就從當前像素向四個方向搜索;
[0112] 步驟4.3.2 :如果是黑色像素點,則在其上下左右四個方向試探,直到不是黑色像 素點的點為止;如果有:
[0113] BSmin < bu+bd < BSmax 并且 BSmin < bi+br < BSmax
[0114] 則搜索到的黑色像素就是中間第一個代碼定位器的像素點;
[0115] 其中,bu,bi,bd和br表示向上,向左,向下和向右搜索所走過的像素點的數(shù)量, BSmin、BSmax表示編碼小方格尺寸的最小值和最大值;
[0116] 第一個代碼定位器找到后,使用中心調(diào)整算法找到它的中心點,繼而找到該列的 其他定位器。
[0117] 所述的中心調(diào)整算法步驟為:
[0118] 步驟4. 1 :在以(xi+1 ;yi+l)為中心,BST為邊長的矩形框中找出所有黑色像素 占 .
[0119] 步驟4. 2 :計算矩形框內(nèi)黑色像素位置的平均值,將其賦值給(xi+1 ;yi+l);
[0120] 步驟4· 3 :重復(fù)stepl和step2直到(xi+1 ;yi+l)收斂于一個穩(wěn)定的值。
[0121] 步驟5:使用左列和中列定位器定位左半部分的編碼小方格,中列和右列定位器 定位右半部分的編碼小方格,從而精確定位出代碼區(qū);
[0122] 所述的使用定位器定位編碼小方格步驟為:假設(shè)左、中列定位器兩點間有η-I個 編碼小方格,則第i個編碼小方格的位置(X1, Y1)計算方法如下:
[0124] 其中,(Xl,yi)和(Xni,yj表示該行的左,中列定位器的位置;同樣,用此公式計算 右半部分的編碼小方格的位置,對于沒有定位器的行,則計算出最左邊、中間、最右邊的編 碼小方格位置然后作為定位器。
[0125] 步驟6 :對每個編碼小方格的顏色進行均值降噪,并基于HSV模型進行顏色識別;
[0126] 所述的HSV模型識別五種顏色步驟為:
[0127] 步驟6. 1 :計算亮度閥值Tv :
[0129] 其中,Vb為亮度小于0. 1的像素(認為是黑色)的平均亮度,Vo為其他像素的平 均亮度,μ是一個能平衡黑色和其他四種顏色之間的閾值的系數(shù),通常取〇〈μ〈?,本方法 取 μ = 〇· 4 ;
[0130] 步驟6. 2 :由于飽和度在不同亮度下改變很少,可視為常數(shù),因此設(shè)置飽和度閾值 Tsat = 0. 41 ;
[0131] 步驟6.3 :當亮度小于IV,像素點為黑色,否者,如果飽和度小于Tsat,那么該像素 點為白色,如果一個像素點既不是黑色也不是白色,那么進一步考察它的色調(diào)hue,如果有 60°〈hue〈180°,那么該像素為綠色,如果180°〈hue〈300°,那么該像素為藍色,如果以 上都不是,為紅色。
[0132] 步驟7 :對每個二維碼頁面提取出的數(shù)據(jù)進行RS碼糾錯,然后對糾錯后的信息 進行CRC校驗,對于超出糾錯范圍和在傳輸中丟失的頁面,利用光線感應(yīng)器LED-Light Sensor信道反饋該頁面的序列號,然后通過反饋處理對該頁面進行重傳;所述的重傳機制 為:反饋每張二維碼頁面的信息只是一個序列號,信息量小,因此通過調(diào)制LED的閃爍頻率 和殼度編碼反饋信息。
[0133] 應(yīng)當理解的是,本說明書未詳細闡述的部分均屬于現(xiàn)有技術(shù)。
[0134] 以上所述,僅為本發(fā)明的【具體實施方式】,但本發(fā)明的保護范圍并不局限于此,任何 屬于本技術(shù)領(lǐng)域的技術(shù)人員在本發(fā)明揭露的技術(shù)范圍內(nèi),可輕易想到的變化或替換,都應(yīng) 涵蓋在本發(fā)明的保護范圍之內(nèi)。因此,本發(fā)明的保護范圍應(yīng)該以權(quán)利要求的保護范圍為準。
【主權(quán)項】
1. 一種基于彩色二維碼的移動平臺安全通信方法,其特征在于,包括: 步驟1:發(fā)送方根據(jù)自身晃動程度自適應(yīng)生成編碼小方格的大??; 步驟2 :發(fā)送方生成頭部信息和RS編碼; 步驟3 :接收方照相機每次拍攝到二維碼頁面,首先評測每張二維碼圖片的亮度和模 糊度,再檢測和定位角點追蹤器,利用角點追蹤器定位到二維碼頁面上面兩個角點,進而提 取出頭部信息中的信息,根據(jù)提取的發(fā)送方顯示頻率心和接收方拍攝頻率f。確定采用頁面 選擇或是頁面同步算法獲取二維碼頁面; 步驟4 :利用步驟3得到的二維碼頁面,采用漸進的定位器定位算法,在上一個已知位 置的定位器的基礎(chǔ)上計算下一個定位器的位置,找到代碼區(qū)的左、中、右三列黑色定位器; 步驟5 :使用左列和中列定位器定位左半部分的編碼小方格,中列和右列定位器定位 右半部分的編碼小方格,從而精確定位出代碼區(qū); 步驟6 :對每個編碼小方格的顏色進行均值降噪,并基于HSV模型進行顏色識別; 步驟7 :對每個二維碼頁面提取出的數(shù)據(jù)進行RS碼糾錯,然后對糾錯后的信息進行C