• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看

      ?

      高精度太陽方位檢測圓弧算法*

      2019-06-18 10:05:08張康龍王冠偉王洪喜
      關(guān)鍵詞:光斑圓心圓弧

      張康龍,王冠偉,王洪喜

      (西安工業(yè)大學(xué) 機電工程學(xué)院,西安 710021)

      太陽能是一種可再生清潔能源,有著廣闊的應(yīng)用前景。太陽能跟蹤系統(tǒng)能夠提高太陽能的利用效率,其中太陽方位檢測精度限制了跟蹤系統(tǒng)的精度。近年來,很多學(xué)者通過圖像處理方式來獲取太陽方位,以提高太陽檢測的精度。

      目前常見的幾種圖像處理檢測方式為:最大灰度值法[1],最小二乘圓擬合法[2],質(zhì)心法[3-4]等。其算法簡單,但多云情況下檢測精度不高。文獻[5]通過圓弧算法計算太陽中心,雖然可以解決多云天氣太陽檢測的問題,但是需要太陽的影像大于完整太陽影像的1/2。圓弧算法是解決多云天氣太陽檢測的關(guān)鍵。圓弧檢測常用的方法是霍夫圓檢測,這種方法所需的內(nèi)存較大,計算量大[6-7]。改進的霍夫圓檢測算法[8-9]和其他圓檢測算法[10-11]雖然提高了計算速率,但針對的都是比較完整的圓檢測,對于只剩下小部分圓弧,且邊緣可能不平滑的太陽圖像檢測效果不佳。文中根據(jù)太陽圖像特點設(shè)計了新的圓弧算法,用于尋找太陽圖像的圓弧,可根據(jù)太陽影像的1/8圓弧計算太陽光斑中心。

      1 太陽方位檢測原理

      圖像處理檢測方式需要拍攝太陽圖像,但有時因為云層遮擋看不見太陽,也需要天文算法與之結(jié)合,檢測原理步驟如下:

      ① 采集太陽圖像;

      ② 對圖像進行灰度變換、濾波、二值化、邊緣檢測等預(yù)處理,并計算太陽光斑面積A;

      ③ 若A>T(T為光斑面積閾值,只有當(dāng)A大于T時才適合用圖像處理),轉(zhuǎn)④,否則根據(jù)天文算法計算太陽方位,轉(zhuǎn)⑥;

      ④ 利用圓弧檢測算法,根據(jù)太陽光斑輪廓上的圓弧計算光斑圓心;

      ⑤ 將光斑位置轉(zhuǎn)換成太陽實際方位;

      ⑥ 系統(tǒng)跟蹤對準(zhǔn)太陽,轉(zhuǎn)①。

      2 圓弧檢測算法

      對原始太陽圖像進行灰度化,濾波,二值化等預(yù)處理,減少圖像數(shù)據(jù)信息,并過濾掉噪聲等干擾,使其邊緣更加平滑。如果太陽有光暈,則對圖像高灰度區(qū)域進行拉伸擴展,去掉光暈。文中采用均值濾波方式對圖像進行平滑處理,使用Otsu’s方法找到合適的閾值,將圖像二值化,使用‘Canny’算子檢測太陽輪廓。對太陽輪廓進行取點,對采樣點使用圓弧算法,得到太陽光斑中心。文中對太陽圓弧的檢測設(shè)計了兩種算法,相同點都是先對太陽輪廓進行取點,并計算曲率半徑,不同之處在于圓弧的篩選方法:算法一根據(jù)曲率半徑分布的頻率直方圖來篩選最合適的圓弧;算法二根據(jù)采樣點計算出一系列圓,根據(jù)采樣點與圓的位置符合程度篩選最合適的圓。

      2.1 太陽輪廓取點規(guī)則

      算法不直接采用太陽輪廓數(shù)據(jù)計算,而是在太陽輪廓上選取一部分點,可以減少計算量,避免了一些錯誤輪廓點的干擾,并利用這些點進行曲率半徑的計算。太陽輪廓取點遵循以下規(guī)則:

      1) 兩個采樣點之間的距離需要限制。圖像中的太陽輪廓比較復(fù)雜,尤其是多云天氣下的太陽輪廓,會有很多毛刺,即使經(jīng)過了濾波平滑處理,邊緣也不是規(guī)則的圓,只是近似的圓。且輪廓以像素表示,相鄰的幾個像素接近直線,如果以距離很近的3個像素點計算曲率半徑,則會出現(xiàn)較大的誤差,所以相鄰的兩個取樣點要有足夠的距離,才能保證計算正確。兩個取樣點之間的距離應(yīng)大于最小距離dmin,dmin通過實驗得到。

      2) 只采集太陽外部凸起輪廓上的點。原理如圖1所示,圖中黑粗線代表太陽輪廓,找出輪廓在橫向與縱向的極值點,分別標(biāo)記為H,B,D,F,利用這四個極值點建立最小外接矩形ACEGA。將輪廓分成HB,BD,DF,FH四段,從H點開始,順時針對這四段分別取點,并按取點順序依次存入矩陣中。太陽輪廓被遮擋后,本來是外凸的圓弧可能變成內(nèi)凹的不規(guī)則邊緣,如果這些邊緣點落入四邊形HBDFH之內(nèi),則它們不是真實的太陽輪廓,不用對這些輪廓采點,可以避免一部分非太陽真實曲率半徑的干擾。

      圖1 太陽輪廓取點原理Fig.1 Schematic diagram of point selection on the solar contour

      以HB段輪廓為例,太陽輪廓取點具體步驟如下:

      ① 先將H點作為第一個取樣點,存入矩陣C中,并將H所在的列作為第一列,令i=2;

      ② 從第i列開始列掃描,掃描起點是A所在的行,終點是i+1列與HB的交點所在的行,當(dāng)掃描到輪廓HB的點,則轉(zhuǎn)③,否則繼續(xù)當(dāng)前列掃描,掃描完后轉(zhuǎn)4;

      ③ 判斷當(dāng)前點與前一取樣點的距離d,若d>dmin,則存入矩陣C,否則不存入;

      ④i=i+1,若i>L,則結(jié)束,否則轉(zhuǎn)②,L是A點到B點像素的總列數(shù)。

      2.2 圓弧算法一

      圓弧算法一原理:在一個圓上取若干點,以相鄰的三點為一段,將一個圓分成若干段圓弧。根據(jù)三點確定一個圓,圓的每段圓弧的曲率半徑都可以由三個點計算得到。圓的每段圓弧的曲率半徑都是一致的,如果圓被不規(guī)則幾何體遮擋,形成殘缺圓,則遮擋部分的曲線是不規(guī)則的,沒有一致的曲率半徑。在殘缺圓上取點,分段,計算殘缺圓整個輪廓的曲率半徑。以曲率半徑為橫坐標(biāo),曲率半徑的段數(shù)為縱坐標(biāo),繪制曲率半徑頻率分布圖,則曲率半徑分布最多的半徑區(qū)域就是規(guī)則圓弧的曲率半徑。同理,可以繪制圓心坐標(biāo)直方圖,統(tǒng)計圓心坐標(biāo)落點最多的區(qū)域,這個區(qū)域就是圓心所在的坐標(biāo)范圍,取區(qū)域的中點作為圓心坐標(biāo)。

      算法一的具體步驟如下:

      ① 按照太陽輪廓取點規(guī)則在輪廓上采集m個點,并將所取點的列坐標(biāo)存入矩陣X,行坐標(biāo)存入矩陣Y中,并令i=1;

      ② 分別計算{X(i),Y(i)},{X(i+1),Y(i+1)},{X(i+2),Y(i+2)}三點組成的圓的圓心(cx(i),cy(i))和半徑r(i);

      ③ 若i

      ④ 設(shè)置半徑r的范圍,規(guī)定上限r(nóng)max和下限r(nóng)min,將超出范圍的r過濾掉,在區(qū)間內(nèi)的r放入矩陣r1中,與r1對應(yīng)的圓心坐標(biāo)存入矩陣cx1,cy1中;

      ⑤ 對r1做直方圖統(tǒng)計,以n個像素為一個小區(qū)間,將rmin~rmax分段,找出落點最多的區(qū)域,取它的中點坐標(biāo)即為太陽的半徑值,記為R;

      ⑥ 找[R-n/2,R+n/2]區(qū)間內(nèi)的半徑,存入矩陣r2,并找出與r2對應(yīng)的圓心坐標(biāo),對圓心坐標(biāo)進行直方圖統(tǒng)計,找出最佳圓心坐標(biāo)的小區(qū)間,取區(qū)間的中值記為(CX,CY),此坐標(biāo)即為太陽光斑中心坐標(biāo)。

      2.3 圓弧算法二

      圓弧算法二原理:按取點規(guī)則在太陽輪廓上等距取若干點,以3個點為一組,計算3個點所確定的圓的圓心及半徑,這些圓稱作候選圓。將候選圓與采樣點進行位置判斷,如果候選圓與太陽殘缺輪廓吻合,那么輪廓上所有采樣點均在這個圓內(nèi)或圓的邊緣,據(jù)此判斷出最符合的候選圓,此圓的圓心坐標(biāo)即太陽光斑中心。

      算法二的具體步驟如下:

      ①~③同算法一;

      ④設(shè)i=1;

      ⑤ 對每一個采樣點,計算其與候選圓的圓心(cx1(i),cy1(i))之間的距離,并存入矩陣r3;

      ⑥ 計算滿足r3<1.05×r1的采樣點的個數(shù),記為a1(i),計算滿足0.95×r1

      ⑦若i=t,則轉(zhuǎn)⑧,t為候選圓的個數(shù),否則i=i+1,轉(zhuǎn)⑤;

      ⑧找出a3最大值對應(yīng)的圓心坐標(biāo),記為(CX,CY),此坐標(biāo)即太陽光斑中心坐標(biāo)。

      3 實驗與分析

      3.1 實 驗

      實驗在Matlab 2014上進行,分別用兩種算法對一張晴天,三張多云的太陽圖像進行處理,被處理圖像及處理結(jié)果如圖2所示,算法一處理結(jié)果以‘+’和圓標(biāo)記,圓為檢測到的太陽輪廓,‘+’為檢測到的光斑圓心位置,算法二處理結(jié)果以‘.’標(biāo)記檢測到的圓心位置。圖2(a)為晴天太陽圖像,圖2(b)~(d)為多云天氣的太陽圖像,可看出兩種算法對晴天和多云天氣的太陽圖像均能找到光斑中心,且處理結(jié)果基本一致。

      3.2 精度分析

      評定算法對殘缺太陽光斑處理的精度,需要一張標(biāo)準(zhǔn)的太陽光斑圖像,并用高精度檢測算法的檢測結(jié)果作為標(biāo)準(zhǔn)。標(biāo)準(zhǔn)的太陽光斑圖像應(yīng)滿足條件:① 沒有云層遮擋,光斑完整,接近理想的圓;② 用高精度圓心檢測方法對其檢測的結(jié)果應(yīng)保持一致。目前常用的高精度圓心檢測算法有質(zhì)心法,最小二乘圓擬合法,因此可用這兩種算法來檢測。

      圖2(a)滿足標(biāo)準(zhǔn)太陽光斑圖像的第一個條件,分別用質(zhì)心法、最小二乘圓擬合法對其進行處理,判斷是否滿足第二個條件,其計算結(jié)果見表1。圖像坐標(biāo)原點在左上點,縱坐標(biāo)x從上往下遞增,橫坐標(biāo)從左向右遞增,圖像總大小為1 200×1 600像素。最小二乘圓擬合法的檢測結(jié)果與質(zhì)心法高度一致,僅在x坐標(biāo)上差了一個像素,因此圖2(a)可作為標(biāo)準(zhǔn)圖像,質(zhì)心法的結(jié)果可作為標(biāo)準(zhǔn)坐標(biāo)。

      圖2 兩種算法對太陽圖像的處理Fig.2 Solar image processed by both algorithms

      表1 兩種算法對圖2(a)的處理結(jié)果

      對圖2(a)的太陽進行不同程度的遮擋,用算法一、算法二、最小二乘法和質(zhì)心法四種算法檢測其圓心,并將圓心坐標(biāo)與標(biāo)準(zhǔn)值對比,求出這四種算法對殘缺太陽光斑的檢測精度。對文中算法進行多次實驗,取出其中10次實驗進行分析對比。遮擋后的圖像如圖3所示,圖中的圓心標(biāo)記為算法一處理的結(jié)果,四種算法的檢測偏差見表2。由表2可看出,最小二乘擬合法與質(zhì)心法無法正確計算出殘缺光斑的圓心,而算法一與算法二都能準(zhǔn)確找出圓心,算法一的偏差在[4,34]像素范圍,平均偏差為15像素,算法二的偏差在[2,44]像素范圍,平均偏差為12像素,算法二的平均精度較高。

      Δ=δ·f

      其中δ為檢測結(jié)果的像素偏差,則

      算法一檢測平均誤差為Δ1=δ1·f=0.53′;

      算法二檢測平均誤差為Δ2=δ2·f=0.42′。

      圖3 算法一處理結(jié)果Fig.3 Results obtained by the first algorithm

      實驗次數(shù)算法一偏差算法二偏差最小二乘圓擬合偏差質(zhì)心法偏差11444204229292152137334926426241641427516211211606781524574232181210276271995116110103014121132最大偏差3444276271最小偏差42321平均偏差1512129159

      4 結(jié) 論

      以殘缺太陽圖像為研究對象,文中對圖像進行灰度化、濾波、二值化、邊緣檢測等預(yù)處理,對太陽輪廓采點并計算曲率半徑,根據(jù)曲率半徑的頻率分布或采樣點與候選圓的符合程度篩選圓弧,提出基于圓弧檢測的圖像處理檢測方式。

      文中利用Matlab進行程序設(shè)計與驗證分析,分別對10幅圖進行檢測實驗,檢測結(jié)果算法一的平均誤差為0.53′,算法二的平均誤差為0.42′,均優(yōu)于最小二乘圓擬合偏差方法和質(zhì)心法偏差方法,解決了多云天氣太陽的尋找中心問題。多云天氣情況復(fù)雜,其圖像有時并不理想,當(dāng)其邊緣有較大變形時,僅僅用圓弧算法無法保證處理的正確性,需要結(jié)合其他算法或者用太陽位置預(yù)測值替代圖像處理結(jié)果。

      猜你喜歡
      光斑圓心圓弧
      二次曲線的一個類似圓心的性質(zhì)
      我愛塵世的輕煙和光斑
      都市(2023年6期)2023-12-28 07:56:54
      光斑
      詩歌月刊(2023年1期)2023-03-22 14:06:24
      淺析圓弧段高大模板支撐體系設(shè)計與應(yīng)用
      外圓弧面銑削刀具
      有趣的光斑
      有趣的光斑
      以圓周上一點為圓心作圓的圖的性質(zhì)及應(yīng)用
      數(shù)控車削圓弧螺紋程序編制與加工
      等截面圓弧無鉸板拱技術(shù)狀況評價
      上栗县| 泽库县| 德钦县| 星子县| 萝北县| 峨边| 益阳市| 阿坝县| 奎屯市| 南陵县| 翁源县| 乡城县| 武安市| 高唐县| 汝南县| 旅游| 杭锦旗| 阜宁县| 洪泽县| 南雄市| 新兴县| 盐津县| 湘潭市| 和平县| 灌云县| 渭南市| 乌拉特后旗| 武山县| 班玛县| 眉山市| 景宁| 华亭县| 临高县| 政和县| 正安县| 福建省| 洱源县| 福鼎市| 衡水市| 怀集县| 河间市|