本發明涉及圖像處理技術領域,具體涉及一種圖片合成方法及系統。
背景技術:
隨著電子設備的發展,具有照相功能的終端在人們的生活中已經得到了普及。功能越來越豐富的終端極大地方便了人們的生活。近年來,圖像處理技術飛速發展,終端的照相功能也日益強大,加上終端攜帶方便的優點,越來越多的用戶青睞通過終端進行拍照。
為了提高終端的拍照效果,越來越多的終端采用彩色加黑白雙攝像頭的解決方案。所述彩色黑白雙攝像頭的解決方案,就是利用兩顆攝像頭同時成像,再通過后期合成處理,這樣既保留了彩色攝像頭的顏色信息,又可以保證黑白攝像頭的清晰度,從而提升畫質。
在照片合成時,往往需要復雜的算法,因此,可能會占用cpu大量的處理能力,導致照片的合成速度慢,嚴重影響用戶體驗。
技術實現要素:
鑒于以上內容,有必要提出一種圖片合成方法,其可以提高照片合成時的速度,提高用戶體驗。
一種圖片合成方法,應用于電子設備中,包括:
當檢測到預設指令時,啟動所述電子設備的第一攝像頭和第二攝像頭的圖像采集功能,并在檢測到拍照指令時,控制所述第一攝像頭及所述第二攝像頭進行拍照,并獲取所述第一攝像頭拍攝到的第一圖像以及所述第二攝像頭拍攝到的第二圖像;
啟動圖像合成算法,并將所述合成算法分成多個線程;
利用所述電子設備的第一處理器對所述第一圖像以及所述第二圖像執行所述圖像合成算法中的一部分線程,所述電子設備的第二處理器對所述第一圖像以及所述第二圖像并行執行所述圖像合成算法中的剩余部分線程,以完成所述第一圖像以及第二圖像的合成處理;及
將合成后的圖像實時輸出至所述電子設備的顯示單元中,顯示所述合成后的圖像。
本發明優選實施例中,所述第一攝像頭為rgb傳感器,以及所述第二攝像頭為單色傳感器。
本發明優選實施例中,所述第一處理器為微處理器,以及所述第二處理器為數字處理器。
本發明優選實施例中,所述多個線程包括圖像色彩信息提取線程、圖像亮度信息提取線程以及輪廓信息提取線程。
鑒于以上內容,還有必要提出一種圖片合成系統,其可以提高照片合成時的速度,提高用戶體驗。
一種圖片合成系統,應用于電子設備中,包括:
啟動模塊,用于當檢測到預設指令時,啟動所述電子設備的第一攝像頭和第二攝像頭的圖像采集功能;
拍攝模塊,用于在檢測到拍照指令時,控制所述第一攝像頭及所述第二攝像頭進行拍照,并獲取所述第一攝像頭拍攝到的第一圖像以及所述第二攝像頭拍攝到的第二圖像;
處理模塊,用于啟動圖像合成算法,并將所述合成算法分成多個線程;
第一合成模塊,用于對所述第一圖像以及所述第二圖像執行所述圖像合成算法中的一部分線程;
第二合成模塊,用于對所述第一圖像以及所述第二圖像并行執行所述圖像合成算法中的剩余部分線程;及
輸出模塊,用于將合成后的圖像實時輸出至電子設備的顯示單元中,顯示所述合成后的圖像。
本發明優選實施例中,所述第一攝像頭為rgb傳感器,以及所述第二攝像頭為單色傳感器。
本發明優選實施例中,所述第一合成模塊由所述電子設備的第一處理器所執行,以及所述第二合成模塊由所述電子設備的第二處理器所執行。
本發明優選實施例中,所述第一處理器為微處理器以及所述第二處理器為數字處理器。
本發明優選實施例中,所述多個線程包括圖像色彩信息提取線程、圖像亮度信息提取線程以及輪廓信息提取線程。
相較于現有技術,本發明所述的圖片合成方法及系統利用兩個處理器分別執行圖像的合成,加快了照片合成時的速度,提高了用戶體驗。
附圖說明
為了更清楚地說明本發明實施例技術方案,下面將對實施例和現有技術描述中所需要使用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖僅僅是本發明的一些實施例,對于本領域普通技術人員來講,在不付出創造性勞動的前提下,還可以根據這些附圖獲得其它的附圖。
圖1是本發明所述圖片合成方法較佳實施例的方法流程圖。
圖2是本發明所述圖片合成系統較佳實施例的結構示意圖。
圖3是本發明實施例提供的電子設備的結構示意圖。
主要元件符號說明
電子設備1
存儲器11
第一處理器12
第二處理器13
第一攝像頭14
第二攝像頭15
顯示單元16
通信總線17
圖片合成系統10
啟動模塊100
拍攝模塊101
處理模塊102
第一合成模塊103
第二合成模塊104
輸出模塊105
具體實施方式
本發明實施例提供一種圖片合成方法,其利用兩個處理器分別執行圖像的合成,加快了照片合成時的速度,提高了用戶體驗。本發明實施例還提供相應的圖片合成系統、電子設備以及計算機可讀存儲介質。
為了使本技術領域的人員更好地理解本發明方案,下面將結合本發明實施例中的附圖,對本發明實施例中的技術方案進行清楚、完整地描述,顯然,所描述的實施例僅僅是本發明一部分的實施例,而不是全部的實施例。基于本發明中的實施例,本領域普通技術人員在沒有做出創造性勞動前提下所獲得的所有其他實施例,都應當屬于本發明保護的范圍。
下面通過具體實施例,分別進行詳細的說明。
實施例一、
圖1是本發明所述圖片合成方法較佳實施例的方法流程圖。
根據不同的需求,該圖所示流程圖中的執行順序可以改變,某些可以省略。
本發明所述圖片合成方法可以應用于一個電子設備中。所述電子設備可以是,但不限于,例如,個人計算機,智能手機,平板電腦,以及智能穿戴設備等包括有攝像裝置的設備。
本發明其他較佳實施例中,所述電子設備也可以直接是一個具有數據處理與數據存儲能力的攝像裝置。
參閱圖1所示,所述圖片合成方法包括:
s10,所述電子設備的第一處理器當檢測到預設指令時,啟動所述電子設備的第一攝像頭和第二攝像頭的圖像采集功能。
本發明較佳實施例中,所述預設指令可以根據需要設定。例如,所述預設指令可以是所述電子設備的一個預設虛擬按鍵或者物理按鍵被點擊時產生的指令。所述預設指令用于觸發所述電子設備控制開啟所述第一攝像頭和第二攝像頭,使得所述第一攝像頭以及所述第二攝像頭在其攝像范圍內進行圖像采集。
本發明較佳實施例中,所述第一攝像頭為rgb傳感器,用于拍攝彩色圖像,以及所述第二攝像頭為單色傳感器,用于拍攝黑白圖像。
所述單色傳感器只獲取任何給定點的射入光線,不考慮光線的顏色,因此,單色傳感器可以從場景中抓取更豐富的細節,如物體輪廓細節以及亮度信息等。
s11,所述電子設備的第一處理器檢測到拍照指令時,控制所述第一攝像頭及所述第二攝像頭進行拍照,并獲取所述第一攝像頭拍攝到的第一圖像以及所述第二攝像頭拍攝到的第二圖像。
如上所述,所述第一攝像頭為rgb傳感器,以及所述第二攝像頭為單色傳感器。因此,所述獲取的第一圖像為彩色圖像,以及所述第二圖像為黑白圖像。
s12,所述電子設備的第一處理器啟動圖像合成算法,并將所述合成算法分成多個線程。
本發明較佳實施例中,所述圖像合成算法可以為現有技術中任何用于將兩張或者多張圖像合稱為一張圖像的算法。
將所述圖像合成算法分成的多個線程可以包括,圖像色彩信息提取線程、圖像亮度信息提取線程、輪廓信息提取線程等。
s13,所述電子設備利用第一處理器對所述第一圖像以及所述第二圖像執行所述合成算法中的一部分線程,將所述合成算法中的剩余線程分配給第二處理器執行,以并行完成所述第一圖像以及第二圖像的合成處理。
s14,所述電子設備的第一處理器將合成后的圖像實時輸出至電子設備的顯示單元中,輸出所述合成后的圖像。
上述圖1詳細介紹了本發明的圖片合成方法,下面結合第2~3圖,分別對實現上述圖片合成方法的圖片合成系統以及電子設備進行介紹。
應該了解,所述實施例僅為說明之用,在專利申請范圍上并不受此結構的限制。
實施例二、
如圖2所示,是本發明所述圖片合成系統較佳實施例的結構示意圖。本發明較佳實施例中,所述圖片合成系統10可以包括多個由計算機程序代碼所組成的程序段,可以安裝在電子設備中,并由所述電子設備所執行,以實現圖片合成。
本實施例中,圖2所示的圖片合成系統10根據其所執行的功能,可以被劃分為多個功能模塊,例如,至少包括:啟動模塊100、拍攝模塊101、處理模塊102、第一合成模塊103、第二合成模塊104以及輸出模塊105。
所述啟動模塊100用于當檢測到預設指令時,啟動第一攝像頭和第二攝像頭的圖像采集功能。
本發明較佳實施例中,所述預設指令可以根據需要設定。例如,所述預設指令可以是所述電子設備的一個預設虛擬按鍵或者物理按鍵被點擊時產生的指令。所述預設指令用于觸發所述電子設備控制開啟所述第一攝像頭和第二攝像頭,使得所述第一攝像頭以及所述第二攝像頭在其攝像范圍內進行圖像采集。
本發明較佳實施例中,所述第一攝像頭為rgb傳感器,用于拍攝彩色圖像,以及所述第二攝像頭為單色傳感器,用于拍攝黑白圖像。
所述單色傳感器只獲取任何給定點的射入光線,不考慮光線的顏色,因此,單色傳感器可以從場景中抓取更豐富的細節,如物體輪廓細節以及亮度信息等。
所述拍攝模塊101用于在檢測到拍照指令時,控制所述第一攝像頭及所述第二攝像頭進行拍照,并獲取所述第一攝像頭拍攝到的第一圖像以及所述第二攝像頭拍攝到的第二圖像。
如上所述,所述第一攝像頭為rgb傳感器以及所述第二攝像頭為單色傳感器。因此,所述第一圖像為彩色圖像,所述第二圖像為黑白圖像。
所述處理模塊102用于啟動圖像合成算法,并將所述合成算法分成多個線程。
本發明較佳實施例中,所述圖像合成算法可以為現有技術中任何用于將兩張或者多張圖像合稱為一張圖像的算法。
將所述圖像合成算法分成的多個線程可以包括,圖像色彩信息提取線程、圖像亮度信息提取線程、輪廓信息提取線程等。
所述第一合成模塊103用于對所述第一圖像以及所述第二圖像執行所述合成算法中的一部分線程,以及所述第二合成模塊104用于對所述第一圖像以及所述第二圖像執行所述合成算法中的剩余線程,以并行完成所述第一圖像以及第二圖像的合成處理。
本發明較佳實施例中,所述第一合成模塊103由所述電子設備的第一處理器所執行,以及所述第二合成模塊104由所述電子設備的第二處理器所執行。
所述第一處理器以及第二處理器可以包括一個或者多個微處理器(microcontrollerunit,mcu)、一個或者多個數字處理器(digitalsignalprocessor,dsp)等。
本發明較佳實施例中,所述第一處理器為mcu以及所述第二處理器為dsp。
所述輸出模塊105用于將合成后的圖像實時輸出至電子設備的顯示單元中,輸出所述合成后的圖像。
上述以軟件功能模塊的形式實現的集成單元,可以存儲在一個計算機可讀取存儲介質中。上述軟件功能模塊存儲在一個存儲介質中,包括若干指令用以使得一臺電子設備(可以是個人計算機,智能手機,平板電腦,以及智能穿戴設備等)或處理器(processor)執行本發明各個實施例所述方法的部分步驟。
實施例三、
如圖3所示,是實現本發明所述圖片合成方法的電子設備的結構示意圖。
本發明所述電子設備1可以是,但不限于,例如,個人計算機、智能手機,平板電腦,以及智能穿戴設備,包括手表、手環、眼鏡等。
如圖3所示,本發明實施例中的電子設備1包括至少一個存儲器11、第一處理器12、第二處理器13、第一攝像頭14、第二攝像頭15、顯示單元16以及通信總線17。
其中,所述通信總線17用于實現所述存儲器11、第一處理器12、第二處理器13、第一攝像頭14、第二攝像頭15以及顯示單元16之間的連接通信。
本發明較佳實施例中,所述第一攝像頭14為rgb傳感器,用于拍攝彩色圖像,以及所述第二攝像頭15頭為單色傳感器,用于拍攝黑白圖像。
所述顯示單元16用于輸出所述第一攝像頭14及第二攝像頭15產生的圖像。
所述存儲器11用于存儲所述圖片合成系統10中各個程序段的程序代碼。所述存儲器11可以為智能媒體卡(smartmediacard)、安全數字卡(securedigitalcard)、快閃存儲器卡(flashcard)等儲存設備。
所述第一處理器12以及第二處理器13可以包括一個或者多個微處理器(microcontrollerunit,mcu)、一個或者多個數字處理器(digitalsignalprocessor,dsp)等。
本發明較佳實施例中,所述第一處理器12為mcu以及所述第二處理器13為dsp。
所述第一處理器12以及第二處理器13可執行所述電子設備1的操作系統以及安裝的各類應用程序、程序代碼等,例如所述圖片合成系統10。本發明較佳實施例中,所述第一處理器12以及第二處理器13可通過所述通信總線17,調用所述存儲器11中存儲的程序代碼以執行相關的功能。例如,圖2中所述的模塊,包括啟動模塊100、拍攝模塊101、處理模塊102、第一合成模塊103以及輸出模塊105可以由所述第一處理器12所執行,以及圖2中所述的第二合成模塊104可以由所述第二處理器13所執行,以實現一種圖片合成方法。
具體而言,所述圖片合成方法包括:
當檢測到預設指令時,啟動所述電子設備的第一攝像頭和第二攝像頭的圖像采集功能,并在檢測到拍照指令時,控制所述第一攝像頭及所述第二攝像頭進行拍照,并獲取所述第一攝像頭拍攝到的第一圖像以及所述第二攝像頭拍攝到的第二圖像;
啟動圖像合成算法,并將所述合成算法分成多個線程;
利用所述電子設備的第一處理器對所述第一圖像以及所述第二圖像執行所述圖像合成算法中的一部分線程,所述電子設備的第二處理器對所述第一圖像以及所述第二圖像并行執行所述圖像合成算法中的剩余部分線程,以完成所述第一圖像以及第二圖像的合成處理;及
將合成后的圖像實時輸出至所述電子設備的顯示單元中,顯示所述合成后的圖像。
本發明優選實施例中,所述第一攝像頭為rgb傳感器,以及所述第二攝像頭為單色傳感器。
本發明優選實施例中,所述第一處理器為微處理器,以及所述第二處理器為數字處理器。
本發明優選實施例中,所述多個線程包括圖像色彩信息提取線程、圖像亮度信息提取線程以及輪廓信息提取線程。
實施例四、
本發明實施例還提供一種存儲一個或多個程序的計算機可讀存儲介質,所述一個或多個程序包括指令,所述指令當被包括一個或多個處理器的電子設備執行時,使所述電子設備執行如上文方法實施例所述的一種電子設備的圖片合成方法。
在上述實施例中,對各個實施例的描述都各有側重,某個實施例中沒有詳細描述的部分,可以參見其它實施例的相關描述。
需要說明的是,對于前述的各方法實施例,為了簡單描述,故將其都表述為一系列的動作組合,但是本領域技術人員應該知悉,本發明并不受所描述動作順序的限制,因為依據本發明,某些步驟可以采用其它順序或者同時進行。其次,本領域技術人員也應該知悉,說明書中所描述的實施例均屬于優選實施例,所涉及的動作和模塊并不一定是本發明所必須的。
本領域普通技術人員可以理解上述實施例的各種方法中的全部或部分步驟是可以通過程序來指令相關的硬件來完成,該程序可以存儲于一計算機可讀存儲介質中,存儲介質可以包括:rom、ram、磁盤或光盤等。
在本發明所提供的幾個實施例中,應該理解到,所揭露的系統和方法,可以通過其它的方式實現。例如,以上所描述的系統實施例僅僅是示意性的,例如,所述模塊的劃分,僅僅為一種邏輯功能劃分,實際實現時可以有另外的劃分方式。
所述作為分離部件說明的模塊可以是或者也可以不是物理上分開的,作為模塊顯示的部件可以是或者也可以不是物理單元,即可以位于一個地方,或者也可以分布到多個網絡單元上。可以根據實際的需要選擇其中的部分或者全部模塊來實現本實施例方案的目的。
另外,在本發明各個實施例中的各功能模塊可以集成在一個處理單元中,也可以是各個單元單獨物理存在,也可以兩個或兩個以上單元集成在一個單元中。上述集成的單元既可以采用硬件的形式實現,也可以采用硬件加軟件功能模塊的形式實現。
對于本領域技術人員而言,顯然本發明不限于上述示范性實施例的細節,而且在不背離本發明的精神或基本特征的情況下,能夠以其他的具體形式實現本發明。因此,無論從哪一點來看,均應將實施例看作是示范性的,而且是非限制性的,本發明的范圍由所附權利要求而不是上述說明限定,因此旨在將落在權利要求的等同要件的含義和范圍內的所有變化涵括在本發明內。不應將權利要求中的任何附關聯圖標記視為限制所涉及的權利要求。此外,顯然“包括”一詞不排除其他單元或步驟,單數不排除復數。系統權利要求中陳述的多個模塊或系統也可以由一個模塊或系統通過軟件或者硬件來實現。第一,第二等詞語用來表示名稱,而并不表示任何特定的順序。
最之后應說明的是,以上實施例僅用以說明本發明的技術方案而非限制,盡管參照較佳實施例對本發明進行了詳細說明,本領域的普通技術人員應當理解,可以對本發明的技術方案進行修改或等同替換,而不脫離本發明技術方案的精神和范圍。