前記第一表示制御部は、前記表示面に表示された前記複数の候補画像のうち一の画像に対する選択が入力された場合に、選択された前記一の画像を前記基準画像として表示させる、請求項1に記載の画像表示システム。
前記複数の候補画像のうち一の画像に対する選択の入力は、前記一の画像の前記基準画像が表示されている領域に向かう前記表示面上での操作体の移動に基づく入力である、請求項3に記載の画像表示システム。
前記探索領域は、前記基準画像の画像データと、先に前記基準画像として選択された画像の画像データとの距離に基づいて設定される、請求項1〜4のいずれか一項に記載の画像表示システム。
前記探索領域は、前記基準画像の画像データと、先に前記基準画像として選択された複数の画像の画像データとの距離に基づいて設定される、請求項5に記載の画像表示システム。
前記探索領域は、先に前記基準画像として選択された複数の画像の画像データの、前記所定空間上における分布に基づいて設定される、請求項1〜6のいずれか一項に記載の画像表示システム。
前記探索領域は、先に前記基準画像として選択された複数の画像の画像データの、前記所定の空間上における推移に基づいて設定される、請求項7に記載の画像表示システム。
前記探索領域は、前記表示面に表示される前記所定空間上における画像群の画像データのマッピング画面に対する操作に基づいて設定される、請求項1〜8のいずれか一項に記載の画像表示システム。
前記所定空間は、前記画像の画像データの座標空間を次元削減処理または次元数の調整処理をして得られる空間である、請求項1〜9のいずれか一項に記載の画像表示システム。
前記第二表示制御部は、前記基準画像と前記複数の候補画像の各々との前記所定空間上の距離に基づいて、前記複数の候補画像の各々の前記表示面上における表示態様を制御する、請求項1〜11のいずれか一項に記載の画像表示システム。
前記第二表示制御部は、前記基準画像と前記複数の候補画像の各々との前記所定の空間上の距離に基づいて、前記複数の候補画像の各々の前記表示面上の表示位置を決定する、請求項12に記載の画像表示システム。
前記第二表示制御部は、前記基準画像と前記複数の候補画像の各々との前記所定の空間上の距離に基づいて、前記複数の候補画像の各々と前記基準画像との前記表示面における距離を決定する、請求項13に記載の画像表示システム。
前記第二表示制御部は、前記基準画像と前記複数の候補画像の各々との前記所定の空間上の距離に基づいて、前記複数の候補画像の各々の前記表示面上の表示サイズを制御する、請求項12〜14のいずれか一項に記載の画像表示システム。
前記第二表示制御部は、前記探索領域のうち、前記画像表示システムの処理状況に応じて設定されるサイズを有する選択対象集団から選択された前記候補画像を表示する、請求項1〜15のいずれか一項に記載の画像表示システム。
前記画像表示システムの処理が進行するにつれて、前記探索領域に対する前記選択対象集団のサイズを大きく、または小さくする、請求項16に記載の画像表示システム。
前記第二表示制御部は、前記表示面に表示される、前記探索領域のサイズを変更する領域変更オブジェクトに対する入力に基づく新たな探索領域に含まれる画像データを有する前記複数の候補画像を表示する、請求項1〜17のいずれか一項に記載の画像表示システム。
【図面の簡単な説明】
【0011】
【図1】本発明の一実施形態に係る画像表示システムの全体構成例を示す図である。
【図2】同実施形態に係る画像処理サーバのハードウェア構成例を示す図である。
【図3】同実施形態に係るユーザ端末のハードウェア構成例を示す図である。
【図4】同実施形態に係る制御部の機能構成例を示す図である。
【図5】同実施形態に係る第一表示制御部による表示制御の一例を示す図である。
【図6】同実施形態に係る所定空間および探索領域の一例を示す図である。
【図7】同実施形態に係る領域設定部による領域設定処理の一例を示す図である。
【図8】同実施形態に係る第二表示制御部による表示制御の一例を示す図である。
【図9】同実施形態に係る操作取得部による取得処理の一例を示す図である。
【図10】同実施形態に係る所定空間および探索領域の一例を示す図である。
【図11】同実施形態に係る第一表示制御部による表示制御処理の一例を示す図である。
【図12】同実施形態に係る所定空間および探索領域の一例を示す図である。
【図13】同実施形態に係る調整部による調整処理の一例を示す図である。
【図14】同実施形態に係る調整部による選択対象集団の調整に係る処理の一例を示す図である。
【図15】同実施形態に係る調整部による選択対象集団の調整に係る処理の一例を示す図である。
【図16】同実施形態の変形例に係る領域設定部による探索領域の設定処理の一例を示す図である。
【図17】同実施形態の変形例に係る領域設定部による探索領域の設定処理の一例を示す図である。
【図18】同実施形態の変形例に係る領域設定部による探索領域の設定処理の一例を示す図である。
【図19】同実施形態の画像表示システムにより実行される処理の流れを示すフローチャートである。
【発明を実施するための形態】
【0012】
本発明の実施形態の内容を列記して説明する。本発明の一実施形態による画像処理装置及びプログラムは、以下のような構成を備える。
【0013】
[項目1]
基準画像を表示面に表示させる第一表示制御部と、
前記基準画像とは異なる画像情報をそれぞれ有する複数の候補画像を、前記表示面の前記基準画像の表示領域の周辺において、選択可能に表示させる第二表示制御部と、
を備え、
前記複数の候補画像の各々の画像データは、前記基準画像の画像データに基づいて決定される、所定空間上の探索領域に含まれる、画像表示システム。
[項目2]
前記第一表示制御部は、前記表示面に表示された前記複数の候補画像のうち一の画像に対する選択が入力された場合に、選択された前記一の画像を前記基準画像として表示させる、項目1に記載の画像表示システム。
[項目3]
前記第一表示制御部は、選択された前記一の画像を、前記基準画像が表示されていた領域に前記基準画像として表示させる、項目2に記載の画像表示システム。
[項目4]
前記複数の候補画像のうち一の画像に対する選択の入力は、前記一の画像の前記基準画像が表示されている領域に向かう前記表示面上での操作体の移動に基づく入力である、項目3に記載の画像表示システム。
[項目5]
前記探索領域は、前記基準画像の画像データと、先に前記基準画像として選択された画像の画像データとの距離に基づいて設定される、項目1〜4のいずれか一項に記載の画像表示システム。
[項目6]
前記探索領域は、前記基準画像の画像データと、先に前記基準画像として選択された複数の画像の画像データとの距離に基づいて設定される、項目5に記載の画像表示システム。
[項目7]
前記探索領域は、先に前記基準画像として選択された複数の画像の画像データの、前記所定空間上における分布に基づいて設定される、項目1〜6のいずれか一項に記載の画像表示システム。
[項目8]
前記探索領域は、先に前記基準画像として選択された複数の画像の画像データの、前記所定の空間上における推移に基づいて設定される、項目7に記載の画像表示システム。
[項目9]
前記探索領域は、前記表示面に表示される前記所定空間上における画像群の画像データのマッピング画面に対する操作に基づいて設定される、項目1〜8のいずれか一項に記載の画像表示システム。
[項目10]
前記所定空間は、前記画像の画像データの座標空間を次元削減処理または次元数の調整処理をして得られる空間である、項目1〜9のいずれか一項に記載の画像表示システム。
[項目11]
前記画像データは、前記画像をベクトル化処理して得られる、項目1〜10のいずれか一項に記載の画像表示システム。
[項目12]
前記第二表示制御部は、前記基準画像と前記複数の候補画像の各々との前記所定空間上の距離に基づいて、前記複数の候補画像の各々の前記表示面上における表示態様を制御する、項目1〜11のいずれか一項に記載の画像表示システム。
[項目13]
前記第二表示制御部は、前記基準画像と前記複数の候補画像の各々との前記所定の空間上の距離に基づいて、前記複数の候補画像の各々の前記表示面上の表示位置を決定する、項目12に記載の画像表示システム。
[項目14]
前記第二表示制御部は、前記基準画像と前記複数の候補画像の各々との前記所定の空間上の距離に基づいて、前記複数の候補画像の各々と前記基準画像との前記表示面における距離を決定する、項目13に記載の画像表示システム。
[項目15]
前記第二表示制御部は、前記基準画像と前記複数の候補画像の各々との前記所定の空間上の距離に基づいて、前記複数の候補画像の各々の前記表示面上の表示サイズを制御する、項目12〜14のいずれか一項に記載の画像表示システム。
[項目16]
前記第二表示制御部は、前記探索領域のうち、前記画像表示システムの処理状況に応じて設定されるサイズを有する選択対象集団から選択された前記候補画像を表示する、項目1〜15のいずれか一項に記載の画像表示システム。
[項目17]
前記画像表示システムの処理が進行するにつれて、前記探索領域に対する前記選択対象集団のサイズを大きく、または小さくする、項目16に記載の画像表示システム。
[項目18]
前記第二表示制御部は、前記表示面に表示される、前記探索領域のサイズを変更する領域変更オブジェクトに対する入力に基づく新たな探索領域に含まれる画像データを有する前記複数の候補画像を表示する、項目1〜17のいずれか一項に記載の画像表示システム。
[項目19]
コンピュータを、
基準画像を表示面に表示させる第一表示制御手段と、
前記基準画像とは異なる画像情報をそれぞれ有する複数の候補画像を、前記表示面の前記基準画像の表示領域の周辺において、選択可能に表示させる第二表示制御手段と、
として機能させ、
前記複数の候補画像の各々の画像データは、前記基準画像の画像データに基づいて決定される、所定空間上の探索領域に含まれる、プログラム。
【0014】
以下、添付図面を参照しながら本発明の一実施形態について説明する。
【0015】
図1は、本発明の一実施形態に係る画像表示システムの全体構成例を示す図である。本実施形態の画像表示システム1は、画像処理サーバ10を含んで構成される。画像処理サーバ10は、一又は複数のユーザ端末20と通信ネットワークNWを介して通信可能に接続される。通信ネットワークNWは、たとえばインターネットであり、公衆電話回線網や携帯電話回線網、無線通信路、イーサネット(登録商標)などにより構築される。
【0016】
本実施形態の画像表示システム1は、一又は複数のユーザに対して、ユーザの操作に応じて選択される画像に基づいてユーザの所望する画像を自動的に生成するサービスを提供しようとするものである。本実施形態の画像表示システム1は、たとえば、画像処理サーバ10が複数の画像をユーザ端末20に送信し、ユーザがユーザ端末20を操作して複数の画像から少なくとも一の画像を選択し、画像処理サーバ10がかかる選択に基づき少なくとも一の画像を自動生成する。画像処理サーバ10は自動生成した画像をユーザ端末20に送信して、ユーザが再度ユーザ端末20に対して操作を行い一の画像を選択する。このような処理を繰り返すことにより、ユーザは自己の所望するような画像を直感的に選択し続けるだけで、ユーザが最も自己の指向と合う画像を得ることが可能となる。なお、画像表示システム1は、予め準備または生成された画像を所定のストレージ等に格納しておき、ユーザの操作に応じてユーザのリクエストに近い画像をユーザに提示するサービスを提供するものであってもよい。このような場合であれば、例えば、画像処理サーバ10にかかる計算コストを削減したり、レイテンシを削減することができる。
【0017】
画像処理サーバ10は、ユーザ端末20に対するユーザの操作に応じて選択される画像に基づいてユーザの所望する画像を自動的に生成する処理を行うためのコンピュータである。画像処理サーバ10は、たとえば、パーソナルコンピュータ、ワークステーション、またはクラウドコンピューティングによる仮想的なコンピュータであってもよい。画像処理サーバ10は、いわゆるWebアプリケーションとしてこれらの機能を実行することを想定する。なお、図1において、画像処理サーバ10は単一のサーバとして図示しているが、これに限らず、画像表示システム1は、画像処理サーバ10を含む複数の画像処理サーバを有し、分散処理によって本システムにおける処理を実行することができる。また、ここで、分散処理を行う画像処理サーバの台数の増減を、各処理の負荷及び/または各処理を行う対象となる画像のサイズや数に応じて動的に変更することもできる。また、画像処理サーバ10は、オンラインで画像データを処理しても良い。
【0018】
ユーザ端末20は、携帯電話、スマートフォン、ゲーム機、タブレットコンピュータ、パーソナルコンピュータなどの端末機器である。
【0019】
ユーザ端末20は、表示部26に表示された画像のうちユーザが選択した画像に関する情報を画像処理サーバ10に送信し、送信した情報を基に生成された画像を画像処理サーバ10から受信する。ユーザ端末20には、例えば、本実施形態に係る画像表示システム1に対応するアプリケーションソフトやWebブラウザ等がインストールされていてもよい。
【0020】
図2は、本実施形態に係る画像処理サーバ10のハードウェア構成例を示す図である。画像処理サーバ10は、少なくとも、制御部11、メモリ12、ストレージ13、送受信部14、入出力部15、画像制御部16、画像用メモリ17等を備え、これらはバス18を通じて相互に電気的に接続される。
【0021】
制御部11は、画像処理サーバ1全体の動作を制御し、各要素間におけるデータの送受信の制御、及びアプリケーションの実行及び認証処理に必要な情報処理等を行う演算装置である。制御部11は、例えばCPU(Central Processing Unit)であり、ストレージ13に格納されメモリ11に展開されたプログラム等を実行して各情報処理を実施する。また、制御部11は、後述する候補画像の探索範囲を制御する機能を有する。
【0022】
メモリ12は、DRAM(Dynamic Random Access Memory)等の揮発性記憶装置で構成される主記憶と、フラッシュメモリやHDD(Hard Disc Drive)等の不揮発性記憶装置で構成される補助記憶と、を含む。メモリ12は、制御部11のワークエリア等として使用され、また、画像処理サーバ10の起動時に実行されるBIOS(Basic Input/Output System)、及び各種設定情報等を格納する。
【0023】
ストレージ13は、アプリケーション・プログラム等の各種プログラムを格納する。各処理に用いられるデータを格納したデータベース(図示せず)がストレージ13に構築されていてもよい。
【0024】
送受信部14は、画像処理サーバ10を通信ネットワークNWに接続する。なお、送受信部14は、Bluetooth(登録商標)やWi−Fi(登録商標)などの近距離通信インタフェースを備えていてもよい。送受信部14は、例えば、ユーザ端末20から選択された画像に関する情報を受信したり、画像処理サーバ10で自動生成した画像データをユーザ端末20に送信したりする。入出力部15は、キーボードやマウス類、コントローラ等の情報入力機器、及びディスプレイ等の出力機器である。
【0025】
画像制御部16は、画像を自動生成する処理を行う機能を有する。画像制御部16は、例えば、GPU(Graphics Processing Unit)であり、ホストであるCPUからの命令を多数のコアにより同時に並列処理を行うことができる。また、画像制御部16は、アクセラレーターや、アクセラレータークラスタにより同時に並列処理を行ってもよい。アクセラレーターとしては、例えば、CPU、GPU、FPGA、ASIC、独自定義のニューラルネットワーク専用演算コア、推論専用の光を用いた演算装置などが挙げられ、これらに限定されない。画像の自動生成処理は、例えば、ボルツマンマシン、Encoder−Decoder、GAN、VAE(Variational Autoencoder)、StyleTransfer等の公知の機械学習のアルゴリズムが用いられる。
【0026】
画像用メモリ17は、自動生成された画像データを格納するために用いられる。画像用メモリ17は、例えば、VRAM(Video Random Access Memory)である。バス18は、上記各要素に共通に接続され、例えば、アドレス信号、データ信号及び各種制御信号を伝達する。
【0027】
図3は、本実施形態に係るユーザ端末20のハードウェア構成例を示す図である。ユーザ端末20は、少なくとも、制御部21、メモリ22、ストレージ23、送受信部24、入出力部25、および表示部26等を備え、これらはバス27を通じて相互に電気的に接続される。制御部21、メモリ22、ストレージ23、送受信部24および入出力部25の各構成要素は上述した画像処理サーバ10の有する各構成要素のハードウェアとしての機能は同一であるため説明を省略する。
【0028】
表示部26は、各種情報を表示する機能を有する。表示部26は、例えば、ディスプレイ等により実現されてもよい。また、表示部26は、タッチパネルなど、入出力部25と機能が一体となって実現されるものであってもよい。本実施形態では、表示部26はタッチパネル(すなわちユーザの操作を受け付ける機能を有するもの)により実現されているものとして説明する。
【0029】
図4は、本実施形態に係る制御部11の機能構成例を示す図である。制御部11は、画像取得部101、第一表示制御部102、領域設定部103、第二表示制御部104、操作取得部105、調整部106を備える。
【0030】
なお、画像取得部101、第一表示制御部102、領域設定部103、第二表示制御部104、操作取得部105、調整部106は、画像処理サーバ10が備える制御部11又は画像制御部16がストレージ13に記憶されているプログラムをメモリ12または画像メモリ17に読み出して実行することにより実現される。また、各部で実行される処理について、その処理負荷やハードウェアリソースに応じて、画像処理サーバ10内の複数の装置、及び/または、他のサーバで並列処理を行うこともできる。
【0031】
画像取得部101は、画像データを取得する機能を有する。例えば、画像取得部101は、予めストレージ13に格納されている画像データや、画像制御部16により自動生成された画像データ(画像メモリ17に記憶されていてもよい)を取得する。また、画像取得部101は、ユーザ端末20等、外部ハードウェアから入出力部15等を通して画像データを取得してもよい。なお、ここでいう画像データは、画像そのものを規定するデータに限らず、例えば、事前に画像データを圧縮したり特徴量を抽出したりして得られる、画像を規定するデータであってもよい。
【0032】
第一表示制御部102は、基準画像を表示面に表示させる機能を有する。本実施形態に係る基準画像とは、画像制御部16による画像の自動生成処理の入力パラメータとなる画像データを有する画像を意味する。かかる基準画像は、ユーザ端末20の表示部26の表示面に表示される。
【0033】
図5は、本実施形態に係る第一表示制御部102による表示制御の一例を示す図である。図示するように、ユーザ端末20の表示面26aには、Webアプリケーションの画面200が表示されている。画面200の中央部分には基準画像201が表示されている。基準画像201の周囲においては、一群の候補画像202a〜202nが表示されている。ここで候補画像とは、基準画像201を基に自動生成された画像のうち、後述する所定空間上の探索領域内に存在する一部または全部の画像である。所定空間とは、例えば、画像データを規定する多次元のベクトル空間を意味する。
【0034】
また、画面200には、過去に基準画像として選択された画像のサムネイル203a〜203cが時系列順となるように並べて表示されている。また、サムネイル203cに隣接して、現在の基準画像201のサムネイル204が表示されている。また、画面200の上部には、後述する探索領域のサイズを調整するためのスライダーバー205が表示されている。なお、スライダーバー205は画面200には必ずしも表示されなくてもよい。
【0035】
領域設定部103は、探索領域を設定する機能を有する。探索領域とは、所定空間上における候補画像の取得対象領域を意味する。画像取得部101は、領域設定部103により設定された探索領域に含まれる候補画像の画像データを取得する。
【0036】
図6は、本実施形態に係る所定空間および探索領域の一例を示す図である。図6に示すように、所定空間500において、予め生成されているか、または画像制御部16により生成された画像群の画像データが模式的にマッピングされている。この画面をマッピング画面と称する。かかる所定空間500の次元数は特に限定されないが、説明のため、図6〜図8においては二次元的に所定空間500を表現する。以下の説明においても、所定空間500を二次元的に表現する。
【0037】
図7は、本実施形態に係る領域設定部103による領域設定処理の一例を示す図である。図7に示すように、領域設定部103は、基準画像の画像データ501の座標を中心として、距離がR1以内となる領域を探索領域502として設定する。ここで設定される探索領域502に含まれる画像は、互いの画像データの類似度が高く、基準画像と比較的類似している可能性の高い画像である。また、ここでいう距離とは、例えば、ユークリッド距離、マンハッタン距離、マハラノビス汎距離、Earth Mover Distance、カルバック・ライブラー情報量等、多次元空間において規定される距離であり、その種類は特に限定されない。
【0038】
第二表示制御部104は、探索領域502に含まれる候補画像を表示する機能を有する。例えば、画像取得部101は、図7に示す探索領域502に含まれる画像のうち一以上の画像を候補画像として取得し、第二表示制御部104が、取得された候補画像をユーザ端末20の表示面26aに表示する。このとき第二表示制御部104は、表示面において、基準画像の表示領域の周辺において、選択可能に表示させる。
【0039】
図8は、本実施形態に係る第二表示制御部104による表示制御の一例を示す図である。図示するように、画面200において、基準画像201の周囲に、候補画像202a〜202nが表示されている。かかる候補画像202a〜202nは、ユーザの操作に対して選択可能に表示され得る。
【0040】
これらの候補画像202a〜202nの表示態様は特に限定されない。例えば、第二表示制御部104は、基準画像201と候補画像202の各々との所定空間上での距離に基づいて、候補画像202の表示態様を制御してもよい。
【0041】
ここでいう表示態様は、例えば表示位置であってもよい。具体的には、第二表示制御部104は、基準画像201と候補画像202の各々との所定空間上における距離の長短にあわせて、候補画像202と基準画像201との画面200上での位置を決定してもよい。つまり、第二表示制御部104は、基準画像201と候補画像202との距離が遠ければ、画面200上において候補画像202を基準画像201から離れた位置に表示させ、基準画像201と候補画像202との距離が近ければ、画面200上において候補画像202を基準画像201に近い位置に表示させてもよい。これにより、基準画像201と候補画像202との類似度を画面200を見るだけでユーザが直感的に把握することができる。
【0042】
また表示態様は、例えば、画面200上の大きさであってもよい。図8に示すように、例えば、第二表示制御部104は、基準画像201と候補画像202の各々との所定空間上における距離の長短にあわせて、候補画像202の表示サイズの大小を制御してもよい。具体的には、第二表示制御部104は、基準画像201と候補画像202の各々との所定空間上における距離が短ければ候補画像202の表示サイズを大きくし、該距離が長ければ候補画像202の表示サイズを小さくしてもよい。これにより、基準画像201と候補画像202との類似度を画面200を見るだけでユーザが直感的に把握することができる。
【0043】
また、図8に示すように、候補画像202の表示態様は、表示位置および表示サイズの組み合わせにより調整されてもよい。また、図8に示す例では、候補画像202が基準画像201を中心としてグリッド状に整列されているが、例えば基準画像201を中心とする円弧上に候補画像202が整列されてもよいし、基準画像201と候補画像202の群の表示位置が分別された態様で候補画像202が表示されてもよい。
【0044】
操作取得部105は、ユーザ端末20に対する操作に基づいて選択された候補画像202に係る情報を取得する機能を有する。例えば、ユーザ端末20の表示面26aに対するユーザの操作により候補画像202が選択されると、ユーザ端末20は選択された候補画像202に関する情報を画像処理サーバ10に送信する。このとき、操作取得部105は、送受信部14を介して該情報を取得する。
【0045】
図9は、本実施形態に係る操作取得部105による取得処理の一例を示す図である。図示するように、ユーザの手等の操作体206により画面200に対して候補画像202mが選択されたとする。この場合、ユーザ端末20は、操作体206により選択された候補画像202mに係る情報を画像処理サーバ10に送信し、操作取得部105が該情報を取得する。
【0046】
なお、操作取得部105は、画面200の候補画像202mが表示されている部分をタップまたはクリック等の操作によって特定された候補画像202mに係る情報を取得してもよいし、候補画像202mを基準画像201が表示されている領域に向かって操作体206を移動させる操作(例えば、スライドまたはフリック操作)によって、該情報を取得してもよい。これにより、候補画像202mを次の基準画像として選択する操作としてユーザにとって直感的となる。
【0047】
図10は、本実施形態に係る所定空間および探索領域の一例を示す図である。図示するように、所定空間500において、操作取得部105が取得した情報に係る候補画像202mの画像データ503が特定される。このとき、かかる候補画像202mが次の基準画像201となる。画像取得部101は、候補画像202mを基準画像201として取得する。
【0048】
図11は、本実施形態に係る第一表示制御部102による表示制御処理の一例を示す図である。図示するように、第一表示制御部102は、図9において選択された候補画像202mを基準画像201として表示する。このとき、図11に示すように、先に基準画像201として表示されていた位置に、候補画像202mが新たな基準画像として表示される。これにより、新たな基準画像をベースとする次の処理を行うことができる。なお、第一表示制御部102は、新たに基準画像201として選択された候補画像のサムネイル206を、先の基準画像のサムネイル204に隣接して表示してもよい。
【0049】
図12は、本実施形態に係る所定空間および探索領域の一例を示す図である。図示するように、先の候補画像202mが新たな基準画像201として選択されると、領域設定部103は、新たな基準画像201の画像データ503の座標を中心として、距離がR2以内となる領域を探索領域504として設定する。次の処理においては、この探索領域504に含まれる画像データを有する画像が候補画像の対象となる。
【0050】
なお、探索範囲504の中心からの距離R2は、先の探索範囲502の中心からの距離R1と同じであってもよいし異なっていてもよい。例えば、距離R2は、距離R1よりも小さくてもよい。処理が進むに連れてユーザの所望する画像が生成されやすくなるので、該距離を小さくすることにより、より精度の高い候補画像が得られやすくなる。また、かかる距離の大きさは、処理の進行に応じて順次変更されてもよいし、図11に示したようなスライダーバー205により自在に選択されてもよい。このような探索範囲の設定方法の変形例については後述する。
【0051】
かかる機能部による処理を順次繰り返していくことで、ユーザが候補画像を選択し、かかる候補画像を新たな基準画像としてさらに候補画像が絞り込まれていく。このように、ユーザによる候補画像の選択を繰り返すだけで、ユーザの所望する画像を簡単に探索することが可能である。なお、図11等には図示されていないが、画面200には、ユーザによる選択が完了した場合(すなわち最後に基準画像として選択された画像がユーザの所望する画像である場合)に、画像の探索を終了するためのボタン等が表示されてもよい。
【0052】
調整部106は、所定空間の次元や画像データの形式を調整する機能を有している。調整部106は、画像処理サーバ10においては任意に設けられる。画像データを規定する所定空間の次元がある程度の大きさを有する場合、候補画像の探索のための計算量が増大する。この場合、候補画像を表示するまでのレイテンシが大きくなるため、ユーザエクスペリエンス(User Experience;UX)が低下したり、かかる計算に必要なメモリやCPU等のスペックが増加してしまう。また、いわゆる「次元の呪い」により、画像データ間の距離と、これらの画像データに係る画像の実現値(画像の見た目、一般的に画像データ間の距離が短いと実現値が近くなる、すなわち似たような画像となる)との相関が保てない可能性がある。そのネガティブな可能性を回避するために、調整部106は所定空間の次元や画像データの形式を調整する機能を有する。
【0053】
例えば、調整部106は、画像データを規定する所定空間の次元を調整してもよい。次元の調整とは、例えば、ベクトルの次元数の調整や次元削減を意味する。図13は、本実施形態に係る調整部106による調整処理の一例を示す図である。図13を参照すると、調整部106による調整処理の前においては、画像データ511および画像データ512は、m次元の空間510において規定されており、画像データ521および画像データ522は、n次元の空間520において規定されている。ここで、画像データ511と画像データ521とは対応する画像の実現値を有し、画像データ512と画像データ522とは対応する画像の実現値を有し、互いの実現値は近く画像の見た目は類似していると感得できるものとする。また、次元数はm>nとする。
【0054】
図13に示すように、m次元の空間510において画像データ511と画像データ512との距離は大きいため、実現値は近くても、解析上画像データ511と画像データ512とは類似していないと判定される可能性が高い。そこで、調整部106により適切な次元の空間(この場合n次元の空間520)となるように次元削減や次元調整にかかる処理を行うことで、画像データ512と画像データ522とのn次元の空間520を適切な距離に近づけることができる。これにより、候補画像の取得において、より適切な画像を取得することができる。次元削減や次元数調整の手法としては、例えば主成分分析、LDA(Linear Discriminant Analysis;線形判別分析)、t−SNE(t−distributed Stochastic Neighbor Embedding)等の手段を用いることができ、このような調整処理後の空間において、上述した処理を行うことができる。なお、かかる処理は画像生成処理にも適用でき、例えば、画像生成処理に用いられる学習モデルの学習時において、上記の処理を配慮して学習を行うことができる。
【0055】
また、調整部106は、画像取得部101が取得する画像データについて、様々な手法においてベクトル化してもよい。例えば、調整部106は高次元である画像データを低次元化してもよい。また、画像データがベクトルデータではない場合は、調整部106は、該画像データを適宜ベクトル化してもよい。画像データのベクトル化は特に限定されず、例えば、主成分分析、LDA(Linear Discriminant Analysis;線形判別分析)、t−SNE(t−distributed Stochastic Neighbor Embedding)等の統計解析的な手段が用いられてもよいし、Encoder−Decoder、AutoEncoder、StyleTransfer、VGG等のClassifierを特徴抽出に用い、モデルの学習時に画像生成と同時にベクトル化する箇所を学習することでベクトル化する手法が用いられてもよい。
【0056】
また、調整部106は、領域設定部103により設定された探索領域のうち、画像表示システム1の処理状況に応じて、選択対象集団のサイズを調整してもよい。ここで、選択対象集団とは、探索領域に含まれる候補画像の群のうち、処理状況に応じて予め画面200に表示すべき対象を限定した集団を意味する。第二表示制御部104は、この選択対象集団に含まれる候補画像を表示面26aに表示してもよい。
【0057】
図14および図15は、本実施形態に係る調整部106による選択対象集団の調整に係る処理の一例を示す図である。図14は先の処理、図15は後の処理に係るものである。図14に示すように、先の処理においては、所定空間530において基準画像に係る画像データ531を基準に探索領域532が設定されている。一方、図15に示すように、後の処理においては、所定空間530において新たな基準画像に係る画像データ534を基準に探索領域535が設定されている。このとき、探索領域532は探索領域535よりも広い。
【0058】
先の処理では、候補画像の多様性を図るために探索領域を広くする一方で、その精度は大きくなくてもよい。むしろ精度を維持しようとすると、探索領域が広いため処理の負荷が大きくなる。そこで、調整部106は、探索領域の内側において、候補画像の対象となる選択対象集団を調整する。その選択対象集団のサイズは比較的小さめに設定される。なお、図14に示した例では、説明のため、所定の座標近傍付近の領域を選択対象集団として設定しているが、例えば、調整部106は、複数の位置を基準として複数の選択対象集団を設定してもよい。このように、候補画像の対象を選択対象集団のサイズを小さくして絞ることで、初期の処理においては高速に処理することができる。
【0059】
一方で、図15に示す後の処理においては、ユーザによる選択が順次進められている段階である。そのため、調整部106は、選択対象集団のサイズを比較的大きく設定してもよく、探索領域の全体を選択対象集団として調整してもよい。これにより、ユーザの志向に対して確度の高い画像を選択することが可能となる。また、逆に調整部106は、処理が進むに連れて選択対象集団のサイズを小さくしてもよい。
【0060】
以上、制御部11のソフトウェア構成の各機能について説明した。
【0061】
次に、領域設定部103による領域設定処理の変形例について説明する。領域設定部103は、基準画像201の画像データに基づいて探索領域を設定する。その際、探索領域の位置やサイズは上述した設定の方法に限定されない。
【0062】
図16は、本実施形態の変形例に係る領域設定部103による探索領域の設定処理の一例を示す図である。図示するように、所定空間540において画像群が存在するが、そのうち画像表示システム1による過去の処理により、画像データ541、542、543に係る画像が基準画像として選択されたとする。この場合、領域設定部103は、画像データ541〜543に基づいて探索領域を設定してもよい。例えば、領域設定部103は、画像データ541〜543の重心や中心といった幾何的中心544の位置を基準として、探索領域545を設定してもよい。
【0063】
図17は、本実施形態の変形例に係る領域設定部103による探索領域の設定処理の一例を示す図である。図示するように、所定空間550において画像群が存在するが、そのうち画像表示システム1による過去の処理により、画像データ551〜557係る画像が基準画像として選択されたとする。この場合、領域設定部103は、画像データ551〜557の分布に基づいて探索領域を設定してもよい。例えば、領域設定部103は、画像データ551〜557について統計処理を行い、その平均値や分散等の統計値に基づいて探索領域558を設定してもよい。
【0064】
図18は、本実施形態の変形例に係る領域設定部103による探索領域の設定処理の一例を示す図である。図示するように、所定空間560において画像群が存在するが、そのうち画像表示システム1による過去の処理により、画像データ561、562、563、564に係る画像が基準画像として選択されたとする。一連の繰り返し処理では、画像データ561、562、563、564の順に基準画像として選択されている。
【0065】
この場合、領域設定部103は、画像データ561〜564の基準画像としての選択の推移に基づいて探索領域を設定してもよい。図示するように、例えば、領域設定部103は、画像データ564に係る画像が基準画像として選択された場合に、画像データ561の推移の重み付き重心となる部分を中心とする領域を探索領域565として設定してもよい。これにより、ユーザの所望の画像が存在すると思われる領域を過去の推移から導くことができるので、探索効率を向上させることができる。重み付けの方法を変更する(例えば直前の処理で選択された基準画像に係る画像データに重みを大きくする)ことで、領域設定部103は、探索領域566を設定してもよい。
【0066】
また、領域設定部103は、図8で示した画面200に表示されているスライダーバー205を操作することによって、手動で探索領域を設定および調整してもよい。他にも、領域設定部103は、図6に示すような所定空間500にマッピングされた画像群の画面を表示面26aに表示し、ユーザの操作の該画面に対する操作に基づいて探索領域を設定してもよい。
【0067】
以上、領域設定部103による探索領域の設定処理の変形例について説明した。
【0068】
図19は、本実施形態の画像表示システム1により実行される処理の流れを示すフローチャートである。まず、画像取得部101は、基準画像の画像データを取得する(SQ101)。次に、領域設定部103が、基準画像の画像データをもとに、所定空間上での探索領域を設定する(SQ102)。次に、画像取得部101は、探索領域に含まれる候補画像の画像データを取得する(SQ103)。
【0069】
次に、第一表示制御部102は、基準画像を表示面に表示する処理を行う(SQ104)。また、第二表示制御部104は、候補画像を表示面に表示する処理を行う(SQ105)。次に、ユーザ端末20の表示面26aへのユーザの操作に対して(SQ106)、候補画像の一が選択された場合(SQ106/YES)、操作取得部105は選択された候補画像に係る情報を取得する(SQ107)。一方で、表示面26aへのユーザの操作に対して候補画像が選択されなかった(例えば処理を完了するボタンが選択された)場合(SQ106/NO)、画像表示システム1による処理を終了する。
【0070】
本発明の実施形態は、例えば、上記で説明したような電子機器、システム、電子機器またはシステムで実行される方法、電子機器を機能させるためのプログラム、およびプログラムが記録された一時的でない有形の媒体を含みうる。
【0071】
以上、添付図面を参照しながら本発明の好適な実施形態について詳細に説明したが、本発明の技術的範囲はかかる例に限定されない。本発明の技術分野における通常の知識を有する者であれば、特許請求の範囲に記載された技術的思想の範疇内において、各種の変更例または修正例に想到し得ることは明らかであり、これらについても、当然に本発明の技術的範囲に属するものと了解される。
【0072】
例えば、上記実施形態においては、画像表示システム1は、画像処理サーバ10とユーザ端末20とにより構成されていたが、本発明はかかる例に限定されない。例えば他の実施形態では、画像表示システム1は、ユーザ端末20のみにより構成されてもよい。この場合、画像処理サーバ10が有している機能がユーザ端末20の備える各種ハードウェアにより実現されてもよい。
【0073】
また、上記実施形態における各ステップは、必ずしもフローチャート図として記載された順序に沿って時系列に処理される必要はない。例えば、上記実施形態の処理における各ステップは、フローチャート図として記載した順序と異なる順序で処理されても、並列的に処理されてもよい。
【0074】
また、本明細書に記載された効果は、あくまで説明的または例示的なものであって限定的ではない。つまり、本発明に係る技術は、上記の効果とともに、または上記の効果に代えて、本明細書の記載から当業者には明らかな他の効果を奏しうる。