本發(fā)明屬于3d掃描技術(shù)領(lǐng)域,尤其涉及一種3d掃描中自適應(yīng)變焦的方法、裝置、移動(dòng)終端及存儲(chǔ)介質(zhì)。
背景技術(shù):
傳統(tǒng)的3d掃描儀一般采用定焦攝像頭進(jìn)行圖像采集,而工業(yè)攝像頭的分辨率相對(duì)于現(xiàn)有手機(jī)像素不是太高,而數(shù)據(jù)處理的主機(jī)都是性能較高的pc電腦,所以一般直接采用原始分辨率的圖像進(jìn)行處理。相比之下,基于手機(jī)等移動(dòng)終端的3d掃描系統(tǒng)其運(yùn)算能力相對(duì)較弱,需要采用較小的分辨率圖像,而為了實(shí)時(shí)采集圖像,3d掃描系統(tǒng)的移動(dòng)終端都使用預(yù)覽圖像作為輸入圖像,而預(yù)覽圖像是攝像頭原始圖像進(jìn)行了降采樣的圖像。
現(xiàn)有基于移動(dòng)終端的3d掃描系統(tǒng)中,都是采用恒定焦距獲取預(yù)覽圖像,若待掃描物體較小或者待掃描物體不規(guī)則時(shí),則預(yù)覽圖像中待掃描物體因?yàn)檎急忍《直媛侍?,最終得到的3d的模型精度差。
技術(shù)實(shí)現(xiàn)要素:
本發(fā)明實(shí)施例提供了一種3d掃描中自適應(yīng)變焦的方法、裝置、移動(dòng)終端及存儲(chǔ)介質(zhì),旨在解決現(xiàn)有基于移動(dòng)終端的3d掃描系統(tǒng)中,都是采用恒定焦距獲取預(yù)覽圖像,若待掃描物體較小或者待掃描物體不規(guī)則時(shí),則預(yù)覽圖像中待掃描物體因?yàn)檎急忍《直媛侍停罱K得到的3d的模型精度差的問(wèn)題。
第一方面,本發(fā)明實(shí)施例提供了一種3d掃描中自適應(yīng)變焦的方法,適用于3d掃描系統(tǒng)中完成3d掃描的移動(dòng)終端,所述移動(dòng)終端配置有攝像頭,所述方法包括:
接收掃描指令,啟動(dòng)攝像頭對(duì)掃描物體進(jìn)行圖像預(yù)覽;
獲取掃描物體的當(dāng)前預(yù)覽圖像;
根據(jù)上一幀的預(yù)覽圖像和當(dāng)前預(yù)覽圖像,通過(guò)動(dòng)態(tài)輪廓檢測(cè)獲取當(dāng)前掃描物體的外接矩形框,計(jì)算所述外接矩形框在當(dāng)前預(yù)覽圖像中的當(dāng)前占比;
根據(jù)所述當(dāng)前占比,調(diào)整攝像頭對(duì)外接矩形框內(nèi)掃描物體的數(shù)字變焦倍率。
進(jìn)一步地,所述根據(jù)上一幀的預(yù)覽圖像和當(dāng)前預(yù)覽圖像,通過(guò)動(dòng)態(tài)輪廓檢測(cè)獲取當(dāng)前掃描物體的外接矩形框,計(jì)算所述外接矩形框在當(dāng)前預(yù)覽圖像中的當(dāng)前占比具體:
將當(dāng)前預(yù)覽圖像歸一化到攝像頭的最大視場(chǎng)角畫面中;
將歸一化后的當(dāng)前預(yù)覽圖像與上一幀的預(yù)覽圖像進(jìn)行差分,獲得掃描物體的外輪廓;
根據(jù)所述掃描物體的外輪廓,獲取掃描物體的外接矩形框;
計(jì)算所述外接矩形框和當(dāng)前預(yù)覽視圖的水平方向的占比及垂直方向的占比,將所述水平方向的占比及垂直方向的占比中最大者作為當(dāng)前占比。
進(jìn)一步地,所述根據(jù)所述當(dāng)前占比,調(diào)整攝像頭對(duì)外接矩形框內(nèi)掃描物體的數(shù)字變焦倍率具體:
判斷所述當(dāng)前占比與預(yù)設(shè)占比最大閾值和預(yù)設(shè)占比最小閾值的大小關(guān)系;
如果所述當(dāng)前占比大于預(yù)設(shè)占比最大閾值,則縮小當(dāng)前預(yù)覽圖像對(duì)應(yīng)的數(shù)字變焦倍率;
如果所述當(dāng)前占比小于等于預(yù)設(shè)占比最大閾值,且大于等于預(yù)設(shè)占比最小閾值,則保持當(dāng)前預(yù)覽圖像對(duì)應(yīng)的數(shù)字變焦倍率;
如果所述當(dāng)前占比小于預(yù)設(shè)占比最小閾值,則增大當(dāng)前預(yù)覽圖像對(duì)應(yīng)的數(shù)字變焦倍率。
進(jìn)一步地,所述3d掃描系統(tǒng)還包括激光,所述根據(jù)所述當(dāng)前占比,調(diào)整攝像頭對(duì)外接矩形框內(nèi)掃描物體的數(shù)字變焦倍率之后,所述方法還包括:
獲取激光在掃描物體上投射的激光條區(qū)域,提取激光條區(qū)域的中心線上若干個(gè)2d坐標(biāo);
將所述若干個(gè)2d坐標(biāo)轉(zhuǎn)換為攝像頭坐標(biāo)系下的若干個(gè)3d坐標(biāo)并存儲(chǔ)為3d點(diǎn)云;
存儲(chǔ)外接矩形框內(nèi)的圖像,將當(dāng)前預(yù)覽圖像作為上一幀預(yù)覽圖像,待掃描物體旋轉(zhuǎn)之后,獲取下一幀預(yù)覽圖像作為當(dāng)前預(yù)覽圖像;
待完成360度掃描之后,將所述3d點(diǎn)云進(jìn)行三角化,生成掃描物體的3d模型。
進(jìn)一步地,所述獲取激光在掃描物體上投射的激光條區(qū)域,提取激光條區(qū)域的中心線上若干個(gè)2d坐標(biāo)之后,所述方法還包括:
將獲取得若干個(gè)2d坐標(biāo)映射到最大視場(chǎng)角下對(duì)應(yīng)的2d坐標(biāo)。
第二方面,本發(fā)明實(shí)施例提供了一種3d掃描中自適應(yīng)變焦的裝置,適用于3d掃描系統(tǒng)中完成3d掃描的移動(dòng)終端,所述移動(dòng)終端配置有攝像頭,所述裝置包括:
掃描啟動(dòng)單元,用于接收掃描指令,啟動(dòng)攝像頭對(duì)掃描物體進(jìn)行圖像預(yù)覽;
圖像獲取單元,用于獲取掃描物體的當(dāng)前預(yù)覽圖像;
占比獲取單元,用于根據(jù)上一幀的預(yù)覽圖像和當(dāng)前預(yù)覽圖像,通過(guò)動(dòng)態(tài)輪廓檢測(cè)獲取當(dāng)前掃描物體的外接矩形框,計(jì)算所述外接矩形框在當(dāng)前預(yù)覽圖像中的當(dāng)前占比;
數(shù)字變焦單元,用于根據(jù)所述當(dāng)前占比,調(diào)整攝像頭對(duì)外接矩形框內(nèi)掃描物體的數(shù)字變焦倍率。
進(jìn)一步地,所述占比獲取單元具體:
圖像歸一模塊,用于將當(dāng)前預(yù)覽圖像歸一化到攝像頭的最大視場(chǎng)角畫面中;
輪廓獲取模塊,用于將歸一化后的當(dāng)前預(yù)覽圖像與上一幀的預(yù)覽圖像進(jìn)行差分,獲得掃描物體的外輪廓;
外接獲取模塊,用于根據(jù)所述掃描物體的外輪廓,獲取掃描物體的外接矩形框;
占比計(jì)算模塊,用于計(jì)算所述外接矩形框和當(dāng)前預(yù)覽視圖的水平方向的占比及垂直方向的占比,將所述水平方向的占比及垂直方向的占比中最大者作為當(dāng)前占比。
進(jìn)一步地,所述數(shù)字變焦單元具體:
占比判斷模塊,用于判斷所述當(dāng)前占比與預(yù)設(shè)占比最大閾值和預(yù)設(shè)占比最小閾值的大?。?/p>
倍率調(diào)整第一模塊,用于如果所述當(dāng)前占比大于預(yù)設(shè)占比最大閾值,則縮小當(dāng)前預(yù)覽圖像對(duì)應(yīng)的數(shù)字變焦倍率;
倍率調(diào)整第二模塊,用于如果所述當(dāng)前占比小于等于預(yù)設(shè)占比最大閾值,且大于等于預(yù)設(shè)占比最小閾值,則保持當(dāng)前預(yù)覽圖像對(duì)應(yīng)的數(shù)字變焦倍率;
倍率調(diào)整第三模塊,用于如果所述當(dāng)前占比小于預(yù)設(shè)占比最小閾值,則增大當(dāng)前預(yù)覽圖像對(duì)應(yīng)的數(shù)字變焦倍率。
進(jìn)一步地,所述3d掃描系統(tǒng)還包括激光,所述裝置還包括:
坐標(biāo)獲取單元,用于獲取激光在掃描物體上投射的激光條區(qū)域,提取激光條區(qū)域的中心線上若干個(gè)2d坐標(biāo);
坐標(biāo)轉(zhuǎn)化單元,用于將所述若干個(gè)2d坐標(biāo)轉(zhuǎn)換為攝像頭坐標(biāo)系下的若干個(gè)3d坐標(biāo)并存儲(chǔ)為3d點(diǎn)云;
圖像存儲(chǔ)單元,用于存儲(chǔ)外接矩形框內(nèi)的圖像,將當(dāng)前預(yù)覽圖像作為上一幀預(yù)覽圖像,待掃描物體旋轉(zhuǎn)之后,獲取下一幀預(yù)覽圖像作為當(dāng)前預(yù)覽圖像;
模型生成單元,用于待完成360度掃描之后,將所述3d點(diǎn)云進(jìn)行三角化,生成掃描物體的3d模型。
進(jìn)一步地,所述裝置還包括:
坐標(biāo)映射單元,用于將獲取得若干個(gè)2d坐標(biāo)映射到最大視場(chǎng)角下對(duì)應(yīng)的2d坐標(biāo)。
第三方面,本發(fā)明實(shí)施例提供了一種移動(dòng)終端,所述移動(dòng)終端包括至少一處理器、存儲(chǔ)器及接口,所述至少一處理器、存儲(chǔ)器及接口均通過(guò)總線連接;
所述存儲(chǔ)器存儲(chǔ)計(jì)算機(jī)程序;
所述至少一個(gè)處理器執(zhí)行所述存儲(chǔ)器存儲(chǔ)的計(jì)算機(jī)程序,使得所述移動(dòng)終端執(zhí)行上述的3d掃描中自適應(yīng)變焦的方法。
第四方面,本發(fā)明實(shí)施例提供了一種存儲(chǔ)介質(zhì),所述存儲(chǔ)介質(zhì)上存儲(chǔ)有計(jì)算機(jī)程序,所述計(jì)算機(jī)程序被處理器執(zhí)行時(shí)實(shí)現(xiàn)上述的3d掃描中自適應(yīng)變焦的方法的步驟。
本發(fā)明實(shí)施例,在掃描過(guò)程中,掃描物體過(guò)小或表面不規(guī)則時(shí),對(duì)其預(yù)覽圖像進(jìn)行數(shù)字變焦,按圖像比例截取預(yù)覽圖像的中心掃描物體的圖像,進(jìn)而改變視場(chǎng)角,從視覺(jué)效果上增大了預(yù)覽圖像中掃描物體的目的,同時(shí),采用外接矩形框方法去除了掃描物體輪廓外的冗余圖像,減少了圖像的存儲(chǔ)壓力和提高了圖像預(yù)覽幀率,最終3d模型的精度提升,也保證了掃描模型的完整性。
附圖說(shuō)明
圖1是本發(fā)明實(shí)施例一提供的3d掃描中自適應(yīng)變焦的方法的實(shí)現(xiàn)流程圖;
圖2是本發(fā)明實(shí)施例二提供的3d掃描中自適應(yīng)變焦的方法的實(shí)現(xiàn)流程圖;
圖3是本發(fā)明實(shí)施例三提供的3d掃描中自適應(yīng)變焦的裝置的結(jié)構(gòu)示意圖;
圖4是本發(fā)明實(shí)施例四提供的3d掃描中自適應(yīng)變焦的裝置的結(jié)構(gòu)示意圖;
圖5是本發(fā)明實(shí)施例五提供的移動(dòng)終端的結(jié)構(gòu)示意圖。
具體實(shí)施方式
為了使本發(fā)明的目的、技術(shù)方案及優(yōu)點(diǎn)更加清楚明白,以下結(jié)合附圖及實(shí)施例,對(duì)本發(fā)明進(jìn)行進(jìn)一步詳細(xì)說(shuō)明。應(yīng)當(dāng)理解,此處所描述的具體實(shí)施例僅僅用以解釋本發(fā)明,并不用于限定本發(fā)明。
以下結(jié)合具體實(shí)施例對(duì)本發(fā)明的實(shí)現(xiàn)進(jìn)行詳細(xì)描述:
實(shí)施例一
圖1示出了本發(fā)明實(shí)施例一提供的3d掃描中自適應(yīng)變焦的方法的實(shí)現(xiàn)流程,詳述如下:
需要說(shuō)明的是,本實(shí)施例及以下實(shí)施例均適用于3d掃描系統(tǒng)中完成3d掃描的移動(dòng)終端,所述移動(dòng)終端配置有攝像頭,包括手機(jī)、ipad、平板,所述攝像頭為普通的前置或者后置的單個(gè)普通攝像頭,或者為雙攝像中的一個(gè)。
在步驟s101中,接收掃描指令,啟動(dòng)攝像頭對(duì)掃描物體進(jìn)行圖像預(yù)覽。
本實(shí)施例,所述掃描指令為用戶通過(guò)移動(dòng)終端的觸摸屏或者按鍵觸發(fā)的啟動(dòng)掃描的指令。
在步驟s102中,獲取掃描物體的當(dāng)前預(yù)覽圖像。
本實(shí)施例,所述當(dāng)前預(yù)覽圖像是對(duì)攝像頭當(dāng)前原始圖像進(jìn)行了降采樣的圖像。
在步驟s103中,根據(jù)上一幀的預(yù)覽圖像和當(dāng)前預(yù)覽圖像,通過(guò)動(dòng)態(tài)輪廓檢測(cè)獲取當(dāng)前掃描物體的外接矩形框,計(jì)算所述外接矩形框在當(dāng)前預(yù)覽圖像中的當(dāng)前占比。
本實(shí)施例,所述外接矩形框?yàn)榕c掃描物體的外輪廓臨接的最小矩形,其外接矩形框的大小與設(shè)定感興趣區(qū)域(regionofinterest,roi)相同。通過(guò)當(dāng)前占比可知掃描物體的大小。本步驟s103具體包括以下子步驟:
子步驟s31,將當(dāng)前預(yù)覽圖像歸一化到攝像頭的最大視場(chǎng)角畫面中;
子步驟s32,將歸一化后的當(dāng)前預(yù)覽圖像與上一幀的預(yù)覽圖像進(jìn)行差分,獲得掃描物體的外輪廓;
子步驟s33,根據(jù)所述掃描物體的外輪廓,獲取掃描物體的外接矩形框;
子步驟s34,計(jì)算所述外接矩形框和當(dāng)前預(yù)覽視圖的水平方向的占比及垂直方向的占比,將所述水平方向的占比及垂直方向的占比中最大者作為當(dāng)前占比。
在步驟s104中,根據(jù)所述當(dāng)前占比,調(diào)整攝像頭對(duì)外接矩形框內(nèi)掃描物體的數(shù)字變焦倍率。
本實(shí)施例,對(duì)其預(yù)覽圖像進(jìn)行數(shù)字變焦,按圖像比例截取預(yù)覽圖像的中心掃描物體的圖像,進(jìn)而改變視場(chǎng)角,從視覺(jué)效果上增大了預(yù)覽圖像中掃描物體的目的,采用外接矩形框方法去除了掃描物體輪廓外的冗余圖像。所述根據(jù)所述當(dāng)前占比,調(diào)整攝像頭對(duì)外接矩形框內(nèi)掃描物體的數(shù)字變焦倍率具體包括:
判斷所述當(dāng)前占比與預(yù)設(shè)占比最大閾值和預(yù)設(shè)占比最小閾值的大小關(guān)系;
其中,預(yù)設(shè)占比最大閾值為預(yù)設(shè)掃描物體的外接矩形框在當(dāng)前預(yù)覽圖像中占比的閾值上限值,預(yù)設(shè)占比最小閾值為預(yù)設(shè)掃描物體的外接矩形框在當(dāng)前預(yù)覽圖像中占比的閾值下限值。通過(guò)判斷出現(xiàn)以下三種情況,根據(jù)具體情況調(diào)整當(dāng)前預(yù)覽圖像對(duì)應(yīng)的數(shù)字變焦倍率:
第一種情況,如果所述當(dāng)前占比大于預(yù)設(shè)占比最大閾值,則縮小當(dāng)前預(yù)覽圖像對(duì)應(yīng)的數(shù)字變焦倍率;
其中,α[i]=α[i-1]–δ,α[i]為當(dāng)前預(yù)覽圖像對(duì)應(yīng)的數(shù)字變焦倍率,α[i-1]為上一幀預(yù)覽圖像對(duì)應(yīng)的數(shù)字變焦倍率,δ數(shù)字變焦倍率調(diào)整值由最大縮放倍率β和縮放因子θ相乘得到,最大縮放倍率β=最大值原始分辨率與預(yù)覽分辨率的比值,如原始圖像寬為4096,預(yù)覽分辨率像素寬為1280,則β=3.2;縮放因子θ取0~1,越小則變焦越慢,但是圖像越精細(xì),越大則變焦越快,但是比較粗糙;若θ取0.1,則δ=3.2*0.1=0.32。
第二種情況,如果所述當(dāng)前占比小于等于預(yù)設(shè)占比最大閾值,且大于等于預(yù)設(shè)占比最小閾值,則保持當(dāng)前預(yù)覽圖像對(duì)應(yīng)的數(shù)字變焦倍率;
第三種情況,如果所述當(dāng)前占比小于預(yù)設(shè)占比最小閾值,則增大當(dāng)前預(yù)覽圖像對(duì)應(yīng)的數(shù)字變焦倍率。
其中,α[i]=α[i-1]+δ,α[i]為當(dāng)前預(yù)覽圖像對(duì)應(yīng)的數(shù)字變焦倍率,α[i-1]為上一幀預(yù)覽圖像對(duì)應(yīng)的數(shù)字變焦倍率,δ數(shù)字變焦倍率調(diào)整值。
本實(shí)施例,在掃描過(guò)程中,掃描物體過(guò)小或表面不規(guī)則(即其輪廓有變化)時(shí),對(duì)其預(yù)覽圖像進(jìn)行數(shù)字變焦,按圖像比例截取預(yù)覽圖像的中心掃描物體的圖像,進(jìn)而改變視場(chǎng)角,從視覺(jué)效果上增大了預(yù)覽圖像中掃描物體的目的,同時(shí),采用外接矩形框方法去除了掃描物體輪廓外的冗余圖像。
實(shí)施例二
圖2示出了本發(fā)明實(shí)施例二提供的3d掃描中自適應(yīng)變焦的方法的實(shí)現(xiàn)流程,詳述如下:
在步驟s201中,接收掃描指令,啟動(dòng)攝像頭對(duì)掃描物體進(jìn)行圖像預(yù)覽。
本實(shí)施例,所述掃描指令為用戶通過(guò)移動(dòng)終端的觸摸屏或者按鍵觸發(fā)的啟動(dòng)掃描的指令。
在步驟s202中,獲取掃描物體的當(dāng)前預(yù)覽圖像。
本實(shí)施例,所述當(dāng)前預(yù)覽圖像是對(duì)攝像頭當(dāng)前原始圖像進(jìn)行了降采樣的圖像。
在步驟s203中,根據(jù)上一幀的預(yù)覽圖像和當(dāng)前預(yù)覽圖像,通過(guò)動(dòng)態(tài)輪廓檢測(cè)獲取當(dāng)前掃描物體的外接矩形框,計(jì)算所述外接矩形框在當(dāng)前預(yù)覽圖像中的當(dāng)前占比。
本實(shí)施例,所述外接矩形框?yàn)榕c掃描物體的外輪廓臨接的最小矩形,其外接矩形框的大小與設(shè)定感興趣區(qū)域(regionofinterest,roi)相同。通過(guò)當(dāng)前占比可知掃描物體的大小。本步驟s103具體包括以下子步驟:
子步驟s31,將當(dāng)前預(yù)覽圖像歸一化到攝像頭的最大視場(chǎng)角畫面中;
子步驟s32,將歸一化后的當(dāng)前預(yù)覽圖像與上一幀的預(yù)覽圖像進(jìn)行差分,獲得掃描物體的外輪廓;
子步驟s33,根據(jù)所述掃描物體的外輪廓,獲取掃描物體的外接矩形框;
子步驟s34,計(jì)算所述外接矩形框和當(dāng)前預(yù)覽視圖的水平方向的占比及垂直方向的占比,將所述水平方向的占比及垂直方向的占比中最大者作為當(dāng)前占比。
在步驟s204中,根據(jù)所述當(dāng)前占比,調(diào)整攝像頭對(duì)外接矩形框內(nèi)掃描物體的數(shù)字變焦倍率。
本實(shí)施例,對(duì)其預(yù)覽圖像進(jìn)行數(shù)字變焦,按圖像比例截取預(yù)覽圖像的中心掃描物體的圖像,進(jìn)而改變視場(chǎng)角,從視覺(jué)效果上增大了預(yù)覽圖像中掃描物體的目的,采用外接矩形框方法去除了掃描物體輪廓外的冗余圖像。所述根據(jù)所述當(dāng)前占比,調(diào)整攝像頭對(duì)外接矩形框內(nèi)掃描物體的數(shù)字變焦倍率具體包括:
判斷所述當(dāng)前占比與預(yù)設(shè)占比最大閾值和預(yù)設(shè)占比最小閾值的大小關(guān)系;
其中,預(yù)設(shè)占比最大閾值為預(yù)設(shè)掃描物體的外接矩形框在當(dāng)前預(yù)覽圖像中占比的閾值上限值,預(yù)設(shè)占比最小閾值為預(yù)設(shè)掃描物體的外接矩形框在當(dāng)前預(yù)覽圖像中占比的閾值下限值。通過(guò)判斷出現(xiàn)以下三種情況,根據(jù)具體情況調(diào)整當(dāng)前預(yù)覽圖像對(duì)應(yīng)的數(shù)字變焦倍率:
第一種情況,如果所述當(dāng)前占比大于預(yù)設(shè)占比最大閾值,則縮小當(dāng)前預(yù)覽圖像對(duì)應(yīng)的數(shù)字變焦倍率;
其中,α[i]=α[i-1]–δ,α[i]為當(dāng)前預(yù)覽圖像對(duì)應(yīng)的數(shù)字變焦倍率,α[i-1]為上一幀預(yù)覽圖像對(duì)應(yīng)的數(shù)字變焦倍率,δ數(shù)字變焦倍率調(diào)整值由最大縮放倍率β和縮放因子θ相乘得到,最大縮放倍率β=最大值原始分辨率與預(yù)覽分辨率的比值,如原始圖像寬為4096,預(yù)覽分辨率像素寬為1280,則β=3.2;縮放因子θ取0~1,越小則變焦越慢,但是越精細(xì),越大則變焦越快,但是比較粗糙;若θ取0.1,則δ=3.2*0.1=0.32。
第二種情況,如果所述當(dāng)前占比小于等于預(yù)設(shè)占比最大閾值,且大于等于預(yù)設(shè)占比最小閾值,則保持當(dāng)前預(yù)覽圖像對(duì)應(yīng)的數(shù)字變焦倍率;
第三種情況,如果所述當(dāng)前占比小于預(yù)設(shè)占比最小閾值,則增大當(dāng)前預(yù)覽圖像對(duì)應(yīng)的數(shù)字變焦倍率。
其中,α[i]=α[i-1]+δ,α[i]為當(dāng)前預(yù)覽圖像對(duì)應(yīng)的數(shù)字變焦倍率,α[i-1]為上一幀預(yù)覽圖像對(duì)應(yīng)的數(shù)字變焦倍率,δ數(shù)字變焦倍率調(diào)整值。
在步驟s205中,獲取激光在掃描物體上投射的激光條區(qū)域,提取激光條區(qū)域的中心線上若干個(gè)2d坐標(biāo)。
本實(shí)施例,3d掃描過(guò)程中,置于轉(zhuǎn)臺(tái)上的掃描物體均勻旋轉(zhuǎn),激光投射在掃描物體上的激光條區(qū)域?yàn)楫?dāng)前掃描處理區(qū)域,所述激光用于為3d掃描提供三角測(cè)量。
優(yōu)選的,在本步驟s205之后,所述方法還包括:
將獲取得若干個(gè)2d坐標(biāo)映射到最大視場(chǎng)角下對(duì)應(yīng)的2d坐標(biāo)。
具體的,獲得外接矩形框內(nèi)圖像中2d坐標(biāo)(px,py);則獲得預(yù)覽圖中的坐標(biāo)(px+roi.x,py+roi.y),其中roi.x表示(roi.x,roi.y)表示roi左上角在預(yù)覽圖像中的坐標(biāo);進(jìn)而獲得攝像頭原始圖像中像素的坐標(biāo)((px+roi.x-cx)/α+cx,(px+roi.x-cy)/α+cy),其中α表示數(shù)碼變焦的放大倍數(shù)。
其中,為了充分利用攝像頭的分辨率并統(tǒng)一不同數(shù)字變焦倍率下獲取的預(yù)覽圖像,將獲取得若干個(gè)2d坐標(biāo)映射到最大視場(chǎng)角下對(duì)應(yīng)的2d坐標(biāo)。
在步驟s206中,將所述若干個(gè)2d坐標(biāo)轉(zhuǎn)換為攝像頭坐標(biāo)系下的若干個(gè)3d坐標(biāo)并存儲(chǔ)為3d點(diǎn)云。
本實(shí)施例,為了便于掃描完成3d建模,將所述若干個(gè)2d坐標(biāo)轉(zhuǎn)換為攝像頭坐標(biāo)系下的若干個(gè)3d坐標(biāo)并存儲(chǔ)為3d點(diǎn)云,由于采用外接矩形框方法去除了掃描物體輪廓外的冗余圖像,減少了圖像的存儲(chǔ)壓力和提高了圖像預(yù)覽幀率提高了掃描物體的分辨率。
在步驟s207中,存儲(chǔ)外接矩形框內(nèi)的圖像,將當(dāng)前預(yù)覽圖像作為上一幀預(yù)覽圖像,待掃描物體旋轉(zhuǎn)之后,獲取下一幀預(yù)覽圖像作為當(dāng)前預(yù)覽圖像。
本實(shí)施例,處理完當(dāng)前預(yù)覽圖像之后,存儲(chǔ)外接矩形框內(nèi)的圖像,將當(dāng)前預(yù)覽圖像作為上一幀預(yù)覽圖像,旋轉(zhuǎn)獲取掃描物體的下一幀預(yù)覽圖像作為當(dāng)前預(yù)覽圖像,繼續(xù)執(zhí)行步驟s202。
在步驟s208中,待完成360度掃描之后,將所述3d點(diǎn)云進(jìn)行三角化,生成掃描物體的3d模型。
本實(shí)施例,經(jīng)過(guò)多次迭代處理之后,轉(zhuǎn)臺(tái)完成360度掃描,移動(dòng)終端將所述3d點(diǎn)云進(jìn)行三角化,生成掃描物體的3d模型。
本發(fā)明實(shí)施例,在掃描過(guò)程中,掃描物體過(guò)小或表面不規(guī)則(即其輪廓有變化)時(shí),對(duì)其預(yù)覽圖像進(jìn)行數(shù)字變焦,按圖像比例截取預(yù)覽圖像的中心掃描物體的圖像,進(jìn)而改變視場(chǎng)角,從視覺(jué)效果上增大了預(yù)覽圖像中掃描物體的目的,同時(shí),采用外接矩形框方法去除了掃描物體輪廓外的冗余圖像,減少了圖像的存儲(chǔ)壓力和提高了圖像預(yù)覽幀率,最終3d模型的精度提升,也保證了掃描模型的完整性。
實(shí)施例三
圖3示出了本發(fā)明實(shí)施例三提供的自適應(yīng)變焦的裝置的具體結(jié)構(gòu)框圖,適用于3d掃描系統(tǒng)中完成3d掃描的移動(dòng)終端,所述移動(dòng)終端配置有攝像頭,為了便于說(shuō)明,僅示出了與本發(fā)明實(shí)施例相關(guān)的部分。在本實(shí)施例中,該可自適應(yīng)變焦的裝置包括:掃描啟動(dòng)單元31、圖像獲取單元32、占比獲取單元33和數(shù)字變焦單元34。
其中,掃描啟動(dòng)單元31,與圖像獲取單元32連接,用于接收掃描指令,啟動(dòng)攝像頭對(duì)掃描物體進(jìn)行圖像預(yù)覽;
圖像獲取單元32,與掃描啟動(dòng)單元31、占比獲取單元33連接,用于獲取掃描物體的當(dāng)前預(yù)覽圖像;
占比獲取單元33,與圖像獲取單元32、數(shù)字變焦單元34連接,用于通過(guò)動(dòng)態(tài)輪廓檢測(cè)獲取當(dāng)前掃描物體的外接矩形框,計(jì)算所述外接矩形框在當(dāng)前預(yù)覽圖像中的當(dāng)前占比;
數(shù)字變焦單元34,與占比獲取單元33連接,用于根據(jù)所述當(dāng)前占比,調(diào)整攝像頭對(duì)外接矩形框內(nèi)掃描物體的數(shù)字變焦倍率。
優(yōu)選的,所述占比獲取單元33具體:
圖像歸一模塊,用于將當(dāng)前預(yù)覽圖像歸一化到攝像頭的最大視場(chǎng)角畫面中;
輪廓獲取模塊,用于將歸一化后的當(dāng)前預(yù)覽圖像與上一幀的預(yù)覽圖像進(jìn)行差分,獲得掃描物體的外輪廓;
外接獲取模塊,用于根據(jù)所述掃描物體的外輪廓,獲取掃描物體的外接矩形框;
占比計(jì)算模塊,用于計(jì)算所述外接矩形框和當(dāng)前預(yù)覽視圖的水平方向的占比及垂直方向的占比,將所述水平方向的占比及垂直方向的占比中最大者作為當(dāng)前占比。
優(yōu)選的,所述數(shù)字變焦單元34具體:
占比判斷模塊,用于判斷所述當(dāng)前占比與預(yù)設(shè)占比最大閾值和預(yù)設(shè)占比最小閾值的大小;
倍率調(diào)整第一模塊,用于如果所述當(dāng)前占比大于預(yù)設(shè)占比最大閾值,則縮小當(dāng)前預(yù)覽圖像對(duì)應(yīng)的數(shù)字變焦倍率;
倍率調(diào)整第二模塊,用于如果所述當(dāng)前占比小于等于預(yù)設(shè)占比最大閾值,且大于等于預(yù)設(shè)占比最小閾值,則保持當(dāng)前預(yù)覽圖像對(duì)應(yīng)的數(shù)字變焦倍率;
倍率調(diào)整第三模塊,用于如果所述當(dāng)前占比小于預(yù)設(shè)占比最小閾值,則增大當(dāng)前預(yù)覽圖像對(duì)應(yīng)的數(shù)字變焦倍率。
本發(fā)明實(shí)施例提供的自適應(yīng)變焦的裝置可以應(yīng)用在前述對(duì)應(yīng)方法實(shí)施例一中,詳情參見(jiàn)上述實(shí)施例一的描述,在此不再贅述。
實(shí)施例四
圖4示出了本發(fā)明實(shí)施例四提供的自適應(yīng)變焦的裝置的具體結(jié)構(gòu)框圖,適用于3d掃描系統(tǒng)中完成3d掃描的移動(dòng)終端,所述移動(dòng)終端配置有攝像頭,為了便于說(shuō)明,僅示出了與本發(fā)明實(shí)施例相關(guān)的部分。在本實(shí)施例中,該可自適應(yīng)變焦的裝置包括:掃描啟動(dòng)單元41、圖像獲取單元42、占比獲取單元43、數(shù)字變焦單元44、坐標(biāo)獲取單元45、坐標(biāo)轉(zhuǎn)化單元46、圖像存儲(chǔ)單元47、模型生成單元48和坐標(biāo)映射單元49。
其中,掃描啟動(dòng)單元41,與圖像獲取單元42連接,用于接收掃描指令,啟動(dòng)攝像頭對(duì)掃描物體進(jìn)行圖像預(yù)覽;
圖像獲取單元42,與掃描啟動(dòng)單元41、占比獲取單元43連接,用于獲取掃描物體的當(dāng)前預(yù)覽圖像;
占比獲取單元43,與圖像獲取單元42、數(shù)字變焦單元44連接,用于通過(guò)動(dòng)態(tài)輪廓檢測(cè)獲取當(dāng)前掃描物體的外接矩形框,計(jì)算所述外接矩形框在當(dāng)前預(yù)覽圖像中的當(dāng)前占比;
數(shù)字變焦單元44,與占比獲取單元43連接,用于根據(jù)所述當(dāng)前占比,調(diào)整攝像頭對(duì)外接矩形框內(nèi)掃描物體的數(shù)字變焦倍率。
優(yōu)選的,所述占比獲取單元43具體:
圖像歸一模塊,用于將當(dāng)前預(yù)覽圖像歸一化到攝像頭的最大視場(chǎng)角畫面中;
輪廓獲取模塊,用于將歸一化后的當(dāng)前預(yù)覽圖像與上一幀的預(yù)覽圖像進(jìn)行差分,獲得掃描物體的外輪廓;
外接獲取模塊,用于根據(jù)所述掃描物體的外輪廓,獲取掃描物體的外接矩形框;
占比計(jì)算模塊,用于計(jì)算所述外接矩形框和當(dāng)前預(yù)覽視圖的水平方向的占比及垂直方向的占比,將所述水平方向的占比及垂直方向的占比中最大者作為當(dāng)前占比。
優(yōu)選的,所述數(shù)字變焦單元44具體:
占比判斷模塊,用于判斷所述當(dāng)前占比與預(yù)設(shè)占比最大閾值和預(yù)設(shè)占比最小閾值的大小;
倍率調(diào)整第一模塊,用于如果所述當(dāng)前占比大于預(yù)設(shè)占比最大閾值,則縮小當(dāng)前預(yù)覽圖像對(duì)應(yīng)的數(shù)字變焦倍率;
倍率調(diào)整第二模塊,用于如果所述當(dāng)前占比小于等于預(yù)設(shè)占比最大閾值,且大于等于預(yù)設(shè)占比最小閾值,則保持當(dāng)前預(yù)覽圖像對(duì)應(yīng)的數(shù)字變焦倍率;
倍率調(diào)整第三模塊,用于如果所述當(dāng)前占比小于預(yù)設(shè)占比最小閾值,則增大當(dāng)前預(yù)覽圖像對(duì)應(yīng)的數(shù)字變焦倍率。
優(yōu)選的,所述裝置還包括:
坐標(biāo)獲取單元45,用于獲取激光在掃描物體上投射的激光條區(qū)域,提取激光條區(qū)域的中心線上若干個(gè)2d坐標(biāo);
坐標(biāo)轉(zhuǎn)化單元46,用于將所述若干個(gè)2d坐標(biāo)轉(zhuǎn)換為攝像頭坐標(biāo)系下的若干個(gè)3d坐標(biāo)并存儲(chǔ)為3d點(diǎn)云;
圖像存儲(chǔ)單元47,用于存儲(chǔ)外接矩形框內(nèi)的圖像,將當(dāng)前預(yù)覽圖像作為上一幀預(yù)覽圖像,待掃描物體旋轉(zhuǎn)之后,獲取下一幀預(yù)覽圖像作為當(dāng)前預(yù)覽圖像;
模型生成單元48,用于待完成360度掃描之后,將所述3d點(diǎn)云進(jìn)行三角化,生成掃描物體的3d模型。
優(yōu)選的,所述裝置還包括:
坐標(biāo)映射單元,與坐標(biāo)獲取單元45、坐標(biāo)轉(zhuǎn)化單元46連接,用于將獲取得若干個(gè)2d坐標(biāo)映射到最大視場(chǎng)角下對(duì)應(yīng)的2d坐標(biāo)。
本發(fā)明實(shí)施例提供的自適應(yīng)變焦的裝置可以應(yīng)用在前述對(duì)應(yīng)方法實(shí)施例二中,詳情參見(jiàn)上述實(shí)施例二的描述,在此不再贅述。
實(shí)施例五
圖5本發(fā)明實(shí)施例五提供的移動(dòng)終端的具體結(jié)構(gòu)框圖,為了便于說(shuō)明,僅示出了與本發(fā)明實(shí)施例相關(guān)的部分。在本實(shí)施例中,所述移動(dòng)終端包括至少一處理器51、存儲(chǔ)器52及接口53,所述至少一處理器51、存儲(chǔ)器52及接口53均通過(guò)總線連接;
所述存儲(chǔ)器52存儲(chǔ)計(jì)算機(jī)程序;
所述至少一個(gè)處理器51執(zhí)行所述存儲(chǔ)器52存儲(chǔ)的計(jì)算機(jī)程序,使得所述移動(dòng)終端執(zhí)行上述實(shí)施例一或二所述的3d掃描中自適應(yīng)變焦的方法。
其中,本發(fā)明還公開(kāi)了一種存儲(chǔ)介質(zhì),所述存儲(chǔ)介質(zhì)上存儲(chǔ)有計(jì)算機(jī)程序,所述計(jì)算機(jī)程序被處理器執(zhí)行時(shí)實(shí)現(xiàn)實(shí)施例一或二所述的3d掃描中自適應(yīng)變焦的方法的步驟。
值得注意的是,本領(lǐng)域普通技術(shù)人員可以理解:實(shí)現(xiàn)上述方法實(shí)施例的步驟或部分步驟可以通過(guò)程序指令相關(guān)的硬件來(lái)完成,前述的程序可以存儲(chǔ)于計(jì)算機(jī)可讀取存儲(chǔ)介質(zhì)中,該程序在執(zhí)行時(shí),執(zhí)行包括上述方法實(shí)施例的步驟,而前述的存儲(chǔ)介質(zhì)包括:rom、ram、磁碟或者光盤等各種可以存儲(chǔ)程序代碼的介質(zhì)。
以上所述僅為本發(fā)明的較佳實(shí)施例而已,并不用以限制本發(fā)明,凡在本發(fā)明的精神和原則之內(nèi)所作的任何修改、等同替換和改進(jìn)等,均應(yīng)包含在本發(fā)明的保護(hù)范圍之內(nèi)。