本發明涉及拍照技術領域,尤其涉及一種雙攝像頭拍照方法及裝置。
背景技術:
為了提高終端的拍照效果,越來越多的電子設備采用雙攝像頭,一個彩色攝像頭、一個黑白攝像頭。但采用雙攝像頭就需要對兩個攝像頭進行對焦,使兩個攝像頭能合焦。若合焦不成功,就會使被拍攝物體不能清晰成像。目前正常光下的對焦方法都是采用單一的對焦方法,容易出現對焦速度慢,對焦不準確。
技術實現要素:
鑒于以上內容,有必要提供一種雙攝像頭拍照方法及裝置,能提高對焦速度及對焦準度。
一種雙攝像頭拍照方法,應用于電子設備中,所述電子設備包括第一攝像頭及第二攝像頭,所述第一攝像頭為彩色攝像頭,所述第二攝像頭為黑白攝像頭,所述方法包括:獲取拍攝目標;當檢測到當前光線不是暗光時,控制所述第一攝像頭利用快速對焦功能進行對焦,根據預先設置的映射表確定所述第一攝像頭的快速對焦位置,所述映射表包括多個物距值,及每個物距值對應的對焦位置,將所述多個物距值排序后,任意相鄰的兩個物距值之差的絕對值不相同;驅動所述第二攝像頭的第二對焦鏡片移動至所述快速對焦位置的鄰近范圍內的一個目標位置,并基于所述目標位置搜索滿足預設條件的所述第二攝像頭的第二對焦位置;基于所述快速對焦位置,搜索滿足預設條件的所述第一攝像頭的第一對焦位置;基于所述第一對焦位置及所述第二對焦位置,對所述拍攝目標進行拍攝。
根據本發明優選實施例,所述控制所述第一攝像頭利用快速對焦功能進行對焦,根據預先設置的映射表確定所述第一攝像頭的快速對焦位置包括:
預先設置所述映射表;
利用所述電子設備的測距裝置測量所述拍攝目標與所述第一攝像頭的距離;
根據所述拍攝目標與所述第一攝像頭的距離及所述映射表,確定快速對焦位置。
根據本發明優選實施例,所述預先設置所述映射表包括:
預先選定目標點及預先設置所述多個物距值;
對每個物距值而言,對所述目標點拍照,當所述目標點最清晰時,記錄每個物距值對應的對焦位置。
根據本發明優選實施例,所述根據所述拍攝目標與所述第一攝像頭的距離及所述映射表,確定快速對焦位置包括:
當所述拍攝目標與所述第一攝像頭的距離小于或者等于所述映射表中的最小物距值時,將所述最小物距值對應的對焦位置確定為所述快速對焦位置;或
當所述拍攝目標與所述第一攝像頭的距離大于或者等于所述映射表中的最大物距值時,將所述最大物距值對應的對焦位置確定為所述快速對焦位置;或
當所述拍攝目標與所述第一攝像頭的距離位于所述映射表中兩個物距值之間時,根據所述兩個物距值對應的對焦位置確定所述快速對焦位置。
根據本發明優選實施例,所述預設條件包括以下一種或者多種:搜索次數大于或等于預設次數、搜索步長小于或等于預設步長。
一種雙攝像頭拍照裝置,運行于電子設備中,所述電子設備包括第一攝像頭及第二攝像頭,所述第一攝像頭為彩色攝像頭,所述第二攝像頭為黑白攝像頭,所述裝置包括:
獲取模塊,用于獲取拍攝目標;
對焦模塊,用于當檢測到當前光線不是暗光時,控制所述第一攝像頭利用快速對焦功能進行對焦,根據預先設置的映射表確定所述第一攝像頭的快速對焦位置,所述映射表包括多個物距值,及每個物距值對應的對焦位置,將所述多個物距值排序后,任意相鄰的兩個物距值之差的絕對值不相同;
所述對焦模塊還用于驅動所述第二攝像頭的第二對焦鏡片移動至所述快速對焦位置的鄰近范圍內的一個目標位置,并基于所述目標位置搜索滿足預設條件的所述第二攝像頭的第二對焦位置;
所述對焦模塊還用于基于所述快速對焦位置,搜索滿足預設條件的所述第一攝像頭的第一對焦位置;
拍攝模塊,用于基于所述第一對焦位置及所述第二對焦位置,對所述拍攝目標進行拍攝。
根據本發明優選實施例,所述對焦模塊包括:
設置子模塊,用于預先設置所述映射表;
測量子模塊,用于利用所述電子設備的測距裝置測量所述拍攝目標與所述第一攝像頭的距離;
確定子模塊,用于根據所述拍攝目標與所述第一攝像頭的距離及所述映射表,確定快速對焦位置。
根據本發明優選實施例,所述設置子模塊用于預先設置所述映射表包括:
預先選定目標點及預先設置所述多個物距值;
對每個物距值而言,對所述目標點拍照,當所述目標點最清晰時,記錄每個物距值對應的對焦位置。
根據本發明優選實施例,所述確定子模塊用于根據所述拍攝目標與所述第一攝像頭的距離及所述映射表,確定快速對焦位置包括:
當所述拍攝目標與所述第一攝像頭的距離小于或者等于所述映射表中的最小物距值時,將所述最小物距值對應的對焦位置確定為所述快速對焦位置;或
當所述拍攝目標與所述第一攝像頭的距離大于或者等于所述映射表中的最大物距值時,將所述最大物距值對應的對焦位置確定為所述快速對焦位置;或
當所述拍攝目標與所述第一攝像頭的距離位于所述映射表中兩個物距值之間時,根據所述兩個物距值對應的對焦位置確定所述快速對焦位置。
根據本發明優選實施例,所述預設條件包括以下一種或者多種:搜索次數大于或等于預設次數、搜索步長小于或等于預設步長。
由以上技術方案,本發明獲取拍攝目標;當檢測到當前光線不是暗光時,控制所述第一攝像頭利用快速對焦功能進行對焦,根據預先設置的映射表確定所述第一攝像頭的快速對焦位置,所述映射表包括多個物距值,及每個物距值對應的對焦位置,將所述多個物距值排序后,任意相鄰的兩個物距值之差的絕對值不相同;驅動所述第二攝像頭的第二對焦鏡片移動至所述快速對焦位置的鄰近范圍內的一個目標位置,并基于所述目標位置搜索滿足預設條件的所述第二攝像頭的第二對焦位置;基于所述快速對焦位置,搜索滿足預設條件的所述第一攝像頭的第一對焦位置;基于所述第一對焦位置及所述第二對焦位置,對所述拍攝目標進行拍攝。因此,本發明能提高對焦速度及對焦準度。
附圖說明
為了更清楚地說明本發明實施例或現有技術中的技術方案,下面將對實施例或現有技術描述中所需要使用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖僅僅是本發明的實施例,對于本領域普通技術人員來講,在不付出創造性勞動的前提下,還可以根據提供的附圖獲得其他的附圖。
圖1是本發明雙攝像頭拍照方法的較佳實施例的流程圖。
圖2是本發明中利用爬山搜索法搜索最佳對焦位置的示意圖。
圖3是本發明雙攝像頭拍照裝置的較佳實施例的功能模塊圖。
圖4是本發明實現雙攝像頭拍照方法的較佳實施例的電子設備的結構示意圖。
主要元件符號說明
具體實施方式
下面將結合本發明實施例中的附圖,對本發明實施例中的技術方案進行清楚、完整地描述,顯然,所描述的實施例僅僅是本發明一部分實施例,而不是全部的實施例。基于本發明中的實施例,本領域普通技術人員在沒有做出創造性勞動前提下所獲得的所有其他實施例,都屬于本發明保護的范圍。
為使本發明的上述目的、特征和優點能夠更加明顯易懂,下面結合附圖和具體實施方式對本發明作進一步詳細的說明。
優選地,本發明的雙攝像頭拍照方法可以應用在一個或者多個所述電子設備中。所述電子設備是一種能夠按照事先設定或存儲的指令,自動進行數值計算和/或信息處理的設備,其硬件包括但不限于微處理器、專用集成電路(applicationspecificintegratedcircuit,asic)、可編程門陣列(field-programmablegatearray,fpga)、數字處理器(digitalsignalprocessor,dsp)、嵌入式設備等。
所述電子設備包括但不限于任何一種可與用戶通過鍵盤、鼠標、遙控器、觸摸板或聲控設備等方式進行人機交互的電子產品,例如,個人計算機、平板電腦、智能手機、個人數字助理(personaldigitalassistant,pda)、交互式網絡電視(internetprotocoltelevision,iptv)、智能式穿戴式設備、數碼相機等。所述電子設備包括兩個攝像頭,其中第一攝像頭為彩色攝像頭,第二攝像頭為黑白攝像頭。
需要簡單說明的是,攝像頭的結構一般由鏡頭、傳感器和外圍電路組成,傳感器不能獨立工作,需要外圍電路的支持才能將光信號轉換成電信號;光線經拍攝目標反射通過鏡頭到達傳感器的感光元件上,從而實現光信號轉換成電信號,轉換后的電信號被傳送至圖像信號處理器進行分析處理,并調整對焦鏡片,尋找圖像最清晰的點,此過程即為自動對焦的過程。在本發明的實施例中,在確定了對焦位置后,用攝像頭的對焦鏡片到所述攝像頭的感光元件的距離表示對焦位置。例如,當攝像頭的對焦鏡片到所述攝像頭的感光元件的距離為3mm時,則所述對焦位置位于離所述攝像頭的感光元件的距離為3mm處。
所述第一攝像頭包括,但不限于第一對焦鏡片、第一傳感器、第一感光元件、測距裝置等等。所述第二攝像頭包括第二對焦鏡片、第二傳感器、第二感光元件等等。所述測距裝置用于測量拍攝目標與所述第一攝像頭的距離。例如,激光測距儀等等。通過配置所述第一攝像頭和所述第二攝像頭,所述第二攝像頭負責勾勒拍攝目標的輪廓,所述第一攝像頭負責還原拍攝目標的色彩。
如圖1所示,是本發明雙攝像頭拍照方法的較佳實施例的流程圖。根據不同的需求,該流程圖中步驟的順序可以改變,某些步驟可以省略。
s10,所述電子設備獲取拍攝目標。
在本發明的至少一個實施例中,其中,所述獲取拍攝目標具體可以是用戶將所述電子設備的攝像頭對準要拍攝的物體的過程。
進一步地,所述獲取拍攝目標之前,還包括:
接收相機的啟動指令;
具體的,用戶點擊所述電子設備上相機的應用圖標的動作即觸發了所述相機的啟動指令,所述電子設備便可以接收到相機的啟動指令。
s11,所述電子設備當檢測到當前光線不是暗光時,控制所述第一攝像頭利用快速對焦功能進行對焦,根據預先設置的映射表確定所述第一攝像頭的快速對焦位置。
在本發明的至少一個實施例中,所述電子設備包括光線感應器。所述電子設備的存儲器存儲有多個光線區間范圍,包括:正常光的光線區間范圍、暗光的光線區間范圍、強光的光線區間范圍等等。利用機器學習算法,根據大樣本數據訓練確定所述多個光線區間范圍,這樣更能保證數據準確性。
所述電子設備利用所述光線感應器感測當前光線值,并確定所述當前光線值所在的光線區間范圍。當所述當前光線值在所述暗光的光線區間范圍內時,所述電子設備確定當前光線為暗光。當所述當前光線值在所述正常光的光線區間范圍內或者在強光的光線區間范圍內時,所述電子設備確定當前光線不是暗光。在其他實施例中,也可以通過其他方式判斷當前光線是否為暗光,本發明不做任何限制。
在本發明的至少一個實施例中,由于所述第一攝像頭包括測距裝置,所述電子設備控制所述第一攝像頭利用測距對焦法實現快速對焦功能。
優選地,所述電子設備確定所述第一攝像頭的快速對焦位置包括:
(1)預先設置所述映射表。
所述映射表包括多個物距值,及每個物距值對應的對焦位置。一個物距值對應的對焦位置表示當物距為所述物距值,且目標點最清晰時,所述第一對焦鏡片到所述第一感光元件的距離。
所述映射表可以是變距映射表。當所述映射表為變距映射表時,將所述多個物距值排序后,任意相鄰的兩個物距值之差的絕對值可以不相同,例如所述多個物距值為0.9米、1米、1.05米、1.055米、1.12米、1.14米等等。這樣可以設置多個不同的物距,提高拍攝圖片的質量。
在所述多個物距值中,有一個最小物距值(如,1米)及一個最大距離值(如,2米)。在所述最小物距值與所述最大物距值之間,物距值的數量越多,所述映射表越準確。一般在所述電子設備出廠前,設置所述映射表。
在本發明的至少一個實施例中,預先設置映射表的過程包括:
(a)預先選定目標點及預先設置所述多個物距值。
(b)對每個物距值而言,對所述目標點拍照,當所述目標點最清晰時,記錄每個物距值對應的對焦位置。
在本發明的至少一個實施例中,當所述目標點固定的情況下,所述第一攝像頭的焦距隨著所述物距而變化。
(2)利用所述測距裝置測量所述拍攝目標與所述第一攝像頭的距離。
(3)根據所述拍攝目標與所述第一攝像頭的距離及所述映射表,確定快速對焦位置。
在本發明的至少一個實施中,當所述拍攝目標與所述第一攝像頭的距離小于或者等于所述最小物距值時,將所述最小物距值對應的對焦位置確定為所述快速對焦位置。
在本發明的至少一個實施中,當所述拍攝目標與所述第一攝像頭的距離大于或者等于所述最大物距值時,將所述最大物距值對應的對焦位置確定為所述快速對焦位置。
在本發明的至少一個實施中,當所述拍攝目標與所述第一攝像頭的距離位于所述映射表中兩個物距值之間時,根據所述兩個物距值對應的對焦位置確定所述快速對焦位置。
優選地,所述兩個物距值中的一個物距值用第一物距值表示,另外一個物距值用第二物距值表示。所述拍攝目標與所述第一攝像頭的距離用目標距離表示。所述電子設備先計算所述第一物距值對應的第一權重,及所述第二物距值對應的第二權重。所述快速對焦位置=(第一權重*第一物距值對應的對焦位置+第二權重*第二物距值對應的對焦位置)。
優選地,所述第一權重=(所述目標距離與所述第一物距值對應的對焦位置之差的絕對值)/(所述第二物距值對應的對焦位置與所述第一物距值對應的對焦位置之差的絕對值),所述第二權重=(所述目標距離與所述第二物距值對應的對焦位置之差的絕對值)/(所述第二物距值對應的對焦位置與所述第一物距值對應的對焦位置之差的絕對值)。
s12,所述電子設備驅動所述第二對焦鏡片移動至所述快速對焦位置的鄰近范圍內的一個目標位置,并基于所述目標位置搜索滿足預設條件的所述第二攝像頭的第二對焦位置。
在本發明的至少一個實施例中,所述目標位置可以是所述鄰近范圍內的任意一個位置。例如,所述快速對焦位置用2mm表示,即表示所述第一對焦鏡片到所述第一感光元件的距離為2mm。所述快速對焦位置的鄰近范圍為[3mm,4mm]。即將所述第二對焦鏡片移動到一個目標位置,所述目標位置與所述第二感光元件的距離在[3mm,4mm]之間。
從所述目標位置開始,利用爬山搜索算法逐步縮小包含對焦評價函數值的最大值的搜索范圍,通過多次搜索,直至達到預設條件,并確定所述第二對焦位置。所述預設條件包括,但不限于,搜索次數大于或等于預設次數,搜索步長小于或等于預設步長。所述搜索步長隨著搜索次數的增加逐漸減小。在一次搜索過程中,所述第一對焦鏡片以相同的搜索步長移動。
優選地,如圖2所示,在第一次搜索過程中,從所述目標位置a點開始,驅動所述第二對焦鏡片以第一步長朝著遠離所述第二感光元件的方向或者靠近所述第二感光元件的方向移動,每走一步計算當前的對焦評價函數值,與前一步所得的對焦評價函數值進行比較,記錄較大的對焦評價函數值及所述較大的對焦評價函數值對應的對焦位置,即記錄了以下對焦位置:b、c、d、e、f、g,確定第二次搜索的范圍為在d與f之間搜索。在第二次搜索中,以第二步長搜索,所述第二步長小于第一步長。所述電子設備驅動所述第一對焦鏡片從d處開始,移動到f處結束,記錄了以下對焦位置:d、h、i、j、k、l、m、n、f,確定第三次搜索的范圍在j與l之間搜索,如此反復搜索,直至達到預設條件。所述電子設備將最后一次搜索過程中對焦評價函數最大值對應的對焦位置確定為所述第二對焦位置。
在其他實施例中,為了減少計算量,所述電子設備從所述目標位置開始,以預設步長驅動所述第二對焦鏡片以第一步長朝著遠離所述第二感光元件的方向或者靠近所述第二感光元件的方向移動。每走一步,所述電子設備計算當前的對焦評價函數值,直至對焦評價函數值出現下降。當所述對焦評價函數值開始下降時,所述電子設備驅動所述第二對焦鏡片后退預設距離,并將后退預設距離后的位置確定為所述第二對焦位置。
s13,所述電子設備基于所述快速對焦位置,搜索滿足預設條件的所述第一攝像頭的第一對焦位置。
在本發明的至少一個實施例中,所述電子設備從所述快速對焦位置開始,利用爬山搜索算法逐步縮小包含對焦評價函數值的最大值的搜索范圍,通過多次搜索,直至達到預設條件,并確定滿足所述預設條件的所述第一對焦位置。所述預設條件包括,但不限于,搜索次數大于或等于預設次數,搜索步長小于或等于預設步長。所述搜索步長隨著搜索次數的增加逐漸減小。在一次搜索過程中,所述第一對焦鏡片以相同的搜索步長移動。具體的搜索過程與圖3類似,不再贅述。
在其他實施例中,為了減少計算量,所述電子設備從所述快速對焦位置開始,以預設步長驅動所述第一對焦鏡片以第一步長朝著遠離所述第一感光元件的方向或者靠近所述第一感光元件的方向移動。每走一步,所述電子設備計算當前的對焦評價函數值,直至對焦評價函數值出現下降。當所述對焦評價函數值開始下降時,所述電子設備驅動所述第一對焦鏡片后退預設距離,并將后退預設距離后的位置確定為所述第一對焦位置。
s14,所述電子設備基于所述第一對焦位置及所述第二對焦位置,對所述拍攝目標進行拍攝。
如圖3所示,本發明雙攝像頭拍照裝置的較佳實施例的功能模塊圖。所述雙攝像頭拍照裝置11包括獲取模塊100、對焦模塊101、判斷模塊102及拍攝模塊103。所述對焦模塊101包括設置子模塊1010、測量子模塊1011及確定子模塊1012。本發明所稱的模塊是指一種能夠被處理器13所執行并且能夠完成固定功能的一系列計算機程序段,其存儲在存儲器12中。在本實施例中,關于各模塊的功能將在后續的實施例中詳述。
所述獲取模塊100獲取拍攝目標。
在本發明的至少一個實施例中,其中,所述獲取拍攝目標具體可以是用戶將所述電子設備的攝像頭對準要拍攝的物體的過程。
進一步地,所述獲取模塊100獲取拍攝目標之前,還包括:
接收相機的啟動指令;
具體的,用戶點擊所述電子設備上相機的應用圖標的動作即觸發了所述相機的啟動指令,所述電子設備便可以接收到相機的啟動指令。
當檢測到當前光線不是暗光時,所述對焦模塊101控制所述第一攝像頭利用快速對焦功能進行對焦,根據預先設置的映射表確定所述第一攝像頭的快速對焦位置。
在本發明的至少一個實施例中,所述電子設備包括光線感應器。所述電子設備的存儲器存儲有多個光線區間范圍,包括:正常光的光線區間范圍、暗光的光線區間范圍、強光的光線區間范圍等等。利用機器學習算法,根據大樣本數據訓練確定所述多個光線區間范圍,這樣更能保證數據準確性。
所述判斷模塊102利用所述光線感應器感測當前光線值,并確定所述當前光線值所在的光線區間范圍。當所述當前光線值在所述暗光的光線區間范圍內時,所述判斷模塊102確定當前光線為暗光。當所述當前光線值在所述正常光的光線區間范圍內或者在強光的光線區間范圍內時,所述判斷模塊102當前光線不是暗光。在其他實施例中,也可以通過其他方式判斷當前光線是否為暗光,本發明不做任何限制。
在本發明的至少一個實施例中,由于所述第一攝像頭包括測距裝置,所述對焦模塊101控制所述第一攝像頭利用測距對焦法實現快速對焦功能。
優選地,所述對焦模塊101確定所述第一攝像頭的快速對焦位置包括:
所述設置子模塊1010預先設置所述映射表。
所述映射表包括多個物距值,及每個物距值對應的對焦位置。一個物距值對應的對焦位置表示當物距為所述物距值,且目標點最清晰時,所述第一對焦鏡片到所述第一感光元件的距離。
所述映射表可以是變距映射表。當所述映射表為變距映射表時,將所述多個物距值排序后,任意相鄰的兩個物距值之差的絕對值可以不相同,例如所述多個物距值為0.9米、1米、1.05米、1.055米、1.12米、1.14米等等。
在所述多個物距值中,有一個最小物距值(如,1米)及一個最大距離值(如,2米)。在所述最小物距值與所述最大物距值之間,物距值的數量越多,所述映射表越準確。一般在所述電子設備出廠前,設置所述映射表。
在本發明的至少一個實施例中,所述設置子模塊1010預先設置映射表的過程包括:
(a)預先選定目標點及預先設置所述多個物距值。
(b)對每個物距值而言,對所述目標點拍照,當所述目標點最清晰時,記錄每個物距值對應的對焦位置。
在本發明的至少一個實施例中,當所述目標點固定的情況下,所述第一攝像頭的焦距隨著所述物距而變化。
所述測量子模塊1011利用所述測距裝置測量所述拍攝目標與所述第一攝像頭的距離。
所述確定子模塊1012根據所述拍攝目標與所述第一攝像頭的距離及所述映射表,確定快速對焦位置。
在本發明的至少一個實施中,當所述拍攝目標與所述第一攝像頭的距離小于或者等于所述最小物距值時,所述確定子模塊1012將所述最小物距值對應的對焦位置確定為所述快速對焦位置。
在本發明的至少一個實施中,當所述拍攝目標與所述第一攝像頭的距離大于或者等于所述最大物距值時,所述確定子模塊1012將所述最大物距值對應的對焦位置確定為所述快速對焦位置。
在本發明的至少一個實施中,當所述拍攝目標與所述第一攝像頭的距離位于所述映射表中兩個物距值之間時,所述確定子模塊1012根據所述兩個物距值對應的對焦位置確定所述快速對焦位置。
優選地,所述兩個物距值中的一個物距值用第一物距值表示,另外一個物距值用第二物距值表示。所述拍攝目標與所述第一攝像頭的距離用目標距離表示。所述確定子模塊1012先計算所述第一物距值對應的第一權重,及所述第二物距值對應的第二權重。所述快速對焦位置=(第一權重*第一物距值對應的對焦位置+第二權重*第二物距值對應的對焦位置)。
優選地,所述第一權重=(所述目標距離與所述第一物距值對應的對焦位置之差的絕對值)/(所述第二物距值對應的對焦位置與所述第一物距值對應的對焦位置之差的絕對值),所述第二權重=(所述目標距離與所述第二物距值對應的對焦位置之差的絕對值)/(所述第二物距值對應的對焦位置與所述第一物距值對應的對焦位置之差的絕對值)。
所述對焦模塊101驅動所述第二對焦鏡片移動至所述快速對焦位置的鄰近范圍內的一個目標位置,并基于所述目標位置搜索滿足預設條件的所述第二攝像頭的第二對焦位置。
在本發明的至少一個實施例中,所述目標位置可以是所述鄰近范圍內的任意一個位置。例如,所述快速對焦位置用2mm表示,即表示所述第一對焦鏡片到所述第一感光元件的距離為2mm。所述快速對焦位置的鄰近范圍為[3mm,4mm]。即將所述第二對焦鏡片移動到一個目標位置,所述目標位置與所述第二感光元件的距離在[3mm,4mm]之間。
所述對焦模塊101從所述目標位置開始,利用爬山搜索算法逐步縮小包含對焦評價函數值的最大值的搜索范圍,通過多次搜索,直至達到預設條件,并確定所述第二對焦位置。所述預設條件包括,但不限于,搜索次數大于或等于預設次數,搜索步長小于或等于預設步長。所述搜索步長隨著搜索次數的增加逐漸減小。在一次搜索過程中,所述第一對焦鏡片以相同的搜索步長移動。
優選地,如圖2所示,在第一次搜索過程中,從所述目標位置a點開始,驅動所述第二對焦鏡片以第一步長朝著遠離所述第二感光元件的方向或者靠近所述第二感光元件的方向移動,每走一步計算當前的對焦評價函數值,與前一步所得的對焦評價函數值進行比較,記錄較大的對焦評價函數值及所述較大的對焦評價函數值對應的對焦位置,即記錄了以下對焦位置:b、c、d、e、f、g,確定第二次搜索的范圍為在d與f之間搜索。在第二次搜索中,以第二步長搜索,所述第二步長小于第一步長。所述電子設備驅動所述第一對焦鏡片從d處開始,移動到f處結束,記錄了以下對焦位置:d、h、i、j、k、l、m、n、f,確定第三次搜索的范圍在j與l之間搜索,如此反復搜索,直至達到預設條件。所述對焦模塊101將最后一次搜索過程中對焦評價函數最大值對應的對焦位置確定為所述第二對焦位置。
在其他實施例中,為了減少計算量,所述對焦模塊101從所述目標位置開始,以預設步長驅動所述第二對焦鏡片以第一步長朝著遠離所述第二感光元件的方向或者靠近所述第二感光元件的方向移動。每走一步,所述對焦模塊101計算當前的對焦評價函數值,直至對焦評價函數值出現下降。當所述對焦評價函數值開始下降時,所述對焦模塊101驅動所述第二對焦鏡片后退預設距離,并將后退預設距離后的位置確定為所述第二對焦位置。
所述對焦模塊101基于所述快速對焦位置,搜索滿足預設條件的所述第一攝像頭的第一對焦位置。
在本發明的至少一個實施例中,所述對焦模塊101從所述快速對焦位置開始,利用爬山搜索算法逐步縮小包含對焦評價函數值的最大值的搜索范圍,通過多次搜索,直至達到預設條件,并確定滿足所述預設條件的所述第一對焦位置。所述預設條件包括,但不限于,搜索次數大于或等于預設次數,搜索步長小于或等于預設步長。所述搜索步長隨著搜索次數的增加逐漸減小。在一次搜索過程中,所述第一對焦鏡片以相同的搜索步長移動。具體的搜索過程與圖3類似,不再贅述。
在其他實施例中,為了減少計算量,所述對焦模塊101從所述快速對焦位置開始,以預設步長驅動所述第一對焦鏡片以第一步長朝著遠離所述第一感光元件的方向或者靠近所述第一感光元件的方向移動。每走一步,所述對焦模塊101計算當前的對焦評價函數值,直至對焦評價函數值出現下降。當所述對焦評價函數值開始下降時,所述對焦模塊101驅動所述第一對焦鏡片后退預設距離,并將后退預設距離后的位置確定為所述第一對焦位置。
所述拍攝模塊103基于所述第一對焦位置及所述第二對焦位置,對所述拍攝目標進行拍攝。
上述以軟件功能模塊的形式實現的集成的單元,可以存儲在一個計算機可讀取存儲介質中。上述軟件功能模塊存儲在一個存儲介質中,包括若干指令用以使得一臺計算機設備(可以是個人計算機,服務器,或者網絡設備等)或處理器(processor)執行本發明各個實施例所述方法的部分步驟。
如圖4所示,圖4是本發明實現雙攝像頭拍照方法的較佳實施例的電子設備的結構示意圖。所述電子設備1包括存儲器12、處理器13、第一攝像頭14、第二攝像頭15及測距裝置16。
所述電子設備1還包括但不限于任何一種可與用戶通過鍵盤、鼠標、遙控器、觸摸板或聲控設備等方式進行人機交互的電子產品,例如,個人計算機、平板電腦、智能手機、個人數字助理(personaldigitalassistant,pda)、游戲機、交互式網絡電視(internetprotocoltelevision,iptv)、智能式穿戴式設備等。所述電子設備1所處的網絡包括但不限于互聯網、廣域網、城域網、局域網、虛擬專用網絡(virtualprivatenetwork,vpn)等。
所述存儲器12用于存儲一種雙攝像頭拍照方法的程序和各種數據,并在所述電子設備1運行過程中實現高速、自動地完成程序或數據的存取。所述存儲器12可以是電子設備1的外部存儲器和/或內部存儲器。進一步地,所述存儲器12可以是集成電路中沒有實物形式的具有存儲功能的電路,如ram(random-accessmemory,隨機存取存儲器)、fifo(firstinfirstout,)等。或者,所述存儲器12也可以是具有實物形式的存儲器,如內存條、tf卡(trans-flashcard)等等。
所述處理器13又稱中央處理器(cpu,centralprocessingunit),是一塊超大規模的集成電路,是電子設備1的運算核心(core)和控制核心(controlunit)。所述處理器13可執行所述電子設備1的操作系統以及安裝的各類應用程序、程序代碼等,例如雙攝像頭拍照裝置11。
所述第一攝像頭14包括第一傳感器141、第一感光元件142及第一對焦鏡片143。所述第二攝像頭15包括第二傳感器151、第二感光元件152及第二對焦鏡片153。在本發明的實施例中,所述第一攝像頭14為彩色攝像頭,所述第二攝像頭15為黑白攝像頭。所述測距裝置16用于測量拍攝目標與所述第一攝像頭14的距離。例如,激光測距儀等等。通過配置所述第一攝像頭14和所述第二攝像頭15,所述第二攝像頭15負責勾勒拍攝目標的輪廓,所述第一攝像頭14負責還原拍攝目標的色彩。
結合圖1,所述電子設備1中的所述存儲器12存儲多個指令以實現一種雙攝像頭拍照方法,所述處理器13可執行所述多個指令從而實現:
獲取拍攝目標;當檢測到當前光線不是暗光時,控制所述第一攝像頭利用快速對焦功能進行對焦,根據預先設置的映射表確定所述第一攝像頭的快速對焦位置,所述映射表包括多個物距值,及每個物距值對應的對焦位置,將所述多個物距值排序后,任意相鄰的兩個物距值之差的絕對值不相同;驅動所述第二攝像頭的第二對焦鏡片移動至所述快速對焦位置的鄰近范圍內的一個目標位置,并基于所述目標位置搜索滿足預設條件的所述第二攝像頭的第二對焦位置;基于所述快速對焦位置,搜索滿足預設條件的所述第一攝像頭的第一對焦位置;基于所述第一對焦位置及所述第二對焦位置,對所述拍攝目標進行拍攝。
根據本發明優選實施例,所述控制所述第一攝像頭利用快速對焦功能進行對焦,根據預先設置的映射表確定所述第一攝像頭的快速對焦位置包括:
預先設置所述映射表;
利用所述電子設備的測距裝置測量所述拍攝目標與所述第一攝像頭的距離;
根據所述拍攝目標與所述第一攝像頭的距離及所述映射表,確定快速對焦位置。
根據本發明優選實施例,所述預先設置所述映射表包括:
預先選定目標點及預先設置所述多個物距值;
對每個物距值而言,對所述目標點拍照,當所述目標點最清晰時,記錄每個物距值對應的對焦位置。
根據本發明優選實施例,所述根據所述拍攝目標與所述第一攝像頭的距離及所述映射表,確定快速對焦位置包括:
當所述拍攝目標與所述第一攝像頭的距離小于或者等于所述映射表中的最小物距值時,將所述最小物距值對應的對焦位置確定為所述快速對焦位置;或
當所述拍攝目標與所述第一攝像頭的距離大于或者等于所述映射表中的最大物距值時,將所述最大物距值對應的對焦位置確定為所述快速對焦位置;或
當所述拍攝目標與所述第一攝像頭的距離位于所述映射表中兩個物距值之間時,根據所述兩個物距值對應的對焦位置確定所述快速對焦位置。
根據本發明優選實施例,所述預設條件包括以下一種或者多種:搜索次數大于或等于預設次數、搜索步長小于或等于預設步長。
具體地,所述處理器13對上述指令的具體實現方法可參考圖1對應實施例中相關步驟的描述,在此不贅述。
在本發明所提供的幾個實施例中,應該理解到,所揭露的系統,裝置和方法,可以通過其它的方式實現。例如,以上所描述的裝置實施例僅僅是示意性的,例如,所述模塊的劃分,僅僅為一種邏輯功能劃分,實際實現時可以有另外的劃分方式。
所述作為分離部件說明的模塊可以是或者也可以不是物理上分開的,作為模塊顯示的部件可以是或者也可以不是物理單元,即可以位于一個地方,或者也可以分布到多個網絡單元上。可以根據實際的需要選擇其中的部分或者全部模塊來實現本實施例方案的目的。
另外,在本發明各個實施例中的各功能模塊可以集成在一個處理單元中,也可以是各個單元單獨物理存在,也可以兩個或兩個以上單元集成在一個單元中。上述集成的單元既可以采用硬件的形式實現,也可以采用硬件加軟件功能模塊的形式實現。
對于本領域技術人員而言,顯然本發明不限于上述示范性實施例的細節,而且在不背離本發明的精神或基本特征的情況下,能夠以其他的具體形式實現本發明。因此,無論從哪一點來看,均應將實施例看作是示范性的,而且是非限制性的,本發明的范圍由所附權利要求而不是上述說明限定,因此旨在將落在權利要求的等同要件的含義和范圍內的所有變化涵括在本發明內。不應將權利要求中的任何附關聯圖標記視為限制所涉及的權利要求。此外,顯然“包括”一詞不排除其他單元或步驟,單數不排除復數。系統權利要求中陳述的多個單元或裝置也可以由一個單元或裝置通過軟件或者硬件來實現。第二等詞語用來表示名稱,而并不表示任何特定的順序。
最后應說明的是,以上實施例僅用以說明本發明的技術方案而非限制,盡管參照較佳實施例對本發明進行了詳細說明,本領域的普通技術人員應當理解,可以對本發明的技術方案進行修改或等同替換,而不脫離本發明技術方案的精神和范圍。