本發(fā)明屬于3D拍照技術(shù)領(lǐng)域,涉及一種拍照方法,尤其涉及一種手機(jī)3D立體拍照方法。
背景技術(shù):
隨著3D數(shù)字技術(shù)的發(fā)展,越來(lái)越多的具有3D顯示功能的手機(jī)開(kāi)始在市場(chǎng)上出現(xiàn),例如16年新出的中興天機(jī)7MAX、SuperD D1都支持裸眼3D顯示;同時(shí)越來(lái)越多的VR眼鏡也可以結(jié)合普通手機(jī)實(shí)現(xiàn)3D內(nèi)容的3D立體顯示,因此3D照片/圖片將會(huì)被越來(lái)越廣泛需要。如何采用現(xiàn)有的普通手機(jī)(單個(gè)后置攝像頭)拍攝3D立體照片,將變得越來(lái)越重要。
3D立體拍照的基本原理主要是模仿雙目觀看,從左右兩個(gè)具有輕微角度差異的視點(diǎn)拍攝同一場(chǎng)景?,F(xiàn)有的一些3D拍照手機(jī)方案(中興天機(jī)7MAX)在硬件上采用2個(gè)后置攝像頭來(lái)實(shí)現(xiàn)3D拍照,這種系統(tǒng)成本較高、結(jié)構(gòu)比較復(fù)雜,并未普及開(kāi)。
另外一種解決方案是針對(duì)拍攝3D靜態(tài)場(chǎng)景,將兩個(gè)不同時(shí)間點(diǎn)、在左右兩個(gè)視點(diǎn)拍攝的兩張照片進(jìn)行圖像處理,校正合成為一個(gè)3D立體照片。這種方案對(duì)拍攝過(guò)程中手機(jī)攝像頭的視角/姿態(tài)有很多前提假設(shè),同時(shí)對(duì)處理算法有很高的設(shè)計(jì)要求,拍照效果很難盡如人意。
技術(shù)實(shí)現(xiàn)要素:
本發(fā)明所要解決的技術(shù)問(wèn)題是:提供一種手機(jī)3D立體拍照方法,可利用了現(xiàn)有手機(jī)的3D顯示功能(3D顯示功能包括裸眼3D顯示和利用VR眼鏡的3D顯示),將之前時(shí)刻拍攝的一個(gè)視圖與當(dāng)前視點(diǎn)的實(shí)時(shí)視圖處理后進(jìn)行3D立體顯示,讓用戶直接看到最終的3D立體效果,從而實(shí)現(xiàn)“實(shí)顯實(shí)拍”的用戶體驗(yàn)拍攝最佳3D效果照片。
為解決上述技術(shù)問(wèn)題,本發(fā)明采用如下技術(shù)方案:
一種手機(jī)3D立體拍照方法,所述拍照方法包括:
步驟S1、拍照步驟;拍照過(guò)程完成后,將得到時(shí)刻t0點(diǎn)的預(yù)覽圖P0、原圖Img0、在感興趣區(qū)域R中由關(guān)鍵點(diǎn)提取模塊獲得的關(guān)鍵點(diǎn)K,以及t0時(shí)刻點(diǎn)手機(jī)的姿態(tài)信息;
步驟S2、將當(dāng)前視點(diǎn)與時(shí)刻t0時(shí)的視點(diǎn)的兩個(gè)視圖,根據(jù)視差估計(jì)模塊輸出的當(dāng)前視差信息,實(shí)時(shí)3D渲染并在屏幕上顯示;用戶根據(jù)屏幕上顯示的實(shí)時(shí)立體影像效果以及OSD提示信息,調(diào)整相機(jī)最佳姿態(tài)和位置,獲得最佳的3D效果照片。
作為本發(fā)明的一種優(yōu)選方案,步驟S1中,具體包括:
首先手機(jī)3D立體拍攝應(yīng)用打開(kāi)后置攝像頭,獲取預(yù)覽圖像數(shù)據(jù)并在手機(jī)屏幕上進(jìn)行2D實(shí)時(shí)預(yù)覽顯示;
選擇區(qū)域?qū)?;默認(rèn)對(duì)焦區(qū)域?yàn)轭A(yù)覽圖像的中心區(qū)域,用戶也可以通過(guò)主動(dòng)點(diǎn)擊手機(jī)屏幕來(lái)選擇對(duì)焦物體或區(qū)域;將該對(duì)焦區(qū)域作為用戶感興趣區(qū)R;
時(shí)刻t0用戶點(diǎn)擊拍照按鈕,圖像數(shù)據(jù)存儲(chǔ)模塊存儲(chǔ)該時(shí)刻的預(yù)覽圖P0和原圖Img0,姿態(tài)檢測(cè)模塊獲得該時(shí)刻的手機(jī)姿態(tài);姿態(tài)檢測(cè)模塊利用智能手機(jī)上標(biāo)配的方向傳感器數(shù)據(jù);
關(guān)鍵點(diǎn)檢測(cè)模塊對(duì)預(yù)覽圖P0在區(qū)域R中進(jìn)行關(guān)鍵點(diǎn)檢測(cè);該關(guān)鍵點(diǎn)K將作為最終3D立體照片中的雙目注視點(diǎn),即對(duì)應(yīng)的左右視差為0。
作為本發(fā)明的一種優(yōu)選方案,步驟S2中,具體包括:
步驟S21、視差估計(jì)模塊獲取當(dāng)前預(yù)覽圖像Pn,計(jì)算第一階段獲得的P0與當(dāng)前圖Pn的視差;作為方案的優(yōu)選實(shí)現(xiàn),還可以利用位移估計(jì)模塊,獲得手機(jī)鏡頭位移的先驗(yàn)信息來(lái)作為視差估計(jì)模塊的先驗(yàn)輸入,從而加速視差估計(jì)過(guò)程;位移估計(jì)模塊基于智能手機(jī)標(biāo)配的加速度傳感器獲取的加速度信息進(jìn)行數(shù)據(jù)處理來(lái)實(shí)現(xiàn);
步驟S22、利用視差估計(jì)模塊輸出的視差信息,將當(dāng)前圖Pn與P0進(jìn)行3D渲染,然后在手機(jī)屏幕上進(jìn)行3D顯示。作為方案的優(yōu)選實(shí)現(xiàn),還可以利用姿態(tài)檢測(cè)模塊,獲得手機(jī)當(dāng)前姿態(tài)和t0時(shí)刻差異,利用OSD引導(dǎo)客戶調(diào)整手機(jī)的最佳姿態(tài)和位置;
步驟S23、上述兩步循環(huán)反復(fù),直至?xí)r刻t1用戶確定了最佳的姿態(tài)和位置進(jìn)行拍照;
步驟S24、時(shí)刻t1用戶拍照后,圖像數(shù)據(jù)存儲(chǔ)模塊保存t1時(shí)刻的預(yù)覽圖P1和原圖Img1,姿態(tài)檢測(cè)模塊獲得當(dāng)前手機(jī)姿態(tài);
步驟S25、根據(jù)P1和P0的視差估計(jì)結(jié)果,作為高分辨率原圖對(duì)Img0和Img1的初始信息,對(duì)Img0和Img1進(jìn)行視差估計(jì),最終生成高分辨率的左右3D格式的3D照片。
作為本發(fā)明的一種優(yōu)選方案,第二階段完成后,基于時(shí)刻t0、t1的原圖Img0和Img1的左右3D照片生成完畢,方案又切回到第一階段開(kāi)始下一次3D拍照過(guò)程。
作為本發(fā)明的一種優(yōu)選方案,步驟S25中,利用姿態(tài)檢測(cè)模塊記錄的時(shí)刻t0和時(shí)刻t1的兩個(gè)手機(jī)姿態(tài)信息,來(lái)消除姿態(tài)旋轉(zhuǎn)對(duì)3D照片效果的影響。
作為本發(fā)明的一種優(yōu)選方案,所針對(duì)的手機(jī)為后置單攝像頭手機(jī),3D立體拍照的場(chǎng)景也是針對(duì)于靜態(tài)場(chǎng)景。
本發(fā)明的有益效果在于:本發(fā)明提出的手機(jī)3D立體拍照方法,首先利用了現(xiàn)有手機(jī)的3D顯示功能(3D顯示功能包括裸眼3D顯示和利用VR眼鏡的3D顯示),將之前時(shí)刻拍攝的一個(gè)視圖與當(dāng)前視點(diǎn)的實(shí)時(shí)視圖處理后進(jìn)行3D立體顯示,讓用戶直接看到最終的3D立體效果,從而實(shí)現(xiàn)“實(shí)顯實(shí)拍”的用戶體驗(yàn)拍攝最佳3D效果照片。
同時(shí),利用手機(jī)相機(jī)預(yù)覽圖和拍照?qǐng)D的關(guān)系,即同一場(chǎng)景不同分辨率采樣的性質(zhì),采用圖像處理常用的金字塔算法進(jìn)行處理,不但可以保證3D照片合成的準(zhǔn)確度同時(shí)也可以減少計(jì)算時(shí)間。
另外,利用智能手機(jī)標(biāo)配的傳感器信息(加速度傳感器、方向傳感器)來(lái)提供更多的先驗(yàn)信息,進(jìn)一步提高視差估計(jì)的計(jì)算速度。
附圖說(shuō)明
圖1為本發(fā)明方法第一階段拍照步驟的流程圖。
圖2為本發(fā)明方法第二階段步驟的流程圖。
具體實(shí)施方式
下面結(jié)合附圖詳細(xì)說(shuō)明本發(fā)明的優(yōu)選實(shí)施例。
實(shí)施例一
目前智能手機(jī)在拍攝照片時(shí),攝像頭工作參數(shù)涉及到兩個(gè)分辨率。一個(gè)是手機(jī)屏幕上實(shí)時(shí)顯示的預(yù)覽圖分辨率,另一個(gè)是拍照后存儲(chǔ)下來(lái)照片(以下稱為原圖)的拍攝分辨率。預(yù)覽分辨率都遠(yuǎn)低于拍攝分辨率,比如一個(gè)手機(jī)的拍攝分辨率可以到4160x2336像素(10M),預(yù)覽分辨率為1280x720像素;并且拍攝分辨率有多種尺寸大小供用戶選擇。
本發(fā)明中所針對(duì)的手機(jī)為后置單攝像頭手機(jī),3D立體拍照的場(chǎng)景也是針對(duì)于靜態(tài)場(chǎng)景。在本發(fā)明中,根據(jù)3D立體拍照的過(guò)程,分為兩個(gè)階段。第一階段跟普通2D拍照過(guò)程類似,如圖1所示。這個(gè)過(guò)程完成后,本方法將得到時(shí)刻t0點(diǎn)的預(yù)覽圖P0、原圖Img0、在區(qū)域R中由關(guān)鍵點(diǎn)提取模塊獲得的關(guān)鍵點(diǎn)K,以及t0時(shí)刻點(diǎn)手機(jī)的姿態(tài)信息。
第一階段完成后,自動(dòng)轉(zhuǎn)為第二階段。方案將工作模式切換到“用戶在處理回路中”的3D預(yù)覽狀態(tài)。在裸眼3D手機(jī)屏幕上,用戶將實(shí)時(shí)看到當(dāng)前時(shí)刻t與時(shí)刻t0形成的立體照片影像(t0時(shí)預(yù)覽圖P0為一個(gè)視點(diǎn)、t時(shí)預(yù)覽圖P為另一視點(diǎn))。用戶可以根據(jù)屏幕上顯示的實(shí)時(shí)立體影像效果、OSD提示信息,來(lái)調(diào)整相機(jī)的姿態(tài)和位置,獲得最佳的3D效果從而確定最佳拍照時(shí)刻。
請(qǐng)參閱圖1,第一階段的方案細(xì)節(jié)如下。
步驟S11、首先手機(jī)3D立體拍攝應(yīng)用打開(kāi)后置攝像頭,獲取預(yù)覽圖像數(shù)據(jù)并在手機(jī)屏幕上進(jìn)行2D實(shí)時(shí)預(yù)覽顯示。
步驟S12、選擇區(qū)域?qū)?。默認(rèn)對(duì)焦區(qū)域?yàn)轭A(yù)覽圖像的中心區(qū)域,用戶也可以通過(guò)主動(dòng)點(diǎn)擊手機(jī)屏幕來(lái)選擇對(duì)焦物體(區(qū)域)。將該對(duì)焦區(qū)域作為用戶感興趣區(qū)R。
步驟S13、時(shí)刻t0用戶點(diǎn)擊拍照按鈕,圖像數(shù)據(jù)存儲(chǔ)模塊存儲(chǔ)該時(shí)刻的預(yù)覽圖P0和原圖Img0,姿態(tài)檢測(cè)模塊獲得該時(shí)刻的手機(jī)姿態(tài)。姿態(tài)檢測(cè)模塊利用智能手機(jī)上標(biāo)配的方向傳感器數(shù)據(jù)。
步驟S14、關(guān)鍵點(diǎn)檢測(cè)模塊對(duì)預(yù)覽圖P0在區(qū)域R中進(jìn)行關(guān)鍵點(diǎn)檢測(cè)。關(guān)鍵點(diǎn)可采用圖像處理中最常用的角點(diǎn),或者其他類型的特征點(diǎn)。該關(guān)鍵點(diǎn)K將做為最終3D立體照片中的雙目注視點(diǎn),即對(duì)應(yīng)的左右視差為0。
第一階段完成后,獲得了時(shí)刻t0時(shí)的手機(jī)姿態(tài)信息,同時(shí)刻的預(yù)覽圖P0、原圖Img0,預(yù)覽圖P0中的感興趣區(qū)域R和關(guān)鍵點(diǎn)K。同時(shí),預(yù)覽圖P0可以看做是原圖Img0的下采樣。
時(shí)刻t0拍攝第一個(gè)視點(diǎn)的照片后,整個(gè)方案立即切換到第二階段,即將當(dāng)前視點(diǎn)(實(shí)時(shí)更新)與時(shí)刻t0時(shí)的視點(diǎn)的兩個(gè)視圖,根據(jù)視差估計(jì)模塊輸出的當(dāng)前視差信息,實(shí)時(shí)3D渲染并在屏幕上顯示。用戶根據(jù)屏幕上顯示的實(shí)時(shí)立體影像效果以及OSD提示信息,調(diào)整相機(jī)最佳姿態(tài)和位置,獲得最佳的3D效果照片。請(qǐng)參閱圖2,具體方案細(xì)節(jié)如下:
步驟S21、視差估計(jì)模塊(201)獲取當(dāng)前預(yù)覽圖像Pn,計(jì)算第一階段獲得的P0與當(dāng)前圖Pn的視差。作為方案的優(yōu)選實(shí)現(xiàn),還可以利用位移估計(jì)模塊(206),獲得手機(jī)鏡頭位移的先驗(yàn)信息來(lái)作為視差估計(jì)模塊的先驗(yàn)輸入,從而加速視差估計(jì)過(guò)程。位移估計(jì)模塊基于智能手機(jī)標(biāo)配的加速度傳感器獲取的加速度信息進(jìn)行數(shù)據(jù)處理來(lái)實(shí)現(xiàn)。
步驟S22、利用視差估計(jì)模塊輸出的視差信息,將當(dāng)前圖Pn與P0進(jìn)行3D渲染,然后在手機(jī)屏幕上進(jìn)行3D顯示。作為方案的優(yōu)選實(shí)現(xiàn),還可以利用姿態(tài)檢測(cè)模塊(207),獲得手機(jī)當(dāng)前姿態(tài)和t0時(shí)刻差異,利用OSD引導(dǎo)客戶調(diào)整手機(jī)的最佳姿態(tài)和位置。
步驟S23、上述兩步循環(huán)反復(fù),直至?xí)r刻t1用戶確定了最佳的姿態(tài)和位置進(jìn)行拍照。
步驟S24、時(shí)刻t1用戶拍照后,圖像數(shù)據(jù)存儲(chǔ)模塊保存t1時(shí)刻的預(yù)覽圖P1和原圖Img1,姿態(tài)檢測(cè)模塊獲得當(dāng)前手機(jī)姿態(tài)。
步驟S25、根據(jù)P1和P0的視差估計(jì)結(jié)果,作為高分辨率原圖對(duì)Img0和Img1的初始信息,對(duì)Img0和Img1進(jìn)行視差估計(jì),最終生成高分辨率的左右3D格式的3D照片。作為方案的優(yōu)選實(shí)現(xiàn),還可以利用姿態(tài)檢測(cè)模塊記錄的時(shí)刻t0(即原圖Img0生成時(shí)刻點(diǎn))和時(shí)刻t1(即原圖Img1生成時(shí)刻點(diǎn))的兩個(gè)手機(jī)姿態(tài)信息,來(lái)消除姿態(tài)旋轉(zhuǎn)對(duì)3D照片效果的影響。
第二階段完成后,基于時(shí)刻t0、t1的原圖Img0和Img1的左右3D照片生成完畢,方案又切回到第一階段開(kāi)始下一次3D拍照過(guò)程。
綜上所述,本發(fā)明提出的手機(jī)3D立體拍照方法,首先利用了現(xiàn)有手機(jī)的3D顯示功能(3D顯示功能包括裸眼3D顯示和利用VR眼鏡的3D顯示),將之前時(shí)刻拍攝的一個(gè)視圖與當(dāng)前視點(diǎn)的實(shí)時(shí)視圖處理后進(jìn)行3D立體顯示,讓用戶直接看到最終的3D立體效果,從而實(shí)現(xiàn)“實(shí)顯實(shí)拍”的用戶體驗(yàn)拍攝最佳3D效果照片。
同時(shí),利用手機(jī)相機(jī)預(yù)覽圖和拍照?qǐng)D的關(guān)系,即同一場(chǎng)景不同分辨率采樣的性質(zhì),采用圖像處理常用的金字塔算法進(jìn)行處理,不但可以保證3D照片合成的準(zhǔn)確度同時(shí)也可以減少計(jì)算時(shí)間。
另外,利用智能手機(jī)標(biāo)配的傳感器信息(加速度傳感器、方向傳感器)來(lái)提供更多的先驗(yàn)信息,進(jìn)一步提高視差估計(jì)的計(jì)算速度。
這里本發(fā)明的描述和應(yīng)用是說(shuō)明性的,并非想將本發(fā)明的范圍限制在上述實(shí)施例中。這里所披露的實(shí)施例的變形和改變是可能的,對(duì)于那些本領(lǐng)域的普通技術(shù)人員來(lái)說(shuō)實(shí)施例的替換和等效的各種部件是公知的。本領(lǐng)域技術(shù)人員應(yīng)該清楚的是,在不脫離本發(fā)明的精神或本質(zhì)特征的情況下,本發(fā)明可以以其它形式、結(jié)構(gòu)、布置、比例,以及用其它組件、材料和部件來(lái)實(shí)現(xiàn)。在不脫離本發(fā)明范圍和精神的情況下,可以對(duì)這里所披露的實(shí)施例進(jìn)行其它變形和改變。