專利名稱:三維掃描系統(tǒng)中基于單像素的閾值分割方法
技術(shù)領(lǐng)域:
本發(fā)明是一種逆向工程中,用三維掃描系統(tǒng)根據(jù)空間二進制編碼實現(xiàn)的一種基于單像素的閾值分割方法。屬于圖象三維信息重構(gòu)的技術(shù)領(lǐng)域。
背景技術(shù):
逆向工程(Reverse Engineering,RE)技術(shù)是20世紀80年代后期出現(xiàn)在先進制造領(lǐng)域里的新技術(shù),其一般包括四個基本環(huán)節(jié)三維形體檢測與轉(zhuǎn)換(物理數(shù)據(jù)的獲得)、數(shù)據(jù)預(yù)處理(點云處理、識別、多視拼接),CAD模型的建立(曲面重構(gòu))、CAM制件成型。大多數(shù)關(guān)于逆向工程的研究主要集中在實物的逆向重構(gòu)上,即產(chǎn)品實物的CAD模型重構(gòu)和最終產(chǎn)品的制造方面,稱為“實物逆向工程”。其基本流程圖如圖1所示。
三維檢測技術(shù)是近十年來蓬勃發(fā)展起來的新興研究領(lǐng)域,它與計算機技術(shù)的發(fā)展相結(jié)合取得了驚人的進展。由于結(jié)構(gòu)光法具有檢測過程完全非接觸、數(shù)據(jù)空間分辨率高、一次性瞬間投影直接實現(xiàn)三維空間物體形狀檢測和獲取三維信息的特點,且成本低,便于實際應(yīng)用,從而具有較高研究價值和發(fā)展前景,因此結(jié)構(gòu)光法是實現(xiàn)三維幾何形狀檢測及其重構(gòu)的常用方法。
逆向工程的最終目的是為了重構(gòu)三維實物,理論上來說,不需任何輔助手段,只需根據(jù)雙目CCD得到的兩幅圖中的視差就可以還原實物模型。但是對計算機來說,無法直接檢測出物體在不同鏡頭下的物體視差,因此必須設(shè)計光柵條紋輔助計算機對其進行判斷。對物體在不同鏡頭下視差的識別,可以等同于對單幅圖片中物體特征區(qū)域的識別,也就是說如果在單幅圖片上標識出物體的每一個特征部分,那么只需簡單比較兩張圖中的同一特征區(qū)就可以輕易的獲取二者之間的誤差。在單幅圖片中,物體本身并不具備有規(guī)律、明顯便于識別的特征。因此必須對物體進行光柵投影,使的在得到圖片中的物體表面上具有有規(guī)律的條紋形狀。那么就把對圖片中物體不同特征區(qū)域的識別的問題,最終轉(zhuǎn)化成為對圖像中條紋的識別。圖像中可識別的條紋數(shù)越多、識別結(jié)果中條紋的位置精度越高,則最終得到的物體空間劃分就越細,最終重構(gòu)出的物體CAD點云的精度就會越高。因此得到滿足高精度要求的編碼就是關(guān)鍵所在。
編碼技術(shù)在結(jié)構(gòu)光投影法的數(shù)據(jù)獲取中起著重要的作用,它影響著測量的精度,速度和可靠性。為了得到較好的編碼結(jié)果,投影圖案的閾值分割效果起著決定性的作用。然而在三維檢測中,當物體的色彩較暗或光照不均勻時,利用一般的閾值分割方法,無法得到良好的閾值分割結(jié)果,編碼缺失嚴重,甚至根本得不到物體的編碼。因此以前普遍采用的是將物體噴上白粉后再進行投影,方可得到較好的編碼結(jié)果,限制較多,不能適用于普遍的測量要求。
常用的閾值分割算法主要有全局閾值法和局部閾值法兩大類。在全局閾值法中,選取閾值的方法有平均灰度閾值法、直方圖法、數(shù)學(xué)期望法。局部閾值法的方法很多。不同閾值分割算法的區(qū)別在于閾值的選取方法不同。這些閾值分割算法有的主要側(cè)重于前景和背景的區(qū)分,而對于圖像的細微處沒有很好的區(qū)分,有的則強調(diào)細節(jié)的劃分,而對于整體把握不夠。而且大多數(shù)圖像分割技術(shù)是基于一幅圖片中相鄰像素的灰度或其他參數(shù)進行的,對于某個像素的分割依賴于全圖的特點,抗噪聲能力不強。對于對比度較差的條紋圖像,一般的閾值分割應(yīng)用于光柵條紋圖難以得到準確的區(qū)分開黑白條紋的分割結(jié)果。因此,當物體的色彩較暗或光照不均勻時,可根據(jù)二進制編碼的自我規(guī)范化特點,即要求每一個物點上至少有一個亮條紋和一個暗條紋落在上面,由于每個像素點在黑條紋投影下的灰度值與白條紋投影下的灰度值差別較大,完全可以根據(jù)一系列的投影光柵圖對單一像素點進行閾值分割,從而獲取較好的分割結(jié)果,得到黑白條紋劃分清晰的投影圖案。
發(fā)明內(nèi)容
技術(shù)問題針對現(xiàn)有技術(shù)所存在的缺點和限制,本發(fā)明的目的在于設(shè)計一種三維掃描系統(tǒng)中基于單像素的閾值分割方法,此方法實現(xiàn)簡單,運算速度快,對于單一像素點進行閾值分割,因此分割不依賴于圖中其他的像素點,抗干擾能力強,投影圖案黑白條紋分割清楚,有利于進行完整準確的編碼。
技術(shù)方案根據(jù)空間二進制編碼的要求設(shè)計逐步二分的投影光柵圖,將投影圖案取回計算機進行分析。由于空間二進制編碼必須滿足自我規(guī)范化條件,由于像素上取得的光強灰度值受投影物面的反射率影響,可能使暗條紋在白色物面上產(chǎn)生的灰度值與亮條紋在黑色物面上產(chǎn)生的灰度值相接近甚至于更大(圖3),此時難以用一般的閾值分割方法進行劃分,但是每個像素點在黑條紋投影下的灰度值與白條紋投影下的灰度值差別較大,完全可以根據(jù)一系列的投影光柵圖對單一像素點進行閾值分割。
對于閾值的選取,為簡單起見,開始采用取某一像素點在一系列圖案中的最大灰度值和最小灰度值的均值作為閾值,將每幅圖中當前位置的象素根據(jù)這一個閾值進行分割,明顯看到可以區(qū)分出大部分的黑白條紋,但效果仍不是十分理想,(圖4)。由圖中可以看出黑白條紋基本上可以區(qū)分出來,但是某些位置劃分的不是很清晰。因此如何選取閾值,本發(fā)明采用了逐步逼近和迭代的方法。對于某一位置的像素點根據(jù)一系列投影圖像中同一位置的像素灰度值可找到一個最佳閾值,設(shè)為T。首先根據(jù)某種規(guī)則得到圖像的一個閾值t,然后不斷的修正t直到它無限趨近于T。最后以T作為選定的閾值,將一系列投影圖案中此位置的像素點根據(jù)這一閾值依次劃分為黑或白,將每一位置的像素點都處理完畢,即獲得了所有投影圖案已經(jīng)清晰劃分了黑白條紋的閾值分割圖。有了清晰的閾值分割圖,則可以進行高精度的編碼,從而獲取準確的物體的三維信息(圖5)。
主要操作和計算步驟應(yīng)用本方法對三維掃描系統(tǒng)中條紋圖的閾值分割主要包含以下步驟(1)設(shè)計一組采用逐步二分的光柵投影圖案。第1幅粗光柵圖片中有黑白2條條紋,第2幅粗光柵圖片對第1幅中的黑白條紋進行等分,得到4條黑白交替的條紋,依此類推,第n(n為正整數(shù))幅粗光柵圖片對第n-1幅粗光柵圖片中的條紋進行等分,得到2n條黑白交替條紋,上述細光柵為條紋寬度是最后一幅粗光柵圖片中條紋寬度的二分之一的光柵,其中后一幅細光柵圖片中條紋位置依次與上一幅細光柵圖片中條紋位置在同方向上偏移l/k距離,l為細光柵中的條紋寬度,k為細光柵圖片的總幅數(shù),l/k值為0.4到0.6個像素寬度。將設(shè)計的這一組光柵圖案投影至物體上,然后由CCD攝回至計算機。投影光柵圖如圖6所示。
(2)分析空間二進制編碼的特點。根據(jù)空間二進制編碼必須滿足自我規(guī)范化條件的要求,對于每一位置的像素點,搜尋在一組投影圖案中這一位置像素的灰度值,利用逐步逼近和迭代的方法,確定最佳閾值T。遍歷一系列投影圖像,每一位置的像素點均可得到一個區(qū)分其為黑、白光照射的最佳閾值T,根據(jù)T可將當前位置的像素點進行成功的閾值分割。所有位置的像素點閾值分割完畢,即可劃分出所有投影圖案的清晰的黑、白條紋,效果較為理想。
確定最佳閾值T采用逐步逼近和迭代的方法,對于某一位置的像素點根據(jù)一系列投影圖像中同一位置的像素的灰度值可找到一個最佳閾值,設(shè)為T,首先根據(jù)某種規(guī)則得到圖像的一個閾值t,然后不斷的修正t直到它無限趨近于T;該方法主要包括以下步驟1)遍歷一系列投影圖案,找出(x,y)位置像素點的最大灰度值和最小灰度值,記為G(x,y)max和G(x,y)min,令初始閾值t=(G(x,y)max+G(x,y)min)/2,2)根據(jù)閾值t將(x,y)位置的像素區(qū)分為黑條紋投影和白條紋投影,分別求出不同投影光下的平均灰度值ZB和ZW,3)求出(x,y)位置像素新閾值t0=(ZB+ZW)/2,4)若t0=t或者迭代此數(shù)大于200次時,則結(jié)束;否則把t0的值賦給t,轉(zhuǎn)到步驟2),循環(huán)迭代計算,此時的t即認為是劃分(x,y)位置像素點在一系列投影圖案中是黑或白條紋的最佳閾值T,根據(jù)此最佳閾值即可將一系列投影圖案當前位置的像素進行分割為黑或白色,5)遍歷對投影圖案上每一位置的像素進行遍歷,依次應(yīng)用上述方法進行一系列投影圖案當前位置像素的閾值分割,遍歷完畢即將所有圖案所有位置的像素點分割完畢,得到了黑白條紋劃分清晰的分割圖。
有益效果與現(xiàn)有技術(shù)相比,本發(fā)明具有如下優(yōu)點本發(fā)明主要用于在物體表面色彩較暗或光照不均勻時,對投影圖案進行閾值分割。利用本發(fā)明,可以有效的避免環(huán)境光和物體本身色彩對分割的影響,不會出現(xiàn)用一般閾值分割方法時很多黑白條紋無法區(qū)分,全部被錯劃為全黑或全白的情況,從而相應(yīng)提高了編碼結(jié)果的準確度。利用常見的閾值分割方法可能會得到的閾值分割結(jié)果和編碼結(jié)果。在圖7中,我們可以看到物體部分全部被劃分為黑色,無法區(qū)分出黑白條紋。在圖8中,我們可以看到由于圖像閾值分割結(jié)果不好可能導(dǎo)致大面積的編碼結(jié)果缺失,最終無法得到物體的三維信息。
對于以上情況,我們考慮采用根據(jù)空間二進制編碼的自我規(guī)范化特點,根據(jù)一系列的投影光柵圖對單一像素點進行閾值分割。這種方法實現(xiàn)簡單,運算速度快,對于單一像素點進行閾值分割,因此分割不依賴于圖中其他的像素點,抗干擾能力強,投影圖案黑白條紋分割清楚,有利于進行完整準確的編碼。采用基于單像素閾值分割方法后得到的閾值分割結(jié)果和編碼結(jié)果見圖9、圖10。采用該方法后,需要進行三維檢測的物體無需再噴白粉,對于環(huán)境光也沒有特殊的要求,可以廣泛的適用于工業(yè)檢測的各個領(lǐng)域。
此方法實現(xiàn)簡單,運算速度快,對于單一像素點進行閾值分割,因此分割不依賴于圖中其他的像素點,抗干擾能力強,投影圖案黑白條紋分割清楚,有利于進行完整準確的編碼。并且采用該方法后,需要進行三維檢測的物體無需再噴白粉,對于環(huán)境光也沒有特殊的要求,可以廣泛的適用于工業(yè)檢測的各個領(lǐng)域。
本發(fā)明通過空間二進制編碼的自我規(guī)范化特點(即要求每一個物點上至少有一個亮條紋和一個暗條紋落在上面),利用一系列的投影圖案,根據(jù)單一像素點進行閾值分割,物體不再需要噴白粉,并且在一般的環(huán)境光下均能得到較好的閾值分割結(jié)果,黑白條紋分割清晰,并可由此得到完整的編碼結(jié)果,從而獲取較好的三維信息。
圖1是逆向工程通用流程圖。
圖2是光柵式三維掃描系統(tǒng)組成示意圖。
圖3是受投影物面的反射率影響暗條紋灰度值大于亮條紋灰度值的情形圖。
圖4是一系列圖案中像素的均值作為閾值的分割結(jié)果示意圖。
圖5是獲取物體三維信息方法整體流程示意圖。
圖6是逐步二分的投影光柵圖案。
圖7是采用常見閾值分割時的條紋圖分割結(jié)果示意圖。
圖8是采用常見閾值分割后的編碼結(jié)果示意圖。
圖9是采用基于單像素閾值分割方法的條紋圖分割結(jié)果示意圖。
圖10是采用基于單像素閾值分割后的編碼結(jié)果示意圖。
具體實施例方式
下面結(jié)合附圖示對本發(fā)明的具體實施方式
作進一步描述。根據(jù)上述方法,在Windows操作系統(tǒng)中通過VC++6.0平臺用C++編程實現(xiàn)了條紋圖進行閾值分割的操作。該實例是對三維掃描系統(tǒng)中對未噴粉的,黑白條紋的對比度較低的摩托車護板的投影光柵圖進行閾值分割。主要包括以下步驟1)設(shè)計一組采用逐步二分的光柵投影圖案第1幅粗光柵圖片中有黑白2條條紋,第2幅粗光柵圖片對第1幅中的黑白條紋進行等分,得到4條黑白交替的條紋,依此類推,第n幅粗光柵圖片對第n-1幅粗光柵圖片中的條紋進行等分,得到2n條黑白交替條紋,上述細光柵為條紋寬度是最后一幅粗光柵圖片中條紋寬度的二分之一的光柵,其中后一幅細光柵圖片中條紋位置依次與上一幅細光柵圖片中條紋位置在同方向上偏移l/k距離,l為細光柵中的條紋寬度,k為細光柵圖片的總幅數(shù),l/k值為0.4到0.6個像素寬度,將設(shè)計的這一組光柵圖案投影至物體上,然后由CCD攝回至計算機。投影光柵圖如圖5所示。
a)光柵設(shè)計我們在實際使用時設(shè)計了一組光柵條紋,總共11幅,其中粗條紋系列7幅,細條紋系列4幅。它們滿足技術(shù)方案中所提及的對光柵的要求。當然也可以設(shè)計和使用其他幅數(shù)的光柵條紋。
b)使用CCD攝像機拍攝圖像對于每一幅光柵圖,攝像機都對物體取圖一次。為了保證取圖的質(zhì)量,拍攝時盡量減少走動,不要在光線劇烈變化,環(huán)境光極強的情況下對物體進行拍攝,2)分析空間二進制編碼的特點根據(jù)空間二進制編碼必須滿足自我規(guī)范化條件的要求,對于每一位置的像素點,搜尋在一組投影圖案中這一位置像素的灰度值,利用逐步逼近和迭代的方法,確定最佳閾值T。遍歷一系列投影圖像,每一位置的像素點均可得到一個區(qū)分其為黑、白光照射的最佳閾值T,根據(jù)T可將當前位置的像素點進行成功的閾值分割。所有位置的像素點閾值分割完畢,即可劃分出所有投影圖案的清晰的黑、白條紋,效果較為理想。
a)選取閾值采用了逐步逼近和迭代的方法。對于某一位置的像素點根據(jù)一系列投影圖像中同一位置的像素的灰度值可找到一個最佳閾值,設(shè)為T,首先根據(jù)某種規(guī)則得到圖像的一個閾值t,然后不斷的修正t直到它無限趨近于T。對于某一位置(x,y)的像素點的閾值分割具體步驟如下(1)遍歷一系列投影圖案,找出(x,y)位置像素點的最大灰度值和最小灰度值,記為G(x,y)max和G(x,y)min,令初始閾值t=(G(x,y)max+G(x,y)min)/2。
(2)根據(jù)閾值t將(x,y)位置的像素區(qū)分為黑條紋投影和白條紋投影,分別求出不同投影光下的平均灰度值ZB和ZW。
(3)求出(x,y)位置像素新閾值t0=(ZB+ZW)/2。
(4)若t0=t或者迭代此數(shù)大于200次時,則結(jié)束。否則把t0的值賦給t。轉(zhuǎn)到步驟(2),循環(huán)迭代計算。
此時的t即認為是劃分(x,y)位置像素點在一系列投影圖案中是黑(或白)條紋的最佳閾值T。根據(jù)此最佳閾值即可將一系列投影圖案當前位置的像素進行分割為黑或白色。
b)遍歷對投影圖案上每一位置的像素進行遍歷,依次應(yīng)用上述方法進行一系列投影圖案當前位置像素的閾值分割,遍歷完畢即將所有圖案所有位置的像素點分割完畢,得到了黑白條紋劃分清晰的分割圖。
權(quán)利要求
1.一種三維掃描系統(tǒng)中基于單像素的閾值分割方法,其特征在于該方法主要包含以下步驟1.)設(shè)計一組采用逐步二分的光柵投影圖案第1幅粗光柵圖片中有黑白2條條紋,第2幅粗光柵圖片對第1幅中的黑白條紋進行等分,得到4條黑白交替的條紋,依此類推,第n幅粗光柵圖片對第n-1幅粗光柵圖片中的條紋進行等分,得到2n條黑白交替條紋,上述細光柵為條紋寬度是最后一幅粗光柵圖片中條紋寬度的二分之一的光柵,其中后一幅細光柵圖片中條紋位置依次與上一幅細光柵圖片中條紋位置在同方向上偏移l/k距離,其中,l為細光柵中的條紋寬度,k為細光柵圖片的總幅數(shù),l/k值為0.4到0.6個像素寬度;將設(shè)計的這一組光柵圖案投影至物體上,然后由CCD攝回至計算機;2.)分析空間二進制編碼的特點根據(jù)空間二進制編碼必須滿足自我規(guī)范化條件的要求,對于每一位置的像素點,搜尋在一組投影圖案中這一位置像素的灰度值,利用逐步逼近和迭代的方法,確定最佳閾值T;遍歷一系列投影圖像,每一位置的像素點均可得到一個區(qū)分其為黑、白光照射的最佳閾值T,根據(jù)最佳閾值T可將當前位置的像素點進行成功的閾值分割;所有位置的像素點閾值分割完畢,即可劃分出所有投影圖案的清晰的黑、白條紋。
2.根據(jù)權(quán)利要求1所述的三維掃描系統(tǒng)中基于單像素的閾值分割方法,其特征在于確定最佳閾值T采用逐步逼近和迭代的方法,對于某一位置的像素點根據(jù)一系列投影圖像中同一位置的像素的灰度值可找到一個最佳閾值,設(shè)為T,首先根據(jù)某種規(guī)則得到圖像的一個閾值t,然后不斷的修正t直到它無限趨近于T;該方法主要包括以下步驟1)遍歷一系列投影圖案,找出(x,y)位置像素點的最大灰度值和最小灰度值,記為G(x,y)max和G(x,y)min,令初始閾值t=(G(x,y)max+G(x,y)min)/2,2)根據(jù)閾值t將(x,y)位置的像素區(qū)分為黑條紋投影和白條紋投影,分別求出不同投影光下的平均灰度值ZB和ZW,3)求出(x,y)位置像素新閾值t0=(ZB+ZW)/2,4)若t0=t或者迭代此數(shù)大于200次時,則結(jié)束;否則把t0的值賦給t,轉(zhuǎn)到步驟2),循環(huán)迭代計算;此時的t即認為是劃分(x,y)位置像素點在一系列投影圖案中是黑或白條紋的最佳閾值T,根據(jù)此最佳閾值即可將一系列投影圖案當前位置的像素進行分割為黑或白色,5)遍歷對投影圖案上每一位置的像素進行遍歷,依次應(yīng)用上述方法進行一系列投影圖案當前位置像素的閾值分割,遍歷完畢即將所有圖案所有位置的像素點分割完畢,得到了黑白條紋劃分清晰的分割圖。
全文摘要
三維掃描系統(tǒng)中基于單像素的閾值分割方法是一種逆向工程中,用三維掃描系統(tǒng)根據(jù)空間二進制編碼實現(xiàn)的一種基于單像素的閾值分割方法。該方法主要包含以下步驟1.)設(shè)計一組采用逐步二分的光柵投影圖案第n幅粗光柵圖片對第n-1幅粗光柵圖片中的條紋進行等分,得到文檔編號G06T5/00GK1928920SQ20061004155
公開日2007年3月14日 申請日期2006年9月15日 優(yōu)先權(quán)日2006年9月15日
發(fā)明者達飛鵬, 李紅巖 申請人:東南大學(xué)