識(shí)別攝像機(jī)接收的可見光通信信號(hào)的方法和裝置制造方法
【專利摘要】本發(fā)明涉及一種識(shí)別攝像機(jī)接收的可見光通信信號(hào)的方法和裝置,以及利用該裝置的光子接收器。該方法包括以下步驟:從攝像機(jī)獲得包含可見光通信信號(hào)的多幀圖像。處理每一幀圖像以識(shí)別該幀圖像中的光斑,包括搜索該幀圖像中的灰度值最大的像素點(diǎn),作為第一光斑的中心點(diǎn);確定該第一光斑的邊界;依據(jù)該第一光斑的邊界與該第一光斑的中心點(diǎn)的距離確定該第一光斑的尺寸;根據(jù)所確定的第一光斑的邊界確認(rèn)該第一光斑是否為有效光斑。最后,依據(jù)所識(shí)別的光斑恢復(fù)該可見光通信信號(hào)。
【專利說明】識(shí)別攝像機(jī)接收的可見光通信信號(hào)的方法和裝置
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及可見光通信領(lǐng)域,尤其是涉及一種識(shí)別攝像機(jī)接收的可見光通信信號(hào)的方法和裝置,以及利用該裝置的光子接收器。
【背景技術(shù)】
[0002]可見光通信是一種在LED技術(shù)上發(fā)展起來的新興的、短距離高速無線光通信技術(shù)??梢姽馔ㄐ诺幕驹砭褪抢冒l(fā)光二極管(LED)比熒光燈和白熾燈切換速度快的特點(diǎn),通過LED光源的高頻率閃爍來進(jìn)行通信。有光代表二進(jìn)制1,無光代表二進(jìn)制O。包含了數(shù)字信息的高速光信號(hào)經(jīng)過光電轉(zhuǎn)換即可獲得信息。無線光通信技術(shù)因?yàn)槠鋽?shù)據(jù)不易被干擾和捕獲,光通信設(shè)備制作簡單且不宜損壞或消磁,可以用來制作無線光加密鑰匙。與微波技術(shù)相比,無線光通信有相當(dāng)豐富的頻譜資源,這是一般微波通信和無線通信無法比擬的;同時(shí)可見光通信可以適用任何通信協(xié)議、適用于任何環(huán)境;在安全性方面,無線光通信相比傳統(tǒng)的磁性材料,無需擔(dān)心消磁問題,更不必?fù)?dān)心通信內(nèi)容被人竊取;無線光通信的設(shè)備架設(shè)靈活便捷,且成本低廉,適合大規(guī)模普及應(yīng)用。
[0003]目前可見光信號(hào)的接收端普遍地采用基于光電二極管(例如PIN、APD等)的光信號(hào)接收器。光信號(hào)接收器接收光信號(hào)后,進(jìn)行光電轉(zhuǎn)換,然后再對(duì)轉(zhuǎn)換出來的電信號(hào)進(jìn)行解碼等信號(hào)處理,還原成原信號(hào)。但是這要求接收端配備基于光電二極管的光信號(hào)接收器,增加了成本。
[0004]已經(jīng)提出了使用攝像機(jī)作為可見光通信的接收端的光接收器的設(shè)想,例如CN1702984。然而與光電二極管僅感測(cè)單點(diǎn)光強(qiáng)變化不同的是,攝像機(jī)所采集到的平面感光圖像。還需要對(duì)這些圖像進(jìn)行處理,以識(shí)別其中包含的可見光通信信號(hào)。盡管存在處理圖像以識(shí)別亮度或顏色不同的局部區(qū)域的通用圖像處理技術(shù),但是使用這樣的通用技術(shù)來識(shí)別攝像機(jī)所拍攝的連續(xù)感光圖像中的局部區(qū)域,其效能及速度均不理想。
[0005]有鑒于此,希望有一種專門識(shí)別攝像機(jī)接收的可見光通信信號(hào)的方法。
【發(fā)明內(nèi)容】
[0006]本發(fā)明所要解決的技術(shù)問題是提供一種簡單、有效的識(shí)別攝像機(jī)接收的可見光通信信號(hào)的方法及裝置。
[0007]本發(fā)明為解決上述技術(shù)問題而采用的技術(shù)方案是提出一種識(shí)別攝像機(jī)接收的可見光通信信號(hào)的方法,包括以下步驟:從攝像機(jī)獲得包含可見光通信信號(hào)的多幀圖像;依照下述步驟處理每一幀圖像以識(shí)別該幀圖像中的光斑:搜索該幀圖像中的灰度值最大的像素點(diǎn),作為第一光斑的中心點(diǎn);確定該第一光斑的邊界;依據(jù)該第一光斑的邊界與該第一光斑的中心點(diǎn)的距離,確定該第一光斑的尺寸;以及根據(jù)所確定的第一光斑的邊界和尺寸確認(rèn)第一光斑是否為有效光斑;依據(jù)所識(shí)別的光斑恢復(fù)該可見光通信信號(hào)。
[0008]在本發(fā)明的一實(shí)施例中,確定該第一光斑的邊界的步驟包括:沿第一方向按距離從小到大依次計(jì)算與該第一光斑的中心點(diǎn)相距一距離的像素點(diǎn)的灰度值,并以灰度值在該第一方向的突變點(diǎn)的前一像素點(diǎn)作為該第一光斑在該第一方向的邊界。
[0009]在本發(fā)明的一實(shí)施例中,確定該第一光斑的邊界的步驟還包括:沿第二方向按距離從小到大依次計(jì)算與該第一光斑的中心點(diǎn)相距一距離的像素點(diǎn)的灰度值,并以灰度值在該第二方向的突變點(diǎn)的前一像素點(diǎn)作為該第一光斑在該第二方向的邊界。
[0010]在本發(fā)明的一實(shí)施例中,該第一方向與該第二方向相反。
[0011]在本發(fā)明的一實(shí)施例中,以灰度值在該第一方向的突變點(diǎn)的前一像素點(diǎn)作為該第一光斑在該第一方向的邊界的步驟包括:如果有一第一像素點(diǎn)的灰度值小于一灰度閾值,則以該第一像素點(diǎn)的前一像素點(diǎn)作為該第一光斑在該第一方向的邊界,否則以該幀圖像在該第一方向的邊界作為該第一光斑在該第一方向的邊界。
[0012]在本發(fā)明的一實(shí)施例中,以灰度值在該第二方向的突變點(diǎn)的前一像素點(diǎn)作為該第一光斑在該第二方向的邊界的步驟包括:如果有一第二像素點(diǎn)的灰度值小于一灰度閾值,則以該第二像素點(diǎn)的前一像素點(diǎn)作為該第一光斑在該第二方向的邊界,否則以該幀圖像在該第二方向的邊界作為該第一光斑在該第二方向的邊界。
[0013]在本發(fā)明的一實(shí)施例中,該灰度閾值為該幀圖像的平均灰度值。
[0014]在本發(fā)明的一實(shí)施例中,選擇該第一光斑在該第一方向和該第二方向的邊界與該第一光斑的中心點(diǎn)的距離的較大值,作為該第一光斑的尺寸。
[0015]在本發(fā)明的一實(shí)施例中,根據(jù)所確定的第一光斑的邊界確認(rèn)第一光斑是否為有效光斑的步驟包括:判斷該第一光斑的任一邊界是否位于圖像的邊界,如果不是,則該第一光斑為有效光斑。
[0016]在本發(fā)明的一實(shí)施例中,根據(jù)所確定的第一光斑的尺寸確認(rèn)第一光斑是否為有效光斑的步驟包括:判斷該第一光斑的尺寸是否大于一閾值,如果是,則確認(rèn)該第一光斑為有效光斑。
[0017]在本發(fā)明的一實(shí)施例中,上述方法還依照下述步驟識(shí)別該幀圖像中的第二光斑:搜索該幀圖像中位于該第一光斑以外區(qū)域的灰度值最大的像素點(diǎn),作為第二光斑的中心點(diǎn);確定該第二光斑的邊界;依據(jù)該第二光斑的邊界與該第二光斑的中心點(diǎn)的距離,確定該第一光斑的尺寸;以及根據(jù)所確定的第二光斑的邊界和尺寸確認(rèn)該第二光斑是否為有效光斑。
[0018]在本發(fā)明的一實(shí)施例中,確定該第二光斑的邊界的步驟包括:沿第一方向按距離從小到大依次計(jì)算與該第二光斑的中心點(diǎn)相距一距離的像素點(diǎn)的灰度值,并以灰度值在該第一方向的突變點(diǎn)的前一像素點(diǎn)作為該第二光斑在該第一方向的邊界。
[0019]在本發(fā)明的一實(shí)施例中,確定該第二光斑的邊界的步驟還包括:沿第二方向按距離從小到大依次計(jì)算與該第二光斑的中心點(diǎn)相距一距離的像素點(diǎn)的灰度值,并以灰度值在該第二方向的突變點(diǎn)的前一像素點(diǎn)作為該第二光斑在該第二方向的邊界。
[0020]在本發(fā)明的一實(shí)施例中,搜索該幀圖像中位于該第一光斑以外區(qū)域的灰度值最大的像素點(diǎn)的步驟包括:將該幀圖像的第一光斑中像素點(diǎn)的灰度值置為該圖像的平均灰度值,獲得一修改圖像;以及搜索該修改圖像中灰度值最大的像素點(diǎn)。
[0021]在本發(fā)明的一實(shí)施例中,以灰度值在該第一方向的突變點(diǎn)的前一像素點(diǎn)作為該第二光斑在該第一方向的邊界的步驟包括:如果有一第一像素點(diǎn)的灰度值小于一灰度閾值,則以該第一像素點(diǎn)的前一像素點(diǎn)作為該第二光斑在該第一方向的邊界,否則以該幀圖像在該第一方向的邊界作為該第二光斑在該第一方向的邊界。
[0022]在本發(fā)明的一實(shí)施例中,以灰度值在該第二方向的突變點(diǎn)的前一像素點(diǎn)作為該第二光斑在該第二方向的邊界的步驟包括:如果有一第二像素點(diǎn)的灰度值小于一灰度閾值,則以該第二像素點(diǎn)的前一像素點(diǎn)作為該第二光斑在該第二方向的邊界,否則以該幀圖像在該第二方向的邊界作為該第二光斑在該第二方向的邊界。
[0023]在本發(fā)明的一實(shí)施例中,該灰度閾值為該幀圖像的平均灰度值。
[0024]在本發(fā)明的一實(shí)施例中,處理每一幀圖像以識(shí)別該幀圖像中的光斑的步驟還包括:按一預(yù)定比例縮小該幀圖像。
[0025]在本發(fā)明的一實(shí)施例中,處理每一幀圖像以識(shí)別該幀圖像中的光斑的步驟還包括,對(duì)圖像進(jìn)行降噪處理。
[0026]在本發(fā)明的一實(shí)施例中,該預(yù)定比例為圖像的行像素?cái)?shù)和列像素?cái)?shù)的公約數(shù)。
[0027]在本發(fā)明的一實(shí)施例中,當(dāng)該攝像機(jī)常態(tài)為低幀速模式時(shí),上述方法還包括:識(shí)別該可見光通信信號(hào)中預(yù)定序列的開始碼;將該攝像機(jī)切換到高幀速模式。
[0028]在本發(fā)明的一實(shí)施例中,上述方法還包括:識(shí)別該可見光通信信號(hào)中預(yù)定序列的結(jié)束碼;將該攝像機(jī)切換到低幀速模式。
[0029]在本發(fā)明的一實(shí)施例中,切換該攝像機(jī)的幀速模式的方法包括:修改該攝像機(jī)的感光器的寄存器。
[0030]在本發(fā)明的一實(shí)施例中,該攝像機(jī)的感光器為CMOS感光器。
[0031]本發(fā)明還提出一種識(shí)別攝像機(jī)接收的可見光通信信號(hào)的裝置,包括:用于從攝像機(jī)獲得包含可見光通信信號(hào)的多幀圖像的模塊;用于處理每一幀圖像以識(shí)別該幀圖像中的光斑的模塊,包括:用于搜索該幀圖像中的灰度值最大的像素點(diǎn),作為第一光斑的中心點(diǎn)的模塊;用于確定該第一光斑的邊界的模塊;用于依據(jù)該第一光斑的邊界與該第一光斑的中心點(diǎn)的距離,確定該第一光斑的尺寸的模塊;以及用于根據(jù)所確定的第一光斑的邊界和尺寸確認(rèn)該第一光斑是否為有效光斑的模塊;用于依據(jù)所識(shí)別的光斑恢復(fù)該可見光通信信號(hào)的模塊。
[0032]在本發(fā)明的一實(shí)施例中,用于確定該第一光斑的邊界的模塊包括:用于沿第一方向按距離從小到大依次計(jì)算與該第一光斑的中心點(diǎn)相距一距離的像素點(diǎn)的灰度值,并以灰度值在該第一方向的突變點(diǎn)的前一像素點(diǎn)作為該第一光斑在該第一方向的邊界的模塊。
[0033]在本發(fā)明的一實(shí)施例中,用于確定該第一光斑的邊界的模塊還包括:用于沿第二方向按距離從小到大依次計(jì)算與該第一光斑的中心點(diǎn)相距一距離的像素點(diǎn)的灰度值,并以灰度值在該第二方向的突變點(diǎn)的前一像素點(diǎn)作為該第一光斑在該第二方向的邊界的模塊。
[0034]在本發(fā)明的一實(shí)施例中,該第一方向與該第二方向相反。
[0035]在本發(fā)明的一實(shí)施例中,在該用于沿第一方向按距離從小到大依次計(jì)算與該第一光斑的中心點(diǎn)相距一距離的像素點(diǎn)的灰度值,并以灰度值在該第一方向的突變點(diǎn)的前一像素點(diǎn)作為該第一光斑在該第一方向的邊界的模塊中,如果有一第一像素點(diǎn)的灰度值小于一灰度閾值,則以該第一像素點(diǎn)的前一像素點(diǎn)作為該第一光斑在該第一方向的邊界,否則以該中貞圖像在該第一方向的邊界作為該第一光斑在該第一方向的邊界。
[0036]在本發(fā)明的一實(shí)施例中,在該用于沿第二方向按距離從小到大依次計(jì)算與該第一光斑的中心點(diǎn)相距一距離的像素點(diǎn)的灰度值,并以灰度值在該第二方向的突變點(diǎn)的前一像素點(diǎn)作為該第一光斑在該第一方向的邊界的模塊中,如果有一第二像素點(diǎn)的灰度值小于一灰度閾值,則以該第二像素點(diǎn)的前一像素點(diǎn)作為該第一光斑在該第二方向的邊界,否則以該幀圖像在該第二方向的邊界作為該第一光斑在該第二方向的邊界。
[0037]在本發(fā)明的一實(shí)施例中,該灰度閾值為該幀圖像的平均灰度值。
[0038]在本發(fā)明的一實(shí)施例中,用于根據(jù)所確定的第一光斑的邊界和尺寸確認(rèn)第一光斑是否為有效光斑的模塊是判斷該第一光斑的任一邊界是否位于圖像的邊界,如果不是,則該第一光斑為有效光斑。
[0039]在本發(fā)明的一實(shí)施例中,用于根據(jù)所確定的第一光斑的邊界和尺寸確認(rèn)第一光斑是否為有效光斑的模塊是判斷該第一光斑的尺寸是否大于一閾值,如果是,則確認(rèn)該第一光斑為有效光斑。
[0040]在本發(fā)明的一實(shí)施例中,該用于處理每一幀圖像以識(shí)別該幀圖像中的光斑的模塊還包括:用于搜索該修改圖像中位于該第一光斑以外區(qū)域的灰度值最大的像素點(diǎn),作為第二光斑的中心點(diǎn)的模塊;用于確定該第二光斑的邊界的模塊;用于選擇該第二光斑的邊界與該第二光斑的中心點(diǎn)的距離,作為第二光斑的尺寸的模塊;以及用于根據(jù)所確定的第二光斑的邊界確認(rèn)該第二光斑是否為有效光斑的模塊。
[0041]在本發(fā)明的一實(shí)施例中,用于確定該第二光斑的邊界的模塊包括:用于沿第一方向按距離從小到大依次計(jì)算與該第二光斑的中心點(diǎn)相距一距離的像素點(diǎn)的灰度值,并以灰度值在該第一方向的突變點(diǎn)的前一像素點(diǎn)作為該第二光斑在該第一方向的邊界的模塊。
[0042]在本發(fā)明的一實(shí)施例中,用于確定該第二光斑的邊界的模塊還包括:用于沿第二方向按距離從小到大依次計(jì)算與該第二光斑的中心點(diǎn)相距一距離的像素點(diǎn)的灰度值,并以灰度值在該第二方向的突變點(diǎn)的前一像素點(diǎn)作為該第二光斑在該第二方向的邊界的模塊。
[0043]在本發(fā)明的一實(shí)施例中,該第一方向與該第二方向相反。
[0044]在本發(fā)明的一實(shí)施例中,用于搜索該修改圖像中位于該第一光斑以外區(qū)域的灰度值最大的像素點(diǎn),作為第二光斑的中心點(diǎn)的模塊的模塊包括:用于將該幀圖像的第一光斑中像素點(diǎn)的灰度值置為該圖像的平均灰度值,獲得一修改圖像的模塊;以及用于搜索該修改圖像中灰度值最大的像素點(diǎn)的模塊。
[0045]在本發(fā)明的一實(shí)施例中,在該用于沿第一方向按距離從小到大依次計(jì)算與該第二光斑的中心點(diǎn)相距一距離的像素點(diǎn)的灰度值,并以灰度值在該第一方向的突變點(diǎn)的前一像素點(diǎn)作為該第二光斑在該第一方向的邊界的模塊中,如果有一第一像素點(diǎn)的灰度值小于一灰度閾值,則以該第一像素點(diǎn)的前一像素點(diǎn)作為該第二光斑在該第一方向的邊界,否則以該幀圖像在該第一方向的邊界作為該第二光斑在該第一方向的邊界。
[0046]在本發(fā)明的一實(shí)施例中,在該用于沿第二方向按距離從小到大依次計(jì)算與該第二光斑的中心點(diǎn)相距一距離的像素點(diǎn)的灰度值,并以灰度值在該第二方向的突變點(diǎn)的前一像素點(diǎn)作為該第二光斑在該第一方向的邊界的模塊中,如果有一第二像素點(diǎn)的灰度值小于一灰度閾值,則以該第二像素點(diǎn)的前一像素點(diǎn)作為該第二光斑在該第二方向的邊界,否則以該幀圖像在該第二方向的邊界作為該第二光斑在該第二方向的邊界。
[0047]在本發(fā)明的一實(shí)施例中,該灰度閾值為該幀圖像的平均灰度值。
[0048]在本發(fā)明的一實(shí)施例中,該用于處理每一幀圖像以識(shí)別該幀圖像中的光斑的模塊還包括用于按一預(yù)定比例縮小圖像的模塊。[0049]在本發(fā)明的一實(shí)施例中,該預(yù)定比例為該幀圖像的行像素?cái)?shù)和列像素?cái)?shù)的公約數(shù)。
[0050]在本發(fā)明的一實(shí)施例中,當(dāng)該攝像機(jī)常態(tài)為低幀速模式時(shí),該裝置還包括:用于識(shí)別該可見光通信信號(hào)中預(yù)定序列的開始碼的模塊;用于根據(jù)識(shí)別的該開始碼將該攝像機(jī)切換到高幀速模式的模塊。
[0051]在本發(fā)明的一實(shí)施例中,該裝置還包括:用于識(shí)別該可見光通信信號(hào)中預(yù)定序列的結(jié)束碼的模塊;用于根據(jù)識(shí)別的該結(jié)束碼將該攝像機(jī)切換到低幀速模式的模塊。
[0052]本發(fā)明還提出一種光子接收器,包括如上所述的一種識(shí)別攝像機(jī)接收的可見光通
信信號(hào)的裝置。
[0053]本發(fā)明的以上技術(shù)方案采用了一種專門用于處理及識(shí)別可見光通信信號(hào)中的光斑的處理方法,通過簡單地確定光斑的中心的邊界來識(shí)別光斑,使之與一般的圖像處理技術(shù)相比,具有更為簡單、有效的特點(diǎn)。
【專利附圖】
【附圖說明】
[0054]為讓本發(fā)明的上述目的、特征和優(yōu)點(diǎn)能更明顯易懂,以下結(jié)合附圖對(duì)本發(fā)明的【具體實(shí)施方式】作詳細(xì)說明,其中:
[0055]圖1A-1E示出具有一個(gè)光斑的一幀圖像的光斑位置的各種情形,其中圖1A示出整個(gè)光斑完全位于圖像中,圖1B和IC示出部分光斑落入圖像外,但光斑中心仍在圖像中,圖1D和IE不出部分光斑落入圖像外且光斑中心也在圖像外。
[0056]圖2示出具有兩個(gè)光斑的一幀圖像。
[0057]圖3示出去除已識(shí)別的一個(gè)光斑的一幀修改圖像。
[0058]圖4示出根據(jù)本發(fā)明一實(shí)施例的方法在低幀速模式下識(shí)別可見光通信信號(hào)的開始碼的示意圖。
[0059]圖5示出根據(jù)本發(fā)明一實(shí)施例的修改攝像機(jī)的感光器的寄存器的示意圖。
[0060]圖6示出根據(jù)本發(fā)明一實(shí)施例的識(shí)別攝像機(jī)接收的可見光通信信號(hào)的方法流程圖。
[0061]圖7示出根據(jù)本發(fā)明一實(shí)施例的識(shí)別圖像中的光斑的方法流程圖。
[0062]圖8示出根據(jù)本發(fā)明另一實(shí)施例的識(shí)別圖像中的光斑的方法流程圖。
[0063]圖9示出根據(jù)本發(fā)明另一實(shí)施例的識(shí)別攝像機(jī)接收的可見光通信信號(hào)的方法流程圖。
[0064]圖10示出根據(jù)本發(fā)明一實(shí)施例的調(diào)整攝像機(jī)幀速的流程圖。
【具體實(shí)施方式】
[0065]本發(fā)明的實(shí)施例將描述一種的識(shí)別攝像機(jī)接收的可見光通信信號(hào)的方法。這一方法由于特別針對(duì)含有可見光通信信號(hào)的圖像,特別是包含了光斑的圖像,由此識(shí)別過程得以簡化,從而變得更有效率。
[0066]現(xiàn)在參考附圖描述所要求保護(hù)的發(fā)明,在全部附圖中使用相同的參考標(biāo)號(hào)來指相同的部件或步驟。在以下描述中,為解釋起見,披露了眾多具體細(xì)節(jié)以提供對(duì)所要求保護(hù)的主題的全面理解。然而,顯而易見的是,這些發(fā)明也可以不采用這些具體細(xì)節(jié)來實(shí)施。[0067]可見光通信的發(fā)送端所采用的光源包括是發(fā)光二極管(LED),其因良好的開/關(guān)性能而得到廣泛使用。除此之外,使用具有照相功能的便攜式電子設(shè)備的閃光燈也是一種可行的選擇,尤其是在十分普及的手機(jī)普遍配備了閃光燈而不配備LED燈的情況下。當(dāng)然,部分閃光燈的類型本身就是LED燈。
[0068]本發(fā)明實(shí)施例中,攝像機(jī)適于接收上述光源所發(fā)出的可見光,但并不以此為限。本發(fā)明的攝像機(jī)可以是獨(dú)立的攝像機(jī),也可以是集成到各種電子設(shè)備,例如手機(jī)、平板電腦、筆記本電腦、數(shù)碼相機(jī)、MP3、MP4播放器(如蘋果公司的iTouch)等的攝像頭。
[0069]當(dāng)攝像機(jī)進(jìn)行連續(xù)拍攝時(shí),如果在拍攝瞬間接收到可見光,會(huì)在其所拍攝的圖像中留下光斑。圖1A示出具有一個(gè)光斑的一幀圖像。
[0070]可以理解的是,當(dāng)由不同的發(fā)送端的光源分別發(fā)出不同光束時(shí),攝像機(jī)所拍攝的一幀圖像中可能會(huì)有多個(gè)光斑。圖2示出具有兩個(gè)光斑的一幀圖像。
[0071]接收端從攝像機(jī)獲取這些圖像后,其重要的任務(wù)是識(shí)別哪些圖像中包含光斑,從而還原出對(duì)應(yīng)的數(shù)字信號(hào)。舉例來說,當(dāng)在發(fā)射源定義有光照射代表二進(jìn)制1,而無光照射代表二進(jìn)制O時(shí),在接收端相應(yīng)將包含光斑的圖像識(shí)別為二進(jìn)制1,而不包含光斑的圖像識(shí)別為二進(jìn)制O。當(dāng)然,這一定義僅為舉例而已,具體的規(guī)則可以由本領(lǐng)域技術(shù)人員自行定義。例如,包含多個(gè)光斑可能代表了額外的信息。
[0072]圖6示出根據(jù)本發(fā)明一實(shí)施例的識(shí)別攝像機(jī)接收的可見光通信信號(hào)的方法流程圖。參照?qǐng)D6所示,該方法包括以下步驟:
[0073]在步驟601,從攝像機(jī)獲得包含可見光通信信號(hào)的多幀圖像;
[0074]在步驟602,處理每一幀圖像,以識(shí)別該幀圖像中的光斑;
[0075]在步驟603,依據(jù)所識(shí)別的光斑恢復(fù)該可見光通信信號(hào)。
[0076]可以理解,上述流程常規(guī)是按照流水線的方式運(yùn)作,即每獲得一幀圖像,即進(jìn)行圖像處理,并恢復(fù)出其中的可見光通信信號(hào)。
[0077]上述流程中,步驟602是主要的步驟,其具體方法可以參照?qǐng)D7所示,描述如下:
[0078]步驟701,搜索一幀圖像中的灰度值最大的像素點(diǎn),作為光斑的中心點(diǎn);
[0079]步驟702,確定光斑在第一方向的邊界。
[0080]確定光斑邊界的已知算法有不少,這里列舉一種簡單的算法。具體地說,可以沿第一方向按距離從小到大依次計(jì)算與該光斑的中心點(diǎn)相距一距離的像素點(diǎn)的灰度值,并以灰度值在該第一方向的突變點(diǎn)的前一像素點(diǎn)作為該光斑在該第一方向的邊界。
[0081]也就是說,在上述計(jì)算過程中,比較像素點(diǎn)的灰度值與一灰度閾值。如果像素點(diǎn)的灰度值大于或等于一個(gè)灰度閾值,例如圖像的平均灰度值,則認(rèn)為該像素點(diǎn)屬于光斑區(qū)域;相反,如果像素點(diǎn)的灰度值小于圖像的平均灰度值,則認(rèn)為該像素點(diǎn)不屬于光斑區(qū)域。以灰度值小于圖像的平均灰度值的突變點(diǎn)的前一像素點(diǎn)作為光斑在該第一方向的邊界,記為第一像素點(diǎn)。第一像素點(diǎn)與光斑的中;點(diǎn)的距離記為第一距離。
[0082]光斑通常被視為圓形來處理,因此該第一距離通常可以被認(rèn)為是光斑的半徑。以圖1A來說,沿著+X方向決定的第一距離dl為光斑的半徑。
[0083]然而,存在如圖1B所示的情形。在此情形中,由于發(fā)射源并未對(duì)準(zhǔn)攝像機(jī),光斑只是部分地落入圖像區(qū)域。因此,如果在步驟702的計(jì)算過程中,發(fā)現(xiàn)所計(jì)算的像素點(diǎn)已經(jīng)位于圖像的邊界,即停止計(jì)算。同樣記錄該像素點(diǎn)為第一像素點(diǎn),得到第一距離dl。圖1C所示情形也是如此。
[0084]考慮到圖1B和圖1C所示情形的存在,沿著與第一方向相反的第二方向(即-X方向)尋找光斑的邊界成為必要。
[0085]步驟703,確定光斑在第二方向的邊界。
[0086]類似于前述算法,可以沿第二方向按距離從小到大依次計(jì)算與該光斑的中心點(diǎn)相距一距離的像素點(diǎn)的灰度值,以灰度值在該第二方向的突變點(diǎn)的前一像素點(diǎn)作為該光斑在該第二方向的邊界。
[0087]同樣地,如果像素點(diǎn)的灰度值大于或等于一個(gè)灰度閾值,例如圖像的平均灰度值,則認(rèn)為該像素點(diǎn)屬于光斑區(qū)域;相反,如果像素點(diǎn)的灰度值小于圖像的平均灰度值,則認(rèn)為該像素點(diǎn)不屬于光斑區(qū)域。因此,以灰度值小于圖像的平均灰度值的突變點(diǎn)的前一像素點(diǎn)作為光斑在該第二方向的邊界,記為第二像素點(diǎn)。第二像素點(diǎn)與光斑的中心點(diǎn)的距離記為第二距離d2。另外,如果在前述的計(jì)算過程中發(fā)現(xiàn)所計(jì)算的像素點(diǎn)已經(jīng)位于圖像的邊界,SP停止計(jì)算。同樣,記錄該像素點(diǎn)為第二像素點(diǎn),得到第二距離d2。
[0088]步驟704,根據(jù)光斑的邊界與光斑中心點(diǎn)的距離確定光斑尺寸。
[0089]在此,選擇第一距離dl和第二距離d2的最大值,作為光斑的尺寸。
[0090]步驟705,根據(jù)所確定的光斑的邊界確定該光斑是否為有效光斑。
[0091]例如,當(dāng)步驟704所確定的光斑的尺寸小于一閾值,例如5時(shí),認(rèn)為光斑是由噪聲引起的,排除這一光斑。此時(shí)該幀圖像實(shí)際上不包含光斑。
[0092]實(shí)際中還存在如圖1D·和圖1E所示的情形,在這些情形中,發(fā)射源發(fā)生更嚴(yán)重地偏離,光斑的中心O落在圖像的邊界之外,因此第一距離dl實(shí)際為0,只能計(jì)算出一個(gè)有效的第二距離d2。盡管在技術(shù)上有處理此類光斑的可能,但較佳地,當(dāng)?shù)谝痪嚯xdl和第二距離d2出現(xiàn)O時(shí),可以將光斑作為無效光斑排除。
[0093]通過步驟701-705,將能識(shí)別一幀圖像中是否有光斑,以及光斑的邊界。
[0094]較佳地,可以在流程之前,將對(duì)一幀圖像進(jìn)行降噪處理,以提高圖像質(zhì)量,降低無效光斑出現(xiàn)的概率。
[0095]值得一提的是,本實(shí)施例中盡管只能從2個(gè)方向(+X和-X方向)確定光斑的邊界,但可以理解的是,在其它實(shí)施例中,可以從更少方向,例如從I個(gè)方向(如+X方向)確定光斑的邊界;或者可以從更多方向,例如4個(gè)(+X,-X方向,+y,_y方向)確定光斑的邊界。從I個(gè)方向確定光斑的邊界足可應(yīng)付如圖1A所示情形,在這種情況下,可以考慮將圖1B-1E的情形均視為無效光斑。
[0096]下面例舉圖7所示流程的處理示例。
[0097]假設(shè)圖像為MXN個(gè)像素,各個(gè)像素的灰度值為g(i,j),i=l,2,...M, j=l,2,..N。其中(i,j)為圖像中像素坐標(biāo),i表示橫坐標(biāo)即列坐標(biāo),j表示給縱坐標(biāo)即行坐標(biāo),如第3行第4列的像素點(diǎn)的灰度值即可表示為g(4,3)。
[0098]先對(duì)行進(jìn)行操作,找出每行的灰度最大值gm (i), i=l, 2,...M。再找出gm中的最大值g(s,t)=gmax,同時(shí)也是整個(gè)圖像的灰度最大值。(s,t)即為灰度最大值的像素點(diǎn)坐標(biāo)。另外,還計(jì)算整個(gè)圖像的平均灰度值Δ。
[0099]計(jì)算gm(s-k)-A , k=l, 2,..., kl,其中 kl 滿足 gm(s_kl)-A ≤ O,且 gm(s-kl-l)-A <0。在此,kl+Ι處發(fā)生了灰度值的突變,其上一個(gè)值kl所代表的像素點(diǎn)被認(rèn)為是光斑的一個(gè)方向的邊界??赡艽嬖诙鄠€(gè)滿足上述突變的kl,但是只計(jì)算到第一個(gè)或最小kl就停止計(jì)算。如果上述突變點(diǎn)尚未找到,就已碰到圖像的邊界,也記錄此時(shí)的kl。
[0100]計(jì)算gm(s+k) - Δ,k=l, 2,...,k2,其中 k2 滿足 gm(s+k2)-A ≥ O,且 gm(s+k2+l)-A <0。在此,k2+l處發(fā)生了灰度值的突變,其上一個(gè)值k2所代表的像素點(diǎn)被認(rèn)為是光斑的另一個(gè)方向的邊界。可能存在多個(gè)滿足上述突變的k2,但是只計(jì)算到第一個(gè)或最小k2就停止計(jì)算。如果上述突變點(diǎn)尚未找到,就已碰到圖像的邊界,也記錄此時(shí)的k2。
[0101]由此確定最亮光斑中心(s, t),半徑為km=max(kl, k2)。
[0102]接下來排除無效光斑。首先,如果km > 5,則km為最亮光斑半徑;否則g (s, t)為噪聲,結(jié)束計(jì)算,認(rèn)為圖像沒有光斑。其次,如果kl或k2=0,也認(rèn)為光斑無效。
[0103]圖7所示實(shí)施例的識(shí)別過程主要關(guān)注圖像是否有光斑及光斑邊界。如前所述,存在一幀圖像包含多個(gè)光斑的情形(如圖2所示),如果識(shí)別過程還關(guān)注圖像包含的光斑數(shù)目,則步驟602可以實(shí)施為如圖8所示的流程。參照?qǐng)D8所示:
[0104]步驟801,搜索一幀圖像中的灰度值最大的像素點(diǎn),作為光斑的中心點(diǎn);
[0105]步驟802,確定光斑在第一方向的邊界。
[0106]類似于前述實(shí)施例的算法,可以沿第一方向按距離從小到大依次計(jì)算與該光斑的中心點(diǎn)相距一距離的像素點(diǎn)的灰度值,并以灰度值在該第一方向的突變點(diǎn)的前一像素點(diǎn)作為該光斑在該第一方向的邊界;
[0107]也就是說,在上述計(jì)算過程中比較像素點(diǎn)的灰度值與一灰度閾值,如果像素點(diǎn)的灰度值大于或等于一個(gè)灰度閾值,例如圖像的平均灰度值,則認(rèn)為該像素點(diǎn)屬于光斑區(qū)域;相反,如果像素點(diǎn)的灰度值小于圖像的平均灰度值,則認(rèn)為該像素點(diǎn)不屬于光斑區(qū)域。以灰度值小于圖像的平均灰度值的突變點(diǎn)的前一像素點(diǎn)作為光斑在該第一方向的邊界,記為第一像素點(diǎn)。第一像素點(diǎn)與光斑的中;點(diǎn)的距離記為第一距離。
[0108]另外,如果在步驟802的計(jì)算過程中,發(fā)現(xiàn)所計(jì)算的像素點(diǎn)已經(jīng)位于圖像的邊界,即停止計(jì)算。同樣記錄該像素點(diǎn)為第一像素點(diǎn),得到第一距離dl。
[0109]步驟803,確定光斑在第二方向的邊界。
[0110]類似于前述算法,沿第二方向按距離從小到大依次計(jì)算與該光斑的中心點(diǎn)相距一距離的像素點(diǎn)的灰度值,以灰度值在該第二方向的突變點(diǎn)的前一像素點(diǎn)作為該光斑在該第二方向的邊界。
[0111]也就是說,如果像素點(diǎn)的灰度值大于或等于一個(gè)灰度閾值,例如圖像的平均灰度值,則認(rèn)為該像素點(diǎn)屬于光斑區(qū)域;相反,如果像素點(diǎn)的灰度值小于圖像的平均灰度值,則認(rèn)為該像素點(diǎn)不屬于光斑區(qū)域。因此,以灰度值小于圖像的平均灰度值的突變點(diǎn)的前一像素點(diǎn)作為光斑在該第二方向的邊界,記為第二像素點(diǎn)。第二像素點(diǎn)與光斑的中心點(diǎn)的距離記為第二距離d2。另外,如果在前述的計(jì)算過程中發(fā)現(xiàn)所計(jì)算的像素點(diǎn)已經(jīng)位于圖像的邊界,即停止計(jì)算。同樣,記錄該像素點(diǎn)為第二像素點(diǎn),得到第二距離d2。
[0112]步驟804,根據(jù)光斑的邊界與光斑中心點(diǎn)的距離確定光斑尺寸。
[0113]在此,選擇第一距離dl和第二距離d2的最大值,作為光斑的尺寸。
[0114]步驟805,根據(jù)所確定的光斑的邊界確定該光斑是否為有效光斑。
[0115]通過步驟801-805,將能識(shí)別一幀圖像中是否有光斑,以及光斑的邊界。
[0116]另外,如果在步驟805中,發(fā)現(xiàn)所確定的光斑的尺寸小于一閾值,例如5時(shí),認(rèn)為光斑是由噪聲引起的,在認(rèn)為這一光斑是無效光斑的同時(shí),認(rèn)為該幀圖像實(shí)際上不包含光斑。因此在步驟806判斷圖像中是否可能存在未識(shí)別的光斑時(shí),流程結(jié)束。
[0117]在其它情況下,例如排除了過于偏離圖像區(qū)域的光斑(如圖1D和圖1E所示)后,認(rèn)為圖像仍可能含有未識(shí)別的光斑,流程進(jìn)入步驟807。
[0118]在步驟807,將該幀圖像的已識(shí)別的光斑區(qū)域中像素點(diǎn)的灰度值置為圖像的平均灰度值,獲得一修改圖像;然后,回到步驟801,以識(shí)別另一光斑。
[0119]步驟807的目的是在后續(xù)處理過程中,將已識(shí)別的光斑區(qū)域排除在外。從結(jié)果上看,后續(xù)的處理實(shí)際上是在搜索圖像中已識(shí)別的光斑區(qū)域外的最大灰度值??梢岳斫獾氖牵趯?shí)際處理時(shí)可以不進(jìn)行前述的修改,而直接在已識(shí)別的光斑區(qū)域外進(jìn)行上述的搜索。
[0120]這樣,每次識(shí)別了一個(gè)光斑,則在當(dāng)前圖像中將識(shí)別的光斑區(qū)域的灰度值設(shè)置為圖像的平均灰度值。如此循環(huán),直到在步驟806,確定該幀圖像未包含未識(shí)別的其它光斑,從而結(jié)束整個(gè)流程。
[0121]下面例舉圖8所示流程的處理示例。
[0122]假設(shè)圖像為MXN 個(gè)像素,灰度值為 g(i, j),i=l, 2,...M, j=l, 2,..N。
[0123]先對(duì)行進(jìn)行操作,找出每行的灰度最大值gm (i), i=l, 2,...Μ。再找出gm中的最大值g(s,t)=gmax,同時(shí)也是整個(gè)圖像的灰度最大值。(s,t)即為灰度最大值的像素點(diǎn)。另外,還計(jì)算整個(gè)圖像的平均灰度Λ。
[0124]按k從小到大的順序計(jì)算gm(s-k)-A, k=l, 2,...,kl,其中kl滿足gm(s-kl) - Δ≥O,且gm (s-kl-l)-A <0。在此,kl+1處發(fā)生了灰度值的突變,其前一值kl所代表的像素點(diǎn)被認(rèn)為是光斑的一個(gè)方向的邊界。需要指出的是,可能存在多個(gè)滿足上述突變的kl,但是只計(jì)算到第一個(gè)或最小kl就停止計(jì)算。如果上述突變點(diǎn)尚未找到,就已碰到圖像的邊界,也記錄此時(shí)的kl。
[0125]按k從小到大的順序計(jì)算gm(s+k)-A, k=l, 2,...,k2,其中k2滿足gm(s+k2)-A≥0,且gm (s+k2+l)-A <0。在此,k2+2處發(fā)生了灰度值的突變,其前一值k2所代表的像素點(diǎn)被認(rèn)為是光斑的另一方向的邊界??赡艽嬖诙鄠€(gè)滿足上述突變的k2,但是只計(jì)算到第一個(gè)或最小k2就停止計(jì)算。如果上述突變點(diǎn)尚未找到,就已碰到圖像的邊界,也記錄此時(shí)的k2。
[0126]由此確定最亮光斑中心(s, t),半徑為km=max(kl, k2)。
[0127]接下來排除無效光斑。首先,如果km > 5,則km為最亮光斑半徑;否則g (s, t)為噪聲,結(jié)束計(jì)算,認(rèn)為圖像沒有光斑。其次,如果kl或k2=0,也認(rèn)為光斑無效。如果前述的過程能夠找到一個(gè)有效光斑A,那么在找到光斑A后,此時(shí)將區(qū)域[s-km, s+km], [t-km, t+km]的灰度值都置為Λ,得到如圖3所示的修改后的圖像。同樣按照前述方法,可以找到光斑B。當(dāng)有多個(gè)光斑時(shí),按照這種方法依次進(jìn)行下去,可以確定每個(gè)光斑的區(qū)域。
[0128]圖6所示流程雖然能夠正確地識(shí)別光斑及光斑個(gè)數(shù),然而流程可能會(huì)不必要地復(fù)雜。原因在于,如果在圖像的原有分辨率上進(jìn)行,識(shí)別圖像是否存在光斑,所需的計(jì)算量會(huì)比較龐大。而為了識(shí)別圖像是否存在光斑及確定光斑個(gè)數(shù),并不需要很高的分辨率。因此本發(fā)明的另一實(shí)施例提出一種簡化的方案。
[0129]圖9示出根據(jù)本發(fā)明另一實(shí)施例的識(shí)別攝像機(jī)接收的可見光通信信號(hào)的方法流程圖。參照?qǐng)D9所示,該方法包括以下步驟:[0130]在步驟901,從攝像機(jī)獲得包含可見光通信信號(hào)的多幀圖像;
[0131]在步驟902a,處理每一幀圖像,按一預(yù)定比例縮小該幀圖像;
[0132]也就是說,按一預(yù)定比例降低圖像的分辨率。
[0133]在步驟902b,識(shí)別該幀圖像中的光斑;
[0134]在步驟903,依據(jù)所識(shí)別的光斑恢復(fù)該可見光通信信號(hào)。
[0135]可以理解,上述流程常規(guī)是按照流水線的方式運(yùn)作,即每獲得一幀圖像,即進(jìn)行圖像處理,并恢復(fù)出其中的可見光通信信號(hào)。
[0136]可以看出,上述實(shí)施例與圖6所示實(shí)施例的差別在于,在識(shí)別每一幀圖像中的光斑之前,會(huì)先按一預(yù)定比例縮小該幀圖像。這將降低圖像的分辨率,從而也降低處理圖像所需的計(jì)算量,由此簡化了方法。 [0137]在本實(shí)施例中,預(yù)定比例為該幀圖像的行像素?cái)?shù)和列像素?cái)?shù)的公約數(shù)。例如,分辨率為800*600的圖像(即行像素?cái)?shù)為800,列像素?cái)?shù)為600),預(yù)定比例可以選取為8,即將圖像縮小為100*75。
[0138]可以理解,預(yù)定比例可以在計(jì)算復(fù)雜度和識(shí)別準(zhǔn)確性方面進(jìn)行折衷。例如可以要求經(jīng)縮小的該幀圖像中,行像素?cái)?shù)和列像素?cái)?shù)均大于一個(gè)閾值,以能夠識(shí)別所需數(shù)目的光斑。
[0139]舉例來說,可以將圖像MXN的相鄰四個(gè)像素作為I個(gè)單位進(jìn)行計(jì)算,即每2X2個(gè)像素作為一個(gè)單位,這樣圖像簡化為M/2XN/2維。例如將像素(1,1), (1,2), (2,j)和(2,2)預(yù)先計(jì)算平均值作為新的像素(1,j)。一般地,原圖像的像素點(diǎn)(21-l,2j-l),(21-l,2j),(2i,2j-l)和(2i,2j)對(duì)應(yīng)于簡化圖像的像素點(diǎn)(i,j),1≤ i≤M/2,1 ≤ j ≤ N/2,并且 g’ (i,j) = (g(21-l,2j-l)+g(21-l,2j)+g(2i,2j-l)+g(2i,2j))/4,r表示簡化后圖像灰度值。其中(i,j)為簡化后圖像的像素坐標(biāo),i表示橫坐標(biāo)即列坐標(biāo),j表示給縱坐標(biāo)即行坐標(biāo),如第3行第4列的母像素點(diǎn)的灰度值即可表示為i' (4,3)。
[0140]進(jìn)一步地,如果M和N公約數(shù)包含值pl,p2,..., pm,那么圖像可以簡化為M/pgXN/pg,其中1≤g≤m。當(dāng)然如果pg過大會(huì)影響分辨率,所以在需要在圖像處理速度和分辨率之間做相應(yīng)的取舍。
[0141]可以理解,圖9所示的流程中,步驟902b可以用圖7或圖8所示實(shí)施例的流程實(shí)施。
[0142]在接收可見光時(shí),所使用攝像機(jī)的幀速需要能夠匹配發(fā)射端所發(fā)出的可見光的數(shù)據(jù)傳輸速率。例如,如果發(fā)射端發(fā)出的可見光通信信號(hào)的比特率大致為50bps (比特/秒),要求攝像頭至少具有1OOfps (幀/秒)。
[0143]大部分?jǐn)z像機(jī)都可以滿足上述幀速要求。不過,有些攝像機(jī),例如拍攝日常視頻用的攝像機(jī)常規(guī)地將幀速設(shè)置在25fps或者30fps的低幀速模式。因此在接收可見光通信信號(hào)的過程中,需要適應(yīng)性地調(diào)整這些攝像機(jī)到高幀速模式。
[0144]攝像機(jī)幀速的調(diào)整可以通過單片機(jī)修改CMOS寄存器來完成,協(xié)議為I2C。涉及攝像機(jī)幀速調(diào)整的硬件可以參照?qǐng)D5所示。
[0145]可以在可見光通信信號(hào)的開頭約定預(yù)定序列的開始碼,以指令攝像機(jī)調(diào)整到高幀速模式。同樣地,如果需要,可以在可見光通信信號(hào)的結(jié)尾約定預(yù)定序列的結(jié)束碼,以指令攝像機(jī)調(diào)整回低幀速模式。
[0146]圖10示出根據(jù)本發(fā)明一實(shí)施例的調(diào)整攝像機(jī)幀速的流程圖。假設(shè)攝像機(jī)常態(tài)地處于低幀速模式,那么其將按照?qǐng)D10的流程調(diào)整到高幀速模式。
[0147]在步驟1001,在攝像機(jī)接收及識(shí)別可見光通信信號(hào)。這一步驟中的識(shí)別,可以參照?qǐng)D6或圖8所示流程來實(shí)施。通過識(shí)別,可以得到可見光信號(hào)中的開始碼。然后,在步驟1002識(shí)別開始碼是否是約定的預(yù)定序列,如果是,在步驟1003將攝像機(jī)切換到高幀速模式。
[0148]圖4示出根據(jù)本發(fā)明一實(shí)施例的方法在低幀速模式下識(shí)別可見光通信信號(hào)的開始碼的示意圖。參照?qǐng)D4所示,假設(shè)可見光通信信號(hào)的發(fā)射端的發(fā)送速率為50bps,其中開始碼為110011,這樣幀速為30fps的攝像機(jī)所捕獲的信息僅為三幅圖像,分別在33ms,67ms和IOOms是拍攝到,其中第一幅和第三幅有亮斑,而第二幅圖像沒有亮斑。識(shí)別的結(jié)果是,三幅圖像對(duì)應(yīng)值依次為1、0、1。
[0149]因此,如果在低幀速下接收的開始碼為0x101,那么攝像機(jī)啟動(dòng)進(jìn)入高幀速(例如120fps)模式。
[0150]類似地,設(shè)定信號(hào)的結(jié)束碼,比如0x111。攝像機(jī)接收到結(jié)束碼后,就自動(dòng)切換回低幀速(例如30fps)模式。
[0151]本發(fā)明的另一實(shí)施例為一種識(shí)別攝像機(jī)接收的可見光通信信號(hào)的裝置,包括用于從攝像機(jī)獲得包含可見光通信信號(hào)的多幀圖像的模塊;用于處理每一幀圖像以識(shí)別該幀圖像中的光斑的模塊;以及用于依據(jù)所識(shí)別的光斑恢復(fù)該可見光通信信號(hào)的模塊。
[0152]其中,用于處理每一幀圖像以識(shí)別該幀圖像中的光斑的模塊進(jìn)一步包括:用于搜索該幀圖像中的灰度值最大的像素點(diǎn),作為第一光斑的中心點(diǎn)的模塊;用于沿第一方向按距離從小到大依次計(jì)算與該第一光斑的中心點(diǎn)相距一距離的像素點(diǎn)的灰度值,并以灰度值在該第一方向的突變點(diǎn)的前一像素點(diǎn)作為該第一光斑在該第一方向的邊界的模塊;用于沿第二方向按距離從小到大依次計(jì)算與該第一光斑的中心點(diǎn)相距一距離的像素點(diǎn)的灰度值,并以灰度值在該第二方向的突變點(diǎn)的前一像素點(diǎn)作為該第一光斑在該第二方向的邊界的模塊;用于選擇該第一光斑在該第一方向和該第二方向的邊界與該第一光斑的中心點(diǎn)的距離的較大值,作為第一光斑的尺寸的模塊;以及用于根據(jù)所確定的第一光斑的邊界確認(rèn)該第一光斑是否為有效光斑的模塊。
[0153]在一較佳實(shí)施例中,在該用于沿第一方向按距離從小到大依次計(jì)算與該第一光斑的中心點(diǎn)相距一距離的像素點(diǎn)的灰度值,并以灰度值在該第一方向的突變點(diǎn)的前一像素點(diǎn)作為該第一光斑在該第一方向的邊界的模塊中,如果有一第一像素點(diǎn)的灰度值小于該幀圖像的平均灰度值,則以該第一像素點(diǎn)的前一像素點(diǎn)作為該第一光斑在該第一方向的邊界,否則以該巾貞圖像在該第一方向的邊界作為該第一光斑在該第一方向的邊界。
[0154]在一較佳實(shí)施例中,在該用于沿第二方向按距離從小到大依次計(jì)算與該第一光斑的中心點(diǎn)相距一距離的像素點(diǎn)的灰度值,并以灰度值在該第二方向的突變點(diǎn)的前一像素點(diǎn)作為該第一光斑在該第一方向的邊界的模塊中,如果有一第二像素點(diǎn)的灰度值小于該幀圖像的平均灰度值,則以該第二像素點(diǎn)的前一像素點(diǎn)作為該第一光斑在該第二方向的邊界,否則以該幀圖像在該第二方向的邊界作為該第一光斑在該第二方向的邊界。
[0155]在一較佳實(shí)施例中,該第一方向與該第二方向相反。[0156]在一較佳實(shí)施例中,該用于處理每一幀圖像以識(shí)別該幀圖像中的光斑的模塊還包括:用于將該幀圖像的第一光斑中像素點(diǎn)的灰度值置為圖像的平均灰度值,獲得一修改圖像的模塊;用于搜索該修改圖像中的灰度值最大的像素點(diǎn),作為第二光斑的中心點(diǎn)的模塊;用于沿第一方向按距離從小到大依次計(jì)算與該第二光斑的中心點(diǎn)相距一距離的像素點(diǎn)的灰度值,并以灰度值在該第一方向的突變點(diǎn)的前一像素點(diǎn)作為該第二光斑在該第一方向的邊界的模塊;用于沿第二方向按距離從小到大依次計(jì)算與該第二光斑的中心點(diǎn)相距一距離的像素點(diǎn)的灰度值,并以灰度值在該第二方向的突變點(diǎn)的前一像素點(diǎn)作為該第二光斑在該第二方向的邊界的模塊;用于選擇該第二光斑在該第一方向和該第二方向的邊界與該第二光斑的中心點(diǎn)的距離的較大值,作為第二光斑的尺寸的模塊;以及用于根據(jù)所確定的第二光斑的邊界確認(rèn)該第二光斑是否為有效光斑的模塊。
[0157]在一較佳實(shí)施例中,該用于處理每一幀圖像以識(shí)別該幀圖像中的光斑的模塊還包括用于按一預(yù)定比例縮小圖像的模塊。
[0158]在一較佳實(shí)施例中,該預(yù)定比例為該幀圖像的行像素?cái)?shù)和列像素?cái)?shù)的公約數(shù)。
[0159]在一較佳實(shí)施例中,當(dāng)該攝像機(jī)常態(tài)為低幀速模式時(shí),該裝置還包括:用于識(shí)別該可見光通信信號(hào)中預(yù)定序列的開始碼的模塊;用于根據(jù)所識(shí)別的開始碼將該攝像機(jī)切換到高幀速模式的模塊。
[0160]在一較佳實(shí)施例中,該裝置還包括:用于識(shí)別該可見光通信信號(hào)中預(yù)定序列的結(jié)束碼的模塊;用于根據(jù)所識(shí)別的結(jié)束碼將該攝像機(jī)切換到低幀速模式的模塊。
[0161]本發(fā)明的識(shí)別攝像機(jī)接收的可見光通信信號(hào)的裝置可以作為光子接收器,用于可見光通信系統(tǒng)中。
[0162]本文中描述的各種實(shí)施例可在例如計(jì)算機(jī)軟件、硬件或計(jì)算機(jī)軟件與硬件的組合的計(jì)算機(jī)可讀取介質(zhì)中加以實(shí)施。對(duì)于硬件實(shí)施而言,本文中所描述的實(shí)施例可在一個(gè)或多個(gè)專用集成電路(ASIC)、數(shù)字信號(hào)處理器(DSP)、數(shù)字信號(hào)處理器件(DAPD)、可編程邏輯器件(PLD)、現(xiàn)場可編程門陣列(FPGA)、處理器、控制器、微控制器、微處理器、用于執(zhí)行上述功能的其它電子裝置或上述裝置的選擇組合來加以實(shí)施。在部分情況下,這類實(shí)施例可以通過控制器進(jìn)行實(shí)施。
[0163]對(duì)軟件實(shí)施而言,本文中所描述的實(shí)施例可通過諸如程序模塊(procedures)和函數(shù)模塊(functions)等獨(dú)立的軟件模塊來加以實(shí)施,其中每一個(gè)模塊執(zhí)行一個(gè)或多個(gè)本文中描述的功能和操作。軟件代碼可通過在適當(dāng)編程語言中編寫的應(yīng)用軟件來加以實(shí)施,可以儲(chǔ)存在內(nèi)存中,由控制器或處理器執(zhí)行。
[0164]雖然本發(fā)明已參照當(dāng)前的具體實(shí)施例來描述,但是本【技術(shù)領(lǐng)域】中的普通技術(shù)人員應(yīng)當(dāng)認(rèn)識(shí)到,以上的實(shí)施例僅是用來說明本發(fā)明,在沒有脫離本發(fā)明精神的情況下還可作出各種等效的變化或替換,因此,只要在本發(fā)明的實(shí)質(zhì)精神范圍內(nèi)對(duì)上述實(shí)施例的變化、變型都將落在本申請(qǐng)的權(quán)利要求書的范圍內(nèi)。
【權(quán)利要求】
1.一種識(shí)別攝像機(jī)接收的可見光通信信號(hào)的方法,包括以下步驟: 從攝像機(jī)獲得包含可見光通信信號(hào)的多幀圖像; 依照下述步驟處理每一幀圖像以識(shí)別該幀圖像中的光斑: 搜索該幀圖像中的灰度值最大的像素點(diǎn),作為第一光斑的中心點(diǎn); 確定該第一光斑的邊界; 依據(jù)該第一光斑的邊界與該第一光斑的中心點(diǎn)的距離,確定該第一光斑的尺寸;以及 根據(jù)所確定的第一光斑的邊界和尺寸確認(rèn)第一光斑是否為有效光斑;依據(jù)所識(shí)別的光斑恢復(fù)該可見光通信信號(hào)。
2.如權(quán)利要求1所述的識(shí)別攝像機(jī)接收的可見光通信信號(hào)的方法,其特征在于,確定該第一光斑的邊界的步驟包括: 沿第一方向按距離從小到大依次計(jì)算與該第一光斑的中心點(diǎn)相距一距離的像素點(diǎn)的灰度值,并以灰度值在該第一方向的突變點(diǎn)的前一像素點(diǎn)作為該第一光斑在該第一方向的邊界。
3.如權(quán)利要求2所述的識(shí)別攝像機(jī)接收的可見光通信信號(hào)的方法,其特征在于,確定該第一光斑的邊界的步驟還包括: 沿第二方向按距離從小到大依次計(jì)算與該第一光斑的中心點(diǎn)相距一距離的像素點(diǎn)的灰度值,并以灰度值在該第二方向的突變點(diǎn)的前一像素點(diǎn)作為該第一光斑在該第二方向的邊界。`
4.如權(quán)利要求3所述的識(shí)別攝像機(jī)接收的可見光通信信號(hào)的方法,其特征在于,該第一方向與該第二方向相反。
5.如權(quán)利要求2所述的識(shí)別攝像機(jī)接收的可見光通信信號(hào)的方法,其特征在于,以灰度值在該第一方向的突變點(diǎn)的前一像素點(diǎn)作為該第一光斑在該第一方向的邊界的步驟包括:如果有一第一像素點(diǎn)的灰度值小于一灰度閾值,則以該第一像素點(diǎn)的前一像素點(diǎn)作為該第一光斑在該第一方向的邊界,否則以該幀圖像在該第一方向的邊界作為該第一光斑在該第一方向的邊界。
6.如權(quán)利要求3所述的識(shí)別攝像機(jī)接收的可見光通信信號(hào)的方法,其特征在于,以灰度值在該第二方向的突變點(diǎn)的前一像素點(diǎn)作為該第一光斑在該第二方向的邊界的步驟包括:如果有一第二像素點(diǎn)的灰度值小于一灰度閾值,則以該第二像素點(diǎn)的前一像素點(diǎn)作為該第一光斑在該第二方向的邊界,否則以該幀圖像在該第二方向的邊界作為該第一光斑在該第二方向的邊界。
7.如權(quán)利要求5或6所述的識(shí)別攝像機(jī)接收的可見光通信信號(hào)的方法,其特征在于,該灰度閾值為該幀圖像的平均灰度值。
8.如權(quán)利要求3所述的識(shí)別攝像機(jī)接收的可見光通信信號(hào)的方法,其特征在于,選擇該第一光斑在該第一方向和該第二方向的邊界與該第一光斑的中心點(diǎn)的距離的較大值,作為該第一光斑的尺寸。
9.如權(quán)利要求1所述的識(shí)別攝像機(jī)接收的可見光通信信號(hào)的方法,其特征在于,根據(jù)所確定的第一光斑的邊界確認(rèn)第一光斑是否為有效光斑的步驟包括:判斷該第一光斑的任一邊界是否位于圖像的邊界,如果不是,則該第一光斑為有效光斑。
10.如權(quán)利要求1所述的識(shí)別攝像機(jī)接收的可見光通信信號(hào)的方法,其特征在于,根據(jù)所確定的第一光斑的尺寸確認(rèn)第一光斑是否為有效光斑的步驟包括:判斷該第一光斑的尺寸是否大于一閾值,如果是,則確認(rèn)該第一光斑為有效光斑。
11.如權(quán)利要求1所述的識(shí)別攝像機(jī)接收的可見光通信信號(hào)的方法,其特征在于,還依照下述步驟識(shí)別該幀圖像中的第二光斑: 搜索該幀圖像中位于該第一光斑以外區(qū)域的灰度值最大的像素點(diǎn),作為第二光斑的中心點(diǎn); 確定該第二光斑的邊界; 依據(jù)該第二光斑的邊界與該第二光斑的中心點(diǎn)的距離,確定該第一光斑的尺寸;以及 根據(jù)所確定的第二光斑的邊界和尺寸確認(rèn)該第二光斑是否為有效光斑。
12.如權(quán)利要求11所述的識(shí)別攝像機(jī)接收的可見光通信信號(hào)的方法,其特征在于,確定該第二光斑的邊界的步驟包括: 沿第一方向按距離從小到大依次計(jì)算與該第二光斑的中心點(diǎn)相距一距離的像素點(diǎn)的灰度值,并以灰度值在該第一方向的突變點(diǎn)的前一像素點(diǎn)作為該第二光斑在該第一方向的邊界。
13.如權(quán)利要求12所述的識(shí)別攝像機(jī)接收的可見光通信信號(hào)的方法,其特征在于,確定該第二光斑的邊界的步驟還包括: 沿第二方向按距離從小到大依次計(jì)算與該第二光斑的中心點(diǎn)相距一距離的像素點(diǎn)的灰度值,并以灰度值在該第二方向的突變點(diǎn)的前一像素點(diǎn)作為該第二光斑在該第二方向的邊界。
14.如權(quán)利要求11所述的識(shí)別攝像機(jī)接收的可見光通信信號(hào)的方法,其特征在于,搜索該幀圖像中位于該第一光斑以外區(qū)域的灰度值最大的像素點(diǎn)的步驟包括: 將該幀圖像的第一光斑中像素點(diǎn)的灰度值置為該圖像的平均灰度值,獲得一修改圖像;以及 搜索該修改圖像中灰度值最大的像素點(diǎn)。
15.如權(quán)利要求12所述的識(shí)別攝像機(jī)接收的可見光通信信號(hào)的方法,其特征在于,以灰度值在該第一方向的突變點(diǎn)的前一像素點(diǎn)作為該第二光斑在該第一方向的邊界的步驟包括:如果有一第一像素點(diǎn)的灰度值小于一灰度閾值,則以該第一像素點(diǎn)的前一像素點(diǎn)作為該第二光斑在該第一方向的邊界,否則以該幀圖像在該第一方向的邊界作為該第二光斑在該第一方向的邊界。
16.如權(quán)利要求13所述的識(shí)別攝像機(jī)接收的可見光通信信號(hào)的方法,其特征在于,以灰度值在該第二方向的突變點(diǎn)的前一像素點(diǎn)作為該第二光斑在該第二方向的邊界的步驟包括:如果有一第二像素點(diǎn)的灰度值小于一灰度閾值,則以該第二像素點(diǎn)的前一像素點(diǎn)作為該第二光斑在該第二方向的邊界,否則以該幀圖像在該第二方向的邊界作為該第二光斑在該第二方向的邊界。
17.如權(quán)利要求15或16所述的識(shí)別攝像機(jī)接收的可見光通信信號(hào)的方法,其特征在于,該灰度閾值為該幀圖像的平均灰度值。
18.如權(quán)利要求1所述的識(shí)別攝像機(jī)接收的可見光通信信號(hào)的方法,其特征在于,處理每一幀圖像以識(shí)別該幀圖像中的光斑的步驟還包括: 按一預(yù)定比例縮小該幀圖像。
19.如權(quán)利要求1所述的識(shí)別攝像機(jī)接收的可見光通信信號(hào)的方法,其特征在于,處理每一幀圖像以識(shí)別該幀圖像中的光斑的步驟還包括,對(duì)圖像進(jìn)行降噪處理。
20.如權(quán)利要求18所述的識(shí)別攝像機(jī)接收的可見光通信信號(hào)的方法,其特征在于,該預(yù)定比例為圖像的行像素?cái)?shù)和列像素?cái)?shù)的公約數(shù)。
21.如權(quán)利要求1所述的識(shí)別攝像機(jī)接收的可見光通信信號(hào)的方法,其特征在于,當(dāng)該攝像機(jī)常態(tài)為低幀速模式時(shí),該方法還包括: 識(shí)別該可見光通信信號(hào)中預(yù)定序列的開始碼; 將該攝像機(jī)切換到高幀速模式。
22.如權(quán)利要求21所述的識(shí)別攝像機(jī)接收的可見光通信信號(hào)的方法,其特征在于,該方法還包括: 識(shí)別該可見光通信信號(hào)中預(yù)定序列的結(jié)束碼; 將該攝像機(jī)切換到低幀速模式。
23.如權(quán)利要求21或22所述的識(shí)別攝像機(jī)接收的可見光通信信號(hào)的方法,其特征在于,切換該攝像機(jī)的幀速模式的方法包括:修改該攝像機(jī)的感光器的寄存器。
24.如權(quán)利要求1所述的識(shí)別攝像機(jī)接收的可見光通信信號(hào)的方法,其特征在于,該攝像機(jī)的感光器為CMOS感光器。
25.一種識(shí)別攝像機(jī)接收的可見光通信信號(hào)的裝置,包括:` 用于從攝像機(jī)獲得包含可見光通信信號(hào)的多幀圖像的模塊; 用于處理每一幀圖像以識(shí)別該幀圖像中的光斑的模塊,包括: 用于搜索該幀圖像中的灰度值最大的像素點(diǎn),作為第一光斑的中心點(diǎn)的模塊; 用于確定該第一光斑的邊界的模塊; 用于依據(jù)該第一光斑的邊界與該第一光斑的中心點(diǎn)的距離,確定該第一光斑的尺寸的模塊;以及 用于根據(jù)所確定的第一光斑的邊界和尺寸確認(rèn)該第一光斑是否為有效光斑的模塊; 用于依據(jù)所識(shí)別的光斑恢復(fù)該可見光通信信號(hào)的模塊。
26.如權(quán)利要求25所述的裝置,其特征在于,用于確定該第一光斑的邊界的模塊包括: 用于沿第一方向按距離從小到大依次計(jì)算與該第一光斑的中心點(diǎn)相距一距離的像素點(diǎn)的灰度值,并以灰度值在該第一方向的突變點(diǎn)的前一像素點(diǎn)作為該第一光斑在該第一方向的邊界的模塊。
27.如權(quán)利要求26所述的裝置,其特征在于,用于確定該第一光斑的邊界的模塊還包括: 用于沿第二方向按距離從小到大依次計(jì)算與該第一光斑的中心點(diǎn)相距一距離的像素點(diǎn)的灰度值,并以灰度值在該第二方向的突變點(diǎn)的前一像素點(diǎn)作為該第一光斑在該第二方向的邊界的模塊。
28.如權(quán)利要求27所述的裝置,其特征在于,該第一方向與該第二方向相反。
29.如權(quán)利要求26所述的裝置,其特征在于,在該用于沿第一方向按距離從小到大依次計(jì)算與該第一光斑的中心點(diǎn)相距一距離的像素點(diǎn)的灰度值,并以灰度值在該第一方向的突變點(diǎn)的前一像素點(diǎn)作為該第一光斑在該第一方向的邊界的模塊中,如果有一第一像素點(diǎn)的灰度值小于一灰度閾值,則以該第一像素點(diǎn)的前一像素點(diǎn)作為該第一光斑在該第一方向的邊界,否則以該幀圖像在該第一方向的邊界作為該第一光斑在該第一方向的邊界。
30.如權(quán)利要求27所述的裝置,其特征在于,在該用于沿第二方向按距離從小到大依次計(jì)算與該第一光斑的中心點(diǎn)相距一距離的像素點(diǎn)的灰度值,并以灰度值在該第二方向的突變點(diǎn)的前一像素點(diǎn)作為該第一光斑在該第一方向的邊界的模塊中,如果有一第二像素點(diǎn)的灰度值小于一灰度閾值,則以該第二像素點(diǎn)的前一像素點(diǎn)作為該第一光斑在該第二方向的邊界,否則以該幀圖像在該第二方向的邊界作為該第一光斑在該第二方向的邊界。
31.如權(quán)利要求29或30所述的裝置,其特征在于,該灰度閾值為該幀圖像的平均灰度值。
32.如權(quán)利要求25所述的識(shí)別攝像機(jī)接收的可見光通信信號(hào)的方法,其特征在于,用于根據(jù)所確定的第一光斑的邊界和尺寸確認(rèn)第一光斑是否為有效光斑的模塊是判斷該第一光斑的任一邊界是否位于圖像的邊界,如果不是,則該第一光斑為有效光斑。
33.如權(quán)利要求25所述的識(shí)別攝像機(jī)接收的可見光通信信號(hào)的方法,其特征在于,用于根據(jù)所確定的第一光斑的邊界和尺寸確認(rèn)第一光斑是否為有效光斑的模塊是判斷該第一光斑的尺寸是否大于一閾值,如果是,則確認(rèn)該第一光斑為有效光斑。
34.如權(quán)利要求25所述的裝置,其特征在于,該用于處理每一幀圖像以識(shí)別該幀圖像中的光斑的模塊還包括: 用于搜索該修改圖像中位于該第一光斑以外區(qū)域的灰度值最大的像素點(diǎn),作為第二光斑的中心點(diǎn)的模塊; 用于確定該第二 光斑的邊界的模塊; 用于選擇該第二光斑的邊界與該第二光斑的中心點(diǎn)的距離,作為第二光斑的尺寸的模塊;以及 用于根據(jù)所確定的第二光斑的邊界確認(rèn)該第二光斑是否為有效光斑的模塊。
35.如權(quán)利要求34所述的裝置,其特征在于,用于確定該第二光斑的邊界的模塊包括: 用于沿第一方向按距離從小到大依次計(jì)算與該第二光斑的中心點(diǎn)相距一距離的像素點(diǎn)的灰度值,并以灰度值在該第一方向的突變點(diǎn)的前一像素點(diǎn)作為該第二光斑在該第一方向的邊界的模塊。
36.如權(quán)利要求35所述的裝置,其特征在于,用于確定該第二光斑的邊界的模塊還包括: 用于沿第二方向按距離從小到大依次計(jì)算與該第二光斑的中心點(diǎn)相距一距離的像素點(diǎn)的灰度值,并以灰度值在該第二方向的突變點(diǎn)的前一像素點(diǎn)作為該第二光斑在該第二方向的邊界的模塊。
37.如權(quán)利要求36所述的裝置,其特征在于,該第一方向與該第二方向相反。
38.如權(quán)利要求34所述的裝置,其特征在于,用于搜索該修改圖像中位于該第一光斑以外區(qū)域的灰度值最大的像素點(diǎn),作為第二光斑的中心點(diǎn)的模塊的模塊包括: 用于將該幀圖像的第一光斑中像素點(diǎn)的灰度值置為該圖像的平均灰度值,獲得一修改圖像的模塊;以及 用于搜索該修改圖像中灰度值最大的像素點(diǎn)的模塊。
39.如權(quán)利要求35所述的裝置,其特征在于,在該用于沿第一方向按距離從小到大依次計(jì)算與該第二光斑的中心點(diǎn)相距一距離的像素點(diǎn)的灰度值,并以灰度值在該第一方向的突變點(diǎn)的前一像素點(diǎn)作為該第二光斑在該第一方向的邊界的模塊中,如果有一第一像素點(diǎn)的灰度值小于一灰度閾值,則以該第一像素點(diǎn)的前一像素點(diǎn)作為該第二光斑在該第一方向的邊界,否則以該幀圖像在該第一方向的邊界作為該第二光斑在該第一方向的邊界。
40.如權(quán)利要求36所述的裝置,其特征在于,在該用于沿第二方向按距離從小到大依次計(jì)算與該第二光斑的中心點(diǎn)相距一距離的像素點(diǎn)的灰度值,并以灰度值在該第二方向的突變點(diǎn)的前一像素點(diǎn)作為該第二光斑在該第一方向的邊界的模塊中,如果有一第二像素點(diǎn)的灰度值小于一灰度閾值,則以該第二像素點(diǎn)的前一像素點(diǎn)作為該第二光斑在該第二方向的邊界,否則以該幀圖像在該第二方向的邊界作為該第二光斑在該第二方向的邊界。
41.如權(quán)利要求39或40所述的裝置,其特征在于,該灰度閾值為該幀圖像的平均灰度值。
42.如權(quán)利要求25所述的裝置,其特征在于,該用于處理每一幀圖像以識(shí)別該幀圖像中的光斑的模塊還包括用于按一預(yù)定比例縮小圖像的模塊。
43.如權(quán)利要求42所述的裝置,其特征在于,該預(yù)定比例為該幀圖像的行像素?cái)?shù)和列像素?cái)?shù)的公約數(shù)。
44.如權(quán)利要求25所述的裝置,其特征在于,當(dāng)該攝像機(jī)常態(tài)為低幀速模式時(shí),該裝置還包括: 用于識(shí)別該可見光通信信號(hào)中預(yù)定序列的開始碼的模塊; 用于根據(jù)識(shí)別的該開始碼將該攝像機(jī)切換到高幀速模式的模塊。
45.如權(quán)利要求44所述`的裝置,其特征在于,該裝置還包括: 用于識(shí)別該可見光通信信號(hào)中預(yù)定序列的結(jié)束碼的模塊; 用于根據(jù)識(shí)別的該結(jié)束碼將該攝像機(jī)切換到低幀速模式的模塊。
46.一種光子接收器,其特征在于,包括如權(quán)利要求25至45任一項(xiàng)所述的一種識(shí)別攝像機(jī)接收的可見光通信信號(hào)的裝置。
【文檔編號(hào)】G06K9/46GK103795467SQ201310544341
【公開日】2014年5月14日 申請(qǐng)日期:2013年11月5日 優(yōu)先權(quán)日:2013年11月5日
【發(fā)明者】不公告發(fā)明人 申請(qǐng)人:深圳光啟創(chuàng)新技術(shù)有限公司