(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2024106428
(43)【公開日】2024-08-08
(54)【発明の名称】画像変換装置、画像変換方法、および、プログラム
(51)【国際特許分類】
G06T 3/4053 20240101AFI20240801BHJP
G06T 7/00 20170101ALI20240801BHJP
【FI】
G06T3/40 730
G06T7/00 350B
【審査請求】未請求
【請求項の数】9
【出願形態】OL
(21)【出願番号】P 2023010667
(22)【出願日】2023-01-27
(71)【出願人】
【識別番号】000002369
【氏名又は名称】セイコーエプソン株式会社
(74)【代理人】
【識別番号】110000028
【氏名又は名称】弁理士法人明成国際特許事務所
(72)【発明者】
【氏名】西村 秦
【テーマコード(参考)】
5B057
5L096
【Fターム(参考)】
5B057CA08
5B057CA12
5B057CA16
5B057CB08
5B057CB12
5B057CB16
5B057CC01
5B057CD06
5L096AA06
5L096DA01
5L096EA33
5L096HA11
(57)【要約】
【課題】高解像度化の倍率の指定について柔軟に対応する。
【解決手段】画像を高解像度化する画像変換装置は、学習データを用いた機械学習を行うことにより生成された少なくとも1つの機械学習モデルであって、画像をあらかじめ決められた設定倍率で高解像度化する機械学習モデルを記憶する記憶部と、高解像度化の処理についての目標倍率の指定を受け付ける受付部と、機械学習モデルを用いて、処理の対象となる画像に設定倍率で高解像度化の処理を実行する第1処理部と、機械学習モデルを用いずに、処理の対象となる画像に画素の補間処理を実行する第2処理部と、を備える。設定倍率と目標倍率とが異なる場合に、第1処理部が、処理の対象となる画像に設定倍率で高解像度化の処理を実行し、第2処理部が、第1処理部による高解像度化の処理の前または後に、処理の対象となる画像に目標倍率と設定倍率とに応じた補間処理を実行する。
【選択図】
図1
【特許請求の範囲】
【請求項1】
画像を高解像度化する画像変換装置であって、
学習データを用いた機械学習を行うことにより生成された少なくとも1つの機械学習モデルであって、画像をあらかじめ決められた設定倍率で高解像度化する機械学習モデルを記憶する記憶部と、
前記高解像度化の処理についての目標倍率の指定を受け付ける受付部と、
前記機械学習モデルを用いて、処理の対象となる画像に前記設定倍率で高解像度化の処理を実行する第1処理部と、
前記機械学習モデルを用いずに、処理の対象となる画像に画素の補間処理を実行する第2処理部と、
を備え、
前記設定倍率と前記目標倍率とが異なる場合に、
前記第1処理部が、処理の対象となる画像に前記設定倍率で前記高解像度化の処理を実行し、
前記第2処理部が、前記第1処理部による前記高解像度化の処理の前または後に、処理の対象となる画像に前記目標倍率と前記設定倍率とに応じた前記補間処理を実行し、
前記設定倍率と前記目標倍率とが同じ場合に、
前記第1処理部が、処理の対象となる画像に前記設定倍率で前記高解像度化の処理を実行し、
前記第2処理部は、前記補間処理を実行しない、
画像変換装置。
【請求項2】
請求項1に記載の画像変換装置であって、
前記設定倍率が前記目標倍率より大きい場合に、
前記第2処理部は、前記第1処理部が処理の対象となる画像に前記高解像度化の処理を実行した後に、前記高解像度化の処理がなされた画像に、解像度を低くするための前記目標倍率と前記設定倍率とに応じた前記補間処理を実行する、
画像変換装置。
【請求項3】
請求項2に記載の画像変換装置であって、
前記設定倍率が前記目標倍率より小さい場合に、
前記第2処理部は、前記第1処理部が処理の対象となる画像に前記高解像度化の処理を少なくとも1回実行した後に、前記高解像度化の処理がなされた画像に、解像度を高くするための前記補間処理を実行する、
画像変換装置。
【請求項4】
請求項3に記載の画像変換装置であって、
前記記憶部が記憶する前記機械学習モデルは、前記設定倍率が倍率L(Lは2以上の整数)である第1学習モデルと、前記設定倍率が倍率M(Mは2以上の整数であって、Lとは異なる値)である第2学習モデルと、を含む、
画像変換装置。
【請求項5】
請求項4に記載の画像変換装置であって、
前記受付部は、画質の向上と処理速度の向上とのうちのいずれか優先すべきものの指定を受け付ける、
画像変換装置。
【請求項6】
請求項5に記載の画像変換装置であって、
前記倍率Lおよび前記倍率Mはいずれも2の累乗である、
画像変換装置。
【請求項7】
請求項5に記載の画像変換装置であって、
前記倍率Lおよび前記倍率Mはいずれも奇数である、
画像変換装置。
【請求項8】
画像を高解像度化する画像変換方法であって、
学習データを用いた機械学習を行うことにより生成された少なくとも1つの機械学習モデルであって、画像をあらかじめ決められた設定倍率で高解像度化する機械学習モデルを準備するステップと、
高解像度化の処理についての目標倍率の指定を受け付けるステップと、
処理の対象となる画像に、前記機械学習モデルを用いて前記設定倍率で前記高解像度化の処理を実行するステップと、
前記設定倍率と前記目標倍率とが異なる場合に、
前記高解像度化の処理の前または後に、前記機械学習モデルを用いずに、処理の対象となる画像に前記目標倍率と前記設定倍率とに応じた画素の補間処理を実行するステップと、
を含み、
前記設定倍率と前記目標倍率とが同じ場合に、
前記高解像度化の処理の前または後に、処理の対象となる画像に前記補間処理を実行しない、
画像変換方法。
【請求項9】
画像を高解像度化する画像変換処理をコンピューターに実行させるためのプログラムであって、
前記コンピューターに、
学習データを用いた機械学習を行うことにより生成された少なくとも1つの機械学習モデルであって、画像をあらかじめ決められた設定倍率で高解像度化する機械学習モデルを、前記機械学習モデルを記憶する記憶部から読み出す機能と、
前記高解像度化の処理についての目標倍率の指定を受け付ける機能と、
処理の対象となる画像に、前記機械学習モデルを用いて前記設定倍率で前記高解像度化の処理を実行する機能と、
前記設定倍率と前記目標倍率とが異なる場合に、
前記高解像度化の処理の前または後に、前記機械学習モデルを用いずに、処理の対象となる画像に前記目標倍率と前記設定倍率とに応じた画素の補間処理を実行する機能と、
前記設定倍率と前記目標倍率とが同じ場合に、
前記高解像度化の処理の前または後に、処理の対象となる画像に前記補間処理を実行しない機能と、
を実現させるプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、画像変換装置、画像変換方法、および、プログラムに関する。
【背景技術】
【0002】
特許文献1に記載されているように、機械学習モデルを用いて画像の解像度を上げる超解像技術が知られている。
【先行技術文献】
【特許文献】
【0003】
【非特許文献1】Yulun Zhang et al., ”Image Super-Resolution Using Very Deep Residual Channel Attention Networks”,[online],2018年7月12日,<URL: https://arxiv.org/abs/1807.02758>
【発明の概要】
【発明が解決しようとする課題】
【0004】
低解像度画像を高解像度画像へ変換するための機械学習モデルは、機械学習のときに設定された倍率で画像の高解像度化の処理を実行する。このため、あらかじめ生成された機械学習モデルにおいて設定されている倍率以外で高解像度化を行うことができない。よって、高解像度化の倍率の指定について柔軟に対応できる技術が求められていた。
【課題を解決するための手段】
【0005】
本開示は、以下の形態として実現することが可能である。
【0006】
本開示の第1形態によれば、画像を高解像度化する画像変換装置が提供される。この画像変換装置は、学習データを用いた機械学習を行うことにより生成された少なくとも1つの機械学習モデルであって、画像をあらかじめ決められた設定倍率で高解像度化する機械学習モデルを記憶する記憶部と、前記高解像度化の処理についての目標倍率の指定を受け付ける受付部と、前記機械学習モデルを用いて、処理の対象となる画像に前記設定倍率で高解像度化の処理を実行する第1処理部と、前記機械学習モデルを用いずに、処理の対象となる画像に画素の補間処理を実行する第2処理部と、を備え、前記設定倍率と前記目標倍率とが異なる場合に、前記第1処理部が、処理の対象となる画像に前記設定倍率で前記高解像度化の処理を実行し、前記第2処理部が、前記第1処理部による前記高解像度化の処理の前または後に、処理の対象となる画像に前記目標倍率と前記設定倍率とに応じた前記補間処理を実行し、前記設定倍率と前記目標倍率とが同じ場合に、前記第1処理部が、処理の対象となる画像に前記設定倍率で前記高解像度化の処理を実行し、前記第2処理部は、前記補間処理を実行しない。
【0007】
本開示の第2形態によれば、画像を高解像度化する画像変換方法が提供される。この画像変換方法は、学習データを用いた機械学習を行うことにより生成された少なくとも1つの機械学習モデルであって、画像をあらかじめ決められた設定倍率で高解像度化する機械学習モデルを準備するステップと、高解像度化の処理についての目標倍率の指定を受け付けるステップと、処理の対象となる画像に、前記機械学習モデルを用いて前記設定倍率で前記高解像度化の処理を実行するステップと、前記設定倍率と前記目標倍率とが異なる場合に、前記高解像度化の処理の前または後に、前記機械学習モデルを用いずに、処理の対象となる画像に前記目標倍率と前記設定倍率とに応じた画素の補間処理を実行するステップと、を含み、前記設定倍率と前記目標倍率とが同じ場合に、前記高解像度化の処理の前または後に、処理の対象となる画像に前記補間処理を実行しない。
【0008】
本開示の第3形態によれば、画像を高解像度化する画像変換処理をコンピューターに実行させるためのプログラムが提供される。このプログラムは、前記コンピューターに、学習データを用いた機械学習を行うことにより生成された少なくとも1つの機械学習モデルであって、画像をあらかじめ決められた設定倍率で高解像度化する機械学習モデルを、前記機械学習モデルを記憶する記憶部から読み出す機能と、前記高解像度化の処理についての目標倍率の指定を受け付ける機能と、処理の対象となる画像に、前記機械学習モデルを用いて前記設定倍率で前記高解像度化の処理を実行する機能と、前記設定倍率と前記目標倍率とが異なる場合に、前記高解像度化の処理の前または後に、前記機械学習モデルを用いずに、処理の対象となる画像に前記目標倍率と前記設定倍率とに応じた画素の補間処理を実行する機能と、前記設定倍率と前記目標倍率とが同じ場合に、前記高解像度化の処理の前または後に、処理の対象となる画像に前記補間処理を実行しない機能と、を実現させる。
【図面の簡単な説明】
【0009】
【
図1】第1実施形態にかかる画像変換装置の概略構成を示すブロック図である。
【
図2】画像変換の処理を表したフローチャートである。
【
図3】第2実施形態にかかる画像変換装置のメモリーに関するブロック図である。
【
図4】第2実施形態における画像変換の処理を表したフローチャートである。
【発明を実施するための形態】
【0010】
A.第1実施形態:
図1は、本実施形態にかかる画像変換装置100の概略構成を示すブロック図である。画像変換装置100は、入力された画像を指定された倍率で高解像度化処理した画像を生成する。高解像度化処理は、入力された画像から、入力された画像が有する解像度より高い解像度を有する画像を生成する処理である。解像度とは1つの画像を構成する画素の密度あるいは画素数を意味する。高解像度化処理では、画質の向上のため、例えば、補間される画素の画素値を周辺の画素の値を用いた計算によって求める。本明細書において、画像はデジタル化された画像を意味し、アナログ画像を含まない。
【0011】
画像変換装置100は、メモリー110と、インターフェイス部120と、入力装置130と、表示装置140と、プロセッサー150と、を備えるコンピューターである。メモリー110を記憶部ともよぶ。
【0012】
メモリー110は、画像変換装置100が実行する各種処理に使用される各種のプログラムおよびデータを記憶する。メモリー110には、機械学習モデルである第1学習モデル11と、第2学習モデル12と、を表すデータが格納されている。第1学習モデル11および第2学習モデル12は、例えば、畳み込みニューラルネットワーク(Convolutional Neural Networks: CNN)である。第1学習モデル11および第2学習モデル12はそれぞれ学習データを用いた機械学習により生成されている。
【0013】
第1学習モデル11および第2学習モデル12は、あらかじめ設定された設定倍率で低解像度画像を高解像度画像に変換する。以下、低解像度画像とは、変換前の画像の解像度より低い解像度を有する画像を意味する。第1学習モデル11についての設定倍率は2倍である。なお、第1学習モデル11についての設定倍率はこれに限られず、2以上の整数とされてもよい。第2学習モデル12についての設定倍率は3倍である。なお、第2学習モデル12についての設定倍率はこれに限られず、2以上の整数とされてもよい。ただし、第2学習モデル12についての設定倍率は、第1学習モデル11についての設定倍率とは異なる。それぞれ異なる設定倍率を有する2つの第1学習モデル11および第2学習モデル12が用意されているので、目標倍率に応じた機械学習モデルを選択することができる。第1学習モデル11の設定倍率を倍率Lともよぶ。第2学習モデル12の設定倍率を倍率Mともよぶ。
【0014】
インターフェイス部120には、入力装置130と、表示装置140とが接続されている。入力装置130は、例えば、キーボード、マウスである。表示装置140は、例えば、液晶ディスプレイ、有機EL(Electro Luminescence)ディスプレイである。
【0015】
プロセッサー150は、メモリー110に記憶されているプログラムを実行することにより様々な機能を実現する。プロセッサー150は、メモリー110に格納されているプログラムを実行することで、受付部210と、第1処理部220と、第2処理部230として機能する。
【0016】
受付部210は、高解像度化の処理についての目標倍率の指定を受け付ける。第1処理部220は、第1学習モデル11または第2学習モデル12を用いて処理の対象となる画像に高解像度化の処理を実行する。第2処理部230は、機械学習モデルを用いずに、処理の対象となる画像に画素の補間処理を実行する。本明細書において、画素の補間処理は、画像の解像度を高くするために画素を補間する処理と、画像の解像度を低くするために画像の画素を間引く処理とを含む。第2処理部230によって用いられる画素の補間処理は、例えば、バイリニア法、バイキュービック法、ランチョス法である。
【0017】
図2は、画像変換処理を表したフローチャートである。
図2に示す処理は、受付部210、第1処理部220、および、第2処理部230として機能するプロセッサー150により実行される。
図2の処理が実行される前に、メモリー110に第1学習モデル11とおよび第2学習モデル12を表すデータが格納されていることを前提とする。例えば、ユーザーが入力装置130を介して処理の開始を指示すると、プロセッサー150は
図2に示す処理を開始する。
【0018】
ステップS100において、プロセッサー150は、例えば、入力画面を表示装置140に表示して、入力画像と指定倍率とを受け付ける。ユーザーは、入力画像IMが格納されているメモリー110における領域を示すパスと、指定倍率とを入力装置130を用いて入力する。指定倍率は、ユーザーが所望する高解像度化についての倍率である。指定倍率を目標倍率ともよぶ。なお、
図2の処理の開始前に、ユーザーはメモリー110の所望の領域に入力画像IMを格納している。
【0019】
ステップS105において、プロセッサー150は、指定倍率が第1学習モデル11の設定倍率または第2学習モデル12の設定倍率と同じであるか否かを判別する。プロセッサー150は、指定倍率が第1学習モデル11の設定倍率または第2学習モデル12の設定倍率と同じである場合(ステップS105;YES)、ステップS110の処理を実行する。一方、指定倍率がいずれの設定倍率とも異なる場合(ステップS105;NO)、プロセッサー150はステップS115の処理を実行する。
【0020】
ステップS110において、プロセッサー150は、第1学習モデル11および第2学習モデル12のうち指定倍率と同じ設定倍率を有する機械学習モデルを用いて、処理の対象である入力画像に高解像度化の処理を実行する。例えば、指定倍率が2倍の場合、プロセッサー150は、第1学習モデル11を用いて入力画像IMに高解像度化の処理を実行する。例えば、入力画像IMの解像度が、300(dpi)×300(dpi)である場合、高解像度化の処理により1インチあたりの画素数を2倍とした600(dpi)×600(dpi)の解像度を有する画像が生成される。
【0021】
ステップS115において、プロセッサー150は、第1学習モデル11および第2学習モデル12のうちあらかじめ決められた指定条件を満たす機械学習モデルを選択し、選択した機械学習モデルを用いて処理の対象である入力画像に高解像度化の処理を実行する。あらかじめ決められた指定条件とは、指定倍率に最も近い設定倍率を有することである。プロセッサー150は、メモリー110に格納されている機械学習モデルのうち、その設定倍率と指定倍率との差が最も小さい機械学習モデルを、あらかじめ決められた指定条件を満たす機械学習モデルとして選択する。指定条件を満たす2つの機械学習モデルがある場合、指定倍率より大きい設定倍率を有する機械学習モデルが選択される。指定条件を満たす2つの機械学習モデルがある場合とは、指定倍率が、2つの設定倍率の中間の値をとる場合である。機械学習モデルを用いない補間処理を用いるより、機械学習モデルを用いた高解像度化の処理を用いる方が、生成される画像の画質が向上する傾向にある。このため、本実施形態において、画像変換装置100は、指定倍率に最も近い設定倍率を有する機械学習モデルを用いた高解像度化処理により、できるだけ指定倍率に近い中間画像を生成する。
【0022】
例えば、指定倍率が2.5倍の場合、プロセッサー150は、設定倍率が3倍である第2学習モデル12を選択する。プロセッサー150は、第2学習モデル12を用いて入力画像IMに高解像度化の処理を実行する。例えば、入力画像IMの解像度が、300(dpi)×300(dpi)である場合、高解像度化の処理により1インチあたりの画素数を3倍とした900(dpi)×900(dpi)の解像度を有する中間画像が生成される。
【0023】
また、例えば、3つの機械学習モデルが用意されており、それぞれの設定倍率が、2倍、4倍、8倍であったとする。指定倍率が3.8倍であるとする。この場合、指定倍率に最も近い4倍の設定倍率を有する機械学習モデルが指定条件を満たす機械学習モデルである。
【0024】
ステップS120において、プロセッサー150は、処理の対象である画像に画素の補間処理を実行する。処理の対象は、ステップS115における機械学習モデルを用いた高解像度化の処理により生成された中間画像である。
【0025】
ステップS115において、指定倍率より大きい設定倍率で高解像度化の処理が実行された場合、ステップS120において、解像度を低くするための補間処理であるダウンサンプリング処理が実行される。例えば、入力画像IMの解像度が300(dpi)×300(dpi)であり、指定倍率が2.5倍であるとする。ステップS115で、入力画像IMの解像度が3倍に変換された場合、900(dpi)×900(dpi)の解像度を有する中間画像が生成される。最終的に出力されるべき出力画像の解像度は、750(dpi)×750(dpi)である。この場合、プロセッサー150は、解像度を低くするために1インチあたりの画素数を0.83倍とする画素の補間処理を中間画像に実行する。補間処理により、900(dpi)×900(dpi)の解像度を有する中間画像から、750(dpi)×750(dpi)の解像度を有する画像が生成される。
【0026】
また、ステップS115において、指定倍率より小さい設定倍率で高解像度化の処理が実行された場合、ステップS120において、解像度を高くするための補間処理であるアップサンプリング処理が実行される。
【0027】
ステップS125において、プロセッサー150は変換後の画像を出力画像としてメモリー110に保存する。その後、
図2に示す処理が終了される。
【0028】
以上説明したように、本実施形態においては、画像変換装置100は、機械学習モデルを用いた高解像度化の処理と機械学習モデルを用いない画像の画素の補間処理とを組み合わせて、指定倍率で高解像度化した出力画像を生成する。画像変換装置100は、指定倍率と同一の設定倍率を有する機械学習モデルが用意されていない場合であっても、所望される倍率で高解像度化を行うことができる。よって、ユーザーは、指定倍率と同一の設定倍率を有する機械学習モデルが用意されていない場合であっても、所望される倍率で高解像度化された画像を取得できる。このようして高解像度化の倍率の指定について柔軟に対応することができる。
【0029】
また、ユーザーが小数値の指定倍率で高解像度化を行うことを所望することがある。用意されている機械学習モデルの設定倍率の値が整数である場合でも、画像変換装置100は、機械学習モデルを用いた高解像度化の処理と機械学習モデルを用いない画像の画素の補間処理とを組み合わせることにより、小数値の指定倍率で高解像度化を行うことができる。このようして高解像度化の倍率の指定について柔軟に対応することができる。
【0030】
また、ユーザーが指定する可能性があるすべての設定倍率の機械学習モデルを用意しなくてもよい。よって、複数の設定倍率それぞれについて機械学習モデルが用意される態様に比べて、機械学習モデルを保存するメモリー110の容量を削減できる。また、複数の設定倍率それぞれについて機械学習モデルが用意される態様に比べて、機械学習モデルを生成するための機械学習を行う手間を省くことができる。
【0031】
また、本実施形態においては、機械学習モデルを用いた高解像度化の処理を先に実行し、機械学習モデルを用いない補間処理を実行する。機械学習モデルを用いない補間処理は、機械学習モデルを用いた高解像度化の処理に比べて、生成できる画像の画質が高くない傾向にある。機械学習モデルを用いない補間処理を低解像度の入力画像に行った場合、生成される画像の画質が、入力画像の画質より低下することも想定される。このため、画像変換装置100は、生成できる画質の向上の精度を高くできる傾向にある機械学習モデルを用いた高解像度化の処理を先に実行することで、入力画像の画質より画質の高い中間画像をまず生成する。その後、画像変換装置100は、機械学習モデルを用いない補間処理を実行する。機械学習モデルを用いない補間処理が実行された後に機械学習モデルを用いた高解像度化の処理が行われる態様に比べて、最終的に生成される画像の画質を向上できる。
【0032】
また、本実施形態においては、指定倍率とあらかじめ用意されている機械学習モデルの設定倍率とが同じでない場合に、指定倍率に最も近い設定倍率を有する機械学習モデルを用いて高解像度化の処理が行われる。機械学習モデルを用いない補間処理を用いるより、機械学習モデルを用いた高解像度化の処理を用いる方が、生成される画像の画質が向上する傾向にあるためである。このため、本実施形態において、画像変換装置100は、指定倍率に最も近い設定倍率を有する機械学習モデルを選択し、機械学習モデルを用いた高解像度化処理によりできるだけ指定倍率に近い中間画像を生成する。
【0033】
B.第2実施形態:
第1実施形態においては、高解像度化の処理に用いる機械学習モデルの選択方法が一律であった。第2実施形態においては、ユーザーの所望する条件に合った機械学習モデルが用いられる。以下、第1実施形態と異なる構成を中心に説明する。第1実施形態にかかる構成と同様の構成については説明を省略する。
【0034】
図3は、本実施形態にかかる画像変換装置100のメモリー110についてのブロック図である。本実施形態においては、画像変換装置100は、第1学習モデル11と、第2学習モデル12と、第3学習モデル13と、第4学習モデル14と、のいずれかを用いて、処理の対象となる画像に高解像度化の処理を実行する。メモリー110には、あらかじめ機械学習により生成された第1学習モデル11~第4学習モデル14を表すデータが格納されている。第1学習モデル11~第4学習モデル14の設定倍率は、いずれも2の累乗(2の一乗以上の値)であるが、互いに異なる。第1学習モデル11の設定倍率は2倍である。第2学習モデル12の設定倍率は4倍である。第3学習モデル13の設定倍率は8倍である。第4学習モデル14の設定倍率は16倍である。
【0035】
図4は、本実施形態における画像変換処理を表したフローチャートである。
図4に示す処理は、受付部210、第1処理部220、および、第2処理部230として機能するプロセッサー150により実行される。
図4の処理が実行される前に、メモリー110には第1学習モデル11~第4学習モデル14が格納されていることを前提とする。
図4において、第1実施形態と同様の処理については同様の符号を付している。例えば、ユーザーが入力装置130を介して処理の開始を指示すると、プロセッサー150は
図4に示す処理を開始する。
【0036】
ステップS100の処理は、第1実施形態と同様である。本実施形態においては、技術の理解の容易のため、指定倍率は、第1学習モデル11の設定倍率である2倍より大きく、第4学習モデル14の設定倍率である16倍より小さい値であることを前提とする。ステップS105の処理は第1実施形態と同様である。ステップS110の処理は第1実施形態と同様である。
【0037】
ステップS200において、プロセッサー150は、例えば、入力画面を表示装置140に表示して、画質の向上と処理速度の向上とのうちのいずれか優先すべきものの指定を受け付ける。ユーザーは入力装置130を用いて優先すべきものの指定を入力する。
【0038】
ステップS205において、プロセッサー150は、画質の向上を優先すべきと指定されたか否かを判別する。画質の向上を優先することが指定された場合(ステップS205;YES)、プロセッサー150はステップS210の処理を実行する。一方、画質の向上を優先すべきと指定されていない、即ち、処理速度の向上を優先すべきと指定された場合、(ステップS205;NO)、プロセッサー150はステップS220の処理を実行する。
【0039】
ステップS210において、プロセッサー150は、メモリー110に格納されている複数の機械学習モデルのうち、あらかじめ決められた第1指定条件を満たす機械学習モデルを選択する。プロセッサー150は、選択した機械学習モデルを用いて処理の対象である入力画像に高解像度化の処理を実行する。あらかじめ決められ第1指定条件とは、指定倍率より大きな設定倍率を有することである。第1指定条件を満たす複数の機械学習モデルがある場合には、プロセッサー150は、それらのうちから指定倍率に最も近い設定倍率を有する機械学習モデルを選択する。
【0040】
ステップS215において、プロセッサー150は、処理の対象である画像に、解像度を低くするため画素の補間処理、即ち、ダウンサンプリング処理を実行する。ステップS210において、指定倍率より大きい設定倍率で高解像度化の処理が実行されるためである。
【0041】
ステップS220において、プロセッサー150は、メモリー110に格納されている複数の機械学習モデルのうち、あらかじめ決められた第2指定条件に該当する機械学習モデルを選択する。プロセッサー150は、選択した機械学習モデルを用いて処理の対象である入力画像に設定倍率で高解像度化の処理を実行する。あらかじめ決められた第2指定条件とは、指定倍率より小さい設定倍率を有することである。第2指定条件を満たす複数の機械学習モデルがある場合には、プロセッサー150は、それらのうちから指定倍率に最も近い設定倍率を有する機械学習モデルを選択する。
【0042】
指定倍率より小さい設定倍率を有する機械学習モデルが用いられる態様は、画質の向上を優先するため指定倍率より大きい設定倍率を有する機械学習モデルを用いられる態様に比べて、高解像度化の処理により補間の対象となる画素の数を少なくできる。これにより、S220,S225においては、画質の向上を優先するS210,S215の場合に比べて、処理速度を向上させることができる。
【0043】
例えば、指定倍率が2.5倍の場合、プロセッサー150は設定倍率が2倍である第1学習モデル11を用いて入力画像IMに高解像度化の処理を実行する。例えば、入力画像IMの解像度が、300(dpi)×300(dpi)である場合、1インチ当たりの画素数を2倍とした600(dpi)×600(dpi)の解像度を有する中間画像が生成される。
【0044】
ステップS225において、プロセッサー150は、処理の対象である画像に、解像度を高くするための補間処理、即ち、アップサンプリング処理を実行する。ステップS220において、指定倍率より小さい設定倍率で高解像度化の処理が実行されるためである。例えば、入力画像IMの解像度が、300(dpi)×300(dpi)であり、指定倍率が2.5倍であるとする。ステップS220で、入力画像の解像度が2倍に変換された場合、600(dpi)×600(dpi)の解像度を有する中間画像が生成される。最終的に出力されるべき出力画像の解像度は、750(dpi)×750(dpi)である。この場合、プロセッサー150は、解像度を高くするために1インチあたりの画素数を1.25倍とする画素の補間処理を中間画像に実行する。補間処理により、600(dpi)×600(dpi)の解像度を有する中間画像から、750(dpi)×750(dpi)の解像度を有する画像が生成される。
【0045】
ステップS125において、プロセッサー150は変換後の画像を出力画像としてメモリー110に保存する。その後、
図4に示す処理が終了される。
【0046】
以上説明したように、第1実施形態と同様に、画像変換装置100は、機械学習モデルを用いた高解像度化の処理と機械学習モデルを用いない画像の画素の補間処理とを組み合わせることにより、所望される倍率で高解像度化された画像を生成できる。このようして高解像度化の倍率の指定について柔軟に対応することができる。また、本実施形態においては、画質の向上と処理速度の向上とのうちのユーザーが所望する方に応じた高解像度化処理を実行することができる。
【0047】
また、本実施形態においては、画質の向上を優先する場合であっても、処理速度の向上を優先する場合であっても、機械学習モデルを用いた高解像度化の処理を先に実行し、機械学習モデルを用いない補間処理を実行する。画像変換装置100は、生成できる画質の向上の精度を高くできる傾向にある機械学習モデルを用いた高解像度化の処理を先に実行することで、入力画像の画質より画質の高い中間画像をまず生成する。その後、画像変換装置100は、機械学習モデルを用いない補間処理を実行する。このようにして、機械学習モデルを用いない補間処理が実行された後に機械学習モデルを用いた高解像度化の処理が行われる態様に比べて、最終的に生成される画像の画質を向上できる。
【0048】
C.他の実施形態:
C1.他の実施形態1:
機械学習モデルを用いた高解像度化処理を2回以上実行した後に補間処理を実行してもよい。例えば、指定倍率が7.5倍であるとする。この場合、入力画像に設定倍率が2倍の機械学習モデルで高解像度化処理を実行することにより第1中間画像を生成する。その後、設定倍率が3倍の機械学習モデルで第1中間画像に高解像度化処理を実行することにより第2中間画像を生成する。さらに、1インチあたりの画素数を1.25倍とする画素の補間処理を第2中間画像に実行することにより最終的な出力画像を生成する。このようにして、入力画像の解像度を指定倍率8倍とした高解像度画像を生成できる。
【0049】
C2.他の実施形態2:
第1実施形態および第2実施形態においては、機械学習モデルを用いた高解像度化処理の後に補間処理を実行する例を説明した。しかしながら、補間処理を先に実行し、補間処理がなされた画像に機械学習モデルを用いた高解像度化処理を少なくとも1回実行してもよい。
【0050】
C3.他の実施形態3:
第1実施形態および第2実施形態においては、2つ以上の機械学習モデルがあらかじめ用意されている例を説明した。しかしながら、1つの機械学習モデルだけがあらかじめ用意されてもよい。
【0051】
また、3つ以上の機械学習モデルがあらかじめ用意されていてもよい。設定倍率が異なる3つ以上の機械学習モデルのうちから、目標倍率に応じたいずれかを選択することができる。この場合、それぞれの設定倍率をすべて奇数(3以上の奇数)に設定することができる。あるいは、それぞれの設定倍率をすべて偶数に設定してもよい。あるいは、複数の機械学習モデルのうち少なくとも一部の機械学習モデルの設定倍率は、整数ではなく、小数であってもよい。
【0052】
また、画像変換装置100の機能を実現する手段は、ソフトウェアに限られず、その一部または全部を、専用のハードウェアによって実現してもよい。例えば、専用のハードウェアとして、FPGA(Field Programmable Gate Array)またはASIC(Application Specific Integrated Circuit)に代表される回路を使用してもよい。
【0053】
D.他の形態:
本開示は、上述の実施形態に限られるものではなく、その趣旨を逸脱しない範囲において種々の構成で実現することができる。例えば、発明の概要の欄に記載した各形態中の技術的特徴に対応する実施形態中の技術的特徴は、上述の課題の一部または全部を解決するために、あるいは、上述の効果の一部または全部を達成するために、適宜、差し替え、組み合わせを行うことが可能である。また、その技術的特徴が本明細書中に必須なものとして説明されていなければ、適宜、削除することが可能である。
【0054】
(1)本開示の第1形態によれば、画像を高解像度化する画像変換装置が提供される。この画像変換装置は、学習データを用いた機械学習を行うことにより生成された少なくとも1つの機械学習モデルであって、画像をあらかじめ決められた設定倍率で高解像度化する機械学習モデルを記憶する記憶部と、前記高解像度化の処理についての目標倍率の指定を受け付ける受付部と、前記機械学習モデルを用いて、処理の対象となる画像に前記設定倍率で高解像度化の処理を実行する第1処理部と、前記機械学習モデルを用いずに、処理の対象となる画像に画素の補間処理を実行する第2処理部と、を備え、前記設定倍率と前記目標倍率とが異なる場合に、前記第1処理部が、処理の対象となる画像に前記設定倍率で前記高解像度化の処理を実行し、前記第2処理部が、前記第1処理部による前記高解像度化の処理の前または後に、処理の対象となる画像に前記目標倍率と前記設定倍率とに応じた前記補間処理を実行し、前記設定倍率と前記目標倍率とが同じ場合に、前記第1処理部が、処理の対象となる画像に前記設定倍率で前記高解像度化の処理を実行し、前記第2処理部は、前記補間処理を実行しない。
上記形態によれば、機械学習モデルを用いた高解像度化の処理と、機械学習モデルを用いない画像の画素の補間処理とを組み合わせるため、高解像度化の倍率の指定について柔軟に対応することができる。
【0055】
(2)上記形態において、前記設定倍率が前記目標倍率より大きい場合に、前記第2処理部は、前記第1処理部が処理の対象となる画像に前記高解像度化の処理を実行した後に、前記高解像度化の処理がなされた画像に、解像度を低くするための前記目標倍率と前記設定倍率とに応じた前記補間処理を実行してもよい。
画素の補間処理を先に実行し、その後に高解像度化の処理を実行する態様においては、低解像度の画像に画素の補間処理を実行することにより得られる画像の画質が低下する傾向にある。この場合、高解像度化の処理の対象となる画像の画質が、画素の補間処理が実行される前の画像の画質より低下することが想定される。上記形態によれば、このような問題の発生を回避できる。
【0056】
(3)上記形態において、前記設定倍率が前記目標倍率より小さい場合に、前記第2処理部は、前記第1処理部が処理の対象となる画像に前記高解像度化の処理を少なくとも1回実行した後に、前記高解像度化の処理がなされた画像に、解像度を高くするための前記補間処理を実行してもよい。
画素の補間処理を先に実行し、その後に高解像度化の処理を実行する態様においては、低解像度の画像に画素の補間処理を実行することにより得られる画像の画質が低下する傾向にある。この場合、高解像度化の処理の対象となる画像の画質が、画素の補間処理が実行される前の画像の画質より低下することが想定される。上記形態によれば、このような問題の発生を回避できる。
【0057】
(4)上記形態において、前記記憶部が記憶する前記機械学習モデルは、前記設定倍率が倍率L(Lは2以上の整数)である第1学習モデルと、前記設定倍率が倍率M(Mは2以上の整数であって、Lとは異なる値)である第2学習モデルと、を含んでもよい。
それぞれ異なる設定倍率を有する複数の機械学習モデルのうちから、目標倍率に応じた機械学習モデルを選択することができる。
【0058】
(5)上記形態において、前記受付部は、画質の向上と処理速度の向上とのうちのいずれか優先すべきものの指定を受け付けてもよい。
上記形態によれば、画質の向上と処理速度の向上とのうちの所望される方に応じた高解像度化処理を実行することができる。
【0059】
(6)上記形態において、前記倍率Lおよび前記倍率Mはいずれも2の累乗であってもよい。
【0060】
(7)前記倍率Lおよび前記倍率Mはいずれも奇数であってもよい。
【0061】
(8)本開示の第2形態によれば、画像を高解像度化する画像変換方法が提供される。この画像変換方法は、学習データを用いた機械学習を行うことにより生成された少なくとも1つの機械学習モデルであって、画像をあらかじめ決められた設定倍率で高解像度化する機械学習モデルを準備するステップと、高解像度化の処理についての目標倍率の指定を受け付けるステップと、処理の対象となる画像に、前記機械学習モデルを用いて前記設定倍率で前記高解像度化の処理を実行するステップと、前記設定倍率と前記目標倍率とが異なる場合に、前記高解像度化の処理の前または後に、前記機械学習モデルを用いずに、処理の対象となる画像に前記目標倍率と前記目標倍率とに応じた画素の補間処理を実行するステップと、を含み、前記設定倍率と前記目標倍率とが同じ場合に、前記高解像度化の処理の前または後に、処理の対象となる画像に前記補間処理を実行しない。
上記形態によれば、機械学習モデルを用いた高解像度化の処理と、機械学習モデルを用いない画像の画素の補間処理とを組み合わせるため、高解像度化の倍率の指定について柔軟に対応することができる。
【0062】
(9)本開示の第3形態によれば、画像を高解像度化する画像変換処理をコンピューターに実行させるためのプログラムが提供される。このプログラムは、前記コンピューターに、学習データを用いた機械学習を行うことにより生成された少なくとも1つの機械学習モデルであって、画像をあらかじめ決められた設定倍率で高解像度化する機械学習モデルを、前記機械学習モデルを記憶する記憶部から読み出す機能と、前記高解像度化の処理についての目標倍率の指定を受け付ける機能と、処理の対象となる画像に、前記機械学習モデルを用いて前記設定倍率で前記高解像度化の処理を実行する機能と、前記設定倍率と前記目標倍率とが異なる場合に、前記高解像度化の処理の前または後に、前記機械学習モデルを用いずに、処理の対象となる画像に前記目標倍率と前記設定倍率とに応じた画素の補間処理を実行する機能と、前記設定倍率と前記目標倍率とが同じ場合に、前記高解像度化の処理の前または後に、処理の対象となる画像に前記補間処理を実行しない機能と、を実現させる。
上記形態によれば、機械学習モデルを用いた高解像度化の処理と、機械学習モデルを用いない画像の画素の補間処理とを組み合わせるため、高解像度化の倍率の指定について柔軟に対応することができる。
【0063】
本開示は、上記以外の種々の形態で実現することも可能である。例えば、コンピュータープログラムを記録した一時的でない記録媒体(non-transitory storage medium)の形態で実現することができる。
【符号の説明】
【0064】
11…第1学習モデル、12…第2学習モデル、100…画像変換装置、110…メモリー、120…インターフェイス部、130…入力装置、140…表示装置、150…プロセッサー、210…受付部、220…第1処理部、230…第2処理部、IM…入力画像