JP2018085561A - 情報処理装置、その制御方法、および制御プログラム - Google Patents

情報処理装置、その制御方法、および制御プログラム Download PDF

Info

Publication number
JP2018085561A
JP2018085561A JP2016225909A JP2016225909A JP2018085561A JP 2018085561 A JP2018085561 A JP 2018085561A JP 2016225909 A JP2016225909 A JP 2016225909A JP 2016225909 A JP2016225909 A JP 2016225909A JP 2018085561 A JP2018085561 A JP 2018085561A
Authority
JP
Japan
Prior art keywords
image
reference point
edited
original image
information processing
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2016225909A
Other languages
English (en)
Inventor
平石 智宣
Tomonobu Hiraishi
智宣 平石
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Canon Inc
Original Assignee
Canon Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Canon Inc filed Critical Canon Inc
Priority to JP2016225909A priority Critical patent/JP2018085561A/ja
Publication of JP2018085561A publication Critical patent/JP2018085561A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Editing Of Facsimile Originals (AREA)

Abstract

【課題】編集画像の管理が容易で、かつ画像を比較して編集を行うことができるようにする。
【解決手段】制御部101はオリジナル画像に複数の基準点を設定して、基準点の設定されたオリジナル画像に対する編集処理を実行して、基準点が付加された編集画像を生成する。そして、制御部は編集画像に付加された基準点とオリジナル画像に設定された基準点に基づき、編集画像をオリジナル画像に重ねて表示部111に表示する。
【選択図】図13

Description

