(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-01-09
(45)【発行日】2024-01-17
(54)【発明の名称】MLベースのアップスケーリングのためのフレーム処理
(51)【国際特許分類】
G06T 3/4053 20240101AFI20240110BHJP
【FI】
G06T3/40 730
(21)【出願番号】P 2021521273
(86)(22)【出願日】2019-10-16
(86)【国際出願番号】 US2019056499
(87)【国際公開番号】W WO2020081659
(87)【国際公開日】2020-04-23
【審査請求日】2021-06-01
(32)【優先日】2018-10-18
(33)【優先権主張国・地域又は機関】US
(32)【優先日】2019-06-13
(33)【優先権主張国・地域又は機関】US
(73)【特許権者】
【識別番号】000002185
【氏名又は名称】ソニーグループ株式会社
(73)【特許権者】
【識別番号】596102126
【氏名又は名称】ソニー ピクチャーズ エンターテインメント インコーポレイテッド
(74)【代理人】
【識別番号】100092093
【氏名又は名称】辻居 幸一
(74)【代理人】
【識別番号】100109070
【氏名又は名称】須田 洋之
(74)【代理人】
【識別番号】100067013
【氏名又は名称】大塚 文昭
(74)【代理人】
【識別番号】100109335
【氏名又は名称】上杉 浩
(74)【代理人】
【識別番号】100120525
【氏名又は名称】近藤 直樹
(72)【発明者】
【氏名】ジュー ミャオチー
(72)【発明者】
【氏名】高島 芳和
【審査官】鈴木 圭一郎
(56)【参考文献】
【文献】特開2007-108447(JP,A)
【文献】国際公開第2018/193333(WO,A1)
【文献】特開2000-324337(JP,A)
【文献】洞井 晋一、外2名,”深層学習を用いた低ビットレート動画の高精細化技術”,マルチメディア,分散,協調とモバイル(DICOMO2018)シンポジウム論文集,第2018巻,第1号[CD-ROM],2018年07月04日,p.53-59
【文献】WU, Sai et al.,A New Approach to Compute CNNs for Extremely Large Images,CIKM '17: Proceedings of the 2017 ACM on Conference on Information and Knowledge Management,ACM,2017年11月06日,Pages 39-48,<URL:https://dl.acm.org/doi/abs/10.1145/3132847.3132872>
(58)【調査した分野】(Int.Cl.,DB名)
G06T 3/40
(57)【特許請求の範囲】
【請求項1】
出力画像を生成するための機械学習(ML)ベースのアップスケーリングプロセスにおける入力画像のフレーム処理のための方法であって、前記方法は、
前記入力画像のアクティブピクチャエリアのエッジからボクシングエッジ領域を検出して抽出するステップと、
前記ボクシングエッジ領域の各領域の周囲に余分の画素を追加することによって、前記抽出されたボクシングエッジ領域を拡張してパディングされたエッジ領域を形成するステップと、
前記パディングされたエッジ領域をアップスケーリングして、アップスケーリングされたパディングエッジ領域を生成するステップと、
前記アップスケーリングされたパディングエッジ領域の各々を、アップスケーリング係数が掛けられる前記アップスケーリングの前の前記ボクシングエッジ領域の各々のサイズに対応するサイズにトリミングするステップと、
前記トリミングされたエッジ領域を前記出力画像の前記エッジに挿入するステップと、
前記入力画像の非エッジ領域をアップスケーリングして、前記アップスケーリングされた非エッジ領域を前記出力画像に挿入するステップと、
を含
み、
前記ボクシングエッジ領域の各々の周囲に余分の画素を追加することは、前記ボクシングエッジ領域の各々の周囲に前記余分の画素をパディングする方法を決定するステップと、前記ボクシングエッジ領域の各々の周囲に前記余分の画素の小領域を追加するステップとを含み、
前記小領域が前記アクティブピクチャエリア内にあるときは前記ボクシングエッジ領域を前記小領域の方向へ拡張し、前記小領域が前記アクティブピクチャエリアの外側かつエッジ上にあるときは、バタフライ画像をエッジ上で使用して前記ボクシングエッジ領域をパディングし、前記小領域が前記アクティブピクチャエリアの外側かつコーナーにあるときは、コーナー上でバタフライ画像を使用して前記ボクシングエッジ領域を拡張することを特徴とする方法。
【請求項2】
出力画像を生成するための機械学習(ML)ベースのアップスケーリングプロセスにおける入力画像のフレーム処理のためのシステムであって、前記システムは、
前記入力画像のアクティブピクチャエリアのエッジからボクシングエッジ領域を検出して抽出するように構成されるエッジ領域抽出部と、
各ボクシングエッジ領域の周囲に余分の画素を追加するとともにデザインを形成する各領域に画素を追加することによって、前記ボクシングエッジ領域の各領域を拡張するように構成されるエッジ領域拡張部
と、
前記アップスケーリングされたパディングエッジ領域の各々を、アップスケーリング係数が掛けられる前記アップスケーリングの前の前記ボクシングエッジ領域の各々のサイズに対応するサイズにトリミングするように構成されるエッジ領域トリミング部と、
前記トリミングされたエッジ領域を前記出力画像の前記エッジに挿入するように構成されるエッジ領域充填部と、
前記入力画像の非エッジ領域をアップスケーリングして、前記アップスケーリングされた非エッジ領域を前記出力画像に挿入するように構成される非エッジ領域充填部と、
を含
み、
前記ボクシングエッジ領域の各々の周囲に余分の画素を追加することは、前記ボクシングエッジ領域の各々の周囲に前記余分の画素をパディングする方法を決定するステップと、前記ボクシングエッジ領域の各々の周囲に前記余分の画素の小領域を追加するステップとを含み、
前記小領域が前記アクティブピクチャエリア内にあるときは前記ボクシングエッジ領域を前記小領域の方向へ拡張し、前記小領域が前記アクティブピクチャエリアの外側かつエッジ上にあるときは、バタフライ画像をエッジ上で使用して前記ボクシングエッジ領域をパディングし、前記小領域が前記アクティブピクチャエリアの外側かつコーナーにあるときは、コーナー上でバタフライ画像を使用して前記ボクシングエッジ領域を拡張する
ことを特徴とするシステム。
【請求項3】
出力画像を生成するための機械学習(ML)ベースのアップスケーリングプロセスにおける入力画像のフレーム処理のためのコンピュータプログラムを記憶する非一時的コンピュータ可読記憶媒体であって、前記コンピュータプログラムは実行可能命令を含み、前記実行可能命令は、コンピュータに、
前記入力画像のアクティブピクチャエリアのエッジからボクシングエッジ領域を検出して抽出することと、
前記ボクシングエッジ領域の各領域の周囲に余分の画素を追加するとともにデザインを形成する各領域に画素を追加することによって前記抽出されたボクシングエッジ領域を拡張することと、
前記パディングされたエッジ領域をアップスケーリングして、アップスケーリングされたパディングエッジ領域を生成することと、
前記アップスケーリングされたパディングエッジ領域の各々を、アップスケーリング係数が掛けられる前記アップスケーリングの前の前記ボクシングエッジ領域の各々のサイズに対応するサイズにトリミングすることと、
前記トリミングされたエッジ領域を前記出力画像の前記エッジに挿入することと、
前記入力画像の非エッジ領域をアップスケーリングして、前記アップスケーリングされた非エッジ領域を前記出力画像に挿入することと、
を行わせ、
前記ボクシングエッジ領域の各々の周囲に余分の画素を追加することは、前記ボクシングエッジ領域の各々の周囲に前記余分の画素をパディングする方法を決定することと、前記ボクシングエッジ領域の各々の周囲に前記余分の画素の小領域を追加することとを含み、
前記小領域が前記アクティブピクチャエリア内にあるときは前記ボクシングエッジ領域を前記小領域の方向へ拡張し、前記小領域が前記アクティブピクチャエリアの外側かつエッジ上にあるときは、バタフライ画像をエッジ上で使用して前記ボクシングエッジ領域をパディングし、前記小領域が前記アクティブピクチャエリアの外側かつコーナーにあるときは、コーナー上でバタフライ画像を使用して前記ボクシングエッジ領域を拡張する
ことを特徴とする非一時的コンピュータ可読記憶媒体。
【発明の詳細な説明】
【技術分野】
【0001】
〔関連出願の相互参照〕
[0001] 本出願は、2018年10月18日に出願された「動画のための機械学習ベースの単一画像アップスケーリングアプリケーション(Machine-Learning Based Single Image Upscaling Application for Motion Pictures)」という名称の同時係属中の米国仮特許出願第62/747,453号の米国特許法第119条(e)に基づく優先権の利益を主張するものである。上記関連出願の開示は、引用により本明細書に組み入れられる。
【0002】
[0002] 本開示は、フレーム処理に関し、具体的には、機械学習ベース(MLベース)のアップスケーリングのためのフレーム処理に関する。
【背景技術】
【0003】
[0003] 機械学習(ML)を用いて、画像の超解像アップスケーリングを実行することができる。しかしながら、従来のMLベースのアップスケーリングプロセスは、画像が後処理中に挿入されるボクシングエッジ(例えば、レターボックス、ピラーボックス、ウィンドウボックス)を含むときに、いくつかの問題がある。したがって、このようなボクシングエッジを有する画像が従来のMLベースのアップスケーリングによって処理されるときに、アップスケーリングによって、画像のエッジに沿ってアーチファクトが生じる場合があり、これにより、最終出力においてクリア及び/又はシャープなエッジの損失を招く場合がある。
【発明の概要】
【発明が解決しようとする課題】
【0004】
[0004] 本開示は、MLベースのトレーニングプロセスの前に入力のフレームエッジを処理することを提供するものである。
【課題を解決するための手段】
【0005】
[0005] 一実装形態では、出力画像を生成するためのMLベースのアップスケーリングプロセスにおける入力画像のフレーム処理のための方法を開示する。前記方法は、前記入力画像のアクティブピクチャエリアのエッジからボクシングエッジ領域を検出して抽出するステップと、前記ボクシングエッジ領域の各々の周囲に余分の画素を追加してパディングされたエッジ領域を生成することによって、前記抽出されたボクシングエッジ領域を拡張するステップと、前記パディングされたエッジ領域をアップスケーリングして、アップスケーリングされたパディングエッジ領域を生成するステップと、前記アップスケーリングされたパディングエッジ領域の各々を、アップスケーリング係数が掛けられる前記アップスケーリングの前の前記ボクシングエッジ領域の各々のサイズに対応するサイズにトリミングするステップと、前記トリミングされたエッジ領域を前記出力画像の前記エッジに挿入するステップと、前記入力画像の非エッジ領域をアップスケーリングして、前記アップスケーリングされた非エッジ領域を前記出力画像に挿入するステップと、を含む。
【0006】
[0006] 一実装形態では、前記ボクシングエッジ領域の各々の周囲に余分の画素を追加することは、前記ボクシングエッジ領域の各々の周囲に前記余分の画素をパディングする方法を決定するステップと、前記ボクシングエッジ領域の各々の周囲に前記余分の画素の小領域を追加するステップと、を含む。一実装形態では、小領域を追加するステップは、前記小領域毎にタイプを決定するステップを含む。一実装形態では、前記小領域の第1のタイプは、前記アクティブピクチャエリア内に完全に存在する画素を有する前記小領域を含む。一実装形態では、前記方法は、更に、前記小領域が前記第1のタイプであると判断されたときに、前記ボクシングエッジ領域の各々を前記小領域の方向に拡張するステップを含む。一実装形態では、前記小領域の第2のタイプは、前記アクティブピクチャエリア内に存在するのではなく、前記パディングされたエッジ領域のうちの1つの領域のエッジ上に存在する少なくとも1つの画素を有する前記小領域を含む。一実装形態では、前記方法は、更に、前記小領域が前記第2のタイプであると判断されたときに、前記エッジ上でバタフライ画像を使用して、前記ボクシングエッジ領域を拡張するステップを含む。一実装形態では、前記小領域の第3のタイプは、前記アクティブピクチャエリア内に存在するのではなく、前記パディングされたエッジ領域のうちの1つの領域のコーナー上に存在する少なくとも1つの画素を有する前記小領域を含む。一実装形態では、前記方法は、更に、前記小領域が前記第3のタイプであると判断されたときに、前記コーナー上でバタフライ画像を使用して、前記ボクシングエッジ領域の各々を拡張するステップを含む。
【0007】
[0007] 別の実装形態では、出力画像を生成するためのMLベースのアップスケーリングプロセスにおける入力画像のフレーム処理のためのシステムを開示する。前記システムは、前記入力画像のアクティブピクチャエリアのエッジからボクシングエッジ領域を検出して抽出するように構成されるエッジ領域抽出部と、各ボクシングエッジ領域の周囲に余分の画素を追加してパディングされたエッジ領域を生成することによって、前記ボクシングエッジ領域の各々を拡張するように構成されるエッジ領域拡張部であって、前記エッジ領域拡張部は、前記パディングされたエッジ領域をアップスケーリングプロセッサに送って、前記パディングされたエッジ領域をアップスケーリングして、アップスケーリングされたパディングエッジ領域を生成する、エッジ領域拡張部と、前記アップスケーリングされたパディングエッジ領域の各々を、アップスケーリング係数が掛けられる前記アップスケーリングの前の前記ボクシングエッジ領域の各々のサイズに対応するサイズにトリミングするように構成されるエッジ領域トリミング部と、前記トリミングされたエッジ領域を前記出力画像の前記エッジに挿入するように構成されるエッジ領域充填部と、前記入力画像の非エッジ領域をアップスケーリングして、前記アップスケーリングされた非エッジ領域を前記出力画像に挿入するように構成される非エッジ領域充填部と、を含む。
【0008】
[0008] 一実装形態では、前記エッジ領域拡張部は、前記ボクシングエッジ領域の各々の周囲に前記余分の画素の小領域を追加することによって、前記ボクシングエッジ領域の各々の周囲に前記余分の画素を追加する。一実装形態では、小領域を追加することは、前記小領域毎にタイプを決定することを含む。一実装形態では、前記小領域の第1のタイプは、前記アクティブピクチャエリア内に完全に存在する画素を有する前記小領域を含む。一実装形態では、前記エッジ領域拡張部は、前記小領域が前記第1のタイプであると判断されたときに、前記ボクシングエッジ領域の各々を前記小領域の方向に拡張するように構成される。一実装形態では、前記小領域の第2のタイプは、前記アクティブピクチャエリア内に存在するのではなく、前記パディングされたエッジ領域のうちの1つの領域のエッジ上に存在する少なくとも1つの画素を有する前記小領域を含む。一実装形態では、前記エッジ領域拡張部は、前記小領域が前記第2のタイプであると判断されたときに、前記エッジ上でバタフライ画像を使用して、前記ボクシングエッジ領域の各々を拡張するように構成される。一実装形態では、前記小領域の第3のタイプは、前記アクティブピクチャエリア内に存在するのではなく、前記パディングされたエッジ領域のうちの1つの領域のコーナー上に存在する少なくとも1つの画素を有する前記小領域を含む。一実装形態では、前記エッジ領域拡張部は、前記小領域が前記第3のタイプであると判断されたときに、前記コーナー上でバタフライ画像を使用して、前記ボクシングエッジ領域の各々を拡張するように構成される。
【0009】
[0009] 更に別の実装形態では、出力画像を生成するためのMLベースのアップスケーリングプロセスにおける入力画像のフレーム処理のためのコンピュータプログラムを記憶する非一時的コンピュータ可読記憶媒体を開示する。前記コンピュータプログラムは実行可能命令を含み、前記実行可能命令は、コンピュータに、前記入力画像のアクティブピクチャエリアのエッジからボクシングエッジ領域を検出して抽出することと、前記ボクシングエッジ領域の各々の周囲に余分の画素を追加してパディングされたエッジ領域を生成することによって、前記抽出されたボクシングエッジ領域を拡張することと、前記パディングされたエッジ領域をアップスケーリングして、アップスケーリングされたパディングエッジ領域を生成することと、前記アップスケーリングされたパディングエッジ領域の各々を、アップスケーリング係数が掛けられる前記アップスケーリングの前の前記ボクシングエッジ領域の各々のサイズに対応するサイズにトリミングすることと、前記トリミングされたエッジ領域を前記出力画像の前記エッジに挿入することと、前記入力画像の非エッジ領域をアップスケーリングして、前記アップスケーリングされた非エッジ領域を前記出力画像に挿入することと、を行わせる。
【0010】
[0010] 一実装形態では、コンピュータに、前記抽出されたボクシングエッジ領域を拡張させる前記実行可能命令は、実行可能命令を含み、前記実行可能命令は、コンピュータに、前記ボクシングエッジ領域の各々の周囲に前記余分の画素をパディングする方法を決定することと、前記余分の画素の小領域を追加することと、を行わせる。
【0011】
[0011] 本開示の態様を一例として示す本明細書からは、他の特徴及び利点も明らかになるはずである。
【0012】
[0012] 同じ部分を同じ参照数字によって示す添付図面を検討することにより、本開示の詳細をその構造及び動作の両方に関して部分的に収集することができる。
【図面の簡単な説明】
【0013】
【
図1C】ウィンドウボックスエッジを示す図である。
【
図2】本開示の一実装形態による、MLベースのアップスケーリングプロセスにおけるフレーム処理のためのプロセスを示すフロー図である。
【
図3】本開示の一実装形態による、
図2に示すフレーム処理プロセスのパディングプロセスを示す詳細フロー図である。
【
図4】本開示の一実装形態による、MLベースのアップスケーリングプロセスにおけるフレーム処理のためのプロセスを示すフローチャートである。
【
図5】本開示の一実装形態による、
図4に示すフレーム処理プロセスのパディングプロセスを示す詳細フローチャートである。
【
図6】本開示の一実装形態によるフレーム処理システムを示すブロック図である。
【
図7A】本開示の一実装形態による、コンピュータシステム及びユーザの図である。
【
図7B】本開示の一実装形態による、フレーム処理アプリケーションをホストするコンピュータシステムを示す機能ブロック図である。
【発明を実施するための形態】
【0014】
[0023] 上記のように、従来のMLベースのアップスケーリングプロセスは、画像が後処理中に挿入されるボクシングエッジを含むときに、いくつかの問題がある。例えば、このようなボクシングエッジを有する画像が従来のMLベースのアップスケーリングによって処理されるときに、アップスケーリングプロセスによって、画像のエッジに沿ってアーチファクトが生じる場合があり、これにより、最終出力においてクリア及び/又はシャープなエッジの損失を招く場合がある。
図1A、
図1B及び
図1Cは、ボクシングエッジの例を示す。
図1Aはレターボックスエッジ100を示し、
図1Bはピラーボックスエッジ110を示し、
図1Cはウィンドウボックスエッジ120を示す。
【0015】
[0024] 従来のプロセスの上記の問題に対処するために、本開示のいくつかの実装形態は、MLベースのトレーニングプロセスの前に入力のフレームエッジを処理することを提供するものである。
【0016】
[0025] これらの説明を読んだ後には、様々な実装及び用途における本開示の実施方法が明らかになるであろう。本明細書では本開示の様々な実装について説明するが、これらの実装は、限定ではなく一例として提示するものにすぎないと理解されたい。したがって、様々な実装についての詳細な説明は、本開示の範囲又は外延を限定するものとして解釈すべきではない。
【0017】
[0026]
図2は、本開示の一実装形態による、MLベースのアップスケーリングプロセスにおけるフレーム処理のためのプロセス200を示すフロー図である。
図2に示す実装形態では、フレーム処理プロセス200は、入力画像のエッジを処理して、画像がMLベースのアップスケーリングプロセスによって処理されるときに、画像のエッジに沿ってアーチファクトを実質的に低減することを含む。
図2は、また、フレーム処理プロセスと従来のMLベースのアップスケーリングプロセスとの比較を示す。
【0018】
[0027] 左側に示す従来のMLベースのアップスケーリングプロセスでは、ボクシングエッジ領域210の周囲に余分のパディング画素を追加しない。したがって、画像がMLベースのアップスケーリングプロセスによって処理されるときに、アップスケーリングによって、画像のエッジに沿ってアーチファクト212が生じ、これにより、最終出力においてクリア及び/又はシャープなエッジの損失を招く場合がある。これに対して、
図2の右側に示すプロセスは、MLベースのアップスケーリングの前に実行されるフレーム処理プロセスを含む。
【0019】
[0028]
図2に示す実装形態では、MLベースのアップスケーリングプロセスの前に、入力画像のアクティブピクチャエリア206からボクシングエッジ領域202を検出して抽出する(204)。フレーム処理プロセスの一実装形態では、次に、抽出されたボクシングエッジ領域202の周囲に余分のパディング/画素を追加してパディングされたエッジ領域220を生成することによって、抽出されたボクシングエッジ領域202を拡張する。余分のパディング/画素をどのように追加するかについての詳細は、
図3に示す。
【0020】
[0029]
図2に示す実装形態では、パディングされたエッジ領域220をMLベースのアップスケーリングプロセッサ(例えば、ニューラルネットワーク)に送って、アップスケーリングされたパディングエッジ領域222を生成する。一実装形態では、アップスケーリングされたパディングエッジ領域222を、アップスケーリング係数が掛けられるアップスケーリングプロセスの前の元の領域202のサイズに対応するサイズにトリミングする。したがって、トリミングによって、エッジにアーチファクトがないきれいなエッジ領域224を生成する。次に、トリミングされてきれいになったエッジ領域224を、アップスケーリングされた出力画像として、出力画像に挿入する。
【0021】
[0030] 一実装形態では、以下のステップ、すなわち、(1)入力画像のアクティブピクチャエリアからボクシングエッジ領域を検出して抽出するステップと、(2)ボクシングエッジ領域をパディングするステップと、(3)パディングされたボクシングエッジ領域をアップスケーリングするステップと、(4)アップスケーリングされたボクシングエッジ領域を元の領域のサイズにトリミングするステップと、(5)トリミングされたボクシングエッジ領域を出力画像に挿入するステップとを、入力画像のアクティブピクチャエリアのエッジの全てに対して繰り返す。更に、残りの非エッジ領域を抽出し、アップスケーリングし、出力画像に挿入して、アップスケーリングされた出力画像を完成する。
【0022】
[0031]
図3は、本開示の一実装形態による、
図2に示すフレーム処理プロセスのパディングプロセス222を示す詳細フロー図である。
図3に示す実装形態は、抽出されたボクシングエッジ領域302を、追加のパディング/画素領域(B及びC領域)でパディングして、パディングされた領域320を生成することを示す。
【0023】
[0032] 一実装形態では、抽出されたボクシングエッジ領域302に追加されるべき追加のパディング/画素領域は、8つの小領域(例えば、2つの側部、上部及び下部、及び4つのコーナー)を含む。この実装形態では、8つの小領域は、3つのタイプのパッド設計(例えば、A、B、C)に分類される。
【0024】
[0033] 一例では、タイプAのパッド設計は、アクティブピクチャエリア300内に存在する小領域のために使用される。したがって、タイプAのパッド設計は、画像エリアを4方向に拡張することによって形成される。
図3では、タイプAのパッド設計は、左の小領域、下の小領域、及び左下コーナーの小領域のために使用される。したがって、パディングされた領域320は、画像エリアを4方向に拡張することによって、それらの小領域(すなわち、左の小領域、下の小領域、及び左下コーナーの小領域)を形成することを示している。
【0025】
[0034] 別の例では、タイプBのパッド設計は、アクティブピクチャエリア300内に存在するのではなく、エッジ(例えば、左、右、上、又は下)に存在する小領域のために使用される。したがって、タイプBのパッド設計は、エッジ上でバタフライ画像を使用して形成される。一実装形態では、バタフライ画像は、抽出されたボクシングエッジ領域302とタイプBのパッド領域との間の線(例えば、線322又は線324)においてミラーイメージである画像を意味する。
【0026】
[0035]
図3では、タイプBのパッド設計は、アクティブピクチャエリア300内に存在せず且つコーナーのいずれにも存在しない、上の小領域及び右の小領域のために使用される。したがって、パディングされた領域320は、エッジ上でバタフライ画像を使用して、それらの小領域(すなわち、上の小領域及び右の小領域)を形成することを示している。
【0027】
[0036] 別の例では、タイプCのパッド設計は、アクティブピクチャエリア300内に存在するのではなく、コーナー(例えば、左上コーナー、右上コーナー、左下コーナー、又は右下コーナー)に存在する小領域のために使用される。したがって、タイプCのパッド設計は、コーナー点上でバタフライ画像を使用して形成される。
図3では、タイプCのパッド設計は、アクティブピクチャエリア300内に存在せず且つコーナーに存在する、左上コーナーの小領域、右上コーナーの小領域、及び右下コーナーの小領域のために使用される。したがって、パディングされた領域320は、コーナー点上でバタフライ画像を使用して、それらの小領域(すなわち、左上コーナーの小領域、右上コーナーの小領域、及び右下コーナーの小領域)を形成することを示している。
【0028】
[0037]
図4は、本開示の一実装形態による、MLベースのアップスケーリングプロセスにおけるフレーム処理のためのプロセス400を示すフローチャートである。
図4に示す実装形態では、フレーム処理プロセス400は、ブロック410において、入力画像のアクティブピクチャエリア内のボクシングエッジ領域の位置を検出することを含む。ブロック420において、アクティブピクチャエリアから、検出されたボクシングエッジ領域を抽出する。次に、ブロック430において、抽出されたボクシングエッジ領域の周囲に余分のパディング/画素を追加してパディングされたエッジ領域を生成することによって、抽出されたボクシングエッジ領域を拡張する。余分のパディング/画素をどのように追加するかについての詳細は、
図5に示すフローチャートに示す。
【0029】
[0038]
図4に示す実装形態では、ブロック440において、パディングされたエッジ領域をMLベースのアップスケーリングプロセッサ(例えば、ニューラルネットワーク)に送って、アップスケーリングされたパディングエッジ領域を生成する。ブロック450において、アップスケーリングされたパディングエッジ領域を、アップスケーリング係数が掛けられるアップスケーリングプロセスの前の元の領域のサイズに対応するサイズにトリミングする。したがって、トリミングによって、エッジにアーチファクトがないきれいなエッジ領域を生成する。次に、ブロック460において、トリミングされてきれいになったエッジ領域を、アップスケーリングされた出力画像として、出力画像のエッジに挿入する。
【0030】
[0039] 一実装形態では、ブロック470において、入力画像の全てのエッジ領域を処理したかどうかを判断する。ブロック470において、エッジ領域の全てを処理したわけではないと判断した場合、次のエッジ領域に対してステップ410~460を繰り返す。一方で、ブロック470において、全てのエッジ領域を処理したと判断した場合、ブロック480において、非エッジ領域を抽出し、アップスケーリングし、出力画像に挿入することによって、プロセス400を続行する。
【0031】
[0040]
図5は、本開示の一実装形態による、
図4に示すフレーム処理プロセスのパディングプロセス430を示す詳細フローチャートである。
図5に示す実装形態では、ブロック500において、対象エッジ領域の周囲に画素をパディングする方法を最初に決定する。一実装形態では、対象エッジ領域(すなわち、
図3に示すボクシングエッジ領域302)の周囲にパディングするべき画素を、複数の小領域にグループ化する。
【0032】
[0041]
図5に示す実装形態では、パディングするべき画素を、3つの小領域にグループ化する。ブロック510において、対象エッジ領域の周囲にパディングするべき各小領域が、アクティブピクチャエリア(例えば、
図3の300)内に存在する第1のタイプ(例えば、
図3のタイプA)であるかどうかを判断するためにチェックする。次に、小領域がアクティブピクチャエリア内に存在する場合、ブロック512において、画像エリアを小領域の方向に拡張する。
【0033】
[0042] 一方で、ブロック520において、小領域がアクティブピクチャエリアの外側であると判断されるが、エッジに存在する場合(例えば、
図3のタイプB)、ブロック522において、エッジ上でバタフライ画像を使用して、画像エリアをパディングする。上記のように、タイプBのパッド設計は、アクティブピクチャエリア内に存在せず且つコーナーのいずれにも存在しない、上の小領域及び右の小領域のために使用される。
【0034】
[0043] 一方で、ブロック530において、小領域がアクティブピクチャエリアの外側であると判断されるが、コーナーに存在する場合(例えば、
図3のタイプC)、ブロック532において、コーナー点上でバタフライ画像を使用して、画像エリアをパディングする。上記のように、タイプCのパッド設計は、アクティブピクチャエリア内に存在せず且つコーナーに存在する、左上コーナーの小領域、右上コーナーの小領域、及び右下コーナーの小領域のために使用される。
【0035】
[0044] ブロック540において、処理すべき小領域が更に存在すると判断した場合、ブロック550において、プロセスは次の小領域に進んで、ブロック510に戻る。そうでない場合には、プロセスを終了する。
【0036】
[0045]
図5のプロセス500のブロック510、520、530を特定の順序で設計しているが、これらのブロックは、プロセス500の結果に影響を及ぼすことなく、任意の順序で実行することができる。
【0037】
[0046]
図6は、本開示の一実装形態によるフレーム処理システム600を示すブロック図である。
図6に示す実装形態では、フレーム処理システム600は、ボクシングエッジ領域抽出部610と、エッジ領域拡張部620と、エッジ領域トリミング部640と、エッジ領域充填部652及び非エッジ領域充填部654を含む領域充填部650とを含む。
【0038】
[0047]
図6に示す実装形態では、エッジ領域抽出部610は、入力画像のアクティブピクチャエリア内のボクシングエッジ領域の位置を検出して、アクティブピクチャエリアからエッジ領域を抽出するように構成される。エッジ領域拡張部620は、各領域の周囲に余分のパディング/画素を追加してパディングされたエッジ領域を生成することによって、エッジ領域の各々を拡張するように構成される。上記のように、余分のパディング/画素をどのように追加するかについての詳細は、
図5に示すフローチャートに示す。
【0039】
[0048]
図6に示す実装形態では、パディングされたエッジ領域をMLベースのアップスケーリングプロセッサ(例えば、ニューラルネットワーク630)に送って、アップスケーリングされたパディングエッジ領域を生成する。エッジ領域トリミング部640は、アップスケーリングされたパディングエッジ領域の各々を、アップスケーリング係数が掛けられるアップスケーリングプロセスの前の元の領域のサイズに対応するサイズにトリミングするように構成される。したがって、トリミングによって、エッジにアーチファクトがないきれいなエッジ領域を生成する。エッジ領域充填部652は、トリミングされてきれいになったエッジ領域を出力画像のエッジに挿入するように構成される。更に、非エッジ領域充填部654は、非エッジ領域をアップスケーリングして、アップスケーリングされた非エッジ領域を出力画像に挿入して、アップスケーリングされた出力画像を完成するように構成される。
【0040】
[0049] 一実装形態では、フレーム処理システム600は、1又は2以上のデジタル信号プロセッサ(DSP)、汎用マイクロプロセッサ、特定用途向け集積回路(ASIC)、フィールドプログラマブルゲート/ロジックアレイ(FPGA)、又はその他の等価集積又はディスクリート論理回路を含むハードウェアで全体が構成されるシステムである。別の実装形態では、フレーム処理システム600は、ハードウェアとソフトウェアの組み合わせで構成される。
【0041】
[0050]
図7Aは、本開示の一実装形態による、コンピュータシステム700及びユーザ702の図である。ユーザ702は、コンピュータシステム700を使用して、アップスケーリングプロセスにおけるフレーム処理のためのアプリケーションを実装する。
【0042】
[0051] コンピュータシステム700は、
図7Bのフレーム処理アプリケーション790を記憶して実行する。更に、コンピュータシステム700は、ソフトウェアプログラム704と通信することができる。ソフトウェアプログラム704は、強調色再生アプリケーションのためのソフトウェアコードを含むことができる。ソフトウェアプログラム704は、以下で更に説明するように、CD、DVD又はストレージドライブなどの外部媒体にロードすることができる。
【0043】
[0052] 更に、コンピュータシステム700は、ネットワーク780に接続することができる。ネットワーク780は、様々な異なるアーキテクチャ、例えば、クライアント-サーバアーキテクチャ、ピアツーピアネットワークアーキテクチャ、又は他のタイプのアーキテクチャにおいて接続することができる。例えば、ネットワーク780は、強調色再生アプリケーション内で使用されるエンジン及びデータを協調させるサーバ785と通信することができる。また、ネットワークは、異なるタイプのネットワークとすることができる。例えば、ネットワーク780は、インターネット、ローカルエリアネットワーク又はローカルエリアネットワークの任意の変形、ワイドエリアネットワーク、メトロポリタンエリアネットワーク、イントラネット又はエクストラネット、又は無線ネットワークとすることができる。
【0044】
[0053]
図7Bは、本開示の一実装形態による、フレーム処理アプリケーション790をホストするコンピュータシステム700を示す機能ブロック図である。コントローラ710はプログラマブルプロセッサであり、コンピュータシステム700及びそのコンポーネントの動作を制御する。コントローラ710は、メモリ720又は内蔵コントローラメモリ(図示せず)から(例えば、コンピュータプログラムの形で)命令をロードして、これらの命令を実行してシステムを制御する。その実行において、コントローラ710は、フレーム処理アプリケーション790にソフトウェアシステムを提供して、例えば、強調色再生アプリケーション内のエンジン及びデータ抽出部の作成及び構成を可能にする。代替的に、このサービスは、コントローラ710又はコンピュータシステム700において別個のハードウェアコンポーネントとして実装することができる。
【0045】
[0054] メモリ720は、コンピュータシステム700の他のコンポーネントによって使用するためにデータを一時的に記憶する。一実装形態では、メモリ720はRAMとして実装される。一実装形態では、メモリ720は、また、フラッシュメモリ及び/又はROMなどの長期又は永久メモリを含む。
【0046】
[0055] ストレージ730は、コンピュータシステム700の他のコンポーネントによって使用するために、データを一時的に又は長期間にわたって記憶する。例えば、ストレージ730は、フレーム処理アプリケーション790によって使用されるデータを記憶する。一実装形態では、ストレージ730は、ハードディスクドライブである。
【0047】
[0056] メディアデバイス740は、リムーバブルメディアを受け入れて、挿入されたメディアに対してデータの読み出し及び/又は書き込みを行う。一実装形態では、例えば、メディアデバイス740は、光ディスクドライブである。
【0048】
[0057] ユーザインターフェイス750は、コンピュータシステム700のユーザからユーザ入力を受け取ってユーザ702に情報を提示するためのコンポーネントを含む。一実装形態では、ユーザインターフェイス750は、キーボード、マウス、オーディオスピーカ、及びディスプレイを含む。コントローラ710は、ユーザ702からの入力を使用して、コンピュータシステム700の動作を調整する。
【0049】
[0058] I/Oインターフェイス760は、1又は2以上のI/Oポートを含み、外部記憶又は補足装置(例えば、プリンタ又はPDA)などの対応するI/Oデバイスに接続する。一実装形態では、I/Oインターフェイス760のポートは、USBポート、PCMCIAポート、シリアルポート、及び/又はパラレルポートなどのポートを含む。別の実装形態では、I/Oインターフェイス760は、外部装置と無線で通信するための無線インターフェイスを含む。
【0050】
[0059] ネットワークインターフェイス770は、イーサネット接続をサポートするRJ-45又は「Wi-Fi」インターフェイス(802.11を含むが、これに限定されるわけではない)などの有線及び/又は無線ネットワーク接続を含む。
【0051】
[0060] コンピュータシステム700は、コンピュータシステムに典型的な追加のハードウェア及びソフトウェア(例えば、電力、冷却、オペレーティングシステム)を含むが、これらのコンポーネントは、簡略化のために、
図7Bに具体的に示されていない。他の実装形態では、コンピュータシステムの異なる構成を使用することができる(例えば、異なるバス又はストレージ構成又はマルチプロセッサ構成)。
【0052】
[0061] 開示した実装についての本明細書の説明は、当業者が本開示を実施又は利用できるように行ったものである。当業者には、これらの実装の多数の修正が容易に明らかになると思われ、また本明細書で定義した原理は、本開示の趣旨又は範囲から逸脱することなく他の実装にも適用することができる。したがって、本開示は、本明細書に示す実装に限定されることを意図するものではなく、本明細書で開示した原理及び新規の特徴と一致する最も広い範囲が与えられるべきである。
【0053】
[0062] 本開示の様々な実装は、電子ハードウェア、コンピュータソフトウェア、又はこれらの技術の組み合わせの形で実現される。いくつかの実装は、1又は2以上のコンピュータ装置により実行される1又は2以上のコンピュータプログラムを含む。一般に、コンピュータ装置は、1又は2以上のプロセッサ、1又は2以上のデータ記憶構成要素(例えば、ハードディスクドライブ及びフロッピーディスクドライブ、CD-ROMドライブ、及び磁気テープドライブなどの揮発性又は不揮発性メモリモジュール及び持続的な光学及び磁気記憶装置)、1又は2以上の入力装置(例えば、ゲームコントローラ、マウス及びキーボード)、及び1又は2以上の出力装置(例えば、ディスプレイ装置)を含む。
【0054】
[0063] コンピュータプログラムは、通常、持続的な記憶媒体に記憶され、実行時にメモリにコピーされる実行可能なコードを含む。少なくとも1つのプロセッサが、所定の順序でメモリからプログラム命令を取り出すことによって、コードを実行する。プログラムコードの実行中には、コンピュータは、入力及び/又は記憶装置からデータを受け取り、データに対して処理を実行し、これにより得られたデータを出力及び/又は記憶装置に供給する。
【0055】
[0064] 当業者であれば、本明細書で説明した様々な例示的なモジュール及び方法ステップを電子ハードウェア、ソフトウェア、ファームウェア又はこれらの組み合わせとして実装することができると理解するであろう。このハードウェアとソフトウェアの互換性を明確に示すために、本明細書では、様々な例示的なモジュール及び方法ステップについて、一般にこれらの機能面から説明した。このような機能をハードウェア又はソフトウェアのいずれとして実装するかは、特定の用途及びシステム全体に課せられる設計制約に依存する。当業者であれば、説明した機能を各特定の用途のために様々な方法で実装することができるが、このような実装の決定を、本開示の範囲からの逸脱を引き起こすものとして解釈すべきではない。また、モジュール又はステップ内の機能のグループ化は、説明を容易にするためのものである。本開示から逸脱することなく、特定の機能を1つのモジュール又はステップから別のモジュール又はステップへ移すことができる。
【0056】
[0065] 上記の各実施例の全ての特徴が、本開示の特定の実装において必ずしも必要というわけではない。更に、本明細書で提示した説明及び図面は、本開示が広く意図する主題を表すものであると理解されたい。更に、本開示の範囲は、当業者にとって明らかになり得る他の実装を完全に含み、したがって、本開示の範囲は、添付の特許請求の範囲以外のものによって限定されるものではないと理解されたい。
【符号の説明】
【0057】
100 レターボックスエッジ
110 ピラーボックスエッジ
120 ウィンドウボックスエッジ
200 フレーム処理プロセス
202 ボクシングエッジ領域
204 ボクシングエッジ領域を検出して抽出する
206 アクティブピクチャエリア
210 ボクシングエッジ領域
212 アーチファクト
220 パディングされたエッジ領域
222 アップスケーリングされたパディングエッジ領域/パディングプロセス
300 アクティブピクチャエリア
302 抽出されたボクシングエッジ領域
320 パディングされた領域
322,324 線
400 フレーム処理プロセス
410 ボクシングエッジ領域の位置を検出
420 アクティブピクチャエリアから領域を抽出
430 領域の周囲に余分のパディングを追加することによってエリアを拡張
440 MLベースのアップスケーリングを適用
450 アップスケーリングされた画像から実際の領域を、元の領域のサイズに対応するサイズでトリミング
460 トリミングされてきれいになったエッジ領域を出力画像のエッジに挿入
470 全てのエッジ領域を処理したか?
480 非エッジ領域を抽出し、アップスケーリングし、出力画像に挿入
500 対象エッジ領域の周囲に画素をパディングする方法を決定
510 小領域がアクティブピクチャエリア内に存在するか?
512 小領域の方向に拡張
520 エッジか?
522 エッジ上でバタフライ画像を使用して小領域をパディング
530 コーナーか?
532 コーナー点上でバタフライ画像を使用して小領域をパディング
540 判断すべき小領域が更に存在するか?
550 次の小領域に進む
600 フレーム処理システム
610 エッジ領域抽出部
620 エッジ領域拡張部
630 ニューラルネットワーク
640 エッジ領域トリミング部
650 領域充填部
652 エッジ領域充填部
654 非エッジ領域充填部
700 コンピュータシステム
702 ユーザ
704 ソフトウェアプログラム
710 コントローラ
720 メモリ
730 ストレージ
740 メディアデバイス
750 ユーザインターフェイス
760 I/Oインターフェイス
770 ネットワークインターフェイス
780 ネットワーク
785 サーバ
790 フレーム処理アプリケーション