帶攝像頭的移動終端及其視頻處理方法
2023-10-10 03:04:29 1
專利名稱:帶攝像頭的移動終端及其視頻處理方法
技術領域:
本發明涉及移動通信領域,尤其涉及帶攝像頭的移動終端及其拍攝方法。
背景技術:
隨著網絡的普及和移動終端的推廣,多媒體應用成為購買者衡量移動終端是否符合購買需求的重要指標。目前大部分的移動終端都支持視頻記錄功能,很多視頻網站和博客,也都支持視頻的上傳和分享,因此,用戶使用移動終端拍攝視頻並上傳至網際網路與人分享,已然成為一種時尚。現有的移動終端視頻採集,存在以下的一些缺點,首先,視頻解析度不夠高,圖像質量差,隨著終端晶片的升級和改進,情況已經逐步得到改善。目前,支持高清視頻拍攝的移動終端已經成為高端智能終端的主流,並逐步向中低端設備推廣。其次,移動終端不同於專業的攝像機或者DV,其對焦系統和焦距均較專門的拍攝器材有一定的差距。此外,由於移動終端拍攝多是用來記錄突發事件或僅是隨意拍攝,因此在拍攝過程中,使用者會存在找尋畫面、走動、手抖動、追拍等動作,導致畫面抖動厲害,圖像質量低。尤其表現在當用戶啟動攝像後,由於取景和對焦,往往導致畫面抖動或者大幅度的運動。此時,由於編碼器按前後幀的運動估計來進行編碼,而物體在圖像上的運動距離過大,解碼後會產生在運動方向上非常嚴重的拖影,甚至導致完全看不清畫面。目前在防抖技術上,大多通過在相繼的圖像幀之間的運動估計來計算抖動,從而對抖動進行視頻編碼的補償,但首先計算本身就是通過估計,且當抖動過大即手持設備產生大幅運動時,此種方法會造成更嚴重的失真。
發明內容
本發明實施例針對手持移動終端攝像獲取的視頻,因移動終端的運動而產生失真的問題,提出了如下解決方案。本發明實施例提供一種視頻處理方法,應用於帶攝像頭的移動終端,包括接收圖像傳感器獲取的視頻幀;接收加速度傳感器檢測到的視頻幀獲取時移動終端的當前運動狀態;將當前運動狀態標識在視頻幀上;將攜帶移動終端的當前運動狀態的視頻幀發送給編碼器;編碼器依據當前運動狀態對收到的視頻幀進行編碼。較優的,當前運動狀態按檢測到的加速度所處的門限值區間劃分當前運動狀態的
等級;編碼器依據當前運動狀態對收到的視頻幀進行編碼具體為依據當前運動狀態的等級,或者根據當前運動狀態的等級以及視頻幀所在的一定長度的幀序列中各視頻幀的編碼方式,確定對視頻幀採取的編碼方式,為幀內編碼幀I幀、幀間預測編碼幀P幀或雙向預測編碼幀B幀。
5
更優的,當前運動狀態按檢測到的加速度所處的門限值區間劃分當前運動狀態的等級為,當檢測到的加速度小於第一門限值時,當前運動狀態等級為靜止;當檢測到的加速度大於第三門限值時,當前運動狀態等級為劇烈;依據當前運動狀態的等級確定對視頻幀採取的編碼方式為,當前運動狀態為劇烈時,採用I幀的編碼方式;根據當前運動狀態的等級以及當前視頻幀所在的一定長度的幀序列中各視頻幀的編碼方式,確定對視頻幀採取的編碼方式為,加速度所處的門限值區間越低,視頻幀所在的一定長度的幀序列中採用B幀編碼方式的視頻幀越多。較優的,當加速度傳感器檢測平行於攝像頭焦平面的橫向和縱向加速度時,當前運動狀態按檢測到的加速度所處的門限值區間劃分當前運動狀態的等級為按檢測到橫向和縱向加速度的更高值所處的門限區間劃分的當前運動狀態的等級;按檢測到橫向加速度平方與縱向加速度平方之和的開平方根所處的門限區間劃分當前運動狀態的等級;或者獲得橫向和縱向加速度的分別所處的各自門限值區間的等級,取其中更高等級做為當前運動狀態的等級。本發明提供另一種視頻處理方法實施例,應用於帶攝像頭的移動終端,包括如下步驟使所速度傳感器以圖像傳感器的最高幀頻,對移動終端的當前運動狀態進行檢測;接收圖像傳感器獲取的視頻幀;接收加速度傳感器檢測到的移動終端的當前運動狀態,並標識在視頻幀上;根據當前運動狀態調整圖像傳感器的幀頻;當圖像傳感器的幀頻高於編碼器的輸出幀頻時,根據當前運動狀態,判斷選擇或放棄視頻幀發送給編碼器;編碼器對收到的視頻幀進行編碼。較優的,當前運動狀態按檢測到的加速度所處的門限值區間劃分當前運動狀態的
等級;編碼器對收到的視頻幀進行編碼具體為,依據當前運動狀態的等級,或者根據當前運動狀態的等級以及視頻幀所在的一定長度的幀序列中各視頻幀的編碼方式,確定對所述視頻幀採取的編碼方式,並對視頻幀進行編碼,編碼方式為幀內編碼幀I幀、幀間預測編碼幀P幀或雙向預測編碼幀B幀。較優的,當所速度傳感器檢測平行於所述攝像頭焦平面的橫向和縱向加速度時, 當前運動狀態按檢測到的加速度所處的門限值區間劃分當前運動狀態的等級為按檢測到橫向和縱向加速度的更高值所處的門限區間劃分的當前運動狀態的等級;按檢測到橫向加速度平方與縱向加速度平方之和的開平方根所處的門限區間劃分當前運動狀態的等級;或者獲得橫向和縱向加速度的分別所處的各自門限值區間的等級,取其中更高等級做為當前運動狀態的等級。
本發明同時提供了一種帶攝像頭的移動終端裝置實施例,包括圖像傳感器、編碼器、加速度傳感器和中央處理器CPU,其中圖像傳感器用於從攝像頭獲取視頻幀,並發送給CPU ;加速度傳感器用於檢測移動終端的當前運動狀態,並發送給CPU ;CPU用於接收所述圖像傳感器發送的視頻幀,以及加速度傳感器發送的移動終端當前運動狀態,將當前運動狀態標識在視頻幀上,並將攜帶移動終端的當前運動狀態的視頻幀發送給編碼器;編碼器用於對接收到的視頻幀進行編碼。較優的,加速度傳感器具體用於,按照檢測到的加速度所處的門限值區間劃分當前運動狀態的等級,並發送給所述CPU ;編碼器具體用於,依據所述當前運動狀態的等級,或者根據所述當前運動狀態的等級以及當前視頻幀所在的一定長度的幀序列中各視頻幀的編碼方式,確定對所述視頻幀採取的編碼方式,並對所述視頻幀進行編碼,所述編碼方式為幀內編碼幀I幀、幀間預測編碼幀P幀或雙向預測編碼幀B幀。更優的,加速度傳感器具體用於,當檢測到的加速度小於第一門限值時,當前運動狀態為靜止;當檢測到的加速度大於第三門限值時,當前運動狀態為劇烈;編碼器具體用於,當前運動狀態為劇烈時,採用I幀的編碼方式;所述加速度所處的門限值區間越低,所述視頻幀所在的一定長度的幀序列中採用B幀編碼方式的視頻幀越
^^ ο本發明提供了另一種帶攝像頭的移動終端裝置實施例,包括圖像傳感器、編碼器、 加速度傳感器和中央處理器CPU,其中加速度傳感器用於,以圖像傳感器的最高幀頻,檢測移動終端的當前運動狀態,並將檢測到的當前運動狀態發送給所述CPU ;圖像傳感器用於從攝像頭獲取視頻幀,將獲取得視頻幀發送給所述CPU,並接受 CPU對所述圖像傳感器的幀頻控制;CPU用於接收所述加速度傳感器發送的移動終端當前運動狀態,並根據接收到的當前運動狀態,調整圖像傳感器的幀頻;同時接收圖像傳感器獲取的視頻幀,按編碼器的輸出幀頻向編碼器發送視頻幀;所述編碼器用於對接收到的視頻幀進行編碼。較優的,CPU具體用於,接收加速度傳感器發送的移動終端當前運動狀態,並根據接收到的當前運動狀態,調整圖像傳感器的幀頻;同時接收圖像傳感器獲取的視頻幀,當圖像傳感器的當前幀頻高於所述編碼器的輸出幀頻時,根據接收到的當前運動狀態,判斷選擇或放棄當前視頻幀發送給編碼器。更優的,編碼器具體用於,依據所述當前運動狀態的等級,或者根據所述當前運動狀態的等級以及當前視頻幀所在的一定長度的幀序列中各視頻幀的編碼方式,確定對當前視頻幀採取的編碼方式,所述編碼方式為幀內編碼幀I幀、幀間預測編碼幀P幀或雙向預測編碼幀B幀。更優的,加速度傳感器具體用於,檢測平行於所述攝像頭焦平面的橫向和縱向加速度;所述當前運動狀態的等級為
按檢測到橫向和縱向加速度的更高值所處的門限區間所對應的當前運動狀態的等級;按檢測到橫向加速度平方與縱向加速度平方之和的開平方根所處的門限區間所對應的當前運動狀態的等級;或者橫向和縱向加速度的分別所處的各自門限值區間的等級中的更高等級。本發明的實施例根據檢測移動終端的運動信息來動態調整編碼方式,或者根據檢測移動終端的運動信息來動態調整圖像傳感器的幀頻,再依據運動狀態選擇其中的視頻幀進行編碼,可明顯的提高移動終端處於運動狀態尤其是大幅運動狀態時拍攝到的圖像的品質。
圖1為本發明一方法實施方式的流程圖;圖2為本發明一方法實施例的流程圖;圖3為本發明另一方法實施例的流程圖;圖4為本發明一裝置實施例的方框圖。
具體實施例方式下面結合附圖對本發明進行進一步具體描述。在視頻編碼的過程中,通過加速度傳感器獲取當前幀處理過程中手機的運動方向以及相應的運動估值,並作為圖像編碼中的起始參數傳送給編碼器。編碼器根據該運動參數,進行自適應的編碼效果和壓縮率的調整,達到優化的視頻效果。如圖1所示,本發明提供的一視頻處理方法的實施方式的主要步驟包括接收圖像傳感器獲取的視頻幀;接收加速度傳感器檢測到的所述視頻幀獲取時所述移動終端的當前運動狀態;將所述當前運動狀態標識在所述視頻幀上;將攜帶所述移動終端的當前運動狀態的所述視頻幀發送給編碼器;所述編碼器依據當前運動狀態對收到的所述視頻幀進行編碼。如圖2所示,本發明提供上述實施方式中的一視頻處理方法的實施例的主要步驟包括步驟100 終端接到啟動視頻拍攝程序的命令。步驟101 終端的CPU初始化攝像頭和視頻編碼器程序,檢測用戶設定,如果設定中已經打開視頻質量增強程序,則啟動三軸加速度傳感器,並將其I2C總線的速度調至最高,進行高速運動狀態捕獲。如果暫未啟動視頻質量增強程序,則進入步驟105,進行常規的視頻拍攝。常用的三軸傳感器如freescale的MMA8451Q,可以支持到2. 2Mb的I2C總線傳輸速度,可以精細到每圖像幀周期,提供精確的加速度變化數據。而CPU和加速度傳感器,目前大多數帶攝像頭的手機已經具有。上述過程中,也可將視頻質量增強程序設為自動;或者,當檢測用戶設定中已經打開該增強程序,即直接啟動三軸加速度傳感器;如果檢測結果為暫未打開該增強程序,則在界面彈出對話框,詢問用戶是否啟動該增強程序,得到「確定」的消息後,再啟動三軸加速度傳感器。步驟102 :CPU根據幀頻,連續檢測加速度傳感器的輸出值變化,並通過加速度和時間的關係,計算移動終端的當前運動狀態。如果在X軸、Y軸或者Z軸向發生了運動,則將運動加速度和內置的門限數值進行比較,以獲得當前運動狀態等級。加速度是一個矢量值,其數值大小即上述當前運動加速度一般為三軸加速度的平方總和的開平方根
權利要求
1.一種視頻處理方法,應用於帶攝像頭的移動終端,其特徵在於,包括 接收圖像傳感器獲取的視頻幀;接收加速度傳感器檢測到的所述視頻幀獲取時所述移動終端的當前運動狀態; 將所述當前運動狀態標識在所述視頻幀上; 將攜帶所述移動終端的當前運動狀態的所述視頻幀發送給編碼器; 所述編碼器依據當前運動狀態對收到的所述視頻幀進行編碼。
2.根據權利要求1所述的方法,其特徵在於,所述當前運動狀態按檢測到的加速度所處的門限值區間劃分當前運動狀態的等級;所述編碼器依據當前運動狀態對收到的視頻幀進行編碼具體為依據所述當前運動狀態的等級,或者根據所述當前運動狀態的等級以及所述視頻幀所在的一定長度的幀序列中各視頻幀的編碼方式,確定對所述視頻幀採取的編碼方式,所述編碼方式為幀內編碼幀I 幀、幀間預測編碼幀P幀或雙向預測編碼幀B幀。
3.根據權利要求2所述的方法,其特徵在於,所述當前運動狀態按檢測到的加速度所處的門限值區間劃分當前運動狀態的等級為,當檢測到的加速度小於第一門限值時,當前運動狀態等級為靜止;當檢測到的加速度大於第三門限值時,當前運動狀態等級為劇烈;依據所述當前運動狀態的等級確定對視頻幀採取的編碼方式為,當前運動狀態為劇烈時,採用I幀的編碼方式;根據所述當前運動狀態的等級以及當前視頻幀所在的一定長度的幀序列中各視頻幀的編碼方式,確定對所述視頻幀採取的編碼方式為,所述加速度所處的門限值區間越低,所述視頻幀所在的一定長度的幀序列中採用B幀編碼方式的視頻幀越多。
4.根據權利要求2或3所述的方法,其特徵在於,當所述加速度傳感器檢測平行於所述攝像頭焦平面的橫向和縱向加速度時,所述當前運動狀態按檢測到的加速度所處的門限值區間劃分當前運動狀態的等級為按檢測到橫向和縱向加速度的更高值所處的門限區間劃分的當前運動狀態的等級; 按檢測到橫向加速度平方與縱向加速度平方之和的開平方根所處的門限區間劃分當前運動狀態的等級;或者獲得橫向和縱向加速度的分別所處的各自門限值區間的等級,取其中更高等級做為當前運動狀態的等級。
5.一種視頻處理方法,應用於帶攝像頭的移動終端,其特徵在於,包括使所述加速度傳感器以圖像傳感器的最高幀頻,對所述移動終端的當前運動狀態進行檢測;接收圖像傳感器獲取的視頻幀;接收加速度傳感器檢測到的所述移動終端的當前運動狀態,並標識在所述視頻幀上; 根據所述當前運動狀態調整所述圖像傳感器的幀頻;當所述圖像傳感器的幀頻高於所述編碼器的輸出幀頻時,根據所述當前運動狀態,判斷選擇或放棄當前視頻幀發送給所述編碼器; 所述編碼器對收到的視頻幀進行編碼。
6.根據權利要求5所述的方法,其特徵在於,所述當前運動狀態按檢測到的加速度所處的門限值區間劃分當前運動狀態的等級;所述編碼器對收到的視頻幀進行編碼具體為,依據所述當前運動狀態的等級,或者根據所述當前運動狀態的等級以及所述視頻幀所在的一定長度的幀序列中各視頻幀的編碼方式,確定對所述視頻幀採取的編碼方式,並對所述視頻幀進行編碼,所述編碼方式為幀內編碼幀I幀、幀間預測編碼幀P幀或雙向預測編碼幀B幀。
7.根據權利要求6所述的方法,其特徵在於,當所述加速度傳感器檢測平行於所述攝像頭焦平面的橫向和縱向加速度時,所述當前運動狀態按檢測到的加速度所處的門限值區間劃分當前運動狀態的等級為按檢測到橫向和縱向加速度的更高值所處的門限區間劃分的當前運動狀態的等級;按檢測到橫向加速度平方與縱向加速度平方之和的開平方根所處的門限區間劃分當前運動狀態的等級;或者獲得橫向和縱向加速度的分別所處的各自門限值區間的等級,取其中更高等級做為當前運動狀態的等級。
8.一種帶攝像頭的移動終端,包括圖像傳感器、編碼器、加速度傳感器和中央處理器 CPU,其特徵在於所述圖像傳感器用於從攝像頭獲取視頻幀,並發送給CPU ;所述加速度傳感器用於檢測所述移動終端的當前運動狀態,並發送給所述CPU ;所述CPU用於接收所述圖像傳感器發送的視頻幀,以及加速度傳感器發送的移動終端當前運動狀態,將所述當前運動狀態標識在所述視頻幀上,並將攜帶所述移動終端的當前運動狀態的視頻幀發送給所述編碼器;所述編碼器用於對接收到的視頻幀進行編碼。
9.根據權利要求8所述的移動終端,其特徵在於,所述加速度傳感器具體用於,按照檢測到的加速度所處的門限值區間劃分當前運動狀態的等級,並發送給所述CPU;所述編碼器具體用於,依據所述當前運動狀態的等級,或者根據所述當前運動狀態的等級以及當前視頻幀所在的一定長度的幀序列中各視頻幀的編碼方式,確定對所述視頻幀採取的編碼方式,並對所述視頻幀進行編碼,所述編碼方式為幀內編碼幀I幀、幀間預測編碼幀P幀或雙向預測編碼幀B幀。
10.根據權利要求9所述的移動終端,其特徵在於,所述加速度傳感器具體用於,當檢測到的加速度小於第一門限值時,當前運動狀態為靜止;當檢測到的加速度大於第三門限值時,當前運動狀態為劇烈;所述編碼器具體用於,當前運動狀態為劇烈時,採用I幀的編碼方式;所述加速度所處的門限值區間越低,所述視頻幀所在的一定長度的幀序列中採用B幀編碼方式的視頻幀越多
11.一種帶攝像頭的移動終端,包括圖像傳感器、編碼器、加速度傳感器和中央處理器 CPU,其特徵在於所述加速度傳感器用於,以所述圖像傳感器的最高幀頻,檢測所述移動終端的當前運動狀態,並將檢測到的當前運動狀態發送給所述CPU ;所述圖像傳感器用於從攝像頭獲取視頻幀,將獲取得視頻幀發送給所述CPU,並接受所述CPU對所述圖像傳感器的幀頻控制;所述CPU用於接收所述加速度傳感器發送的移動終端當前運動狀態,並根據接收到的當前運動狀態,調整所述圖像傳感器的幀頻;同時接收所述圖像傳感器獲取的視頻幀,按所述編碼器的輸出幀頻向所述編碼器發送視頻幀; 所述編碼器用於對接收到的視頻幀進行編碼。
12.根據權利要求11所述的移動終端,其特徵在於,所述CPU具體用於,接收所述加速度傳感器發送的移動終端當前運動狀態,並根據接收到的當前運動狀態,調整所述圖像傳感器的幀頻;同時接收所述圖像傳感器獲取的視頻幀,當所述圖像傳感器的當前幀頻高於所述編碼器的輸出幀頻時,根據接收到的當前運動狀態,判斷選擇或放棄當前視頻幀發送給編碼器。
13.根據權利要求11或12所述的移動終端,其特徵在於,所述編碼器具體用於,依據所述當前運動狀態的等級,或者根據所述當前運動狀態的等級以及當前視頻幀所在的一定長度的幀序列中各視頻幀的編碼方式,確定對當前視頻幀採取的編碼方式,所述編碼方式為幀內編碼幀I幀、幀間預測編碼幀P幀或雙向預測編碼幀 B幀。
14.根據權利要求13所述的移動終端,其特徵在於,所述加速度傳感器具體用於,檢測平行於所述攝像頭焦平面的橫向和縱向加速度;所述當前運動狀態的等級為按檢測到橫向和縱向加速度的更高值所處的門限區間所對應的當前運動狀態的等級;按檢測到橫向加速度平方與縱向加速度平方之和的開平方根所處的門限區間所對應的當前運動狀態的等級;或者橫向和縱向加速度的分別所處的各自門限值區間的等級中的更高等級。
全文摘要
本發明的實施例提供帶攝像頭的移動終端和視頻處理方法,處理方法包括接收圖像傳感器獲取的視頻幀和加速度傳感器檢測到的移動終端的當前運動狀態;將當前運動狀態標識在視頻幀上;並將攜帶所述移動終端的當前運動狀態的視頻幀發送給編碼器;編碼器依據當前運動狀態對收到的視頻幀進行編碼。本發明的實施例根據檢測移動終端的運動信息來動態的改變編碼碼率和/或編碼方式,可明顯的提高移動終端處於運動狀態尤其是大幅運動狀態時拍攝到的圖像的品質。
文檔編號H04M1/725GK102546917SQ20101061705
公開日2012年7月4日 申請日期2010年12月31日 優先權日2010年12月31日
發明者張龍, 徐濤, 李欣, 梁超 申請人:聯想移動通信科技有限公司