本発明は、情報処理装置、その制御方法、および制御プログラムに関し、特に、特に、同一の画像データ(以下単に画像と呼ぶ)を用いて複数の編集画像を生成する情報処理装置に関する。
一般に、デジタルカメラなどの撮像装置で撮影した画像を編集して、ブログ又はソーシャルネットワーキングサービス(以下SNSと呼ぶ)に画像を投稿することが行われている(特許文献1参照)。
特開2015−111406号公報
ところで、ブログおよびSNSにおいては、投稿可能な画像サイズが大きいものがある一方、投稿可能な画像の縦横比が正方形などの特徴的な形状であるものがある。つまり、ブログおよびSNS毎に画像の表示方法および縦横サイズが異なることがある。
このため、ユーザは、複数のブログおよびSNSに同一の画像を投稿すれば、画像の表示方法および縦横サイズが異なることを気にする必要はない。一方、効果的に情報を発信するためには、画像をブログおよびSNSの各々において最適な縦横サイズにトリミングし、さらにはトリミング領域に応じた色味の調節をすることが求められる。つまり、投稿先であるブログおよびSNSの特性に応じた画像編集を行う必要がある。よって、ユーザはオリジナル画像を元にして画像編集を行って、当該複数の編集画像を管理する必要がある。
また、ユーザは1つのブログおよびSNS用に編集した画像をベースとして、別のブログおよびSNS用の編集画像を作成することがある。この場合、ユーザは以前に編集した画像およびオリジナル画像と比較しつつ編集を行いたいものの、編集画像はについてリジナル画像をトリミングしたものが多く、画像を比較して編集することが難しい。
よって、本発明の目的はオリジナル画像から編集画像を生成した場合に、編集画像とオリジナル画像の比較が容易になり、効率的に編集を行うことができる情報処理装置、その制御方法、および制御プログラムを提供することにある。
上記の目的を達成するため、本発明による情報処理装置は、前記オリジナル画像に複数の基準点を設定する設定手段と、前記基準点の設定されたオリジナル画像に対する編集処理を実行して、前記基準点が付加された編集画像を生成する編集手段と、前記編集画像に付加された基準点と前記オリジナル画像に設定された基準点に基づき、前記編集画像を前記オリジナル画像に重ねて表示部に表示するよう制御する表示手段と、を有することを特徴とする。
本発明によれば、オリジナル画像から編集画像を生成した場合に、編集画像とオリジナル画像の比較が容易になり、効率的に編集を行うことができる。
本発明の第1の実施形態による情報処理装置の一例についてその構成を示すブロック図である。 図1に示す情報処理装置で行われる画像編集処理の一例を説明するためのフローチャートである。 図1に示す情報処理装置において表示部に表示される埋め込み設定画面の一例を示す図である。 図1に示す情報処理装置で用いられる画像データのデータ構造の一例を説明するための図である。 図4に示す基準点情報のデータ構造についてその一例を示す図である。 図1に示す情報処理装置において基準点情報が埋め込まれた画像データの一例を説明するための図である。 図2に示す画像の編集処理を説明するためのフローチャートである。 図1に示す情報処理装置で行われるトリミング処理に応じた基準点の調節処理を説明するための図である。 図5に示す基準点情報のデータ構造についてその更新の一例を示す図である。 図1に示す情報処理装置で行われる拡大・縮小処理に応じた基準点の調節処理を説明するための図である。 図5に示す基準点情報のデータ構造についてその更新の他の例を示す図である。 図8(b)に示す画像を拡大処理した際の基準点情報のデータ構造の一例を示す図である。 図1に示す情報処理装置で行われる画像の比較表示処理を説明するためのフローチャートである。 図13に示すステップS1113の処理を説明するための図である。 図13に示すステップS1113の処理において基準点の座標の変化を示す図である。 図1に示す情報処理装置で行われる基準点の重ね合わせ処理の一例を説明するための図である。 図13に示すステップS1115の処理で表示部に表示される画面の一例を示す図である。
以下に、本発明の実施の形態による情報処理装置の一例について図面を参照して説明する。
[第1の実施形態]
図1は、本発明の第1の実施形態による情報処理装置の一例についてその構成を示すブロック図である。
図示の情報処理装置は、例えば、コンピュータ装置(PC)である。この情報処理装置は単一のPCであってもよく、必要に応じて複数のPCに機能を分散させるようにしてもよい。複数のPCを用いる場合には、相互に通信可能とするためLocal Area Network(LAN)などの通信回線によって接続される。
制御部101は情報処理装置100全体を制御する。制御部101は、例えば、CPU(Central Processing Unit)である。ROM(Read Only Memory)102には変更を要しないプログラムおよびパラメータが格納される。RAM(Random Access Memory)103は外部装置などから供給されるプログラムおよびデータを一時的に記憶する。記憶装置104は情報処理装置100に固定的に設置されたハードディスク又はメモリカードなどであり、OS(Operating System)などのプログラムを記憶する。
入力インターフェース(I/F)105は、ユーザの操作を受け付けるポインティングデバイス又はキーボードなどの入力装置(図示せず)に接続される。BMU(Bit Move Unit)106は、メモリ間(例えば、VRAM107と他のメモリとの間)およびメモリとI/Oデバイス(例えば、ネットワークインターフェイス109)間のデータ転送を制御する。
VRAM(Video RAM)107には、表示部111に表示するための画像が描画される。VRAM107に生成(描画)された画像は所定の規定に従って表示部111に送信されて表示部111に表示される。ネットワークインターフェイス(NET I.F)109はインターネットなどの通信回線110に接続される。システムバス112は各ブロック(ユニット)を相互に接続する。
なお、記憶装置104には、フォトサイトのアプリケーションプログラムソフトウエア(以下「フォトアプリ」という)が記憶され。さらに、デジタルカメラなどの撮像装置で得られた画像ファイルなどのコンテンツが記憶される。また、表示部111にはタッチセンサを有するタッチパネルを備えるようにしてもよい。
図2は、図1に示す情報処理装置100で行われる画像編集処理の一例を説明するためのフローチャートである。なお、図示のフローチャートに係る処理は、制御部101が記憶装置104から画像編集プログラムを読み出して実行することによって行われる。
制御部101は、ユーザの操作に応じて編集のベースとなる画像を選択する(ステップS201)。ここでは、制御部101は、ユーザの選択に応じた画像(画像データ)を記憶装置104から読み出す。続いて、制御部101は、ユーザによって選択された画像データに基準点情報が埋め込まれているか否かを判定する(ステップS202)。画像データに基準点情報が埋め込まれていると(ステップS202において、YES)、制御部201は画像データから基準点情報を読み出す(ステップS203)。そして、制御部201は後述する画像の編集処理を行う(ステップS205)。
一方、ユーザによって選択された画像データに基準点情報が埋め込まれていないと(ステップS202において、NO)、制御部201は後述する埋め込み設定画面に応じて基準点情報の埋め込みを行う(ステップS204)。そして、制御部201はステップS205の処理に進む。なお、基準点情報が埋め込まれていない場合には、当該画像データについて一度も編集処理が行われていないことになる。つまり、当該画像データは編集元となるオリジナル画像データである。
ステップS205の処理の後、制御部201は、ユーザ操作に応じてNET I/F109を介してブログ・SNSに編集処理済みの画像データをアップロード(投稿)する(ステップS206)。そして、制御部201は編集処理を終了する。なお、ステップS206の投稿処理では、ブログ・SNS毎の仕様に応じて投稿処理が行われる。
図3は、図1に示す情報処理装置100において表示部111に表示される埋め込み設定画面の一例を示す図である。なお、図示の埋め込み設定画面は、ユーザによって選択された画像データに基準点情報が埋め込まれていない場合に、制御部201によって表示される。
埋め込み設定画面300には、第1のラジオボタン301および第2のラジオボタン302が表示されるとともに、第1のコンボボックス303および第2のコンボボックス304が表示される。第1のラジオボタン301は基準点情報を埋め込む間隔を情報処理装置(システム)に任せる場合に用いられる。第2のラジオボタン302は基準点情報を埋め込む間隔をユーザが設定する際に用いられる。そして、第1のコンボボックス303はユーザが基準点情報を設定する際の縦方向の間隔設定に用いられる。第2のコンボボックス304はユーザが基準点情報を設定する際の横方向の間隔設定に用いられる。
ユーザが第1のラジオボタン301を選択すると、制御部101は選択された画像の縦横サイズをベースとして基準点情報の間隔を設定する。なお、予め画像サイズ毎に基準点情報の間隔を設定しておくようにしてもよく、学習によって基準点情報の間隔を設定するようにしてもよい。
ユーザが第2のラジオボタン302を選択すると、制御部101は埋め込み設定画面300に画像の縦横サイズを表示するとともに、前述の第1および第2のコンボボックス303および304を表示する。第1および第2のコンボボックス303および304の各々によって、基準点情報を設定する間隔をピクセル単位で設定することができる。
なお、図示の例では、基準点情報の設定間隔を10ピクセル単位としているが、基準情報の設定間隔はこの例に限定されない。また、図示の例では、第1および第1のコンボボックス303および304を用いて基準点情報の間隔を設定するようにした。一方、基準情報の設定間隔をキーボードなどを用いて入力するための入力フィールドを埋め込み設定画面300に表示するようにしてもよい。
図4は、図1に示す情報処理装置100で用いられる画像データのデータ構造の一例を説明するための図である。そして、図4(a)は画像フォーマットの一例であるJPEGデータフォーマットの一例を示す図であり、図4(b)は画像フォーマットの一例であるJPEGデータフォーマットの他の例を示す図である。
図4(a)において、図示のフォーマットはその先頭にSOI(Start Of Image)のマーカ400が位置し、最後にEOIマーカ(End Of Image)403が位置する。そして、SOIマーカ400とEOIマーカ403の間に複数のセグメント領域401と画像データ402とが位置づけられている。
制御部101は、図2で説明したステップS204において、図4(b)に示すように、EOIマーカ403の後に後述するデータ構造を有する基準点情報404を追加して、その後に再度EOIマーカ405を埋め込む。EOIマーカ405の埋め込みによって、JPEGフォーマットの構造を保つことができ、他の画像編集アプリなどにおいても正常に扱うことができる。
なお、ここでは、画像フォーマットとしてJPEGフォーマットを例に挙げて説明したが、基準点情報を付加可能であれば、他のフォーマットを用いるようにしてもよい。
図5は、図4に示す基準点情報のデータ構造についてその一例を示す図である。
図示の例では、データ形式としてJSON(JavaScript Object Notation)形式を例に挙げて説明するが、Key=Valueの形式でデータを格納できる形式であれば、特にデータ形式は限定されない。
基準点情報は、編集元となったオリジナル画像のパス500、画像データの表示開始位置501、基準点のうち表示範囲に入っている数(表示範囲数)502、および基準点の位置503をデータとして有している。
オリジナル画像のパス500は、“original_img”のKeyで管理されており、具体的なファイルパスをValueに有している。前述のように、基準点情報が埋め込まれていない場合には、オリジナル画像となるので、基準点情報を埋め込む際にデフォルト値としてオリジナル画像のファイルパスを埋め込む。以後の編集でこのデータ(ファイルパス)は変更および削除されることがない。
画像データの表示開始位置501は、“origin”のKeyで管理されている。当該表示開始位置501は、後述する画像表示処理においてオリジナル画像と重ねて表示する際の原点位置のX軸座標“x_pos”、Y軸座標“y_pos”をValueとして有している。
なお、ここでは画像の左下を原点とし、横軸方向をX軸、縦軸方向をY軸とするが、原点の位置および軸方向が本発明を限定するものではない。
オリジナル画像に対して最初に基準点情報を埋め込む際には、座標(x_pos,y_pos)に(0,0)がデフォルト値として埋め込まれる。
表示範囲数502は、“valid_count”のKeyで管理される。表示範囲数502は基準点の位置503において“valid”の値が“1”であるデータ数のValueを有する。なお、具体的な利用方法については後述する。オリジナル画像に対して最初に基準点情報を埋め込む際には、埋め込む基準点の総数がデフォルト値として埋め込まれる。
基準点の位置503は、“point”のKeyで管理される。基準点の位置503は各基準点の情報をValueに有する。基準点の情報は、基準点のIDを“id”、該当基準点のX軸座標を“x_pos”、該当基準点のY軸座標を“y_pos”、該当基準点が表示領域に含まれているかを示すフラグを“valid”の各Keyで管理する。
図5に示す例では、横4,000ピクセル/縦3,000ピクセルの画像に対して、縦横方向ともに250ピクセルの間隔で基準点を設定した際の基準点の一例が示されている。“id”は原点からX軸方向のカウント数と、Y軸方向のカウント数を“_”で接続した文字列となっている。“x_pos”/“y_pos”には、該当基準点の座標のピクセル数が格納されている。“valid”には、該当基準点が表示領域に含まれている場合には“1”が格納され、含まれていない場合には“0”が格納される。
オリジナル画像に対して最初に基準点情報を埋め込む際には、図3に示す埋め込み設定画面300で指定した間隔設定に応じて“id”の文字列、および“x_pos”/”y_pos”のピクセル数がデフォルトとして埋め込まれる。また、“valid”については全て“1”がデフォルトとして埋め込まれる。
図6は、図1に示す情報処理装置において基準点情報が埋め込まれた画像データの一例を説明するための図である。そして、図6(a)は基準点情報を埋め込む前のオリジナル画像データを示す図であり、図6(b)は基準点情報が埋め込まれた画像データを模式化して示す図である。
図示の例では、横4,000ピクセル/縦3,000ピクセルのオリジナル画像に対して、縦横方向ともに250ピクセルの間隔で基準点が設定されている。図6(b)では、黒丸で示す位置に基準点情報が設定されている。
図7は、図2に示す画像の編集処理を説明するためのフローチャートである。
編集処理を開始すると、制御部101は、ユーザによる編集操作が行われたか否かを判定する(ステップS701)。ユーザによる編集操作が行われないと(ステップS701において、NO)、制御部101は待機する。
一方、ユーザによる編集操作が行われると(ステップS701において、YES)、制御部101は当該編集操作がトリミング処理を行う操作(トリミング操作)であるか否かを判定する(ステップS702)。編集操作がトリミング操作であると(ステップS702において、YES)、制御部101は、トリミング操作に応じて基準情報が埋め込まれた画像データについてトリミング処理を行い、編集画像を生成する(ステップS703)。そして、制御部101はトリミング処理に応じて基準点を調節する調節処理を行い、オリジナル画像に設定された基準点を調整結果に基づき変更して編集画像に付加する(ステップS704)。
図8は、図1に示す情報処理装置で行われるトリミング処理に応じた基準点の調節処理を説明するための図である。そして、図10(a)はトリミング領域を示す図であり、図10(b)は画像の移動を示す図である。なお、ここでは、図6に示す画像データについてトリミング処理が行われたものとする。
図8(a)に示すように、ここでは、破線で示す枠(500,250)〜(4,000,2,750)の領域(トリミング領域)801がトリミング処理される。この場合、トリミング処理後、制御部101はトリミング領域801の左隅の点(基準点)が原点となるように画像を移動させる(図8(b)参照)。ここでは、制御部101は、画像全体をX軸方向に−500ピクセル、Y軸方向に−250ピクセル移動させる。そして、制御部101は“point”で管理する各基準点の座標をX軸方向に−500ピクセル、Y軸方向に−250ピクセル移動させる。
この際、トリミング枠(つまり、トリミング領域801)の座標は(0,0)〜(3,500,2,500)に移動する。このため、制御部101は、トリミング枠の範囲外となった基準点の“valid”の値を“0”に更新する。さらに、全ての基準点の“valid”を更新した後、制御部101は“valid”の値が“1”である基準点を求めて、その値を“valid_count”に代入する。なお、“original_img”および“origin”の情報については更新しない。
図9は、図5に示す基準点情報のデータ構造についてその更新の一例を示す図である。
図8(b)に示すように基準点の座標を更新すると、図5に示す基準点情報は図9に示す基準点情報に更新される。
再び図7を参照して、編集操作がトリミング操作でないと(ステップS702において、NO)、制御部101は編集操作が画像の拡大又は縮小処理を行う操作(拡大・縮小操作)である否かを判定する(ステップS706)。編集操作が拡大・縮小操作であると(ステップS706において、YES)、制御部101は、画像に対して拡大・縮小操作に応じた拡大又は縮小処理を行う(ステップS707)。そして、制御部101はステップS704の処理に進んで、基準点の調節処理を行う。
図10は、図1に示す情報処理装置で行われる拡大・縮小処理に応じた基準点の調節処理を説明するための図である。そして、図10(a)はトリミング領域を示す図であり、図10(b)は画像の移動を示す図である。また、図10(c)は拡大処理された画像を示す図である。なお、ここでは、図6に示す画像データについてトリミング処理が行われたものとする。
図10(a)に示すように、ここでは、破線で示す枠(1000,500)〜(3,250,2,750)の領域(トリミング領域)901がトリミングされる。この場合、トリミング後、制御部101はトリミング領域901の左隅の点(基準点)が原点となるように画像を移動させる(図10(b)参照)。この際の処理は、図8に関連して説明した処理と同様であり、制御部101は、画像全体をX軸方向に−100ピクセル、Y軸方向に−550ピクセル移動させる。そして、制御部101は“point”で管理する基準点の座標をX軸方向に−100ピクセル、Y軸方向に−550ピクセル移動させる。
図11は、図5に示す基準点情報のデータ構造についてその更新の他の例を示す図である。
図10(b)に示すように基準点の座標を更新すると、図5に示す基準点情報は図11に示す基準点情報に更新される。
続いて、図10(b)に示すトリミング後の画像をXおよびY軸方向ともに1.5倍に拡大したものとする。
図10(b)においては、トリミングの際に画像の移動を行っているので、当該画像を1.5倍に拡大する際には、制御部101は画像および基準点を1.5倍に拡大すればよい。そして、当該拡大処理の際にはトリミング領域には変化はないので、基準点のvalidの値の更新を行う必要はなく、基準点の座標のみが変更となる。具体的には、基準点のX軸座標およびY軸座標を全て1.5倍する。
図12は、図8(b)に示す画像を拡大処理した際の基準点情報のデータ構造の一例を示す図である。
図10(b)に示す画像を1.5倍に拡大処理すると、その基準点情報は図12に示す基準点情報に更新される。
再び図7を参照して、編集操作が拡大・縮小操作でないと(ステップS706において、NO)、制御部101は基準点の変更を伴わない編集処理を行い、編集画像を生成する(ステップS708)。ここで、基準点の変更を伴わない編集処理とは、例えば、色および明るさ、そして、シャープネスなどの調節、又は赤目補正などの処理をいう。編集画像には、オリジナル画像での位置を維持した基準点が付加される。
なお、同一のオリジナル画像をベースとする編集において、1つの編集においては画像の回転処理を行い、他の編集では回転処理を行わないケースはレアケースである。よって、図示の例では、処理については説明を省略している。回転処理についても、拡大処理などと同様に座標の変更(回転量に応じた座標移動を、三角関数を用いて算出する)によって行うことができる。このように基準点の調節処理が必要な編集処理の種類などについては特に限定されない。
ステップS704の処理の後、制御部101は編集後の画像を表示部111に表示する(ステップS709)。なお、ステップS708の処理の後、制御部101はステップS709の処理に進む。
続いて、制御部101は、編集処理が終了したか否かを判定する(ステップS710)。つまり、制御部101はユーザが引き続き次の編集処理を行うか否かを判定する。編集処理が終了しないと(ステップS710において、NO)、制御部101はステップS701の処理に戻る。
編集処理が終了すると(ステップS710において、YES)、制御部101は、編集後の画像ファイルを別ファイルとして扱うため、編集後のファイルをオリジナル画像と別のファイル名で記憶装置104に保存する(ステップS711)。そして、制御部101は編集処理を終了する。
図13は、図1に示す情報処理装置で行われる画像の比較表示処理を説明するためのフローチャートである。なお、図示のフローチャートに係る処理は、制御部101が記憶装置104から画像編集プログラムを読み出して実行することによって行われる。
図示の比較表示処理は、例えば、画像の編集処理中に処理モードの切り替えなどによって実行される。比較表示処理によって、ユーザは同一のオリジナル画像から生成した編集画像を比較して、また編集処理に戻って編集を継続することができる。
比較表示処理を開始すると、制御部101は、ユーザの操作に応じて比較したい画像を選択する(ステップS1101)。ここでは、制御部101は、ユーザの選択に応じた画像(画像データ)を記憶装置104から読み出す。なお、編集モードから比較表示モードに切り替えた場合には、制御部101は編集中の画像を比較したい画像として選択する。
続いて、制御部101は、該当選択した画像における基準点情報を参照して、編集元のオリジナル画像のパスを“original_img”から取得し画面に表示する(ステップS1102)。そして、制御部101は、オリジナル画像のパスを有する画像を記憶装置104から検索して、同一のオリジナル画像から生成した編集画像の一覧を取得する(ステップS1103)。
ここでは、毎回、記憶装置104を検索すると時間が掛かってしまうので、例えば、管理対象ファイルを予め情報処理装置に登録する。これによって、検索の範囲を絞り込んで検索時間を短縮するようにする。
制御部101は、編集画像の一覧において編集画像を基準点情報の“valid_count”の降順にソートする(ステップS1104)。例えば、図8(b)に示す編集画像と図10(c)に示す編集画像が編集画像の一覧として表示されたとする。この場合には、図9および図12に示すように、図8(b)に示す画像の方が“valid_count”が大きい。よって、制御部101は図8(b)に示す画像>図10(c)に示す画像の順番にソートすることになる。
続いて、制御部101は、自然数Nに編集画像の一覧数を代入し、さらにループ変数iに初期値“1”を代入する。さらに、制御部101は配列Array[ ]に編集元となった基準点のIDリストを初期値として代入する(ステップS1105)。
続いて、制御部101は自然数N≧ループ変数iであるか否かを判定する(ステップS1106)。つまり、制御部101は編集画像一覧に未だ検索対象の画像が残っているか否かを判定する。自然数N≧ループ変数iであると(ステップS1106において、YES)、制御部101は、i番目の編集画像で“valid”が“1”の基準点IDリストを取得する。つまり、制御部101は編集画像の表示領域に含まれる基準点のリストを取得する(ステップS1107)。続いて、制御部101は、基準点IDリストとArray[ ]に格納されたリストとの共通集合を求めて、との結果をArray[ ]に代入する(ステップS1108)。
次に、制御部101は、ループ変数iをインクリメントする(ステップS1109)。そして、制御部101はステップS1106の処理に戻る。これによって、制御部101は編集画像一覧の全ての画像を検索する。
このようにすれば、オリジナル画像および全ての編集画像について表示領域に含まれる基準点のリストを生成することができる。
自然数N<ループ変数iであると(ステップS1106において、NO)、制御部101はオリジナル画像および全ての編集画像について表示領域に含まれる基準点のリストから任意の2点の基準点を選択(抽出)する(ステップS1110)。そして、制御部101は、再度編集画像の一覧(リスト)を検索するため、自然数Nに編集画像の一覧数を代入するとともに、ループ変数iに初期値“1”を代入する(ステップS1111)。
続いて、制御部101は自然数N≧ループ変数iであるか否かを判定する(ステップS1112)。自然数N≧ループ変数iであると(ステップS1112において、YES)、制御部101は、選択した2つの基準点のうちいずれか一方がオリジナル画像の同一の基準点(つまり、ID)と一致するように編集画像を移動する(ステップS1113)。
図14は、図13に示すステップS1113の処理を説明するための図である。そして、図14(a)は図6で示したオリジナル画像を示す図であり、図14(b)は図8の処理でトリミングをした画像の図である。また、図14(c)は図10の処理でトリミング及び拡大処理された画像を示す図である。
また、図15は、図13に示すステップS1113の処理において基準点の座標の変化を示す図である。そして、図15(a)は選択された基準点の一例を示す図であり、図15(b)は画像の移動による基準点の移動を示す図である。また、図15(c)は拡大処理後の基準点座標を示す図である。
図14に示す例では、基準点情報のidが6_6および10_6の2点が選択された状態が示されている。そして、この場合の図14(a)〜図14(c)に示す画像における選択された2点および原点(origin)の座標は図15(a)に示す座標となる。
いま、選択された2点のうちidが6_6の基準点の位置合わせを行うとする。図14(b)に示す状態では、X軸方向に+500ピクセル、そして、Y軸方向に+250ピクセル移動させる必要がある。一方、図14(c)に示す状態では、X軸方向に+700ピクセル移動させるが、Y軸方向には移動させる必要がない。
また、原点位置も移動させるので、基準点情報におけるoriginの(x_pos,y_pos)も同様に平行移動させる。その結果、図15(b)に示す座標となる。なお、図15(b)においては、移動に応じて変化した箇所を太字のイタリック文字で示している。
上述の処理によって、図14(b)および図14(c)に示すidが6_6の基準点が図14(a)に示すオリジナル画像と重なり、さらに、原点の位置を平行移動することができる。
再び図13を参照して、ここで、他方の1点がオリジナル画像の基準点と重なっていないとする。この場合、編集画像が拡大又は縮小されているので、制御部101は、他方の1点も重なるように編集画像を拡大又は縮小処理して位置およびサイズ合わせる(ステップS1114)。
ここで、図14および図15を参照して、図14(b)に示す画像は拡大又は縮小処理が行われていないので、図15(b)に示すようにidが10_6の基準点は既に重なっており、この結果、制御部101はステップS1115の処理をスキップする。
一方、idが10_6の基準点が重なっていないと、制御部101はidが6_6の基準点を中心として、例えば、図14(c)に示すように拡大処理を行って基準点を重ね合わせる。
図16は、図1に示す情報処理装置で行われる基準点の重ね合わせ処理の一例を説明するための図である。そして、図16(a)は基準点の移動を示す図であり、図16(b)は縮小処理を示す図である。また、図16(c)は、縮小処理後の基準点の移動を示す図であり、図16(d)は基準点の重ね合せを示す図である。
まず、図16(a)に示すように、中心点とするidが6_6の基準点が原点にとなるように、画像をX軸方向に−1,500ピクセル、そして、Y軸方向に−1,500ピクセル移動させる。この際、画像全体が移動するので、idが6_6の基準点およびidが10_6の基準点とともに原点(origin)の位置も移動させる。
続いて、図16(b)に示すように、idが6_6の基準点を中心として画像の縮小処理が行われる。図14に示す例では、図14(a)においてはidが6_6とidが10_6の基準点の距離は1,000ピクセルである。一方、図14(c)においては、この距離が1,500ピクセルである。よって、idが6_6の基準点を中心として2/3に縮小すればよい。
さらに、図16(c)に示すように、idが6_6の基準点が元の位置に戻るように、画像をX軸方向に+1,500ピクセル、そして、Y軸方向に+1,500ピクセル移動させる。その結果、図16(d)に示す結果が得られる。つまり、idが10_6の基準点が座標(2,500,1,500)の位置に移動され、オリジナル画像の同一の基準点の座標と重なることになる。なお、この場合のidが6_6の基準点、idが10_6の基準点、そして、originの座標は、図15(c)に示す状態となる。
再び図13を参照して、制御部101は、ステップS1113およびS1114の処理によって得られた編集画像をオリジナル画像に重ねて表示部111に表示する(ステップS1115)。ここでは、画像のサイズが大きい画像が画面の奥側に配置される。
図17は、図13に示すステップS1115の処理で表示部に表示される画面の一例を示す図である。
図17に示す例では、画像の重なりをユーザに分かり易く表示するため、制御部101は、例えば、オリジナル画像1201と編集画像1202および1203の各々に枠線を施す。なお、ユーザが画像の重なりを理解可能な表示であれば、枠線以外の手法を用いるようにしてもよい。また、編集画像1202はステップS1113の処理で得られた画像であり、編集画像1203はステップS1114の処理で得られた画像である。
次に、制御部101は、ループ変数iをインクリメントする(ステップS1116)。そして、制御部101はステップS1112の処理に戻る。これによって、制御部101は編集画像一覧の全ての編集画像を検索する。なお、自然数N<ループ変数iであると(ステップS1112において、NO)、制御部101は比較表示処理を終了する。
上述のように、編集画像一覧は“valid_count”の大きい順、つまり、表示領域が大きい順に並んでいる。よって、比較表示処理によってオリジナル画像上に編集画像が表示領域の大きい順に重なる状態で表示されることになる。編集モードから比較表示モードに切り替えた場合には、編集モードにおいて編集中の画像を最も前面側に表示するようにすれば、今までに編集された編集画像と編集中の画像との比較が容易になる。
さらに、編集画像が重ねて表示されている場合に、矢印キーの押下又はタッチパネルにおけるスワイプ操作などによって、表示画面における奥行き方向の前後の編集画像の奥行き方向の位置を切り替えるようにする。これによって、ユーザは複数の編集画像の比較をスムーズに行うことができる。
なお、上述の例では、画像の位置および縦横サイズの合わせるため、全ての編集画像に含まれる任意の2点の基準点情報を用いた。一方、ある1点に着目して位置のみを合わせたい場合がある。このような場合には、任意の1点の基準点情報をユーザが選択して、当該基準点を合わせるようにすればよい。
このように、本発明の実施の形態では、ユーザがオリジナル画像に基づいて複数の編集画像の作成する際に、編集画像の差異を容易に比較して効率的な編集を行うことができる。
以上、本発明について実施の形態に基づいて説明したが、本発明は、これらの実施の形態に限定されるものではなく、この発明の要旨を逸脱しない範囲の様々な形態も本発明に含まれる。
例えば、上記の実施の形態の機能を制御方法として、この制御方法を情報処理装置に実行させるようにすればよい。また、上述の実施の形態の機能を有するプログラムを制御プログラムとして、当該制御プログラムを情報処理装置が備えるコンピュータに実行させるようにしてもよい。なお、制御プログラムは、例えば、コンピュータに読み取り可能な記録媒体に記録される。
[その他の実施形態]
本発明は、上述の実施形態の1以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサがプログラムを読出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。
101 制御部
102 ROM
103 RAM
104 記憶装置
105 入力I/F
106 BMU
107 VRAM
109 NET I/F
111 表示部

