專利名稱:一種粗調(diào)細(xì)調(diào)相結(jié)合的快速插值焦點(diǎn)探索算法的制作方法
技術(shù)領(lǐng)域:
本發(fā)明屬于自動(dòng)對(duì)焦領(lǐng)域、工業(yè)自動(dòng)控制領(lǐng)域,具體涉及一種焦點(diǎn)探索算法。
背景技術(shù):
光學(xué)成像系統(tǒng)是機(jī)器視覺(jué)系統(tǒng)的“眼睛”,其重要性毋容置疑。自動(dòng)對(duì)焦技術(shù)是數(shù) 字成像系統(tǒng)的核心技術(shù)之一,當(dāng)違背成像規(guī)律產(chǎn)生離焦時(shí),一方面需要機(jī)器視覺(jué)系統(tǒng)能夠 智能、快速的調(diào)節(jié)光學(xué)參數(shù)以聚焦,從而得到清晰、可用的圖像,保證機(jī)器視覺(jué)系統(tǒng)的正常 運(yùn)行??梢哉f(shuō)只要有對(duì)輸入視頻進(jìn)行監(jiān)控或處理的的設(shè)備上都需要用到自動(dòng)對(duì)焦模塊。自動(dòng)對(duì)焦技術(shù)廣泛的應(yīng)用在工業(yè)生產(chǎn)及社會(huì)生活的各個(gè)領(lǐng)域。在醫(yī)療器械領(lǐng)域, 生化分析儀、內(nèi)窺鏡、CT、MRIα線機(jī)等都需要自動(dòng)對(duì)焦功能;在光學(xué)儀器如數(shù)碼相機(jī)、攝像 機(jī)、視頻監(jiān)控器材、顯微鏡、望遠(yuǎn)鏡等產(chǎn)品上自動(dòng)對(duì)焦模塊是必不可少的;在工業(yè)生產(chǎn)設(shè)備 如電路板印刷機(jī)、液晶顯示板印刷機(jī)、太陽(yáng)能電池板印刷機(jī)、薄膜面板印刷機(jī)等設(shè)備上自動(dòng) 對(duì)焦功能更能夠提高生產(chǎn)效率,滿足設(shè)備智能性的要求;在辦公儀器如掃描儀,投影儀以及 在計(jì)量?jī)x器如遙感遙測(cè)、測(cè)量?jī)x等諸多產(chǎn)品上,自動(dòng)對(duì)焦功能同樣在提高市場(chǎng)競(jìng)爭(zhēng)力,改善 產(chǎn)品效能上都起著不可或缺的作用。圖像的清晰度可以通過(guò)計(jì)算圖像的高頻分量來(lái)進(jìn)行判斷,數(shù)字圖像處理理論認(rèn) 為,信號(hào)或圖像的能量大部分集中在幅度譜的低頻和中頻分量部分,但輪廓的銳度和細(xì)節(jié) 取決于圖像的高頻分量部分。對(duì)焦評(píng)價(jià)函數(shù)是通過(guò)計(jì)算圖像的高頻分量值而確定圖像的離焦程度的,對(duì)焦評(píng)價(jià) 函數(shù)輸出值越大,則圖像中的高頻分量就越多,圖像邊緣輪廓就越清晰;相反對(duì)焦評(píng)價(jià)函數(shù) 輸出值越小,則圖像中的高頻分量就越少,圖像的邊緣輪廓就越模糊。一般而言在焦點(diǎn)位置 的圖像邊緣輪廓最為清晰,也就是說(shuō)對(duì)焦評(píng)價(jià)函數(shù)的最大值對(duì)應(yīng)于焦點(diǎn)位置。這就給自動(dòng) 對(duì)焦技術(shù)提供了理論依據(jù)?;趫D像處理的自動(dòng)對(duì)焦技術(shù)的基本原理都是通過(guò)探索對(duì)焦評(píng)價(jià)函數(shù)的最大值 來(lái)實(shí)現(xiàn)的。目前針對(duì)對(duì)焦評(píng)價(jià)函數(shù)的研究比較多,也提出了很多性能比較好的對(duì)焦評(píng)價(jià)函 數(shù)。但優(yōu)秀的對(duì)焦評(píng)價(jià)函數(shù)最大值探索算法很少有相關(guān)的研究論文發(fā)表。目前最常用的焦點(diǎn)探索算法是爬山搜索算法,其原理如圖1所示。驅(qū)動(dòng)聚焦鏡頭 的步進(jìn)電機(jī)從起始位置(Α點(diǎn)位置)出發(fā),以等幅間距自左向右逐步探索。每走一步,就計(jì) 算一次圖像的對(duì)焦評(píng)價(jià)函數(shù)值。若計(jì)算所得的對(duì)焦評(píng)價(jià)函數(shù)值逐漸增大,說(shuō)明電機(jī)驅(qū)動(dòng)方 向正確,系統(tǒng)逐步對(duì)焦。當(dāng)對(duì)焦評(píng)價(jià)函數(shù)值第一次出現(xiàn)減小時(shí)(B點(diǎn)位置),說(shuō)明鏡頭已經(jīng) 超過(guò)焦點(diǎn)位置,此時(shí)應(yīng)自右向左做反向探索,直到再次出現(xiàn)對(duì)焦評(píng)價(jià)函數(shù)值變小時(shí)(C點(diǎn)位 置),說(shuō)明焦點(diǎn)位置在B點(diǎn)與C點(diǎn)之間。此時(shí)減小采樣間隔,重復(fù)上述探索步驟直到找到焦 點(diǎn)位置。雖然從理論上說(shuō)爬山探索法非常適用于探索焦點(diǎn)位置,但在實(shí)際應(yīng)用中,傳統(tǒng)的 爬山探索法存在著諸多技術(shù)問(wèn)題,主要?dú)w納為以下幾點(diǎn)1、在實(shí)際應(yīng)用中,由于在遠(yuǎn)離準(zhǔn)焦 點(diǎn)的區(qū)域內(nèi),對(duì)焦評(píng)價(jià)函數(shù)的曲線是平坦而稍有起伏的,其值的變化緩慢且沒(méi)有特點(diǎn),因此運(yùn)用普通的爬山探索法在那里難以確定電機(jī)的轉(zhuǎn)動(dòng)方向。當(dāng)電機(jī)遇到一個(gè)局部極值時(shí)就會(huì) 錯(cuò)誤地認(rèn)為已經(jīng)找到準(zhǔn)焦點(diǎn)而改變鏡頭的運(yùn)動(dòng)方向或者停止繼續(xù)對(duì)焦,從而無(wú)法找到準(zhǔn)確 的對(duì)焦點(diǎn);2、爬山探索法實(shí)現(xiàn)起來(lái)比較簡(jiǎn)單,但對(duì)于一些要求比較高的應(yīng)用往往達(dá)不到所 需的速度和精度。
發(fā)明內(nèi)容
發(fā)明目的本發(fā)明的目的在于針對(duì)現(xiàn)有技術(shù)的不足,提供一種粗調(diào)細(xì)調(diào)相結(jié)合的 快速插值焦點(diǎn)探索算法,可以避免電機(jī)的盲目反轉(zhuǎn),確保系統(tǒng)快速的找到正確的焦點(diǎn)位置, 并通過(guò)插值算法進(jìn)一步提高焦點(diǎn)精度。技術(shù)方案本發(fā)明所述的粗調(diào)細(xì)調(diào)相結(jié)合的快速插值焦點(diǎn)探索算法,主要包括如 下步驟(1)粗調(diào)在全域范圍內(nèi)以一定的采樣間隔進(jìn)行探索并分別計(jì)算各采樣點(diǎn)的對(duì)焦 評(píng)價(jià)函數(shù)值,確定采樣得到的最大值所在區(qū)間及其前后兩個(gè)采樣區(qū)間為細(xì)調(diào)區(qū)間;(2)細(xì)調(diào)在步驟⑴確定的細(xì)調(diào)區(qū)間內(nèi)以較小的采樣間隔再進(jìn)行精確探索,分別 計(jì)算各采樣點(diǎn)的對(duì)焦評(píng)價(jià)函數(shù)值,焦點(diǎn)的位置處于采樣得到的最大值所在區(qū)間及其前后兩 個(gè)采樣區(qū)間之內(nèi);細(xì)調(diào)區(qū)間的采樣間隔根據(jù)需要設(shè)置,間隔越小探索的精度越高;但是如 果采樣間隔設(shè)定得過(guò)于窄小,雖然可以提高精度,但探索次數(shù)就會(huì)大幅增加,從而大大增加 了電機(jī)移動(dòng)次數(shù)和探索時(shí)間。(3)插值取最大值左邊的的兩個(gè)采樣點(diǎn)a點(diǎn)、b點(diǎn)和右邊的兩個(gè)采樣點(diǎn)c點(diǎn)、d點(diǎn) 的值,將a點(diǎn)和b點(diǎn)連成的直線ab,將c點(diǎn)和d點(diǎn)連成的直線cd,直線ab與直線cd的交點(diǎn) 作為采樣區(qū)間的插入值,該插入值所在的位置即為非常接近實(shí)際焦點(diǎn)位置。本發(fā)明所述的粗調(diào)細(xì)調(diào)相結(jié)合的快速插值焦點(diǎn)探索算法,步驟(1)的具體流程 為(11)定義粗調(diào)采樣間隔Stl,定義探索開(kāi)始位置Pstl和結(jié)束位置Peci,定義對(duì)焦評(píng)價(jià)函 數(shù)最大值Fmax = 0(12)計(jì)算當(dāng)前位置的對(duì)焦評(píng)價(jià)函數(shù)值Fi,若Fi > Fmax則Fmax = Fi,驅(qū)動(dòng)電機(jī)將 鏡頭移動(dòng)到下一個(gè)采樣點(diǎn);(13)判斷電機(jī)是否移動(dòng)到結(jié)束位置Peci,若是,則確定Fmax所在區(qū)間及其前后區(qū)間 為細(xì)調(diào)區(qū)間,進(jìn)入步驟(2),若否,則返回步驟(12)。步驟(2)的具體流程為(21)定義細(xì)調(diào)采樣間隔S1,定義探索開(kāi)始位置Psi和結(jié)束位置Pei,復(fù)位對(duì)焦評(píng)價(jià)函 數(shù)最大值Fmax = 0,定義采樣值數(shù)組F[] = 0 ;(22)計(jì)算當(dāng)前位置的對(duì)焦評(píng)價(jià)函數(shù)值Fi,F(xiàn)[i] = Fi,若Fi > Fmax則Fmax = Fi, 驅(qū)動(dòng)電機(jī)將鏡頭移動(dòng)到下一個(gè)采樣點(diǎn);(23)判斷電機(jī)是否移動(dòng)到結(jié)束位置Pei,若是,則進(jìn)入步驟(3),若否,則返回步驟。步驟(3)的具體流程為取F[imax-2]、F[imax_l]、F[imax]、F[imax+l]值,計(jì)算直線 F[imax-2]F[imax_l] 與直線F[imax]F[imax+l]的交點(diǎn),驅(qū)動(dòng)電機(jī)將鏡頭移動(dòng)到該交點(diǎn)位置,對(duì)焦結(jié)束。
本發(fā)明的有益效果為1、本發(fā)明通過(guò)理論結(jié)合實(shí)際的研究方法,提出了一種粗調(diào) 細(xì)調(diào)相結(jié)合的快速插值焦點(diǎn)探索算法,采用了全域探索、局部插值的技術(shù),通過(guò)粗調(diào)、細(xì)調(diào)、 插值這三個(gè)過(guò)程,可以實(shí)現(xiàn)非常快速精確的焦點(diǎn)定位,具有探索速度快、精度高等特點(diǎn),大 大改善了傳統(tǒng)的爬山探索法,并提高了結(jié)果的正確性和精確性;2、本發(fā)明粗調(diào)過(guò)程在探索 全域找到正確的焦點(diǎn)范圍,避免算法落入局部極值的錯(cuò)誤計(jì)算中;細(xì)調(diào)過(guò)程精確定位焦點(diǎn) 位置的小范圍區(qū)間,提高對(duì)焦精度;插值過(guò)程預(yù)測(cè)焦點(diǎn)在小范圍區(qū)間中的具體位置,在無(wú)需 額外采樣的情況下進(jìn)一步提高對(duì)焦精度;3、本發(fā)明方法可以避免電機(jī)的盲目反轉(zhuǎn),確保系 統(tǒng)快速的找到正確的焦點(diǎn)位置,并通過(guò)插值算法進(jìn)一步提高焦點(diǎn)精度;4、本發(fā)明方法對(duì)焦 精度高,由于采用了細(xì)調(diào)和插值的過(guò)程,一般使用本算法可比傳統(tǒng)算法精度提高2-3倍;正 確性高,本算法是在全域范圍內(nèi)探索得出焦點(diǎn)區(qū)間的,避免了算法落入局部極值的可能性, 因此較傳統(tǒng)算法有更高的正確性;快速,由于采用粗調(diào)和細(xì)調(diào)相結(jié)合的方法,縮小了探索范 圍,減少了探索次數(shù),提高了對(duì)焦速度;實(shí)現(xiàn)簡(jiǎn)單,不需要提高計(jì)算性能,不需要高級(jí)編程技 巧就可以較容易的實(shí)現(xiàn)本算法。
圖1為本發(fā)明現(xiàn)有的爬山搜索算法原理圖;圖2為本發(fā)明算法原理圖;圖3為本發(fā)明算法的流程圖。
具體實(shí)施例方式下面結(jié)合附圖和具體實(shí)施例,進(jìn)一步闡明本發(fā)明,應(yīng)理解這些實(shí)施例僅用于說(shuō)明 發(fā)明而不用于限制本發(fā)明的范圍,在閱讀了本發(fā)明之后,本領(lǐng)域技術(shù)人員對(duì)本發(fā)明的各種 等價(jià)形式的修改均落于本申請(qǐng)所附權(quán)利要求所限定的范圍。實(shí)施例1 一種粗調(diào)細(xì)調(diào)相結(jié)合的快速插值焦點(diǎn)探索算法,本算法的原理如圖2所 示。首先進(jìn)行粗調(diào),在全域(A1B1)范圍內(nèi)以較大的采樣間隔進(jìn)行探索并分別計(jì)算各采樣點(diǎn) 的對(duì)焦評(píng)價(jià)函數(shù)值,如圖所示,此輪探索在4號(hào)采樣點(diǎn)取得了最大值,這說(shuō)明焦點(diǎn)位置一定 在4號(hào)采樣區(qū)間及其前后兩個(gè)采樣區(qū)間之內(nèi)(A2B2);接下來(lái)進(jìn)行細(xì)調(diào),以一個(gè)更小的采樣間隔在A2B2范圍內(nèi)進(jìn)行精確探索(該采樣間 隔的設(shè)定取決與對(duì)焦點(diǎn)精度要求,采樣間隔越小對(duì)焦精度越高),分別計(jì)算各采樣點(diǎn)的對(duì)焦 評(píng)價(jià)函數(shù)之后發(fā)現(xiàn)在4號(hào)采樣點(diǎn)出現(xiàn)了最大值,同理可以判斷焦點(diǎn)位置在該采樣區(qū)間及其 前后兩個(gè)采樣區(qū)間之內(nèi)(圖中2號(hào)點(diǎn)與5號(hào)點(diǎn)之間)。在細(xì)調(diào)結(jié)束后一般可以得到比較精確的焦點(diǎn)位置區(qū)間,但還不夠精準(zhǔn),誤差范圍 在細(xì)調(diào)采樣間隔之間。為了進(jìn)一步的定位焦點(diǎn)位置,如圖2所示,取最大值左邊的兩個(gè)采樣 點(diǎn)(a點(diǎn)和b點(diǎn))和右邊的兩個(gè)采樣點(diǎn)(c點(diǎn)和d點(diǎn))的值,將a點(diǎn)和b點(diǎn)連成的直線ab,將 c點(diǎn)和d點(diǎn)連成的直線cd,直線ab與直線cd的交點(diǎn)作為在4號(hào)采樣區(qū)間的插入值,實(shí)踐證 明該插入值所在的位置非常接近實(shí)際焦點(diǎn)位置。在細(xì)調(diào)的過(guò)程中,如果采樣間隔設(shè)定得過(guò)于窄小,雖然可以提高精度,但探索次數(shù) 就會(huì)大幅增加,從而大大增加了電機(jī)移動(dòng)次數(shù)和探索時(shí)間。探索過(guò)程配合插值算法可以加 大細(xì)調(diào)過(guò)程中的采樣間隔,由插值算法保證精度,這樣可以大幅減少細(xì)調(diào)過(guò)程的時(shí)間,在提高精度的同時(shí)提高探索速度。實(shí)施例2 —種粗調(diào)細(xì)調(diào)相結(jié)合的快速插值焦點(diǎn)探索算法,其計(jì)算機(jī)流程如圖3所 示,具體步驟為(1)初始化步進(jìn)電機(jī)復(fù)位,定義粗調(diào)采樣間隔Stl和細(xì)調(diào)采樣間隔S1,定義探索開(kāi) 始位置Pstl和結(jié)束位置Pe。,定義對(duì)焦評(píng)價(jià)函數(shù)最大值Fmax = 0 ;(2)開(kāi)始粗調(diào)計(jì)算當(dāng)前位置的對(duì)焦評(píng)價(jià)函數(shù)值Fi,若Fi > Fmax則Fmax = Fi, 驅(qū)動(dòng)電機(jī)將鏡頭移動(dòng)到下一個(gè)采樣點(diǎn);(3)判斷電機(jī)是否移動(dòng)到結(jié)束位置Peci,若是,進(jìn)入下一步,若否,返回上一步;(4)開(kāi)始精調(diào)設(shè)定探索開(kāi)始位置Psi和結(jié)束位置Pei,復(fù)位對(duì)焦評(píng)價(jià)函數(shù)最大值 Fmax = O,定義采樣值數(shù)組F[] = 0,計(jì)算當(dāng)前位置的對(duì)焦評(píng)價(jià)函數(shù)值Fi,F(xiàn)[i] =Fi,若Fi > Fmax則Fmax = Fi,驅(qū)動(dòng)電機(jī)將鏡頭移動(dòng)到下一個(gè)采樣點(diǎn);(5)判斷電機(jī)是否移動(dòng)到結(jié)束位置Pei,若是,進(jìn)入下一步,若否,返回上一步;(6)開(kāi)始插值取 F[imax-2]、F[imax_l]、F[imax]、F[imax+1]值,計(jì)算直線 F[imax-2]F[imax-l]與直線F[imax]F[imax+l]的交點(diǎn),驅(qū)動(dòng)電機(jī)將鏡頭移動(dòng)到該交點(diǎn)位 置;(7)對(duì)焦結(jié)束。
權(quán)利要求
一種粗調(diào)細(xì)調(diào)相結(jié)合的快速插值焦點(diǎn)探索算法,其特征在于主要包括如下步驟(1)粗調(diào)在全域范圍內(nèi)以一定的采樣間隔進(jìn)行探索并分別計(jì)算各采樣點(diǎn)的對(duì)焦評(píng)價(jià)函數(shù)值,確定采樣得到的最大值所在區(qū)間及其前后兩個(gè)采樣區(qū)間為細(xì)調(diào)區(qū)間;(2)細(xì)調(diào)在步驟(1)確定的細(xì)調(diào)區(qū)間內(nèi)以一定的采樣間隔進(jìn)行精確探索,分別計(jì)算各采樣點(diǎn)的對(duì)焦評(píng)價(jià)函數(shù)值,焦點(diǎn)的位置處于采樣得到的最大值所在區(qū)間及其前后兩個(gè)采樣區(qū)間之內(nèi);(3)插值取最大值左邊的的兩個(gè)采樣點(diǎn)a點(diǎn)、b點(diǎn)和右邊的兩個(gè)采樣點(diǎn)c點(diǎn)、d點(diǎn)的值,將a點(diǎn)和b點(diǎn)連成的直線ab,將c點(diǎn)和d點(diǎn)連成的直線cd,直線ab與直線cd的交點(diǎn)作為采樣區(qū)間的插入值,該插入值所在的位置即為非常接近實(shí)際焦點(diǎn)位置。
2.根據(jù)權(quán)利要求1所述的粗調(diào)細(xì)調(diào)相結(jié)合的快速插值焦點(diǎn)探索算法,其特征在于步驟(1)的具體方法為(11)定義粗調(diào)采樣間隔Stl,定義探索開(kāi)始位置Pstl和結(jié)束位置Peci,定義對(duì)焦評(píng)價(jià)函數(shù)最 大值 Fmax = 0 ;(12)計(jì)算當(dāng)前位置的對(duì)焦評(píng)價(jià)函數(shù)值Fi,若Fi> Fmax則Fmax = Fi,驅(qū)動(dòng)電機(jī)將鏡頭 移動(dòng)到下一個(gè)采樣點(diǎn);(13)判斷電機(jī)是否移動(dòng)到結(jié)束位置Peci,若是,則確定Fmax所在區(qū)間及其前后區(qū)間為細(xì) 調(diào)區(qū)間,進(jìn)入步驟(2),若否,則返回步驟(12)。
3.根據(jù)權(quán)利要求2所述的粗調(diào)細(xì)調(diào)相結(jié)合的快速插值焦點(diǎn)探索算法,其特征在于步驟(2)的具體方法為(21)定義細(xì)調(diào)采樣間隔S1,定義探索開(kāi)始位置Psi和結(jié)束位置Pei,復(fù)位對(duì)焦評(píng)價(jià)函數(shù)最 大值Fmax = 0,定義采樣值數(shù)組F[] = 0 ;(22)計(jì)算當(dāng)前位置的對(duì)焦評(píng)價(jià)函數(shù)值Fi,F(xiàn)[i]= Fi,若Fi > Fmax則Fmax = Fi,驅(qū) 動(dòng)電機(jī)將鏡頭移動(dòng)到下一個(gè)采樣點(diǎn);(23)判斷電機(jī)是否移動(dòng)到結(jié)束位置Pei,若是,則進(jìn)入步驟(3),若否,則返回步驟(22)。
4.根據(jù)權(quán)利要求3所述的粗調(diào)細(xì)調(diào)相結(jié)合的快速插值焦點(diǎn)探索算法,其特征在于步驟(3)的具體方法為取 F[imax-2]、F[imax_l]、F[imax]、F[imax+1]值,計(jì)算直線 F[imax-2]F[imax_l]與 直線F[imax]F[imax+l]的交點(diǎn),驅(qū)動(dòng)電機(jī)將鏡頭移動(dòng)到該交點(diǎn)位置,對(duì)焦結(jié)束。
全文摘要
本發(fā)明公開(kāi)一種粗調(diào)細(xì)調(diào)相結(jié)合的快速插值焦點(diǎn)探索算法,主要包括如下步驟(1)粗調(diào)在全域范圍內(nèi)以一定的采樣間隔進(jìn)行探索并分別計(jì)算各采樣點(diǎn)的對(duì)焦評(píng)價(jià)函數(shù)值;(2)細(xì)調(diào)在細(xì)調(diào)區(qū)間內(nèi)以較小的采樣間隔進(jìn)行精確探索,分別計(jì)算各采樣點(diǎn)的對(duì)焦評(píng)價(jià)函數(shù)值,焦點(diǎn)的位置處于采樣得到的最大值所在區(qū)間及其前后兩個(gè)采樣區(qū)間之內(nèi);(3)插值取最大值左邊的兩個(gè)采樣點(diǎn)和右邊的兩個(gè)采樣點(diǎn)的值,將其分別連成的直線,兩條直線的交點(diǎn)作為采樣區(qū)間的插入值,該插入值所在的位置即為非常接近實(shí)際焦點(diǎn)的位置。本發(fā)明采用了全域探索、局部插值的技術(shù),通過(guò)粗調(diào)、細(xì)調(diào)、插值這三個(gè)過(guò)程,可以實(shí)現(xiàn)非??焖倬_的焦點(diǎn)定位,具有探索速度快、精度高等特點(diǎn)。
文檔編號(hào)G02B7/36GK101995640SQ20101050349
公開(kāi)日2011年3月30日 申請(qǐng)日期2010年9月30日 優(yōu)先權(quán)日2010年9月30日
發(fā)明者梁凱 申請(qǐng)人:鎮(zhèn)江中信科技開(kāi)發(fā)有限公司