本發(fā)明屬于成像系統(tǒng)技術(shù)領(lǐng)域,特別涉及了一種尋找成像系統(tǒng)最優(yōu)工作參數(shù)的系統(tǒng)和方法。
背景技術(shù):
使用相機(jī)和光源構(gòu)成的成像系統(tǒng)是人們用于拍攝產(chǎn)品,繼而實(shí)現(xiàn)對(duì)產(chǎn)品進(jìn)行無(wú)損分析的主要設(shè)備,它提供一種很好的無(wú)損檢測(cè)手段,使得人們能夠快速地分析產(chǎn)品的質(zhì)量。使用前,人們需要對(duì)例如相機(jī)光圈、相機(jī)焦距、相機(jī)角度、光源角度等參數(shù)進(jìn)行設(shè)定,結(jié)果一旦固定,那么在正常的、長(zhǎng)期的檢測(cè)過(guò)程中,對(duì)于一批產(chǎn)品而言,這些參數(shù)一般是不用再進(jìn)行修正的。
在前期的參數(shù)設(shè)置過(guò)程中,這些參數(shù)的設(shè)定是一個(gè)非常麻煩的問(wèn)題,人們現(xiàn)有的方法往往是依靠人工經(jīng)驗(yàn),不斷嘗試調(diào)整這些參數(shù),然后用肉眼的方法對(duì)拍攝到的圖片判斷是否變得清晰,在光源越多的情況下,這種工作有的時(shí)候甚至需要好幾天。這種方法不僅主觀性大,而且耗時(shí)耗力,效果有時(shí)也不是很理想。
技術(shù)實(shí)現(xiàn)要素:
為了解決上述背景技術(shù)提出的技術(shù)問(wèn)題,本發(fā)明旨在提供一種尋找成像系統(tǒng)最優(yōu)工作參數(shù)的系統(tǒng)和方法,解決現(xiàn)有技術(shù)主觀性強(qiáng)、準(zhǔn)確率低以及耗時(shí)耗力的問(wèn)題。
為了實(shí)現(xiàn)上述技術(shù)目的,本發(fā)明的技術(shù)方案為:
一種尋找成像系統(tǒng)最優(yōu)工作參數(shù)的系統(tǒng),包括控制模塊、n路驅(qū)動(dòng)電路、n組電機(jī)、n組精密轉(zhuǎn)動(dòng)臺(tái)、pc機(jī)、光源產(chǎn)生模塊以及至少一個(gè)相機(jī),n路驅(qū)動(dòng)電路、n組電機(jī)與n組精密轉(zhuǎn)動(dòng)臺(tái)一一對(duì)應(yīng),n為成像系統(tǒng)工作參數(shù)的數(shù)目,相機(jī)與控制模塊分別與pc機(jī)進(jìn)行數(shù)據(jù)連接,光源產(chǎn)生模塊的控制端和n路驅(qū)動(dòng)電路的控制端分別與控制模塊電性連接,n路驅(qū)動(dòng)電路的輸出端分別與對(duì)應(yīng)電機(jī)的控制端電性連接,n組電機(jī)分別帶動(dòng)對(duì)應(yīng)的精密轉(zhuǎn)動(dòng)臺(tái)旋轉(zhuǎn),通過(guò)n組精密控制臺(tái)的旋轉(zhuǎn)分別調(diào)節(jié)成像系統(tǒng)的n個(gè)工作參數(shù);所述主控模塊接收pc機(jī)下發(fā)的控制指令,并根據(jù)該控制指令,通過(guò)n路驅(qū)動(dòng)電路和n組電機(jī)驅(qū)動(dòng)n組精密轉(zhuǎn)動(dòng)臺(tái)的旋轉(zhuǎn),相機(jī)將不同工作參數(shù)下拍攝的圖像傳送給pc機(jī),pc機(jī)根據(jù)接收到的圖像數(shù)據(jù)尋找出成像系統(tǒng)的最優(yōu)工作參數(shù)。
進(jìn)一步地,成像系統(tǒng)的工作參數(shù)包括相機(jī)角度、相機(jī)光圈、相機(jī)焦距和光源照射角度。
進(jìn)一步地,該系統(tǒng)還包括電源模塊和觸發(fā)開(kāi)關(guān),觸發(fā)開(kāi)關(guān)采用輕觸自鎖的微動(dòng)開(kāi)關(guān),電源模塊的輸出端經(jīng)觸發(fā)開(kāi)關(guān)與控制模塊的供電端相連,當(dāng)觸發(fā)開(kāi)關(guān)閉合,電源模塊為控制模塊供電,系統(tǒng)開(kāi)始工作。
進(jìn)一步地,該系統(tǒng)還包括分別與控制模塊相連的發(fā)光模塊和發(fā)音模塊,發(fā)光模塊和發(fā)音模塊用于顯示系統(tǒng)的工作狀態(tài)。
進(jìn)一步地,所述發(fā)光模塊采用發(fā)光二極管,所述發(fā)音模塊采用蜂鳴器。
進(jìn)一步地,所述驅(qū)動(dòng)電路的型號(hào)為l298,所述電機(jī)的型號(hào)為bygh42,所述精密轉(zhuǎn)動(dòng)臺(tái)的型號(hào)為ks332-12,所述光源產(chǎn)生模塊采用hf-hx12050環(huán)形光源發(fā)生器。
基于上述系統(tǒng)的成像系統(tǒng)最優(yōu)工作參數(shù)的尋找方法,包括以下步驟:
(1)將成像系統(tǒng)的各工作參數(shù)的運(yùn)動(dòng)范圍歸一化;
(2)初始化粒子群搜索算法,設(shè)置m個(gè)粒子,隨機(jī)設(shè)置粒子在歸一化的各工作參數(shù)的位置,并設(shè)置粒子群搜索算法的最小變化閾值、最大尋優(yōu)次數(shù)和初始粒子運(yùn)動(dòng)步長(zhǎng)的自適應(yīng)最大倍率;
(3)按照設(shè)置的m個(gè)粒子位置,pc機(jī)生成控制指令,控制模塊根據(jù)控制指令驅(qū)動(dòng)n組精密轉(zhuǎn)動(dòng)臺(tái)旋轉(zhuǎn),從而使成像系統(tǒng)的各工作參數(shù)到達(dá)設(shè)定的位置,并拍攝該位置下的待測(cè)對(duì)象的圖像,每一個(gè)粒子對(duì)應(yīng)一張圖像;
(4)對(duì)m張圖像進(jìn)行適應(yīng)度評(píng)價(jià),找出當(dāng)前搜索批次中的最優(yōu)粒子和所有搜索批次中的歷史最優(yōu)粒子;
(5)判斷搜索結(jié)束條件,若連續(xù)q個(gè)搜索批次的粒子最優(yōu)值小于設(shè)定的最小變化閾值,或者當(dāng)前搜索次數(shù)大于設(shè)定的最大尋優(yōu)次數(shù),則判斷搜索結(jié)束,轉(zhuǎn)入步驟(7),否則轉(zhuǎn)入步驟(6);
(6)對(duì)粒子群進(jìn)行更新,然后返回步驟(3);
(7)輸出最優(yōu)粒子,pc機(jī)按照最優(yōu)粒子生成控制指令,控制模塊根據(jù)控制指令驅(qū)動(dòng)4組精密轉(zhuǎn)動(dòng)臺(tái)旋轉(zhuǎn),從而使成像系統(tǒng)的各工作參數(shù)到達(dá)最優(yōu)位置,進(jìn)行拍攝。
進(jìn)一步地,步驟(4)的具體過(guò)程如下:
(41)計(jì)算當(dāng)前搜索批次的自適應(yīng)變化適應(yīng)度的倍率:
上式中,am2(i)為第i次搜索的自適應(yīng)變化適應(yīng)度的倍率,am1(i)為第i次搜索的粒子運(yùn)動(dòng)步長(zhǎng)的自適應(yīng)最大倍率,
(42)采用鄰域灰度差分法計(jì)算當(dāng)前搜索批次m張圖像中的每個(gè)點(diǎn)與周?chē)膮^(qū)分度之和:
上式中,
(43)將
進(jìn)一步地,在步驟(6)中,按下式更新粒子群:
上式中,
進(jìn)一步地,在更新粒子群時(shí),需要對(duì)粒子速度進(jìn)行如下限制:
上式中,j為粒子運(yùn)動(dòng)的最小步長(zhǎng),j的取值為精密轉(zhuǎn)動(dòng)臺(tái)的最小刻度對(duì)應(yīng)的歸一化數(shù)值。
采用上述技術(shù)方案帶來(lái)的有益效果:
本發(fā)明基于現(xiàn)有的電子技術(shù)和人工智能技術(shù),采用客觀的評(píng)價(jià)清晰度的算法,全自動(dòng)快速尋找相機(jī)和光源最優(yōu)參數(shù),結(jié)果不僅客觀精確,而且節(jié)省了勞動(dòng)力和時(shí)間,降低了成本,還提高了下一步圖像處理的準(zhǔn)確率。
附圖說(shuō)明
圖1是本發(fā)明的系統(tǒng)組成框圖。
圖2是本發(fā)明的系統(tǒng)工作示意圖。
圖3是本發(fā)明的方法流程圖。
具體實(shí)施方式
以下將結(jié)合附圖,對(duì)本發(fā)明的技術(shù)方案進(jìn)行詳細(xì)說(shuō)明。
如圖1、圖2所示,一種尋找成像系統(tǒng)最優(yōu)工作參數(shù)的系統(tǒng),硬件部分用于控制相機(jī)、光源等參數(shù)的變化,采集相應(yīng)的對(duì)象照片,提供分析的計(jì)算資源。其結(jié)構(gòu)包括電源模塊、觸發(fā)開(kāi)關(guān)、發(fā)光模塊、發(fā)音模塊、控制模塊、驅(qū)動(dòng)電路、電機(jī)、精密轉(zhuǎn)動(dòng)臺(tái)、相機(jī)、光源產(chǎn)生模塊和pc機(jī)。本實(shí)施例以1個(gè)光源產(chǎn)生模塊與1個(gè)相機(jī)組成的成像系統(tǒng)來(lái)進(jìn)行說(shuō)明。
如圖2所示,電源模塊、觸發(fā)開(kāi)關(guān)、發(fā)光模塊、發(fā)音模塊、控制模塊、驅(qū)動(dòng)電路集中在一個(gè)控制板內(nèi),該控制板與pc機(jī)溝通,驅(qū)動(dòng)電機(jī),帶動(dòng)精密轉(zhuǎn)動(dòng)臺(tái)的旋轉(zhuǎn),從而調(diào)節(jié)相機(jī)的光圈、焦距、角度,以及光源的照射角度等參數(shù)。
在本實(shí)施例中,電源模塊用于對(duì)整個(gè)系統(tǒng)進(jìn)行供電,本實(shí)施例中采用的是220v的交流電源轉(zhuǎn)24v和5v的模塊電源,其中24v為給電機(jī)使用,5v為給電路板使用。觸發(fā)開(kāi)關(guān)為控制電源打開(kāi)和關(guān)閉時(shí)使用,采用的是輕觸自鎖的微動(dòng)開(kāi)關(guān)。發(fā)光模塊用于顯示硬件的工作狀態(tài),正常或者報(bào)警,采用的是全彩的發(fā)光二極管。發(fā)音模塊用于顯示硬件的工作狀態(tài),采用的是普通蜂鳴器??刂破髂K用于接收pc機(jī)的控制指令,控制驅(qū)動(dòng)電路驅(qū)動(dòng)電機(jī)的運(yùn)行,然后帶動(dòng)精密轉(zhuǎn)動(dòng)臺(tái)的運(yùn)動(dòng),從而改變相機(jī)的光圈、焦距、角度,以及光源的照射角度的參數(shù),它還控制發(fā)音模塊、發(fā)光模塊的工作,采用的是stm32f107芯片。驅(qū)動(dòng)電路用于根據(jù)控制模塊的指令驅(qū)動(dòng)電機(jī)的工作,采用的是4路l298的驅(qū)動(dòng)電路。電機(jī)用于在驅(qū)動(dòng)電路的驅(qū)動(dòng)下,帶動(dòng)精密轉(zhuǎn)動(dòng)臺(tái),采用的是4個(gè)bygh42的高精密步進(jìn)電機(jī),并且其精度等于精密轉(zhuǎn)動(dòng)臺(tái)。精密轉(zhuǎn)動(dòng)臺(tái)用于在電機(jī)的帶動(dòng)下,進(jìn)行微小的轉(zhuǎn)動(dòng),從而帶動(dòng)與之連接的相機(jī)的光圈、焦距、角度,以及光源的照射角度的參數(shù),采用的是4個(gè)ks332-12型,最大行程為12mm,精度為0.5um,4個(gè)旋轉(zhuǎn)平臺(tái)分別對(duì)應(yīng)相機(jī)光圈、相機(jī)焦距、相機(jī)角度以及光源角度這4個(gè)參數(shù)。相機(jī)用于在電腦的操作下,拍攝需要檢測(cè)的對(duì)象,采用的是大恒水星1000型1000萬(wàn)像素的工業(yè)相機(jī)。光源產(chǎn)生模塊用于提供亮度給相機(jī),配合其工作,采用的是hf-hx12050型環(huán)形光源發(fā)生器。pc機(jī)用于管理控制板的工作,獲得相機(jī)的拍攝結(jié)果,分析和保存相機(jī)拍攝的照片,用智能搜索算法尋找相機(jī)的光圈、焦距、角度以及光源的照射角度的最優(yōu)參數(shù),記錄這些參數(shù)以備下次同批產(chǎn)品直接使用,采用的是戴爾t5810型圖形工作站。
本發(fā)明還提出了一種成像系統(tǒng)最優(yōu)工作參數(shù)的尋找方法,如圖3所示,包括以下步驟。
步驟1:工作范圍歸一化。把相機(jī)光圈、相機(jī)焦距、相機(jī)角度、光源角度的運(yùn)動(dòng)范圍全部歸一化,轉(zhuǎn)換到[0~1]之間。
步驟2:粒子群搜索算法初始化。設(shè)置m個(gè)粒子,隨機(jī)設(shè)置它們?cè)谙鄼C(jī)光圈、相機(jī)焦距、相機(jī)角度、光源角度的[0~1]之間的歸一化的初始化(即第一個(gè))的位置
在本實(shí)施例中,粒子數(shù)設(shè)置為20個(gè)。
步驟3:獲得圖像。將成像系統(tǒng)的參數(shù)按照
步驟4:評(píng)價(jià)適應(yīng)度。評(píng)價(jià)過(guò)程如下:
步驟4-1:計(jì)算當(dāng)前搜索批次的自適應(yīng)變化適應(yīng)度的倍率:
上式中,am2(i)為第i次搜索的自適應(yīng)變化適應(yīng)度的倍率,am1(i)為第i次搜索的粒子運(yùn)動(dòng)步長(zhǎng)的自適應(yīng)最大倍率,
步驟4-2:采用鄰域灰度差分法計(jì)算當(dāng)前搜索批次m張圖像中的每個(gè)點(diǎn)與周?chē)膮^(qū)分度之和,本實(shí)施例中鄰域灰度差分法采用的是3鄰域的計(jì)算法:
上式中,
步驟4-3:將鄰域灰度差分法計(jì)算的結(jié)果
步驟5:判斷搜索結(jié)束條件。若連續(xù)q個(gè)搜索批次的粒子最優(yōu)值小于設(shè)定的最小變化閾值,或者當(dāng)前搜索次數(shù)大于設(shè)定的最大尋優(yōu)次數(shù),則判斷搜索結(jié)束,轉(zhuǎn)入步驟7,否則轉(zhuǎn)入步驟6。
步驟6:按下式更新粒子群:
上式中,
另外,為了防止粒子盲目搜索,粒子運(yùn)動(dòng)步長(zhǎng)的自適應(yīng)最大倍率am1(i)控制了最大的運(yùn)動(dòng)速度,即:
上式中,j為粒子運(yùn)動(dòng)的最小步長(zhǎng)。
更新后返回到步驟3。
步驟7:輸出最優(yōu)粒子,pc機(jī)按照最優(yōu)粒子生成控制指令,控制模塊根據(jù)控制指令驅(qū)動(dòng)4組精密轉(zhuǎn)動(dòng)臺(tái)旋轉(zhuǎn),從而使相機(jī)角度、相機(jī)光圈、相機(jī)焦距和光源角度到達(dá)最優(yōu)位置,進(jìn)行拍攝。
以上實(shí)施例僅為說(shuō)明本發(fā)明的技術(shù)思想,不能以此限定本發(fā)明的保護(hù)范圍,凡是按照本發(fā)明提出的技術(shù)思想,在技術(shù)方案基礎(chǔ)上所做的任何改動(dòng),均落入本發(fā)明保護(hù)范圍之內(nèi)。