Claims (9)

  1. 情報処理装置であって、
    前記オリジナル画像に複数の基準点を設定する設定手段と、
    前記基準点の設定されたオリジナル画像に対する編集処理を実行して、前記基準点が付加された編集画像を生成する編集手段と、
    前記編集画像に付加された基準点と前記オリジナル画像に設定された基準点に基づき、前記編集画像を前記オリジナル画像に重ねて表示部に表示するよう制御する表示手段と、
    を有することを特徴とする情報処理装置。
  2. 前記編集処理が予め定められた編集処理であるとき、前記基準点の位置を変更する変更手段をさらに有し、
    前記編集手段は、前記変更された基準点が付加された前記編集画像を生成することを特徴とする請求項1に記載の情報処理装置。
  3. 前記予め定められた編集処理は、トリミング処理、拡大処理、および縮小処理の少なくとも1つであることを特徴とする請求項1又は2に記載の情報処理装置。
  4. 前記編集手段は、前記オリジナル画像に対して異なる編集処理を実行して複数の編集画像を生成し、
    前記表示手段は、前記複数の編集画像を重ね合わせて前記表示部に表示するよう制御することを特徴とする請求項1乃至3のいずれか1項に記載の情報処理装置。
  5. 前記表示手段は、前記オリジナル画像と前記複数の編集画像とに含まれる基準点から少なくとも1点を抽出して、前記オリジナル画像と前記複数の編集画像とを前記抽出した1点に基づいて位置合わせすることを特徴とする請求項4に記載の情報処理装置。
  6. 前記表示手段は、前記オリジナル画像および前記複数の編集画像をそのサイズに応じて重ねて前記表示部に表示することを特徴とする請求項4又は5に記載の情報処理装置。
  7. 前記表示手段は、前記複数の編集画像をそのサイズが大きい編集画像が表示画面の奥側となるように配置して表示するよう制御することを特徴とする請求項6に記載の情報処理装置。
  8. 情報処理装置の制御方法であって、
    前記オリジナル画像に複数の基準点を設定する設定ステップと、
    前記基準点の設定されたオリジナル画像に対する編集処理を実行して、前記基準点が付加された編集画像を生成する編集ステップと、
    前記編集画像に付加された基準点と前記オリジナル画像に設定された基準点に基づき、前記編集画像を前記オリジナル画像に重ねて表示部に表示するよう制御する表示ステップと、
    を有することを特徴とする制御方法。
  9. コンピュータを請求項1乃至7のいずれか1項に記載の情報処理装置の各手段として機能させるプログラム。
