(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2023-10-20
(45)【発行日】2023-10-30
(54)【発明の名称】インテリジェントビデオ録画方法及び装置
(51)【国際特許分類】
H04N 23/611 20230101AFI20231023BHJP
H04N 5/783 20060101ALI20231023BHJP
H04N 23/63 20230101ALI20231023BHJP
H04N 23/667 20230101ALI20231023BHJP
【FI】
H04N23/611
H04N5/783
H04N23/63 100
H04N23/667
(21)【出願番号】P 2022511276
(86)(22)【出願日】2020-08-11
(86)【国際出願番号】 CN2020108316
(87)【国際公開番号】W WO2021031915
(87)【国際公開日】2021-02-25
【審査請求日】2022-03-11
(31)【優先権主張番号】201910780567.8
(32)【優先日】2019-08-22
(33)【優先権主張国・地域又は機関】CN
(73)【特許権者】
【識別番号】503433420
【氏名又は名称】華為技術有限公司
【氏名又は名称原語表記】HUAWEI TECHNOLOGIES CO.,LTD.
【住所又は居所原語表記】Huawei Administration Building, Bantian, Longgang District, Shenzhen, Guangdong 518129, P.R. China
(74)【代理人】
【識別番号】100107766
【氏名又は名称】伊東 忠重
(74)【代理人】
【識別番号】100070150
【氏名又は名称】伊東 忠彦
(74)【代理人】
【識別番号】100135079
【氏名又は名称】宮崎 修
(72)【発明者】
【氏名】ジャオ,ヤーン
(72)【発明者】
【氏名】ピー,ジーミーン
(72)【発明者】
【氏名】チー,シエンジュイン
(72)【発明者】
【氏名】チウ,ファーン
(72)【発明者】
【氏名】リウ,リー
(72)【発明者】
【氏名】ホワーン,シヤオ
(72)【発明者】
【氏名】スゥン,シンジアーン
(72)【発明者】
【氏名】ダイ,ホゥイドーン
(72)【発明者】
【氏名】チェン,ビン
【審査官】▲高▼橋 真之
(56)【参考文献】
【文献】欧州特許出願公開第03188473(EP,A1)
【文献】中国特許出願公開第107396019(CN,A)
【文献】米国特許出願公開第2010/0290538(US,A1)
【文献】特開2005-318618(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
H04N 23/60 -23/698
H04N 5/783
(57)【特許請求の範囲】
【請求項1】
電子デバイスであって、
画像又はビデオキャプチャのための1つ以上のカメラと、
タッチパネル及びディスプレイを含むタッチスクリーンと、
1つ以上のプロセッサ、1つ以上のメモリ及び1つ以上のコンピュータプログラムと
を含み、
前記1つ以上のコンピュータプログラムは前記メモリに記憶され、前記1つ以上のコンピュータプログラムは命令を含み、前記命令が当該電子デバイスにより実行されたとき、当該電子デバイスは、以下のステップ、すなわち、
カメラアプリケーションを有効化するステップと、
前記カメラアプリケーションのスローモーションビデオ録画モードにおいて、前記カメラアプリケーションの動き検出機能が有効化されているとき、
ユーザにより入力されたビデオ録画命令が検出された後にビデオフレームをキャプチャし始めるステップと、
キャプチャされた第1のビデオフレームセット内の人体の動きが予め設定された動きであるとき、第1のフレームレートで第2のビデオフレームセットを自動的に録画するステップと、
第1のターゲットビデオを生成するステップであり、前記第1のターゲットビデオは第1のスローモーションビデオクリップを含み、前記第1のスローモーションビデオクリップは前記第2のビデオフレームセット内のいくつかのビデオフレームを含む、ステップと
を実行することが可能になり、
前記人体の前記動きが第1の予め設定された動きであるとき
、前記第1のスローモーションビデオクリップの再生の持続時間は第1の持続時間であり、前記人体の前記動きが第2の予め設定された動きであるとき
、前記第1のスローモーションビデオクリップの再生の前記持続時間は第2の持続時間であり、前記第1の予め設定された動きは前記第2の予め設定された動きと異なり、前記第1の持続時間は前記第2の持続時間と異なる、電子デバイス。
【請求項2】
前記命令が当該電子デバイスにより実行されたとき、当該電子デバイスが前記カメラアプリケーションを有効化した後に、当該電子デバイスは、以下のステップ、すなわち、
スローモーションプレビューインタフェースを表示するステップであり、前記スローモーションプレビューインタフェースは動き検出コントロールを含む、ステップ
を更に実行することが可能になる、請求項1に記載の電子デバイス。
【請求項3】
前記命令が当該電子デバイスにより実行されたとき、当該電子デバイスは、ユーザにより入力されたビデオ録画命令が検出された後にビデオフレームをキャプチャし始めるステップを実行することが可能になり、当該ステップは、
前記スローモーションプレビューインタフェース上に前記キャプチャされたビデオフレームを表示するステップを含む、請求項2に記載の電子デバイス。
【請求項4】
前記命令が当該電子デバイスにより実行されたとき、当該電子デバイスは、キャプチャされた第1のビデオフレームセット内の人体の動きが予め設定された動きであるとき、第1のフレームレートで第2のビデオフレームセットを自動的に録画するステップを実行することが可能になり、当該ステップは、
前記第1のビデオフレームセットに基づいて前記人体の人間骨格点情報を取得するステップと、
前記第1のビデオフレームセット内の前記人体の前記人間骨格点情報に基づいて前記人体の前記動きを決定するステップと、
前記人体の前記動きが前記予め設定された動きであるとき、前記第1のフレームレートで前記第2のビデオフレームセットを自動的に録画するステップと
を含む、請求項1に記載の電子デバイス。
【請求項5】
前記命令が当該電子デバイスにより実行されたとき、当該電子デバイスが、前記第1のビデオフレームセットに基づいて前記人体の前記人間骨格点情報を取得することが可能になる前に、当該電子デバイスは、以下のステップ、すなわち、
撮影対象が人体であるとき、前記第1のビデオフレームセットに基づいて、前記人体の前記人間骨格点情報を取得すると決定するステップを更に実行することが可能になる、請求項4に記載の電子デバイス。
【請求項6】
前記命令が当該電子デバイスにより実行されたとき、当該電子デバイスが、ターゲットビデオを生成するステップであり、前記第1のターゲットビデオは第1のスローモーションビデオクリップを含む、ステップを実行することが可能になり、当該ステップは、
前記第2のビデオフレームセットの一部に基づいて前記第1のターゲットビデオ内の前記第1のスローモーションビデオクリップを生成するステップ、又は
前記第1のビデオフレームセットの一部及び前記第2のビデオフレームセットの一部に基づいて前記第1のターゲットビデオ内の前記第1のスローモーションビデオクリップを生成するステップ
を含む、請求項1に記載の電子デバイス。
【請求項7】
前記第1のターゲットビデオは、通常速度ビデオクリップ又は高速ビデオクリップを更に含む、請求項1に記載の電子デバイス。
【請求項8】
前記命令が当該電子デバイスにより実行されたとき、当該電子デバイスは、以下のステップ、すなわち、
前記第2のビデオフレームセット内にあり且つ前記予め設定された動きの開始動きを含むビデオフレームを前記第1のスローモーションビデオクリップの開始フレームとして使用するステップと、
前記第2のビデオフレームセット内にあり且つ前記予め設定された動きの終了動きを含むビデオフレームを前記第1のスローモーションビデオクリップの終了フレームとして使用するステップと
を更に実行することが可能になる、請求項1に記載の電子デバイス。
【請求項9】
前記予め設定された動きは、回転、応援、ジャンプ、バスケットボールのシュート、ドリブル、スプリットジャンプ、レイアップシュート、スケートボード及びゴルフの打撃を含む、請求項1に記載の電子デバイス。
【請求項10】
前記命令が当該電子デバイスにより実行されたとき、当該電子デバイスが、第1のターゲットビデオを生成するステップを実行することが可能になり、当該ステップは、
前記人体の予め設定された動きが前記第2のビデオフレームセット内のターゲットビデオフレームに現れるとき、前記ターゲットビデオフレームを前記第1のターゲットビデオのカバーとして使用するステップを含む、請求項1に記載の電子デバイス。
【請求項11】
前記命令が当該電子デバイスにより実行されたとき、当該電子デバイスは、以下のステップ、すなわち、
前記第2のビデオフレームセット内のいくつかのビデオフレームに基づいて第1のターゲット画像を生成するステップであり、前記第1のターゲット画像内の前記人体の動きは前記予め設定された動きである、ステップと、
前記第1のターゲット画像を記憶するステップと
を更に実行することが可能になる、請求項1に記載の電子デバイス。
【請求項12】
前記命令が当該電子デバイスにより実行されたとき、当該電子デバイスは、以下のステップ、すなわち、
前記第2のビデオフレームセット内のいくつかのビデオフレームに基づいて第2のターゲット画像を生成するステップであり、前記第2のターゲット画像は前記予め設定された動きの動き軌跡を含む、ステップと、
前記第2のターゲット画像を記憶するステップと
を更に実行することが可能になる、請求項1に記載の電子デバイス。
【請求項13】
前記命令が当該電子デバイスにより実行されたとき、当該電子デバイスは、以下のステップ、すなわち、
前記カメラアプリケーションの前記動き検出機能が有効化されているとき、
キャプチャされた第3のビデオフレームセット内の人体の動きが前記予め設定された動きであるとき、第4のビデオフレームセットを自動的に録画するステップと、
第2のターゲットビデオを生成するステップであり、前記第2のターゲットビデオは第2のスローモーションビデオクリップを含み、前記第2のスローモーションビデオクリップは前記第4のビデオフレームセット内のいくつかのビデオフレームを含み、前記第2のスローモーションビデオクリップの再生速度は、前記人体の前記動きが第3の予め設定された動きであるとき、第1の速度として自動的に決定される、ステップと
を更に実行することが可能になる、請求項1に記載の電子デバイス。
【請求項14】
電子デバイスであって、
画像又はビデオキャプチャのための1つ以上のカメラと、
タッチパネル及びディスプレイを含むタッチスクリーンと、
1つ以上のプロセッサ、1つ以上のメモリ及び1つ以上のコンピュータプログラムと
を含み、
前記1つ以上のコンピュータプログラムは前記メモリに記憶され、前記1つ以上のコンピュータプログラムは命令を含み、前記命令が当該電子デバイスにより実行されたとき、当該電子デバイスは、以下のステップ、すなわち、
カメラアプリケーションを有効化するステップと、
前記カメラアプリケーションのスローモーションビデオ録画モードにおいて、前記カメラアプリケーションの動き検出機能が有効化されているとき、
ユーザにより入力されたビデオ録画命令が検出された後にビデオフレームをキャプチャし始めるステップと、
キャプチャされた第1のビデオフレームセット内の人体の動きが予め設定された動きであるとき、第2のビデオフレームセットを自動的に録画するステップと、
ターゲットビデオを生成するステップであり、前記ターゲットビデオはスローモーションビデオクリップを含み、前記スローモーションビデオクリップは前記第2のビデオフレームセット内のいくつかのビデオフレームを含む、ステップと
を実行することが可能になり、
前記人体の前記動きが第1の予め設定された動きであるとき、前記スローモーションビデオクリップの再生速度は、第1の速度として自動的に決定され、前記人体の前記動きが第2の予め設定された動きであるとき、前記スローモーションビデオクリップの前記再生速度は、第2の速度として自動的に決定され、前記第1の予め設定された動きは前記第2の予め設定された動きと異なり、前記第1の速度は前記第2の速度と異なる、電子デバイス。
【請求項15】
前記命令が当該電子デバイスにより実行されたとき、当該電子デバイスが前記カメラアプリケーションを有効化した後に、当該電子デバイスは、以下のステップ、すなわち、
前記カメラアプリケーションを有効化した後に、スローモーションプレビューインタフェースを表示するステップであり、前記スローモーションプレビューインタフェースは動き検出コントロールを含む、ステップを更に実行することが可能になる、請求項14に記載の電子デバイス。
【請求項16】
前記命令が当該電子デバイスにより実行されたとき、当該電子デバイスが、ユーザにより入力されたビデオ録画命令が検出された後にビデオフレームをキャプチャし始めるステップを実行することが可能になり、当該ステップは、
前記スローモーションプレビューインタフェース上にキャプチャされたビデオフレームを表示するステップを含む、請求項15に記載の電子デバイス。
【請求項17】
前記命令が当該電子デバイスにより実行されたとき、当該電子デバイスが、キャプチャされた第1のビデオフレームセット内の人体の動きが予め設定された動きであるとき、第2のビデオフレームセットを自動的に録画するステップを実行することが可能になり、当該ステップは、
前記第1のビデオフレームセットに基づいて前記人体の人間骨格点情報を取得するステップと、
前記第1のビデオフレームセット内の前記人体の前記人間骨格点情報に基づいて前記人体の前記動きを決定するステップと、
前記人体の前記動きが前記予め設定された動きであるとき、前記第2のビデオフレームセットを自動的に録画するステップと
を含む、請求項14に記載の電子デバイス。
【請求項18】
前記命令が当該電子デバイスにより実行されたとき、当該電子デバイスが当該第1のビデオフレームセットに基づいて前記人体の前記人間骨格点情報を取得することが可能になる前に、当該電子デバイスは、以下のステップ、すなわち、
撮影対象が人体であるとき、前記第1のビデオフレームセットに基づいて、前記人体の前記人間骨格点情報を取得すると決定するステップを更に実行することが可能になる、請求項17に記載の電子デバイス。
【請求項19】
前記命令が当該電子デバイスにより実行されたとき、当該電子デバイスが、ターゲットビデオを生成するステップであり、前記ターゲットビデオは第1のスローモーションビデオクリップを含む、ステップを実行することが可能になり、当該ステップは、
前記第2のビデオフレームセットの一部に基づいて前記ターゲットビデオ内の前記スローモーションビデオクリップを生成するステップ、又は
前記第1のビデオフレームセットの一部及び前記第2のビデオフレームセットの一部に基づいて前記ターゲットビデオ内の前記スローモーションビデオクリップを生成するステップ
を含む、請求項14に記載の電子デバイス。
【請求項20】
ビデオ撮影方法であって、
カメラアプリケーションを有効化するステップと、
前記カメラアプリケーションのスローモーションビデオ録画モードにおいて、前記カメラアプリケーションの動き検出機能が有効化されているとき、
ユーザにより入力されたビデオ録画命令が検出された後にビデオフレームをキャプチャし始めるステップと、
キャプチャされた第1のビデオフレームセット内の第1の人体の動きが第1の予め設定された動きであるとき、第1のフレームレートで第2のビデオフレームセットを自動的に録画するステップと、
第1のターゲットビデオを生成するステップであり、前記第1のターゲットビデオは第1のスローモーションビデオクリップを含み、前記第1のスローモーションビデオクリップは前記第2のビデオフレームセット内のいくつかのビデオフレームを含み
、前記第1のスローモーションビデオクリップの再生の持続時間は第1の持続時間である、ステップと、
前記ユーザにより入力されたビデオ録画命令が検出された後にビデオフレームをキャプチャし始めるステップと、
キャプチャされた第3のビデオフレームセット内の第2の人体の動きが第2の予め設定された動きであるとき、前記第1のフレームレートで第4のビデオフレームセットを自動的に録画するステップと、
第2のターゲットビデオを生成するステップであり、前記第2のターゲットビデオは第2のスローモーションビデオクリップを含み、前記第2のスローモーションビデオクリップは前記第4のビデオフレームセット内のいくつかのビデオフレームを含み
、前記第2のスローモーションビデオクリップの再生の持続時間は第2の持続時間であり、前記第1の予め設定された動きは前記第2の予め設定された動きと異なり、前記第1の持続時間は前記第2の持続時間と異なる、ステップと
を含む方法。
【発明の詳細な説明】
【技術分野】
【0001】
[関連出願への相互参照]
この出願は、2019年8月22日に中国国家知識産権局に出願された「INTELLIGENT VIDEO RECORDING METHOD AND APPARATUS」という名称の中国特許出願第201910780567.8号に対する優先権を主張し、その全内容を参照により援用する。
【0002】
[技術分野]
この出願は、電子技術及び人工知能の分野に関し、特にインテリジェントビデオ録画方法及び装置に関する。
【背景技術】
【0003】
ビデオ再生中に、携帯電話のような電子デバイスにより1秒当たり再生されるフレームの数が、ビデオ録画中に1秒当たり録画されるフレームの数未満である場合、スローモーション再生効果がある。例えば、ビデオが30フレーム/秒(frames per second, fps)の再生フレームレートで再生されるとき、電子デバイスが60fpsのビデオ録画フレームレートでビデオを録画した場合、2倍のスローモーション再生効果があり、或いは、電子デバイスが960fpsのビデオ録画フレームレートでビデオを録画した場合、32倍のスローモーション再生効果がある。
【0004】
ビッグデータの統計から、人々はスローモーション録画中に適時に一瞬の素晴らしい瞬間をしばしばキャプチャできず、その結果、録画されたスローモーションの開始点及び終了点がユーザの期待を満たさず、ユーザの時間の浪費を生じ、ユーザの撮影経験の低下さえも生じることが見出されている。端末デバイスがスローモーションビデオを自動的に録画する既存の解決策では、最も一般的な方法は、スクリーン上の検出ボックスに突然の変化が存在するか否かを検出することである。2つの隣接する画像のフレームにおける対応する画素のグレイスケール値の変化が予め設定された閾値よりも大きいとき、自動スローモーション機能を実現するために、スローモーションビデオが自動的に録画される。従来の技術におけるスローモーション録画の解決策では、バックグラウンド環境要因の比較的大きい影響のために、複雑なシナリオにおいて偶発的なトリガが極めて容易に発生する。さらに、従来の技術を使用することによるスローモーションビデオ撮影では、検出ボックス内で対象物が動いていることが検出されたとき、スローモーションビデオ録画がトリガされる。この場合、完全な人体の動きがキャプチャできない可能性が高い。
図1に示すように、現在の撮影シナリオは、ユーザの動きが「ランニング」から「ジャンプ」に変化するプロセスである。従来技術を使用することにより実行されるスローモーション録画中に、検出ボックスでユーザの動きが検出されたとき、スローモーション録画がトリガされる。したがって、電子デバイスがユーザの完全な素晴らしいジャンプの動きをキャプチャできない可能性が高い。
【発明の概要】
【0005】
この出願の実施形態は、インテリジェントビデオ録画方法及び装置を提供する。スローモーション録画プロセスにおいて、動き認識が撮影された人体に対して実行でき、人体の予め設定された動きが認識されたとき、スローモーションビデオ録画が自動的にトリガされる。さらに、電子デバイスは、人体の動きの開始点及び終了点を認識し、人体の動きの開始点と人体の動きの終了点との間のビデオフレームをエンコードして、スローモーションビデオを取得できる。電子デバイスは、異なる人体の動きタイプに基づいて異なるスローモーション録画フレームレートを推奨でき、それにより、スローモーションビデオ録画のユーザ体験を改善する。
【0006】
上記の目的を達成するために、以下の技術的解決策がこの出願の実施形態において使用される。
【0007】
一態様によれば、この出願の実施形態は、ビデオ撮影装置を提供し、画像又はビデオキャプチャのための1つ以上のカメラと、タッチパネル及びディスプレイを含むタッチスクリーンと、1つ以上のプロセッサと、1つ以上のメモリと、1つ以上のコンピュータプログラムとを含む。1つ以上のコンピュータプログラムはメモリに記憶され、1つ以上のコンピュータプログラムは命令を含む。命令が電子デバイスにより実行されたとき、電子デバイスは、以下のステップ、すなわち、
カメラアプリケーションを有効化するステップと、
カメラアプリケーションのスローモーションビデオ録画モードにおいて、カメラアプリケーションの動き検出機能が有効化されているとき、ユーザにより入力されたビデオ録画命令が検出された後にビデオフレームをキャプチャし始めるステップと、
キャプチャされた第1のビデオフレームに基づいてビデオフレーム内の人体の人間骨格点情報を取得するステップと、
第1のビデオフレーム内の人間骨格点情報に基づいて人体の動きを決定するステップと、
人体の動きが予め設定された動きであるとき、第2のビデオフレームセットを自動的に録画するステップと、
ターゲットビデオを生成するステップであり、ターゲットビデオはスローモーションビデオクリップを含み、スローモーションビデオクリップは第2のビデオフレームセット内のいくつかのビデオフレームを含む、ステップと
を実行することが可能になる。
【0008】
他の態様によれば、この出願の実施形態は、ビデオ撮影装置を提供し、画像又はビデオキャプチャのための1つ以上のカメラと、タッチパネル及びディスプレイを含むタッチスクリーンと、1つ以上のプロセッサと、1つ以上のメモリと、1つ以上のコンピュータプログラムとを含む。1つ以上のコンピュータプログラムはメモリに記憶され、1つ以上のコンピュータプログラムは命令を含む。命令が電子デバイスにより実行されたとき、電子デバイスは、以下のステップ、すなわち、
カメラアプリケーションを有効化するステップと、
カメラアプリケーションのスローモーションビデオ録画モードにおいて、カメラアプリケーションの動き検出機能が有効化されているとき、ユーザにより入力されたビデオ録画命令が検出された後にビデオフレームをキャプチャし始めるステップと、
キャプチャされた第1のビデオフレームセット内の人体の動きが予め設定された動きであるとき、第1のフレームレートで第2のビデオフレームセットを自動的に録画するステップと、
第1のターゲットビデオを生成するステップであり、第1のターゲットビデオは第1のスローモーションビデオクリップを含み、第1のスローモーションビデオクリップは第2のビデオフレームセット内のいくつかのビデオフレームを含む、ステップと
を実行することが可能になる。人体の動きが第1の予め設定された動きであるとき、第1の再生速度での第1のスローモーションビデオクリップの再生の持続時間は第1の持続時間であり、人体の動きが第2の予め設定された動きであるとき、第1の再生速度での第1のスローモーションビデオクリップの再生の持続時間は第2の持続時間である。第1の予め設定された動きは第2の予め設定された動きと異なり、第1の持続時間は第2の持続時間と異なる。
【0009】
カメラアプリケーションを有効化することは、カメラアプリケーションをバックグラウンド実行モードからフォアグラウンド実行モードに切り替えることでもよく、或いは、カメラアプリケーションのためのプロセスが作成されていないときにカメラアプリケーションのためのプロセスを作成することでもよい。第1の人体及び第2の人体は同じでもよく或いは異なってもよい。第1のターゲットビデオ及び第2のターゲットビデオはスローモーションビデオである。スローモーションビデオ又は低速ビデオは以下を意味する。ビデオの再生フレームレートがビデオの録画フレームレート未満であるとき、スローモーション効果があり、言い換えると、ビデオはスローモーションビデオである。第1のビデオフレームセットにおいて、各ビデオフレームは人体を含むか、或いは、いくつかのビデオフレームは人体を含む。この解決策では、電子デバイスは、撮影された人体に対して動き認識を実行してもよく、認識を通じて人体の動きが予め設定された動きであると決定したときにのみ、スローモーションビデオ録画を自動的にトリガでき、それにより、ユーザの人体の一瞬の素晴らしい動きをキャプチャする。このように、スローモーションビデオ撮影のユーザ体験が改善される。異なる人体の動きは、異なるスローモーションビデオ持続時間に対応してもよい。電子デバイスは、異なる人体の動きに基づいて異なるスローモーションビデオ持続時間を生成してもよい。例えば、人体の動きを検出したとき、電子デバイスは、スローモーションビデオ録画をトリガし、960fpsで1sのビデオを録画する。ビデオが30fpsでエンコードされるとき、32倍の低速ビデオが生成される。例えば、元のビデオの撮影対象の移動速度がv0である場合、生成された低速ビデオにおける撮影対象の速度はv0/32であり、或いは言い換えると、生成された低速ビデオの再生速度は元のビデオの再生速度の1/32である。電子デバイスが人体の動きがジャンプであると決定したとき、スローモーションビデオクリップを生成するために0.5sのビデオが1sのビデオから選択されてもよく、1sの通常速度ビデオは、フレーム抽出を通じてスローモーションビデオクリップの前及び後の双方で生成されてもよい。スローモーションビデオクリップが30fpsでエンコードされるとき、最終的に生成されるスローモーションビデオは「1sの通常速度+16sの低速+1sの通常速度」の形式のビデオであり、或いは言い換えると、第1のスローモーションクリップの再生持続時間は16sである。人体の動きがバスケットボールのシュートであると電子デバイスが決定したとき、スローモーションビデオクリップを生成するために0.3sのビデオが1sのビデオから選択されてもよく、1sの通常速度ビデオは、フレーム抽出を通じてスローモーションビデオクリップの前及び後の双方で生成されてもよい。スローモーションビデオクリップが30fpsでエンコードされるとき、最終的に生成されるスローモーションビデオは「1sの通常速度+0.3x32sの低速+1sの通常速度=1sの通常速度+9.6sの低速+1sの通常速度」の形式のビデオであり、或いは言い換えると、第2のスローモーションクリップの再生持続時間は16sである。
【0010】
実現方式では、カメラアプリケーションを有効化した後に、電子デバイスは、スローモーションプレビューインタフェースを表示し、スローモーションプレビューインタフェースは動き検出コントロールを含む。
【0011】
この解決策では、カメラアプリケーションを有効化した後に、電子デバイスは、スローモーションプレビューインタフェースを表示してもよい。可能な方式では、カメラアプリケーションは、スローモーションプレビューインタフェースに入るためのコントロールを含み、ユーザがコントロールをタップした後にスローモーションプレビューインタフェースが表示される。可能な実現方式では、カメラアプリケーションが有効化された後に、スローモーションプレビューインタフェースは直接表示されてもよい。スローモーションプレビューインタフェースは動き検出コントロールを含み、ユーザは、動き検出機能を有効化又は無効化するために、動き検出コントロールをトリガしてもよい。可能な実現方式では、電子デバイスがスローモーションプレビューインタフェースを表示した後に、動き検出機能はデフォルトで有効状態にあり、ユーザはこの機能を手動で無効化してもよい。
【0012】
実現方式では、電子デバイスは、ユーザにより入力されたビデオ録画命令が検出された後にビデオフレームをキャプチャし始めることを実行し、これは、スローモーションプレビューインタフェース上にキャプチャされたビデオフレームを表示することを含む。
【0013】
この解決策では、電子デバイスは、ユーザにより入力されたビデオ録画命令が検出された後に、ビデオフレームをキャプチャし始め、電子デバイスによりキャプチャされたビデオは、スローモーションプレビューインタフェース上にリアルタイムで表示されてもよい。「キャプチャ」プロセスは以下を意味する。電子デバイスは、プレビューウィンドウからビデオフレームをリアルタイムで取得し、ビデオフレームを揮発性記憶媒体に記憶する。これは、ユーザがスローモーションビデオ撮影ボタンを押下した後、且つ、スローモーションビデオ撮影がトリガされる前に、電子デバイスがスローモーションプレビューインタフェースからビデオフレームを取得するプロセスが「キャプチャ」であると理解されてもよい。実現方式では、電子デバイスは、キャプチャされたビデオフレームに対してフレーム抽出を実行し、フレーム抽出の後に取得されたビデオフレームをプレビューウィンドウに表示してもよい。
【0014】
実現方式では、電子デバイスは、キャプチャされた第1のビデオフレームセット内の人体の動きが予め設定された動きであるとき、第1のフレームレートで第2のビデオフレームセットを自動的に録画することを実行し、これは、第1のビデオフレームセットに基づいて人間骨格点情報を取得し、第1のビデオフレームセット内の人間骨格点情報に基づいて人体の動きを決定し、人体の動きが予め設定された動きであるとき、第1のフレームレートで第2のビデオフレームセットを自動的に録画することを含む。
【0015】
この解決策では、電子デバイスは、ニューラルネットワーク処理ユニット(neural-network processing unit, NPU)内の予め設定されたネットワーク推論モジュールを使用することにより、撮影された人体に対してリアルタイム姿勢点推定及び動きタイプ認識を実行してもよい。ネットワーク推論モジュールは、人体の姿勢の特徴点(頭、手及び脚のような複数の関節を含む)を認識するために使用され且つ畳み込みニューラルネットワーク(Convolutional Neural Network, CNN)に基づいて事前に確立されたキーポイント検出モデルと、人体の動き(ジャンプ、バスケットボールのシュート及びボールのキックのような一般的な動きを含む)を認識するために使用される動き検出モデルと含む。したがって、電子デバイスは、キーポイント検出モデルを使用することにより、カメラにより取得されたビデオフレームにおける人体の姿勢をリアルタイムで推定して、人間骨格点情報を取得してもよい。次いで、電子デバイスは、動き検出モデルを使用することにより、キーポイント検出モデルから出力された人間骨格点情報を解析し、人体の動きタイプを取得する。人体の動きタイプを認識したとき、電子デバイスは、スローモーションビデオ録画を自動的にトリガする。「録画」は以下を意味する。スローモーションビデオ撮影をトリガした後に、電子デバイスは、スローモーションプレビューウィンドウから取得されたビデオフレームを不揮発性記憶媒体に記憶する。
【0016】
実現方式では、電子デバイスが第1のビデオフレームセットに基づいて人間骨格点情報を取得する前に、電子デバイスは、以下のステップ、すなわち、撮影対象が人体であるとき、第1のビデオフレームセットに基づいて、人間骨格点情報を取得すると決定するステップを更に実行する。
【0017】
この解決策では、人間骨格点情報を取得したとき、電子デバイスは、撮影対象の決定を実行する必要があり、電子デバイスは、撮影対象が人体であるときにのみ、人間骨格点情報を取得する。
【0018】
実現方式では、電子デバイスは、ターゲットビデオを生成することを実行し、第1のターゲットビデオは第1のスローモーションビデオクリップを含み、これは、第2のビデオフレームの一部に基づいて第1のターゲットビデオ内の第1のスローモーションビデオクリップを生成すること、又は第1のビデオフレームの一部及び第2のビデオフレームの一部に基づいて第1のターゲットビデオ内の第1のスローモーションビデオクリップを生成することを含む。
【0019】
この解決策では、第2のビデオフレームを取得した後に、電子デバイスは、第2のビデオフレームの一部をエンコードして、第1のスローモーションクリップを生成してもよい。代替として、電子デバイスは、第2のビデオフレームの一部及び第1のビデオフレームの一部を選択して、第1のスローモーションクリップを生成してもよい。
【0020】
第1のターゲットビデオは、通常速度ビデオクリップ又は高速ビデオクリップを更に含んでもよい。通常速度ビデオクリップは、第1のビデオフレームセット又は第2のビデオフレームセットに対してフレーム抽出を実行することにより電子デバイスにより生成されてもよく、通常速度ビデオクリップにおける人体の移動速度は、撮影された人体の実際の移動速度と同じである。高速ビデオ又はクイックモーションビデオは以下を意味する。ビデオの再生フレームレートがビデオの録画フレームレートよりも大きいとき、高速移動効果があり、或いは言い換えると、高速ビデオにおける撮影された人体の移動速度が、撮影された人体の実際の移動速度よりも大きい。例えば、1sのビデオが960fpsで録画され、960個のビデオフレームが1sのビデオから取得されてもよく、1sの通常速度ビデオが、960個のビデオフレームに対してフレーム抽出を実行することにより生成されてもよい。1sのビデオ内の960個のビデオフレームは、960fpsよりも低いフレームレート、例えば30fpsでエンコードされてもよい。この場合、32sの32倍の低速ビデオが生成される。1sのビデオ内の960個のビデオフレームは、960fpsより大きいフレームレート、例えば、1920fpsでエンコードされてもよく、0.5sの2倍の高速ビデオが生成される。
【0021】
第1のターゲットビデオは、通常速度ビデオクリップ又は高速ビデオクリップを更に含む。
【0022】
実現方式では、電子デバイスは、以下のステップ、すなわち、第2のビデオフレームセット内にあり且つ予め設定された動きの開始動きを含むビデオフレームを第1のスローモーションビデオクリップの開始フレームとして使用するステップと、第2のビデオフレームセット内にあり且つ予め設定された動きの終了動きを含むビデオフレームを第1のスローモーションビデオクリップの終了フレームとして使用するステップとを更に実行する。
【0023】
この解決策では、認識を通じて、撮影された人体の動きが第1の予め設定された動きであると決定した後に、電子デバイスは、第1の予め設定された動きの開始点及び終了点を認識してもよく、それにより、電子デバイスは、人体の動きタイプを含むビデオフレームをエンコードして、スローモーションビデオを取得し、スローモーションビデオをユーザに提示する。これは、比較的良好なスローモーションビデオ撮影体験をユーザにもたらす。
【0024】
予め設定された動きは、回転、応援、ジャンプ、バスケットボールのシュート、ドリブル、スプリットジャンプ、レイアップシュート、スケートボード及びゴルフの打撃を含む。可能な実現方式では、電子デバイスは、頭、手及び脚のような人体の複数の関節の速度、変位、姿勢変化等に基づいて人体の動きの事前決定を実行してもよく、頭、手及び脚のような人体の複数の関節の速度、変位、姿勢変化等に基づいて、スローモーションビデオ撮影をトリガするための条件を決定してもよい。
【0025】
実現方式では、電子デバイスは、第1のターゲットビデオを生成することを実行し、これは、人体の予め設定された動きが第2のビデオフレームセット内のターゲットビデオフレームに現れるとき、ターゲットビデオフレームを第1のターゲットビデオのカバーとして使用することを含む。
【0026】
この解決策では、電子デバイスは、最適なフレームとして、第2のビデオ内にあり且つ人体の動きが最も伸びているか或いは人体が最も高くジャンプしているビデオフレームを使用し、スローモーションビデオのカバーとしてビデオフレームをユーザに提示してもよい。スローモーションビデオの最初のフレーム又は最後のフレームがスローモーションビデオのカバーとして使用される既存の解決策と比較して、この解決策は、より良好な視覚経験をユーザにもたらすことができる。予め設定された動きは、第1の予め設定された動きの中にあり且つ電子デバイスによりユーザに推奨された最適ビデオフレームに対応する動き、例えば、バスケットボールのシュートの動きにおける人体による瞬間的なダンクの動き又は最高のジャンプの動きとして理解されてもよい。スローモーションビデオのカバーは、ギャラリーにおいてスローモーションビデオでユーザに提示され且つスローモーションビデオがギャラリーに記憶されてユーザがスローモーションビデオを再生していないときに見られるビデオフレームとして理解されてもよい。
【0027】
実施形態では、電子デバイスは、以下のステップ、すなわち、第2のビデオフレームセット内のいくつかのビデオフレームに基づいて第1のターゲット画像を生成するステップであり、第1のターゲット画像内の人体の動きは予め設定された動きである、ステップと、第1のターゲット画像を記憶するステップとを更に実行する。
【0028】
この解決策では、電子デバイスは、最適なフレームとして、第2のビデオ内にあり且つ人体の動きが最も伸びているか或いは人体の動きが最も高くジャンプしているビデオフレームを使用して、ターゲット画像を生成し、ターゲット画像をギャラリーに記憶してもよい。「記憶」は、第1のターゲット画像を不揮発性記憶媒体に記憶することとして理解されてもよい。
【0029】
実施形態では、電子デバイスは、以下のステップ、すなわち、第2のビデオフレームセット内のいくつかのビデオフレームに基づいて第2のターゲット画像を生成するステップであり、第2のターゲット画像は予め設定された動きの動き軌跡を含む、ステップと、第2のターゲット画像を記憶するステップとを更に実行する。
【0030】
この解決策では、電子デバイスは、第2のビデオフレーム内の人体の画像のそれぞれとバックグラウンドとを互いに分離して、人体の動き軌跡画像を生成し、動き軌跡画像をギャラリーに記憶してもよい。
【0031】
実施形態では、電子デバイスは、以下のステップ、すなわち、カメラアプリケーションの動き検出機能が有効化されているとき、キャプチャされた第3のビデオフレームセット内の人体の動きが予め設定された動きであるとき、第4のビデオフレームセットを自動的に録画するステップと、第2のターゲットビデオを生成するステップであり、第2のターゲットビデオは第2のスローモーションビデオクリップを含み、第2のスローモーションビデオクリップは第4のビデオフレームセット内のいくつかのビデオフレームを含み、第2のスローモーションビデオクリップの再生速度は、人体の動きが第3の予め設定された動きであるとき、第1の速度として自動的に決定される、ステップとを更に実行する。
【0032】
第3の予め設定された動きは、第1の予め設定された動きと同じでもよく或いは異なってもよい。この解決策では、電子デバイスは、人体の動きタイプに基づいて、より適切なフレームレートをユーザに推奨してもよい。異なるフレームレートが異なる動きに基づいて推奨され、生成されたスローモーションビデオクリップの再生速度が異なり、それにより、より良好なスローモーション効果を達成する。
【0033】
他の態様によれば、この出願の実施形態は、インテリジェントビデオ録画装置を提供し、画像又はビデオキャプチャのための1つ以上のカメラと、タッチパネル及びディスプレイを含むタッチスクリーンと、1つ以上のプロセッサと、1つ以上のメモリと、1つ以上のコンピュータプログラムとを含む。1つ以上のコンピュータプログラムはメモリに記憶され、1つ以上のコンピュータプログラムは命令を含む。命令が電子デバイスにより実行されたとき、電子デバイスは、以下のステップ、すなわち、
カメラアプリケーションを有効化するステップと、
カメラアプリケーションのスローモーションビデオ録画モードにおいて、カメラアプリケーションの動き検出機能が有効化されているとき、ユーザにより入力されたビデオ録画命令が検出された後にビデオフレームをキャプチャし始めるステップと、
キャプチャされた第1のビデオフレームセット内の人体の動きが予め設定された動きであるとき、第2のビデオフレームセットを自動的に録画するステップと、
ターゲットビデオを生成するステップであり、ターゲットビデオはスローモーションビデオクリップを含み、スローモーションビデオクリップは第2のビデオフレームセット内のいくつかのビデオフレームを含む、ステップと
を実行することが可能になる。人体の動きが第1の予め設定された動きであるとき、スローモーションビデオクリップの再生速度は、第1の速度として自動的に決定され、人体の動きが第2の予め設定された動きであるとき、スローモーションビデオクリップの再生速度は、第2の速度として自動的に決定される。第1の予め設定された動きは第2の予め設定された動きと異なり、第1の速度は第2の速度と異なる。
【0034】
この解決策では、ユーザがスローモーションビデオを録画するためにどのフレームレートが選択される必要があるか分からないとき、電子デバイスは、人体の異なる動きに基づいてより適切なフレームレートをユーザに推奨してもよく、それにより、より良好なスローモーションビデオ録画体験をユーザにもたらす。エンコードフレームレートが固定されているとき、異なるフレームレートを推奨することにより、異なるビデオ再生速度が生成されてもよい。例えば、ジャンプの動きについて、電子デバイスにより推奨されたフレームレートが480fpsであり、エンコードが30fpsで実行される場合、16倍の低速ビデオが生成されてもよく、或いは言い換えると、スローモーションビデオの再生速度は、元のビデオの速度の1/16である。バスケットボールのシュートの動きについて、電子デバイスにより推奨されたフレームレートが960fpsであり、エンコードが30fpsで実行される場合、32倍の低速ビデオが生成されてもよく、或いは言い換えると、スローモーションビデオの再生速度は、元のビデオの速度の1/32である。
【0035】
実施形態では、カメラアプリケーションを有効化した後に、電子デバイスは、スローモーションプレビューインタフェースを表示し、スローモーションプレビューインタフェースは動き検出コントロールを含む。
【0036】
実現方式では、電子デバイスは、ユーザにより入力されたビデオ録画命令が検出された後にビデオフレームをキャプチャし始めることを実行し、これは、スローモーションプレビューインタフェース上にキャプチャされたビデオフレームを表示することを含む。
【0037】
実現方式では、電子デバイスは、キャプチャされた第1のビデオフレームセット内の人体の動きが予め設定された動きであるとき、第2のビデオフレームセットを自動的に録画することを実行し、これは、第1のビデオフレームセットに基づいて人間骨格点情報を取得し、第1のビデオフレームセット内の人間骨格点情報に基づいて人体の動きを決定し、人体の動きが予め設定された動きであるとき、第2のビデオフレームセットを自動的に録画することを含む。
【0038】
実現方式では、電子デバイスが第1のビデオフレームセットに基づいて人間骨格点情報を取得する前に、電子デバイスは、以下のステップ、すなわち、撮影対象が人体であるとき、第1のビデオフレームセットに基づいて、人間骨格点情報を取得すると決定するステップを更に実行する。
【0039】
実現方式では、電子デバイスは、ターゲットビデオを生成することを実行し、第1のターゲットビデオはスローモーションビデオクリップを含み、これは、第2のビデオフレームの一部に基づいてターゲットビデオ内のスローモーションビデオクリップを生成すること、又は第1のビデオフレームの一部及び第2のビデオフレームの一部に基づいてターゲットビデオ内のスローモーションビデオクリップを生成することを含む。
【0040】
ターゲットビデオは、通常速度ビデオクリップ又は高速ビデオクリップを更に含む。
【0041】
実現方式では、電子デバイスは、以下のステップ、すなわち、第2のビデオフレームセット内にあり且つ予め設定された動きの開始動きを含むビデオフレームをスローモーションビデオクリップの開始フレームとして使用するステップと、第2のビデオフレームセット内にあり且つ予め設定された動きの終了動きを含むビデオフレームをスローモーションビデオクリップの終了フレームとして使用するステップとを更に実行する。
【0042】
予め設定された動きは、回転、応援、ジャンプ、バスケットボールのシュート、ドリブル、スプリットジャンプ、レイアップシュート、スケートボード及びゴルフの打撃を含む。
【0043】
実現方式では、電子デバイスは、ターゲットビデオを生成することを実行し、これは、人体の予め設定された動きが第2のビデオフレームセット内のターゲットビデオフレームに現れるとき、ターゲットビデオフレームをターゲットビデオのカバーとして使用することを含む。
【0044】
実施形態では、電子デバイスは、以下のステップ、すなわち、第2のビデオフレームセット内のいくつかのビデオフレームに基づいて第1のターゲット画像を生成するステップであり、第1のターゲット画像内の人体の動きは予め設定された動きである、ステップと、第1のターゲット画像を記憶するステップとを更に実行する。
【0045】
実施形態では、電子デバイスは、以下のステップ、すなわち、第2のビデオフレームセット内のいくつかのビデオフレームに基づいて第2のターゲット画像を生成するステップであり、第2のターゲット画像は予め設定された動きの動き軌跡を含む、ステップと、第2のターゲット画像を記憶するステップとを更に実行する。
【0046】
他の態様によれば、この出願の実施形態は、ビデオ撮影方法を提供し、カメラアプリケーションを有効化するステップと、
カメラアプリケーションのスローモーションビデオ録画モードにおいて、カメラアプリケーションの動き検出機能が有効化されているとき、ユーザにより入力されたビデオ録画命令が検出された後にビデオフレームをキャプチャし始めるステップと、
キャプチャされた第1のビデオフレームセット内の第1の人体の動きが第1の予め設定された動きであるとき、第1のフレームレートで第2のビデオフレームセットを自動的に録画するステップと、
第1のターゲットビデオを生成するステップであり、第1のターゲットビデオは第1のスローモーションビデオクリップを含み、第1のスローモーションビデオクリップは第2のビデオフレームセット内のいくつかのビデオフレームを含み、第1の再生速度での第1のスローモーションビデオクリップの再生の持続時間は第1の持続時間である、ステップと、
ユーザにより入力されたビデオ録画命令が検出された後にビデオフレームをキャプチャし始めるステップと、
キャプチャされた第3のビデオフレームセット内の第2の人体の動きが第2の予め設定された動きであるとき、第1のフレームレートで第4のビデオフレームセットを自動的に録画するステップと、
第2のターゲットビデオを生成するステップであり、第2のターゲットビデオは第2のスローモーションビデオクリップを含み、第2のスローモーションビデオクリップは第4のビデオフレームセット内のいくつかのビデオフレームを含み、第1の再生速度での第2のスローモーションビデオクリップの再生の持続時間は第2の持続時間であり、第1の予め設定された動きは第2の予め設定された動きと異なり、第1の持続時間は第2の持続時間と異なる、ステップと
を含む。
【0047】
実施形態では、カメラアプリケーションを有効化した後に、当該方法は、スローモーションプレビューインタフェースを表示するステップであり、スローモーションプレビューインタフェースは動き検出コントロールを含む、ステップを更に含んでもよい。
【0048】
実現方式では、ユーザにより入力されたビデオ録画命令が検出された後にビデオフレームをキャプチャし始めることは、スローモーションプレビューインタフェース上にキャプチャされたビデオフレームを表示することを含む。
【0049】
実現方式では、キャプチャされた第1のビデオフレームセット内の人体の動きが第1の予め設定された動きであるとき、第1のフレームレートで第2のビデオフレームセットを自動的に録画することは、第1のビデオフレームセットに基づいて人間骨格点情報を取得し、第1のビデオフレームセット内の人間骨格点情報に基づいて人体の動きを決定し、人体の動きが予め設定された動きであるとき、第1のフレームレートで第2のビデオフレームセットを自動的に録画することを含む。
【0050】
実現方式では、第1のビデオフレームセットに基づいて人間骨格点情報を取得する前に、電子デバイスは、撮影対象が人体であるとき、第1のビデオフレームセットに基づいて、人間骨格点情報を取得すると決定してもよい。
【0051】
実現方式では、ターゲットビデオを生成することであり、第1のターゲットビデオは第1のスローモーションビデオクリップを含む、ことは、第2のビデオフレームの一部に基づいて第1のターゲットビデオ内の第1のスローモーションビデオクリップを生成すること、又は第1のビデオフレームの一部及び第2のビデオフレームの一部に基づいて第1のターゲットビデオ内の第1のスローモーションビデオクリップを生成することを含む。
【0052】
第1のターゲットビデオは、通常速度ビデオクリップ又は高速ビデオクリップを更に含む。
【0053】
実現方式では、第1の予め設定された動きは開始動き及び終了動きを含み、電子デバイスは、第2のビデオフレームセット内にあり且つ開始動きを含むビデオフレームを第1のスローモーションビデオクリップの開始フレームとして使用し、第2のビデオフレームセット内にあり且つ終了動きを含むビデオフレームを第1のスローモーションビデオクリップの終了フレームとして使用する。
【0054】
予め設定された動きは、回転、応援、ジャンプ、バスケットボールのシュート、ドリブル、スプリットジャンプ、レイアップシュート、スケートボード及びゴルフの打撃を含む。
【0055】
実現方式では、第1のターゲットビデオを生成することは、人体の予め設定された動きが第2のビデオフレームセット内のターゲットビデオフレームに現れるとき、ターゲットビデオフレームを第1のターゲットビデオのカバーとして使用することを含む。
【0056】
実施形態では、電子デバイスは、第2のビデオフレームセット内のいくつかのビデオフレームに基づいて第1のターゲット画像を生成し、第1のターゲット画像内の人体の動きは予め設定された動きであり、第1のターゲット画像を記憶する。
【0057】
実施形態では、電子デバイスは、第2のビデオフレームセット内のいくつかのビデオフレームに基づいて第2のターゲット画像を生成し、第2のターゲット画像は予め設定された動きの動き軌跡を含み、第2のターゲット画像を記憶する。
【0058】
実施形態では、当該方法は、動き検出機能が有効化されているとき、ユーザにより入力されたビデオ録画命令が検出された後にビデオフレームをキャプチャし始めるステップと、
キャプチャされた第5のビデオフレームセット内の第3の人体の動きが第3の予め設定された動きであるとき、第6のビデオフレームを自動的に録画するステップと、
第3のターゲットビデオを生成するステップであり、第3のターゲットビデオは第3のスローモーションビデオクリップを含み、第3のスローモーションビデオクリップは第6のビデオフレームセット内のいくつかのビデオフレームを含み、第3のスローモーションビデオクリップの再生速度は第1の速度として自動的に決定される、ステップと
を更に含む。
【0059】
他の態様によれば、この出願の実施形態は、ビデオ撮影方法を提供し、カメラアプリケーションを有効化するステップと、
カメラアプリケーションのスローモーションビデオ録画モードにおいて、カメラアプリケーションの動き検出機能が有効化されているとき、ユーザにより入力されたビデオ録画命令が検出された後にビデオフレームをキャプチャし始めるステップと、
キャプチャされた第1のビデオフレームセット内の第1の人体の動きが第1の予め設定された動きであるとき、第2のビデオフレームセットを自動的に録画するステップと、
第1のターゲットビデオを生成するステップであり、第1のターゲットビデオは第1のスローモーションビデオクリップを含み、第1のスローモーションビデオクリップは第2のビデオフレームセット内のいくつかのビデオフレームを含み、第1のスローモーションビデオクリップの再生速度は第1の速度として自動的に決定される、ステップと、
ユーザにより入力されたビデオ録画命令が検出された後にビデオフレームをキャプチャし始めるステップと、
キャプチャされた第3のビデオフレームセット内の第2の人体の動きが第2の予め設定された動きであるとき、第4のビデオフレームセットを自動的に録画するステップと、
第2のターゲットビデオを生成するステップであり、第2のターゲットビデオは第2のスローモーションビデオクリップを含み、第2のスローモーションビデオクリップは第4のビデオフレームセット内のいくつかのビデオフレームを含み、第2のスローモーションビデオクリップの再生速度は第2の速度として自動的に決定され、第1の予め設定された動きは第2の予め設定された動きと異なり、第1の速度は第2の速度と異なる、ステップと
を含む。
【0060】
実施形態では、カメラアプリケーションを有効化した後に、当該方法は、スローモーションプレビューインタフェースを表示するステップであり、スローモーションプレビューインタフェースは動き検出コントロールを含む、ステップを更に含んでもよい。
【0061】
実現方式では、ユーザにより入力されたビデオ録画命令が検出された後にビデオフレームをキャプチャし始めることは、スローモーションプレビューインタフェース上にキャプチャされたビデオフレームを表示することを含む。
【0062】
実現方式では、キャプチャされた第1のビデオフレームセット内の人体の動きが第1の予め設定された動きであるとき、第1のフレームレートで第2のビデオフレームセットを自動的に録画することは、第1のビデオフレームセットに基づいて人間骨格点情報を取得し、第1のビデオフレームセット内の人間骨格点情報に基づいて人体の動きを決定し、人体の動きが予め設定された動きであるとき、第1のフレームレートで第2のビデオフレームセットを自動的に録画することを含む。
【0063】
実現方式では、第1のビデオフレームセットに基づいて人間骨格点情報を取得する前に、電子デバイスは、撮影対象が人体であるとき、第1のビデオフレームセットに基づいて、人間骨格点情報を取得すると決定してもよい。
【0064】
実現方式では、ターゲットビデオを生成することであり、第1のターゲットビデオは第1のスローモーションビデオクリップを含む、ことは、第2のビデオフレームの一部に基づいて第1のターゲットビデオ内の第1のスローモーションビデオクリップを生成すること、又は第1のビデオフレームの一部及び第2のビデオフレームの一部に基づいて第1のターゲットビデオ内の第1のスローモーションビデオクリップを生成することを含む。
【0065】
第1のターゲットビデオは、通常速度ビデオクリップ又は高速ビデオクリップを更に含む。
【0066】
実現方式では、第1の予め設定された動きは開始動き及び終了動きを含み、電子デバイスは、第2のビデオフレームセット内にあり且つ開始動きを含むビデオフレームを第1のスローモーションビデオクリップの開始フレームとして使用し、第2のビデオフレームセット内にあり且つ終了動きを含むビデオフレームを第1のスローモーションビデオクリップの終了フレームとして使用する。
【0067】
予め設定された動きは、回転、応援、ジャンプ、バスケットボールのシュート、ドリブル、スプリットジャンプ、レイアップシュート、スケートボード及びゴルフの打撃を含む。
【0068】
実現方式では、第1のターゲットビデオを生成することは、人体の予め設定された動きが第2のビデオフレームセット内のターゲットビデオフレームに現れるとき、ターゲットビデオフレームを第1のターゲットビデオのカバーとして使用することを含む。
【0069】
実施形態では、電子デバイスは、第2のビデオフレームセット内のいくつかのビデオフレームに基づいて第1のターゲット画像を生成し、第1のターゲット画像内の人体の動きは予め設定された動きであり、第1のターゲット画像を記憶する。
【0070】
実施形態では、電子デバイスは、第2のビデオフレームセット内のいくつかのビデオフレームに基づいて第2のターゲット画像を生成し、第2のターゲット画像は予め設定された動きの動き軌跡を含み、第2のターゲット画像を記憶する。
【0071】
他の態様によれば、この出願の実施形態は、コンピュータ命令を含むコンピュータ記憶媒体を提供する。コンピュータ命令が電子デバイス上で実行されたとき、電子デバイスは、上記の態様のうちいずれか1つのいずれか可能な設計におけるビデオ撮影方法を実行することが可能になる。
【0072】
他の態様によれば、この出願の実施形態は、コンピュータプログラム製品を提供する。コンピュータプログラム製品がコンピュータ上で実行されたとき、コンピュータは、上記の態様のうちいずれか1つのいずれか可能な設計におけるビデオ撮影方法を実行することが可能になる。
【図面の簡単な説明】
【0073】
【
図1】従来技術における人体の動きのスローモーションビデオを録画する概略図である。
【
図2】この出願の実施形態による電子デバイスのハードウェア構造の概略図である。
【
図3】この出願の実施形態による撮影原理の概略図である。
【
図4】この出願の実施形態によるスローモーションビデオを録画するための原理の概略図である。
【
図5(a)】この出願の実施形態による表示インタフェースのグループの概略図である。
【
図5(b)】この出願の実施形態による表示インタフェースのグループの概略図である。
【
図6(a)】この出願の実施形態による表示インタフェースの他のグループの概略図である。
【
図6(b)】この出願の実施形態による表示インタフェースの他のグループの概略図である。
【
図7(a)】この出願の実施形態による表示インタフェースの他のグループの概略図である。
【
図7(b)】この出願の実施形態による表示インタフェースの他のグループの概略図である。
【
図8(a)】この出願の実施形態による表示インタフェースの他のグループの概略図である。
【
図8(b)】この出願の実施形態による表示インタフェースの他のグループの概略図である。
【
図9(a)】この出願の実施形態によるスローモーションビデオの録画時間と再生時間との間の比例関係の図である。
【
図9(b)】この出願の実施形態によるスローモーションビデオの録画時間と再生時間との間の比例関係の図である。
【
図9(c)】この出願の実施形態によるスローモーションビデオの録画時間と再生時間との間の比例関係の図である。
【
図10】この出願の実施形態による表示インタフェースのグループの概略図である。
【
図11】この出願の実施形態によるスローモーションビデオ録画方法のフローチャートである。
【
図12(a)】この出願の実施形態によるスローモーションビデオを自動的に録画するプロセスの概略図である。
【
図12(b)】この出願の実施形態によるスローモーションビデオを自動的に録画するプロセスの概略図である。
【
図12(c)】この出願の実施形態によるスローモーションビデオを自動的に録画するプロセスの概略図である。
【
図12(d)】この出願の実施形態によるスローモーションビデオを自動的に録画するプロセスの概略図である。
【
図12(e)】この出願の実施形態によるスローモーションビデオを自動的に録画するプロセスの概略図である。
【
図13(a)】この出願の実施形態によるスローモーションビデオを自動的に録画する他のプロセスの概略図である。
【
図13(b)】この出願の実施形態によるスローモーションビデオを自動的に録画する他のプロセスの概略図である。
【
図13(c)】この出願の実施形態によるスローモーションビデオを自動的に録画する他のプロセスの概略図である。
【
図13(d)】この出願の実施形態によるスローモーションビデオを自動的に録画する他のプロセスの概略図である。
【
図13(e)】この出願の実施形態によるスローモーションビデオを自動的に録画する他のプロセスの概略図である。
【
図14(a)】この出願の実施形態による表示インタフェースのグループの概略図である。
【
図14(b)】この出願の実施形態による表示インタフェースのグループの概略図である。
【
図14(c)】この出願の実施形態による表示インタフェースのグループの概略図である。
【
図15】この出願の実施形態によるスローモーションビデオを録画するための原理の概略図である。
【
図16(a)】この出願の実施形態によるスローモーションビデオを録画するプロセスの概略図である。
【
図16(b)】この出願の実施形態によるスローモーションビデオを録画するプロセスの概略図である。
【
図16(c)】この出願の実施形態によるスローモーションビデオを録画するプロセスの概略図である。
【
図16(d)】この出願の実施形態によるスローモーションビデオを録画するプロセスの概略図である。
【
図17(a)】この出願の実施形態による表示インタフェースのグループの概略図である。
【
図17(b)】この出願の実施形態による表示インタフェースのグループの概略図である。
【
図17(c)】この出願の実施形態による表示インタフェースのグループの概略図である。
【
図17(d)】この出願の実施形態による表示インタフェースのグループの概略図である。
【
図18(a)】この出願の実施形態による表示インタフェースの他のグループの概略図である。
【
図18(b)】この出願の実施形態による表示インタフェースの他のグループの概略図である。
【
図19(a)】この出願の実施形態による表示インタフェースの他のグループの概略図である。
【
図19(b)】この出願の実施形態による表示インタフェースの他のグループの概略図である。
【
図19(c)】この出願の実施形態による表示インタフェースの他のグループの概略図である。
【
図19(d)】この出願の実施形態による表示インタフェースの他のグループの概略図である。
【
図20(a)】この出願の実施形態による表示インタフェースの他のグループの概略図である。
【
図20(b)】この出願の実施形態による表示インタフェースの他のグループの概略図である。
【
図20(c)】この出願の実施形態による表示インタフェースの他のグループの概略図である。
【
図20(d)】この出願の実施形態による表示インタフェースの他のグループの概略図である。
【
図21(a)】この出願の実施形態による表示インタフェースの他のグループの概略図である。
【
図21(b)】この出願の実施形態による表示インタフェースの他のグループの概略図である。
【
図21(c)】この出願の実施形態による表示インタフェースの他のグループの概略図である。
【
図22】この出願の実施形態による人体の動き軌跡画像を生成する概略図である。
【
図23】この出願の実施形態による人体関節モデルの概略図である。
【
図24A】この出願の実施形態による人体の動き開始フレームを認識する概略図である。
【
図24B】この出願の実施形態による人体の動き終了フレームを認識する概略図である。
【
図25A】この出願の実施形態による人体の第1の予め設定された動きに基づいてスローモーションビデオを自動的に生成するプロセスの概略図である。
【
図25B】この出願の実施形態による人体の第2の予め設定された動きに基づいてスローモーションビデオを自動的に生成するプロセスの概略図である。
【
図25C】この出願の実施形態による人体の第1の予め設定された動きに基づいてスローモーションビデオを自動的に生成する他のプロセスの概略図である。
【
図25D】この出願の実施形態による人体の第1の予め設定された動きに基づいてスローモーションビデオを自動的に生成する他のプロセスの概略図である。
【
図26】この出願の実施形態によるオプティカルフロー法を使用することにより、推奨範囲の開始点及び終了点を認識する概略図である。
【
図27(a)】この出願の実施形態によるスローモーションビデオ録画プロセスの概略図である。
【
図27(b)】この出願の実施形態によるスローモーションビデオ録画プロセスの概略図である。
【
図27(c)】この出願の実施形態によるスローモーションビデオ録画プロセスの概略図である。
【
図27(d)】この出願の実施形態によるスローモーションビデオ録画プロセスの概略図である。
【
図28(a)】この出願の実施形態によるスローモーション範囲を調整する概略図である。
【
図28(b)】この出願の実施形態によるスローモーション範囲を調整する概略図である。
【
図28(c)】この出願の実施形態によるスローモーション範囲を調整する概略図である。
【
図28(d)】この出願の実施形態によるスローモーション範囲を調整する概略図である。
【
図29(a)】この出願の実施形態による手動モードでスローモーションビデオを録画するプロセスの概略図である。
【
図29(b)】この出願の実施形態による手動モードでスローモーションビデオを録画するプロセスの概略図である。
【
図29(c)】この出願の実施形態による手動モードでスローモーションビデオを録画するプロセスの概略図である。
【
図29(d)】この出願の実施形態による手動モードでスローモーションビデオを録画するプロセスの概略図である。
【
図30(a)】この出願の実施形態による手動モードでスローモーションビデオを録画する他のプロセスの概略図である。
【
図30(b)】この出願の実施形態による手動モードでスローモーションビデオを録画する他のプロセスの概略図である。
【
図30(c)】この出願の実施形態による手動モードでスローモーションビデオを録画する他のプロセスの概略図である。
【
図30(d)】この出願の実施形態による手動モードでスローモーションビデオを録画する他のプロセスの概略図である。
【
図31】この出願の一実施形態による電子デバイスの構造の概略図である。
【発明を実施するための形態】
【0074】
理解を容易にするために、この出願の実施形態に関連するいくつかの概念の例示的な説明が参照のために提供される。詳細は以下に記載される。
【0075】
フレームレート(Frame rate):フレーム単位のビットマップ画像がディスプレイに連続して現れる周波数(レート)。
【0076】
FPS(Frames Per Second):1秒当たり表示されるフレームの数(フレーム/秒)。1秒当たりのフレームの数がより多いことは、電子デバイスにより表示されるピクチャがより滑らかであることを示す。
【0077】
ビデオフレーム:例として960fpsを使用すると、電子デバイスが1秒の撮影時間で960個のフレームの撮影ピクチャを連続的にキャプチャし得る場合、それぞれの撮影ピクチャは、1つのビデオフレームと呼ばれてもよい。
【0078】
ビデオ録画フレームレート/録画フレームレート/撮影フレームレート:単位時間に電子デバイスにより録画/撮影されるビデオフレームの数。
【0079】
再生フレームレート:ビデオ再生中に1秒当たり電子デバイスにより再生されるビデオフレームの数。
【0080】
表示フレームレート:単位時間に電子デバイスのカメラアプリケーションのプレビューインタフェース上に表示されるビデオフレームの数。電子デバイスの表示フレームレートが16fpsよりも大きいとき、人間の目により見えるピクチャは整合が取れていると考えられてもよい。
【0081】
以下に、この出願の実施形態における添付図面を参照して、この出願の実施形態における技術的解決策について説明する。この出願の実施形態の説明において、「/」は、別段の指定がない限り、「又は」を意味する。例えば、A/Bは、A又はBを表してもよい。この明細書において、「及び/又は」は、関連する対象物を記述するための関連付け関係のみを記述し、3つの関係が存在してもよいことを表す。例えば、A及び/又はBは、以下の3つの場合、すなわち、Aのみが存在すること、A及びBの双方が存在すること、並びにBのみが存在することを表す。さらに、この出願の実施形態の説明において、「複数」は、2つ以上を意味する。
【0082】
この出願の実施形態において提供される録画方法は、携帯電話、タブレットコンピュータ、ウェアラブルデバイス、車載デバイス、拡張現実(augmented reality, AR)/仮想現実(virtual reality, VR)デバイス、ノートブックコンピュータ、ウルトラモバイルパーソナルコンピュータ(ultra-mobile personal computer, UMPC)、ネットブック及びパーソナルデジタルアシスタント(personal digital assistant, PDA)のような、カメラを使用することによりビデオ録画を実行できるいずれかの電子デバイスに適用されてもよい。これは、この出願の実施形態では限定されない。
【0083】
例えば、
図2は、電子デバイス200の構造の概略図である。
【0084】
電子デバイス200は、プロセッサ110、外部メモリインタフェース120、内部メモリ121、ユニバーサルシリアルバス(universal serial bus, USB)ポート130、充電管理モジュール140、電力管理モジュール141、バッテリ142、アンテナ1、アンテナ2、移動通信モジュール150、無線通信モジュール160、オーディオモジュール170、スピーカ170A、受信機170B、マイクロホン170C、ヘッドセットジャック170D、センサモジュール180、ボタン190、モータ191、インジケータ192、カメラ193、ディスプレイ194、加入者識別モジュール(subscriber identification module, SIM)カードインタフェース195等を含んでもよい。
【0085】
本発明のこの実施形態に示す構造は、電子デバイス100に対する具体的な限定を構成しないことが理解できる。この出願の他の実施形態では、電子デバイス100は、図面に示すものよりも多くの或いは少ないコンポーネントを含んでもよく、いくつかのコンポーネントを組み合わせてもよく、いくつかのコンポーネントを分割してもよく、或いは、異なるコンポーネントの配置を有してもよい。図面に示すコンポーネントは、ハードウェア、ソフトウェア、又はソフトウェアとハードウェアとの組み合わせを使用することにより実現されてもよい。
【0086】
プロセッサ110は、1つ以上の処理ユニットを含んでもよい。例えば、プロセッサ110は、アプリケーションプロセッサ(application processor, AP)、モデムプロセッサ、グラフィックス処理ユニット(graphics processing unit, GPU)、画像信号プロセッサ(image signal processor, ISP)、コントローラ、ビデオコーデック、デジタルシグナルプロセッサ(digital signal processor, DSP)、ベースバンドプロセッサ及び/又はニューラルネットワーク処理ユニット(neural-network processing unit, NPU)を含んでもよい。異なる処理ユニットは独立したコンポーネントでもよく、或いは、1つ以上のプロセッサに統合されてもよい。
【0087】
メモリは、プロセッサ110に更に配置されてもよく、命令及びデータを記憶するように構成される。いくつかの実施形態では、プロセッサ110内のメモリはキャッシュである。メモリは、プロセッサ110によりちょうど使用されるか或いは周期的に使用される命令又はデータを記憶してもよい。プロセッサ110が命令又はデータを再び使用する必要がある場合、プロセッサは、メモリから命令又はデータを直接呼び出してもよい。これは、繰り返しのアクセスを回避し、プロセッサ110の待ち時間を低減する。したがって、システム効率が改善される。
【0088】
いくつかの実施形態では、プロセッサ110は、1つ以上のインタフェースを含んでもよい。インタフェースは、集積回路間(inter-integrated circuit, I2C)インタフェース、集積回路間サウンド(inter-integrated circuit sound, I2S)インタフェース、パルスコード変調(pulse code modulation, PCM)インタフェース、ユニバーサル非同期受信機/送信機(universal asynchronous receiver/transmitter, UART)インタフェース、モバイル産業プロセッサインタフェース(mobile industry processor interface, MIPI)、汎用入力/出力(general-purpose input/output, GPIO)インタフェース、加入者識別モジュール(subscriber identity module, SIM)インタフェース、ユニバーサルシリアルバス(universal serial bus, USB)ポート等を含んでもよい。
【0089】
充電管理モジュール140は、充電器からの充電入力を受け取るように構成される。充電器は、無線充電器又は有線充電器でもよい。有線充電が使用されるいくつかの実施形態では、充電管理モジュール140は、USBポート130を通じて有線充電器から充電入力を受け取ってもよい。無線充電が使用されるいくつかの実施形態では、充電管理モジュール140は、電子デバイス100の無線充電コイルを通じて無線充電入力を受け取ってもよい。充電管理モジュール140は、バッテリ142が充電されるとき、電力管理モジュール141を使用することにより、電力を電子デバイスに更に供給してもよい。
【0090】
電力管理モジュール141は、バッテリ142及び充電管理モジュール140をプロセッサ110に接続するように構成される。電力管理モジュール141は、バッテリ142の入力及び/又は充電管理モジュール140の入力を受け取り、電力をプロセッサ110、内部メモリ121、ディスプレイ194、カメラ193、無線通信モジュール160等に供給してもよい。
【0091】
電力管理モジュール141は、バッテリ容量、バッテリサイクル数、バッテリ充電電圧、バッテリ放電電圧及びバッテリ健康状態(例えば、漏電又はインピーダンス)のような性能パラメータを監視するように構成されてもよい。いくつかの他の実施形態では、電力管理モジュール141は、代替として、プロセッサ110に配置されてもよい。いくつかの他の実施形態では、電力管理モジュール141及び充電管理モジュール140は、代替として、同じデバイスに配置されてもよい。
【0092】
電子デバイス100の無線通信機能は、アンテナ1、アンテナ2、移動通信モジュール150、無線通信モジュール160、モデムプロセッサ、ベースバンドプロセッサ等を通じて実現されてもよい。
【0093】
アンテナ1及びアンテナ2は、電磁波信号を送信及び受信するように構成される。電子デバイス100内の各アンテナは、1つ以上の通信帯域をカバーするように構成されてもよい。アンテナの利用を改善するために、異なるアンテナが更に多重化されてもよい。例えば、アンテナ1は、無線ローカルエリアネットワークにおいてダイバーシチアンテナとして多重化されてもよい。いくつかの他の実施形態では、アンテナは、同調スイッチと組み合わせて使用されてもよい。
【0094】
移動通信モジュール150は、2G/3G/4G/5G等を含み且つ電子デバイス100に適用される無線通信解決策を提供してもよい。移動通信モジュール150は、1つ以上のフィルタ、1つ以上のスイッチ、1つ以上の電力増幅器、1つ以上の低ノイズ増幅器(low noise amplifier, LNA)等を含んでもよい。移動通信モジュール150は、アンテナ1を通じて電磁波を受信し、受信した電磁波に対してフィルタリング及び増幅のような処理を実行し、復調のために処理された電磁波をモデムプロセッサに転送してもよい。移動通信モジュール150は、モデムプロセッサにより変調された信号を更に増幅し、アンテナ1を通じた放射のために信号を電磁波に変換してもよい。いくつかの実施形態では、移動通信モジュール150内の少なくともいくつかの機能モジュールは、プロセッサ110に配置されてもよい。いくつかの実施形態では、移動通信モジュール150内の少なくともいくつかの機能モジュール及びプロセッサ110内の少なくともいくつかのモジュールは、同じデバイスに配置されてもよい。
【0095】
無線通信モジュール160は、電子デバイス100に適用される、無線ローカルエリアネットワーク(wireless local area networks, WLAN)(ワイヤレスフィデリティ(wireless fidelity, Wi-Fi)ネットワーク等)、ブルートゥース(Bluetooth, BT)、グローバルナビゲーション衛星システム(global navigation satellite system, GNSS)、周波数変調(frequency modulation, FM)、近距離通信(near field communication, NFC)技術、赤外線(infrared, IR)技術等を含む無線通信のための解決策を提供してもよい。無線通信モジュール160は、1つ以上の通信処理モジュールと統合された1つ以上のコンポーネントでもよい。無線通信モジュール160は、アンテナ2を通じて電磁波を受信し、電磁波信号に対して周波数変調及びフィルタリング処理を実行し、処理された信号をプロセッサ110に送信する。無線通信モジュール160は、プロセッサ110から送信対象の信号を更に受信し、信号に対して周波数変調及び増幅を実行し、アンテナ2を通じた放射のために信号を電磁波に変換してもよい。
【0096】
いくつかの実施形態では、電子デバイス100において、アンテナ1及び移動通信モジュール150が結合され、アンテナ2及び無線通信モジュール160が結合され、それにより、電子デバイス100は、無線通信技術を使用することにより、ネットワーク及び他のデバイスと通信できる。無線通信技術は、グローバル・システム・フォー・モバイル・コミュニケーションズ(global system for mobile communications, GSM)、汎用パケット無線サービス(general packet radio service, GPRS)、符号分割多元接続(code division multiple access, CDMA)、広帯域符号分割多元接続(wideband code division multiple access, WCDMA)、時分割符号分割多元接続(time-division code division multiple access, TD-SCDMA)、ロングタームエボリューション(long term evolution, LTE)、BT、GNSS、WLAN、NFC、FM、IR技術等を含んでもよい。GNSSは、全地球測位システム(global positioning system, GPS)、全地球航法衛星システム(global navigation satellite system, GLONASS)、北斗航法衛星システム(beidou navigation satellite system, BDS)、準天頂衛星システム(quasi-zenith satellite system, QZSS)及び/又は衛星ベース補強システム(satellite based augmentation systems, SBAS)を含んでもよい。
【0097】
電子デバイス100は、GPU、ディスプレイ194、アプリケーションプロセッサ等を使用することにより表示機能を実現する。GPUは画像処理のためのマイクロプロセッサであり、ディスプレイ194及びアプリケーションプロセッサに接続される。GPUは、数学的及び幾何学的計算を実行し、画像をレンダリングするように構成される。プロセッサ110は、表示情報を生成又は変更するためのプログラム命令を実行する1つ以上のGPUを含んでもよい。
【0098】
ディスプレイ194は、画像、ビデオ等を表示するように構成される。ディスプレイ194は表示パネルを含む。表示パネルは、液晶ディスプレイ(liquid crystal display, LCD)、有機発光ダイオード(organic light-emitting diode, OLED)、アクティブマトリックス有機発光ダイオード(active-matrix organic light-emitting diode, AMOLED)、フレキシブル発光ダイオード(flex light-emitting diode, FLED)、ミニLED、マイクロLED、マイクロOLED、量子ドット発光ダイオード(quantum dot light-emitting diodes, QLED)等でもよい。いくつかの実施形態では、電子デバイス100は、1つ又はN個のディスプレイ194を含んでもよく、Nは、1よりも大きい正の整数である。
【0099】
電子デバイス100は、ISP、カメラ193、ビデオコーデック、GPU、ディスプレイ194、アプリケーションプロセッサ等を通じて写真撮影機能を実現してもよい。
【0100】
ISPは、カメラ193によりフィードバックされたデータを処理するように構成される。例えば、写真撮影中にシャッターが押下され、光がレンズを通じてカメラの感光体に送られ、光信号が電気信号に変換され、カメラの感光体が処理のために電気信号をISPに送信して、電気信号を可視画像に変換する。ISPは、画像のノイズ、輝度及び顔色に対してアルゴリズム最適化を更に実行してもよい。ISPは、写真撮影シナリオの露光及び色温度のようなパラメータを更に最適化してもよい。いくつかの実施形態では、ISPは、カメラ193に配置されてもよい。
【0101】
カメラ193は、静止画像又はビデオをキャプチャするように構成される。いくつかの実施形態では、携帯電話100は、1つ又はN個のカメラを含んでもよく、Nは1よりも大きい正の整数である。カメラ193は、前面カメラ又は背面カメラでもよい。
図3に示すように、カメラ193は、通常では、レンズ(lens)及び感光体(sensor)を含む。感光体は、CCD (charge-coupled device, 電荷結合素子)又はCMOS (complementary metal-oxide-semiconductor, 相補型金属酸化物半導体)のようないずれかの感光体でもよい。
【0102】
依然として
図3を参照すると、写真撮影プロセスにおいて、撮影対象の反射光がレンズを通過した後に、光学画像が生成されてもよく、光学画像が感光体上に投影され、感光体が受光した光信号を電気信号に変換し、次いで、カメラ193が、デジタル信号処理のために取得された電気信号をDSP (Digital Signal Processing, デジタル信号処理)モジュールに送信して、最終的にデジタル画像の1つのフレームを取得する。
【0103】
同様に、ビデオ撮影プロセスにおいて、カメラ193は、特定のフレームレートでデジタル画像の複数のフレームを連続的に撮影してもよく、連続的なデジタル画像の複数のフレームは、エンコードされた後にビデオを形成してもよい。人間の目の特殊な生理学的構造のため、人間の目により見えるピクチャのフレームレートが16フレーム/秒(fps)よりも高いとき、人間の目により見えるピクチャは整合が取れていると考えられてもよい。この現象は視覚記銘(visual retention)と呼ばれてもよい。ユーザによりビデオを視聴する連続性を確保するために、ビデオの撮影中に、携帯電話は、16フレーム/秒よりも高いフレームレート(例えば、30fps又は60fps)で、画像の全てのフレームをキャプチャしてもよい。このように、携帯電話により撮影されたビデオを見るとき、ユーザはビデオのピクチャが整合が取れていることを感知する。
【0104】
カメラ193により撮影された画像又はビデオは、ディスプレイ194を使用することにより携帯電話100に出力されてもよく、或いは、デジタル画像は、内部メモリ121(又は外部メモリ120)に記憶されてもよい。これは、この出願のこの実施形態では限定されない。
【0105】
デジタルシグナルプロセッサは、デジタル信号を処理するように構成され、デジタル画像信号に加えて他のデジタル信号を処理してもよい。例えば、電子デバイス100が周波数を選択したとき、デジタルシグナルプロセッサは、周波数エネルギーに対してフーリエ変換等を実行するように構成される。
【0106】
ビデオコーデックは、デジタルビデオを圧縮又は解凍するように構成される。電子デバイス100は、1つ以上のビデオコーデックをサポートしてもよい。したがって、電子デバイス100は、複数のコーディングフォーマット、例えば、動画専門家集団(moving picture experts group, MPEG)-1、MPEG-2、MPEG-3及びMPEG-4でビデオを再生又は録画してもよい。
【0107】
外部メモリインタフェース120は、電子デバイス100の記憶能力を拡張するために、外部記憶カード、例えばマイクロSDカードに接続するように構成されてもよい。外部記憶カードは、外部メモリインタフェース120を通じてプロセッサ110と通信して、データ記憶機能を実現する。例えば、音楽及びビデオのようなファイルは、外部記憶カードに記憶される。
【0108】
内部メモリ121は、1つ以上のコンピュータプログラムを記憶するように構成されてもよく、1つ以上のコンピュータプログラムは命令を含む。プロセッサ110は、内部メモリ121に記憶された命令を実行して、電子デバイス100が、この出願のいくつかの実施形態において提供される、連絡先をインテリジェントに推奨するための方法、様々な機能アプリケーション、データ処理等を実行することを可能にしてもよい。内部メモリ121は、プログラム記憶領域及びデータ記憶領域を含んでもよい。プログラム記憶領域は、オペレーティングシステムを記憶してもよい。プログラム記憶領域は、1つ以上のアプリケーション(例えば、ギャラリー及び連絡先)等を更に記憶してもよい。データ記憶領域は、電子デバイス101の使用中に作成されたデータ(例えば、写真及び連絡先)等を記憶してもよい。さらに、内部メモリ121は、高速ランダムアクセスメモリを含んでもよく、1つ以上のディスクストレージコンポーネント、フラッシュメモリコンポーネント又はユニバーサルフラッシュストレージ(universal flash storage, UFS)のような不揮発性メモリを更に含んでもよい。いくつかの他の実施形態では、プロセッサ110は、内部メモリ121に記憶された命令、及び/又はプロセッサに配置されたメモリに記憶された命令を実行して、電子デバイス100が、この出願の実施形態において提供される、番号をインテリジェントに推奨するための方法、様々な機能アプリケーション及びデータ処理を実行することを可能にする。
【0109】
電子デバイス100は、オーディオモジュール170、スピーカ170A、受信機170B、マイクロホン170C、ヘッドセットジャック170D、アプリケーションプロセッサ等を使用することにより、オーディオ機能、例えば、音楽再生及び録音を実現してもよい。
【0110】
オーディオモジュール170は、出力のたにデジタルオーディオ情報をアナログオーディオ信号に変換するように構成され、また、アナログオーディオ入力をデジタルオーディオ信号に変換するように構成される。オーディオモジュール170は、オーディオ信号をエンコード及びデコードするように更に構成されてもよい。いくつかの実施形態では、オーディオモジュール170は、プロセッサ110に配置されてもよく、或いは、オーディオモジュール170内のいくつかの機能モジュールは、プロセッサ110に配置されてもよい。
【0111】
スピーカ170Aは、「ホーン」とも呼ばれ、オーディオ電気信号をサウンド信号に変換するように構成される。電子デバイス100は、スピーカ170Aで音楽を聴くように或いはハンドフリーモードで通話に応答するように構成されてもよい。
【0112】
受信機170Bは、「イヤピース」とも呼ばれ、オーディオ電気信号をサウンド信号に変換するように構成される。電子デバイス100を使用することにより、通話に応答するか或いは音声メッセージを聴くとき、受信機170Bは、音声を聴くために人間の耳の近くに置かれてもよい。
【0113】
マイクロホン170Cは、「マイク」又は「mic」とも呼ばれ、サウンド信号を電気信号に変換するように構成される。通話を行うとき或いは音声メッセージを送信するとき、ユーザは、人間の口をマイクロホン170Cの近くに動かして音を発して、サウンド信号をマイクロホン170Cに入力してもよい。1つ以上のマイクロホン170Cが、電子デバイス100に配置されてもよい。いくつかの他の実施形態では、2つのマイクロホン170Cが電子デバイス100に配置されて、サウンド信号を収集してノイズ低減機能を実現してもよい。他のいくつかの実施形態では、代替として、3つ、4つ又はそれ以上のマイクロホン170Cが電子デバイス100に配置されて、サウンド信号を収集してノイズ低減機能を実現して音源を識別してもよく、それにより、方向性録音機能等を実現する。
【0114】
ヘッドセットジャック170Dは、有線ヘッドセットに接続するように構成される。ヘッドセットジャック170Dは、USBポート130でもよく、或いは、3.5mmのオープン移動端末プラットフォーム(open mobile terminal platform, OMTP)標準インタフェース又は米国セルラー電気通信業界団体(cellular telecommunications industry association of the USA, CTIA)標準インタフェースでもよい。
【0115】
センサ180は、圧力センサ、ジャイロセンサ、気圧センサ、磁気センサ、加速度センサ、距離センサ、光近接センサ、指紋センサ、温度センサ、タッチセンサ、周辺光センサ、骨伝導センサ等を含んでもよい。これは、この出願のこの実施形態では限定されない。
【0116】
明らかに、この出願のこの実施形態において提供される電子デバイス100は、ボタン190、モータ191、インジケータ192、SIMカードインタフェース195等のうち1つ以上のデバイスを更に含んでもよい。これは、この出願のこの実施形態では限定されない。
【0117】
以下の実施形態を明確に理解するのを容易にするために、関連技術の簡単な説明が最初に与えられる。
【0118】
スローモーション撮影は、高フレームレート撮影とも呼ばれ、撮影ピクチャのコンテンツのスロー再生を実現できる。通常では、スローモーション撮影のために電子デバイスで使用される撮影フレームレートは比較的高い。例えば、スローモーション撮影が有効化された後に、
図4に示すように、ユーザは、短いビデオを録画するために960fpsの撮影フレームレートを選択してもよい。この場合、電子デバイスは、960fpsの撮影フレームレートで、撮影ピクチャの全てのフレームをキャプチャしてもよい。言い換えると、電子デバイスは、1秒の撮影時間で短いピクチャの960個のフレームを連続的にキャプチャしてもよい。さらに、1秒の撮影プロセスの間に、ユーザはカメラアプリケーションのプレビューインタフェース上でリアルタイムに、撮影されているピクチャをプレビューしてもよい。例えば、依然として
図4を参照すると、電子デバイスは、30fpsの表示フレームレートでフレームを抽出し、撮影ピクチャを表示してもよい。言い換えると、電子デバイスは、1秒当たり撮影ピクチャのキャプチャされた960個のフレームから撮影ピクチャの30個のフレームを抽出し、抽出されたピクチャを撮影インタフェースのフレーミングウィンドウに表示してもよく、それにより、スローモーションビデオの撮影中にフレーミングウィンドウ内でユーザにより見られるピクチャが整合が取れていることを確保する。
【0119】
その後、1秒のスローモーションビデオの再生中に、電子デバイスは、960fpsよりも低いエンコードレートで、撮影ピクチャの960個のフレームをエンコードしてもよい。例えば、電子デバイスは、30fpsのエンコードレートで、撮影ピクチャのキャプチャされた960個のフレームをエンコードしてもよい。この場合、元の1秒のビデオコンテンツは、32秒(すなわち、960fps/32x)のビデオクリップ、すなわち、32倍(32x)のスローモーションビデオとしてゆっくり再生されて、スローモーション再生機能を実現してもよい。
【0120】
他の例として、ユーザは、短いビデオを録画するために240fpsの撮影フレームレートを選択してもよい。この場合、電子デバイスは、240fpsの撮影フレームレートで撮影ピクチャの全てのフレームをキャプチャしてもよい。言い換えると、電子デバイスは、1秒の撮影時間で短いピクチャの240個のフレームを連続的にキャプチャしてもよい。1秒のスローモーションビデオの再生中に、電子デバイスは、240fpsよりも低いエンコードレートで、撮影ピクチャの240個のフレームをエンコードしてもよい。例えば、電子デバイスは、30fpsのエンコードレートで、撮影ピクチャのキャプチャされた240個のフレームをエンコードしてもよい。この場合、元の1秒のビデオコンテンツは、8秒(すなわち、240fps/8x)のビデオ、すなわち、8倍(8x)のスローモーションビデオクリップとしてゆっくり再生されて、スローモーション再生機能を実現してもよい。
【0121】
例えば、
図5(a)及び
図5(b)は、携帯電話のグラフィカルユーザインタフェース(graphical user interface, GUI)を示す。GUIは携帯電話のホーム画面501である。
図5(a)を参照すると、ユーザによるホーム画面501上のカメラアプリケーション(application, APP)のアイコン502をタップする操作を検出した後に、携帯電話は、カメラアプリケーションを有効化し、
図5(b)に示す他のGUIを表示してもよい。GUIは、カメラプレビューインタフェースと呼ばれてもよい。プレビューインタフェースは、ビデオ録画モードに入るためのビデオ録画コントロールを含み、スローモーション(slow-motion)ビデオ録画モードに入るためのスローモーションコントロール503を更に含む。
【0122】
ユーザは、複数の方式で、カメラアプリケーションを有効化するように電子デバイスに命令してもよい点に留意すべきである。例えば、ユーザは、カメラアイコンをタップして、カメラアプリケーションを有効化するように電子デバイスに命令してもよく、ユーザは、音声モードを使用して、カメラアプリケーションを有効化するように電子デバイスに命令してもよく、或いは、ユーザは、スクリーンオフ状態のスクリーン上に「C」型の軌跡を描いて、カメラアプリケーションを有効化するように電子デバイスに命令してもよい。カメラアプリケーションを有効化するように電子デバイスをトリガする方式は、この出願のこの実施形態では限定されない。
【0123】
他の例として、ユーザによりホーム画面上のカメラアプリケーションのアイコンをタップする操作を検出した後に、携帯電話は、カメラアプリケーションを有効化し、代替として、
図6(a)及び
図6(b)に示すGUIを表示してもよい。ユーザは、
図6(b)に示すインタフェースに入るためにより多くのコントロールをタップし、スローモーションビデオ録画モードに入るためにスローモーションコントロールをタップしてもよい。
【0124】
他の例として、電子デバイスがカメラアプリケーションを有効化した後にスローモーションビデオ録画モードに直接入ってもよい場合(例えば、電子デバイスがカメラアプリケーションを有効化した後にデフォルトでスローモーションビデオ録画モードにある場合、又はユーザが最後にカメラアプリケーションを使用したときに電子デバイスがスローモーションビデオ録画モードにある場合)、電子デバイスはスローモーションプレビューインタフェースを直接表示する。
【0125】
例えば、スローモーションビデオ録画モードに入った後に、電子デバイスは、
図7(a)に示すGUIを表示する。この場合、電子デバイスは、スローモーションプレビューインタフェース701を表示する。スローモーションプレビューインタフェース701は、スローモーションビデオ録画を有効化するための録画コントロール702と、スローモーションビデオ録画モードを終了するためのコントロール703と、スローモーション再生速度(speed)を切り替えるためのコントロール704と、カメラのズームのためのコントロール705と、動き検出機能を有効化/無効化するための動き検出コントロール706とを含む。この場合、動き検出コントロール706は、デフォルトで有効化状態にある。スローモーションプレビューインタフェース701は、フラッシュを有効化/無効化するためのコントロール707と、設定を有効化するためのコントロール708と、プロンプト情報を表示するためのコントロール709と、ギャラリーアプリケーションと関連付けるためのコントロール710とを更に含む。スローモーションプレビューインタフェースは、検出ボックス711を更に含んでもよい。ユーザは、検出ボックスの位置を変更するために、或いは検出ボックスのサイズを変更するために、全体のプレビューインタフェースに対してドラッグを実行してもよい。例えば、スローモーションプレビューインタフェースは、検出ボックス711を含まなくてもよい。
【0126】
動き検出コントロール部706は、動き検出を有効化/無効化するために使用される点に留意すべきである。動き検出機能が有効化されているとき(Motion detection on)、ユーザがスローモーションビデオ録画コントロールをタップした後に、電子デバイスはスローモーションビデオ録画を直ちにトリガせず、プレビューインタフェース内の撮影対象の動きが予め設定されたトリガ条件を満たすことを電子デバイスが検出した場合にのみ、スローモーションビデオ録画を自動的にトリガする。動き検出機能が無効化されているとき、ユーザが撮影コントロール702を手動でタップした後に、スローモーションビデオ録画がトリガされる。
【0127】
可能な設計では、スローモーションプレビューインタフェースを表示した後に、電子デバイスは、
図7(b)に示すGUIを表示する。この場合、GUIはプロンプト「(960フレーム/秒)」を含まなくてもよいが、フレームレートの倍数、例えば「32x」のみを表示してもよい。
【0128】
可能な実現方式では、電子デバイスがスローモーションプレビューインタフェースを表示した後に、動き検出コントロールは、デフォルトで無効状態になってもよい。
図8(a)に示すように、ユーザは、動き検出機能を手動で有効化してもよく、
図8(b)に示すGUIが表示される。
【0129】
可能な実現方式では、電子デバイスがスローモーションプレビューインタフェースを表示した後に、スローモーションプレビューインタフェースは、代替として、動き検出コントロールを含まなくてもよい。この場合、電子デバイスは、デフォルトで動き検出機能を有効化し、インテリジェント自動スローモーションビデオ録画モードに入る。ユーザは、設定で或いは他の携帯電話コントロールを使用することにより、この機能を無効化できる。
【0130】
実施形態では、ユーザは、コントロール704を使用することにより、スローモーションビデオ録画のためのフレームレートを選択してもよい。例えば、
図7(a)に示すように、システムのデフォルト録画フレームレートは、この場合、960フレーム/秒(32x)であり、或いは言い換えると、電子デバイスは960フレーム/秒でビデオ録画を実行し、30フレーム/秒のエンコードレートで撮影画像のキャプチャされた960個のフレームをエンコードしてもよい。元の1秒のビデオコンテンツは、32秒のスローモーションビデオ、すなわち、32xのスローモーションビデオとしてゆっくり再生されてもよい。例えば、ユーザによりコントロール704をタップする操作を検出した後に、電子デバイスは、
図9(a)に示すGUIを表示する。この場合、スローモーションプレビューインタフェースは、異なる録画フレームレートを選択するためのコントロール901を表示する。例えば、任意選択のレートは、4xから256xでもよい。この出願のこの実施形態では、レート4x、32x又は256xは、30フレーム/秒に対するものである点に留意すべきである。したがって、録画フレームレートの任意選択の範囲は、120フレーム/秒から7680フレーム/秒、例えば、120フレーム/秒(4x)、240フレーム/秒(8x)、480フレーム/秒(16x)、960フレーム/秒(32x)、1920フレーム/秒(64x)及び7680フレーム/秒(256x)でもよい。例えば、
図9(a)に示すように、ユーザは、コントロール801をドラッグ、スライド又はタップすることにより録画フレームレートを選択してもよい。ユーザがスライド操作を使用することによりフレームレートを選択したとき、
図9(b)に示すGUIが表示されてもよい。この場合、表示インタフェースは、大きいアイコンの形式で現在選択されているフレームレートを表示してもよく、それにより、現在選択されているフレームレートをユーザに示す。ユーザがタップ操作を使用することによりフレームレートを選択したとき、
図9(c)に示すGUIが表示されてもよい。
【0131】
実施形態では、ユーザがフレームレート:4x及び8xを選択したとき、スローモーションプレビューインタフェースは、動き検出コントロールを含まなくてもよい。
【0132】
異なるフレームレートは、異なるスローモーションビデオ録画持続時間に対応してもよい点に留意すべきである。可能な設計では、電子デバイスにより録画されるスローモーションビデオの持続時間は、予め設定された持続時間でもよく、予め設定された長さは、電子デバイスの出荷時に予め設定されてもよい。通常では、より高い録画フレームレートは、より多くの画像フレームが1秒当たり画像センサにより処理される必要があることを示す。したがって、画像センサの処理能力に対してより高い要件が課される。さらに、録画時間が極めて長い場合、生成されたスローモーションビデオの時間が極めて長くなる。これはまた、ユーザ体験に影響を与える。例えば、1sのビデオは1920fpsで録画される。1sのビデオが30fpsでエンコードされた場合、64sのスローモーションビデオが生成される。明らかに、極めて長いスローモーションビデオは、ユーザ体験に影響を与える。実生活では、7680fpsのような高フレームレートモードは、通常では、爆弾の爆発又は弾丸の狙撃のようなシナリオを録画するために使用される必要があり、一方で、爆弾の爆発、弾丸の狙撃等は、通常では、瞬時(例えば、0.1s)に発生する。したがって、良好なユーザ体験を確保するために、異なるフレームレートモードに対応する固定の録画持続時間が、電子デバイスの出荷の前に、ユーザのために電子デバイスに設定されてもよい。
【0133】
表1に示すように、ユーザが手を叩くこと又は歩くことのような通常速度の動きのシナリオを撮影するために120fpsの録画フレームレートを選択したとき、電子デバイスは120fpsで4sのビデオを録画し、30fpsのエンコード速度で撮影ピクチャのキャプチャされた480個のフレームをエンコードして、16sの低速ビデオを生成し、バッファされたビデオフレームに対してフレーム抽出を実行することにより、スローモーション範囲外で、16sの低速ビデオの前及び後の双方に1sの通常速度ビデオを生成する。この場合、合計のビデオ持続時間は18sである。この出願文書では、スローモーションビデオにおける低速ビデオ範囲は、スローモーション範囲又はスローモーションビデオクリップと呼ばれてもよい。
【0134】
ユーザが手を叩くこと又は歩くことのような通常速度の動きのシナリオを撮影するために240fpsの録画フレームレートを選択したとき、電子デバイスは240fpsで2sのビデオを録画し、30fpsのエンコード速度で撮影ピクチャのキャプチャされた480個のフレームをエンコードして、16sの低速ビデオを生成し、バッファされたビデオフレームに対してフレーム抽出を実行することにより、スローモーション範囲外で、16sの低速ビデオの前及び後の双方に1sの通常速度ビデオを生成する。この場合、合計のビデオ持続時間は18sである。
【0135】
ユーザが480fpsの録画フレームレートを選択したとき、電子デバイスは480fpsで1sのビデオを録画し、30fpsのエンコード速度で撮影ピクチャのキャプチャされた480個のフレームをエンコードしたとき、16sの低速ビデオを生成し、バッファされたビデオフレームに対してフレーム抽出を実行することにより、スローモーション範囲外で、16sの低速ビデオの前及び後の双方に1sの通常速度ビデオを生成する。この場合、合計のビデオ持続時間は18sである。ユーザが、自然のシナリオ(落水、噴水、水面/地上の雨滴の跳ね返りの後に形成された水の跳ね返り、波等)、スポーツのシナリオ(ランニング、水泳、ダーツのシューティング等)、動物のシナリオ(ペットの走行等)、炎のシナリオ(ライターの炎、マッチの炎等)、破壊のシナリオ(ガラスカップ、卵、フルーツ等の落下/打破)のような通常の高速の動きシナリオを撮影するために960fpsの録画フレームレートを選択したとき、電子デバイスは960fpsで0.5sのビデオを録画し、30fpsのエンコードレートで撮影ピクチャのキャプチャされた480個のフレームをエンコードして、16sの低速ビデオを生成し、バッファされたビデオフレームに対してフレーム抽出を実行することにより、スローモーション範囲外で、16sの低速ビデオの前及び後の双方に1sの通常速度ビデオを生成する。この場合、合計のビデオ持続時間は18sである。可能な実現方式では、電子デバイスは960fpsで1sのビデオをバッファし、バッファされた1sのビデオから0.5sのビデオを選択して、16sの低速ビデオを生成してもよく、バッファされたビデオフレームに対してフレーム抽出を実行することにより、スローモーション範囲外で、16sの低速ビデオの前及び後の双方に1sの通常速度ビデオを生成する。この場合、合計のビデオ持続時間は18sである。
【0136】
自然のシナリオ(落雷等)、スポーツのシナリオ(手品、ボクシング、縄跳び、フェンシング等)、動物のシナリオ(乗馬、昆虫の翼等)、高圧のシナリオ(バルーンの破裂、万華鏡等)又は格好のよいシナリオ(ドローン、花火等)のような高速の動きのシナリオを撮影するためにユーザが1920fpsの録画フレームレートを選択したとき、電子デバイスは1920fpsで0.5sのビデオを録画し、30fpsのエンコードレートで撮影ピクチャのキャプチャされた960個のフレームをエンコードして、32sの低速ビデオを生成し、バッファされたビデオフレームに対してフレーム抽出を実行することにより、スローモーション範囲外で、32sの低速ビデオの前及び後の双方に1sの通常速度ビデオを生成する。この場合、合計のビデオ持続時間は34sである。可能な実現方式では、電子デバイスは1920fpsで1sのビデオをバッファし、低速エンコードのためにバッファされた1sのビデオから0.5sのビデオを選択して、32sの低速ビデオを生成してもよく、バッファされたビデオフレームに対してフレーム抽出を実行することにより、スローモーション範囲外で、32sの低速ビデオクリップの前及び後の双方に1sの通常速度ビデオを生成する。この場合、合計のビデオ持続時間は34sである。
【0137】
爆発(爆弾の爆発等)又は狙撃(弓矢の狙撃、エアライフルの狙撃、スリングショットの狙撃、弾丸の狙撃等)のような超高速の動きのシナリオを撮影するためにユーザが7680fpsの録画フレームレートを選択したとき、電子デバイスは7680fpsで0.125sのビデオを録画し、30fpsのエンコードレートで撮影ピクチャのキャプチャされた960個のフレームをエンコードして、32sの低速ビデオを生成し、バッファされたビデオフレームに対してフレーム抽出を実行することにより、スローモーション範囲外で、32sの低速ビデオクリップの前及び後の双方に1sの通常速度ビデオを生成する。この場合、合計のビデオ持続時間は34sである。
【0138】
例えば、7680fpsでビデオを録画するとき、電子デバイスは、まず、960fps又は1920fpsで元のビデオフレームを録画し、次いで、元のビデオフレームに基づいて隣接する元のビデオフレームの間のフレームを補間して、7680fpsに対応するスローモーション効果を生成してもよい。具体的には、スローモーションビデオを録画するとき、電子デバイスは、ビデオ録画フレームレートを増加させるためにフレーム補間を実行してもよい。可能な実現方式では、電子デバイスは、1920fpsで1sのビデオをバッファし、バッファされた1sのビデオから0.125sのビデオ(240個のフレーム)を選択し、次いで、撮影ピクチャの選択された240個のフレームに対して4倍フレーム補間を実行して、960個のフレームを生成し、30fpsのエンコードレートで、フレーム補間の後に取得された撮影ピクチャの960個のフレームをエンコードして、32sの低速ビデオを生成し、バッファされたビデオフレームに対してフレーム抽出を実行することにより、スローモーション範囲外で、32sの低速ビデオの前及び後の双方に1sの通常速度ビデオを生成してもよい。この場合、合計のビデオ持続時間は34sである。
【0139】
さらに、この出願のこの実施形態では、ビデオ録画持続時間は、代替として無制限でもよい。例として120fps及び240fpsの録画フレームレートを使用して、ユーザはビデオ録画持続時間を決定してもよい。
【0140】
例えば、
図10は、異なる録画フレームレートが使用されるとき、30fpsでエンコードが実行されるときの生成された低速ビデオの持続時間と録画持続時間との間の比例関係を示す。
【表1】
【0141】
例えば、
図8(a)に示すように、ユーザにより動き検出コントロールをトリガする操作を検出した後に、電子デバイスは、
図8(b)に示すGUIを表示する。この場合、電子デバイスは、インテリジェント自動スローモーションビデオ録画モードに入り、電子デバイスは、スローモーションビデオ録画を自動的にトリガしてもよい。インテリジェント自動スローモーションビデオ録画モードでは、人体検出モデルが電子デバイスに予め設定され、電子デバイスは、人体が存在するか否かを、前面カメラ又は背面カメラを使用することにより全体のプレビューインタフェース上でリアルタイムに検出してもよい。
【0142】
図11は、電子デバイスの動き検出機能が有効化された後に、電子デバイスによりスローモーションビデオ録画を自動的にトリガするフローチャートである。
【0143】
1101.動き検出コントロールが有効化状態にあるとき、カメラは、リアルタイムでプレビューインタフェース上の画像フレームを取得してもよい。
【0144】
1102.電子デバイスは、予め設定された人体検出モデルを使用することにより、カメラによりキャプチャされた画像フレーム内に人体が存在するか否かを決定してもよい。
【0145】
予め設定された人体検出モデルは、畳み込みニューラルネットワーク(Convolutional Neural Network, CNN)を使用することによる訓練を通じて取得され、電子デバイスの出荷前に電子デバイスに記憶されてもよい。カメラによりキャプチャされた画像フレーム内に人体が存在するとき、人体検出モデルを使用することにより、この場合の撮影対象が人体であると決定されてもよく、或いは、カメラによりキャプチャされた画像フレーム内に人体が存在しないとき、この場合の撮影対象が人間でない被写体であると決定されてもよい。
【0146】
1103.電子デバイスは、ユーザにより入力されたビデオ録画命令を検出する。次いで、電子デバイスは、異なる方法を使用することにより、撮影対象の異なる被写体に基づいてスローモーションビデオ録画をトリガしてもよい。
【0147】
撮影対象が人体であると検出したとき、電子デバイスは、ステップ1104及び1105(動き認識)に従って、スローモーションビデオ録画をトリガするための条件を決定し、電子デバイスは、リアルタイムで全体のプレビューインタフェース上で、撮影された人体に対して動き検出を実行してもよい。具体的には、電子デバイスは、ニューラルネットワーク処理ユニット(neural-network processing unit, NPU)内の予め設定されたネットワーク推論モジュールを使用することにより、人体に対してリアルタイム姿勢点推定及び動きタイプ認識を実行してもよい。ネットワーク推論モジュールは、人体の姿勢の特徴点(頭、手及び脚のような複数の関節を含む)を認識するために使用され且つ畳み込みニューラルネットワーク(Convolutional Neural Network, CNN)に基づいて事前に確立されたキーポイント検出モデルと、人体の動き(ジャンプ、バスケットボールのシュート及びボールのキックのような一般的な動きを含む)を認識するために使用される動き検出モデルとを含む。したがって、電子デバイスは、キーポイント検出モデルを使用することにより、リアルタイムでカメラにより取得されたビデオフレームにおける人体の姿勢を推定して、人体の関節情報を取得してもよい。次いで、電子デバイスは、動き検出モデルを使用することにより、キーポイント検出モデルから出力された人体の関節情報を解析して、人体の動きタイプを取得する。人体の動きタイプを認識したとき、電子デバイスはスローモーションビデオ録画を自動的にトリガする。
【0148】
可能な実現方式では、電子デバイスは、頭、手及び脚のような人体の複数の関節の速度、変位、姿勢変化等に基づいて人体の動きに対して事前決定を実行し、頭、手及び脚のような人体の複数の関節の速度、変位、姿勢変化等に基づいて、スローモーションビデオ撮影をトリガするための条件を決定してもよい。
【0149】
電子デバイスが撮影された人体の予め設定された動きを検出しないとき、電子デバイスは、検出ボックスを使用することにより撮影された人体に対してオプティカルフロー計算を実行し、ステップ1106~1108(オプティカルフロー法)に従ってスローモーションビデオ録画をトリガする。
【0150】
オプティカルフローは、観察される撮像面上の空間的に移動する対象物の画素の瞬間移動速度を示す。オプティカルフロー法は、画像シーケンス内の画素の時間領域変化と、隣接フレームの間の相関とに基づいて、前のフレームと現在のフレームとの間の対応関係が見出され、計算を通じて隣接フレームの間の対象物の動き情報を取得する方法である。一般的に、オプティカルフローは、或るシナリオにおける前景の対象物の動き、カメラの動き又は前景の対象物とカメラとの双方の動きにより生成される。画像に移動中の対象物が存在しない場合、オプティカルフローベクトルは、画像の全領域において連続的に変化する。画像に移動中の対象物が存在するとき、対象物と背景の間に相対的な動きが存在する。移動中の対象物の速度ベクトルは、必然的に背景の速度ベクトルと異なり、それにより、移動中の対象物の位置が計算を通じて取得できる。
【0151】
大量の計算がオプティカルフロー法において必要となるので、オプティカルフロー計算は、プレビューインタフェース上の検出ボックス内でのみ撮影された人体に対して実行されてもよい。具体的には、電子デバイスは、撮像面上にあり且つプレビューウィンドウ内の検出ボックス内にある、撮影された人体の画素に対してフレーム毎にオプティカルフロー計算を実行して、撮像面上にあり且つ検出ボックス内にある、撮影された人体の全ての画素の瞬間速度を取得し、全ての画素の計算された瞬間速度における最大速度を現在のフレームの速度出力として使用してもよい。最大速度が閾値Tを超えるとき、電子デバイスは、スローモーションビデオ録画を開始するように自動的にトリガされる。
【0152】
撮影対象が人間でない被写体であると検出したとき、電子デバイスは、ステップ1106~1108(オプティカルフロー法)に従って、スローモーションビデオ録画を直接トリガする。しかし、撮影対象が人体でない場合の予め設定された閾値Sは、撮影対象が人体である場合の予め設定された閾値T未満である。最大速度が予め設定された閾値Sを超えるとき、スローモーション録画が自動的にトリガされる。言い換えると、撮影対象が人体であるとき、オプティカルフロー法は容易にトリガされず、撮影対象が人体でないとき、予め設定された閾値はより小さく、この場合、オプティカルフロー法がより容易にトリガされる。
【0153】
動き検出機能を有効化してスローモーションビデオ録画を自動的にトリガするプロセスについては、複数の実現方式が存在してもよい点に留意すべきである。
【0154】
実施形態では、動き検出機能が有効化されているとき、電子デバイスは、予め設定された人体検出モデルを使用することにより、プレビューインタフェース上の撮影対象に対して被写体認識をリアルタイムで実行し、プレビューインタフェース上の撮影対象が人間の被写体であるか、人間でない被写体であるかを決定してもよい。ユーザがスローモーション録画コントロールをタップした後に、電子デバイスは、スローモーションビデオ録画を直ちにトリガせず、キーポイント検出モデルと動き検出モデルを使用することにより、撮影された人体に対して動きタイプ認識をリアルタイムで実行する。プレビューインタフェース上の撮影された人体の動きが予め設定された動きであると検出したとき、電子デバイスはスローモーションビデオ録画を自動的にトリガする。
【0155】
実施形態では、動き検出機能が有効化されているとき、電子デバイスは、人体検出モデル及び動き検出モデルをロードし始める。ユーザがスローモーション録画コントロールをタップした後に、電子デバイスは、人体検出モデルを使用することにより、プレビューインタフェース上の撮影対象に対して被写体認識をリアルタイムで実行し、プレビューインタフェース上の被写体が人間の被写体であるか人間でない被写体であるかを決定してもよい。撮影対象が人体であると検出したとき、電子デバイスは、キーポイント検出モデル及び動き検出モデルを使用することにより、撮影された人体に対して動きタイプ認識をリアルタイムで実行する。プレビューインタフェース上の撮影された人体の動きが予め設定された動きであると検出したとき、電子デバイスはスローモーションビデオ録画を自動的にトリガする。
【0156】
実施形態では、動き検出機能が有効化されているとき、電子デバイスは、プレビューインタフェース上の撮影対象に対して被写体認識をリアルタイムで実行し、プレビューインタフェース上の撮影対象が人間の被写体であるか人間でない被写体であるかを決定してもよい。撮影対象が人体であると検出したとき、電子デバイスは、キーポイント検出モデル及び動き検出モデルを使用することにより、撮影された人体に対して動きタイプ認識をリアルタイムで実行する。ユーザがスローモーション録画コントロールをタップした後に、プレビューインタフェース上の撮影された人体の動きが予め設定された動きであると検出したとき、電子デバイスはスローモーションビデオ録画を自動的にトリガする。
【0157】
可能な実現方式では、電子デバイスが自動スローモーションビデオ録画モードに入った後に、ユーザは、ビデオ録画命令を入力する操作を実行する必要がない(ステップ1103)。撮影された人体の予め設定された動きを検出したとき、電子デバイスは、スローモーションビデオ録画を自動的にトリガする。
【0158】
この出願のこの実施形態では、電子デバイスにより人体認識、人体動き認識、及びスローモーションビデオ録画の自動トリガを実現できる複数のソフトウェアアルゴリズム実現方式及びアルゴリズム実現方式手順が存在する点に留意すべきである。これは、この出願のこの実施形態では限定されない。
【0159】
例えば、
図12(a)、
図12(b)、
図12(c)、
図12(d)及び
図12(e)に示すように、この場合、ユーザは、電子デバイスのインテリジェント自動スローモーション機能を使用することにより、仲の良い友人が走りながら突然ジャンプするシナリオを録画したいと思う。
図12(a)に示すように、この場合、電子デバイスは、動き検出機能を有効にしており、表示される録画フレームレートは、960fpsのデフォルトフレームレートである。ユーザは、スローモーション録画フレームレートを切り替えるためのコントロールを使用することにより、異なる録画フレームレートを選択してもよい。
図12(a)に示すように、この場合、走っている人がプレビューウィンドウに表示され、電子デバイスは、動き検出機能を使用することにより、この場合のカメラのプレビューウィンドウ内の撮影対象が人体であると検出してもよい。この出願のこの実施形態では、人体の歩行及び走行は、スローモーション撮影をトリガする人体の動きとしては使用されない点に留意すべきである。ユーザによりビデオ録画コントロールをトリガする操作を検出した後に、電子デバイスは、
図12(b)に示すGUIを表示する。この場合、スローモーションビデオ録画はトリガされない。電子デバイスは、予め設定されたキーポイント検出モデルを使用することにより、撮影された人の姿勢をリアルタイムで推定して、人体の関節情報を取得し、関節情報を動き検出モデルに送信して、プレビューウィンドウ内の人体の動きタイプをリアルタイムで決定してもよい。
図12(c)に示すように、撮影された人が突然ジャンプしたとき、電子デバイスは、この時点での人体の動きの傾向が「ジャンプ」であると予測してもよく、それにより、スローモーションビデオ録画を自動的にトリガする。
【0160】
他の例として、
図13(a)、
図13(b)、
図13(c)、
図13(d)及び
図13(e)に示すように、この場合、ユーザは、電子デバイスのインテリジェント自動スローモーション機能を使用することにより、ポニーが走りながら突然ジャンプするシナリオを録画したいと思う。
図13(a)に示すように、ユーザは、スローモーション録画フレームレートを切り替えるためのコントロールを使用することにより、異なる録画フレームレートを選択してもよい。この場合、カメラにより表示される録画フレームレートは、960fpsのデフォルトフレームレートである。
図13(a)に示すように、この場合、電子デバイスは、動き検出機能を有効化しており、電子デバイスは、動き検出機能を使用することにより、カメラのプレビューウィンドウ内の撮影対象が人間でない被写体であると検出してもよい。ユーザにより撮影コントロールをタップする操作を検出した後に、携帯電話は、
図13(b)に示すインタフェースを表示し、電子デバイスは、検出ボックス内の撮影対象に対してオプティカルフロー計算をリアルタイムで実行するが、スローモーションビデオ録画をトリガしない。
図13(c)に示すように、計算を通じて現在のビデオフレーム内の検出ボックス内の撮影対象の最大速度が閾値Tを超えること習得したとき、電子デバイスはインテリジェントスローモーション録画を自動的にトリガする。
【0161】
上記の実施形態では、動き検出機能が有効化されているとき、電子デバイスはインテリジェント自動スローモーションビデオ録画モードに入る。撮影対象が人体であるとき、電子デバイスは、撮影された人体の動きタイプを認識し、人体の動きの傾向が検出されると、スローモーションビデオ録画をトリガしてもよい。人体の動きタイプが予め設定された動き検出モデルに適用可能でないとき、或いは、検出対象が人間でない被写体であるとき、オプティカルフロー法を使用することによりスローモーションビデオ録画がトリガされる。
【0162】
この出願のこの実施形態では、AI(Artificial Intelligence, 人工知能)アルゴリズムが人体の動きタイプを認識するために使用される。人体の動きが認識されたときのみ、スローモーションビデオ録画がトリガされる。このように、ユーザが関心を有する素晴らしいクリップがより容易にキャプチャされる。さらに、急激なピクチャ変化が存在するか否かを検出するような方式でスローモーションビデオ録画がトリガされる従来の技術と比較して、この出願のこの実施形態における方法は、より安定しており、偶発的なトリガのレートを低減できる。
【0163】
実施形態では、電子デバイスは、ユーザが録画することを選択した録画対象又は録画シナリオに基づいて、より適切なスローモーション録画フレームレートをユーザに更に推奨して、スローモーションビデオを生成してもよく、それにより、より良好なスローモーション再生効果を達成する。
【0164】
例えば、
図14(a)を参照すると、ユーザによりスローモーション録画フレームレートを切り替えるためのコントロールをタップする操作を検出した後に、電子デバイスは、
図14(b)に示すGUIを表示する。GUIは、フレームレートを推奨するためのコントロール1401を含む。ユーザによりコントロール1401をタップする操作を検出した後に、電子デバイスは、
図14(c)に示すGUIを表示する。この場合、電子デバイスは自動(auto)フレームレートモードに入る。autoモードにおいて、電子デバイスは、録画対象又は録画シナリオに基づいて、より適切なスローモーション録画フレームレートをユーザに推奨して、スローモーションビデオを生成してもよい。
【0165】
人体に対する動き認識がスローモーションビデオ録画をトリガするシナリオにおいて、異なる人体の動きタイプに対応し且つビッグデータの統計から取得される最も適切な録画フレームレートが、電子デバイスに予め設定されてもよい点に留意すべきである。例えば、回転及び応援に対応する推奨フレームレートは240fpsであり、ジャンプ、バスケットボールのシュート及びドリブルに対応する推奨フレームレートは480fpsであり、スプリットジャンプ、レイアップシュート、スケートボード及びゴルフの打撃に対応する推奨フレームレートは960fpsである。したがって、人体の動きタイプを認識した後に、電子デバイスは、対応する録画フレームレートを推奨し、推奨フレームレートでプレビューウィンドウ内のキャプチャされたビデオフレームをエンコードして、スローモーションビデオを取得してもよい。
【0166】
スローモーションビデオ録画をトリガするためにオプティカルフロー法が使用されるシナリオにおいて、電子デバイスは、まず、バッファされたビデオフレームシーケンスに対してフレーム抽出を実行してもよく、例えば、30fpsでフレーム抽出を実行し、次いで、撮像面上にあり且つフレーム抽出の後に取得されたシーケンス内にある移動中の対象物の画素に対してオプティカルフロー計算を実行して、撮像面上の移動中の対象物の画素の移動速度変化を取得してもよい。異なる移動速度に対応する最適なスローモーションフレームレートが、電子デバイスに予め設定される。したがって、電子デバイスは、フレーム抽出の後に取得されたシーケンスに対応する最大速度に基づいて、予め設定されたスローモーションフレームレートを読み取ってもよい。
【0167】
例えば、
図15に示すように、電子デバイスは、バッファされたビデオに対してフレーム抽出を実行して、7つのビデオフレームを取得する。さらに、電子デバイスは、検出ボックス内の撮影ピクチャの最初のフレームの全ての画素の速度を計算してもよく、点X1の速度が最高であり、最大速度Y1を出力してもよく、検出ボックス内の撮影ピクチャの2番目のフレームの全ての画素の速度を計算してもよく、点X2の速度が最高であり、最大速度Y2を出力してもよく、検出ボックス内の撮影ピクチャの3番目のフレームの全ての画素の速度を計算してもよく、点X3の速度が最高であり、最大速度Y3を出力してもよく、…、検出ボックス内の撮影画像の7番目のフレームの全ての画素の速度を計算してもよく、点X7の速度が最高であり、最大速度Y7を出力してもよい。オプティカルフローの単位及び速度は、この出願のこの実施形態では限定されない。Y4の値が最大であることが比較を通じて習得される。この場合、電子デバイスは、Y4の値に対応するスローモーションフレームレートを読み取り、録画されたビデオフレームをエンコードして、スローモーションビデオを取得し、バッファされたビデオフレームに対してフレーム抽出を実行することにより、スローモーション範囲外で通常速度ビデオを生成し、最終的に「通常速度ビデオ+低速ビデオ+通常速度ビデオ」のフォーマットのスローモーションビデオを生成し、スローモーションビデオをギャラリーに記憶する。
【0168】
可能な実現方式では、autoモードにおいて、電子デバイスは、まず、960fpsのデフォルトフレームレートでビデオフレームをバッファし、人体の動きタイプを認識するときに、予め設定されたスローモーションフレームレートを読み取ってもよい。例えば、ジャンプに対応する推奨フレームレートは480fpsである。次いで、電子デバイスは、スローモーション撮影をトリガして、推奨フレームレートでスローモーションビデオを録画する。これは、録画のために動き開始点で推奨フレームレートに切り替えることを実現し、録画のために動き終了点でデフォルトフレームレートに戻すことを実現する。
【0169】
可能な実現方式では、autoモードにおいて、電子デバイスは、デフォルトフレームレート、例えば1920fpsで1sのビデオをバッファしてもよく、或いは言い換えると、電子デバイスは、1sの撮影ピクチャの1920個のフレームをキャプチャしてもよい。録画を完了した後に、電子デバイスは、バッファされたビデオに対して後処理を実行し、推奨フレームレートを読み取る。
【0170】
電子デバイスにより読み取られた推奨フレームレートが7680fpsであるとき、電子デバイスは、バッファされた1sのビデオから0.125sのビデオ(240個のフレーム)を選択し、次いで、4倍フレーム補間を実行して、960個のフレームを生成し、30fpsで960個のフレームをエンコードして、32秒の低速ビデオを生成し、バッファされたビデオフレームに対してフレーム抽出を実行することにより、スローモーション範囲外で、32秒の低速ビデオの前及び後の双方に1sの通常速度(30fps)ビデオを生成する。この場合、合計のビデオ持続時間は34秒である。
【0171】
電子デバイスにより読み取られた推奨フレームレートが1920fpsであるとき、電子デバイスは、バッファされた1sのビデオから0.5sのビデオ(960個のフレーム)を選択し、30fpsで960個のフレームをエンコードして、32秒の低速ビデオを生成し、バッファされたビデオフレームに対してフレーム抽出を実行することにより、スローモーション範囲外で、32秒の低速ビデオの前及び後の双方に1sの通常速度(30fps)ビデオを生成する。この場合、合計のビデオ持続時間は34秒である。
【0172】
電子デバイスにより読み取られた推奨フレームレートが960fpsであるとき、電子デバイスは、まずバッファされた1sのビデオフレームに対して1倍フレーム抽出を実行して、960個のフレームを取得し、960個のフレーム(1s)から480個のフレーム(0.5s)を選択し、30fpsで480個のフレームをエンコードして、16秒の低速ビデオを生成し、バッファされたビデオに対してフレーム抽出を実行することにより、スローモーション範囲外で、16秒の低速ビデオの前及び後の双方に1sの通常速度(30fps)ビデオを生成する。この場合、合計のビデオ持続時間は18秒である。
【0173】
電子デバイスにより読み取られた推奨フレームレートが480fpsであるとき、電子デバイスは、まず、バッファされた1sのビデオフレームに対して4倍フレーム抽出を実行し、30fpsで480個のフレームをエンコードして、16秒の低速ビデオを生成し、バッファされたビデオに対してフレーム抽出を実行することにより、スローモーション範囲外で、16秒の低速ビデオの前及び後の双方に1sの通常速度(30fps)ビデオを生成する。この場合、合計のビデオ持続時間は18秒である。
【0174】
電子デバイスにより読み取られた推奨フレームレートが240fpsであるとき、電子デバイスは、まず、バッファされた1sのビデオフレームに対して8倍フレーム抽出を実行し、30fpsで240個のフレームをエンコードして、8秒の低速ビデオを生成し、バッファされたビデオに対してフレーム抽出を実行することにより、スローモーション範囲外で、8秒の低速ビデオの前及び後の双方に1sの通常速度(30fps)ビデオを生成する。この場合、合計のビデオ持続時間は10秒である。
【0175】
電子デバイスにより読み取られた推奨フレームレートが120fpsであるとき、電子デバイスは、まず、バッファされた1sのビデオフレームに対して16倍フレーム抽出を実行し、30fpsで120個のフレームをエンコードして、4秒の低速ビデオを生成し、バッファされたビデオに対してフレーム抽出を実行することにより、スローモーション範囲外で、4秒の低速ビデオの前及び後の双方に1sの通常速度(30fps)ビデオを生成する。この場合、合計のビデオ持続時間は6秒である。
【0176】
実施形態では、電子デバイスがautoモードにおいて推奨フレームレートでスローモーションビデオを生成した後に、ユーザが推奨フレームレートに満足しない場合、ユーザは、生成されたスローモーションビデオを編集して、フレームレートを再選択してもよい。電子デバイスは、ユーザにより選択されたフレームレートに基づいて、新たなスローモーションビデオを生成してもよい。
【0177】
可能な実現方式では、autoモードにおいて、電子デバイスは、高フレームレート(例えば、1920fps)でスローモーションビデオを録画し、高フレームビデオを電子デバイスにバッファし、推奨フレームレートでスローモーションビデオを生成し、スローモーションビデオをユーザに表示する。スローモーションビデオを撮影した後に、ユーザは、スローモーションビデオをタイムリーに視聴してもよい。スローモーションビデオを保存するためにタップする前に、ユーザは、スローモーションビデオの再生速度を変更してもよい。
【0178】
例えば、
図16(a)に示すように、ユーザがスローモーションビデオを撮影した後に、
図16(b)に示すGUIが表示され、「保存」を表示する。この場合、電子デバイスは、推奨フレームレートでスローモーションビデオを生成してもよい。スローモーションビデオを生成した後に、電子デバイスは、スローモーションビデオをギャラリーに直ちに記憶せず、スローモーションビデオを電子デバイスの表示ウィンドウ、例えば、
図16(c)におけるGUIに直接表示する。GUIは、ビデオを再生するための再生コントロール1601と、スローモーションビデオの再生速度を選択するための速度選択コントロール1602と、ビデオを記憶するための記憶コントロール1603と、ビデオを削除するための削除コントロール1604と、プロンプト情報を閲覧するためのコントロール1605とを含む。ユーザは、再生コントロール1601をタップして、スローモーションビデオを視聴してもよい。その後、ユーザがビデオに満足した場合、ユーザは、記憶コントロール1603をタップして、推奨フレームレートで撮影されたスローモーションビデオをギャラリーに記憶してもよい。記憶コントロール1603をタップしてスローモーションビデオを記憶する前に、ユーザは、代替として、速度選択コントロール1602をタップして、スローモーションビデオの再生速度を変更して、新たなスローモーションビデオを生成してもよい。
図16(c)におけるGUIに示すように、GUIは、プロンプト情報を閲覧するためのコントロール1605を含んでもよい。ユーザがコントロール1605をタップした後に、
図16(d)に示すGUIが表示される。この場合、電子デバイスのディスプレイは、「スローモーションビデオを記憶する前に、速度選択コントロールをタップして、スローモーションビデオの再生速度を変更できます」というプロンプト情報を表示し、ユーザがスローモーションビデオを記憶する前にスローモーションビデオの再生速度を更に変更してもよいことを示す。ユーザが電子デバイスを初めて使用するとき、且つ、対応する操作が実行されたとき、この出願文書で言及されるプロンプト情報がディスプレイに直接表示されて、ユーザのためのプロンプトを提供してもよい点に留意すべきである。
【0179】
例えば、
図17(a)に示すように、ユーザは速度選択コントロールをタップし、
図17(b)に示すGUIが表示される。GUIは、異なる再生速度、例えば、1/2、1/4、1/8及び1/16を選択するためのコントロール1701を含む。1/2は撮影対象の元の移動速度の1/2の速度を表し、1/4は撮影対象の元の移動速度の1/4の速度を表す。ユーザは、撮影対象の元の移動速度と異なる速度を選択して、新たなスローモーションビデオを生成してもよい。
図17(c)に示すように、GUIは、ユーザのためのプロンプトを提供するためのコントロール1702を更に含んでもよい。ユーザがコントロール1702をタップした後に、
図17(d)に示すGUIが表示される。GUIはプロンプト情報を表示し、異なる動きについてより適切なフレームレートをユーザに示す。例えば、再生速度1/8は回転及び応援にとってより適切であり、再生速度1/16はジャンプ、バスケットボールのシュート及びドリブルにとってより適切であり、再生速度1/32はスプリットジャンプ、レイアップシュート、スケートボード及びゴルフの打撃にとってより適切であり、再生速度1/64はバルーンの破裂及び弾丸の狙撃のような高速の動きにとってより適切である。したがって、ユーザは、より適切なフレームレートを選択して、スローモーションビデオを生成してもよい。
【0180】
例えば、
図18(a)のGUIに示すように、ユーザは、記憶コントロールをタップして、スローモーションビデオをギャラリーに記憶してもよく、
図18(b)に示すGUIが表示される。この場合、スローモーションビデオは、小さい画像の形式で、ギャラリーと関連付けるためのコントロールに記憶される。
【0181】
可能な実現方式では、autoモードにおいて、電子デバイスは、推奨フレームレートでスローモーションビデオを生成し、スローモーションビデオをギャラリーに記憶してもよい。電子デバイスは、フレーム補間法を使用することにより、より高いフレームレートに対応するスローモーション効果を達成し、フレーム抽出を通じて、より低いフレームレートに対応するスローモーション効果を達成できる。
【0182】
例えば、スローモーションビデオを撮影した後に、電子デバイスは、スローモーションビデオをギャラリーに記憶し、
図19(a)に示すGUIを表示する。ユーザは、プレビューインタフェース内のギャラリーに関連付けるためのコントロールをタップし、撮影されたスローモーションビデオを視聴してもよく、
図19(b)に示すGUIが表示される。
図19(b)に示すように、ユーザは、撮影されたスローモーションビデオに関する情報を閲覧するために、より多くのコントロール1901をタップしてもよい。コントロール1901は、速度選択コントロールを含み、ユーザは、再生速度を選択して、撮影されたスローモーションビデオを変更してもよい。例えば、
図19(c)のGUIに示すように、ユーザは、速度選択コントロールをタップし、
図19(d)に示すGUIが表示される。この場合、ユーザは、再生速度を選択して、新たなスローモーションビデオを生成してもよい。
【0183】
実施形態では、
図20(a)、
図20(b)、
図20(c)及び
図20(d)に示すように、ユーザは、代替として、ギャラリーを使用することにより撮影されたスローモーションビデオを視聴し、速度選択を実行して、スローモーション再生効果を変更してもよい。
【0184】
他の実施形態では、電子デバイスは、フレーム選択のために、選択されたスローモーション範囲に対して動的レーティングを実行してもよい。スローモーションプロセスにおける最高レーティングのビデオフレームは、最適なフレームとして選択され、ギャラリーに記憶される。代替として、ビデオフレームは、スローモーションビデオのカバーとして使用されてもよい。この実施形態では、動的レーティングモジュールが電子デバイスに予め設定される。スローモーション範囲を選択した後に、電子デバイスは、スローモーション範囲内の画像のフレーム毎にレーティング構成パラメータを動的にロードしてもよい。例えば、バスケットボールのシュートは、腕を上げる角度により大きく焦点が当てられ、ジャンプについては、胴体のジャンプの高さ及び脚の曲げ角度は、より大きいレーティングの重みを有する。これに基づいて、電子デバイスは、動きフレームの全体のセクションに対してレーティングを実行し、最高レーティングのフレームを最適なフレームとして選択する。選択された最適なフレームは、ギャラリーに単独で記憶されてもよく、或いは、スローモーションビデオのカバーとして使用されてもよい。
図12(a)、
図12(b)、
図12(c)、
図12(d)及び
図12(e)が依然として例として使用される。ユーザは、インテリジェント自動スローモーション機能を使用することにより、仲の良い友人が走りながらジャンプするビデオを録画する。録画が完了した後に、
図21(a)に示すGUIが表示される。電子デバイスは、スローモーション範囲内のビデオフレームを解析して、最適なビデオフレームを取得し、最適なフレームをスローモーションビデオのカバーとして使用し、プレビューインタフェース上にあり且つギャラリーと関連付けるために使用されるコントロールに、最適なフレームを小さい画像の形式で記憶する。ユーザがギャラリーを有効化したとき、
図21(b)に示すインタフェースが表示され、スローモーションビデオのカバーとしての最適なフレームがスローモーションビデオと共にギャラリーに記憶される。代替として、
図21(c)に示すインタフェースが表示されてもよく、最適なフレーム及びスローモーションビデオは別々にギャラリーに記憶される。
【0185】
例えば、最適なフレームは、代替として、テンプレートマッチングのような方式で選択されてもよい。最適なフレームを選択するための方法は、この出願文書では限定されない。
【0186】
実施形態では、人体画像セグメンテーションネットワークモデルが電子デバイスに予め設定されてもよく、電子デバイスは、スローモーション範囲で人体の動きに対して画像セグメンテーションを実行してもよい。人体の動きが認識された後に、電子デバイスは、録画されたビデオフレーム内の人体画像のそれぞれと背景画像とを互いに分離し、全てのビデオフレームから被写体の人体画像をセグメント化して、人体の動き軌跡画像を生成する。例えば、
図22に示すように、人体の動き軌跡画像は、スローモーションビデオのカバーとして使用されてもよく、或いは、ギャラリーに別々に記憶されてもよい。
【0187】
他の実施形態では、スローモーションビデオ録画をトリガした後に、電子デバイスは、スローモーション範囲をユーザに推奨してもよい。推奨されるスローモーション範囲内のビデオはスローモーション効果を生成するようにエンコードされてもよく、通常速度ビデオはフレーム抽出を通じて範囲外で生成されてもよく、最終的に「高速-低速-高速」ビデオが生成されてギャラリーに記憶される。
【0188】
従来技術では、スローモーションビデオ録画がトリガされた後に、スローモーション処理は、通常では、録画されたビデオの途中で固定の持続時間範囲に対して実行され、スローモーションビデオを生成する。この出願のこの実施形態では、電子デバイスは、撮影対象に対して動き認識を実行し、録画されたビデオ内で人体の動き(例えば、ジャンプ、バスケットボールのシュート又は回転)の開始フレーム及び終了フレームを認識し、動き範囲内のビデオフレームに対してスローモーション処理を実行してもよい。
【0189】
図12(a)、
図12(b)、
図12(c)、
図12(d)及び
図12(e)が依然として説明のための例として使用される。ユーザは、電子デバイスのインテリジェント自動スローモーション機能を使用することにより、仲の良い友人が走りながら突然ジャンプするシナリオを録画する。撮影が完了したとき、
図12(d)に示すGUIが表示され、「保存」を表示する。この場合、電子デバイスは、予め設定されたソフトウェア処理モジュールを使用することによりバッファされたビデオを処理し、スローモーション範囲をユーザに推奨してもよい。スローモーション録画プロセスにおいて、電子デバイスは、予め設定されたキーポイント検出モデルを使用することにより人体の関節情報を取得し、次いで、人体の動きを認識するために使用される動き検出モデルを使用することにより動きタイプを取得し、動きタイプをソフトウェア処理モジュールに報告してもよい。電子デバイスは、事前にソフトウェア処理モジュールに対してネットワークモデル訓練を実行し、訓練サンプルにおける異なる人体の動きの開始フレーム及び終了フレームにラベル付けし、ニューラルネットワークを使用することにより人体の姿勢変化率に基づいて、異なる人体の動きの開始フレーム及び終了フレームを認識してもよい。この場合、人体の動きの開始フレームと終了フレームとの間のビデオフレームは、スローモーションビデオを取得するようにエンコードされ、スローモーションビデオがユーザに推奨される。
【0190】
ビッグデータの統計に基づいて、人体がジャンプ、バスケットボールのシュート又はボールのキックのような動きを実行するとき、動きが生じる瞬間に、頭、手及び脚のような人体の関節の姿勢が大きく変化する。例えば、人体がジャンプを実行するとき脚が瞬間的に曲がり、人体がバスケットボールのシュートを実行するとき身体の跳躍状態及び手首の屈曲度が瞬間的に変化し、人体が回転を実行するとき身体の姿勢が瞬間的に左又は右に移動し、人体がジャンプ又はバスケットボールのシュートの動きを実行するとき人体の姿勢の高さも変化する。したがって、人体の動きの開始点は、人体の関節の姿勢変化率を計算することにより決定されてもよい。
【0191】
例えば、
図23に示すように、頭、首、肩、肘、手首、股、膝及び足首のような人体の異なる部分に基づいて定義された人体関節モデル、及び人体の姿勢における変化を決定するために使用される関節角度は、ソフトウェア処理モデルに予め設定される。
図23を参照すると、15個の関節が人体から選択されてもよく、10個の関節角度が定義される。関節角度1は、左手首関節と左肘関節とを接続する線と、左肘関節と左肩関節とを接続する線とにより形成される包含角度であり、関節角度5は、左足首関節と左膝関節とを接続する線と、左膝関節と左股関節とを接続する線で形成される包含角度である。2つの隣接フレームの間の時間間隔に対する画像の2つの隣接フレームの間の10個の包含角度のそれぞれの角度変化の比を計算することにより、各関節角度に対応する姿勢変化率が取得できる。バスケットボールのシュート及びジャンプのようないくつかの人体の動きについて、人体の姿勢高さも考慮される必要がある。したがって、各フレームにおける10個の関節角度に対応する姿勢変化率と人体の姿勢高さ変化率とを重み付けすることにより取得された結果が、現在のフレームの姿勢変化率として使用されてもよい。
【0192】
人体の各関節角度に対応する姿勢変化率は、人体姿勢によって大きく変化する。したがって、異なる動きについて、人体の関節角度に異なる重み値が割り当てられてもよい。例えば、ジャンプのときの人体の脚の姿勢変化により多くの注意を払い、角度3、角度4、角度5、角度6及び人体の高さに、より高い重み値が割り当てられてもよく、一方で、バスケットボールのシュートのときの人体の上腕の姿勢により多くの注意を払い、角度1、角度2及び人体の高さに、より高い重み値が割り当てられてもよい。さらに、同じ人体の動きについて、動きの開始及び動きの終了における人体の各関節角度に対応する姿勢変化率も全く異なる。したがって、動きの開始及び動きの終了における異なる関節角度の重みも異なる。
【0193】
開始フレーム及び終了フレームが異なる人体の動きについて事前に定義されてもよい。次いで、開始フレーム及び終了フレームにおける異なる動きの全ての関節角度の重み値は、ネットワーク訓練を通じて取得されてもよく、或いは、開始フレーム及び終了フレームにおける異なる人体の動きの全ての関節角度の重み値は、大きいデータの統計から取得されてもよい。このように、ピクチャの各フレームの姿勢変化率出力は、関節角度に対応する重み値及び姿勢変化率を使用することにより取得できる。
【0194】
例えば、
図24に示すように、電子デバイスは、バッファされたビデオに対してフレーム抽出を実行して、7つのビデオフレームを取得してもよい。この場合、電子デバイスは、ビデオフレーム内の人体の動きが「ジャンプ」であることを既に習得している。電子デバイスが、予め設定された値を使用することにより「ジャンプ」の動きの開始フレームを読み取るとき、10個の関節角度の重みはそれぞれa
1、a
2、...、及びa
10であり、人体の高さの重みはa
11である。電子デバイスは、リアルタイム計算を通じて、画像のi番目のフレーム内の人体の10個の関節角度に対応する姿勢変化率がそれぞれn
i1、n
i2、...、及びn
i10であり、高さ変化率がn
i11であることを習得してもよい。この場合、電子デバイスは、i番目の画像フレームの姿勢変化率M
iを、M
i=a
1n
i1+a
2n
i2+a
3n
i3+...+a
10n
i10+a
11n
i11(i=1,2,3....)として計算してもよい。画像の最初のフレームの姿勢変化率出力はM
1であり、画像の2番目のフレームの姿勢変化率出力はM
2であり、...、画像の7番目のフレームの姿勢変化率出力はM
7である。M
2の値が最大であると決定される。したがって、
図24(a)を参照すると、画像の2番目のフレームは、動き開始フレームである。同様に、電子デバイスが予め設定された値を使用することにより「ジャンプ」の動きの終了フレームを読み取るとき、10個の関節角度の重みはそれぞれb
1、b
2、...、b
10であり、人体の高さの重みはb
11である。同様に、重み計算を通じて、画像の最初のフレームの姿勢変化率出力がM
1'であり、画像の2番目のフレームの姿勢変化率出力がM
2'であり、...、画像の7番目のフレームの姿勢変化率出力がM
7'であることが習得される。M
6'の値が最大であると決定される。したがって、
図24(b)を参照すると、画像の6番目のフレームは動き終了フレームである。
【0195】
したがって、バッファされた録画ビデオを処理するとき、電子デバイスは、人体の姿勢変化率を使用することにより、人体の動きの開始フレーム及び終了フレームを決定してもよい。動きが開始されたことが検出されると、現在のフレームは動きの開始フレームとしてラベル付けされ、動きが終了したことが検出されると、現在のフレームは動きの終了フレームとしてラベル付けされる。開始フレームと終了フレームはスローモーション範囲の開始フレーム及び終了フレームに対応する。スローモーション範囲内のビデオフレームは、スローモーションビデオを生成するようにエンコードされてもよく、スローモーション範囲外のビデオフレームは、バッファされたビデオフレームに対してフレーム抽出を実行することにより、通常速度ビデオを生成するために使用されてもよく、最終的に「高速-低速-高速」の形式のスローモーションビデオが生成されてギャラリーに記憶される。
図12(e)に示すGUIが表示される。
【0196】
この実施形態では、ユーザがビデオ撮影コントロールをタップした後に、電子デバイスはプレビューウィンドウ内のビデオフレームをキャプチャし、キャプチャされたビデオフレームに対して人体動きタイプ認識を実行してもよく、人体の動きを認識したときにスローモーションビデオ録画を自動的にトリガする。可能な実現方式では、スローモーションビデオ録画を自動的にトリガした後に、電子デバイスは、1sの固定の持続時間でビデオを録画し、1sのビデオから人体動きの動き開始フレーム及び動き終了フレームを見つけて、スローモーションビデオクリップを生成してもよく、バッファされたビデオフレームに対してフレーム抽出を実行することにより、スローモーション範囲外で1sの通常速度ビデオを生成してもよい。
図25Aに示すように、ユーザがビデオ撮影コントロールをタップした後に、フレームレートは、例えば960fpsである。電子デバイスは、プレビューウィンドウ内のビデオフレームをリアルタイムでキャプチャしてもよい。この場合の撮影された人体の動きがジャンプの動きであると仮定すると、電子デバイスは960fpsで1sのビデオを録画する。動きの開始点及び終了点を決定することにより、開始点及び終了点が1sのビデオにあり、動きの範囲の持続時間が0.5sであることが分かる。この場合、0.5sの動きの範囲に対応するビデオフレームは、低速ビデオを取得するようにエンコードされる。30fpsのエンコードレートを例として使用すると、「1sの通常速度+0.5x32sの低速+1sの通常速度=1s+16s+1s=18s」の形式のビデオが生成される。
図25Bに示すように、ユーザがビデオ撮影コントロールをタップした後に、フレームレートは、例えば960fpsである。電子デバイスは、プレビューウィンドウ内のビデオフレームをリアルタイムでキャプチャしてもよい。この場合の撮影された人体の動きがバスケットボールのシュートの動きであると仮定すると、電子デバイスは960fpsで1sのビデオを録画する。動きの開始点及び終了点を決定することにより、開始点及び終了点が1sのビデオにあり、動きの範囲の持続時間が0.3sであることが分かる。この場合、0.3sの動きの範囲に対応するビデオフレームは、低速ビデオを取得するようにエンコードされる。30fpsのエンコードレートが例として使用される場合、「1sの通常速度+0.3x32sの低速+1sの通常速度=1s+9.6s+1s=11.6s」の形式のビデオが生成される。
【0197】
可能な実施形態では、スローモーションビデオ録画を自動的にトリガした後に、電子デバイスは、1sの固定の持続時間でビデオを録画し、スローモーション録画がトリガされる前にキャプチャされたビデオフレーム及びスローモーション録画がトリガされた後に録画されたビデオフレームを使用することにより、人体の動きの動き開始フレーム及び動き終了フレームを見つけてもよい。
図25Cに示すように、ユーザがビデオ撮影コントロールをタップした後に、フレームレートは、例えば960fpsである。電子デバイスは、プレビューウィンドウ内のビデオフレームをリアルタイムでキャプチャしてもよい。この場合の撮影された人体の動きがジャンプの動きであると仮定すると、電子デバイスは960fpsで1sのビデオを録画する。動きの開始点及び終了点を決定することにより、動き開始フレームがビデオ録画がトリガされる前にキャプチャされたビデオフレームにあり、動き終了フレームがビデオ録画がトリガされた後に録画されたビデオフレームにあり、動き範囲の持続時間は0.5sであることが分かる。この場合、0.5sの動きの範囲に対応するビデオフレームは、低速ビデオを取得するようにエンコードされる。30fpsのエンコードレートを例として使用すると、「1sの通常速度+0.5x32sの低速+1sの通常速度=1s+16s+1s=18s」の形式のビデオが生成される。
図25Dに示すように、ユーザがビデオ撮影コントロールをタップした後に、フレームレートは、例えば960fpsである。電子デバイスは、プレビューウィンドウ内のビデオフレームをリアルタイムでキャプチャしてもよい。この場合の撮影された人体の動きがジャンプの動きであると仮定すると、電子デバイスは960fpsで1sのビデオを録画する。動きの開始点及び終了点を決定することにより、動き開始フレームがビデオ録画がトリガされる前にキャプチャされたビデオフレームにあり、動き終了フレームがビデオ録画がトリガされた後に録画されたビデオフレームにあり、動き範囲の持続時間は0.3sであることが分かる。この場合、0.3sの動きの範囲に対応するビデオフレームは、低速ビデオを取得するようにエンコードされる。30fpsのエンコードレートを例として使用すると、「1sの通常速度+0.3x32sの低速+1sの通常速度=1s+9.6s+1s=11.6s」の形式のビデオが生成される。
【0198】
さらに、人体の動きタイプが予め設定された動き検出モデルに適用可能でないとき、或いは、撮影対象が人間でない被写体であるとき、電子デバイスは、オプティカルフロー法を使用することにより、撮影ビデオに対してスローモーション処理を実行してもよい。
図13(a)、
図13(b)、
図13(c)、
図13(d)及び
図13(e)に示すように、ユーザは、電子デバイスのインテリジェント自動スローモーション機能を使用することにより、ポニーが走りながら突然ジャンプするシナリオを録画する。撮影が完了したとき、
図13(d)に示すGUIが表示され、「保存」を表示する。この場合、電子デバイスは、バッファされたビデオを処理し、スローモーション範囲をユーザに推奨してもよい。例えば、電子デバイスは、スローモーションビデオ録画をトリガした後に、1sのビデオフレームをバッファする。電子デバイスは、まず、バッファされたビデオフレームシーケンスに対してフレーム抽出を実行し、例えば、30fpsでフレーム抽出を実行してもよく、次いで、撮像面上にあり且つフレーム抽出の後に取得されたシーケンス内にある移動対象の画素に対してオプティカルフロー計算を実行して、2つの隣接フレームの間の時間間隔に対する画像の2つの隣接フレーム内の対応する画素の位置の間の距離の比を計算することにより、各画素の移動速度変化を取得する。例えば、
図26に示すように、電子デバイスは、バッファされたビデオに対してフレーム抽出を実行して、7つのビデオフレームを取得してもよい。さらに、電子デバイスは、検出ボックス内の撮影ピクチャの最初のフレームの全ての画素の速度を計算してもよく、点X1の速度が最高であり、最大速度Y1を出力してもよく、検出ボックス内の撮影ピクチャの2番目のフレームの全ての画素の速度を計算してもよく、点X2の速度が最高であり、最大速度Y2を出力してもよく、検出ボックス内の撮影ピクチャの3番目のフレームの全ての画素の速度を計算してもよく、点X3の速度が最高であり、最大速度Y3を出力してもよく、…、検出ボックス内の撮影画像の7番目のフレームの全ての画素の速度を計算してもよく、点X7の速度が最高であり、最大速度Y7を出力してもよい。オプティカルフローの単位及び速度は、この出願のこの実施形態では限定されない。次いで、電子デバイスは、ウィンドウに基づいて、フレーム毎に固定のウィンドウフレーム内の画素の平均速度を計算し、最大平均速度に対応するウィンドウの開始点及び終了点を、スローモーション範囲の開始点及び終了点として使用してもよい。例えば、電子デバイスは、固定のウィンドウのサイズとして4を使用することにより、抽出されたフレームに対して平均速度計算を実行してもよい。例えば、Y1、Y2、Y3及びY4の平均速度はP1であり、Y2、Y3、Y4及びY5の平均速度はP2であり、Y3、Y4、Y5及びY6の平均速度はP3であり、Y4、Y5、Y6及びY7のオプティカルフロー速度はP4である。計算を通じてP2の値が最大であることが習得される。したがって、2回実行された計算に対応する開始フレーム、すなわち、2番目のフレームがスローモーション範囲の開始フレームとして使用され、2回実行された計算に対応する終了フレーム、すなわち、5番目のフレームがスローモーション範囲の終了フレームとして使用される。電子デバイスは、30fpsのフレームレートでスローモーション範囲に対応するビデオフレームに対してエンコード処理を実行し、バッファされたビデオフレームに対してフレーム抽出を実行することにより、スローモーション範囲外で、30fpsで通常速度ビデオを生成し、最終的に「通常速度ビデオ+低速ビデオ+通常速度ビデオ」のフォーマットでスローモーションビデオを生成し、スローモーションビデオをギャラリーに記憶してもよい。
図13(e)に示すように、ユーザは、コントロール1301をタップすることにより、撮影されたスローモーションビデオを視聴してもよい。
【0199】
この出願のこの実施形態では、オプティカルフロー計算は、検出ボックス内にあり且つフレーム抽出の後に取得されたシーケンス内にある撮影対象の画素に対して実行されてもよく、或いは、オプティカルフロー計算は、全体の画像内の撮影対象の画素に対して実行されて、全ての画素の速度における最大速度を出力してもよい点に留意すべきである。この出願のこの実施形態では、固定のウィンドウのサイズは、スローモーション範囲の持続時間により決定されてもよい。それぞれの2つのビデオフレームの間の時間は、録画フレームレートを使用することにより計算されるので、スローモーション範囲の異なる持続時間は、異なる固定のウィンドウサイズに対応してもよい。例えば、スローモーションビデオ録画が960fpsで実行されるとき、1sのバッファされたビデオに960個のフレームが存在してもよい。電子デバイスによりユーザに推奨されるスローモーション範囲が0.5sであるとき、対応するスライディングウィンドウのサイズは480個のフレームとすべきである。次いで、電子デバイスは、選択された480個のフレームを30fpsでエンコードして、16sのスローモーションビデオを生成してもよい。
【0200】
他の実施形態では、電子デバイスは、撮影ビデオフレームに対してリアルタイムのスローモーション処理を実行してもよい。したがって、撮影が完了した後にスローモーションビデオが生成されてもよい。
図27(a)、
図27(b)、
図27(c)及び
図27(d)に示すように、電子デバイスは、撮影された人体に対して動き検出をリアルタイムで実行し、人体のジャンプの動きを検出したとき、インテリジェントスローモーションビデオ録画をトリガしてもよい。さらに、電子デバイスは、バッファされた撮影ビデオフレームを処理して、動き開始フレーム及び動き終了フレームを見つけてもよい。したがって、撮影が完了した後に、スローモーションビデオが生成されてギャラリーに記憶されてもよく、
図27(d)に示すGUIが表示される。
【0201】
他の実施形態では、スローモーション録画が終了した後に、スローモーション範囲がユーザに推奨されてもよく、スローモーション範囲の開始点及び終了点がUIインタフェース上でユーザに提示される。これに基づいて、ユーザは、いずれかの所望の録画範囲を選択してスローモーション効果を提示するように、開始点及び終了点を調整してもよい。
図28(a)に示すように、ユーザがスローモーションビデオを撮影した後に、生成されたスローモーションビデオは、小さい画像の形式で、ギャラリーに関連付けるためのコントロールに表示される。ユーザによりギャラリーに関連付けるためのコントロールをタップする操作を検出した後に、電子デバイスは、
図28(b)に示すGUIを表示する。GUIは、再生インタフェースと呼ばれてもよい。ユーザにより再生コントロール2801をタップする操作を検出した後に、電子デバイスは、再生インタフェース上でスローモーションビデオを再生する。実施形態では、再生インタフェースは、スローモーション範囲を調整するためのコントロール2802を更に含んでもよい。例えば、ユーザは、コントロール2802をドラッグすることにより、スローモーション範囲を調整してもよい。他の可能な設計では、スローモーションビデオを撮影した後に、電子デバイスは、
図28(c)に示すGUIを直接表示してもよく、ユーザは、タイムリーにスローモーション範囲を調整してもよい。
【0202】
可能な実現方式では、スローモーションビデオ録画中に、電子デバイスは、1~2秒の持続時間で元のフレームレートのビデオをバッファし、スローモーション処理のために0.5秒のビデオを選択してもよい。これに基づいて、ユーザはスローモーション範囲を調整してもよい。
【0203】
可能な実現方式では、電子デバイスがスローモーションビデオを生成した後に、ユーザはスローモーション範囲を再調整してもよく、電子デバイスはフレーム補間又はフレーム抽出のような方式で新たなスローモーションビデオを生成してもよい。
【0204】
実施形態では、
図28(d)に示すGUIは、「ロック」コントロール2803を更に含んでもよい。スローモーションビデオが「ロック」された後に、電子デバイスはバッファされたビデオフレームを解放してもよい。これは、電子デバイスのバッファをクリアするのに役立つ。しかし、スローモーションビデオを「ロック」した後に、ユーザは、もはやスローモーション範囲を調整できない。
【0205】
例えば、
図29(a)、
図29(b)、
図29(c)及び
図29(d)に示すように、動き検出機能が無効化されているとき、ユーザは、スローモーションビデオ録画を開始するために録画コントロールを手動でトリガしてもよい。
図29(a)に示すように、この場合、対象物1がプレビューウィンドウに表示され、ユーザにより録画コントロールをタップする操作を検出した後に、電子デバイスは、スローモーションビデオ録画を開始する。
【0206】
可能な設計では、電子デバイスにより録画されるビデオの持続時間は、予め設定された持続時間でもよく、予め設定された長さは、電子デバイスの出荷時に予め設定されてもよく、或いは、ユーザにより予め設定されてもよい。ビデオの持続時間が予め設定された長であるとき、ユーザは、停止命令をトリガすることなく、ビデオ録画を自動的に完了するようにビデオ録画命令をトリガしさえすればよい。したがって、ユーザの手動操作が低減でき、比較的良好なインテリジェント録画体験がユーザに提供できる。例えば、表1を参照して、ユーザが960fpsの録画フレームレートを選択したとき、予め設定された録画時間は0.5sである。
図29(a)に示すように、ユーザにより録画コントロールをタップする操作を検出した後に、電子デバイスは、スローモーションビデオ録画を開始する。この場合、
図29(b)に示すGUIが表示され、プロンプト「撮影」がプレビューインタフェース上に表示される。例えば、電子デバイスは、1sのビデオフレームをバッファしてもよい。撮影が完了した後に、
図29(c)に示すGUIが表示され、プレビューインタフェースは、プロンプト「保存」を表示してもよい。この場合、電子デバイスは、バッファされたビデオフレームを処理し、バッファされたビデオから0.5sのビデオを選択して、スローモーションビデオを生成し、スローモーションビデオをギャラリーに記憶してもよい。
図29(d)に示すGUIが表示され、生成されたスローモーションビデオが、ギャラリーに関連付けるためのコントロールにおいて、小さい画像の形式で表示される。次いで、ユーザは、ギャラリーに関連付けるためのコントロールをタップして、撮影されたスローモーションビデオを視聴してもよい。
【0207】
可能な設計では、電子デバイスにより録画されるビデオの持続時間は無限に長くてもよい。例えば、録画フレームレートが120fps又は240fpsであるとき、録画持続時間は無制限でもよい。
図30(a)に示すように、ユーザにより録画コントロールをタップする操作を検出した後に、電子デバイスは、スローモーションビデオ録画を開始する。ユーザが録画終了コントロールをタップするまで、ビデオ録画は終了しない。
図30(b)を参照すると、この場合、プレビューインタフェースは、ビデオ録画を終了するためのコントロール3001を含み、録画持続時間を表示するためのコントロール3002を更に含む。ユーザにより録画を終了するためのコントロール3001をタップする操作を検出した後に、電子デバイスは、スローモーションビデオ録画を停止し、
図30(c)に示すGUIを表示する。プレビューインタフェースは、プロンプト「保存」を表示してもよい。この場合、電子デバイスは、撮影ビデオを処理し、スローモーションビデオを生成し、スローモーションビデオをギャラリーに記憶してもよい。
図30(d)に示すGUIが表示され、生成されたスローモーションビデオが、ギャラリーに関連付けるためのコントロールにおいて、小さい画像の形式で表示される。次いで、ユーザは、ギャラリーに関連付けるためのコントロールをタップして、撮影されたスローモーションビデオを視聴してもよい。
【0208】
実施形態では、スローモーションビデオを生成した後に、電子デバイスは、スローモーション範囲を処理して、早送り、巻き戻し及びループ再生のようなより多くの効果を達成してもよく、或いは代替として、GIFのような他のフォーマットのビデオを生成してもよい。実施形態では、電子デバイスは、スローモーションビデオに対してAI自動ダビングを更に実行し、スローモーションビデオについて、撮影対象、動きタイプ及び撮影シナリオに基づいて、スローモーションビデオにマッチする背景音楽を選択して、背景音楽と共にスローモーションビデオを生成してもよい。実施形態では、スローモーションビデオを生成した後に、電子デバイスは、透かしをスローモーションビデオに更に追加してもよい。
【0209】
上記の機能を実現するために、電子デバイスは、各機能を実行するための対応するハードウェア構造及び/又はソフトウェアモジュールを含むことが理解できる。当業者は、この明細書に開示された実施形態に記載の例におけるアルゴリズムステップと組み合わせて、この出願がハードウェア又はハードウェアとコンピュータソフトウェアとの組み合わせにより実現できることを容易に理解すべきである。機能がハードウェアにより実行されるかコンピュータソフトウェアにより駆動されるハードウェアにより実行されるかは、技術的解決策の特定の用途及び設計上の制約に依存する。当業者は、特定の用途毎に、記載の機能を実現するために異なる方法を使用し得るが、実現方式がこの出願の範囲を超えるものであると考えられるべきではない。
【0210】
この出願の実施形態では、電子デバイス又はサーバは、上記の方法の例に基づいて機能モジュールに分割されてもよい。例えば、各機能モジュールは、それぞれの対応する機能に基づく分割を通じて取得されてもよく、或いは、2つ以上の機能が1つの処理モジュールに統合されてもよい。統合されたモジュールは、ハードウェアの形式で実現されてもよく、或いは、ソフトウェア機能モジュールの形式で実現されてもよい。この出願の実施形態では、モジュールへの分割は例であり、単に論理的な機能分割である点に留意すべきである。実際の実現方式では、他の分割方式が使用されてもよい。
【0211】
この出願の実施形態は、プロセッサと、プロセッサに接続されたメモリ、入力デバイス及び出力デバイスとを含む電子デバイスを開示する。入力デバイス及び出力デバイスは、1つのデバイスとして統合されてもよい。例えば、タッチセンサが入力デバイスとして使用されてもよく、ディスプレイが出力デバイスとして使用されてもよく、タッチセンサ及びディスプレイがタッチスクリーンとして統合されてもよい。
【0212】
この場合、
図31に示すように、電子デバイスは、タッチセンサ3106及びディスプレイ3107を含むタッチスクリーン3101と、1つ以上のプロセッサ3102と、1つ以上のカメラ3108と、メモリ3103と、1つ以上のアプリケーションプログラム(図示せず)と、1つ以上のコンピュータプログラム3104とを含んでもよい。上記のコンポーネントは、1つ以上の通信バス3105を通じて互いに接続されてもよい。1つ以上のコンピュータプログラム3104は、メモリ3103に記憶され、1つ以上のプロセッサ3102により実行されるように構成される。1つ以上のコンピュータプログラム3104は命令を含み、命令は、上記の実施形態におけるステップを実行するために使用されてもよい。上記の方法の実施形態におけるステップの全ての関連する内容は、対応する物理デバイスの機能説明において引用されてもよい。詳細は、ここでは再び説明しない。
【0213】
例えば、プロセッサ3102は、具体的には、
図2に示すプロセッサ110でもよく、メモリ3103は、具体的には、
図2に示す内部メモリ116及び/又は外部メモリ120でもよく、カメラ3108は、具体的には、
図2に示すカメラ193でもよく、ディスプレイ3107は、具体的には、
図2に示すディスプレイ194でもよく、タッチセンサ3106は、具体的には、
図2に示すセンサモジュール180内のタッチセンサでもよい。これは、この出願のこの実施形態では限定されない。
【0214】
この出願の実施形態は、コンピュータ記憶媒体を更に提供する。コンピュータ記憶媒体は、コンピュータ命令を記憶する。コンピュータ命令が電子デバイス上で実行されたとき、電子デバイスは、上記の関連する方法のステップを実行して、上記の実施形態におけるビデオ録画方法を実現する。
【0215】
この出願の実施形態は、コンピュータプログラム製品を更に提供する。コンピュータプログラム製品がコンピュータ上で実行されたとき、コンピュータは、上記の関連する方法ステップを実行して、上記の実施形態におけるビデオ録画方法を実現することが可能になる。
【0216】
さらに、この出願の実施形態は、装置を更に提供する。装置は、具体的には、チップ、コンポーネント又はモジュールでもよい。装置は、接続されたプロセッサ及びメモリを含んでもよい。メモリは、コンピュータ実行可能命令を記憶するように構成される。装置が動作するとき、プロセッサは、メモリに記憶されたコンピュータ実行可能命令を実行して、チップが上記の方法の実施形態におけるビデオ録画方法を実行することを可能にしてもよい。
【0217】
この出願の実施形態において提供される電子デバイス、コンピュータ記憶媒体、コンピュータプログラム製品又はチップは、上記に提供される対応する方法を実行するように構成される。したがって、達成できる有利な効果については、上記の対応する方法における有利な効果を参照する。詳細は、ここでは再び説明しない。
【0218】
実現方式に関する上記の説明は、便宜的且つ簡単な説明のために、上記の機能モジュールへの分割が例示のための例として取られていることを、当業者が理解することを可能にする。実際の用途では、上記の機能は、要件に基づいて実現方式のために異なるモジュールに割り当てられることができ、すなわち、装置の内部構造は、上記の機能の全部又は一部を実現するために異なるモジュールに分割される。
【0219】
この出願において提供されるいくつかの実施形態では、開示の装置及び方法は、他の方式で実現されてもよいことが理解されるべきである。例えば、上記の装置の実施形態は単なる例である。例えば、モジュール又はユニットへの分割は、単に論理的な機能分割である。実際の実現方式では、他の分割方式が存在してもよい。例えば、複数のユニット又はコンポーネントは結合されてもよく或いは他の装置に統合されてもよく、或いは、いくつかの特徴は無視されてもよく或いは実行されなくてもよい。さらに、表示又は議論された相互結合、直接結合又は通信接続は、いくつかのインタフェースを通じて実現されてもよい。装置又はユニットの間の間接結合又は通信接続は、電子的、機械的、又は他の形式で実現されてもよい。
【0220】
別個の部分として記載されたユニットは、物理的に分離されてもよく或いは分離されなくてもよく、ユニットとして表示された部分は、1つ以上の物理的ユニットでもよく、1つの場所に位置してもよく、或いは、複数の異なる場所に分散されていてもよい。ユニットの一部又は全部は、実施形態における解決策の目的を達成するために、実際の要件に基づいて選択されてもよい。
【0221】
さらに、この出願の実施形態における機能ユニットは、1つの処理ユニットに統合されてもよく、或いは、各ユニットは物理的に単独で存在してもよく、或いは、2つ以上のユニットが1つのユニットに統合されてもよい。統合されたユニットは、ハードウェアの形式で実現されてもよく、或いは、ソフトウェア機能ユニットの形式で実現されてもよい。
【0222】
統合されたユニットがソフトウェア機能ユニットの形式で実現され、独立した製品として販売又は使用されるとき、統合されたユニットは読み取り可能記憶媒体に記憶されてもよい。このような理解に基づいて、この出願の技術的解決策は本質的に、或いは、現在の技術に寄与する部分又は技術的解決策の全部若しくは一部は、ソフトウェア製品の形式で実現されてもよい。ソフトウェア製品は記憶媒体に記憶され、デバイス(シングルチップマイクロコンピュータ、チップ等でもよい)又はプロセッサ(processor)に対して、この出願の実施形態に記載の方法のステップの全部又は一部を実行するように命令するためのいくつかの命令を含む。記憶媒体は、USBフラッシュドライブ、取り外し可能ハードディスク、読み取り専用メモリ(read-only memory, ROM)、ランダムアクセスメモリ(random access memory, RAM)、磁気ディスク又は光ディスクのようなプログラムコードを記憶できるいずれかの媒体を含む。
【0223】
上記の説明は、この出願の単なる具体的な実現方式であるが、この出願の保護範囲を限定することを意図するものではない。この出願に開示された技術的範囲内で、当業者により容易に理解される如何なる変更又は置換も、この出願の保護範囲に含まれるものとする。したがって、この出願の保護範囲は、特許請求の範囲の保護範囲に従うものとする。