説明

画像編集装置、その制御方法、及び、プログラム

【課題】 複数のオブジェクトを含む画像中の、意図するオブジェクトに対して、直感的に効果的な画像編集を行える技術を提供する。
【解決手段】
表示装置105には、複数のオブジェクトを含む画像を表示させる。操作者は、表示画面に表示された目的とするオブジェクトをタッチし、そのままドラッグ操作を行った場合、最初のタッチ位置で移動対象のオブジェクトを決定する。そして、ドラッグ操作の最後のタッチ位置で移動パラメータを決定し、決定したオブジェクトをそのパラメータに従って移動させる。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、画像の編集技術に関するものである。
【背景技術】
【0002】
一度の撮影で、映像がユーザの所望の構図または効果の映像となっていることは難しい。そのため撮影後に、構図や効果を変更したいというニーズがある。具体的には、被写体の位置や大きさを変更することにより構図を変更したい、または背景領域のみにズームブラーを付与し躍動感を持たせたいなどがあげられる。
【0003】
実際にこれらを行うためには、例えばADOBE社のPHOTOSHOPでは、画像を領域ごとにレイヤーにわける。レイヤーごとに、付与する画像処理を選択し、各画像処理のパラメータを一つ一つ設定していき、レイヤーを重ねて合成を行う。例えば、被写体の位置や大きさを変更するためには、被写体領域の位置のx、y座標を、大きさの倍率を指定する必要がある。また、ズームブラーの場合は、ズームブラーの方向と強度と中心位置のx、y座標を指定する必要がある。(非特許文献1)
また、タッチパネル上の操作に応じて、ズーム、パン、回転などの処理をすることは行われている。(特許文献1)
【先行技術文献】
【特許文献】
【0004】
【特許文献1】特表2008−508601号公報
【非特許文献】
【0005】
【非特許文献1】米国アドビシステムズ「ADOBE PHOTOSHOP CS4 ユーザーガイド」<http://help.adobe.com/ja_JP/Photoshop/11.0/photoshop_cs4_help.pdf>
【発明の概要】
【発明が解決しようとする課題】
【0006】
映像の構図の変更や効果的なエフェクトを付与する際、正確なパラメータを指定した画像処理を行う必要がある。しかし、上記従来技術では、各画像処理のパラメータを一つ一つ正確に設定する必要があり手間がかかる。
【0007】
本発明は、上記問題に鑑みなされたものであり、複数のオブジェクトを含む画像中の、意図するオブジェクトに対して、直感的に効果的な画像編集を行える技術を提供しようとするものである。
【課題を解決するための手段】
【0008】
この課題を解決するため、例えば本発明の画像編集装置は以下の構成を備える。すなわち、
複数のオブジェクトが混在した画像を編集する画像編集装置であって、
画像を表示する表示手段と、
前記表示手段が有する表示画面に対する、操作者によるタッチの有無、並びに、タッチ位置を検出する検出手段と、
複数のオブジェクトを有する画像を前記表示手段の表示画面に表示している状態で、前記検出手段で操作者による前記表示画面へのタッチを検出したとき、当該タッチの座標位置から、前記複数のオブジェクトのいずれを処理対象とするかを決定するオブジェクト決定手段と、
前記オブジェクト決定手段でオブジェクトを決定した際に参照したタッチ位置と、当該タッチ位置に対して後続し連続して検出されるタッチ位置で表わされるジェスチャーとタッチ位置の変化量に従い、編集の種類と編集のためのパラメータを決定し、当該決定した編集の種類とパラメータに従って前記決定したオブジェクトに対して編集を行う編集手段とを備える。
【発明の効果】
【0009】
本発明によれば、複数のオブジェクトを含む画像中の、意図するオブジェクトに対して、直感的に効果的な画像編集を行えるようになる。
【図面の簡単な説明】
【0010】
【図1】実施形態における画像編集装置のブロック構成図。
【図2】第1の実施形態の閲覧モードと編集モードの遷移とそれぞれのモードにおける操作例を示す図。
【図3】第1の実施形態における閲覧モード時の処理を示すフローチャート。
【図4】第1の実施形態における編集例を示す図。
【図5】第1の実施形態における編集モードの処理を示すフローチャート。
【図6】第2の実施形態における編集例を示す図。
【図7】第2の実施形態における編集モードの処理を示すフローチャート。
【図8】第3の実施形態における編集例を示す図。
【図9】第3の実施形態における編集モードの処理を示すフローチャート。
【図10】第4の実施形態における編集例を示す図。
【図11】第4の実施形態における編集モードの処理を示すフローチャート。
【図12】第5の実施形態における編集例を示す図。
【図13】第5の実施形態における編集モードの処理を示すフローチャート。
【図14】第5の実施形態におけるパラメータ決定のフローチャート。
【図15】第6の実施形態における編集例を示す図。
【図16】第6の実施形態における編集モードの処理を示すフローチャート。
【図17】第8の実施形態における編集例を示す図。
【図18】第8の実施形態における編集モードの処理を示すフローチャート。
【図19】第7の実施形態における編集モードの処理を示すフローチャート。
【発明を実施するための形態】
【0011】
以下添付図面に従って本発明に係る実施形態を詳細に説明する。
【0012】
[第1の実施形態]
図1は、本実施形態を実現する画像編集装置のブロック構成図である。図示の如く、本装置は、装置全体の制御を司るCPU101、CPU101が実行するプログラムや利用するデータを予め格納しているROM102、CPU101のワークエリアとして使用するRAM103を有する。また、本装置は、画像ファイルを記憶保持する記憶装置104、CPU101の制御下で、液晶等のディスプレイ105に表示する画像を展開したり、描画処理を行う表示制御部106を有する。更に本装置は、ディスプレイ105の表示画面の前面に設けられた透明なタッチパネル107に対する操作者のタッチの有無、並びに、タッチ位置を検出する位置検出部108、更に、外部装置と通信するためのインタフェース109を有する。なお、実施形態のタッチパネル107及び位置検出部108で表わされる座標入力装置は、その種類を問わないが、少なくとも複数のタッチ位置を検出可能であるものとする。
【0013】
本実施形態では、上記画像編集装置の一形態としてフォトフレームを例にとって説明する。また、記憶装置104には、複数の画像ファイルが既に格納されているものとして説明する。更に記憶装置104に格納されている画像ファイルは、前景オブジェクト、背景オブジェクト等、複数のオブジェクトが混在し、それぞれについて奥行き(レイヤ)や位置が独立して定義できる形式のファイルであるものとする。かかるファイル形式の代表的なものとして、ADOBE社のPHOTOSHOPが作成するPSDファイル(拡張子が「psd」のファイル)があるが、ファイル種類はこれに限らない。
【0014】
さて、不図示のスイッチを操作して、本実施形態の装置の電源がONになると、CPU100はROM102に格納されたプログラムを実行することで、本装置を先に説明したフォトフレームとして機能させることになる。
【0015】
本実施形態で行うUIの一連の流れを、ディスプレイ105のスクリーンショットを用いて説明する。なお、操作者はディスプレイをタッチするのではなく、厳密にはその前面のタッチパネル107をタッチするものであるが、以下では、便宜的にディスプレイ105面にタッチする、と言う。
【0016】
図2(a)に閲覧モード時のスクリーンショットを示す。閲覧モードとは、フォトフレーム内の記憶装置104に記憶された画像を閲覧していくモードである。301は、閲覧モード時のスクリーンショットである。記憶装置104に記憶されている画像が1枚表示される。ディスプレイ105上でフリック操作302を行うと記憶装置104に記憶されている次の画像が表示される。また、図2(b)に示すように、ディスプレイ105上でダブルタップ操作303を行うと、閲覧モードから編集モード画面304へ画面遷移する。画面の黒い枠が表示されるのは、現在は編集モードにあることを示すものである。換言すれば、黒枠が表示されないとき、閲覧モードを意味する。なお、フリック操作とは、指をディスプレイ105にタッチし、そのタッチ状態を維持したまま移動させる操作を言う。また、ダブルタップ操作とは、同じ位置を、ある程度短い期間無いに2回タッチする操作を言う。
【0017】
図2(c)に編集モード時の被写体移動の画像処理を行った際のスクリーンショットを示す。編集モードでは、その特に表示された画像の各オブジェクトが、レイヤに管理される状態となる。従って、前景と背景のレイヤで構成される画像の場合、前景のみを切り出したアルファマットを保持する画像の前景領域と前景を切り出した画像とは異なる画像を背景領域として重ねあわせて表示する。ユーザ操作に応じて、表示されている各画像に画像処理を施す。
【0018】
尚、本実施形態では、予め用意していた前景領域が映っていない背景領域のみの画像との差分をとることにより前景背景の領域の分離している。しかし、これは一例であり、これに限るものではない。例えば、特開2009−059060号公報のように動体を前景とし分離しても良いし、ユーザが前景と背景の領域を指定することにより行っても良い。また、本実施形態では、編集対象が前景と背景の二つの領域を持っているが、これは一例でありこれに限るものではない。例えば、さらに複数の領域を持っていても良いし、一つの領域のみ持っていても良い。
【0019】
また、本実施形態では、前景領域と背景領域が異なる画像から生成しているが、これは一例でありこれに限るものではない。例えば同一の画像から、前景を切り出し前景領域とし、前傾領域以外の領域を背景領域として生成しても良い。
【0020】
図2(c)に示された表示画像は、前景領域401、及び、背景領域402を有することを示している。操作者が、ディスプレイ201上の前景領域401をタッチし、ドラッグ操作403を行うと、ドラッグ操作403に応じて前景領域401の表示位置が変化し前景領域404となる。また、図2(d)に示すように、ディスプレイ105上でダブルタップ操作を行うと、閲覧モード画面301へ移行し、移動処理を行った前景領域404と背景領域402を合成した合成画像を表示する。このとき、CPU101は、編集内容を反映させるため、オリジナルの画像ファイルを更新する。具体的には、オリジナル画像ファイル内の前景オブジェクトの位置情報を更新することになる。尚、ここで前景領域404を移動対象としているが、背景領域402を移動させても良い。
【0021】
図3のフローチャートに従い、CPU101が実行する処理を説明する。電源がONになり、フォトフレームとして起動するとブラウズモード画面301が表示される(S501)。次いで、電源がオフされたか否かを判定する(S502)。電源オフではないと判定された場合、ディスプレイ105へのタッチ(タッチの有無、及び、タッチされた場合にはその座標位置)を検出する(S503)。入力座標の変化から入力のジェスチャーがダブルタップか否かを判定する(S504)。ダブルタップと判定された場合(S504)、表示中の画像の前景と背景を別レイヤとしてRAM103に格納し、編集モード処理へ移行する(S505)。編集モード処理終了後、電源オフ判定(S502)へ移行する。編集モード処理(S505)の詳細は後で説明する。
【0022】
ダブルタップ操作と判定されなかった場合(S504)、入力座標の変化から入力のジェスチャーがフリック操作か否かを判定する(S506)。フリックと判定された場合(S506)、現在表示している画像の次の画像を記憶媒体104から読み出し、ディスプレイ201へ表示し(S507)、電源オフ判定(S502)へ移行する。フリック操作でもないと判定された場合(S506)、電源オフ判定(S502)へ移行する。電源がオフされたと判定された場合(S503)、終了する。
【0023】
図4を用いて、本実施形態における編集モード時のオブジェクト移動処理の操作について説明する。オブジェクト移動処理は、オブジェクト領域のドラッグによって行う。601はドラッグの開始時の入力座標である。本実施形態では、タッチされたのが1箇所であり、そのタッチされた入力座標601が含まれ、一番手前に位置するレイヤに割り当てられた領域602が移動対象となる。603はドラッグ操作中の入力検出位置である。604はドラッグの移動量となる。移動量604を対象移動処理の移動量とし、移動対象領域602を、605の位置まで移動させる処理を行う。なお、ドラッグ操作は、タッチ状態を維持しつつ、そのタッチ位置を変更する操作であり、先に説明したフリック操作と同義語であり、CPU101から見た場合の違いはない。しかし、一般に、ドラッグ操作は、非タッチ状態にした位置に意味があり、タッチしてから非タッチ状態になるまでにかかる時間に制限はない。一方、フリック操作では、指を払う操作であって、どちらの方向にタッチ位置が変化したかが重要であり、且つ、ドラッグ操作と比較して、タッチ状態になってから非タッチ状態になるまでは比較的短い期間を言う。本実施形態でも、技術内容を理解しやすくするやめ、フリック操作、ドラッグ操作を上記のような意味で説明することとする。
【0024】
図5(a)に本実施形態における編集モード時の処理のフローチャートを示す。編集モードが開始すると、ディスプレイ105への入力座標を検出する(S701)。入力座標の変化から入力のジェスチャーがダブルタップか否かを判定する(S702)。ダブルタップではないと判定された場合(S702)、入力座標の変化から入力のジェスチャーがドラッグか否かを判定する(S703)。ドラッグ操作と判定された場合(S703)、対象移動処理(S704)を行い、入力位置検出(S701)へ移行する。対象移動処理については、後で詳細を説明する。また、ドラッグ操作ではないと判定された場合(S703)、入力位置検出(S701)へ移行する。ダブルタップと判定された場合(S702)、行った画像処理を元に合成を行い、合成した画像を記憶媒体104へ記憶し、編集モードを終了する。
【0025】
図5(b)に本実施形態におけるオブジェクト移動処理のフローチャートを示す。
【0026】
オブジェクト移動処理が開始されると、ドラッグ操作開始時の入力座標が含まれる領域のオブジェクトを、画像処理を施す対象画像とする(S801)。ディスプレイ105への入力座標を検出する(S802)。入力のジェスチャーがドラッグ操作か判定する(S803)。ドラッグ操作と判定された場合、(S803)ドラッグの移動量を検出する(S804)。検出した移動量を対象移動処理の移動量と決定する(S805)。決定したオブジェクト画像を、決定した移動量(ドラッグ操作の開始位置と終了位置との距離)に基づき移動処理を行う(S806)。そして、再び、入力座標の検出処理(S802)に戻る。なお、この段階で、オリジナル画像ファイルの移動対象となったオブジェクトの座標位置情報も更新する。そして。ドラッグと判定されなかった場合(S803)、対象移動処理を終了する。
【0027】
尚、本実施形態では、前景領域と背景領域が別の画像のため、各領域が移動しても空白箇所が発生しないが、前景領域と背景領域が同じ画像から生成した場合、対象が移動したことにより空白箇所が発生する。発生した空白箇所は、特開2004−104232号公報のように近傍の画像データを用いて補完処理を行う。または、特開2010−20581号公報のように、別の画像から空白の箇所が映っている箇所を検出し、その部分を用いて補完処理を行ってもよい。このように構成し処理することにより、直感的に対象の移動を行うことができ、ユーザが所望の画像を生成することが可能となる。
【0028】
[第2の実施形態]
第2の実施形態を説明する。本第2の実施形態における装置構成は図1と同じであるものとし、その説明は省略する。なお、閲覧モードと編集モードとの切り替えは、第1の実施形態と同じとし、閲覧モードについての説明は省略する。
【0029】
図6(a),(b)を用いて、本第2の実施形態における編集モード時の拡大縮小処理の操作について説明する。拡大縮小操作は、タッチ位置が2箇所であり、その2箇所(2点)の入力の間隔を広げたり縮めたりするピンチイン・ピンチアウト操作を、拡大、縮小しようとオブジェクト上で行う。図6(a)における、901はピンチイン・アウト開始時の入力位置である。902は入力位置901の中間点である。本実施形態では、中間点902が含み、もっとも手前のレイヤで管理されているオブジェクト903を、画像処理を付与する対象領域とする。図6(b)において、904はピンチイン・アウト中の入力位置である。開始時の入力位置間の距離905と、操作中の入力位置間の距離906との変化量から、拡大縮小率(倍率)を決定する。中間点902を拡大縮小処理の中心とし、拡大縮小処理を行う。尚、本実施形態では、中間点902を中心とし拡大縮小処理を行っているが、これは一例でありこれに限るものではない。例えば、対象領域ごとにあらかじめ決められた点を中心に拡大縮小処理を行っても良いし、対象領域の重心を中心に拡大縮小処理を行っても良い。
【0030】
図7(a)に本実施形態における編集モード時の処理のフローチャートを示す。図5(a)と同様の箇所については説明を割愛する。入力のジェスチャーがピンチイン・アウトか否かを判定する(S1001)。ピンチイン・アウトと判定された場合(S1001)、拡大縮小処理を行う(S1002)。このとき、オリジナル画像ファイルも拡大後のオブジェクトに従って更新する。この後、入力位置検出(S701)へ移行する。拡大縮小処理については、後で詳細を説明する。ピンチイン・アウトではないと判定された場合(S1001)、入力位置検出(S701)へ移行する。
【0031】
図7(b)に本実施形態における拡大縮小処理のフローチャートを示す。図5(b)と同様の箇所については説明を割愛する。
【0032】
ピンチイン・アウトの入力位置の中間点902が含まれる領域の画像を、画像処理を施す対象画像とする(S1101)。入力のジェスチャーがピンチイン・アウトか否かを判定する(S1102)。ピンチイン・アウトと判定された場合(S1102)、開始時と操作中の二点の入力位置間距離905と906の比を算出する(S1103)。算出した比を拡大率、中間点902を拡大縮小処理の中心点とする(S1104)。決定したパラメータに基づき、アフィン変換を用いて拡大処理を行う(S1105)。ピンチイン・アウトではないと判定した場合(S1102)、拡大縮小処理を終了する。
【0033】
尚、本実施形態では拡大縮小処理の中心点を中間点902としたが、これは一例でありこれに限るものではない。例えば、開始時の二点の入力位置のどちらか一方を拡大縮小処理の中心点としても良いし、予め領域ごとに拡大縮小処理の中心点を決定していてもよい。また、本実施形態ではアフィン変換を用いて拡大縮小処理を行っているが、これは一例でありこれに限るものではない。例えば、アフィン変換処理後にバイキュービック法などで補完処理を行ってもよい。このように構成し処理することにより、直感的に対象の拡大・縮小を行うことができ、ユーザが所望の画像を生成することが可能となる。
【0034】
[第3の実施形態]
本第3の実施形態では、編集モード時における画像(オブジェクト)の回転処理について説明する。なお、装置構成は、図1と同じとする。また、閲覧モードと編集モードとの切り替えは第1の実施形態と同じとし、閲覧モードについての説明は省略する。
【0035】
図8(a)、(b)を用いて、本第3の実施形態における編集モード時の対象回転処理の操作について説明する。回転処理操作は、回転対象上での二点の入力位置を回転移動させる回転操作によって行う。図8(a)における1201は回転操作開始時の入力位置である。1202は入力位置1201の中間点である。本実施形態では、中間点1202が含まれ、且つ、一番手前に位置するレイヤで管理されているオブジェクトの領域1203を、画像処理を付与する対象の領域とする。1204は、回転操作中の入力位置である。開始時の図8(a)における入力位置を結ぶ直線1205の傾きと、回転操作中の図8(b)の入力位置を結ぶ直線1206の傾きの変化量から、回転角を決定し、中間点1202を中心に、対象として決定されたオブジェクトの回転処理を行う。
【0036】
図9(a)に本第3の実施形態における編集モード時の処理のフローチャートを示す。図5(a)と同様の箇所については説明を割愛する。
【0037】
CPU101、入力のジェスチャーが回転操作か否かを判定する(S1301)。回転操作と判定された場合(S1301)、回転処理を行う(S1302)。このとき、オリジナルの画像ファイルの更新処理も行う。この後、入力位置検出処理(S701)に戻る。回転処理については後で詳細を説明する。回転操作と判定されなかった場合(S1301)、入力位置検出(S701)へ移行する。
【0038】
図9(b)に本第3の実施形態における回転処理のフローチャートを示す。図5(b)よび図7(b)と同様の箇所については説明を割愛する。
【0039】
CPU101は、入力のジェスチャーが回転操作か否か判定する(S1401)。回転操作と判定された場合(S1401)、二本の指を結ぶ直線1205と1206の傾きの変化量を算出する(S1402)。算出した変化量を回転量、中間点1202を回転の中心とする(S1403)。決定したパラメータにもとづき、アフィン変換を用いて回転処理を行う(S1404)。また、回転操作と判定されなかった場合(S1401)、回転処理を終了する。
【0040】
尚、本実施形態では中間点1202を回転の中心としたが、これは一例でありこれにかぎるものではない。例えば、領域ごとに予め定めた点を回転の中心としても良いし、どちらかの入力検出位置を回転の中心としても良い。
また、本実施形態ではアフィン変換を用いて回転処理を行っているが、これは一例でありこれに限るものではない。例えば、アフィン変換処理後にバイキュービック法などで補完処理を行ってもよい。このように構成し処理することにより、直感的に対象の回転を行うことができ、ユーザが所望の画像を生成することが可能となる。
【0041】
[第4の実施形態]
本第4の実施形態では、選択したオブジェクトにモーションブラーを付与する例を説明する。なお、装置構成は、図1と同じとする。また、閲覧モードと編集モードとの切り替えは第1の実施形態と同じとし、閲覧モードについての説明は省略する。
【0042】
図10を用いて、本第4の実施形態における編集モード時のモーションブラー処理の操作について説明する。モーションブラー処理は、モーションブラー付与対象オブジェクト上での2点をタッチし、そのままタッチした2点を並行移動する、いわゆるダブルドラッグによって行う。1501はダブルドラッグ開始時の入力位置である。1502は、入力位置1501の中間点であり、この中間位置を含み、もっと手前のレイヤに管理されているオブジェクトが処理対象として決定される。図示の場合、中間点1501は背景画像であるので、背景領域を、画像処理を付与する領域とする。1503は、ダブルドラッグ中の入力位置である。1504は、入力位置1503の中間点である。1505は、開始時と操作中の操作位置の中間点1502と1504との並行移動量である。並行移動量1505の向きからモーションブラーの向きを、移動量1505の長さからモーションブラーの強度を決定し、背景領域にモーションブラーを付与する。
【0043】
図11(a)に本第4の実施形態における編集モード時の処理のフローチャートを示す。図5(a)と同様の箇所については説明を割愛する。
【0044】
CPU101は、入力のジェスチャーがダブルドラッグか否かを判定する(S1601)。ダブルドラッグと判定された場合(S1601)、モーションブラー処理を行う(S1602)。モーションブラー処理については後で詳細を説明する。ダブルドラッグと判定されなかった場合(S1601)、入力位置検出(S701)へ移行する。
【0045】
図11(b)に本第4の実施形態におけるモーションブラー処理のフローチャートを示す。図5(b)および図7(b)と同様の箇所については説明を割愛する。
【0046】
CPU101は、ダブルドラッグか否か判定する(S1701)。ダブルドラッグと判定された場合(S1701)、中間点1502と1505の移動量1505を算出する(S1702)。算出した移動量1505の向きをモーションブラーの向き、長さをモーションブラーの強度とする(S1703)。対象領域と同じ画像に透過度を持たせ、指定方向へかつ指定強度に応じた距離まで一定間隔でずらしながら、対象領域と合成することによって、モーションブラーを付与する(S1704)。このとき、オリジナル画ファイルの更新処理も行う。ダブルドラッグ操作が継続されていると判定されなかった場合(S1701)、モーションブラー処理を終了する。
【0047】
尚、本実施形態ではモーションブラーを元画像に透過度を持たせずらしながら合成することにより行っているが、これは一例でありこれに限るものではない。例えば、指定方向、指定強度に応じた範囲のガウシアンブラーを付与することによって行っても良い。このように構成し処理することにより、直感的に効果的なモーションブラーを付与することができ、ユーザが所望の画像を生成することが可能となる。
【0048】
[第5の実施形態]
第5の実施形態では、選択したオブジェクトにズームブラーを付与する例を説明する。なお、装置構成は、図1と同じとする。また、閲覧モードと編集モードとの切り替えは第1の実施形態と同じとし、閲覧モードについての説明は省略する。
【0049】
図12を用いて、本第5の実施形態における編集モード時のズームブラー処理の操作について説明する。ズームブラー処理は、ズームブラー付与対象領域上での二本の指でのタッチを一組としたとき、二組のダブルドラッグによって行う。図示の1801と1802は、ダブルドラッグ開始時のダブルドラッグ各組の入力位置である。1803と1804は、入力位置1801と1802の中間点である。本実施形態では、中間点1803および1804を含み、最も奥のレイヤである背景領域を、画像処理を付与する領域とする。ただし、中間点1803と1804が異なる領域に含まれる場合は、両方の領域を、画像処理を付与する領域とする。
【0050】
尚、本実施形態では中間点1803と1804が異なる領域に含まれる場合、両方の領域を、画像処理を付与する対象としたが、これは一例でありこれに限るものではない。例えば、先に検出した中間点が含まれる方のみを画像処理を付与する領域としても良い。
【0051】
1805と1806は、ダブルドラッグ中のダブルドラッグ各組の入力位置である。1807と1808は、入力位置1805と1806の中間点である。1803と1807を結んだベクトル1809と、1804と1808を結んだベクトル1810を算出する。1803と1807を結んだ直線と、1804と1808を結んだ直線との交点1811を算出する。算出したベクトル1809と1810の長さの平均をズームブラーの強度とし、ベクトル1809と1810の交点1811に対する向きをズームブラーの向きとする。算出した交点1811をおおよその消失点とし、ズームブラーの中心を決定する。決定したパラメータに基づき、背景領域にズームブラーを付与する。
【0052】
図13(a)に本実施形態における編集モード時の処理のフローチャートを示す。図5(a)と同様の箇所については説明を割愛する。
【0053】
CPU101は、入力が二組のダブルドラッグか否かを判定する(S1901)。二組のダブルドラッグと判定された場合(S1901)、ズームブラー処理を行う(S1902)。このとき、編集結果を反映させるため、オリジナル画像ファイルも更新する。ズームブラー処理については、後で詳細を説明する。また、二組のダブルドラッグと判定されなかった場合(S1901)、入力位置検出(S701)へ移行する。
【0054】
図13(b)に本実施形態におけるズームブラー処理のフローチャートを示す。図5(b)と同様の箇所については説明を割愛する。
【0055】
CPU101は、中間点1803と1804が含まれる領域の画像を、画像処理を施す対象画像とする。各中間点が異なる領域に含まれる場合は、両方の画像を、画像処理を施す対象画像とする(S2001)。そして、二組のダブルドラッグか否か判定する(S2002)。二組のダブルドラッグと判定された場合(S2002)、開始時と操作中の中間点1803と1807および1804と1808を結ぶベクトル1809と1810を算出する。開始時と操作中の中間点1803と1807および1804と1808を結ぶ直線の交点1811を算出する(S2003)。算出した操作変化量に基づきパラメータを決定する(S2004)。パラメータ決定については、後で詳細を説明する。決定した向きと強度に応じて拡大率を算出する。透過度を持たせた対象領域と同じ画像を、決定した拡大率まで徐々に拡大率を変更していきながら、算出した中心位置を中心に拡大縮小処理を行い、対象領域に合成していく(S2005)。尚、本実施形態では、基画像に透明度を持たせ、決定したパラメータに基づき、拡大縮小し、基画像に合成することによってズームブラーを付与しているが、これは一例でありこれに限るものではない。
【0056】
図14(a)に本第5の実施形態におけるパラメータ決定のフローチャートを示す。
【0057】
CPU101は、ベクトル1809と1810の長さの平均値に比例するようにズームブラーの強度を決定する(S2101)。尚本実施形態ではベクトル1809と1810の長さの平均値を用いているが、これは一例でありこれに限るものではない。例えば、長いまたは短い方の値を用いてもよい。ベクトル1809と1810の交点1811への向きによって、ズームブラーの方向を算出する。ただしベクトルの方向が異なる場合は、長い方のベクトルの向きによってズームブラーの方向を決定する(S2102)。交点1811から中心点を決定し(S2103)、パラメータ決定を終了する。中心点決定については、後で詳細を説明する。
【0058】
図14(b)に本第5の実施形態における中心点決定処理のフローチャートを示す。
【0059】
CPU101は、キャニー法を用いて画像のエッジを検出する(S2201)。交点1811から任意の距離内を消失点候補範囲とする(S2202)。ハフ変換を用いて消失点候補範囲を通過する直線のみ検出する(S2203)。消失点候補範囲を通過する直線のみ検出することにより、消失点に収束しない直線の検出を抑えられ消失点の誤認識をさけ、かつ無駄な直線検出処理を省くことができるので処理を軽減することが可能となる。検出した直線がもっとも収束している点を検出し、消失点とし、ズームブラーの中心点とする(S2204)。
【0060】
尚、本実施形態では、キャニー法を用いて画像のエッジを検出しているが、これは一例でありこれに限るものではない。例えば、ロバートクロス法などを用いても良い。
また、本実施形態では、直線の検出にハフ変換を用いているが、これは一例でありこれに限るものではない。また、本実施形態では、交点1811の情報を用いて消失点を検出しズームブラーの中心としているが、これは一例でありこれに限るものではない。例えば、交点1811をズームブラーの中心としてもよい。また、本実施形態では、ズームブラー処理をしているが、これは一例でありこれに限るものではない。例えば、指定した中心に近いほど、彩度が落ちるような処理を施しても良い。このように構成し処理することにより、複数の領域に分離した画像であっても、直感的にズームブラーを付与することができ、ユーザが所望の画像を生成することが可能となる。
【0061】
[第6の実施形態]
第6の実施形態では、選択したオブジェクトに対して、フォーカス変更処理を行う例を説明する。なお、装置構成は、図1と同じとする。また、閲覧モードと編集モードとの切り替えは第1の実施形態と同じとし、閲覧モードについての説明は省略する。
【0062】
図15(a),(b)を用いて、本第6の実施形態における編集モード時のフォーカス変更処理の操作について説明する。フォーカス変更処理は、フォーカスを合わせる対象のオブジェクト上でのタップで行う。図15(a)における2301は背景領域で、2302は前景領域である。タップ前は、前景領域2302のみがボケ、背景領域にフォーカスがあった映像になっている。タップ操作が行われると、図15(b)の入力位置2303の領域を含まない背景領域2301のみがボケ、前景領域2302にフォーカスが合った映像となる。つまり、タップするごとに、フォーカス対象を交互に切り替えることとなる。
【0063】
図16(a)に本第6の実施形態における編集モードのフローチャートを示す。図5(a)と同様の箇所については説明を割愛する。
【0064】
CPU101は、入力のジェスチャーがタップか否かを判定する(S2401)。タップと判定された場合(S2401)、フォーカス変更処理を行う(S2402)。フォーカス変更処理については、後で詳細を説明する。タップと判定されなかった場合(S2401)、入力位置検出(S701)へ移行する。
【0065】
図16(b)に本第6の実施形態におけるフォーカス変更処理のフローチャートを示す。
【0066】
タップの入力位置2303が含まれない領域の画像を、画像処理を施す対象画像とする(S2501)。決定した対象画像に、あらかじめ定めた強度のガウシアンブラーを付与する(S2502)。
【0067】
尚、本実施形態では、ブラーの強度を予め定めた値にしているが、これは一例でありこれに限るものではない。例えば、タップの継続時間に応じてブラーの強度を決定しても良い。また、本実施形態では、ガウシアンブラーによってブラーを付与しているが、これは一例でありこれに限るものではない。このように構成し処理することにより、直感的にフォーカス変更処理を行うことができ、ユーザが所望の画像を生成することが可能となる。
【0068】
[第7の実施形態]
上記第1乃至第6の実施形態では、操作者によるディスプレイ105に対するジェスチャーに応じた処理を説明したが、これらの機能を1つの編集装置に搭載するようにしても良い。この場合の例を第7の実施形態として説明する。なお、装置構成は、図1と同じとする。また、閲覧モードと編集モードとの切り替えは第1の実施形態と同じとし、閲覧モードについての説明は省略する。
【0069】
図19は、本第7の実施形態における編集モードにおける処理手順のフローチャートである。
【0070】
CPU101は、S3001にて、ディスプレイ105に対する非タッチ状態からタッチ状態になったことを検出する。タッチ入力を検出すると、処理をS3002に進め、タッチの個数、各タッチ位置に従い、操作者の意図した画面上の座標位置を算出する。タッチ箇所が1つの場合には、タッチ位置と操作者の意図した画面上の位置は一致する。しかし、例えばタッチ箇所が2箇所の場合、先に説明したように、操作者の操作はピンチイン・アウト操作を行うための初期段階であると判定できる。従って、後者の場合、その中央の位置が操作者の意図した座標位置として判定する。そして、決定した操作者の意図した座標位置を内包し、且つ、最も手前のレイヤに管理されているオブジェクトを、編集対象のオブジェクトとして決定する。次いで、後続して入力されるタッチ位置の変化から、操作者のジェスチャーの種類を判別する。そして、その判別したジェスチャーに応じた処理をS3003乃至S3008で行う。このS3003乃至3008は、上記第1乃至第6の実施形態に対応するので、その内容は上記各実施形態を参照されたい。
【0071】
この後、S3009に進み、ダブルタップが入力されたか否かを判定し、否の場合にはS3001以降の処理を繰り返す。また、ダブルタップの入力がされた場合、S3009に進んで、編集後の画像を合成処理し、編集モードを終了し、閲覧モードに移行する。
【0072】
なお、先に説めいた第1乃至第6の実施形態では、各編集処理を行う度に、オリジナルの画像ファイルを更新するものとして説明したが、編集モードを終了する際に、オリジナル画像ファイルを更新するようにしても良い。
【0073】
[第8の実施形態]
上記実施形態では、編集対象の画像データが静止画を前提にして説明したが、動画像について編集する例、具体的には、画像処理としてタイムシフト処理を行う例を第8の実施形態として説明する。なお、装置構成は、図1と同じとする。また、閲覧モードと編集モードとの切り替えは第1の実施形態と同じとし、閲覧モードについての説明は省略する。
【0074】
ここでタイムシフト処理とは、動画の連続したフレームから同オブジェクトを切り出し、切り出したオブジェクトを1フレームの画像上に設置していき、動体の軌跡を表すものである。
【0075】
図17(a),(b)を用いて、本第8の実施形態における編集モード時のタイムシフト操作について説明する。タイムシフト操作は、3点(3箇所のタッチ)の入力位置を回転させる三点回転操作によって行う。図17(a)の2601は、動画の或るフレーム画像である。2602、2603、2604は三点回転操作開始時の入力位置である。2605は、入力位置2602、2603、2604を結ぶ円である。2606は、円2605の中心である。2607は、入力位置2603と中心2606を結ぶ線分である。図17(b)の2608、2609、2610は、操作中の入力検出位置で、それぞれ2602、2603、2604が移動したものである。2611は、操作入力位置2608、2609、2610を結ぶ円である。2612は、円2611の中心である。2613は、操作入力位置2609と中心2612を結ぶ線分である。2614は、タイムシフト操作によって設置された画像である。
【0076】
中心点2606を含まない領域を切り出し対象とする。線分2607と線分2613の成す回動角(角度)を算出する。算出した回動角から、領域を切り出すフレームの時間範囲を決定する。決定した時間範囲内のフレームから対象領域を切り出し、切り出した同位置に設置する。
【0077】
図18(a)に本第8の実施形態における編集モード時の処理のフローチャートを示す。図5(a)と同様の箇所については説明を割愛する。
【0078】
CPU101は、入力のジェスチャーが三点回転操作か否かを判定する(S2701)。三点回転操作と判定された場合(S2701)、タイムシフト処理を行う(S2702)。タイムシフト処理については、後で詳細を説明する。三点回転操作と判定されなかった場合(S2701)、入力検出(S701)へ移行する。
【0079】
図18(b)に本第8の実施形態におけるタイムシフト処理のフローチャートを示す。図5(b)と同様の箇所については説明を割愛する。
【0080】
CPU101は、3点の入位置を結ぶ円の中心2606を算出する。算出した中心2606が含まれない領域の画像を、画像処理を施す対象画像とする(S2801)。入力のジェスチャーが三点回転操作か否かを判定する(S2802)。S2802において三点回転操作と判定された場合、操作中の3点の入力位置を結ぶ円の中心206を算出する。開始時の入力位置2603と開始時の円の中心2606を結ぶ線分2607と、操作中の入力位置2609と操作中の円の中心2612を結ぶ線分2613の成す角度を算出する(S2803)。算出した角度から、対象領域を切り出すフレームの時間範囲を決定する(S2804)。決定した時間範囲内の任意の間隔のフレームから対象領域を切り出し、切り出した位置に設置する(S2805)。S2802において三点回転操作ではないと判定された場合、タイムシフト処理を終了する。
【0081】
尚、本実施形態では、3点の入力検出位置を結ぶ円の中心が含まれない領域を対象領域としたが、これは一例でありこれに限るものではない。例えば、中心位置が含まれる領域を対象領域としてもよい。また、本実施形態では、入力検出位置と円の中心を結ぶ直線の成す各を操作変化量と算出しているが、これは一例でありこれに限るものではない。例えば、線分の傾きの変化量を算出しても良い。また、本実施形態では、三点回転操作に応じてタイムシフト処理を行っているが、これは一例でありこれに限るものではない。例えば、三点回転操作に応じて、動画の再生速度を制御してもよい。このように構成し処理を行うことにより、直感的にタイムシフト処理を行うことが可能となり、ユーザが所望の画像を生成することがかのうとなる。