JP2016225909A 2016-11-21 2016-11-21 情報処理装置、その制御方法、および制御プログラム Pending JP2018085561A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2016225909A JP2018085561A (ja) 2016-11-21 2016-11-21 情報処理装置、その制御方法、および制御プログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2016225909A JP2018085561A (ja) 2016-11-21 2016-11-21 情報処理装置、その制御方法、および制御プログラム

Publications (1)

Publication Number Publication Date
JP2018085561A true JP2018085561A (ja) 2018-05-31

Family

ID=62237299

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2016225909A Pending JP2018085561A (ja) 2016-11-21 2016-11-21 情報処理装置、その制御方法、および制御プログラム

Country Status (1)

Country Link
JP (1) JP2018085561A (ja)

Similar Documents

Publication Publication Date Title
CN111273907A (zh) 一种页面处理方法及相关设备
US9141317B2 (en) Image forming apparatus
JP5149724B2 (ja) 画像管理装置及びその制御方法、記憶媒体
US10504258B2 (en) Information processing device editing map acquired from server
US9754350B2 (en) Systems and methods of automatic image sizing
JP5842392B2 (ja) コンテンツ共有システム、コンテンツ共有端末、サーバ、コンテンツ共有方法、および、コンピュータ・プログラム
JP6451052B2 (ja) 画像処理装置及びプログラム
CN103117052A (zh) 信息处理设备、信息处理方法及程序
US20170038921A1 (en) Image processing apparatus, image processing method, and non-transitory computer readable storage medium
US20130268898A1 (en) Image Folder Transmission/Playing Device and Image Folder Transmission/Playing Program
JP6929046B2 (ja) 画像処理装置、画像処理方法、及びコンピュータプログラム
JP4838655B2 (ja) 文書作成支援装置及び文書作成支援方法
KR101825598B1 (ko) 컨텐츠 제공 방법을 실행하기 위하여 기록 매체에 저장된 컴퓨터 프로그램, 방법 및 장치
JP2018085561A (ja) 情報処理装置、その制御方法、および制御プログラム
JP2022037082A (ja) 情報処理装置、情報処理方法およびプログラム
JP6292862B2 (ja) 画像処理装置、画像処理方法及びプログラム
JP2018136771A (ja) 学習装置、編集装置、学習方法、編集方法およびプログラム
JP6985931B2 (ja) 画像処理装置、画像処理プログラム、画像処理方法および当該画像処理装置を備える画像形成装置
JP5365537B2 (ja) 情報処理装置及び情報処理プログラム
JP5066877B2 (ja) 画像表示装置、画像表示方法、およびプログラム
JP6218696B2 (ja) 画像表示装置、画像表示方法、およびプログラム
JP2006140591A (ja) 画像編集装置
US20230186540A1 (en) Information processing apparatus, information processing method, and storage medium
JP2018036705A (ja) 情報処理装置、その制御方法、および制御プログラム
JP2008301274A (ja) 情報処理装置、情報処理方法及びプログラム