,用戶輸入表征在待捕獲的場景中最靠近用 戶的對(duì)象的距離估計(jì)(例如,兩米)。在一些示例中,數(shù)碼相機(jī)確定距離估計(jì),或者使用一些 除用戶輸入外的其他技術(shù)接收距離估計(jì)。該距離估計(jì)被用于確定場景的深度范圍,其中最 小深度為距離估計(jì)并且最大深度為大于最小深度的某個(gè)深度。在一些示例中,最大深度被 假定為無窮大。在一些示例中,用戶輸入(或者相機(jī)生成)最小深度、最大深度或者兩者。 深度范圍然后被分為景深,其中景深的數(shù)目對(duì)應(yīng)于圖像的數(shù)目并且焦平面在景深內(nèi)的位置 對(duì)應(yīng)于焦距設(shè)置。在一些示例中,遍及深度范圍評(píng)估深度值和對(duì)應(yīng)的配置設(shè)置的集合,并且 針對(duì)深度值保持約1像素至約2像素的模糊的配置設(shè)置被選擇和輸出為圖像捕獲指令。
[0029] 確定圖像的數(shù)目和對(duì)應(yīng)的配置設(shè)置使得確保對(duì)應(yīng)于圖像的景深不顯著地重疊,并 且不具有顯著的間隙。在每個(gè)景深間隔內(nèi),針對(duì)景深間隔內(nèi)的任何像素,保持約1像素至約 2像素的最大模糊半徑。最優(yōu)模糊半徑的范圍應(yīng)當(dāng)是約1像素至約2像素的確定通過最大 化深度辨別力函數(shù)的場景獨(dú)立部分而確定。這樣一來,確定了對(duì)于特定數(shù)碼相機(jī)和透鏡組 合,最優(yōu)的(即,確保足夠的深度信息)是具有約1像素至約2像素的最優(yōu)模糊半徑的范圍。 最大化深度辨別力函數(shù)的場景獨(dú)立項(xiàng)在確定圖像捕獲指令之前執(zhí)行。然而,在一些示例中, 最大化深度辨別力函數(shù)的場景獨(dú)立項(xiàng)可以在特定數(shù)碼相機(jī)和透鏡組合的校準(zhǔn)期間執(zhí)行。無 論如何,當(dāng)基于深度估計(jì)來評(píng)估深度范圍時(shí),約1像素至約2像素的最優(yōu)模糊半徑的范圍被 用作約束條件以確定圖像捕獲指令。具有約1像素至約2像素的最優(yōu)模糊半徑的范圍確保 對(duì)于高頻內(nèi)容的區(qū)域(例如,在具有紋理的待捕獲場景中的區(qū)域(即,非平坦白色壁)),足 夠的深度信息將是可用的使得質(zhì)量深度圖可以從根據(jù)圖像捕獲指令而捕獲的圖像中生成。
[0030] 在一個(gè)示例中,為確定圖像捕獲指令(即,焦距設(shè)置、光圈設(shè)置和圖像數(shù)),本文所 描述的技術(shù)將光圈設(shè)置保持恒定,并且通過針對(duì)不同的深度估計(jì)計(jì)算焦距設(shè)置在整個(gè)深度 范圍中進(jìn)行迭代,使得由深度范圍內(nèi)的像素經(jīng)受的模糊是約1像素至約2像素。首先,初始 深度估計(jì)D0設(shè)置為等于深度范圍的最小深度Dmin,并且計(jì)算焦距設(shè)置E0 ( 即,位于距離E0 處的焦平面)。當(dāng)E0大于D0時(shí),計(jì)算焦距設(shè)置E0并且使得由初始深度估計(jì)D0的像素經(jīng)受 的模糊在針對(duì)焦距設(shè)置E0的約1像素至約2像素的最優(yōu)模糊半徑的范圍內(nèi)。以這種方式, 景深居中于E0處,并且較低深度值擴(kuò)展至Dmin(即,D0,因?yàn)镈min = D0)。然后,確定的焦 距設(shè)置E0可以用于評(píng)估景深的上范圍(例如,擴(kuò)展到E0上方)。該過程被迭代地繼續(xù)直到 D0大于或者等于深度范圍的最大深度Dmax,或者當(dāng)一些其他條件被滿足(例如,已經(jīng)執(zhí)行 預(yù)定數(shù)目的迭代,或者已經(jīng)達(dá)到目標(biāo)數(shù)量的圖像)。對(duì)整個(gè)深度范圍進(jìn)行歸類所需要的焦距 設(shè)置(例如,E0、E1等)的數(shù)目對(duì)應(yīng)于圖像捕獲指令的圖像數(shù)和焦距設(shè)置。在該示例中,圖 像的總數(shù)和對(duì)應(yīng)的焦距設(shè)置不是已知的,直到整個(gè)迭代完成。在一些示例中,焦距設(shè)置被操 縱、轉(zhuǎn)換、變換或者以其他方式調(diào)整以符合在數(shù)碼相機(jī)上可用的聚焦功能。
[0031] 在另一示例中,深度范圍和景深間隔在針對(duì)每個(gè)圖像確定圖像的數(shù)目和聚焦設(shè)置 之前被轉(zhuǎn)換為1/深度。使用1/深度生成圖像捕獲指令確保對(duì)于每個(gè)景深的景深間隔的長 度是相同的。然后,景深間隔在深度范圍內(nèi)等距使得確保景深間隔沒有間隙并且沒有重疊。 類似于上文,在該示例中,所使用的最優(yōu)模糊半徑的范圍是約1像素至約2像素。在該示例 中,假定模糊半徑根據(jù)深度倒數(shù)的變化率在整個(gè)深度范圍內(nèi)近似恒定。該假設(shè)對(duì)于大部分 透鏡應(yīng)當(dāng)是有效的,雖然對(duì)于不同的透鏡變化率可能是不同的。因此,對(duì)于每個(gè)透鏡,存在 表示深度倒數(shù)與模糊半徑之間的轉(zhuǎn)換因子的常數(shù)在該示例中,該過程通過在深度倒數(shù) 中取深度范圍的整個(gè)長度并且將其除以深度范圍內(nèi)的景深間隔的最大長度而開始。景深間 隔的最大長度通過將最優(yōu)模糊半徑的范圍除以轉(zhuǎn)換因子a來確定。這給出深度范圍內(nèi)的 景深間隔的總數(shù)。深度倒數(shù)中的深度范圍的總長然后除以景深間隔的總數(shù)以獲得每個(gè)景深 間隔的將填充整個(gè)深度范圍而沒有間隙并且沒有與其他重疊的最優(yōu)長度。對(duì)于具有最優(yōu)長 度的每個(gè)景深間隔,確定焦距設(shè)置。焦距設(shè)置的數(shù)目對(duì)應(yīng)于待捕獲的圖像的數(shù)目。因?yàn)楫?dāng) 評(píng)估每個(gè)景深間隔的最大長度時(shí),該示例中的過程考慮約1至約2像素的最優(yōu)模糊半徑的 范圍,足夠的深度信息將是可用的使得質(zhì)量深度圖可以從根據(jù)圖像捕獲指令捕獲的圖像中 生成。質(zhì)量深度圖具有清楚的深度似然(例如,似然,如果深度圖使用特定配置設(shè)置并且從 多個(gè)圖像生成,深度估計(jì)將很可能是實(shí)際真實(shí)世界的深度或者對(duì)于任何給定的像素集合只 有一個(gè)深度是可能的)。此外,該示例中的過程首先確定對(duì)應(yīng)于景深間隔數(shù)的圖像數(shù),并且 然后確定用于每個(gè)景深間隔的焦距設(shè)置。
[0032] 根據(jù)本文所描述的技術(shù),圖像捕獲指令可以指示待捕獲的圖像的數(shù)量和數(shù)碼相機(jī) 的用于捕獲用于深度圖生成的圖像的對(duì)應(yīng)的配置設(shè)置(例如,光圈設(shè)置和焦距設(shè)置)。圖 像可以根據(jù)那些指令被捕獲并且深度圖可以然后使用那些圖像生成。使用本文所描述的圖 像捕獲指令所生成的深度圖包括表示場景中的對(duì)象與數(shù)碼相機(jī)(即,在真實(shí)世界中拍攝照 片的位置)的距離的深度信息。用于深度圖的像素的距離至可以對(duì)應(yīng)于圖像的RGB像素。 深度圖可以用于例如改進(jìn)現(xiàn)有的圖像編輯技術(shù)。例如,圖像的深度信息可以用于對(duì)場景中 的前景對(duì)象和背景對(duì)象之間進(jìn)行更準(zhǔn)確地區(qū)分。這樣的區(qū)分可以與選擇圖像內(nèi)的對(duì)象(在 前景中還是在背景中)有關(guān)。通過圖示的方式,場景圖像可以描繪站立在樹(例如,背景元 素)前的小孩(例如,前景元素)。期望從場景中"剪掉"小孩的用戶可以通過使用圖像編 輯應(yīng)用選擇小孩的部分進(jìn)行指示。除諸如顏色和紋理之類的選擇線索之外,圖像編輯應(yīng)用 可以使用與圖像相關(guān)聯(lián)的深度信息,以生成待剪掉的小孩的輪廓。
[0033] 現(xiàn)在轉(zhuǎn)到附圖,圖1圖示了示出用于實(shí)現(xiàn)用于預(yù)測性地確定圖像捕獲指令和根據(jù) 如本文所描述的用于在深度圖生成中使用的那些指令捕獲圖像的技術(shù)的功能部件及其輸 入輸出的框圖1〇〇。第一部件是圖像特征引擎102。如本文所使用的,"引擎"指代實(shí)施在軟 件中的指令集,當(dāng)在處理器上執(zhí)行時(shí),該指令集使得處理器執(zhí)行一個(gè)或者多個(gè)功能。圖像特 征引擎102被配置為接收深度范圍信息104和相機(jī)校準(zhǔn)信息122。圖像特征引擎102被配 置為接收深度范圍信息104和相機(jī)校準(zhǔn)信息122。深度范圍信息104可以包括構(gòu)成場景的 估計(jì)距離、場景內(nèi)的對(duì)象的估計(jì)距離、場景內(nèi)的最近對(duì)象的估計(jì)距離、場景中的對(duì)象的平均 距離、場景中的至少一個(gè)對(duì)象的測量距離、場景的最近的對(duì)象的測量距離和/或能夠傳達(dá) 場景中的一個(gè)或者多個(gè)對(duì)象的距離的任何其他信息的用戶輸入或者自動(dòng)輸入。深度范圍信 息104涉及的場景的圖像使用圖像捕獲設(shè)備106進(jìn)行捕獲。圖像捕獲設(shè)備106可以是例如 數(shù)碼單反相機(jī)、傻瓜相機(jī)、移動(dòng)設(shè)備的集成相機(jī)、平板設(shè)備的集成相機(jī)、攝像機(jī)的集成相機(jī)、 筆記本計(jì)算機(jī)的集成相機(jī)或者用于捕獲圖像或者可以提取圖像的內(nèi)容的任何其他合適的 設(shè)備的相機(jī)部分。在一些示例中,圖像特征引擎102經(jīng)由用戶設(shè)備上的執(zhí)行或者與圖像特 征引擎102進(jìn)行通信的輸入接收深度范圍信息104。在一些示例中,深度范圍信息104部分 地基于圖像捕獲設(shè)備106的一個(gè)或者多個(gè)"拍攝模式"的選擇而編程地確定。例如,圖像特 征引擎102可以被實(shí)現(xiàn)在包括數(shù)碼相機(jī)的圖像捕獲設(shè)備106中,并且深度范圍信息104可 以對(duì)應(yīng)于數(shù)碼相機(jī)的各種拍攝模式(例如,風(fēng)景、肖像、大鏡頭、室內(nèi)、室外、運(yùn)動(dòng)等)中的一 種的選擇。這些模式中的每一種可以暗指場景的最小距離。在一些示例中,可以選擇不同 的拍攝模式,其暗指將由圖像特征引擎102使用的以確定圖像捕獲指令108的數(shù)碼相機(jī)的 最小光學(xué)特征。例如,特定的透鏡和相機(jī)組合可以具有兩個(gè)可能的光圈和1米的最小焦距。 通過選擇不同的拍攝模式,在確定圖像捕獲指令108中,圖像特征引擎102考慮兩個(gè)可能的 光圈設(shè)置和最小焦距。
[0034] 一旦接收到深度范圍信息104,圖像特征引擎102結(jié)合深度范圍信息104執(zhí)行一個(gè) 或者多個(gè)操作以便確定圖像捕獲指令108。例如,這樣的操作的示例結(jié)合圖2和圖3進(jìn)行描 述。最終,生成圖像捕獲指令108或其至少一部分的目的可以是從由圖像捕獲裝置106根 據(jù)圖像捕獲指令108捕獲的圖像118(1)-118(N)生成深度圖。深度圖包括場景內(nèi)的對(duì)象與 捕獲圖像118(1)_118(N)的觀察點(diǎn)的距離的估計(jì)。因此,在一些示例中,圖像特征引擎102 確定圖像捕獲指令108使得待生成的深度圖一旦生成就可以滿足某些要求。例如,這樣的 要求是由深度圖指示的深度是正確的(例如,對(duì)于具有4. 5米的實(shí)際距離的像素,指示像素 具有4-5米之間的估計(jì)距離的深度圖可以是合適的)某種程度的似然。為此,圖像特征引 擎102預(yù)測性地確定獲得這樣的深度圖所需要的圖像的數(shù)量110和配置設(shè)置112。
[0035] 特別地,圖像的數(shù)量110指示應(yīng)當(dāng)使用圖像捕獲設(shè)備106拍攝的圖像 118(1)-118(N)的數(shù)目,并且配置設(shè)置112指示用于捕獲圖像118⑴-118(N)的圖像捕獲裝 置106的設(shè)置使得將存在足夠的深度信息以便從圖像118(1)-118(N)生成質(zhì)量深度圖。在 一些實(shí)施例中,配置設(shè)置112指示當(dāng)捕獲由圖像的數(shù)量110標(biāo)識(shí)的推薦數(shù)目的圖像時(shí)應(yīng)當(dāng) 使用的光圈設(shè)置114和焦距設(shè)置116。光圈設(shè)置114涉及當(dāng)捕獲圖像時(shí)允許進(jìn)入相機(jī)的光 的量。使用調(diào)整光的量的刀片的機(jī)構(gòu)來調(diào)整相機(jī)的光圈。焦距設(shè)置116涉及焦平面與圖像 捕獲社保106(例如,數(shù)碼相機(jī))的距離,并且相應(yīng)地調(diào)整。在其他實(shí)施例中,配置設(shè)置112 附加地或者備選地包括可以影響不同深度處的圖像中的模糊級(jí)別的任何相機(jī)設(shè)置。
[0036] 在一些實(shí)施例中,當(dāng)生成圖像捕獲指令108,圖像特征引擎102強(qiáng)配置設(shè)置112與 圖像的數(shù)量110中的每個(gè)圖像相關(guān)聯(lián)。例如,假定圖像特征引擎102確定應(yīng)當(dāng)捕獲的圖像 的數(shù)量110是四。圖像特征引擎102也可以將特定光圈設(shè)置114和特定的焦距設(shè)置116與 四個(gè)圖像中的每個(gè)圖像相關(guān)聯(lián)。在一些示例中,對(duì)于四個(gè)圖像中的每個(gè)圖像,光圈設(shè)置114 和焦距設(shè)置116是不同的。然而,在一些示例中,光圈設(shè)置114中的至少一些和/或焦距設(shè) 置116中的至少一些是相同的。
[0037] 然后,圖像捕獲指令108被提供給圖像捕獲設(shè)備106。圖像捕獲設(shè)備106根據(jù) 圖像捕獲指令108配置以便捕獲圖像118(1)-118(N)。因?yàn)閳D像118(1)-118(N)根據(jù)圖 像捕獲指令108利用圖像捕獲設(shè)備106捕獲,圖像118(1)-118 (N)包括或者與配置信息 120(1)-120(N)相關(guān)聯(lián)。例如,圖像文件可以不僅存儲(chǔ)表示圖像的數(shù)據(jù),而且可以存儲(chǔ)表 示配置信息120(1)_120(N)的數(shù)據(jù)或者元數(shù)據(jù)。在其他示例中,配置信息120(1)-120(N) 被存儲(chǔ)在與適用的圖像文件相關(guān)聯(lián)的分離的文件中。配置信息120(1)與圖像118(1)相 關(guān)聯(lián);配置信息120(2)與圖像118(2)相關(guān)聯(lián),以此類推。用于圖像118(1)-118(N)中的 每個(gè)圖像的配置信息120(1)_120(N)至少包括由圖像捕獲設(shè)備106使用的用以捕獲圖像 118(1)-118(N)的光圈配置和焦距配置。
[0038] 圖2圖示了用于生成用于在如本文所描述的深度圖生成中使用的圖像捕獲指令 108的圖像特征引擎102的示例配置。圖像特征引擎102可以由實(shí)現(xiàn)本文所公開的用于 生成圖像捕獲指令108的功能中的一些或者全部的一個(gè)或者多個(gè)引擎、子引擎、模塊、子模 塊、部件和/或服務(wù)組成,或者被配置成對(duì)其進(jìn)行管理。在一些示例中,圖像特征引擎102 包括通信服務(wù)204、拍攝模式服務(wù)106和圖像捕獲指令服務(wù)208。雖然各種服務(wù)在圖4中圖 示并且將參考圖6和圖7描述為執(zhí)行分立任務(wù),但是應(yīng)當(dāng)理解的是,圖2僅圖示了示例配置 并且用于執(zhí)行其他任務(wù)和/或與本文所描述的任務(wù)類似的任務(wù)的其他配置也可以被實(shí)現(xiàn)。
[0039] 通信服務(wù)204被配置成管理圖像特征引擎102的其他服務(wù)和與圖像特征引擎102 通信的其他設(shè)備或者部件(例如,硬件和/或軟件部件)之間的通信。例如,深度范圍信息 104由通信服務(wù)204接收。在一些示例中,深度范圍信息104被提供給圖像特征引擎102的