【特許請求の範囲】
【請求項1】
複数のオブジェクトが混在した画像を編集する画像編集装置であって、
画像を表示する表示手段と、
前記表示手段が有する表示画面に対する、操作者によるタッチの有無、並びに、タッチ位置を検出する検出手段と、
複数のオブジェクトを有する画像を前記表示手段の表示画面に表示している状態で、前記検出手段で操作者による前記表示画面へのタッチを検出したとき、当該タッチの座標位置から、前記複数のオブジェクトのいずれを処理対象とするかを決定する決定手段と、
前記決定手段でオブジェクトを決定した際に参照したタッチ位置と、当該タッチ位置に対して後続し連続して検出されるタッチ位置で表わされるジェスチャーとタッチ位置の変化量に従い、編集の種類と編集のためのパラメータを決定し、当該決定した編集の種類とパラメータに従って前記決定したオブジェクトに対して編集を行う編集手段と
を備えることを特徴とする画像編集装置。
【請求項2】
前記編集手段は、検出するジェスチャーが1箇所のタッチ位置の移動であるドラッグ操作であった場合、編集の種類が移動であるとして決定し、ドラッグ操作の開始位置と終了位置の距離を移動量のパラメータとして利用することを特徴とする請求項1に記載の画像編集装置。
【請求項3】
前記編集手段は、検出するジェスチャーがピンチイン・アウト操作であった場合、編集の種類が拡大・縮小であるとして決定し、ジェスチャーの初期の2箇所のタッチ位置の間の距離に対する、ジェスチャーを行っている場合の2箇所のタッチ位置の間の距離の比を、拡大・縮小の倍率のパラメータとして利用することを特徴とする請求項1に記載の画像編集装置。
【請求項4】
前記編集手段は、検出するジェスチャーが2箇所のタッチ位置を結ぶ線分の向きを変更する操作であった場合、編集の種類が回転であると決定し、ジェスチャーの初期の2箇所のタッチ位置を結ぶ線の傾きに対するジェスチャーを行っている場合の2箇所のタッチ位置を結ぶ線の傾きの差を、回転角のパラメータとして利用することを特徴とする請求項1に記載の画像編集装置。
【請求項5】
前記編集手段は、検出するジェスチャーが2箇所のタッチ位置の並行移動を行う操作であった場合、編集の種類がモーションブラーであるとして決定し、ジェスチャーの初期に対するジェスチャーを行っている場合の並行移動量を、モーションブラーのパラメータとして利用することを特徴とする請求項1に記載の画像編集装置。
【請求項6】
前記編集手段は、2箇所のタッチを一組とした場合、検出するジェスチャーが二組のドラッグ操作であった場合、編集の種類がズームブラーであるとして決定し、各組の移動した向きの交点をズームブラーの中心点とし、各組の移動量の平均値をズームブラーの強度のパラメータとして利用することを特徴とする請求項1に記載の画像編集装置。
【請求項7】
前記編集手段は、検出するジェスチャーが1箇所のタップ操作であった場合、編集の種類がぼかし処理であるとして決定し、タップ操作が行われる度に、タップした位置を含み最も奥に位置するオブジェクト、最も手前に位置するオブジェクトを交互にぼかし対象を切り替え、タッチしている時間をぼかし強度のパラメータとして利用することを特徴とする請求項1に記載の画像編集装置。
【請求項8】
前記編集手段は、検出するジェスチャーが3箇所のタッチ位置の回動の操作であった場合、編集の種類がタイムシフト処理であるとして決定し、ジェスチャーの初期に対するジェスチャーを行っている場合の回動角を、動画像から切り出す時間範囲のパラメータとして決定することを特徴とする請求項1に記載の画像編集装置。
【請求項9】
コンピュータに読み込ませ実行させることで、前記コンピュータに請求項1乃至8のいずれか1項に記載の画像編集装置の手段として機能させるプログラム。
【請求項10】
画像を表示する表示手段と、前記表示手段が有する表示画面に対する、操作者によるタッチの有無、並びに、タッチ位置を検出する検出手段とを有し、複数のオブジェクトが混在した画像を編集する画像編集装置の制御方法であって、
複数のオブジェクトを有する画像を前記表示手段の表示画面に表示している状態で、前記検出手段で操作者による前記表示画面へのタッチを検出したとき、決定手段が、当該タッチの座標位置から、前記複数のオブジェクトのいずれを処理対象とするかを決定する決定工程と、
編集手段が、前記決定工程でオブジェクトを決定した際に参照したタッチ位置と、当該タッチ位置に対して後続し連続して検出されるタッチ位置で表わされるジェスチャーとタッチ位置の変化量に従い、編集の種類と編集のためのパラメータを決定し、当該決定した編集の種類とパラメータに従って前記決定したオブジェクトに対して編集を行う編集工程と
を有することを特徴とする画像編集装置の制御方法。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate

【図12】
image rotate

【図13】
image rotate

【図14】
image rotate

【図15】
image rotate

【図16】
image rotate

【図17】
image rotate

【図18】
image rotate

【図19】
image rotate


【公開番号】特開2012−53623(P2012−53623A)
【公開日】平成24年3月15日(2012.3.15)
【国際特許分類】
【出願番号】特願2010−195058(P2010−195058)
【出願日】平成22年8月31日(2010.8.31)
【出願人】(000001007)キヤノン株式会社 (59,756)
【Fターム(参考)】