(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公表特許公報(A)
(11)【公表番号】
(43)【公表日】2024-10-16
(54)【発明の名称】ビデオ会議のための関心領域(ROI)ベースのアップスケーリング
(51)【国際特許分類】
H04N 7/15 20060101AFI20241008BHJP
H04N 21/4402 20110101ALI20241008BHJP
G06T 3/4046 20240101ALI20241008BHJP
【FI】
H04N7/15
H04N21/4402
G06T3/4046
【審査請求】未請求
【予備審査請求】未請求
(21)【出願番号】P 2024519004
(86)(22)【出願日】2022-09-22
(85)【翻訳文提出日】2024-05-09
(86)【国際出願番号】 US2022044321
(87)【国際公開番号】W WO2023055635
(87)【国際公開日】2023-04-06
(32)【優先日】2021-09-28
(33)【優先権主張国・地域又は機関】US
(81)【指定国・地域】
(71)【出願人】
【識別番号】591016172
【氏名又は名称】アドバンスト・マイクロ・ディバイシズ・インコーポレイテッド
【氏名又は名称原語表記】ADVANCED MICRO DEVICES INCORPORATED
(74)【代理人】
【識別番号】100108833
【氏名又は名称】早川 裕司
(74)【代理人】
【識別番号】100111615
【氏名又は名称】佐野 良太
(74)【代理人】
【識別番号】100162156
【氏名又は名称】村雨 圭介
(72)【発明者】
【氏名】ロウトウ レー
【テーマコード(参考)】
5B057
5C164
【Fターム(参考)】
5B057CD05
5B057DA08
5B057DC40
5C164FA10
5C164PA33
5C164UB02P
5C164UD44S
5C164VA35P
(57)【要約】
ビデオ会議のための関心領域(ROI)ベースのアップスケーリングであって、方法は、第1の解像度のビデオ会議のビデオフレームにおいて、オブジェクトの境界領域を識別することと、境界領域によって境界付けられたビデオフレームの部分に機械学習アップスケーリングアルゴリズムを適用して、第2の解像度に対応するビデオフレームのアップスケーリングされた部分を生成することと、オブジェクトに対応するビデオフレームのアップスケーリングされた部分内の第1の複数の画素を第2の複数の画素と組み合わせることによって、第2の解像度でアップスケーリングされたビデオフレームを生成することと、を実行させる。
【選択図】
図1
【特許請求の範囲】
【請求項1】
ビデオ会議のための関心領域(ROI)ベースのアップスケーリングのための方法であって、
第1の解像度のビデオ会議のビデオフレームにおいて、オブジェクトの境界領域を識別することと、
前記境界領域によって境界付けられた前記ビデオフレームの部分に機械学習アップスケーリングアルゴリズムを適用して、第2の解像度に対応する前記ビデオフレームのアップスケーリングされた部分を生成することと、
前記オブジェクトに対応する前記ビデオフレームのアップスケーリングされた部分内の第1の複数の画素を第2の複数の画素と組み合わせることによって、前記第2の解像度でアップスケーリングされたビデオフレームを生成することと、を含む、
方法。
【請求項2】
前記ビデオ会議に参加している第1のコンピューティングデバイスから、前記ビデオ会議に参加している少なくとも1つの第2のコンピューティングデバイスに、前記アップスケーリングされたビデオフレームを送信することを含む、
請求項1の方法。
【請求項3】
前記ビデオ会議に参加している第2のコンピューティングデバイスが、前記ビデオ会議に参加している第1のコンピューティングデバイスから前記ビデオフレームを受信することと、
前記第2のコンピューティングデバイスが、前記アップスケーリングされたビデオフレームをディスプレイに出力することと、を含む、
請求項1の方法。
【請求項4】
前記第2の複数の画素を生成するために、前記境界領域の外側の前記ビデオフレームの部分に別のアップスケーリングアルゴリズムを適用することを含み、
前記アップスケーリングされたビデオフレームを生成することは、前記第1の複数の画素と、前記第2の複数の画素と、前記ビデオフレームの前記アップスケーリングされた部分に含まれ、前記オブジェクトの外側にある第3の複数の画素と、を組み合わせることを含む、
請求項1の方法。
【請求項5】
前記別のアップスケーリングアルゴリズムは、前記機械学習アップスケーリングアルゴリズムと比較して計算量が多くないアルゴリズムである、
請求項4の方法。
【請求項6】
前記第2の複数の画素は、前記第2の解像度における背景に対応し、前記アップスケーリングされたビデオフレームを生成することは、前記第1の複数の画素を前記背景にマッピングすることを含む、
請求項1の方法。
【請求項7】
前記オブジェクトは、ユーザ選択されたオブジェクトを含む、
請求項1の方法。
【請求項8】
前記オブジェクトは、デフォルトのオブジェクトタイプを含む、
請求項1の方法。
【請求項9】
ビデオ会議のための関心領域(ROI)ベースのアップスケーリングのための装置であって、
前記装置は、コンピュータプロセッサと、コンピュータメモリと、を備え、
前記コンピュータメモリは、コンピュータプログラム命令を含み、
前記コンピュータプログラム命令は、前記コンピュータプロセッサによって実行されると、
第1の解像度のビデオ会議のビデオフレームにおいて、オブジェクトの境界領域を識別することと、
前記境界領域によって境界付けられた前記ビデオフレームの部分に機械学習アップスケーリングアルゴリズムを適用して、第2の解像度に対応する前記ビデオフレームのアップスケーリングされた部分を生成することと、
前記オブジェクトに対応する前記ビデオフレームのアップスケーリングされた部分内の第1の複数の画素を第2の複数の画素と組み合わせることによって、前記第2の解像度でアップスケーリングされたビデオフレームを生成することと、
を前記コンピュータプロセッサに実行させる、
装置。
【請求項10】
前記コンピュータプログラム命令は、前記コンピュータプロセッサによって実行されると、前記アップスケーリングされたビデオフレームを、前記ビデオ会議に参加しているコンピューティングデバイスに送信することを前記コンピュータプロセッサに実行させる、
請求項9の装置。
【請求項11】
前記コンピュータプログラム命令は、前記コンピュータプロセッサによって実行されると、
前記ビデオ会議に参加しているコンピューティングデバイスから前記ビデオフレームを受信することと、
前記アップスケーリングされたビデオフレームをディスプレイに出力することと、
を前記コンピュータプロセッサに実行させる、
請求項9の装置。
【請求項12】
前記コンピュータプログラム命令は、前記コンピュータプロセッサによって実行されると、
前記第2の複数の画素を生成するために、前記境界領域の外側の前記ビデオフレームの部分に別のアップスケーリングアルゴリズムを適用することを前記コンピュータプロセッサに実行させ、
前記アップスケーリングされたビデオフレームを生成することは、前記第1の複数の画素と、前記第2の複数の画素と、前記ビデオフレームの前記アップスケーリングされた部分に含まれ、前記オブジェクトの外側にある第3の複数の画素と、を組み合わせることを含む、
請求項9の装置。
【請求項13】
前記別のアップスケーリングアルゴリズムは、前記機械学習アップスケーリングアルゴリズムと比較して計算量が多くないアルゴリズムである、
請求項12の装置。
【請求項14】
前記第2の複数の画素は、前記第2の解像度における背景に対応し、前記アップスケーリングされたビデオフレームを生成することは、前記第1の複数の画素を前記背景にマッピングすることを含む、
請求項9の装置。
【請求項15】
前記オブジェクトは、ユーザ選択されたオブジェクトを含む、
請求項9の装置。
【請求項16】
前記オブジェクトは、デフォルトのオブジェクトタイプを含む、
請求項9の装置。
【請求項17】
コンピュータ可読記憶媒体に配置されたコンピュータプログラム製品であって、
前記コンピュータプログラム製品は、ビデオ会議のための関心領域(ROI)ベースのアップスケーリングのためのコンピュータプログラム命令を含み、
前記コンピュータプログラム命令は、実行されると、
第1の解像度のビデオ会議のビデオフレームにおいて、オブジェクトの境界領域を識別することと、
前記境界領域によって境界付けられた前記ビデオフレームの部分に機械学習アップスケーリングアルゴリズムを適用して、第2の解像度に対応する前記ビデオフレームのアップスケーリングされた部分を生成することと、
前記オブジェクトに対応する前記ビデオフレームのアップスケーリングされた部分内の第1の複数の画素を第2の複数の画素と組み合わせることによって、前記第2の解像度でアップスケーリングされたビデオフレームを生成することと、
を含むステップをコンピュータシステムに実行させる、
コンピュータプログラム製品。
【請求項18】
前記ステップは、前記アップスケーリングされたビデオフレームを、前記ビデオ会議に参加しているコンピューティングデバイスに送信することを含む、
請求項17のコンピュータプログラム製品。
【請求項19】
前記ステップは、
前記ビデオ会議に参加しているコンピューティングデバイスから前記ビデオフレームを受信することと、
前記アップスケーリングされたビデオフレームをディスプレイに出力することと、を含む、
請求項17のコンピュータプログラム製品。
【請求項20】
前記ステップは、
前記第2の複数の画素を生成するために、前記境界領域の外側の前記ビデオフレームの部分に別のアップスケーリングアルゴリズムを適用することを含み、
前記アップスケーリングされたビデオフレームを生成することは、前記第1の複数の画素と、前記第2の複数の画素と、前記ビデオフレームの前記アップスケーリングされた部分に含まれ、前記オブジェクトの外側にある第3の複数の画素と、を組み合わせることを含む、
請求項17のコンピュータプログラム製品。
【発明の詳細な説明】
【背景技術】
【0001】
ビデオ会議に参加しているコンピューティングデバイスは、カメラを使用してビデオデータをキャプチャし、ビデオデータを他の参加しているコンピューティングデバイスに送信する。ビデオ会議のビデオデータの解像度は、ディスプレイの解像度、カメラのキャプチャ解像度、ネットワーク帯域幅及び計算能力を含む様々な要因に依存する。
【図面の簡単な説明】
【0002】
【
図1】いくつかの実施形態による、ビデオ会議のための関心領域(ROI)ベースのアップスケーリングのための例示的なシステムのブロック図である。
【
図2A】いくつかの実施形態による、ビデオ会議のための関心領域(ROI)ベースのアップスケーリングのための例示的なプロセスフローの一部である。
【
図2B】いくつかの実施形態による、ビデオ会議のための関心領域(ROI)ベースのアップスケーリングのための例示的なプロセスフローの一部である。
【
図2C】いくつかの実施形態による、ビデオ会議のための関心領域(ROI)ベースのアップスケーリングのための例示的なプロセスフローの一部である。
【
図2D】いくつかの実施形態による、ビデオ会議のための関心領域(ROI)ベースのアップスケーリングのための例示的なプロセスフローの一部である。
【
図3】いくつかの実施形態による、ビデオ会議のための関心領域(ROI)ベースのアップスケーリングのための例示的なコンピュータのブロック図である。
【
図4】いくつかの実施形態による、ビデオ会議のための関心領域(ROI)ベースのアップスケーリングのための例示的な方法のフローチャートである。
【
図5】いくつかの実施形態による、ビデオ会議のための関心領域(ROI)ベースのアップスケーリングのための別の例示的な方法のフローチャートである。
【
図6】いくつかの実施形態による、ビデオ会議のための関心領域(ROI)ベースのアップスケーリングのための別の例示的な方法のフローチャートである。
【
図7】本開示の実施形態による、アップスケーリングされたビデオフレームを生成する例示的な方法を示すフローチャートである。
【発明を実施するための形態】
【0003】
ビデオ会議に参加しているコンピューティングデバイスは、カメラを使用してビデオデータをキャプチャし、ビデオデータを他の参加しているコンピューティングデバイスに送信する。ビデオ会議のビデオデータの解像度は、ディスプレイの解像度、カメラのキャプチャ解像度、ネットワーク帯域幅及び計算能力を含む様々な要因に依存する。したがって、ディスプレイ解像度、ネットワーク帯域幅及びコンピューティングデバイスの計算リソースが増加するにつれて、ビデオ会議をサポートするソフトウェアは、より高い解像度でビデオデータをサポートすることが可能である。しかしながら、ビデオ会議がより高い解像度のビデオをサポートすることが可能であっても、いくつかのコンピューティングデバイスのカメラは、より低い解像度でビデオデータをキャプチャすることに限定される。例えば、ビデオ会議に参加しているコンピューティングデバイスは、4Kビデオ(例えば、3840×2160画素)をサポートするのに十分な計算リソース及びネットワークリソースを有するが、いくつかのコンピューティングデバイスのカメラは、1080pビデオ(例えば、1920×1080画素)に制限される。
【0004】
アップスケーリングアルゴリズムは、より低い解像度のビデオフレームをより高い解像度にスケーリングするために使用される。上記の例を続けると、1080pビデオカメラを使用してキャプチャされたビデオデータは、カメラのより低い解像度を補償するために4Kにアップスケーリングされる。アップスケーリングアルゴリズムは、それらの出力品質及びアルゴリズムを実行するために必要とされる計算リソースにわたって変動する。例えば、ニアレストネイバー補間(nearest-neighbor interpolation)、バイリニア補間(bilinear interpolation)又はバイキュービック補間(bicubic interpolation)等のアルゴリズムは、比較的低い計算リソースを使用するが、より低い品質(例えば、より低い精度)の出力を生成する。対照的に、機械学習を使用する(例えば、ニューラルネットワーク又は他のモデルを使用する)アップスケーリングアルゴリズムは、より高品質の出力を生成するが、かなりの計算リソースを必要とする。
【0005】
多くのビデオ会議状況において、ビデオデータは、単一の関心領域(ROI)を含む。ROIは、特定の目的のために識別された画像又はビデオフレームのサブセットである。例えば、ビデオ会議のROIは、コンピューティングデバイスのカメラによってキャプチャされたビデオ会議の人間の参加者を含む。したがって、機械学習ベースのアップスケーリングアルゴリズム等の計算量が多いアップスケーリングアルゴリズムにビデオフレーム全体を提供することは、人間の参加者の背後の背景等のように、他の参加者にとって特に関心のないビデオフレームの部分をアップスケーリングするためにかなりの計算リソースを使用する。
【0006】
そのために、本明細書は、ビデオ会議のための関心領域(ROI)ベースのアップスケーリングの様々な実施形態を説明する。いくつかの実施形態では、ビデオ会議のための関心領域(ROI)ベースのアップスケーリングの方法は、第1の解像度でのビデオ会議のビデオフレームにおいて、オブジェクトの境界領域を識別することを含む。また、本方法は、境界領域によって境界付けられたビデオフレームの部分に、機械学習アップスケーリングアルゴリズムを適用して、第2の解像度に対応するビデオフレームのアップスケーリングされた部分を生成することを含む。また、本方法は、オブジェクトに対応するビデオフレームのアップスケーリングされた部分内の第1の複数の画素を第2の複数の画素と組み合わせることによって、第2の解像度でアップスケーリングされたビデオフレームを生成することを含む。
【0007】
いくつかの実施形態では、方法は、ビデオ会議に参加している第1のコンピューティングデバイスから、ビデオ会議に参加している少なくとも1つの第2のコンピューティングデバイスに、アップスケーリングされたビデオフレームを送信することを更に含む。いくつかの実施形態では、本方法は、ビデオ会議に参加している第1のコンピューティングデバイスから、ビデオ会議に参加している第2のコンピューティングデバイスによって、ビデオフレームを受信することと、第2のコンピューティングデバイスによって、アップスケーリングされたビデオフレームをディスプレイに出力することと、を含む。いくつかの実施形態では、本方法は、第2の複数の画素を生成するために、境界領域の外側のビデオフレームの部分に別のアップスケーリングアルゴリズムを適用することを含む。そのような方法では、アップスケーリングされたビデオフレームを生成することは、第1の複数の画素と、第2の複数の画素と、ビデオフレームのアップスケーリングされた部分に含まれ、オブジェクトの外側にある第3の複数の画素と、を組み合わせることを含む。いくつかの実施形態では、第2の複数の画素は、第2の解像度における背景に対応し、アップスケーリングされたビデオフレームを生成することは、第1の複数の画素を背景にマッピングすることを含む。いくつかの実施形態では、他のアップスケーリングアルゴリズムは、機械学習アップスケーリングアルゴリズムと比較してより計算量が多くないアルゴリズムである。いくつかの実施形態では、オブジェクトは、ユーザ選択されたオブジェクトを含む。いくつかの実施形態では、オブジェクトはデフォルトのオブジェクトタイプを含む。
【0008】
また、本明細書は、ビデオ会議のためのROIベースのアップスケーリングのための装置の様々な実施形態について説明する。そのような装置は、コンピュータプロセッサ及びコンピュータメモリを含み、コンピュータメモリは、コンピュータプログラム命令を含み、コンピュータプログラム命令は、コンピュータプロセッサによって実行されると、コンピュータプロセッサに、第1の解像度でのビデオ会議のビデオフレームにおいて、オブジェクトの境界領域を識別することと、境界領域によって境界付けられたビデオフレームの部分に、機械学習アップスケーリングアルゴリズムを適用して、第2の解像度に対応するビデオフレームのアップスケーリングされた部分を生成することと、オブジェクトに対応するビデオフレームのアップスケーリングされた部分内の第1の複数の画素を第2の複数の画素と組み合わせることによって、第2の解像度でアップスケーリングされたビデオフレームを生成することと、を実行させる。
【0009】
いくつかの実施形態では、装置はコンピュータプログラム命令を含み、コンピュータプログラム命令は、コンピュータプロセッサによって実行されると、コンピュータプロセッサに、ビデオ会議に参加している第1のコンピューティングデバイスから、ビデオ会議に参加している少なくとも1つの第2のコンピューティングデバイスに、アップスケーリングされたビデオフレームを送信することを実行させる。いくつかの実施形態では、装置は、コンピュータプログラム命令を含み、コンピュータプログラム命令は、コンピュータプロセッサによって実行されると、コンピュータプロセッサに、ビデオ会議に参加している第1のコンピューティングデバイスから、ビデオ会議に参加している第2のコンピューティングデバイスによって、ビデオフレームを受信することと、第2のコンピューティングデバイスによって、アップスケーリングされたビデオフレームをディスプレイに出力することを実行させる。いくつかの実施形態では、装置は、コンピュータプログラム命令を含み、コンピュータプログラム命令は、コンピュータプロセッサによって実行されると、コンピュータプロセッサに、第2の複数の画素を生成するために、境界領域の外側のビデオフレームの部分に別のアップスケーリングアルゴリズムを適用することを実行させる。アップスケーリングされたビデオフレームを生成することは、第1の複数の画素と、第2の複数の画素と、ビデオフレームのアップスケーリングされた部分に含まれ、オブジェクトの外側にある第3の複数の画素と、を組み合わせることを含む。いくつかの実施形態では、第2の複数の画素は、第2の解像度における背景に対応し、アップスケーリングされたビデオフレームを生成することは、第1の複数の画素を背景にマッピングすることを含む。いくつかの実施形態では、他のアップスケーリングアルゴリズムは、機械学習アップスケーリングアルゴリズムと比較してより計算量が多くないアルゴリズムである。いくつかの実施形態では、オブジェクトは、ユーザ選択されたオブジェクトを含む。いくつかの実施形態では、オブジェクトは、デフォルトのオブジェクトタイプを含む。
【0010】
また、本明細書では、ビデオ会議のためのROIベースのアップスケーリングのためのコンピュータプログラム製品の様々な実施形態について説明する。そのようなコンピュータプログラム製品は、コンピュータプログラム命令を記憶する非一時的なコンピュータ可読記憶媒体上に配置され、コンピュータプログラム命令は、実行されると、コンピュータシステムに、第1の解像度でのビデオ会議のビデオフレームにおいて、オブジェクトの境界領域を識別することと、境界領域によって境界付けられたビデオフレームの部分に、機械学習アップスケーリングアルゴリズムを適用して、第2の解像度に対応するビデオフレームのアップスケーリングされた部分を生成することと、オブジェクトに対応するビデオフレームのアップスケーリングされた部分内の第1の複数の画素を第2の複数の画素と組み合わせることによって、第2の解像度でアップスケーリングされたビデオフレームを生成することと、を実行させる。
【0011】
いくつかの実施形態では、コンピュータプログラム命令は、実行されると、コンピュータシステムに、ビデオ会議に参加している第1のコンピューティングデバイスから、ビデオ会議に参加している少なくとも1つの第2のコンピューティングデバイスに、アップスケーリングされたビデオフレームを送信させる。いくつかの実施形態では、コンピュータプログラム命令は、実行されると、コンピュータシステムに、ビデオ会議に参加している第1のコンピューティングデバイスから、ビデオ会議に参加している第2のコンピューティングデバイスによって、ビデオフレームを受信することと、第2のコンピューティングデバイスによって、アップスケーリングされたビデオフレームをディスプレイに出力することと、を実行させる。いくつかの実施形態では、コンピュータプログラム命令は、実行されると、コンピュータシステムに、第2の複数の画素を生成するために、境界領域の外側のビデオフレームの部分に別のアップスケーリングアルゴリズムを適用することを実行させる。アップスケーリングされたビデオフレームを生成することは、第1の複数の画素と、第2の複数の画素と、ビデオフレームのアップスケーリングされた部分に含まれ、オブジェクトの外側にある第3の複数の画素と、を組み合わせることを含む。
【0012】
図1は、非限定的な例示的なシステムのブロック図である。例示的なシステムは、複数の参加デバイス102a~102nを含む。各参加デバイス102a~102nは、モバイルデバイス、パーソナルコンピュータ、周辺ハードウェアコンポーネント、ゲームデバイス、セットトップボックス等を含む様々なコンピューティングデバイスのうち何れかとして実装することができる。参加デバイス102a~102nは、ネットワーク104を介して通信可能に結合される。ネットワーク104は、1つ以上の有線ネットワーク、1つ以上の無線ネットワーク、それらの組合せ、又は、参加デバイス102a~102n間のデータ通信を容易にすることが理解され得るような他のネットワークを含む。
【0013】
各参加デバイス102a~102nは、それぞれのビデオ会議モジュール106a~106nを含む。ビデオ会議モジュール106a~106nは、参加デバイス102a~102n間のビデオ会議を容易にするモジュールである。ビデオ会議モジュール106a~106nは、(例えば、参加デバイスのカメラ、マイクロフォン又は他の入力デバイスを使用して)ビデオデータ、オーディオデータ又はそれらの組合せを符号化し、符号化されたビデオデータをレンダリング及び表示のために他の参加デバイス102a~102nに提供する。いくつかの実施形態では、ビデオ会議モジュール106a~106nは、参加デバイス102a~102nのユーザインタフェース又は表示を符号化するビデオデータを符号化し、レンダリング及び表示(例えば、「画面共有」)のためにビデオデータを他の参加デバイス102a~102nに提供するように構成されている。
【0014】
いくつかの実施形態では、ビデオ会議モジュール106a~106nは、現在話しているユーザのビデオ及びオーディオデータを、他のユーザに対してより大きいウィンドウに表示する。言い換えれば、(例えば、着信オーディオデータを検出することによって決定されるように)ユーザが活発に話している参加デバイス102a~102nからのビデオ及びオーディオデータは、より大きいウィンドウに表示され、他のユーザのビデオは、それぞれのより小さいウィンドウに表示される。したがって、各ユーザが可視である間、現在話しているユーザのビデオは、他のウィンドウに対してより大きいウィンドウ内に示される。他の実施形態では、所定のユーザのビデオは、所定のユーザが活発に話しているかどうかにかかわらず、より大きいウィンドウ内に示される。例えば、指定されたプレゼンター、ホスト又は他のより高い優先度のユーザのビデオは、より大きなウィンドウに示され、他のユーザのビデオは、他のウィンドウに示される。
【0015】
また、1つ以上の参加デバイス102a~102nは、本開示のいくつかの実施形態による、ビデオ会議のためのROIベースのアップスケーリングのためのモジュールであるアップスケーリングモジュール108a~108nを含む。
図1は、アップスケーリングモジュール108a~108nを有するものとして各参加デバイス102a~102nを示すが、いくつかの実施形態では、参加デバイス102a~102nのサブセットのみがアップスケーリングモジュール108a~108nを含むことになることを理解されたい。更に、
図1は、ビデオ会議モジュール106a~106nとは別のモジュールとしてアップスケーリングモジュール108a~108nを示しているが、いくつかの実施形態では、アップスケーリングモジュール108a~108nは、ビデオ会議モジュール106a~106nの一部として実装されることを理解されたい。
【0016】
アップスケーリングモジュール108a~108nは、入力として、第1の解像度からより高い第2の解像度にアップスケーリングするためのビデオ会議用のビデオフレームを受信する。いくつかの実施形態では、ビデオフレームは、(例えば、ビデオ会議モジュール106a~106nによって)ビデオフレームが入力として提供されるアップスケーリングモジュール108a~108nを実行する同じ参加デバイス102a~102nによって生成される。言い換えれば、ビデオフレームは、ビデオ会議における他の参加デバイス102a~102nに送信される前にアップスケーリングされる。他の実施形態では、ビデオフレームは、別の参加デバイス102a~102nから受信され、受信側参加デバイス102a~102nによって表示される前にアップスケーリングされる。
【0017】
アップスケーリングモジュール108a~108nは、ビデオフレームにおいて、オブジェクトの境界領域を識別する。オブジェクトは、ビデオフレーム内の画像オブジェクト(例えば、画素の特定のグルーピング)である。例えば、いくつかの実施形態では、オブジェクトは、人間の参加者によって使用される参加デバイス102a~102nのカメラによってキャプチャされるようなビデオ会議の人間の参加者に対応する。当業者は、いくつかの実施形態では、オブジェクトが他の関心領域に対応することを理解するであろう。いくつかの実施形態では、オブジェクトは、ユーザ選択されたオブジェクトを含む。例えば、画像セグメント化アルゴリズムがビデオフレームに適用され、複数のオブジェクトを識別する。次に、境界領域が識別されるオブジェクトが、識別されたオブジェクトから選択される。他の実施形態では、オブジェクトは、デフォルトのオブジェクトタイプである。例えば、画像セグメント化アルゴリズムは、ビデオフレーム内の人間のオブジェクトを識別する。次いで、人間のオブジェクトは、境界領域が識別されるオブジェクトとして自動的に選択される。
【0018】
図1のアップスケーリングモジュール108a~108nは、理解され得るように、画像セグメント化アルゴリズム又は他のアルゴリズムを使用して、ビデオフレーム内のオブジェクトを識別する。オブジェクトを識別した後、アップスケーリングモジュール108a~108nは、オブジェクトの境界領域を識別する。いくつかの実施形態では、境界領域は、オブジェクトのための境界ボックスを含む。境界ボックスは、オブジェクトが含まれる画素の2次元長方形領域である。例えば、いくつかの実施形態では、境界ボックスは、オブジェクトのための最近傍フィッティング境界ボックス(例えば、オブジェクトを完全に含むように最小幅及び高さを有する境界ボックス)を含む。いくつかの実施形態では、境界ボックスは、境界ボックスのエッジとオブジェクトとの間に閾値量の画素(例えば、1つ、2つ又は他の比較的少数の画素)を含む。例えば、境界ボックスの1つ以上の辺は、オブジェクトの最近傍部分から最大で画素の閾値量だけ分離される。当業者は、境界ボックス以外の境界も本開示の範囲内で企図されることを理解するであろう。
【0019】
次に、アップスケーリングモジュール108a~108nは、境界領域によって境界付けられたビデオフレームの部分に機械学習アップスケーリングアルゴリズムを適用して、第2の解像度に対応するビデオフレームのアップスケーリングされた部分を生成する。ビデオフレームのアップスケーリングされた部分は、ビデオフレームの部分の解像度が第2の解像度に比例してアップスケーリングされるという点で、第2の解像度に対応する。例えば、第1の解像度が1080pであり、第2の解像度が4Kであると仮定すると、アップスケーリングされたビデオフレームは、ビデオフレームの解像度の4倍の解像度を有することになる。したがって、ビデオフレームのアップスケーリングされた部分は、アップスケーリング前のビデオフレームの部分の解像度の4倍の解像度を有することになる。
【0020】
上述したように、境界領域によって境界付けられたビデオフレームの部分は、オブジェクト(例えば、ビデオ会議に参加しているユーザ)を含む。境界領域がビデオフレームのROIを効果的に画定するので、比較的計算量が多い機械学習アップスケーリングアルゴリズムがビデオフレームのこのサブセットに適用されて、ビデオフレームのROIのより高品質のアップスケーリングされたバージョンが生成される。一例として、境界領域によって境界付けられたビデオフレームの部分は、入力として、ニューラルネットワーク、深層畳み込みニューラルネットワーク又は他の訓練された機械学習モデルに提供され、第2の解像度に対応するビデオフレームのアップスケーリングされた部分を生成する。したがって、結果として得られるビデオフレームのアップスケーリングされた部分は、アップスケーリングされたオブジェクトを含む。
【0021】
アップスケーリングされたオブジェクトを含むアップスケーリングされたビデオフレームを第2の解像度で生成するために、アップスケーリングされたオブジェクトの画素は、第2の解像度に対応する他の画素と組み合わされなければならない。したがって、アップスケーリングモジュール108a~108nは、境界領域の外側のビデオフレームの部分に別のアップスケーリングアルゴリズムを適用する。他のアップスケーリングアルゴリズムは、境界領域の内側のビデオフレームの部分をアップスケーリングするために使用される機械学習アップスケーリングアルゴリズムと比較して、より計算量が多くないアップスケーリングアルゴリズムである。例えば、他のアップスケーリングアルゴリズムは、機械学習アップスケーリングアルゴリズムと比較して、アップスケーリングされた出力を生成するために、より少ない動作又はより少ない計算リソースを必要とする。より計算量が多くないアップスケーリングアルゴリズムは、機械学習アップスケーリングアルゴリズムと比較してより低い品質の出力を潜在的にもたらすことになるが、より計算量が多くないアップスケーリングアルゴリズムは、境界領域の外側(例えば、関心領域以外)のフレームの部分にのみ適用される。いくつかの実施形態では、他のアップスケーリングアルゴリズムは、例えば、ニアレストネイバー補間アルゴリズム、バイリニア補間アルゴリズム若しくはバイキュービック補間アルゴリズム、又は、理解され得る他のアルゴリズムを含む。
【0022】
他のアップスケーリングアルゴリズムを境界領域の外側のビデオフレームの部分に適用した後、このアップスケーリングされた部分は、アップスケーリングされたビデオフレームを生成するために、機械学習アップスケーリングアルゴリズムによって生成されたビデオフレームのアップスケーリングされた部分と組み合わされる。したがって、アップスケーリングされたビデオフレームは、機械学習アップスケーリングアルゴリズムによってアップスケーリングされ、アップスケーリングされたオブジェクトを含む第1の部分と、他のより計算量が多くないアップスケーリングアルゴリズムによってアップスケーリングされた第2の部分と、を含む。機械学習アルゴリズムによってアップスケーリングされた第1の部分は、境界領域の内部全体に対応するので、いくつかの実施形態では、第1の部分は、オブジェクトの外側のある量の画素を含み、また機械学習アップスケーリングアルゴリズムによってアップスケーリングされる。
【0023】
他の実施形態では、アップスケーリングされたオブジェクトを含むアップスケーリングされたビデオフレームを第2の解像度で生成するために、アップスケーリングされたオブジェクトの画素は、背景画像又は背景ビデオフレームにマッピングされる。例えば、ビデオ会議モジュール106a~106nがビデオ会議の背景置換をサポートし、それによってビデオデータ(例えば、ユーザ又は他の関心領域以外のビデオデータ)の背景が除去され、別の画像又はビデオフレームと置換されると仮定する。したがって、ユーザは、置換背景上にオーバーレイされているように見える。したがって、いくつかの実施形態では、アップスケーリングされたオブジェクトの画素は、第2の解像度で背景(例えば、背景画像又は背景ビデオフレーム)にマッピングされる。いくつかの実施形態では、背景は、アップスケーリングされたオブジェクトの画素が背景にマッピングされる前に、第2の解像度にアップスケーリング又はダウンスケールされる。
【0024】
いくつかの実施形態では、アップスケーリングされたビデオフレームは、次いで、アップスケーリングされたビデオフレームを生成している参加デバイス102a~102nから、他の参加デバイス102a~102nに送信される。ビデオフレームが別の参加デバイス102a~102nから受信された他の実施形態では、アップスケーリングされたビデオフレームは、ディスプレイに出力される。
【0025】
上記の説明は、ビデオ会議のコンテキストで説明されているので、当業者であれば、単一のビデオフレームをアップスケーリングするために説明された手法が、アップスケーリングされたビデオデータを生成するためにビデオデータ内の複数のフレームに繰り返し適用されることを理解するであろう。更に、上記の説明は、機械学習アップスケーリングアルゴリズム及び非機械学習アップスケーリングアルゴリズムを使用するコンテキストで説明されているが、当業者は、本明細書で説明される手法が、より高い及びより低い相対計算程度を有するアップスケーリングアルゴリズムの任意の組合せの使用に適用可能であることを理解するであろう。
【0026】
複数の参加デバイス102a~102nがビデオ会議に参加している例を考える。第1の参加デバイス102a~102nは、4Kビデオデータを符号化及び送信することが可能であるが、1080pビデオをキャプチャすることが可能なカメラのみを有する。いくつかの実施形態では、第1の参加デバイス102a~102nは、4K解像度で複数のアップスケーリングされたビデオフレームを含むアップスケーリングされたビデオデータを生成する。アップスケーリングされたビデオフレームの各々は、ユーザをキャプチャし、機械学習アップスケーリングアルゴリズムを使用してアップスケーリングされた部分と、より計算量が多くないアップスケーリングアルゴリズムを使用してアップスケーリングされた別の部分と、を含む。次いで、アップスケーリングされたビデオフレームは、レンダリングのために他の参加デバイス102a~102nに送信される。したがって、第1の参加デバイス102a~102nは、機械学習アップスケーリングアルゴリズムを各ビデオフレームの全体に適用する際に必要とされる計算リソースを使用することなく、他の参加デバイス102a~102nのためのアップスケーリングされた4Kビデオを生成することができる。
【0027】
第1の参加デバイス102a~102nが第2の参加デバイス102a~102nから1080p個のビデオフレームを受信する別の例を考える。第1の参加デバイス102a~102nは、受信された1080pビデオフレームから、表示のためにアップスケーリングモジュール108a~108nを使用してアップスケーリングされた4Kビデオフレームを生成する。したがって、第1の参加デバイス102a~102nは、機械学習アップスケーリングアルゴリズムを各ビデオフレームの全体に適用する際に必要とされる計算リソースを使用することなく、他の参加デバイス102a~102nから受信された低解像度ビデオからアップスケーリングされた4Kビデオを生成することができる。
【0028】
図2A~
図3Dは、本開示のいくつかの実施形態による、ビデオ会議のためのROIベースのアップスケーリングのための例示的なプロセスフローを示す。
図2Aは、第1の解像度(例えば、1080p又はアップスケーリング前のより低い別の解像度)におけるビデオフレーム202を示す。ビデオフレーム202は、参加デバイス102a~102nのユーザに対応するオブジェクト204と、オブジェクト204の画素以外のすべての画素を含む背景206と、を含む。
図2Bにおいて、オブジェクト204を含む境界ボックス208が識別される。
【0029】
図2Cでは、機械学習アルゴリズムが、境界ボックス208によって定義され、オブジェクト204を含むビデオフレームの部分210に適用されて、アップスケーリングされたオブジェクト214を含むアップスケーリングされた部分212を生成する。部分210は、第2の解像度に比例するアップスケーリングされた部分212を生成するためにアップスケーリングされる。例えば、第2の解像度が第1の解像度の4倍であると仮定すると、アップスケーリングされた部分212は、アップスケーリング前の部分210の解像度の4倍の解像度で生成される。
図2Dにおいて、アップスケーリングされたオブジェクト214を含むアップスケーリングされたビデオフレーム216が生成される。アップスケーリングされたビデオフレーム216は、背景218を含む。いくつかの実施形態では、背景218は、第2の解像度における置換背景に対応する。例えば、背景218が背景206に取って代わり、アップスケーリングされたオブジェクト214の画素が背景218上にマッピングされる。他の実施形態では、背景218は、機械学習アップスケーリングアルゴリズムよりも計算量が多くない別のアップスケーリングアルゴリズムによってアップスケーリングされた背景206を含む。
【0030】
本願によるビデオ会議のためのROIベースのアップスケーリングは、概してコンピュータで実施される。したがって、更なる説明のために、
図3は、特定の実施形態によるビデオ会議のためのROIベースのアップスケーリングのために構成された例示的なコンピュータ300のブロック図を示す。
図3の例示的なコンピュータ300は、
図1のもの(102a~102n)のような参加デバイスとすることができる。
【0031】
図3のコンピュータ300は、少なくとも1つのコンピュータプロセッサ302又は「CPU」と、高速メモリバス306及びバスアダプタ328を介してプロセッサ302及びコンピュータ300の他の構成要素に接続されるランダムアクセスメモリ(random access memory、「RAM」)304と、を含む。RAM304には、オペレーティングシステム310が記憶される。特定の実施形態によるビデオ会議のためのROIベースのアップスケーリングのために構成されたコンピュータにおいて有用なオペレーティングシステムは、UNIX(登録商標)、Linux(登録商標)、Microsoft Windows(登録商標)及び当業者が想到する他のものを含む。
図3の例におけるオペレーティングシステム310は、RAM304内に示されているが、そのようなソフトウェアの多くの構成要素は、典型的には、例えば、ディスクドライブ等のデータストレージ312等の不揮発性メモリ内にも記憶される。また、RAM304には、特定の実施形態によるアップスケーリングモジュール108及びビデオ会議モジュール106が記憶される。
【0032】
図3のコンピュータ300は、拡張バス318及びバスアダプタ328を介してプロセッサ302及びコンピュータ300の他の構成要素に結合されたディスクドライブアダプタ316を含む。ディスクドライブアダプタ316は、不揮発性データストレージを、データストレージ312の形態でコンピュータ300に接続する。特定の実施形態によるビデオ会議のためのROIベースのアップスケーリングのために構成されたコンピュータにおいて有用なディスクドライブアダプタは、インテグレーティドドライブエレクトロニクス(Integrated Drive Electronics、「IDE」)アダプタ、スモールコンピュータシステムインタフェース(Small Computer System Interface、「SCSI」)アダプタ、及び、当業者が想到する他のものを含む。いくつかの実施形態では、不揮発性コンピュータメモリは、当業者が想到するように、光ディスクドライブ、電気的消去可能プログラマブル読み取り専用メモリ(electrically erasable programmable read-only memory、いわゆる「EEPROM」又は「フラッシュ」メモリ)、RAMドライブ等として実装される。
【0033】
図3の例示的なコンピュータ300は、1つ以上の入出力(input/output、「I/O」)アダプタ320を含む。I/Oアダプタは、例えば、コンピュータディスプレイスクリーン等のディスプレイデバイスへの出力、並びに、キーボード及びマウス等のユーザ入力デバイス322からのユーザ入力を制御するためのソフトウェアドライバ及びコンピュータハードウェアを通して、ユーザ指向入力/出力を実現する。
図3のI/Oアダプタ320は、ビデオ会議及び他のアプリケーションで使用するためにウェブカメラ334をコンピューティングシステムに結合する。
【0034】
また、
図3の例示的なコンピュータ300は、グラフィック関連の計算のために特別に設計され、表示画面又はコンピュータモニタ等のディスプレイデバイス326に出力されるI/Oアダプタの一例であるグラフィック処理ユニット(GPU)324を含む。GPU324は、高速ビデオバス328、バスアダプタ328、及び、同じく高速バスであるフロントサイドバス330を介してプロセッサ302に接続される。
【0035】
図3の例示的なコンピュータ300は、他のコンピュータとのデータ通信及びデータ通信ネットワークとのデータ通信のための通信アダプタ332を含む。そのようなデータ通信は、RS-232接続を通して、ユニバーサルシリアルバス(Universal Serial Bus、「USB」)等の外部バスを通して、IPデータ通信ネットワーク等のデータ通信ネットワークを通して、及び/又は、当業者が想到する他の方法で、シリアルに行われる。通信アダプタは、あるコンピュータが別のコンピュータに直接的に又はデータ通信ネットワークを介してデータ通信を送信する、ハードウェアレベルのデータ通信を実現する。特定の実施形態によるビデオ会議のためのROIベースのアップスケーリングのために構成されたコンピュータにおいて有用な通信アダプタの例としては、有線ダイヤルアップ通信のためのモデム、有線データ通信のためのイーサネット(登録商標)(IEEE802.3)アダプタ、及び、無線データ通信のための802.11アダプタが挙げられる。
【0036】
更なる説明のために、
図4は、本開示の実施形態によるビデオ会議のためのROIベースのアップスケーリングのための例示的な方法を示すフローチャートを示す。
図4の方法は、参加デバイス102aのアップスケーリングモジュール108aにおいて実施される。
図4の方法は、第1の解像度でのビデオ会議のビデオフレーム404において、オブジェクトの境界領域を識別すること402を含む。ビデオフレーム404は、アップスケーリングモジュール108aを実行する同じ参加デバイス102aによって生成される。他の実施形態では、ビデオフレーム404は、別の参加デバイス102b~102nから受信される。
【0037】
識別されたオブジェクトは、ビデオフレーム404内の画像オブジェクト(例えば、画素の特定のグルーピング)である。オブジェクトは、人間の参加者によって使用される参加デバイス102a~102nのカメラによってキャプチャされるようなビデオ会議の人間の参加者に対応することができる。当業者は、いくつかの実施形態では、オブジェクトが他の関心領域に対応することを理解するであろう。いくつかの実施形態では、オブジェクトは、ユーザ選択されたオブジェクトを含む。例えば、画像セグメント化アルゴリズムがビデオフレーム404に適用され、複数のオブジェクトを識別する。次に、境界領域が識別されるオブジェクトが、識別されたオブジェクトから選択される。他の実施形態では、オブジェクトは、デフォルトのオブジェクトタイプである。例えば、画像セグメント化アルゴリズムは、ビデオフレーム404内の人間のオブジェクトを識別する。次いで、人間のオブジェクトは、境界領域が識別されるオブジェクトとして自動的に選択される。
【0038】
オブジェクトは、理解され得るように、画像セグメント化アルゴリズム又は他のアルゴリズムを使用して、ビデオフレーム404内で識別される。オブジェクトを識別した後、オブジェクトの境界領域が識別される。いくつかの実施形態では、境界領域は、オブジェクトのための境界ボックスを含む。境界ボックスは、識別されたオブジェクトが含まれる画素の2次元長方形領域である。例えば、いくつかの実施形態では、境界ボックスは、オブジェクトのための最近傍フィッティング境界ボックス(例えば、オブジェクトを完全に含むように最小幅及び高さを有する境界ボックス)を含む。いくつかの実施形態では、境界ボックスは、境界ボックスのエッジとオブジェクトとの間に閾値量の画素(例えば、1つ、2つ又は他の比較的少数の画素)を含む。例えば、境界ボックスの1つ以上の辺は、オブジェクトの最近傍部分から最大で画素の閾値量だけ分離される。当業者は、境界ボックス以外の境界も本開示の範囲内で企図されることを理解するであろう。
【0039】
また、
図4の方法は、境界領域によって境界付けられたビデオフレーム404の部分に機械学習アップスケーリングアルゴリズムを適用して、第2の解像度に対応するビデオフレーム404のアップスケーリングされた部分を生成すること406を含む。第2の解像度は、ビデオフレーム404の第1の解像度より高く、以下で説明される、結果として生じるアップスケーリングされたビデオフレーム410の解像度である。ビデオフレーム404のアップスケーリングされた部分は、境界領域によって境界付けられたビデオフレーム404の部分の解像度が第2の解像度に比例してアップスケーリングされるという点で、第2の解像度に対応する。例えば、第1の解像度が1080pであり、第2の解像度が4Kであると仮定すると、アップスケーリングされたビデオフレーム410は、ビデオフレーム404の解像度の4倍の解像度を有することになる。したがって、ビデオフレーム404のアップスケーリングされた部分は、アップスケーリング前のビデオフレーム404の部分の解像度の4倍の解像度を有することになる。
【0040】
上述したように、境界領域によって境界付けられたビデオフレーム404の部分は、オブジェクト(例えば、ビデオ会議に参加しているユーザ)を含む。境界領域がビデオフレームのROIを効果的に画定するので、比較的計算量が多い機械学習アップスケーリングアルゴリズムがビデオフレーム404のこのサブセットに適用されて、ビデオフレーム404のROIのより高品質のアップスケーリングされたバージョンが生成される。一例として、境界領域によって境界付けられたビデオフレーム404の部分は、入力として、ニューラルネットワーク、深層畳み込みニューラルネットワーク又は他の訓練された機械学習モデルに提供され、第2の解像度に対応するビデオフレームのアップスケーリングされた部分を生成する。したがって、結果として得られるビデオフレームのアップスケーリングされた部分は、アップスケーリングされたオブジェクトを含む。
【0041】
また、
図4の方法は、オブジェクトに対応する第1の複数の画素を第2の複数の画素と組み合わせることによって、第2の解像度でアップスケーリングされたビデオフレーム410を生成すること408を含む。第1の複数の画素は、アップスケーリングされたオブジェクトを符号化するビデオフレーム404のアップスケーリングされた部分内の画素である。いくつかの実施形態では、以下で更に詳細に説明するように、第2の複数の画素は、第1の複数の画素がマッピングされる置換背景(例えば、置換背景画像又はビデオフレーム)を含む。いくつかの実施形態では、以下で更に詳細に説明するように、第2の複数の画素は、境界領域の外側にあり、別のアップスケーリングアルゴリズム(例えば、機械学習アップスケーリングアルゴリズムよりも計算量が多くないアップスケーリングアルゴリズム)を使用してアップスケーリングされたビデオフレーム404の画素を含む。
【0042】
また、
図4の方法は、アップスケーリングされたビデオフレーム410を、ビデオ会議に参加している参加デバイス102bに送信すること412を含む。
図4に示されるように、元のビデオフレーム404は、参加デバイス102aによって生成され、アップスケーリングされたビデオフレーム410を生成するために同じ参加デバイス102aにおいて実行されるアップスケーリングモジュール108aに提供される。次いで、アップスケーリングされたビデオフレーム410は、表示のために他の参加デバイス102bに送信される。しかしながら、いくつかの実施形態では、アップスケーリングされる元のビデオフレームを生成する参加デバイスと、ビデオフレームをアップスケーリングする参加デバイスとは、2つの異なるデバイスであり得る。
【0043】
図5は、本開示の実施形態による、ビデオ会議のためのROIベースのアップスケーリングの変形形態を示すフローチャートを示す。
図5の方法は、
図4の方法と同様であるが、
図5の方法では、参加デバイス102aは、アップスケーリングされる元のビデオフレームを参加デバイス102bから受信する502。ビデオフレーム404は、ビデオ会議に参加している参加デバイス102bのユーザをキャプチャし、ビデオフレームを参加デバイス102aに送信する。次いで、受信側参加デバイス102aは、受信したビデオフレーム404をアップスケーリングして、アップスケーリングされたビデオフレーム410を生成する(上記で説明したように)。
【0044】
アップスケーリングされたビデオフレームが生成されると、
図5の方法は、アップスケーリングされたビデオフレーム410を高解像度ディスプレイ506に出力する(504)ことによって継続する。アップスケーリングされたビデオフレーム410は、ビデオ会議ユーザインタフェースの一部として(例えば、ビデオ会議モジュール106aによって)レンダリングされ、参加デバイス102aに結合されたディスプレイ506に出力される。
【0045】
更なる説明のために、
図6は、本開示の実施形態によるビデオ会議のためのROIベースのアップスケーリングのための別の例示的な方法を示すフローチャートを示す。
図6の方法は、第2の複数の画素を生成するために、境界領域の外側のビデオフレーム404の部分に別のアップスケーリングアルゴリズムを適用すること602を含むことを除いて、
図4の方法と同様である。他のアップスケーリングアルゴリズムは、境界領域の内側のビデオフレーム404の部分をアップスケーリングするために使用される機械学習アップスケーリングアルゴリズムと比較して、より計算量が多くないアップスケーリングアルゴリズムである。例えば、他のアップスケーリングアルゴリズムは、機械学習アップスケーリングアルゴリズムと比較して、アップスケーリングされた出力を生成するために、より少ない動作又はより少ない計算リソースを必要とする。より計算量が多くないアップスケーリングアルゴリズムは、機械学習アップスケーリングアルゴリズムと比較してより低い品質の出力を潜在的にもたらすことになるが、より計算量が多くないアップスケーリングアルゴリズムは、境界領域の外側(例えば、関心領域以外)のビデオフレーム404の部分にのみ適用される。いくつかの実施形態では、他のアップスケーリングアルゴリズムは、例えば、ニアレストネイバー補間アルゴリズム、バイリニア補間アルゴリズム若しくはバイキュービック補間アルゴリズム、又は、理解され得る他のアルゴリズムを含む。
【0046】
図6の方法においてアップスケーリングされたビデオフレーム410を生成すること408は、第1の複数の画素と、第2の複数の画素と、ビデオフレームのアップスケーリングされた部分に含まれ、オブジェクトの外側にある第3の複数の画素と、を組み合わせること604を含む。上記で説明したように、第1の複数の画素は、ビデオフレーム404のアップスケーリングされた部分中のオブジェクト(例えば、アップスケーリングされたオブジェクト)に対応する。第2の複数の画素は、境界領域の外側のビデオフレーム404の部分に対応し、別のアップスケーリングアルゴリズムに従ってアップスケーリングされる。第3の複数の画素は、ビデオフレーム404のアップスケーリングされた部分内であるがオブジェクトの外側にあり、やはり機械学習アップスケーリングアルゴリズムを使用してアップスケーリングされた画素を含む。したがって、結果として生じるアップスケーリングされたビデオフレーム410は、機械学習アップスケーリングアルゴリズムを使用してアップスケーリングされた部分(例えば、境界領域内)と、別のアップスケーリングアルゴリズムを使用してアップスケーリングされた部分(例えば、境界領域の外側)と、を含む。
【0047】
更なる説明のために、
図7は、本開示の実施形態による、アップスケーリングされたビデオフレームを生成する例示的な方法を示すフローチャートを示す。
図7の方法では、第2の解像度でアップスケーリングされたビデオフレームを生成すること408は、第1の複数の画素を背景704にマッピングすること702を含む。上述したように、第1の複数の画素は、アップスケーリングされたオブジェクトに対応する。背景704は、置換背景画像又はビデオフレームを含む。例えば、
図1のビデオ会議モジュール106a~106nがビデオ会議の背景置換をサポートし、それによってビデオデータ(例えば、ユーザ又は他の関心領域以外のビデオデータ)の背景が除去され、別の画像又はビデオフレームと置換されると仮定する。したがって、ユーザは、置換背景704上にオーバーレイされているように見える。したがって、いくつかの実施形態では、アップスケーリングされたオブジェクトの画素は、第2の解像度で背景704(例えば、背景画像又は背景ビデオフレーム)にマッピングされる。いくつかの実施形態では、背景は、アップスケーリングされたオブジェクトの画素が背景にマッピングされる前に、第2の解像度にアップスケーリング又はダウンスケールされる。
【0048】
第1の複数の画素を背景704にマッピングすること702は、第1の複数の画素の各画素について、背景704内の画素を第1の複数の画素の対応する画素で置き換えることを含む。したがって、第1の複数の画素内の各画素は、背景704内の相対位置にある画素上にオーバーレイされるか又はそれに取って代わる。したがって、アップスケーリングされたオブジェクトは、背景704上にオーバーレイ又はマッピングされる。
【0049】
本開示の例示的な実施形態は、ビデオ会議のためのROIベースのアップスケーリングのために十分に機能するコンピュータシステムのコンテキストで主に説明される。しかしながら、当業者の読者は、本開示が、任意の好適なデータ処理システムとともに使用するためにコンピュータ可読記憶媒体上に配置されたコンピュータプログラム製品に具現化され得ることを認識するであろう。そのようなコンピュータ可読記憶媒体は、磁気媒体、光学媒体又は他の好適な媒体を含む、機械可読情報のための任意の記憶媒体であり得る。そのような媒体の例としては、ハードドライブ又はディスケット内の磁気ディスク、光学ドライブのためのコンパクトディスク、磁気テープ、及び、当業者に着想されるような他のものを含む。当業者であれば、好適なプログラミング手段を有する任意のコンピュータシステムが、コンピュータプログラム製品で具現化された本開示の方法のステップを実行することが可能であることを直ちに認識するであろう。当業者であれば、本明細書に記載の例示的な実施形態のいくつかがコンピュータハードウェア上でインストール及び実行されるソフトウェアに向けられているが、それにもかかわらず、ファームウェアとして又はハードウェアとして実装される代替的な実施形態が、本開示の範囲内に十分にあることも認識するであろう。
【0050】
本開示は、システム、方法及び/又はコンピュータプログラム製品とすることができる。コンピュータプログラム製品は、プロセッサに本開示の態様を実行させるためのコンピュータ可読プログラム命令をその上に有するコンピュータ可読記憶媒体(又は複数の媒体)を含むことができる。
【0051】
コンピュータ可読記憶媒体は、命令実行デバイスによって使用するための命令を保持及び記憶することができる有形デバイスとすることができる。コンピュータ可読記憶媒体は、例えば、電子記憶デバイス、磁気記憶デバイス、光学記憶デバイス、電磁記憶デバイス、半導体記憶デバイス、又は、上記の任意の好適な組合せであり得るが、これらに限定されない。コンピュータ可読記憶媒体のより具体的な例の非網羅的リストは、以下を含む。ポータブルコンピュータディスケット、ハードディスク、ランダムアクセスメモリ(RAM)、読み取り専用メモリ(read-only memory、ROM)、消去可能なプログラマブル読み取り専用メモリ(erasable programmable read-only memory、EPROM若しくはフラッシュメモリ)、スタティックランダムアクセスメモリ(static random access memory、SRAM)、携帯型コンパクトディスク専用メモリ(compact disc read-only memory、CD-ROM)、デジタル多用途デバイス(digital versatile disk、DVD)、メモリスティック、フロッピー(登録商標)ディスク、パンチカード又はその上に記録された命令を有する溝内の隆起構造等の機械的にコード化されたデバイス、及び、上記の任意の好適な組合せ。本明細書で使用される場合、コンピュータ可読記憶媒体は、電波若しくは他の自由に伝播する電磁波等のように、導波管若しくは他の伝送媒体(例えば、光ファイバケーブルを通過する光パルス)を通って伝播する電磁波、又は、ワイヤを通って伝送される電気信号等の一時的な信号それ自体であると解釈されるべきではない。
【0052】
本明細書に記載されたコンピュータ可読プログラム命令は、コンピュータ可読記憶媒体からそれぞれのコンピューティング/処理デバイスに、又は、ネットワーク、例えば、インターネット、ローカルエリアネットワーク、広域ネットワーク及び/若しくは無線ネットワークを介して外部コンピュータ若しくは外部記憶デバイスにダウンロードすることができる。ネットワークは、銅伝送ケーブル、光伝送ファイバ、無線伝送、ルータ、ファイアウォール、スイッチ、ゲートウェイコンピュータ及び/又はエッジサーバを含むことができる。各コンピューティング/処理デバイス内のネットワークアダプタカード又はネットワークインターフェースは、ネットワークからコンピュータ可読プログラム命令を受信し、コンピュータ可読プログラム命令を、それぞれのコンピューティング/処理デバイス内のコンピュータ可読記憶媒体に記憶するために伝送する。
【0053】
本開示の動作を実行するためのコンピュータ可読プログラム命令は、アセンブラ命令、命令セットアーキテクチャ(instruction-set-architecture、ISA)命令、機械命令、機械依存命令、マイクロコード、ファームウェア命令、状態設定データ、又は、Smalltalk、C等のオブジェクト配向プログラミング言語、並びに、「C」プログラミング言語又は同様のプログラミング言語等の従来の手続きプログラミング言語を含む1つ以上のプログラミング言語の任意の組合せで書き込まれたソースコード又はオブジェクトコードのうち何れかとすることができる。コンピュータ可読プログラム命令は、ユーザのコンピュータ上で完全に、ユーザのコンピュータ上で部分的に、スタンドアロンソフトウェアパッケージとして、ユーザのコンピュータ上で部分的に、リモートコンピュータ上で部分的に、又は、リモートコンピュータ若しくはサーバ上で完全に実行することができる。後者のシナリオでは、リモートコンピュータは、ローカルエリアネットワーク(local area network、LAN)若しくは広域ネットワーク(wide area network、WAN)を含む任意のタイプのネットワークを通してユーザのコンピュータに接続することができるか、又は、外部コンピュータ(例えば、インターネットサービスプロバイダを使用するインターネットを介して)に接続することができる。いくつかの実施形態では、例えば、プログラマブルロジック回路、フィールドプログラマブルゲートアレイ(field-programmable gate array、FPGA)又はプログラマブルロジックアレイ(programmable logic array、PLA)を含む電子回路は、本開示の態様を実施するために、コンピュータ可読プログラム命令の状態情報を利用して電子回路を個別化することによって、コンピュータ可読プログラム命令を実行することができる。
【0054】
本開示の態様は、本開示の実施形態による方法、装置(システム)及びコンピュータプログラム製品のフローチャート及び/又はブロック図を参照して本明細書に記載されている。フローチャート及び/又はブロック図の各ブロック、並びに、フローチャート及び/又はブロック図におけるブロックの組合せは、コンピュータ可読プログラム命令によって実現することができることが理解されよう。
【0055】
これらのコンピュータ可読プログラム命令は、コンピュータ又は他のプログラマブルデータ処理装置のプロセッサを介して実行される命令が、フローチャート及び/又はブロック図の1つ以上のブロックで指定された機能/行為を実施するための手段を生成するような機械を生成するように、汎用コンピュータ、専用コンピュータ又は他のプログラマブルデータ処理装置のプロセッサに提供することができる。これらのコンピュータ可読プログラム命令は、その上に記憶された命令を有するコンピュータ可読記憶媒体が、フローチャート及び/又はブロック図の1つ以上のブロックで指定された機能/行為の態様を実行する命令を含む製造物品を含むように、コンピュータ、プログラマブルデータ処理装置及び/又は他のデバイスに、特定の方法で機能するように指示することができる、コンピュータ可読記憶媒体に記憶することができる。
【0056】
コンピュータ可読プログラム命令は、コンピュータ、他のプログラマブルデータ処理装置又は他のデバイスにロードされ、コンピュータ、他のプログラマブル装置又は他のデバイス上で実行される命令が、フローチャート及び/又はブロック図の1つ以上のブロックで指定された機能/行為を実行するように、コンピュータによって実行されるプロセスを生成するために、コンピュータ、他のプログラマブル装置又は他のデバイス上で一連の動作ステップを行わせることができる。
【0057】
図中のフローチャート及びブロック図は、本開示の様々な実施形態によるシステム、方法及びコンピュータプログラム製品の可能な実施形態のアーキテクチャ、機能及び動作を示す。これに関して、フローチャート又はブロック図の各ブロックは、指定された論理機能を実行するための1つ以上の実行可能命令を含む、命令のモジュール、セグメント又は部分を表すことができる。いくつかの代替的な実施形態では、ブロックに記載されている機能は、図に記載された順序から外れて発生する可能性がある。例えば、連続して示される2つのブロックは、実際には実質的に同時に実行されてもよく、又は、ブロックは、関与する機能に応じて、逆の順序で実行されてもよい。ブロック図及び/又はフロー図の各ブロック、並びに、ブロック図及び/又はフロー図におけるブロックの組合せは、指定された機能若しくは行為を行うか、又は、専用ハードウェアとコンピュータ命令との組合せを実行する、専用ハードウェアベースのシステムによって実行することができることにも留意されたい。
【0058】
本開示の様々な実施形態において修正及び変更を行うことができることは、上述した記載から理解されるであろう。本明細書における記載は、例示のみを目的としており、限定的な意味で解釈されるべきではない。本開示の範囲は、以下の特許請求の範囲の文言によってのみ限定される。
【手続補正書】
【提出日】2024-05-29
【手続補正1】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項1】
装置であって、
前記装置は、コンピュータプロセッサと、コンピュータメモリと、を備え、
前記コンピュータメモリは、コンピュータプログラム命令を含み、
前記コンピュータプログラム命令は、前記コンピュータプロセッサによって実行されると、
第1の解像度のビデオ会議のビデオフレームにおいて、オブジェクトの境界領域を識別することと、
前記境界領域によって境界付けられた前記ビデオフレームの部分に機械学習アップスケーリングアルゴリズムを適用して、第2の解像度に対応する前記ビデオフレームのアップスケーリングされた部分を生成することと、
前記オブジェクトに対応する前記ビデオフレームのアップスケーリングされた部分内の第1の複数の画素を第2の複数の画素と組み合わせることによって、前記第2の解像度でアップスケーリングされたビデオフレームを生成することと、
を前記コンピュータプロセッサに実行させる、
装置。
【請求項2】
前記コンピュータプログラム命令は、前記コンピュータプロセッサによって実行されると、前記アップスケーリングされたビデオフレームを、前記ビデオ会議に参加しているコンピューティングデバイスに送信することを前記コンピュータプロセッサに実行させる、
請求項
1の装置。
【請求項3】
前記コンピュータプログラム命令は、前記コンピュータプロセッサによって実行されると、
前記ビデオ会議に参加しているコンピューティングデバイスから前記ビデオフレームを受信することと、
前記アップスケーリングされたビデオフレームをディスプレイに出力することと、
を前記コンピュータプロセッサに実行させる、
請求項
1の装置。
【請求項4】
前記コンピュータプログラム命令は、前記コンピュータプロセッサによって実行されると、
前記第2の複数の画素を生成するために、前記境界領域の外側の前記ビデオフレームの部分に別のアップスケーリングアルゴリズムを適用することを前記コンピュータプロセッサに実行させ、
前記アップスケーリングされたビデオフレー
ムは、前記第1の複数の画素と、前記第2の複数の画素と、前記ビデオフレームの前記アップスケーリングされた部分に含まれ、前記オブジェクトの外側にある第3の複数の画素と、を組み合わせること
によって生成される、
請求項
1の装置。
【請求項5】
前記別のアップスケーリングアルゴリズムは、前記機械学習アップスケーリングアルゴリズムと比較して計算量が多くないアルゴリズムである、
請求項
4の装置。
【請求項6】
前記第2の複数の画素は、前記第2の解像度における背景に対応し、前記アップスケーリングされたビデオフレームを生成することは、前記第1の複数の画素を前記背景にマッピングすることを含む、
請求項
1の装置。
【請求項7】
前記オブジェクトは、ユーザ選択されたオブジェクトを含む、
請求項
1の装置。
【請求項8】
前記オブジェクトは、デフォルトのオブジェクトタイプを含む、
請求項
1の装置。
【国際調査報告】