JP2017016670A - 電子デバイス、方法、プログラム - Google Patents

電子デバイス、方法、プログラム Download PDF

Info

Publication number
JP2017016670A
JP2017016670A JP2016153991A JP2016153991A JP2017016670A JP 2017016670 A JP2017016670 A JP 2017016670A JP 2016153991 A JP2016153991 A JP 2016153991A JP 2016153991 A JP2016153991 A JP 2016153991A JP 2017016670 A JP2017016670 A JP 2017016670A
Authority
JP
Japan
Prior art keywords
image
instructions
readable medium
machine
tool
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.)
Granted
Application number
JP2016153991A
Other languages
English (en)
Other versions
JP6220021B2 (ja
Inventor
ランディ ウビロス,
Ubillos Randy
ランディ ウビロス,
ティモシー, ディー. チェルナ,
D Cherna Timothy
ティモシー, ディー. チェルナ,
チェン サン,
Chen Sun
チェン サン,
ラルフ, ティー. ブルンナー,
T Brunner Ralph
ラルフ, ティー. ブルンナー,
アレクシス ガット,
Gatt Alexis
アレクシス ガット,
ガレット, エム. ジョンソン,
M Johnson Garrett
ガレット, エム. ジョンソン,
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.)
Apple Inc
Original Assignee
Apple 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 Apple Inc filed Critical Apple Inc
Publication of JP2017016670A publication Critical patent/JP2017016670A/ja
Application granted granted Critical
Publication of JP6220021B2 publication Critical patent/JP6220021B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0484Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
    • G06F3/04845Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range for image manipulation, e.g. dragging, rotation, expansion or change of colour
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/387Composing, repositioning or otherwise geometrically modifying originals
    • H04N1/3877Image rotation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0481Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
    • G06F3/0482Interaction with lists of selectable items, e.g. menus
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0484Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0484Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
    • G06F3/04842Selection of displayed objects or displayed text elements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0487Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser
    • G06F3/0488Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser using a touch-screen or digitiser, e.g. input of commands through traced gestures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/16Sound input; Sound output
    • G06F3/167Audio in a user interface, e.g. using voice commands for navigating, audio feedback
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T11/002D [Two Dimensional] image generation
    • G06T11/60Editing figures and text; Combining figures or text
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/16Sound input; Sound output
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2200/00Indexing scheme for image data processing or generation, in general
    • G06T2200/24Indexing scheme for image data processing or generation, in general involving graphical user interfaces [GUIs]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T3/00Geometric image transformations in the plane of the image
    • G06T3/60Rotation of whole images or parts thereof

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Health & Medical Sciences (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • General Health & Medical Sciences (AREA)
  • User Interface Of Digital Computer (AREA)
  • Processing Or Creating Images (AREA)
  • Television Signal Processing For Recording (AREA)

Abstract

【課題】画像を編集するための切り抜き及び角度補正ツールを有する画像編集アプリケーションを提供する。
【解決手段】。切り抜き及び角度補正ツールは、回転可能なユーザインタフェース(UI)項目をユーザに提供する。ユーザはこの回転可能なUI項目を特定の方向に(時計回り又は反時計回りに)回転させることができ、ツールはそれに応じて、表示された画像をその特定の方向に回転させる。このようにして、ユーザは、回転可能なUI項目を回転させることによって、表示された画像を角度補正することができる。
【選択図】図1

Description

デジタルグラフィックデザイン及び画像編集アプリケーション(以下、画像編集アプリケーションと総称する)は、グラフィックデザイナー、メディアアーティスト及び他のユーザに、画像の閲覧及び編集を行う上で必要なツールを提供する。このようなアプリケーションの例は、Googleによって提供されているPICASA(登録商標)、Adobeによって提供されているPHOTOSHOP(登録商標)、Microsoftによって提供されているExpress Media等が挙げられる。これらのアプリケーションは、画像を様々な方法で編集する能力をユーザに与える。
タブレットコンピュータ及びスマートフォン等のモバイルデバイスの増加とともに、これらのアプリケーションの有用性はこれらのデバイスへ拡大した。しかし、多くの画像編集アプリケーションはデスクトップ及びサーバのような固定式のデバイス用に適合されており、モバイルデバイスで享受することができるはずの便利な機能の一部をユーザに提供していない。
いくつかの実施形態は、画像を編集するための切り抜き及び角度補正ツールを有する画像編集アプリケーションを提供する。切り抜き及び角度補正ツールは、回転可能なユーザインタフェース(UI)項目をユーザに提供する。ユーザはこの回転可能なUI項目を特定の方向に(時計回り又は反時計回りに)回転させることができ、ツールはそれに応じて、表示された画像をその特定の方向に回転させる。このようにして、ユーザは、回転可能なUI項目を回転させることによって、表示された画像を角度補正することができる。
回転可能なUI項目が回転されるにつれて、いくつかの実施形態における画像編集アプリケーションは、回転可能なUI項目が回転されていることを示す、可聴的指示を提供するために、音を鳴らす。いくつかの実施形態における画像編集アプリケーションが再生する音は、機械式ダイアルが、その機械式ダイアルが回転される時に出す音である。
いくつかの実施形態における回転可能なUI項目はまた、回転可能なUI項目上のマーキングのセットも含む。マーキングは、回転可能なUI項目が回転された回転の量を示すためのものである。いくつかの実施形態では、固定ノブによって指し示されるマーキングが、回転可能なUI項目が回転された回転の量を示す。
いくつかの実施形態では、画像が表示エリアの縁部に対して回転されていくにつれて、画像編集アプリケーションは、画像の外側エリアを表示エリア内に表示することを回避しつつ、画像のできるだけ多くの部分を表示するために、画像を拡大、及び/又は切り抜く。場合によっては、表示エリアがすでに拡大されている場合には、画像編集アプリケーションは、表示画像が回転されるときに、拡大を行わない。これらの場合には、画像の外側エリアは表示エリア内に表示されることになる。
切り抜き及び角度補正ツールは、ユーザが、回転可能なUI項目をいくつかの異なる方法で回転させることを可能にする。ユーザは、回転可能なUI項目にタッチし、これをドラッグすることによって、ユーザインタフェース項目を回転させることができる。いくつかの実施形態におけるツールはまた、ユーザが、デバイスであって、その上で画像編集アプリケーションが実行しているデバイスを動かすことによって、回転可能なUI項目を回転させることを可能にする。これらの実施形態において、デバイスは、デバイスの動きを検出し、測定する能力を有する構成要素を含む。画像編集アプリケーションは、デバイスが動かされる前に構成要素から配向値を受け取り、その値を記録する。デバイスが動かされている最中に、画像編集アプリケーションは構成要素から配向値を受け取り続ける。画像編集アプリケーションは、記録されている配向値と最新の配向値との差に基づき、回転可能なUI項目を回転させるべき量を計算する。
ユーザはまた、表示された画像上で回転マルチタッチジェスチャを実行することによって、回転可能なUI項目を回転させることもできる。ユーザが、回転の閾値量を超える回転マルチタッチジェスチャを行うと、切り抜き及び角度補正ツールは、回転マルチタッチジェスチャに基づき、回転可能なUI項目及び表示された画像を回転させる。
いくつかの実施形態では、切り抜き及び角度補正ツールは、回転可能なUI項目に加えて、UI項目のセットを追加的に提供する。いくつかの実施形態では、UI項目のセットは、回転可能なUI項目を回転させ、表示された画像を角度補正するために、水平線を利用するためのものである。これらの実施形態において、切り抜き及び角度補正ツールは画像の水平線を検出し、画像内に水平線を表示する。ツールは、UI項目のセット内の1つのUI項目の選択の受け取りに応じて、回転可能なUI項目を回転させ、水平線及び画像を水平にすることによって、画像を角度補正する。ツールは、UI項目のセット内の別のUI項目の選択の受け取りに応じて、回転可能なUI項目を回転させるか又は画像を角度補正せずに、水平線及びUI項目のセットを除去する。
切り抜き及び角度補正ツールは、ユーザが画像をいくつかの異なる方法で切り抜くことを可能にする。ユーザは、画像を切り抜くために、画像の縁部又は角部をドラッグすることができる。ユーザが画像の縁部又は角部を画像の中心に向けてドラッグすると、切り抜き及び角度補正ツールは、画像の縁部又は角部の外側にある画像の部分を切り落とす。一部のこのような実施形態では、切り抜き及び角度補正ツールは、画像の縁部又は角部がドラッグされている最中に、切り抜かれる前の画像のアスペクト比を維持する。いくつかの実施形態では、ユーザは画像を拡大することができ、切り抜き及び角度補正ツールは、画像を拡大する結果として、表示エリアの外側にはみ出す画像の部分を切り落とす。
いくつかの実施形態は、表示された画像の選択されたエリアに効果を適用するための効果ツールを備える画像編集アプリケーションを提供する。いくつかの実施形態では、効果ツールは、ユーザが、指又は同等の入力装置を用いて画像を擦ることによって、効果を適用するべき画像のエリアを選択することを可能にする。いくつかの効果については、効果ツールは、画像の選択されたエリアに、画像のエリアが擦られた回数に関係なく、効果を適用する。このような効果は、欠点除去効果及び赤目除去効果を含む。いくつかの他の効果については、効果ツールは、選択されたエリアに、ユーザが画像のエリアを擦った回数に基づき、効果を漸増的に適用する。このような効果は、飽和、脱飽和、明色化、暗色化、シャープ化、及びソフト化等を含む。
いくつかの実施形態では、効果ツールは画像のそれぞれの画素にマスク値を付与する。効果ツールは、画像の画素を処理するためにマスク値を用いる。画像の選択されたエリアに効果ツールが漸増的に適用する効果のために、効果ツールは、エリアがタッチされるたびにエリアに適用される効果の量を調整するために、選択されたエリア内のそれぞれの画素に付与されたマスク値を変更する。
いくつかの実施形態では、効果ツールは、エリアがタッチされるたびに、エリアに異なる量の効果を適用する。すなわち、エリアがタッチされる1回目の時に効果ツールがエリアに適用する効果の量は、エリアがタッチされる2回目の時に効果ツールがエリアに適用する効果の量と異なる。いくつかの実施形態では、効果ツールがエリアに適用する効果の量は、エリアがタッチされる回数の関数である。関数は、線形、非線形、又は線形関数及び非線形関数の組み合わせであってもよい。
いくつかの実施形態では、効果ツールは、画像の選択されたエリア内の画素のサブセットに効果を選択的に適用する。効果ツールは、画像のエリア内の画素のセットの画像特性に基づき、評価基準のセットを特定する。効果ツールは評価基準を用いて、同様の特性を有する画素を特定する。効果ツールは、特定された評価基準のセットを満たすそれらの画素にのみ効果を適用する。このようにして、効果ツールは画像内の同様の画素群にのみ効果を適用し、画像のエリア内のその他の画素は手を付けずにそのままにしておく。
いくつかの実施形態では、効果ツールは一定サイズのタッチを可能にする。すなわち、ユーザが、表示された画像のロケーションにタッチすると、効果ツールはそのロケーションからある距離以内の画素に効果を適用する。この距離は、画像が表示される表示エリアのサイズに対して一定である。効果の粒度の細かい適用を可能にするために、効果ツールは、ユーザが、タッチがより少数の画素(すなわち、より小さいエリア)を選択するように、画像を拡大することを可能にする。
いくつかの実施形態は、画像に異なる効果を適用するための画像上ツールを備える画像編集アプリケーションを提供する。画像編集アプリケーションは、表示された画像にいくつかの画像上ツールを重ね合わせる。これらの重ね合わせられた画像上ツールはそれゆえユーザに対して可視的である。他の画像上画像ツールはユーザに対して可視的でない。
ティルトシフトツールは、可視的画像上ツールである。いくつかの実施形態におけるティルトシフトツールは、画像上に重ね合わせられる2本の可視水平線を含む。ティルトシフトツールは、上部水平線よりも上にある画像のエリア、及び下部水平線よりも下にある画像のエリアをぼかす。ティルトシフトツールは、ユーザが、2本の水平線の間の空間にタッチし、ドラッグすることによって、両方の水平線を一緒に動かすことを可能にする。ティルトシフトツールは、ユーザが、一方又は両方の線を垂直にドラッグすることによって、2本の水平線の間の距離を調整することを可能にする。
ビネットツールは、画像編集アプリケーションの不可視的画像上ツールである。いくつかの実施形態では、ビネットツールは、画像のそれぞれの画素が、タッチされている画像のロケーションから離れている距離に基づき、画像の画素を暗くする。一部のこのような実施形態では、ビネットツールは、暗色化効果を適用するために、シグモイド関数を用いる。シグモイド関数を用いて、ビネットツールは、ロケーションから第1の距離以内の画像の画素には暗色化効果をほとんど又は全く適用せず、ロケーションから第2の距離だけ離れた画像の画素には最大量の暗色化効果を適用する。ビネットツールは、ロケーションから第1の距離〜第2の距離の間において画素に暗色化効果を段階的に適用する。
いくつかの実施形態におけるビネットツールは、ユーザがタッチした画像のロケーションの周囲に不可視の幾何学形状を画定し、幾何学形状の外側にある画像のエリアを暗くする。ユーザは幾何学形状をサイズ変更することができ、ユーザは画像の他のロケーションにタッチし、他のロケーションに基づきビネット効果を適用することができる。
グラデーションツールは、画像編集アプリケーションの別の不可視的画像上ツールである。グラデーションツールは、表示された画像の最上部から、タッチされている画像のロケーションまでグラデーション効果を適用する。ユーザは、画像の他のロケーションにタッチすることによって、グラデーション効果を適用するべきエリアを画定することができる。
いくつかの実施形態におけるグラデーションツールはいくつかの異なる種類のグラデーション効果を定義し、これらを用いる。グラデーション効果の種類を定義するために、ツールは元の画像に基づき白黒画像を生成する。いくつかの実施形態では、ツールは白黒画像内の1つの色を強調する。次に、ツールは、白黒画像を元の画像と混合することによって、混合画像を生成する。いくつかの実施形態では、ツールは2つの画像を、2つの画像内の対応する画素の画素値を平均することによって、又は2つの画像内の対応する画素の画素値を乗算することによって、混合する。次に、ツールは、混合画像を元の画像とブレンドすることによってブレンド画像を生成する。
以上の要約は、本発明のいくつかの実施形態を簡潔に紹介するためのものである。本明細書に開示されたすべての発明内容の紹介又は概要を意味しない。以下の詳細な説明、及び詳細な説明で引用される図面は、更に、要約で述べた実施形態並びに他の実施形態について述べる。したがって、本明細書で述べる全ての実施形態を理解するために、要約、詳細な説明及び図面の十分な検討が必要とされる。更に、特許請求された内容は、要約、詳細な説明及び図面における実例となる詳細によって限定されず、特許請求された内容は、主題の趣旨から逸脱しない他の特定の形態で実施することができるので、添付の特許請求の範囲によって定義される。
切り抜き及び角度補正ツールの使用を概念的に示したものである。 ティルトシフトツールの使用を概念的に示したものである。 ビネットツールの使用を概念的に示したものである。 切り抜き及び角度補正ツールの使用を概念的に示したものである。 切り抜き及び角度補正ツールの使用を概念的に示したものである。 いくつかの実施形態が、ユーザが画像を角度補正することを可能にするために実行するプロセスを概念的に示したものである。 画像を拡大せずに画像を角度補正することを概念的に示したものである。 その上で画像編集アプリケーションが動作するデバイスを回転させることによって、画像を角度補正することを概念的に示したものである。 いくつかの実施形態が、ユーザがデバイスを回転させることによって画像を角度補正することを可能にするために実行するプロセスを概念的に示したものである。 その上で画像編集アプリケーションが動作するデバイスを回転させることによって、画像を角度補正することを概念的に示したものである。 マルチタッチジェスチャを実行することによって画像を角度補正することを概念的に示したものである。 いくつかの実施形態が、ユーザが画像を角度補正することを可能にするために実行するプロセスを概念的に示したものである。 マルチタッチジェスチャを実行することによって画像を角度補正することを概念的に示したものである。 画像を角度補正するための水平線の利用を概念的に示したものである。 水平線を閉じることを概念的に示したものである。 いくつかの実施形態が、ユーザが水平線を利用することによって画像を角度補正することを可能にするために実行するプロセスを概念的に示したものである。 画像の境界をドラッグすることによって画像を切り抜くことを概念的に示したものである。 いくつかの実施形態が画像を切り抜くために実行するプロセスを概念的に示したものである。 画像を拡大することによって画像を切り抜くことを概念的に示したものである。 画像を拡大し、動かすことによって画像を閲覧することを概念的に示したものである。 画像を拡大し、動かすことによって画像を閲覧することを概念的に示したものである。 選択されたプリセットアスペクト比に基づき画像を切り抜くことを概念的に示したものである。 画像を擦ることによって画像に効果を適用することを概念的に示したものである。 いくつかの実施形態が、ユーザがデバイスを擦ることによって画像を編集することを可能にするために実行するプロセスを概念的に示したものである。 粒度の細かい制御を用いて画像に効果を適用するために画像を拡大することを概念的に示したものである。 画像に赤目除去効果を適用することを概念的に示したものである。 画像を擦ることによって画像に効果を漸増的に適用することを概念的に示したものである。 いくつかの実施形態が、ユーザがデバイスを擦ることによって効果を漸増的に適用することを可能にするために実行するプロセスを概念的に示したものである。 画像をスワイプしながら異なる圧力を加えることによって画像に効果を適用することを概念的に示したものである。 スマートな縁部検出ツールの使用を概念的に示したものである。 いくつかの実施形態が、ユーザが画像に効果を選択的に適用することを可能にするために実行するプロセスを概念的に示したものである。 消しゴムツールの使用を概念的に示したものである。 いくつかの実施形態が、表示された画像のエリアから効果を除去するために実行するプロセスを概念的に示したものである。 グラデーション効果ツールの使用を概念的に示したものである。 いくつかの実施形態が、ユーザが画像にグラデーション効果を適用することを可能にするために実行するプロセスを概念的に示したものである。 ユーザによって選択された画像の一部分に特定のグラデーション効果を適用する画像上グラデーション効果ツールのアーキテクチャを概念的に示したものである。 いくつかの実施形態が、画像にグラデーション効果を適用するために実行するプロセスを概念的に示したものである。 ユーザによって選択された画像の一部分に特定のグラデーション効果を適用する画像上グラデーション効果ツールのアーキテクチャを概念的に示したものである。 いくつかの実施形態が、画像にグラデーション効果を適用するために実行するプロセスを概念的に示したものである。 ティルトシフト効果ツールの使用を概念的に示したものである。 画像上ティルトシフト効果ツールのアーキテクチャを概念的に示したものである。 元の画像及びぼかし画像についてのグラフのセットを示す。 いくつかの実施形態が、画像にティルトシフト効果を適用するために実行するプロセスを概念的に示したものである。 ビネット効果ツールの使用を概念的に示したものである。 いくつかの実施形態が、ユーザが画像にビネット効果を適用することを可能にするために実行するプロセスを概念的に示したものである。 いくつかの実施形態が、ユーザが画像にビネット効果を適用することを可能にするために実行するプロセスを概念的に示したものである。 いくつかの実施形態が、表示された画像内におけるユーザのタッチのロケーションに基づきビネット効果を適用するために実行するプロセスを概念的に示したものである。 いくつかの実施形態の画像編集アプリケーションの異なるGUIを通じて切り抜き及び角度補正ツールを選択及び選択解除することの一例を示す。 いくつかの実施形態の画像編集アプリケーションの異なるGUIを通じて切り抜き及び角度補正ツールを選択及び選択解除することの一例を示す。 いくつかの実施形態の画像閲覧、編集、及び編成アプリケーションのソフトウェアアーキテクチャを概念的に示したものである。 いくつかの実施形態の画像編集アプリケーションのGUIの例を示す。 いくつかの実施形態の画像データ構造を概念的に示したものである。 いくつかの実施形態が実現されるモバイルコンピューティングデバイスのアーキテクチャの例である。 いくつかの実施形態が実現される電子システムを概念的に示したものである。
本発明のいくつかの実施形態は、画像編集アプリケーションの表示エリア上に表示された画像を編集するための新しい画像上編集ツールを提供する。これらの画像上ツールは、ユーザが、画像上ツールにタッチし、これらを操作することによって画像に画像処理操作(例えば、飽和、脱飽和、欠点除去、角度補正、切り抜き等)を適用することを可能にする。
これらの画像上ツールの一部は、いくつかの実施形態の画像編集アプリケーションが、表示された画像に重ね合わせる可視的ツールである。他の画像上ツールは、不可視ツールである。これらの不可視ツールは、ユーザが画像に直接タッチすることによって画像処理操作を適用することを可能にする。
図1は、ユーザが画像上ツールを用いることによって画像を角度補正することを可能にするいくつかの実施形態の画像編集アプリケーションのグラフィカルユーザインタフェース(GUI)100を概念的に示す。具体的には、本図は、ユーザが、画像表示エリア125内に表示された画像を角度補正するべく画像を回転させるために、グラフィカルツールにタッチすることを、3つの異なる段階105〜115において示す。図1は、GUI100は画像表示エリア125及び角度補正ツール120を含むことを示す。
いくつかの実施形態における画像編集アプリケーション(不図示)は画像編集用のソフトウェアアプリケーションである。画像編集アプリケーションは、いくつかの実施形態では、タッチ入力を受け取るためのタッチ又はニアタッチスクリーンを備えるコンピューティングデバイス(例えば、タブレットコンピュータ、スマートフォン等)上で動作する。画像編集アプリケーションは、ユーザが、画像編集アプリケーションの表示エリア内に表示された画像を示すスクリーンにタッチすることによって、画像にタッチすることを可能にする。
画像表示エリア125は、ユーザが画像編集アプリケーションを用いて編集したい画像を表示する。いくつかの実施形態では、画像表示エリア125は、画像表示エリア125内に画像を適合させ、画像を迅速に処理するために、元の画像の解像度よりも低い解像度を有する画像を表示する。
角度補正ツール120は、ユーザが、画像表示エリア125内に表示された画像を回転させるために操作するGUI項目である。いくつかの実施形態では、角度補正ツール120は、ユーザによって可動である(例えば、旋回可能、回転可能、等)幾何学形状として表示される。例えば、図1に示されるように、角度補正ツール120はダイアル(例えば、部分円)である。角度補正ツール120は、ユーザが、ダイアルを旋回させることによって画像を回転させることを可能にする。いくつかの実施形態では、ユーザがダイアルを(例えば、ドラッグ操作又はスワイプ操作によって)一方向に(例えば、左又は右、時計回り、反時計回りに)旋回させるにつれて、角度補正ツール120はそれに応じて、画像表示エリア125内に表示された画像を回転させる。
図1に示されるように、いくつかの実施形態における角度補正ツール120は画像表示エリア125に重なる。他の実施形態では、角度補正ツール120及びディスプレイ125は重ならない。更に、幾何学形状を有する代わりに、又はそれと併用して、いくつかの実施形態における角度補正ツール120は、ユーザが、画像を回転させる数値(例えば、角度の度数)を入力してもよい入力テキストフィールド(不図示)を有する。更に、いくつかの実施形態における角度補正ツール120は、ユーザが、表示された画像を角度補正するためにタッチすることができる、スライダコントロール(例えば、トラック、及びトラックに沿って動くコントロールノブ)も含む。
これより、GUI100を有する画像編集アプリケーションの操作例を説明する。段階105において、画像編集アプリケーションは画像表示エリア125内に画像126を表示する。次に、段階110において、ユーザは角度補正ツール120上に指111を載せる。
第3段階115は、ユーザが角度補正ツール120を右に(すなわち、時計回りに)旋回させた後のGUI100を示す。ユーザが角度補正ツール120を旋回させるにつれて、いくつかの実施形態における角度補正ツール120は、画像表示エリア125内に表示された画像を回転させる。第3段階115に示されるように、ユーザは、表示された画像126を真っ直ぐにするのに(例えば、画像内に示されている建物及び3人の人物をGUI100の画像表示エリア125の水平線と水平にするのに)ちょうど足りるだけ角度補正ツールを旋回させた。
図2は、ユーザが、表示された画像に、画像にタッチすることによってティルトシフト効果(すなわち、選択的焦点効果)を適用することを可能にするいくつかの実施形態の画像編集アプリケーションのGUI200を概念的に示す。具体的には、本図は、ユーザが、重ね合わせられたUI制御部であるティルトシフトツール211にタッチしてこれを操作することによって、画像225にティルトシフト効果を適用することを、4つの異なる段階205〜220において示す。図示されているように、図2は、GUI200は画像表示エリア225を含むことを示す。
画像表示エリア225は、ユーザが画像編集アプリケーションを用いて編集したい画像を表示する。いくつかの実施形態では、画像編集アプリケーションは、ユーザが、表示された画像にタッチし、ティルトシフトツール211を操作することによって、画像にティルトシフト効果を適用することを可能にする。画像編集アプリケーションは、画像表示エリア225内に表示された画像にティルトシフトツール211を重ね合わせる。
いくつかの実施形態では、ティルトシフトツール211は、画像編集アプリケーションが、表示された画像230上におけるユーザのタッチを受け取ることに応答して、表示された画像230上に重ね合わせる2本の平行線(上部及び下部平行線)を含む。いくつかの実施形態では、ユーザが、表示された画像にタッチしながら指を動かすと、ティルトシフトツールは2本の平行線を表示する。ティルトシフトツール211は2本の平行線を既定の距離(例えば、数百画素)離して配置する。次に、ティルトシフトツール211は、上部平行線よりも上にある画像の部分及び下部平行線よりも下にある画像の部分をぼかす。その結果、2本の線の間の画像の部分は、画像の残りの部分の鮮明さと比べて鮮明に見える。
いくつかの実施形態におけるティルトシフトツール211は、ユーザが画像にタッチすることによって2本の平行線の間の距離を調整することを可能にする。ユーザは、2本の平行線上で、拡大ジェスチャ(例えば、画像にタッチしながら2本の指を広げて離すこと)を実行することによって、距離を増加させることができる。ユーザは、ピンチジェスチャ(例えば、画像にタッチしながら2本の指を互いに引き寄せること)を実行することによって、距離を減少させることができる。また、ユーザは、2本の平行線のうちの一方又は両方を動かすことによって(例えば、ドラッグすることによって)、距離を増加又は減少させることもできる。ティルトシフトツール211はまた、ユーザが、2本の線の間の空間にタッチしてこれをドラッグすることによって、2本の平行線を一緒に動かすことも可能にする。
これより、GUI200を有する画像編集アプリケーションの操作例を説明する。段階205において、画像編集アプリケーションは画像表示エリア225内に画像230を表示する。第2段階210は、ユーザが画像の垂直中心よりも少し下の画像エリアにタッチした後のGUI200を示す。この段階において、ティルトシフトツール211は2本の平行線を、タッチされたエリアの中心が2本の平行線から等距離となるように、画像上に配置した。ティルトシフトツール211はまた、上部平行線よりも垂直上方にある画像の部分及び下部平行線よりも垂直下方にある画像の部分をぼかした。
段階215において、ユーザは、2本の平行線を広げて更に離すために、指212及びもう1本の指213を使い、画像上で拡大ジェスチャ実行した。上部線及び下部線は両方とも移動した。上部線は上に移動し、下部線は下に移動した。その結果、2本の平行線の間の画像の部分はより大きくなっており、ティルトシフトツールは画像のこの部分はぼかさない。
第4段階220は、ユーザが画像230から指212及び213を上げた後のGUI200を示す。2本の平行線は、これらの2本の線は操作可能であることを示すために、可視のまま残っている。ユーザが画像編集アプリケーションの編集モードを終了すると、2本の平行線は画像230から消える。
図3は、ユーザが、画像表示エリア内に表示された画像に、画像にタッチすることによって画像処理操作を適用することを可能にするいくつかの実施形態の画像編集アプリケーションのGUI300を概念的に示す。具体的には、本図は、ユーザが、画像にタッチすることによって、画像の部分にグラデーション効果を適用することを、3つの異なる段階305〜315において示す。図3は、GUI300は画像表示エリア325を含むことを示す。
画像表示エリア325は、ユーザが画像編集アプリケーションを用いて編集したい画像を表示する。いくつかの実施形態では、画像編集アプリケーションは、ユーザが、画像のエリアにタッチすること又は指を下方へ表示エリア325の底部までスワイプすることによって、表示された画像にグラデーション効果を適用することを可能にする。ユーザが画像のロケーションにタッチすると、画像編集アプリケーションは画像の最上部から画像内のタッチの垂直ロケーションまでグラデーション効果を適用する。すなわち、画像編集アプリケーションは、効果(例えば、明色化、暗色化、色の適用、等)の程度を画像の最上部からタッチのロケーションまで変化させる。
ユーザが画像をスワイプダウンすると(例えば、画像にタッチしながら指を下方へドラッグすると)、画像編集アプリケーションは画像の最上部から、指があった最も低い垂直ロケーションまでグラデーション効果を適用する。画像編集アプリケーションはまた、ユーザが、グラデーション効果が適用されているエリアを縮小するために、グラデーション効果が適用されている最も低い垂直ロケーションよりも垂直上方にあるロケーションを上方へスワイプするか又はそこにタッチすることも可能にする。
いくつかの実施形態では、画像編集アプリケーションは、ユーザが操作することができる可視水平線を示さない。しかし、グラデーション効果が適用された画像の上部、及びグラデーション効果が適用されていない画像の底部は、上部の効果のおかげで視覚的に識別可能である。それゆえ、上部及び底部を分離する可視的な境界(又は可視的な水平の帯)が存在する。この境界はユーザに視覚的な手がかりを提供し、ユーザが「不可視的」効果ツールを操作することを可能にする。
これより、GUI300を有する画像編集アプリケーションの操作例を説明する。段階305において、画像編集アプリケーションは画像表示エリア345内に画像330を表示する。段階310において、ユーザは、指311で画像330の最上部の近くのロケーションにタッチしたか、又は画像330にタッチしながら指311を下方へそのロケーションまでドラッグした。画像編集アプリケーションは画像330の最上部から、指311があるロケーションまでグラデーション効果を適用した。指311よりも上にある画像の部分は、この部分にグラデーション効果が適用されたことを示すために、以前よりも暗く描画されている。
第3段階315は、ユーザが、画像330の底部により近い画像のロケーションにタッチしたか、又は画像330にタッチしながら指311をこのロケーションまでドラッグした後のGUI300を示す。画像編集アプリケーションは、前の段階310において指311があった垂直ロケーションから、現在の段階315における指311の垂直ロケーションまでグラデーション効果を適用した。指311よりも上にある画像の部分は、この部分にグラデーション効果が適用されたことを示すために、以前よりも暗く描画されている。
以下のセクションにおいて、画像上編集ツールのいくつかのより詳細な実施形態を説明する。セクションIは、いくつかの実施形態の画像切り抜き及び角度補正ツールを説明する。次に、セクションIIは、画像を擦ることによって、又は画像のエリアを選択することによって、画像に画像処理操作を適用することを可能にするいくつかの画像上編集ツールを説明する。セクションIIIは、画像に特殊効果を適用することを可能にするいくつかの可視的画像上ツール及び不可視的画像上ツールを説明する。その後、画像編集アプリケーションのための代替的なUIレイアウトを説明するセクションIVが続く。セクションVは、いくつかの実施形態の画像編集アプリケーションのソフトウェアアーキテクチャを説明する。次に、セクションVIは、いくつかの実施形態の画像編集アプリケーションは、画像閲覧、編集、及び編成アプリケーションでもあることを説明する。最後に、セクションVIIは、本明細書に記載されているいくつかの実施形態を実装するいくつかの電子システムについて説明する。
I.画像上角度補正及び切り抜きツール
A.画像上角度補正
図4Aは、ユーザが画像上ツールを用いることによって画像を角度補正することを可能にするいくつかの実施形態の画像編集アプリケーションのGUI400を概念的に示す。具体的には、本図は、ユーザが画像を角度補正するべく画像を回転させるためにグラフィカルツールにタッチすることを、6つの異なる段階401〜406において示す。図示されているように、図1は、GUI400は、画像表示エリア410、コレクション表示エリア415、ツール選択ペイン420、ツール表示エリア425、及び制御ペイン430を含むことを示す。
画像表示エリア410は、ユーザが画像編集アプリケーションを用いて編集したい画像を表示する。コレクション表示エリア415は、画像編集アプリケーションを用いて編集するために利用可能である画像のサムネイルのコレクションを表示する。ユーザがコレクション表示エリア415内のサムネイルを(例えば、タッチすることによって)選択すると、画像編集アプリケーションは、画像表示エリア410内の選択されたサムネイルによって表されている画像を表示する。いくつかの実施形態における画像は、もともとはデジタル写真デバイス(例えば、デジタルカメラ)によって撮影されたデジタル写真画像、デジタルスキャンされた写真画像、又はデジタル的に作成された任意の画像である。
いくつかの実施形態におけるツール選択ペイン420は、画像編集アプリケーションの異なる編集ツールセットを表すアイコンのセットを表示する。ユーザがツール選択ペイン420内のアイコンを(例えば、タッチすることによって)選択すると、画像編集アプリケーションは、ツール表示エリア425内及び/又は画像表示エリア410内の対応するツールのセットを表示する。いくつかの実施形態における画像編集アプリケーションは、どのツールのセットが現在選択されているのかを示すための視覚的な合図を提供する。例えば、画像編集アプリケーションは、選択されたアイコンを強調表示する。いくつかの実施形態では、ツール選択ペイン420内に表示されている最左端のアイコン421は画像上切り抜き及び角度補正ツールを表す。ユーザがアイコン421を選択すると、いくつかの実施形態における画像編集アプリケーションは切り抜き及び角度補正ツールを起動する。すなわち、画像編集アプリケーションは、画像表示エリア内の画像へのユーザ入力(例えば、タッチ入力)の一部を、起動されたツールへの入力として扱う。画像編集アプリケーションはまた、アイコン421の選択に応答してツール表示エリア425内に角度補正ツール430も表示する。
角度補正ツールは、ユーザが、画像表示エリア410内に表示された画像を角度補正することを可能にする。画像の角度補正とは、画像内の物体及び人物を写真の一方の側に傾いて見えないようにすることを意味する。いくつかの実施形態における角度補正ツールはまた、角度補正された画像のために元の画像のアスペクト比を維持するため、及び最終的な切り抜き内に元の画像の外側のエリアを含むことを回避するために、画像が角度補正されていくにつれて、画像を拡大し、及び/又はそれを切り抜く。
角度補正ツールは、表示された画像を角度補正するための多数の異なる方法を提供する。例えば、いくつかの実施形態の角度補正ツールはダイアル435を含む。角度補正ツールは、ユーザが、ダイアル435を旋回又は回転させることによって、表示された画像を角度補正することを可能にする。いくつかの実施形態では、角度補正ツールは、表示された画像を、ダイアル435が旋回又は回転している方向に(例えば、時計回り又は反時計回りに)回転させる。角度補正ツールは、表示された画像を、ダイアル435が旋回又は回転する量だけ回転させる。
いくつかの実施形態では、ダイアル435は、ダイアル435の旋回又は回転の量を示すためのマーキング及び数字を有する。ダイアル435はまた、基準系を提供するために、ダイアル435が回転するときに動かない固定ノブ460も有する。固定ノブ460によって指し示されるか又はそれと一直線に並んだ数字又はマーキングは、ダイアル435の旋回又は回転の量を示す。いくつかの実施形態におけるダイアル435上の数字は、度数若しくはラジアン、又は回転の角度若しくは量を表すことができる任意のその他の好適な単位で角度を表す。数字の符号(すなわち、負又は正)は回転の方向を示す。いくつかの実施形態では、負の数字は、ダイアル435及び表示された画像が時計回りに回転したことを示す。正の数字は、ダイアル435及び表示された画像が反時計回りに回転したことを示す。
異なる実施形態は、ユーザのタッチの方向、ダイアル435の回転の方向、画像の回転の方向、及びダイアル435内で示される数字の符号の間の関係を異なって定義する。例えば、いくつかの実施形態では、画像編集アプリケーションは、表示された画像を、ダイアル435の回転の方向とは反対である方向に回転させる。更に、ダイアル435上の正の数字は、表示された画像の時計回りの回転を示す場合もあり、ダイアル435上の負の数字は、表示された画像の反時計回りの回転を示す場合もある。
いくつかの実施形態では、画像編集アプリケーションは、ユーザがダイアル435を旋回させている最中に可聴的合図をユーザに提供するために、音声を再生する。画像編集アプリケーションが再生する音声は、いくつかの実施形態では、機械式ダイアルが、この機械式ダイアルが旋回又は回転されている時に出す音である。
いくつかの実施形態におけるダイアル435は、ユーザがツール選択ペイン420内のアイコン421を選択した時に、ツール表示エリア425内に表示される。他の実施形態では、画像編集アプリケーションは、ダイアル435が、画像表示エリア410内に表示された画像に部分的に重なるように、ダイアル435を画像表示エリア410内に表示する。画像編集アプリケーションはまた、ダイアルを、GUI400の異なる部分内に異なる形状及びサイズで表示する場合もある。例えば、ダイアル410は、画像表示エリア410の角部内において完全な円形状を有するように表示されてもよい。
ユーザのアイコン421の選択に応答して画像編集アプリケーションが切り抜き及び角度補正ツールを起動すると、いくつかの実施形態における画像編集アプリケーションは、画像表示エリア410内に表示された画像の上にグリッド線450のセットを表示する。グリッド線450は、切り抜き及び角度補正ツールが起動されていることを示し、また、ユーザが、表示された画像を切り抜く際の案内も提供する。いくつかの実施形態におけるグリッド線450は画像表示エリア410を3×3のグリッドに変える。いくつかの実施形態では、画像編集アプリケーションは、ユーザが、表示された画像にタッチするまで、グリッド線450のセットを表示しない。いくつかの実施形態では、画像編集アプリケーションは、ダイアル435が旋回されるまで、グリッド線450のセットを表示しない。
グリッド線450のセットに加えて、画像編集アプリケーションは、ユーザがダイアル435を旋回させ始めると、グリッド線455の別のセットを表示する。このグリッド線455の追加のセットは、ユーザが、表示された画像を角度補正しようと試みるときに、追加の視覚補助を提供する。例えば、表示された画像内に示された物体又は人物がグリッド線と直交すると、ユーザは、表示された画像が角度補正されたことが分かる。いくつかの実施形態におけるグリッド線450及び455は相まって画像ディスプレイ410を9×9のグリッドに変える。当業者は、グリッド線450及び455が表示エリアを変えて成すグリッドは、必ずしも3×3又は9×9のような特定の寸法を有する必要はなく、任意の異なる寸法を有し得ることを認識するであろう。更に、いくつかの実施形態における画像編集アプリケーションはグリッド線450及び455を異なる色で描画する。例えば、グリッド線450は白色であり、グリッド線455は黄色である。
制御ペイン430は、アイコンの選択に応答して画像編集アプリケーションが実行する異なる操作を表す異なるアイコンのセットを表示する。いくつかの実施形態における制御ペイン430は、コレクション表示エリア415内にサムネイルが表示されている画像のコレクションの名前を表示する。制御ペイン430は、画像表示エリア425内に表示されている画像の名前(例えば、ファイル名)を表示してもよい。
これより、GUI400を含む画像編集アプリケーションの操作例を説明する。第1段階401は、指441でサムネイル440にタッチすることによるユーザのサムネイル440の選択を示す。画像編集アプリケーションは、サムネイル440の選択に応答して、サムネイル440によって表されている画像445を画像表示エリア410内に表示する。
段階402において、次に、ユーザは、ツール選択ペイン420内に表示されているアイコン421を選択する。それに応答して、画像編集アプリケーションは段階403において切り抜き及び角度補正ツールを起動する。画像編集アプリケーションはアイコン421を強調表示する。画像編集アプリケーションはまた、ツール表示エリア425内にダイアル435も表示し、画像表示エリア410内にグリッド線450も表示する。固定ノブ460によって指し示されたダイアル435上の数字は「0」を示しており、ダイアル435はどちらの方向にも全く旋回されていないことを示している。
段階404において、ユーザはダイアル425の一部分上に指441を載せ、ダイアルを時計回りに(すなわち、右に)旋回させ始める。いくつかの実施形態における画像編集アプリケーションは、ユーザが指441を載せるか又はユーザがダイアル435を旋回させ始めると、グリッド線455を表示する。
次の段階405は、ユーザがダイアル435を時計回りに旋回させた後のGUI400を示す。切り抜き及び角度補正ツールは、表示された画像445を時計回りにダイアル435の回転の量だけ旋回させた。本例では、固定ノブ460によって指し示されている「−10」、ダイアル435及び表示された画像445が時計回りに10度回転したことを示す。段階405はまた、角度補正ツールは、回転される前に画像445の外側にはみ出している部分を表示エリア410内に表示することを回避するために、画像445を拡大し(そのため、画像内の自転車はより大きく見える)、それを切り抜いたことも示す。すなわち、もし、角度補正ツールが切り抜き及び拡大を行わずに画像445を回転させたならば、画像445の外側にはみ出している部分を画像表示エリア410内に表示しなければならなくなるであろう。図示されているように、いくつかの実施形態における角度補正ツールは、ダイアル435が回転されるにつれて、画像を表示エリア410の縁部に対して回転させる。すなわち、画像内に示されている物体及び人物のみが画像表示エリア410の縁部に対して回転され、それにより、物体及び人物が傾いて見えないようにする。
最終段階406は、ユーザがダイアル435から指441を上げ、ダイアル435にもはやタッチしなくなった後のGUI400を示す。ダイアル435はもはやタッチされていないので、画像編集アプリケーションはグリッド線455も除去した。
図4Bは、ユーザが画像上ツールを用いることによって画像を角度補正することを可能にするいくつかの実施形態の画像編集アプリケーションのGUI400を概念的に示す。本図は、ユーザが画像を角度補正するべく画像を回転させるためにグラフィカルツールにタッチすることを、6つの異なる段階401a〜406aにおいて示す。具体的には、図4Bは、内側表示エリア480aを有するいくつかの実施形態のGUI400を示す。
いくつかの実施形態の画像表示エリア410は内側表示エリア480aを含む。いくつかの実施形態の画像編集アプリケーションは、画像が時計回り又は反時計回りに回転されている最中に、画像の境界を内側表示エリア480a内に表示することを回避しつつ、表示された画像の最大限の部分が内側表示エリア480a内に表示されるように、表示された画像のための拡大レベルを調整する。いくつかの実施形態では、画像が回転されている最中に、内側表示エリア480aの外側にある表示エリア410のエリア内に画像の境界が表示される。このエリアは表示エリア410の外側エリアと呼ばれる。また、いくつかの実施形態では、表示エリア410の外側エリア内に入る画像の部分は薄く見える。内側表示エリア480aは、以下において(例えば、図9、12、及び13を参照して)説明されている実施形態の画像編集アプリケーションに適用可能である。
これより、GUI400を含む画像編集アプリケーションの操作例を説明する。第1段階401a及び第2段階402aは、図4Aを参照して上述された段階401及び段階402と同一である。段階402aにおけるアイコン421の選択に応答して、画像編集アプリケーションは段階403aにおいて切り抜き及び角度補正ツールを起動する。画像編集アプリケーションは表示エリア410内に内側表示エリア480aを表示する。いくつかの実施形態では、内側表示エリア480aは表示エリア410よりも小さく、画像編集アプリケーションは内側表示エリア480aを表示エリア410の中心に表示する。
画像編集アプリケーションは内側表示エリア480a内に画像445を表示する。画像編集アプリケーションはアイコン421を強調表示する。画像編集アプリケーションはまた、ツール表示エリア425内にダイアル435も表示し、内側表示エリア480a内にグリッド線450も表示する。固定ノブ460によって指し示されたダイアル435上の数字は「0」を示しており、ダイアル435がどちらの方向にも全く旋回されていないことを示している。
段階404aにおいて、ユーザはダイアル425の一部分上に指441を載せ、ダイアルを時計回りに(すなわち、右に)旋回させ始める。いくつかの実施形態における画像編集アプリケーションは、ユーザが指441を載せるか又はユーザがダイアル435を旋回させ始めると、内側表示エリア480a内にグリッド線455を表示する。
次の段階405aは、ユーザがダイアル435を時計回りに旋回させた後のGUI400を示す。切り抜き及び角度補正ツールは、表示された画像445を時計回りにダイアル435の回転の量だけ旋回させた。本例では、固定ノブ460によって指し示されている「−5」は、ダイアル435及び表示された画像445が時計回りに5度回転したことを示す。段階405aはまた、角度補正ツールは、画像の境界を内側表示エリア480a内に表示することなく画像445の最大限の部分が内側表示エリア480a内に表示されるように、画像を拡大したことも示す(そのため、画像内の自転車はより大きく見える)。図示されているように、内側表示エリア480aの外部へはみ出す画像の他の部分は外側エリア485a(すなわち、内側表示エリア480aの外側にある表示エリア410の領域)内に表示される。画像455の上部及び側部境界の部分も表示エリア410の外側エリア485a内に表示される。
最終段階406aは、ユーザがダイアル435を時計回りに更に旋回させた後のGUI400を示す。切り抜き及び角度補正ツールは、表示された画像445を時計回りにダイアル435の回転の量だけ旋回させた。本例では、固定ノブ460によって指し示されている「−10」は、ダイアル435及び表示された画像445はすぐ前の段階405a以降、追加の5度だけ時計回りに回転したことを示す。段階406aはまた、角度補正ツールは、画像の境界を内側表示エリア480a内に表示することなく、この特定の画像の回転量のために画像445の最大限の部分が内側表示エリア480a内に表示されるように、画像の拡大レベルを変更したことも示す(そのため、画像内の自転車はより大きく見える)。図示されているように、画像編集アプリケーションが画像455を更に拡大したために、自転車は、それが前の段階405aにおいて見えていたよりも大きく見える。いくつかの実施形態では、ユーザがダイアルから指を上げると、グリッド線455は消えるであろう。
図5は、ユーザが、画像編集アプリケーションのグラフィカルユーザインタフェース項目(例えば、図4A及び4Bを参照して上述されているダイアル435)を操作することによって画像を角度補正することを可能にするために、いくつかの実施形態が実行するプロセス500を概念的に示す。いくつかの実施形態におけるプロセス500は画像編集アプリケーションによって実行される。ユーザからのタッチ入力を受け取るためのタッチセンシティブスクリーン又はニアタッチセンシティブスクリーンを有するコンピューティングデバイス上で画像編集アプリケーションが動作すると、プロセス500は開始する。プロセス500は(505において)、画像編集アプリケーションの画像表示エリア(例えば、上述の表示エリア410又は内側表示エリア480a)内に画像を表示することによって始まる。
次に、プロセス500は(510において)画像編集アプリケーションのエリア内に幾何学形状を表示する。いくつかの実施形態では、プロセス500は画像表示エリア(例えば、画像表示エリア410)内に幾何学形状を少なくとも部分的に表示する。他の実施形態では、プロセス500は、幾何学形状及び表示された画像が重ならないように、幾何学形状を表示する。異なる実施形態は、表示するべき異なる幾何学形状を用いる。例えば、プロセス500は、ダイアル形状(例えば、部分円形状)を、表示するべき幾何学形状として用いる。
次に、プロセス500は(515において)、幾何学形状はいくらかのタッチ入力を受け取ったかどうかを判定する。すなわち、プロセスは(515において)、ユーザは、(幾何学形状を示すタッチセンシティブスクリーン又はニアタッチセンシティブスクリーンのエリアにタッチすることによって)幾何学形状にタッチしたのかどうかを判定する。プロセス500が(515において)、幾何学形状はタッチ入力を全く受け取らなかったと判定した場合には、プロセス500は、幾何学形状上におけるタッチ入力を待つために、515へループする。
プロセス500が(515において)、幾何学形状はタッチ入力を受け取ったと判定した場合には、プロセスは、受け取ったタッチ入力に基づき幾何学形状を動かすために、520へ進む。例えば、ユーザが幾何学形状を左から右へスワイプすると、プロセス500は幾何学形状を右へ(すなわち、時計回りに)回転させる。同様に、ユーザが幾何学形状を右から左へスワイプすると、プロセス500は幾何学形状を左へ回転させる。
次に、プロセス500は(525において)、幾何学形状の動きに基づき、表示された画像を回転させる。いくつかの実施形態では、プロセス500は、幾何学形状が回転した量に比例する量(例えば、角度の度数)だけ、表示された画像を回転させる。次に、プロセスは終了する。
これまでに説明されたいくつかの実施形態の切り抜き及び角度補正ツールは、画像が角度補正されていくにつれて、表示された画像を拡大する。場合によっては、切り抜き及び角度補正ツールは、表示された画像が角度補正されていくにつれて、拡大を行わない。
図6は画像編集アプリケーションのGUI400を示す。具体的には、本図は、GUI400が、表示された画像610上で拡大を行った場合には、角度補正ツールは、画像を角度補正するのに先立って、画像610上で拡大を行わないことを、6つの異なる段階601〜606において示す。
いくつかの実施形態では、画像編集アプリケーションは、ユーザが、画像上で拡大ジェスチャを実行すること(例えば、2本の指をくっつけて画像にタッチし、次に、画像にタッチしながら指を広げること)によって、表示された画像を拡大することによって、表示エリア410内に表示された画像を切り抜くことを可能にする。画像編集アプリケーションが画像を拡大すると、画像の一部の部分は、それらの部分は画像表示エリアの外部へはみ出すことになるため、画像表示エリア410内に表示されなくなる。いくつかの実施形態における画像編集アプリケーションは画像のこれらの部分を切り落とす(すなわち、これらの部分を画像からトリミングする)。
画像編集アプリケーションが、表示された画像を拡大した後に、画像が角度補正される場合には、いくつかの実施形態の角度補正ツールは、画像を角度補正するために角度補正ツールが画像を回転させるときに、追加的に拡大を行わない。これは、角度補正ツールが画像を角度補正するときには、角度補正ツールは画像の切り落とされた部分を用いることができるためである。
これより、画像編集アプリケーションの操作例を説明する。段階601において、画像610が画像表示エリア410内に表示される。アイコン421は、切り抜き及び角度補正ツールが起動されていることを示すために、強調表示される。固定ノブ460によって指し示されたダイアル435上の数字は0であり、ダイアル435が回転されていないことを示している。画像表示エリア410内にはグリッド線450も表示される。
段階602において、ユーザは2本の指で画像610にタッチする。段階603において、ユーザは画像610にタッチしながら指を広げて離す。切り抜き及び角度補正ツールは画像を拡大し、それにより、画像表示エリア410内に収まることができない画像の部分を切り落とす。
段階604において、ユーザはダイアル435上に指を載せ、画像610を回転させ始める。追加のグリッド線455が画像表示エリア410内に表示される。次の段階605は、ユーザがダイアル435を時計回りに旋回させた後のGUI400を示す。切り抜き及び角度補正ツールはそれに応じて、表示された画像610を時計回りに旋回させたが、段階603において切り落とされた画像の部分を用いることによって、画像610をこれ以上拡大しなかった。固定ノブ460によって示された数字は、ダイアル435及び画像610は時計回りに10度回転したことを示している。
最終段階605は、ユーザがダイアル435から指441を上げ、ダイアル435にもはやタッチしなくなった後のGUI400を示す。ダイアル435はもはやタッチされていないので、画像編集アプリケーションはグリッド線455も除去した。
これまでに説明されたいくつかの実施形態の切り抜き及び角度補正ツールは、ユーザが、ダイアルにタッチすることによって、表示された画像を角度補正することを可能にする。切り抜き及び角度補正ツールは他のダイアル調節手段を提供する。図7は、いくつかの実施形態の画像編集アプリケーションが動作するコンピューティングデバイス700を概念的に示す。具体的には、本図は、ユーザが、コンピューティングデバイス700を旋回又は回転させることによって、重ね合わせられた角度補正ツールを操作することによって、表示された画像を回転させることを、3つの異なる段階705〜715において示す。図7は、画像表示エリア725及び角度補正ツール730を含む画像編集アプリケーションのGUIを示す。
コンピューティングデバイス700は、タッチ入力を受け取るためのタッチセンシティブスクリーン又はニアタッチセンシティブスクリーンを有する。コンピューティングデバイス700のいくつかの例としては、タブレットコンピュータ(例えば、Apple iPad(登録商標))及びスマートフォン(例えば、Apple iPhone(登録商標))が挙げられる。コンピューティングデバイス700はまた、コンピューティングデバイス700の動きを検出及び測定する1つ以上のデバイス(例えば、ジャイロスコープ、加速度計等)も有する。いくつかの実施形態では、画像編集アプリケーションは、コンピューティングデバイス700の動きを検出及び測定するために、これらのデバイスを用いる。例えば、画像編集アプリケーションはコンピューティングデバイス700のジャイロスコープ(不図示)から配向値を受け取る。いくつかの実施形態では、これらの配向値はx軸配向値、y軸配向値、及びz軸配向値を含む。ここで、z軸は地表と直交し、x軸及びy軸は地表と平行である。それゆえ、コンピューティングデバイス700が地表レベルから同じ高さにおいて回転される場合には(例えば、コンピューティングデバイス700が、地表上で水平であるテーブルの上で回転される場合には)、z軸配向値のみが変化する。
GUI720は、図1を参照して上述されているGUI100と同様である。また、画像表示エリア725は画像表示エリア125と同様であり、角度補正ツール730は角度補正ツール120と同様である。角度補正ツール730は、画像表示エリア725内に表示された画像の回転の量を示すためのマーキング731を有する。
いくつかの実施形態では、いくつかの実施形態における画像編集アプリケーションは、ユーザが、コンピューティングデバイス730を動かすこと(例えば、旋回させること、回転させること等)によって、角度補正ツール730を操作することを可能にする。画像編集アプリケーションは、コンピューティングデバイス730がユーザによって動かされる前のコンピューティングデバイス730の全ての3つのx、y、及びz軸あるいは少なくともz軸についての初期配向値を記録する。ユーザがコンピューティングデバイス730を旋回させると(例えば、その配向を変化させると)、いくつかの実施形態における画像編集アプリケーションは、記録されているコンピューティングデバイス730の初期配向値(特に、z軸配向値)に対する角度補正ツール130の配向を保持する。その結果、角度補正ツール730は、ユーザがコンピューティングデバイス700を旋回させるにつれて、コンピューティングデバイス730の変化する配向に対して旋回する。
角度補正ツール730は、画像表示エリア725内に表示された画像を、角度補正ツール730が回転した量に応じて、コンピューティングデバイス730の変化する配向に対して回転させる。その結果、いくつかの実施形態の画像編集アプリケーションは、コンピューティングデバイスが動かされている最中に、表示された画像の配向をコンピューティングデバイスの初期配向に対して保持する。
これより、角度補正ツール730を有する画像編集アプリケーションの操作例を説明する。第1段階705は、ユーザはコンピューティングデバイス700を動かないように保持し、画像編集アプリケーションは画像表示エリア720内に画像726を表示していることを示す。ここでは、コンピューティングデバイス730は、本例では地表と水平であるテーブル上に置かれていることを前提とされている。角度補正ツール730のマーキング731はそれらのそれぞれの初期位置にある。画像編集アプリケーションは、コンピューティングデバイス700が動かされる前のコンピューティングデバイス700のz軸配向を(例えば、コンピューティングデバイス700のメモリ内に)記録する。
段階110において、ユーザは、表示された画像内に示されている人及び建物がコンピューティングデバイス700の現在の配向に対して角度補正されるまで、コンピューティングデバイス700を図示のように左へ傾ける。ユーザがコンピューティングデバイスを左へ旋回させるにつれて、画像編集アプリケーションは、コンピューティングデバイス700のジャイロスコープ(不図示)から、コンピューティングデバイス700がコンピューティングデバイス700の初期配向から回転した量を受け取る又は取得する。画像編集アプリケーションは角度補正ツール730を、コンピューティングデバイス730の変化する配向に対して右へ旋回させる。マーキング731は、角度補正ツール730が右へ旋回したことを示すために、右へ回転している。角度補正ツール730は、角度補正ツール730が回転した量に応じて、画像710を右へ回転させる。
画像編集アプリケーションはまた、ユーザは、コンピューティングデバイス700を回転させることによって、角度補正ツール730及び表示された画像を回転させようと意図していないことを示すユーザ入力も受け取る。このような入力を受け取ると、画像編集アプリケーションは、ユーザがコンピューティングデバイス700を更に回転させたときに、角度補正ツール730及び表示された画像を回転させない。
第3段階715において、ユーザは、コンピューティングデバイス730の現在の配向が、コンピューティングデバイス730の記録されている初期配向と同じになるように、角度補正ツール730を旋回させた。図示されているように、表示された画像は角度補正された。すなわち、表示された画像内に示されている人及び建物は画像表示エリア725の縁部と直交している。
図8は、ユーザが、コンピューティングデバイス上で動作する画像編集アプリケーションのグラフィカルユーザインタフェース項目を操作することによって画像を角度補正することを可能にするために、いくつかの実施形態が実行するプロセス800を概念的に示す。いくつかの実施形態におけるプロセス800は画像編集アプリケーションによって実行される。コンピューティングデバイスの動きを検出及び測定する1つ以上のデバイス(例えば、ジャイロスコープ、加速度計等)を有するコンピューティングデバイス上で画像編集アプリケーションが動作すると、プロセス800は開始する。プロセス800は、(805において)画像編集アプリケーションの画像表示エリア内に画像を表示することによって、始まる。画像表示エリアの例としては、図7を参照して上述されている画像表示エリア725が挙げられる。
次に、プロセス800は(810において)画像編集アプリケーションのエリア内に幾何学形状を表示する。いくつかの実施形態では、プロセス800は画像表示エリア内に幾何学形状を少なくとも部分的に表示する。他の実施形態では、プロセス800は、幾何学形状及び表示された画像が重ならないように、幾何学形状を表示する。異なる実施形態は異なる幾何学形状を表示する。例えば、プロセス800はダイアル形状(例えば、部分円形状)を幾何学形状として表示する。
次に、プロセス800は(815において)、コンピューティングデバイスは動いたかどうかを判定する。いくつかの実施形態では、プロセス800はコンピューティングデバイスのジャイロスコープから配向情報を受け取り又は取得し、配向情報を用いて、コンピューティングデバイスは動いたかどうかを判定する。プロセス800はまた、コンピューティングデバイスの現在の配向を包含する配向情報も保持する。プロセス800は、特定の軸に対するコンピューティングデバイスの動きを判定するために、コンピューティングデバイスの現在の配向と、コンピューティングデバイスの以前に記録された配向とを比較する。プロセスは、特定の軸に対する配向が変化していない場合には、コンピューティングデバイスは特定の軸に対して動かなかったと判定する。
プロセス800が(815において)、コンピューティングデバイスは動かなかったと判定すると、プロセス800は、コンピューティングデバイスの動きを待つために、815へループする。プロセス800が(815において)、コンピューティングデバイスは動いたと判定すると、プロセスは、コンピューティングデバイスの動きに基づき幾何学形状を動かすために、820へ進む。例えば、ユーザがコンピューティングデバイスを左へ傾けた場合には、プロセス800は、コンピューティングデバイスの記録されている初期回転に対して幾何学形状を右へ回転させる。同様に、ユーザがコンピューティングデバイスを右へ傾けた場合には、プロセス820は幾何学形状を左へ回転させる。
次に、プロセス800は(825において)、幾何学形状の動きに基づき、表示された画像を回転させる。いくつかの実施形態では、プロセス800は、幾何学形状が回転した量に比例する量(例えば、角度の度数)だけ、表示された画像を回転させる。次に、プロセスは終了する。
図9は、いくつかの実施形態の画像編集アプリケーションが動作するコンピューティングデバイス900を概念的に示す。具体的には、本図は、ユーザが、コンピューティングデバイス900を旋回又は回転させることによって、ダイアル435を操作することによって、表示された画像910を回転させることを、7つの異なる段階901〜907において示す。図示されているように、図9は、コンピューティングデバイスは、GUI400を有するいくつかの実施形態の画像編集アプリケーションを動作させることを示す。
コンピューティングデバイス900は、コンピューティングデバイス900の動きを検出及び測定する1つ以上のデバイス(例えば、ジャイロスコープ、加速度計等)を含む点において、コンピューティングデバイス900は、図7を参照して上述されているコンピューティングデバイス700と同様である。
画像編集アプリケーションはまた、ユーザが、ユーザは、コンピューティングデバイス900を動かすことによるダイアル435の調節を始めるか又は調節をやめようと意図していることを示すことも可能にする。例えば、アイコン421の選択に応答して画像編集アプリケーションの切り抜き及び角度補正ツールが起動されている場合には、画像編集アプリケーションは、ダイアル435上におけるタップを受け取ると、ダイアル435がコンピューティングデバイス900の動きによって調節されるモードに入る。画像編集アプリケーションは、ダイアル435上における新たなタップを受け取ると、そのモードから抜ける。いくつかの実施形態では、画像編集アプリケーションは、画像編集アプリケーションはそのモードに入っていることを示すための視覚的な指示を提供する。例えば、画像編集アプリケーションは、画像編集アプリケーションがそのモードに入っているときには、ダイアル435を強調表示するか、又はダイアル435を点滅させる。
これより、GUI400を含む画像編集アプリケーションの操作例を説明する。第1段階901は、指920でサムネイル915にタッチすることによるユーザのサムネイル915の選択を示す。画像編集アプリケーションは、サムネイル915の選択に応答して、サムネイル910によって表されている画像910を画像表示エリア410内に表示する。
段階902において、次に、ユーザは、ツール選択ペイン420内に表示されているアイコン421を選択する。それに応答して、画像編集アプリケーションは段階903において切り抜き及び角度補正ツールを起動する。画像編集アプリケーションはアイコン421を強調表示する。画像編集アプリケーションはまた、ツール表示エリア425内にダイアル435も表示し、画像表示エリア410内にグリッド線450も表示する。
ユーザはまた、ユーザはコンピューティングデバイス900を動かすことによってダイアル435を調節したいことを示すために、ダイアル435の上を(例えば、素早く指を下ろし、上げることによって)タップする。切り抜き及び角度補正ツールは、コンピューティングデバイス900が動かされる前のコンピューティングデバイス900の初期配向を記録する。例えば、切り抜き及び角度補正ツールはコンピューティングデバイス900のジャイロスコープからコンピューティングデバイス900のy軸値を入手し、少なくともz軸配向値を記録する。
段階904において、ユーザはコンピューティングデバイス900を反時計回りに回転させ始める。切り抜き及び角度補正ツールは、コンピューティングデバイス900の初期配向に対するダイアル435の配向を維持する。これにより、切り抜き及び角度補正ツールはダイアル435を時計回りに回転させ始める。切り抜き及び角度補正ツールはまた、グリッド線455を表示し、画像表示エリア410を9×9のグリッドに変える。
次の段階905は、表示された画像内に示されている人及び建物が画像表示エリア410の現在の配向(すなわち、コンピューティングデバイス900の現在の配向)に対して角度補正されるように、ユーザが、コンピューティングデバイス905を反時計回りに旋回させることによって、ダイアル435を時計回りに旋回させた後のGUI400を示す。
段階905はまた、角度補正ツールは、回転される前に画像910の外側にはみ出している部分を表示エリア410内に表示することを回避するために、画像910を拡大し(そのため、画像内に示されている人及び建物はより大きく見える)、それを切り抜いたことも示す。次の段階906は、ユーザは、ユーザはコンピューティングデバイス900を動かすことによってダイアル435を調節したいともはや望んでいないことを示すために、ダイアル435の上を(例えば、素早く指を下ろし、上げることによって)タップすることを示す。
最終段階907は、ユーザがコンピューティングデバイス905を回転させた後であるが、画像910は画像表示エリア410の縁部に対して回転されていないGUI400を示す。ユーザは前の段階906において、ユーザはコンピューティングデバイス900を回転させることによってダイアル及び画像をもはや回転させないことを示したため、切り抜き及び角度補正ツールはまた、グリッド線455も除去している。
以上及び以下において説明されているいくつかの実施形態の切り抜き及び角度補正ツールは、ツールが停止状態となった時に表示画像エリア内に表示されている画像の部分を、新しい画像として保存する。以上のように、切り抜き及び角度補正ツールは画像を「編集」し、新しい画像を生成する。
更に、いくつかの実施形態の切り抜き及び角度補正ツールは、画像が拡大され、表示エリア内に表示するために切り抜かれている間に、画像を編集する。他の実施形態では、切り抜き及び角度補正ツールは、画像を拡大及び縮小し、これを切り抜くことによって、画像が回転されている最中に表示エリア内の画像の一部ではないエリアを表示することなく、画像のできるだけ多くの部分を表示エリア内に表示するための閲覧補助として純粋に用いられる。換言すれば、純粋な閲覧補助として、切り抜き及び角度補正ツール自体は画像を「編集」しない。
上述されたいくつかの実施形態の切り抜き及び角度補正ツールは、ユーザが、UI項目を操作することによって、表示された画像を角度補正することを可能にする。いくつかの実施形態は、ユーザが、表示された画像を、画像に直接タッチし、これを回転させることによって、角度補正することを可能にする。
図10は、コンピューティングデバイス上で動作するいくつかの実施形態の画像編集アプリケーションのGUI1000を概念的に示す。具体的には、本図は、ユーザが、表示された画像を、2本の指1011及び1012で画像にタッチし、これを旋回させることによって、回転させることを、4つの異なる段階1005〜1020において示す。図10は、GUI1000は画像表示エリア1025を含むことを示す。
画像編集アプリケーションが動作するコンピューティングデバイス(不図示)は、タッチ入力を受け取るためのタッチセンシティブスクリーン又はニアタッチセンシティブスクリーンを有する。画像編集アプリケーションは、タッチセンシティブスクリーン又はニアタッチセンシティブスクリーン上で行われたタッチ入力(例えば、タッチジェスチャについての空間的及び時間的情報)を受け取り又は取得し、その入力を用いて、画像表示エリア1025内に表示された画像を回転させる。画像表示エリア1025は、ユーザが画像編集アプリケーションを用いて編集したい画像を表示する点において、画像表示エリア1025は画像表示エリア125と同様である。
画像編集アプリケーションは、タッチ入力を受け取ると、ユーザは、表示された画像を回転させたいのかどうかを判定する。いくつかの実施形態では、ユーザが2本以上の指を使って、表示された画像にタッチし、画像上で指を閾値量(例えば、数度)よりも多く回転させると、画像編集アプリケーションは、ユーザは、表示された画像を回転させたいと判定する。画像編集アプリケーションは、タッチスクリーン上の指の位置を追跡し、2本の指の位置を結ぶ線が作り出す回転の量を測定することによって、指の回転の量を判定する。
いくつかの実施形態における画像編集アプリケーションは、画像にタッチしているユーザの指が閾値量よりも多く回転するまで、表示された画像を回転させ始めない。これによって、ユーザが2本以上の指で、表示された画像にタッチすることによって何らかの他のアクションを実行しようと意図しているときには、画像編集アプリケーションは画像を回転させることを控える。例えば、ユーザが単に画像にタッチしながら2本の指を開いて更に遠く離すときには、メディア編集アプリケーションは、表示された画像を拡大し、表示された画像を回転させない。別の例として、画像編集アプリケーションは、ユーザが2本以上の指で画像をスワイプする場合には、画像を表示エリア内で回転させずに、画像の異なる部分を表示する。このように、画像編集アプリケーションは、ユーザが画像から指を上げずに、表示された画像を角度補正すること、切り抜くこと、拡大縮小すること、及びスライドさせることを可能にする。
これより、GUI1000を有する画像編集アプリケーションの操作例を説明する。段階1005において、画像編集アプリケーションは画像表示エリア1025内に画像1026を表示する。段階1010において、ユーザは2本の指1011及び1012を画像1026上に載せる。段階1015において、ユーザは2本の指1011及び1012を時計回りに少し、ただし、既定の閾値(例えば、数度の角度)よりも少なく、回転させる。指の回転の量は閾値を超えなかったので、画像編集アプリケーションは、表示された画像1026を回転させ始めない。
第4段階1020において、次に、ユーザは指1011及び1012を時計回りに更に回転させ、画像編集アプリケーションはそれに応じて、表示された画像1026を回転させる。ユーザは、表示された画像126を真っ直ぐにするのに(例えば、画像内に示されている建物及び3人の人物をGUI1000の水平線と水平にするのに)ちょうど足るだけ、指1011及び1012を回転させた。
図11は、ユーザが、2本以上の指を使って、表示された画像にタッチし、これを旋回させることによって、画像処理アプリケーションの画像表示エリア内に表示された画像を角度補正することを可能にするために、いくつかの実施形態が実行するプロセス1100を概念的に示す。いくつかの実施形態におけるプロセス1100は画像編集アプリケーションによって実行される。タッチ入力を受け取るためのタッチセンシティブスクリーン又はニアタッチセンシティブスクリーンを有するコンピューティングデバイス上で画像編集アプリケーションが動作すると、プロセス1100は開始する。プロセス1100は、(1105において)画像編集アプリケーションの画像表示エリア内に画像を表示することによって、始まる。画像表示エリアの例としては、図10を参照して上述されている画像表示エリア1025が挙げられる。
次に、プロセス1100は(1110において)、表示された画像は2つ以上のタッチ入力を受け取ったどうかを判定する。すなわち、プロセス1100は(1110において)、ユーザは、表示された画像上に2本以上の指を載せたかどうかを判定する。プロセスが(1110において)、表示された画像は2つ以上のタッチ入力を受け取らなかったと判定した場合には、プロセス1100は、複数のタッチ入力を待つために、1110へループして戻る。
プロセス1100が(1110において)、表示された画像は2つ以上のタッチ入力を受け取ったと判定した場合には、プロセスは(1115において)、タッチ入力は回転性であるかどうかを判定する。いくつかの実施形態では、ユーザの指がタッチしている2つのロケーションを結ぶ線が回転した場合には、プロセスは、タッチ入力は回転性であると判定する。
プロセス1100が(1115において)、タッチ入力は回転性ではないと判定すると、プロセス1100は終了する。さもなければ、プロセス1100は、受け取ったタッチ入力が作り出した回転の量(例えば、角度の度数)を特定するために、1120へ進む。
次に、プロセス1100は(1125において)、特定された回転の量は特定の閾値(例えば、数度の角度)を超えているかどうかを判定する。プロセス1100が(1125において)、回転の量は閾値よりも少ないと判定すると、プロセスは終了する。さもなければ、プロセスは、表示された画像を回転させるために、1130へ進む。いくつかの実施形態では、プロセス1100は(1130において)、画像を、タッチ入力が移動した特定された量に比例する量だけ回転させる。すなわち、いくつかの実施形態では、プロセス1100は(1130において)、表示された画像を、タッチ入力が移動した同じ量だけ回転させる。他の実施形態では、プロセス1100は、表示された画像を、タッチ入力が移動した量よりも多いか又は少ない量だけ回転させる。次に、プロセスは終了する。
図12は、タッチ入力を受け取るためのタッチセンシティブスクリーン又はニアタッチセンシティブスクリーンを有するコンピューティングデバイス上で動作するいくつかの実施形態の画像編集アプリケーションのGUI400を概念的に示す。具体的には、本図は、ユーザが、表示された画像を、画像にタッチし、これを旋回させることによって、回転させることを、6つの異なる段階1205〜1230において示す。
これより、GUI400を含む画像編集アプリケーションの操作例を説明する。第1段階1201は、指1230でサムネイル440にタッチすることによるユーザのサムネイル440の選択を示す。画像編集アプリケーションは、サムネイル440の選択に応答して、サムネイル440によって表されている画像445を画像表示エリア410内に表示する。
段階1202において、次に、ユーザは、ツール選択ペイン420内に表示されているアイコン421を選択する。それに応答して、画像編集アプリケーションは段階1203において切り抜き及び角度補正ツールを起動する。画像編集アプリケーションは、切り抜き及び角度補正ツールが起動されていることを示すために、アイコン421を強調表示する。画像編集アプリケーションはまた、ツール表示エリア425内にダイアル435も表示し、画像表示エリア410内にグリッド線450も表示する。固定ノブ460によって指し示された数字は、ダイアル435はどちらの方向にも全く旋回されていないことを示している。
段階1204において、ユーザは2本の指1235及び1240で画像にタッチし、2本の指を時計回りに少し、ただし、既定の閾値(例えば、数度の角度)よりも少なく、回転させる。指の回転の量は閾値を超えなかったので、切り抜き及び角度補正ツールは、表示された画像445を回転させ始めない。切り抜き及び角度補正ツールはダイアル435の回転も開始せず、グリッド線450に加えてより多くのグリッド線も表示しない。
次の段階1205において、ユーザは指1235及び1240を時計回りに既定の閾値度超回転させた。切り抜き及び角度補正ツールはそれに応じて、表示された画像445を回転させる。ユーザは、画像445内に表示されている自転車が角度補正されるまで、指1235及び1240を回転させた。本例では、固定ノブ460によって指し示されている「−10」は、ダイアル435及び表示された画像445は時計回りに10度回転したことを示している。段階405はまた、角度補正ツールは、回転される前に画像445の外側にはみ出している部分を表示することを回避するために、画像445を拡大し(そのため、画像内の自転車はより大きく見える)、それを切り抜いたことも示す。また、切り抜き及び角度補正ツールは、指1235の回転が既定の閾値を超えるとすぐに、グリッド線455を表示する。
最終段階1206は、ユーザが、表示された画像445から指1235及び1240を上げ、画像にもはやタッチしなくなった後のGUI400を示す。画像445はもはやタッチされていないので、切り抜き及び角度補正ツールはグリッド線455も除去した。
ユーザが画像にタッチし、表示された画像を角度補正することを可能にすることに加えて、いくつかの実施形態の画像編集アプリケーションは、画像上に重ね合わせられる少なくとも1つのUI制御項目であって、ユーザがそのUI制御項目を用いて画像を角度補正することを可能にする、UI制御項目を提供する。
図13はいくつかの実施形態の画像編集アプリケーションのGUI400を概念的に示す。具体的には、本図は、ユーザが、画像編集アプリケーションの切り抜き及び回転ツールによって検出された水平線を用いることによって、表示された画像を回転させることを、5つの異なる段階1301〜1305において示す。
いくつかの実施形態では、切り抜き及び角度補正ツールは、表示エリア内に表示された画像を分析し、画像の水平線を検出する。切り抜き及び角度補正ツールは、検出された水平線を画像の上に表示し、ユーザが、表示された水平線を用いて画像を角度補正することを可能にする。検出された水平線に加えて、いくつかの実施形態の切り抜き及び角度補正ツールは、画像を角度補正するための1つ以上の選択可能なユーザインタフェース項目を提供する。いくつかの実施形態において提供されるユーザインタフェース項目の1つは、画像編集アプリケーションが、画像を角度補正するために水平線をどの方向へ旋回させることになるのかを示す。ユーザが、水平線及びユーザインタフェース項目によって示唆された通りに画像を角度補正したい場合には、ユーザは、画像を角度補正するために、ユーザインタフェース項目を選択することができる。02/06/2012に出願された米国特許出願第13/366,613号には、水平線の検出が詳細に記載されている。米国特許出願第13/366,613号は本明細書において参照により組み込まれている。
これより、GUI400を含む画像編集アプリケーションの操作例を説明する。第1段階1301は、指1325でサムネイル1315にタッチすることによるユーザのサムネイル1315の選択を示す。画像編集アプリケーションは、サムネイル1310の選択に応答して、サムネイル1315によって表されている画像1320を画像表示エリア410内に表示する。
段階1302において、次に、ユーザは、ツール選択ペイン420内に表示されているアイコン421を選択する。それに応答して、画像編集アプリケーションは段階1303において切り抜き及び角度補正ツールを起動する。切り抜き及び角度補正ツールは水平線1345を検出し、表示された画像1320の上に水平線1345を表示する。加えて、切り抜き及び角度補正ツールは、検出された水平線1345の両端において、選択可能なUI項目1335及び1340を表示する。UI項目1340は、画像を角度補正するためのものであり、ユーザがユーザインタフェース項目1340を選択した時に水平線1345が旋回することになる方向を示す。水平線1345は左へ傾いている(例えば、左端が右端よりも下にある)ので、画像1320を角度補正させるために切り抜き及び角度補正ツールは水平線1345及び画像1320を時計回りに回転させることになることを示すために、切り抜き及び角度補正ツールはUI項目1340内に下向きの矢印を配置する。ユーザインタフェース項目1335は、水平線1345を閉じるためのものである。ユーザがユーザインタフェース項目1335を選択すると、画像編集アプリケーションは水平線1345及びユーザインタフェース項目1335及び1340を消すことになる。
また、段階1303において、画像編集アプリケーションはアイコン421を強調表示する。画像編集アプリケーションはまた、ツール表示エリア425内にダイアル435も表示し、画像表示エリア410内にグリッド線450も表示する。固定ノブ460によって指し示されたダイアル435上の数字は「0」を示しており、ダイアル435はどちらの方向にも全く旋回されていないことを示している。
段階1304において、ユーザは指1325でユーザインタフェース項目1340を選択する。次に、段階1305において、切り抜き及び角度補正ツールはそれに応答して、水平線1345が水平になるように(すなわち、画像表示エリア1325の下縁部と平行になるように)画像1330を時計回りに回転させることによって、画像1330を角度補正する。切り抜き及び角度補正ツールは、表示された画像445を時計回りにダイアル435の回転の量だけ旋回させた。本例では、固定ノブ460によって指し示されている「−10」は、ダイアル435及び表示された画像445は時計回りに10度回転したことを示している。段階1305はまた、角度補正ツールは、回転される前に画像445の外側にはみ出している部分を表示することを回避するために、画像445を拡大し(そのため、画像内の自転車はより大きく見える)、それを切り抜いたことも示す。
図14は、ユーザが画像1320を角度補正するために水平線1345を用いないことを望む場合には、検出された水平線1345を閉じることを示す。具体的には、本図は、ユーザが、UI項目1335を選択することによって、検出された水平線1345を閉じることを、5つの異なる段階1401〜1405において示す。
上述のように、UI項目1335は、水平線1345を閉じるためのものである。ユーザがUI項目1335を選択すると、切り抜き及び角度補正ツールは水平線1345並びにUI項目1335及び1340を消すことになる。いくつかの実施形態では、切り抜き及び角度補正ツールは、UI項目1335を選択すること以外の方法を提供する。例えば、切り抜き及び角度補正ツールは、ユーザがGUI400の他のエリアの上をタップすると、水平線1345並びにUI項目1335及び1340を消すことになる。GUI400のこれらの他のエリアは、ダイアル435、UI項目1335以外の画像表示エリア410の部分等を含む。いくつかの実施形態では、画像編集アプリケーションは、ユーザが選択するための別のUI項目(不図示)を提供する。ユーザがこのUI項目(例えば、リセットボタン)を選択すると、画像編集アプリケーションは、閉じられた水平線1345を再表示する。
これより、GUI400を含む画像編集アプリケーションの操作例を説明する。最初の3つの段階1401〜1403は、図13を参照して上述されている段階1301〜1303と同一である。段階1404において、ユーザは指1425でUI項目1435を選択する。次に、段階1405において、切り抜き及び角度補正ツールはそれに応答して、画像表示エリアからUI項目1335及び1340並びに検出された水平線1345を除去する。
図15は、ユーザが、画像を角度補正するためのユーザインタフェース項目を選択することによって、画像処理アプリケーションの画像表示エリア内に表示された画像を角度補正することを可能にするために、いくつかの実施形態が実行するプロセス1500を概念的に示す。いくつかの実施形態におけるプロセス1500は画像編集アプリケーションによって実行される。タッチ入力を受け取るためのタッチセンシティブスクリーン又はニアタッチセンシティブスクリーンを有するコンピューティングデバイス上で画像編集アプリケーションが動作すると、プロセス1500は開始する。プロセス1500は、(1505において)画像の水平線を特定することによって、始まる。米国特許出願第13/366,613号には、水平線の特定が詳細に記載されている。
次に、プロセス1500は(1510において)画像編集アプリケーションの表示エリア内に画像及び特定された水平線を表示する。画像表示エリアの例としては、図13を参照して上述されている画像表示エリア1325が挙げられる。プロセス1500はまた(1515において)、表示された画像を角度補正するためのユーザインタフェース項目も表示する。いくつかの実施形態では、プロセス1500は、プロセスは水平線及び画像を、水平線及び画像を角度補正する方向に回転させることになることを示すためのユーザインタフェース項目を水平線内に表示する。このようなユーザインタフェース項目の一例は、図13を参照して上述されているユーザインタフェース項目1340である。
次に、プロセス1500は(1520において)、ユーザは表示されたユーザインタフェース項目を選択したかどうかを判定する。プロセス1500が(1520において)、ユーザはユーザインタフェース項目を選択しなかったと判定すると、プロセス1500は、ユーザがユーザインタフェース項目を選択するのを待つために、1520へループして戻る。
プロセス1500が(1520において)、ユーザはユーザインタフェース項目を選択したと判定すると、プロセス1500は、水平線を用いて画像を回転させるために、1525へ進む。いくつかの実施形態では、プロセス1500は、水平線及び画像が回転するにつれて画像に対する水平線の位置が変化しないように、水平線を画像と共に回転させる。プロセス1500は、表示された画像を角度補正するために、水平線を用いて、表示された画像を回転させる。次に、プロセスは終了する。
B.画像上切り抜き
図16は、ユーザが画像上切り抜きツールを操作することによって画像を切り抜くことを可能にするいくつかの実施形態の画像編集アプリケーションのGUI1600を概念的に示す。具体的には、本図は、ユーザが、画像1640の角部及び縁部にタッチし、これらをドラッグすることによって、画像1640を切り抜くことを、6つの異なる段階1605〜1615において示す。図16は、GUI1600は画像表示エリア535を含むことを示す。
図6を参照して上述されているように、画像上切り抜きツールは、ユーザが、画像を拡大することによって、画像から不必要な部分をトリミングして除去することを可能にする。いくつかの実施形態では、画像上切り抜きツールはまた、ユーザが、画像の角部及び縁部を内外にドラッグすることによって、画像から不必要な部分をトリミングして除去することも可能にする。切り抜きツールはまた、複数のタッチによって画像の角部及び縁部をドラッグすることも可能にする。例えば、ユーザは、画像に対して対角方向にピンチジェスチャを行うこと(例えば、タッチセンシティブスクリーン又はニアタッチセンシティブスクリーン上で2本の指を互いに向けて寄せること)によって、画像の2つの角部を画像の中心に向けてドラッグすることができる。
いくつかの実施形態における画像上切り抜きツールは、ユーザが、アスペクト比を維持しつつ画像を切り抜くことを可能にする。維持するべきアスペクト比は、切り抜かれる前の元の画像のアスペクト比、又はユーザが選ぶことができる既定のアスペクト比(例えば、2×3)のうちの1つであり得るであろう。また、いくつかの実施形態における画像上切り抜きツールは、切り抜かれた後の画像を、切り抜かれる前の画像の元のサイズに一致するように、引き伸ばす。
これより、GUI1600を有する画像編集アプリケーションの操作例を説明する。段階1605において、画像編集アプリケーションは画像表示エリア1635内に画像1640を表示する。次に、段階1610において、ユーザは指1611を画像1640の右上角部に載せる。段階1615において、ユーザは、画像内に示されている山及びギタリストを切り落とすために、画像1640の右上角部を対角方向にドラッグする。
段階1620において、画像編集アプリケーションは、画像の残りの部分(すなわち、ドラマーを示す画像の部分)を引き伸ばす。残りの部分のアスペクト比は画像表示エリア1635のアスペクト比に一致しないので、画像処理アプリケーションは、画像の引き伸ばされた残りの部分の両側に2つのグレイエリアを配置する。
この段階1620において、ユーザはまた、指1611を残りの部分の下縁部に載せる。次の段階1625において、ユーザは、画像1640の更に多くの部分をトリミングして除去するために、下縁部を上にドラッグする。段階1630において、画像編集アプリケーションは画像の残りの部分をいっぱいに引き伸ばす。画像の最終的な残りの部分は、切り抜かれる前の画像の元のアスペクト比と同じアスペクト比を有するので、画像編集アプリケーションは表示エリア1640内にグレイエリアを表示しない。
図17は、画像編集アプリケーションのユーザが画像を切り抜くことを可能にするためにいくつかの実施形態が実行するプロセス1700を概念的に示す。いくつかの実施形態におけるプロセス1700は画像編集アプリケーションによって実行される。ユーザからのタッチ入力を受け取るためのタッチセンシティブスクリーン又はニアタッチセンシティブスクリーンを有するコンピューティングデバイス上で画像編集アプリケーションが動作すると、プロセス1700は開始する。プロセス1700は、(1705において)画像編集アプリケーションの画像表示エリア内に画像を表示することによって、始まる。
次に、プロセス1700は(1710において)、表示された画像の上に幾何学形状を表示する。いくつかの実施形態では、幾何学形状は、表示された画像の縁部に最初に重なっている形状である。幾何学形状がサイズ変更されると、幾何学形状は、切り抜かれた画像の縁部を画定する。次に、プロセス1700は(1715において)、幾何学形状はユーザ入力を受け取ったかどうかを判定する。いくつかの実施形態では、ユーザが指を角部又は縁部の上に載せることによって幾何学形状の角部又は縁部を選択した場合に、プロセス1700は、幾何学形状はユーザ入力を受け取ったと判定する。また、ユーザが2本以上の指を幾何学形状の角部及び縁部並びに幾何学形状内のエリアの上に載せて動かした場合に、プロセス1700は、幾何学形状はユーザ入力を受け取ったと判定する。
次に、プロセス1700は(1720において)、受け取った入力に基づき幾何学形状をサイズ変更する。プロセス1700は、ユーザが1本以上の指を使って行ったジェスチャを異なって解釈する。例えば、ユーザが幾何学形状の縁部を選択し、幾何学形状の中心に向けてドラッグすると、プロセス1700は縁部を内側へ動かす。また、ユーザが指を幾何学形状の角部の上に載せ、表示された画像の中心に向けてドラッグすると、プロセス1700は角部を内側へ移動させる。更に、ユーザが2本以上の指を使って画像の縁部及び角部を選択し、ドラッグすると、あるいはユーザが幾何学形状の上でピンチジェスチャ(例えば、幾何学形状の内側にタッチしながら2本の指をくっつけること)若しくは幾何学形状の上で拡大ジェスチャ(例えば、幾何学形状の内部にタッチしながら2本の指を広げて離すこと)を実行すると、プロセス1700は幾何学形状の1つを超える縁部又は1つを超える角部を一度に動かす。
次に、プロセス1700は、幾何学形状を用いて、表示された画像を切り抜く(1725)。いくつかの実施形態では、プロセスは、幾何学形状の範囲に入らない、表示された画像の部分を切り落とす。次に、プロセスは終了する。
図18Aはいくつかの実施形態の画像編集アプリケーションのGUI400を概念的に示す。具体的には、本図は、ユーザが、画像編集アプリケーションの画像上切り抜きツールを用いることによって、表示された画像1810を切り抜くことを、6つの異なる段階1801〜1806において示す。
図16を参照して上述されているように、いくつかの実施形態の画像上切り抜きツールは、ユーザが、画像の縁部及び角部を操作することによって、画像の不必要な部分を切り落とすことを可能にする。いくつかの実施形態では、画像上切り抜きツールはまた、ユーザが、画像を拡大することによって、表示された画像を切り抜くことも可能にする。画像上切り抜きツールは、画像が拡大された後に画像表示エリア410の外部へはみ出す画像の部分を切り落とす。
これより、GUI400を有する画像編集アプリケーションの操作例を説明する。第1段階1801は、指1815でサムネイル1810にタッチすることによるユーザのサムネイル1810の選択を示す。画像編集アプリケーションは、サムネイル1815の選択に応答して、サムネイル1810によって表されている画像1816を画像表示エリア410内に表示する。
段階1802において、次に、ユーザは、ツール選択ペイン420内に表示されているアイコン421を選択する。それに応答して、画像編集アプリケーションは段階1803において画像上切り抜きツールを起動する。画像編集アプリケーションはアイコン421を強調表示する。画像編集アプリケーションはまた、ツール表示エリア425内にダイアル435も表示し、画像表示エリア410内にグリッド線450も表示する。
段階1804において、ユーザは2本の指1820及び1825で画像1810にタッチする。次の段階1805は、ユーザが画像1810上で拡大ジェスチャを実行した後のGUI400を示す。それに応答して、画像上切り抜きツールは画像1810を拡大し、画像表示エリア410の外部へはみ出す画像部分を切り落とす。画像上切り抜きツールは、切り抜かれた画像を、画像表示エリア410全体を占めるように引き伸ばした。最終段階1806は、ユーザが画像1810から指1820及び1825を上げ、画像1810にもはやタッチしなくなった後のGUI400を示す。
図18B及び18Cはいくつかの実施形態の画像編集アプリケーションのGUI400を概念的に示す。具体的には、本図は、ユーザが、画像編集アプリケーションの画像上切り抜きツールを用いることによって、表示された画像1810を切り抜くことを、9つの異なる段階1801b〜1809bにおいて示す。具体的には、図18B及び18Cは、内側表示エリア480を有するいくつかの実施形態のGUI400を示す。
これより、GUI400を有する画像編集アプリケーションの操作例を説明する。第1段階1801b及び第2段階1802bは、図18Aを参照して上述された段階1801及び段階1802と同一である。段階1802aにおけるアイコン421の選択に応答して、画像編集アプリケーションは段階1803aにおいて切り抜きツールを起動する。画像編集アプリケーションは表示エリア410内に内側表示エリア480aを表示する。
段階1804aにおいて、ユーザは2本の指1820及び1825で画像1810にタッチする。次の段階1805aは、ユーザが、画像を拡大するために、画像1810上で拡大ジェスチャを実行した後のGUI400を示す。それに応答して、画像上切り抜きツールは画像1810を拡大する。拡大の結果、内側表示エリア480aの外部へはみ出す画像の部分は外側エリア485a内に表示される。画像の境界も外側エリア485a内に表示される。画像上切り抜きツールは、ユーザが画像を更に拡大することを可能にし、画像の一部の部分は表示エリア410の外部へはみ出す場合がある。
次の段階1806aは、ユーザが画像1810から指1820及び1825を上げ、画像1810にもはやタッチしなくなった後のGUI400を示す。図示されているように、外側エリア485a内に表示されていた画像の部分及び画像の境界は外側エリア485a内にもはや表示されていない。次の段階1807aは、ユーザが画像1810に再びタッチした後のGUI400を示す。段階1805aにおいて外側エリア485a内に表示されていた画像の部分及び画像の境界は外側エリア485a内に再び現れている。
段階1808aにおいて、ユーザは画像を右へドラッグし、その結果、画像1810の異なる部分が内側表示エリア480a内に表示される。また、内側表示エリア480aの外部へはみ出す画像の異なる部分が今度は外側エリア485a内に表示される。次の段階1809aは、ユーザが画像1810から指を上げ、画像1810にもはやタッチしなくなった後のGUI400を示す。図示されているように、前の段階1808aにおいて外側エリア485a内に表示されていた画像のそれらの部分及び画像の境界は外側エリア485a内にもはや表示されていない。
図19はいくつかの実施形態の画像編集アプリケーションのGUI400を概念的に示す。具体的には、本図は、ユーザが、プリセットされたアスペクト比を選択することによって、表示された画像1910を切り抜くことを、4つの異なる段階1901〜1904において示す。
いくつかの実施形態における画像編集アプリケーションは、ユーザが選ぶことができるアスペクト比のセットを提供する。画像編集アプリケーションは、選択されたアスペクト比を用いて、画像表示エリア410内に表示された画像を切り抜く。例えば、画像表示エリア410内に表示された元の画像は3×2のアスペクト比(例えば、3は幅に関し、2は高さに関する)を有し、選択されたアスペクト比は2×3である場合には、画像編集アプリケーションは元の画像の両側をトリミングし、アスペクト比を2×3の比に変更する。
いくつかの実施形態における画像編集アプリケーションは、元の画像内に示されている顔(単数又は複数)のロケーションに基づき、切り落とすべき部分を決定する。画像編集アプリケーションは、画像の残りの部分が画像の中心内に顔(単数又は複数)を有するように、画像の部分を切り落とす。画像編集アプリケーションは、顔検出技法(例えば、あらゆる顔を検出する)及び/又は顔認識技法(例えば、関心がある顔を検出する)を用いて顔(単数又は複数)を見つける。
画像編集アプリケーションが複数の顔を見つけた場合には、異なる実施形態は、切り抜かれた画像の中心に顔を据えるために、異なる技法を用いる。例えば、いくつかの実施形態の画像編集アプリケーションは、それぞれの見つけられた顔の中心座標を特定し、特定された中心座標を平均し、平均中心座標を有する画像の部分を、切り抜かれた画像の中心内に配置する。別の例として、いくつかの実施形態の画像編集アプリケーションは、見つけられたそれぞれの顔のサイズを特定し、最も大きな顔を、切り抜かれた画像内に配置する。更に別の例として、いくつかの実施形態の画像編集アプリケーションは、関心がある顔を、切り抜かれた画像の中心内に配置する。
いくつかの実施形態では、画像編集アプリケーションはサムネイルのセットをアスペクト比のセットと共に提供する。これらのサムネイルはそれぞれ、対応する選択可能なアスペクト比に基づき切り抜かれた画像のプレビューを提供する。
これより、GUI400を有する画像編集アプリケーションの操作例を説明する。第1段階1901は、ユーザが、編集するべき画像を選択し、アイコン421を選択した後のGUI400を示す。画像編集アプリケーションはツール表示エリア425内にダイアル435を配置し、アイコン421を強調表示した。
段階1902において、ユーザは、プリセットされたアスペクト比を示すためのアイコン1910を選択する。画像編集アプリケーションは、ユーザが選ぶことができるプリセットされたアスペクト比を表示する。次の段階1903はユーザの2×3のアスペクト比の選択を示す。
最終段階1904は、画像編集アプリケーションが画像1910を切り抜いた後のGUI400を示す。画像編集アプリケーションは顔1915を見つけ、切り抜かれた画像が顔1915を中心に有するように画像を切り抜く。3×2の比から2×3の比を作るためには、画像の上部及び下部ではなく、画像の側部がトリミングされるので、画像編集アプリケーションは顔1915を、切り抜かれた画像の左右中心内に配置する。画像表示エリア410内に表示されるグレイエリアは、切り落とされた画像の部分を表す。
いくつかの実施形態の画像上切り抜き及び角度補正ツールについて説明したが、次のセクションは、いくつかの実施形態の画像編集アプリケーションを用いて、画像の選択されたエリアに画像処理操作を適用するための他の画像上ツールについて説明する。
II.画像上ブラシツール
いくつかの実施形態の画像編集アプリケーションは、表示された画像の選択されたエリアに画像処理操作を適用するための画像上ブラシツールのセットを提供する。これらのツールの一部は、ユーザが、表示された画像のエリアを選択し、選択されたエリアに画像処理操作を適用することを可能にする。これらのツールの一部は、ユーザが、表示された画像のエリアを複数回選択し、画像のエリアが選択された回数に基づき、画像処理操作を適用することを可能にする。
A.エリアの選択による画像処理操作の適用
図20は、ユーザが、画像処理操作を適用するべき画像内のエリアを選択することを可能にするいくつかの実施形態の画像編集アプリケーションのGUI400を概念的に示す。具体的には、本図は、ユーザが画像にタッチすることによって画像のエリアを選択し、画像の選択されたエリアに画像処理操作を適用することを、6つの異なる段階2001〜2006において示す。
上述のように、いくつかの実施形態におけるツール選択ペイン420は、画像編集アプリケーションの異なる編集ツールセットを表すアイコンのセットを表示する。ツール選択ペイン420は、いくつかの実施形態ではツール選択ペイン430内に表示されている左から4つ目のアイコンである、アイコン2020を含む。ツール選択ペイン420内に表示されているアイコン2020が表すツール群は画像上ブラシツール群を含む。ユーザがアイコン2020を選択すると、いくつかの実施形態における画像編集アプリケーションは、ツール表示エリア425(又はGUI400のその他の部分)内に、これらの画像上ブラシツール群を表す選択可能なUI項目2025のセットを表示する。ツール群のうちの1つが選択されると(例えば、ユーザが、そのツールを表すアイコンを選択すると)、そのツールが起動され、表示された画像へのユーザ入力は、選択されたツールへの入力として扱われる。
いくつかの実施形態における選択可能なUI項目2025のセットは、画像処理操作又は効果によって異なる形状のブラシを有するアイコンのセットである。例えば、アイコン2030は欠点除去ツールを表す。アイコン2035は赤目除去ツールを表す。アイコン2040は飽和ツールを表す。アイコン2045は脱飽和ツールを表す。アイコン2050は明色化ツールを表す。アイコン2055は暗色化ツールを表す。アイコン2060はシャープ化ツールを表す。アイコン2065はソフト化ツールを表す。ツールはそれぞれ、起動されると、ユーザがエリアにタッチすることによって選択した画像のエリアに、効果を適用する。
これらのツール群の一部は、エリアがタッチされる回数にかかわらず、エリアに、対応する効果を適用する。すなわち、このようなツール群は、エリアが初めてタッチされた時に、効果を1度適用するが、エリアがその後、再びタッチされた時には、効果を適用しない。例えば、いくつかの実施形態における欠点除去ツールは、ユーザが初めてエリアにタッチすると、エリアから欠点を除去するが、ユーザがエリアに再びタッチした時には、エリアから欠点を更に除去しようとは試みない。いくつかの実施形態では、もう1つのこのようなツールは赤目除去ツールである。
選択可能なUI項目2025のセットによって表されたツール群の一部は、画像のエリアがタッチされる回数に基づき、対応する効果を適用する。以下において、このようなツールについて更に詳細に説明する。
これより、GUI2000を有する画像編集アプリケーションの操作例を説明する。第1段階2001は、指2070でサムネイル2010にタッチすることによるユーザのサムネイル2010の選択を示す。画像編集アプリケーションは、サムネイル2010の選択に応答して、サムネイル2010によって表されている画像2015を画像表示エリア410内に表示する。
段階2002において、ユーザは、ツール選択ペイン420内に表示されているアイコン2020を選択する。それに応答して、画像編集アプリケーションは段階2003において、図示されているように、GUI400内に、選択可能なUI項目2025のセットを表示する。段階2004において、ユーザは、アイコン2030にタッチすることによって欠点除去ツールを選択する。画像編集アプリケーションは欠点除去ツールを起動する。
段階2005において、ユーザは指2070を使って水面及びオールの先端を左右に複数回擦る。欠点除去ツールは、ユーザによって擦られたエリアを特定し、エリアに欠点除去操作を適用する。08/13/2009に公開された米国特許出願公開第2009/0202170号には、欠点除去操作の例が詳細に記載されている。米国特許出願公開第2009/0202170号は本明細書において参照により組み込まれている。段階2006において、画像編集アプリケーションは、オールの先端、及び擦られたエリアの範囲に含まれていたオールの部分を除去した。
図21は、画像編集アプリケーションのユーザが、画像のエリアに、そのエリアにタッチすることによって画像処理操作を適用することを可能にするために、いくつかの実施形態が実行するプロセス2100を概念的に示す。いくつかの実施形態におけるプロセス2100は画像編集アプリケーションによって実行される。ユーザからのタッチ入力(例えば、擦るジェスチャ)を受け取るためのタッチセンシティブスクリーン又はニアタッチセンシティブスクリーンを有するコンピューティングデバイス上で画像編集アプリケーションが動作すると、プロセス2100は開始する。プロセス2100は、(2105において)画像編集アプリケーションの画像表示エリア内に画像を表示することによって、始まる。
次に、プロセス2100は(2110において)、適用するべき画像処理操作の選択を受け取る。いくつかの実施形態では、画像処理操作を表すユーザインタフェース項目にユーザがタッチすると、プロセス2100は、画像編集アプリケーションのユーザインタフェース項目(例えば、アイコン)を通じて、画像処理操作の選択を受け取る。画像処理操作の例には、欠点の除去、赤目の除去等がある。
次に、プロセス2100は(2115において)、画像のエリアが選択されているかどうかを判定する。いくつかの実施形態では、プロセス2100は、ユーザがエリアにタッチした場合に、画像のエリアが選択されていると判定する。プロセスが(2115において)、エリアが選択されなかったと判定した場合には、プロセス2100は、ユーザのエリアの選択を待つために、2110へループして戻る。
プロセス2100が(2115において)、エリアが選択されたと判定した場合には、プロセスは、選択されたエリアの画像特性を特定するために、2120へ進む。プロセス2100が特定する画像特性の例には、輝度、色等がある。次に、プロセス2100は(2125において)、特定された画像特性に基づき、選択されたエリアに、選択された画像処理操作を適用する。次に、プロセスは終了する。
これまでに説明されたいくつかの実施形態のブラシツールは一定のブラシサイズを用いる。すなわち、画像表示エリアのサイズに対するブラシツールを用いて作り出される行程の幅は一定である。いくつかの実施形態の画像編集アプリケーションは異なるブラシのサイズを提供しない。一部のこのような実施形態では、画像編集アプリケーションは、一定のブラシサイズを備えるブラシツールのために、効果をより細かい粒度で適用することを可能にする。
図22は、いくつかの実施形態の画像編集アプリケーションのGUI400を概念的に示す。具体的には、本図は、画像編集アプリケーションが、ユーザが、画像表示エリアのサイズに対して変化しないサイズを有するブラシを用いてより細かいレベルで欠点除去効果を適用するために、画像を拡大することを可能にすることを、8つの異なる段階2201〜2208において示す。
これより、GUI400を有する画像編集アプリケーションの操作例を説明する。段階2201において、アイコン2020は、画像編集アプリケーションがGUI400内に選択可能なUI項目2025のセットを表示していることを示すために、強調表示される。ユーザは、指2210でアイコン2030にタッチすることによって、欠点除去ツールを選択した。画像編集アプリケーションはまた、画像表示エリア410内に画像2215を表示した。
段階2202において、ユーザは、画像2215内に示されている星の付近にタッチする。段階2203において、ユーザは、画像2215にタッチしながら指を右へドラッグする。グレイエリア2220はユーザが作り出した行程を示す。グレイエリア2220の高さはブラシサイズを表す。ブラシサイズは、空にある欠点を覆うには十分に小さいが、画像内に示されているより小さな物体に欠点除去効果を適用するには大きすぎる。例えば、ブラシサイズは、画像2215内に示されているスピーカボックスの上部の円のみにタッチするには大きすぎる。
段階2204は、画像編集アプリケーションは、画像2215内に示されている空から2つの星を除去したことを示す。段階2205において、ユーザは、画像2215上で拡大ジェスチャを実行することによって、画像2215を拡大する。段階2206において、ユーザは、画像2215内に示されているスピーカボックスの上部の円にタッチする。段階2207において、ユーザは画像2215にタッチしながら指を右へドラッグする。グレイエリア2225はユーザが作り出した行程を表す。グレイエリア2225の高さはブラシサイズを表す。画像は拡大されているので、同じブラシサイズが、今では、上部の円のみにタッチし、上部の円の内部の欠点を除去するのに十分小さくなっている。最終段階2207は、上部の円内の欠点は除去されたことを示す。
図23は、画像の選択されたエリアに画像処理操作を適用する別の画像上ブラシツールの使用を示す。具体的には、本図は、ユーザが、GUI400の画像表示エリア410内に表示された画像2310に赤目除去効果を適用することを、5つの異なる段階2301〜2305において示す。
上述のように、画像上ブラシツールの一部は、エリアがタッチされる回数に関係なく、エリアに、対応する効果を適用する。アイコン2035によって表されている赤目除去ツールは、いくつかの実施形態におけるこのようなツールの1つである。いくつかの実施形態の画像編集アプリケーションはまた、表示された画像内の赤目から全ての「赤色」を自動的に除去する、自動赤目除去ツールを提供する場合もある。アイコン2035によって表された赤目除去ツールは、自動ツールが用いられる前又は後に用いることができる。
これより、赤目除去ツールを用いたGUI400の操作例を説明する。第1段階2301は、指2325でサムネイル2315にタッチすることによるユーザのサムネイル2315の選択を示す。画像編集アプリケーションは、サムネイル2315の選択に応答して、サムネイル2315によって表されている画像2310を画像表示エリア410内に表示する。
段階2302において、ユーザは、ツール選択ペイン420内に表示されているアイコン2320を選択する。それに応答して、画像編集アプリケーションは段階2303において、図示されているように、GUI400内に、選択可能なUI項目2325のセットを表示する。また、ユーザは、アイコン2330にタッチすることによって赤目除去ツールを選択する。画像編集アプリケーションは赤目除去ツールを起動する。
段階2304において、ユーザは、指2325で、画像2310内に示された人物の右目(画像2310の左側の目)にタッチする。いくつかの実施形態における赤目除去ツールは、ユーザがタッチしたエリアに基づき、瞳を特定する。次に、赤目除去ツールは、特定された瞳から赤色を除去する。いくつかの実施形態では、赤目除去ツールは、タッチされた赤目から赤色を除去するために、従来の赤目除去方法を用いる。
段階2305において、ユーザは画像から指2325を上げており、画像表示エリア410にもはやタッチしていない。この段階は、画像編集アプリケーションは人物の右目から「赤色」を除去したことを示す。
いくつかの実施形態では、赤目除去ツールは、赤色が除去されるときに、音を再生する。また、いくつかの実施形態における赤目除去ツールは、選択された目から赤色が除去されることを示すための視覚的な指示を提示する。例えば、赤目除去ツールは、選択された目から円が広がるアニメーションを表示する。赤目除去ツールは、ユーザが目を再び選択すると、赤色の除去を取り消す。赤目除去ツールは、ツールが赤色の除去を取り消すときに、別の異なる音を再生する。
B.タッチの回数に基づく画像処理操作の適用
上述のように、いくつかの実施形態における画像上ブラシツール群の一部は、エリアがタッチされる回数に基づき、エリアに、対応する効果を適用する。このような画像上ブラシツールを用いるいくつかの例を以下において説明する。
図24は、ユーザが、画像の選択されたエリアに画像処理操作を漸増的に適用することを可能にするいくつかの実施形態の画像編集アプリケーションのGUI400を概念的に示す。具体的には、本図は、ユーザが、画像のエリアに、画像を擦ることによって画像処理操作を漸増的に適用することを、6つの異なる段階2401〜2406において示す。図24は、GUI2400は画像表示エリア2425を含むことを示す。
いくつかの実施形態では、画像上ブラシツール群の一部は、ユーザが、画像を擦ること(例えば、画像のエリアを1回以上スワイプすること)によって画像処理操作を適用することを可能にする。いくつかの実施形態では、このような画像上ブラシツール群は、アイコン2040によって表されている飽和ツール、アイコン2045によって表されている脱飽和ツール、アイコン2050によって表されている明色化ツール、アイコン2055によって表されている暗色化ツール、アイコン2060によって表されているシャープ化ツール、及びアイコン2065によって表されているソフト化ツールを含む。
画像のエリアがタッチされるたびに、画像上ブラシツールは、対応する画像処理操作又は効果を増分量ずつ適用する。例えば、明色化ツールは、エリアがタッチされるたびに、表示された画像のエリアを段階的に明るくする(例えば、輝度値を増加させる)。
異なる実施形態は、適用するべき画像処理操作の増分量を異なって決定する。例えば、画像上ブラシツールは、選択された画像処理操作に基づく既定の増分値ずつ画像特性値を増加又は減少させる。例えば、選択された画像処理操作が明色化操作である場合には、スクリーン上ブラシツールは既定の輝度値デルタずつエリアの輝度値を増加させる。いくつかの実施形態では、画像上ブラシツールは画像特性値を1パーセントずつ増加又は減少させる。また、いくつかの実施形態における画像上ブラシツールは非線形関数を用いて画像のエリアの画像特性値を非線形的に減少又は増加させる。
いくつかの実施形態では、画像上ブラシツールは、画像処理操作を漸増的に適用するために、マスク値を用いる。画像処理操作のためのマスク値が、表示された画像の画素のセットに付与される。いくつかの実施形態における画像上ブラシツールは、マスク値が付与された画素のセットに画像処理操作を適用するために、マスク値を変更する。すなわち、これらの実施形態における画像上ブラシツールは、画像処理操作を漸増的に適用するために、マスク値を変更する。
いくつかの実施形態では、画像上ブラシツールが起動されている間、エリアが受け取るタッチの回数は累積する。すなわち、ユーザが、画像のエリア上で擦る操作(例えば、指を上げる前に画像のエリアを1回以上スワイプすること)を実行した後に、指(又はスタイラス等の、タッチ用のその他のデバイス)を上げ、その後、同じエリア上で新たな擦る操作を再び実行した場合には、そのエリアは、連続的に擦られていると見なされる。一部のこのような実施形態では、別の画像上ブラシツールが、異なる対応する効果を適用するために選択され、起動されると、エリアがタッチされる回数はゼロから累積するか、又はこの画像上ブラシツールが最後に起動され、用いられた時にエリアがタッチされた回数から累積する。
これより、いくつかの実施形態の画像上ブラシツールの操作例を説明する。第1段階2401は、画像編集アプリケーションが画像表示エリア410内に画像2420を表示している様子を示す。ユーザは、ツール選択ペイン420内に表示されているアイコン2020を選択する。
段階2402において、画像編集アプリケーションは、図示されているように、GUI400内に、選択可能なUI項目2025のセットを表示する。ユーザは、アイコン2050にタッチすることによって明色化ツールを選択する。画像編集アプリケーションは明色化ツールを起動する。
段階2403において、いくつかの実施形態における画像編集アプリケーションは、明色化ツールが起動されたことを示すために、アイコン2050を強調表示する。ユーザは指2425を、画像2420内に示されている空の上に載せる。段階2404において、ユーザは画像2420にタッチしながら指2425を右へドラッグした。明色化ツールは、指2425によってタッチされたエリアをより明るくする。
段階2405において、ユーザは指2425を左上方向へドラッグした。明色化ツールは、指2425によってタッチされたエリアをより明るくする。しかし、部分2430は2回タッチされており、したがって、1回しかタッチされていない部分2435及び2440よりも明るく見える。
段階2406において、ユーザは指2425を、段階2404において指2425があった位置へドラッグして戻した。明色化ツールは、これで2回タッチされた部分2435をより明るくする。部分2430は3回タッチされたので、部分2430は以前よりも明るく見える。
図25は、画像編集アプリケーションのユーザが、画像のエリアに、そのエリアを擦ることによって画像処理操作を漸増的に適用することを可能にするために、いくつかの実施形態が実行するプロセス2500を概念的に示す。いくつかの実施形態におけるプロセス2500は画像編集アプリケーションによって実行される。ユーザからのタッチ入力(例えば、擦るジェスチャ)を受け取るためのタッチセンシティブスクリーン又はニアタッチセンシティブスクリーンを有するコンピューティングデバイス上で画像編集アプリケーションが動作すると、プロセス2500が開始する。プロセス2500は、(2505において)画像編集アプリケーションの画像表示エリア内に画像を表示することによって、始まる。
次に、プロセス2500は(2510において)、適用するべき画像処理操作の選択を受け取る。いくつかの実施形態では、画像処理操作を表すユーザインタフェース項目にユーザがタッチすると、プロセス2500は画像編集アプリケーションのユーザインタフェース項目(例えば、アイコン)を通じて画像処理操作の選択を受け取る。
次に、プロセス2500は(2515において)、画像のエリアがタッチされているかどうかを判定する。いくつかの実施形態では、プロセス2500は、画像のエリアがタッチされているかどうかを判定するために、コンピューティングデバイスからタッチ情報(例えば、ユーザの指がタッチしているタッチセンシティブスクリーン又はニアタッチセンシティブスクリーンのエリアの座標)を受け取る又は取得する。プロセスが(2515において)、エリアがタッチされていないと判定した場合には、プロセス2500は、表示された画像のエリアのユーザのタッチを待つために、2515へループして戻る。
プロセス2500が(2515において)、エリアがタッチされていると判定した場合には、プロセスは、タッチはエリアから動かされたかどうかを判定するために、2520へ進む。いくつかの実施形態では、タッチされていたエリアがもはやタッチされていない場合には、プロセス2500は、タッチはエリアから動かされたと判定する。それゆえ、ユーザがエリアから指を上げるか、又はユーザが指を画像の別のエリアへ動かした場合には、プロセス2500は、タッチはエリアから動かされたと判定する。プロセス2500が(2520において)、タッチはエリアから動かされなかったと判定した場合には、プロセス2500は、タッチが動くのを待つために、2520へループして戻る。
プロセス2500が(2520において)、タッチはエリアから動かされたと判定した場合には、プロセス2500は(2525において)画像のエリアに、選択された画像操作を漸増的に適用する。次に、プロセス2500は(2530において)、画像の別のエリアがタッチされているかどうかを判定する。プロセス2500が(2530において)、画像の他のエリアがタッチされていると判定した場合には、プロセス2500は、タッチがこのエリアから動くのを待つために、2520へループして戻る。プロセス2500が(2530において)、画像の他のエリアはタッチされていないと判定した場合には、プロセス2500は終了する。
エリアが受け取るタッチの回数に基づき画像処理操作を適用するいくつかの実施形態の画像上ブラシツールを説明したが、次のサブセクションは、タッチ圧力に基づき画像処理操作を適用するいくつかの実施形態の画像上ブラシツールを説明する。
C.タッチ圧力に基づく画像処理操作の適用
図26は、画像のエリアが受けるタッチ圧力に基づき画像処理操作又は効果を適用するいくつかの実施形態の画像上ブラシツールの使用を示す。具体的には、本図は、ユーザが、表示された画像の異なるエリアに、異なる圧力で画像にタッチすることによって、異なるレベルの明色化効果を適用することを、6つの異なる段階2601〜2606において示す。図26は、上述したように、タッチ圧力を測定する能力を有するタッチスクリーンを有するコンピューティングデバイス上で動作するいくつかの実施形態の画像編集アプリケーションのものである、GUI400を示す。
いくつかの実施形態では、画像上ブラシツールは、タッチ圧力に基づき画像のエリアに効果を適用する。すなわち、これらの実施形態における画像上ブラシツールは、エリアがタッチされている時にエリアに加えられる圧力に基づき、エリアに適用するべき効果の量を決定する。それゆえ、これらの実施形態における画像上ブラシツールを含む画像編集アプリケーションは、タッチ圧力を測定する能力を有するタッチセンシティブスクリーンを有するコンピューティングデバイス上で動作していなければならない。このようなタッチセンシティブスクリーンは、スクリーンに加えられている圧力を検出し、これを測定するために、加速度計を利用する場合がある。
これより、いくつかの実施形態の画像上ブラシツールの操作例を説明する。最初の3つの段階2601〜2603は、図24を参照して上述されている段階2401〜2403と同一である。段階2604において、ユーザは指2625を、段階2603において指2625があった位置から右へドラッグした。明色化ツールは、指2625によってタッチされたエリア2630をより明るくする。
段階2605において、ユーザは指2625を更に右へドラッグした。しかし、ユーザは、前の段階2604において指2625があった位置から指を右へ動かしている最中には、画像2420をより強く押した。それゆえ、明色化ツールは、タッチされたエリア2635に、前の段階2604におけるよりも多くの明色化効果を適用する。その結果、エリア2635はエリア2630よりも明るく見える。
段階2606において、ユーザは指2625を更に右へドラッグした。しかし、ユーザは、前の段階2605において指2625があった位置から指を右へ動かしている最中には、画像2420をいっそうより強く押した。それゆえ、明色化ツールは、前の段階2605以降にタッチされたエリア2640にいっそう多くの明色化効果を適用する。その結果、エリア2640はエリア2630よりも明るく見える。
これまでに説明されたいくつかの実施形態の画像上ブラシツールは、選択されたエリアに効果を適用する。次のサブセクションは、画像上ブラシツールが、これらの異なる部分の画像特性に基づき、選択されたエリアの異なる部分に効果を選択的に適用することを可能にする、スマートな縁部検出ツールを説明する。
D.スマートな縁部検出ツール
図27は、スマートな縁部検出ツールの使用を概念的に示す。図27は、ユーザが、画像の選択されたエリアの異なる部分に画像処理操作を選択的に適用することを可能にするいくつかの実施形態の画像編集アプリケーションのGUI400を示す。具体的には、本図は、ユーザが、一定の評価基準を満たす画像のエリア内のそれらの画素のみに画像処理操作を適用することを、5つの異なる段階2701〜2705において示す。
上述のように、いくつかの実施形態の画像編集アプリケーションは、ユーザが、画像処理操作を適用するべきエリアを選択することを可能にする。一部のこのような実施形態では、スマートな縁部検出ツールは、画像上ブラシツールが、一定の評価基準を満たすそれらの画素にのみ、対応する画像処理操作を適用することを可能にする。例えば、スマートな縁部検出ツールが起動されているときに、ユーザが、選択されたエリアに明色化操作を適用することを選ぶと、明色化ツールは、選択されたエリア内の青色の画素を明るくするが、赤色の画素は手を付けずにそのままにしておく。
いくつかの実施形態では、スマートな縁部検出ツールは、ユーザによって最初にタッチされた1つ以上の画素を特定する。例えば、ツールはまず、ユーザの画像のスワイプ操作の最中にタッチされた最初の画素を特定し、最初の画素の特性を用いて評価基準を決定する。他の実施形態では、ツールは、ユーザの画像のスワイプ操作の最中にタッチされた画素のセット(最初の数十及び数百個の画素)を特定し、それらの画素の特性を用いて評価基準を決定する。スワイプ操作の最中にタッチされた全ての画素のうち、有効にされた画像上ブラシツールは、評価基準を満たすそれらの画素のみである。以下において、評価基準の決定の詳細について更に説明する。
いくつかの実施形態では、スマートな縁部検出ツールは、画像がタッチされるたびに(すなわち、指が画像から上げられた後にユーザの指が画像に再びタッチするたびに)評価基準を再定義する。他の実施形態では、スマートな縁部検出ツールは、異なる画像上ブラシツールが選択されるか、又はスマートな縁部検出ツールの動作が停止されるまで、評価基準を再定義しない。すなわち、これらの実施形態では、異なる画像上ブラシツールが選択されるか、又はスマートな縁部検出ツールの動作が停止されるまで、最初に決定された評価基準が全ての後続のタッチのために用いられる。
この技法はまた、エリアがユーザによってタッチされるたびに画像のエリアに画像処理操作を漸増的に適用する上述の実施形態のいくつかの画像編集アプリケーションにも適用可能である。すなわち、いくつかの実施形態の画像編集アプリケーションは、評価基準を満たすそれらの画素のみに画像処理操作を漸増的に適用する。
更に、いくつかの実施形態の画像編集アプリケーションは縁部検出を用い、タッチエリア内の検出された縁部によって分離される異なる領域を特定する。これらの実施形態の画像編集アプリケーションは、評価基準を満たし、かつ最初にタッチされた画素のセットを含む特定された領域内にあるそれらの画素に画像処理操作を適用する。
これより、スマートな縁部検出ツールが起動されている状態での画像上ブラシツールの操作例を説明する。第1段階2701は、画像編集アプリケーションが画像表示エリア410内に画像2720を表示している様子を示す。ユーザは、ツール選択ペイン420内に表示されているアイコン2020を選択する。
段階2702において、画像編集アプリケーションは、図示されているように、GUI400内に、選択可能なUI項目2025のセットを表示する。ユーザは、アイコン2050にタッチすることによって明色化ツールを選択する。画像編集アプリケーションは明色化ツールを起動する。
段階2703において、いくつかの実施形態における画像編集アプリケーションは、起動されたのは明色化ツールであることを示すために、アイコン2050を強調表示する。ユーザは、スマートな縁部検出ツールを表すアイコン2710を選択する。いくつかの実施形態では、画像編集アプリケーションはツール表示エリア425内にアイコン2710を表示する。また、いくつかの実施形態では、ユーザが画像上ブラシツール及びスマートな縁部検出ツールを選択する順序は問わない。すなわち、スマートな縁部検出ツールは、一度起動されると、その後に起動されるあらゆる他の画像上ブラシツールを有効にする。
段階2704において、ユーザは、画像2720内に示されているオールの下端部の近くの海の上に指2730を載せる。スマートな縁部検出ツールは、指2730によって最初にタッチされた画像2720の部分内の画素を分析し、画像の他の部分内の他の画素のための、明色化ツールがそれらの画素に明色化効果を適用するために満たすべき評価基準を設定する。最初にタッチされる画像の部分は、画像2720内に示されている海の内部であるため、本例における明色化ツールは、海の色と同様の色を有するそれらの画素のみの上に明色化効果を適用する。
段階2705において、ユーザは画像2720にタッチしながら指2730を右へドラッグした。明色化ツールは、指2725によってタッチされたエリアをより明るくする。しかし、明色化ツールは、画像2720内に示されているオールの下端部を、たとえ指2730がオールのこの部分にタッチしても、より明るくしない。これは、スマートな縁部検出が起動され、明色化ツールが、前の段階2704において設定された評価基準を満たすそれらの画素のみを明るくすることを可能にしたためである。
図28は、画像編集アプリケーションのユーザが、画像のエリアに、そのエリアを擦ることによって画像処理操作を選択的に適用することを可能にするために、いくつかの実施形態が実行するプロセス2800を概念的に示す。いくつかの実施形態におけるプロセス2800は画像編集アプリケーションによって実行される。ユーザからのタッチ入力(例えば、擦るジェスチャ)を受け取るためのタッチセンシティブスクリーン又はニアタッチセンシティブスクリーンを有するコンピューティングデバイス上で画像編集アプリケーションが動作すると、プロセス2800は開始する。プロセス2800は、(2805において)画像編集アプリケーションの画像表示エリア内に画像を表示することによって、始まる。
次に、プロセス2800は(2810において)画像のエリアの選択を受け取る。次に、プロセス2800は(2815において)、画素間の類似度を判定するための一定の評価基準を特定する。いくつかの実施形態におけるプロセス2800は、選択されたエリア内の画素のうちの一部の画像特性を用いる。より具体的には、いくつかの実施形態におけるプロセス2800は、ユーザによって最初にタッチされた、選択されたエリアの画素のセットを用いる。
異なる実施形態は、画像特性を用いて評価基準を異なって特定する。例えば、いくつかの実施形態におけるプロセス2800は画素のセットの平均色値を用いる。プロセス2800はRGB色モデルの平均色値をLAB色空間の色値に変換する。次に、プロセス2800は、LAB色空間の色値からの距離の範囲を評価基準として定義する。米国特許第8,229,211号には、RGB色モデルの色値のLAB色空間の色値への変換の更なる詳細が記載されている。米国特許第8,229,211号は本明細書において参照により組み込まれている。
次に、プロセス2800は(2820において)、特定された評価基準を満たす画素に画像処理操作(例えば、飽和、脱飽和、明色化、暗色化、シャープ化、ソフト化等)を適用する。いくつかの実施形態では、プロセス2800は、定義された範囲内に含まれるLAB色空間の色値を有するエリア内のそれぞれの画素に画像処理操作を適用する。次に、プロセスは終了する。
E.画像処理操作の適用解除
上述のように、いくつかの実施形態における画像上ブラシツール群の一部はエリアに、対応する効果を適用する。いくつかの実施形態では、画像編集アプリケーションは、エリアに適用されている効果を除去する画像上ブラシツールを提供する。
図29は、ユーザが、画像のエリアから画像処理操作を適用解除することを可能にするいくつかの実施形態の画像編集アプリケーションのGUI400を概念的に示す。具体的には、本図は、ユーザが、画像のエリアを擦ることによって、画像のエリアに適用された画像処理操作を漸増的に適用解除することを、5つの異なる段階2901〜2905において示す。図29は、GUI2400は画像表示エリア2425を含むことを示す。
いくつかの実施形態では、いくつかの実施形態の画像編集アプリケーションは、ユーザが、画像のエリアを擦ること(例えば、画像のエリアを1回以上スワイプすること)によって、画像のエリアに適用された画像処理操作を適用解除することを可能にする消しゴムツールを提供する。例えば、消しゴムツールは、明色化効果を除去することによって、明色化効果が適用された画像の特定のエリアを暗くする。すなわち、消しゴムツールは画像のエリアを、明色化効果が適用される前の以前の状態に戻す。
いくつかの実施形態では、消しゴムツールは、画像のエリアがタッチされるたびに画像処理操作を漸増的に適用解除する。例えば、消しゴムツールは、明色化効果が適用された画像の特定のエリアを増分量だけ暗くする。特定のエリアが再びタッチされると、消しゴムツールはエリアを増分量だけ更に暗くする。いくつかの実施形態では、画像のエリアが、画像処理操作が適用される前の状態に戻ると、消しゴムツールは画像処理操作を適用解除しない。
異なる実施形態は、除去するべき画像処理操作の増分量を異なって決定する。例えば、消しゴムツールは、選択された画像操作に基づく既定の増分値ずつ画像特性値を増加又は減少させる。例えば、適用された画像処理操作が明色化操作である場合には、消しゴムツールはエリアの輝度値を既定の輝度値デルタずつ減少させる。このデルタは、画像ブラシツール上の一部のものがタッチ毎にエリアに適用する同量の輝度値を表す場合がある。いくつかの実施形態では、消しゴムツールは画像特性値を1パーセントずつ増加又は減少させる。また、いくつかの実施形態における消しゴムツールは非線形関数を用いて画像のエリアの画像特性値を非線形的に減少又は増加させる。
いくつかの実施形態の画像上ブラシツールが上述のように行うのと同様に、消しゴムツールは、画像処理操作を漸増的に適用解除するために、マスク値を用いる。すなわち、いくつかの実施形態における消しゴムツールは、マスク値が付与された画素のセットに画像処理操作を適用解除するために、マスク値を変更する。
いくつかの実施形態では、消しゴムツールは、タッチ圧力に基づき画像のエリアから画像処理操作を適用解除する。すなわち、これらの実施形態における消しゴムツールは、エリアから適用解除するべき画像処理操作の量を、そのエリアがタッチされている時にエリアに加えられている圧力に基づき、決定する。それゆえ、これらの実施形態の消しゴムツールを含む画像編集アプリケーションは、タッチ圧力を測定する能力を有するタッチセンシティブスクリーンを有するコンピューティングデバイス上で動作していなければならない。上述のように、このようなタッチセンシティブスクリーンは、スクリーンに加えられている圧力を検出し、これを測定するために、加速度計を利用する場合がある。
いくつかの実施形態では、消しゴムツールは画像処理操作を漸増的に適用解除しない。その代わりに、これらの実施形態の消しゴムツールは、画像のエリアに適用された画像処理操作を完全に除去する。すなわち、消しゴムツールは画像のエリアを、画像処理操作が適用される前の元の状態へ復元する。
これより、いくつかの実施形態の消しゴムツールの操作例を説明する。第1段階2901は、画像編集アプリケーションが画像表示エリア410内に画像2420を表示している様子を示す。本例では、第1段階2901は、画像2420のエリア2910に明色化効果が適用された後のGUI400を示す。画像編集アプリケーションはまた、ツール表示エリア425内にアイコン2915も表示する。アイコン2915は消しゴムツールを表す。
段階2902において、ユーザはアイコン2915を選択し、画像編集アプリケーションはアイコン2915の選択に応答して消しゴムツールを起動する。段階2903において、ユーザは、画像2420内においてエリア2910の左に示されている空の上に指2920を載せる。次の段階2904は、ユーザが画像2420にタッチしながら指2920を右へドラッグし、エリア2910を通り越したことを示す。消しゴムツールは、エリア2910と、指2920によってスワイプされたエリアとの交点であるエリア2925から明色化効果を漸増的に除去する。図示されているように、消しゴムツールはエリア2925を暗くした。
段階2904において、ユーザは指2920を左方向へドラッグした。ユーザが指2920を左へドラッグする際に、指2920はエリア2925に再びタッチする。消しゴムツールはエリア2925を更に暗くする。本例では、消しゴムツールは、エリア2925が、明色化効果が適用される前の状態に戻るように、エリア2925に適用されていた明色化効果を完全に動かした。
図30は、画像編集アプリケーションのユーザが、画像のエリアから、そのエリアを擦ることによって画像処理操作を適用解除することを可能にするために、いくつかの実施形態が実行するプロセス3000を概念的に示す。いくつかの実施形態におけるプロセス3000は画像編集アプリケーションによって実行される。ユーザからのタッチ入力(例えば、擦るジェスチャ)を受け取るためのタッチセンシティブスクリーン又はニアタッチセンシティブスクリーンを有するコンピューティングデバイス上で画像編集アプリケーションが動作すると、プロセス3000は開始する。表示された画像が、画像処理操作が適用されたエリアを有している場合に、プロセス3000は開始する。
プロセス3000は、画像編集アプリケーションにいくつかの実施形態の消しゴムツールを起動させるユーザ入力を(3005において)受け取ることによって、始まる。いくつかの実施形態では、このようなユーザ入力は、アイコン(例えば、上記の図29に示されているアイコン2915)を選択することを含む。
次に、プロセス3000は(3010において)、画像のエリアがタッチされているかどうかを判定する。いくつかの実施形態では、プロセス3000は、画像のエリアがタッチされているかどうかを判定するために、コンピューティングデバイスからタッチ情報(例えば、ユーザの指がタッチしているタッチセンシティブスクリーン又はニアタッチセンシティブスクリーンのエリアの座標)を受け取る又は取得する。プロセスが(3010において)、エリアがタッチされていないと判定した場合には、プロセス3000は、ユーザの、表示された画像のエリアのタッチを待つために、3010へループして戻る。
プロセス3000が(3010において)、エリアがタッチされていると判定した場合には、プロセスは、タッチはエリアから動かされたかどうかを判定するために、3015へ進む。いくつかの実施形態では、タッチされていたエリアがもはやタッチされていない場合には、プロセス3000は、タッチはエリアから動かされたと判定する。それゆえ、ユーザがエリアから指を上げるか、又はユーザが指を画像の別のエリアへ動かした場合には、プロセス3000は、タッチはエリアから動かされたと判定する。プロセス3000が(3015において)、タッチはエリアから動かされなかったと判定した場合には、プロセス3000は、タッチが動くのを待つために、3015へループして戻る。
プロセス3000が(3015において)、タッチはエリアから動かされたと判定した場合には、プロセス3000は(3020において)、エリアは、画像処理操作が適用されたエリアに重なっているかどうかを判定する。プロセス3000が(3020において)、重なったエリアが存在すると判定した場合には、プロセス3000は(3025において)、重なったエリアから画像処理操作を増分量だけ適用解除する。適用解除するべきものが残っていない場合には、プロセス3000は画像処理操作を適用解除しない。
異なる実施形態は、除去するべき画像処理操作の増分量を異なって決定する。例えば、いくつかの実施形態におけるプロセス3000は、重なったエリアに適用されている画像処理操作に基づく既定の増分値ずつ画像特性値を増加又は減少させる。例えば、重なったエリアに適用された画像処理操作が明色化操作である場合には、プロセス3000はエリアの輝度値を既定の輝度値デルタずつ減少させる。このデルタは、画像ブラシツール上の一部のものがタッチ毎に適用する同量の輝度値を表す場合がある。いくつかの実施形態では、プロセス3000は画像特性値を1パーセントずつ増加又は減少させる。また、いくつかの実施形態におけるプロセス3000は非線形関数を用いて画像のエリアの画像特性値を非線形的に減少又は増加させる。
プロセス3000が(3020において)、重なったエリアは存在しないと判定した場合には、プロセスは3030へ進む。次に、プロセス3000は(3030において)、画像の別のエリアがタッチされているかどうかを判定する。プロセス3000が(3030において)、画像の他のエリアがタッチされていると判定した場合には、プロセス3000は、タッチがこのエリアから動くのを待つために、3015へループして戻る。プロセス3000が(3030において)、画像の他のエリアはタッチされていないと判定した場合には、プロセス3000は終了する。
セクションIIはいくつかの実施形態のいくつかの画像上ブラシツールを説明した。次のセクションは、画像にいくつかの特殊効果を適用するいくつかの画像上ツールを説明する。
III.画像上効果ツール
いくつかの実施形態は、ユーザが、表示された画像の一部分を選択することによって画像処理操作又は効果を適用することを可能にする画像上効果ツールを提供する。これらの画像上効果ツールはブラシツールではない。すなわち、これらの画像上効果ツールはエリアに、ブラシツールによって定義されていない効果を適用する。
A.画像上グラデーションツール
図31は、ユーザが、画像の選択されたエリアの異なる部分に画像処理操作を選択的に適用することを可能にするいくつかの実施形態の画像上効果ツールの使用を概念的に示す。具体的には、本図は、ユーザが、画像にタッチすることによって画像の部分にグラデーション効果を適用することを、5つの異なる段階3101〜3105において示す。図31はGUI400を示す。
上述のように、いくつかの実施形態におけるツール選択ペイン420は、画像編集アプリケーションの異なる編集ツールセット群を表すアイコンのセットを表示する。ツール選択ペイン420は、いくつかの実施形態ではツール選択ペイン430内に表示されている左から5つ目のアイコンである、アイコン3110を含む。ツール選択ペイン420内に表示されているアイコン3110はいくつかの実施形態における画像上効果ツール群を表す。ユーザがアイコン3110を選択すると、いくつかの実施形態における画像編集アプリケーションは、ツール表示エリア425(又はGUI400のその他の部分)内に、これらの画像上効果ツールを表す選択可能なUI項目3125のセットを表示する。ツール群の1つが選択されると(ユーザが、そのツールを表すアイコンを選択すると)、そのツールが起動され、表示された画像へのユーザ入力は、選択されたツールへの入力として扱われる。
いくつかの実施形態における選択可能なUI項目3125のセットはサムネイル及びアイコンのセットである。いくつかの実施形態では、選択可能なUI項目3125のセットは、アイコン3110が選択されると展開するカードのうちの1枚の上にある。米国仮特許出願第61/607,574号には、カードの展開についての更なる詳細が記載されている。
選択可能なUI項目3125のセット内のサムネイル及びアイコンは多数の異なる効果を表す。例えば、UI項目3130は画像上暗色グラデーションツールを表す。UI項目3135は画像上暖色グラデーションツールを表す。UI項目3140は画像上寒色グラデーションツールを表す。UI項目3145はビネットツールを表す。UI項目3150はティルトシフトツールを表す。ツールはそれぞれ、起動されている時には、ユーザによって、エリアにタッチすることによって画定される画像のエリアに効果を適用する。
これより、画像上グラデーションツールの操作例を説明する。第1段階3101は、指3170でサムネイル3110にタッチすることによるユーザのサムネイル3110の選択を示す。画像編集アプリケーションは、サムネイル3110の選択に応答して、サムネイル3110によって表されている画像3115を画像表示エリア410内に表示する。
段階3102において、ユーザは、ツール選択ペイン420内に表示されているアイコン3110を選択する。それに応答して、画像編集アプリケーションは段階3103において、図示されているように、GUI400内に、選択可能なUI項目3125のセットを表示する。ユーザは、UI項目3130にタッチすることによって画像上暗色グラデーションツールを選択する。画像編集アプリケーションは画像上暗色グラデーションツールを起動する。
段階3104において、ユーザは、指3170で画像3115の最上部の近くのロケーションにタッチしたか、又は画像3115にタッチしながら指3170を下方へそのロケーションまでドラッグした。画像上暗色グラデーションツールは画像3115の最上部から、指3170があるロケーションまで暗色グラデーション効果を適用した。指3170よりも上にある画像の部分は、この部分にグラデーション効果が適用されたことを示すために、以前よりも暗く描画されている。
段階3105は、ユーザが、画像3115の底部により近い画像のロケーションにタッチしたか、又は画像3115にタッチしながら指3170をこのロケーションまでドラッグした後のGUI400を示す。暗色グラデーションツールは、前の段階3104において指3170があった垂直ロケーションから、現在の段階3105における指3170の垂直ロケーションまでグラデーション効果を適用した。指3170よりも上にある画像の部分は、この部分にグラデーション効果が適用されたことを示すために、以前よりも暗く描画されている。
いくつかの実施形態では、画像上暗色グラデーションツールは、ユーザが、画像内の2箇所のロケーションにタッチすることによってグラデーション効果を適用することを可能にする。ユーザが、上部のロケーション及び下部のロケーションの2箇所のロケーションにタッチすると、画像上暗色グラデーションツールは、2箇所のロケーションのそれぞれと交わる不可視の水平線を引き、2本の線の間の画像の部分の上にグラデーション効果を適用する。いくつかの実施形態では、これらの2本の線は平行線であり、2本の線の間の距離は、2箇所のロケーションにタッチするために使われている2本の指の一方又は両方を互いにより近く又はより遠くへドラッグすることによって、調整することができる。更に、いくつかの実施形態では、画像上暗色グラデーションツールは、ユーザが2本の線を、2本の線が水平でなくなるように回転させることを可能にする。更に、画像上暗色グラデーションツールは2本の線の間の画像の部分の上に異なる量のグラデーション効果を適用する。例えば、いくつかの実施形態では、2本の線の一方の付近の画素は最も暗くなり(例えば、100%のグラデーション効果を表す)、他方の線の近くの画素は最も明るくなる(例えば、0%のグラデーション効果を表す)。いくつかのこのような実施形態では、部分内の画素に適用されるグラデーション効果の量は2本の線のいずれかへの画素の近接度に依存する。2本の線の使用は、本出願に説明されている他のグラデーションツール(例えば、暖色グラデーションツール)にも適用可能である。
図32は、画像編集アプリケーションのユーザが画像にグラデーション効果を適用することを可能にするためにいくつかの実施形態が実行するプロセス3200を概念的に示す。いくつかの実施形態におけるプロセス3200は画像編集アプリケーションによって実行される。ユーザからのタッチ入力(例えば、タップ操作、スワイプ操作等)を受け取るためのタッチセンシティブスクリーン又はニアタッチセンシティブスクリーンを有するコンピューティングデバイス上で画像編集アプリケーションが動作すると、プロセス3200は開始する。プロセス3200は、(3205において)画像編集アプリケーションの画像表示エリア内に画像を表示することによって、始まる。
次に、プロセス3200は(3210において)、表示された画像内のロケーション上におけるタッチ入力を受け取る。いくつかの実施形態では、プロセス3200は、ユーザがロケーション上をタップした時に、ロケーション上におけるタッチ入力を受け取る。プロセス3200は、ユーザが、(例えば指を上げずに)表示された画像にタッチしながら、指を、表示された画像内の別のロケーションからドラッグした時に、タッチ入力を受け取る。
次に、プロセス3200は(3215において)画像にグラデーション効果を適用する。ユーザが、表示された画像内のロケーションをタップすると、プロセス3200は画像の最上部から画像のそのロケーションまでグラデーション効果を適用する。ユーザが指を画像の第1のロケーションから、第1のロケーションよりも画像の最上部から遠い第2のロケーションまでドラッグすると、プロセス3200は、画像の最上部から第2のロケーションまで垂直にまたがる画像の部分にグラデーション効果を適用する。画像の最上部から第1のロケーションまでまたがる画像の部分にグラデーション効果がすでに適用されている場合には、プロセス3200は、第1のロケーションから第2のロケーションまで垂直にまたがる画像の部分にグラデーション効果を適用する。
上述したいくつかの異なる画像上グラデーション効果ツールは画像に異なるグラデーション効果を適用する。適用されると、これらの異なるグラデーション効果は異なる視覚特徴を提供する。例えば、「暗色グラデーション」効果が適用された画像の部分は暗く見える。「暖色グラデーション」効果は画像の一部分を「暖かく」見せる。画像上グラデーションツールは、画像の画素を異なって処理することによって、これらの異なる視覚特徴を実現する。次の4つの図、図33〜36は、画像上グラデーション効果ツールが適用し得る2つの異なるグラデーション効果の例を示す。
図33は、ユーザによって選択された画像の一部分に特定のグラデーション効果を適用する画像上グラデーション効果ツールのアーキテクチャを概念的に示す。具体的には、本図は、画像上グラデーション効果ツールが「青色」グラデーション効果を適用することを示す。図示されているように、図33は、グラデーション効果ツール3300、元の画像データ3330、及びグラデーション画像3335を示す。
元の画像3330は、グラデーション効果が適用される前の選択された画像のための画像データである。選択された画像は、画像編集アプリケーションの画像表示エリア内に表示される画像である。グラデーション画像3335は、画像にグラデーション効果を適用してできた画像のための画像データである。いくつかの実施形態では、グラデーション画像3335は、元の画像から新しい画像を生成するために実行する命令のセットである。
グラデーション効果ツール3300は元の画像に青色グラデーション効果を適用する。グラデーション効果ツール3300は、白黒画像生成器3305、カラー画像生成器3310、画像混合器3315、グラデーション計算器3325、及びグラデーション画像生成器3320を含む。
白黒(B/W)画像生成器3305は元の画像3330に基づき白黒画像を生成する。いくつかの実施形態では、B/W画像生成器3305は白黒画像内の青色を強調する。いくつかの実施形態におけるB/W画像生成器3305は青色のRGBトリプレット、例えば、(0.02、0.018、0.77)を用いる。トリプレット内の3つの数は原色の3つのチャネル−すなわち、赤色、緑色、及び青色−をそれぞれ表す。3つの数はそれぞれ、色の範囲を表す、0〜1の範囲を有する。例えば、括弧内の第1の数については、0は青色がないことを表し、1は最大限の青色を表す。当業者は、その他の範囲、例えば、0〜255、0%〜100%、0〜65535等がRGB値のために用いられてもよいことを認識している。
青色を強調するB/W画像を生成するために、B/W画像生成器3305は元の画像内のそれぞれの画素と青色RGBトリプレットの2乗とのドット積を計算する。このようなドット積は以下の擬似コードで表すことができる。
c1=dot(image.rgb,blue.rgb);
image.rgbは元の画像内の画素のRGBトリプレットである。blue.rgbは青色RGBトリプレットである。C1はドット積であり、結果として生じるB/W画像内の対応する画素のための明度値(例えば、輝度値、RGB合計、等)でもある。B/W画像内の画素のための明度値は0〜1の(グレイスケール)範囲を有する。ここで、0は黒色であり、1は白色である。
カラー画像生成器3310は、B/W画像生成器3305によって生成されたB/W画像を青色画像に変換する。いくつかの実施形態では、カラー画像生成器3310は、B/W画像内の対応する画素の明度値を2乗し、青色RGBトリプレットに、2乗された明度値を乗算し、次に、乗算の結果を2倍にすることによって、青色画像のそれぞれの画素のRGBトリプレットを生成する。これは以下の擬似コードで表すことができるであろう。
blueImage=2.0*(c1)*blue.rgb。
blueImageは、生成された青色画像内の画素のRGB値である。
画像混合器3315は、画像内の明るいエリアはそれらの白色度を保持し、それと同時に、より暗いエリアは青く見えることを確実にするために、0〜1のグレイスケールを用いることによって元の画像と青色画像とを混合する。混合は、以下の擬似コード例を用いて実行することができる。
mixedImage=mix(originalImage,blueImage,(1.0−c1))。
mixedImageは、混合された画像内の画素のRGBトリプレットである。originalImageは元の画像内の対応する画素のRGBトリプレットである。mix()は関数である。異なる実施形態は異なるmix()関数を用いる。いくつかの実施形態では、mix()関数は3つの入力値/トリプレットの算術平均を計算する。トリプレットが単一値(例えば、1.0−c1)を用いて平均される場合には、それぞれの値はその単一値を用いて平均される。
グラデーション計算器3325は元の画像のそれぞれの画素のためのグラデーション値を計算する。いくつかの実施形態におけるグラデーション計算器3325は、元の画像内の画素のロケーションに基づき特定の画素のためのグラデーション値を計算する。いくつかの実施形態における画像上グラデーション効果ツールはユーザのタッチの垂直ロケーションに基づきグラデーション効果を適用するので、グラデーション計算器3325は特定の画素の行番号に基づきグラデーション値を計算する。特定の画素のためのグラデーション値の計算はまた、タッチされたロケーションの行番号及び元の画像の全体高さにも基づく。
いくつかの実施形態では、画素の行番号は画素のy座標であり、一番上の画素(すなわち、画像の画素の最上部の行)は0のy座標を有し、最下部の画素(すなわち、画像の画素の最下部の行)は全体高さのy座標(すなわち、画像内の画素の列内の画素の数−1)を有する。すなわち、y座標は画像の最上部の行から開始する。
いくつかの実施形態におけるグラデーション計算器3325は、特定の画素がユーザのタッチの垂直ロケーションよりも下にある場合には、特定の画素のためのグラデーション値を0に設定する。これは以下の擬似コードで表される。
row>heightTouchedである場合には、
gradient=0.0;
rowは特定の画素のy座標値である。heightTouchedはユーザのタッチ(例えば、タッチされた画素のセットの垂直中心画素(単数又は複数))のy座標である。グラデーション計算器は、ユーザのタッチを受け取るユーザインタフェースモジュール(不図示)からのタッチ情報(すなわち、ユーザ入力)からheightTouched値を得る。
いくつかの実施形態におけるグラデーション計算器3325は、特定の画素がユーザのタッチの垂直ロケーションよりも上にある場合には、以下の擬似コードを用いて特定の画素のためのグラデーション値を計算する。
topY=min(0.0,heightTouched.n−0.2);
r=行/(height−1);
r=(r−topY)/(heightTouched.n−topY);
(r<0.8)である場合には、
gradient=(0.1r+(0.8−r)*0.8)/0.8;
そうでなく、(r<0.9)である場合には、
gradient=((r−0.8)*0.03+(0.9−r)*0.1)/0.1;
そうでない場合には、
gradient=((r−0.9)*0.03+(1−r)*0.1)/0.1;
TopYは、画像の最上部の付近の画素のためのグラデーション効果の緩やかな減衰を適用するために計算される。rは、0〜1の範囲を有する正規化された行番号である。heightは元の画像の全体高さ(すなわち、画素の列内の画素の数)である。heightTouched.nは、正規化されたheightTouchedであり、0〜1の範囲を有する。ここで、0は元の画像の最上部の画素行であり、1は元の画像の最下部の画素行である。
グラデーション画像生成器3320は、グラデーション計算器3325によって計算されたグラデーション値を用いて混合画像を元の画像とブレンドする。いくつかの実施形態では、グラデーション画像生成器3320は、新しい画像を生成するべく混合画像を元の画像とブレンドするために、以下の擬似コード用いる:
gradImage=originalImage*(1−gradient)+mixedImage*gradient;
gradImageは、元の画像に青色グラデーション効果を適用することによって生成された新しい画像内の画素のRGBトリプレットである。
これより、図33及び34を参照して青色グラデーション効果ツール3300の操作例を説明する。図34は、いくつかの実施形態が、画像に青色グラデーション効果を適用するために実行するプロセス3400を概念的に示す。いくつかの実施形態におけるプロセス3400はグラデーション効果ツール3300等の画像上グラデーション効果ツールによって実行される。画像上グラデーション効果ツールが画像編集アプリケーションによって起動され、表示された画像のための画像データを受け取ると、プロセス3400は開始する。
プロセス3400は、(3405において)元の画像に基づき1つの色を強調する白黒(B/W)画像を生成することによって、始まる。いくつかの実施形態におけるプロセス3400は、青色RGBトリプレット、例えば、(0.02、0.018、0.77)を用いることによってB/W画像内で青色を強調する。青色RGBトリプレット内の値は、青色が赤色及び緑色よりも大きいかぎり、実施形態によって異なってもよい。例えば、トリプレット内の青色とその他の色との差は1桁であってもよい。
いくつかの実施形態におけるプロセス3400は、元の画像の対応する画素(すなわち、同じ座標を有する画素)のRGBトリプレットを用いてB/W画像のそれぞれの画素のための明度値を計算する。例えば、B/W画像生成器3305は、元の画像の対応する画素のRGBトリプレット、(0.5、0.5、0.5)、と青色RGBトリプレットとのドット積をとることによって、B/W画像の画素のための明度値を計算する。すると、B/W画像の画素のための明度値は、0.02*0.5+0.018*0.5+0.77*0.5となるであろう。これは0.404になる。
次に、プロセス3400は、(3410において)、B/W画像に基づき、強調された色のためのカラー画像を生成する。いくつかの実施形態では、プロセス3400は、B/W画像内の対応する画素の明度値に基づき青色画像のそれぞれの画素のためのRGBトリプレットを計算することによって、青色画像を生成する。例えば、カラー画像生成器3310は、B/W画像内の対応する画素の以前に生成された明度値0.404を用いて青色画像のための画素のRGBトリプレットを計算する。青色画像内の画素のRGBトリプレットは2.0*(0.404)*(0.02、0.018、0.77)となり、これは、(0.00652864、0.005875776、0.25135264)になる。
次に、プロセス3400は(3415において)、B/W画像に基づき、元の画像及び生成されたカラー画像を混合する。例えば、画像混合器3315は、元の画像、及び明度値0.404を用いて生成されたカラー画像の画素、並びにB/W画像内の対応する画素を混合する。上述のように、元の画素はRGBトリプレット(0.5、0.5、0.5)を有する。青色画像内の対応する画素のRGBトリプレットは(0.00652864、0.005875776、0.25135264)である。それゆえ、いくつかの実施形態では、混合画像内の対応する画素のRGBトリプレットは、((0.5+0.00652864+0.0404)/3、(0.5+0.005875776+0.0404)/3、(0.5+0.25135264+0.0404)/3)となり、これは、(0.182309547、0.182091925、0.263917547)になる。
次に、プロセス3400は(3420において)、元の画像内のロケーション上におけるタッチ入力を受け取る。いくつかの実施形態では、プロセス3400は、ユーザがロケーション上をタップした時に、ロケーション上におけるタッチ入力を受け取る。プロセス3400は、ユーザが、(例えば、指を上げずに)表示された画像にタッチしながら、指を元の画像内の別のロケーションからドラッグした時に、タッチ入力を受け取る。例えば、元の画像は768画素の高さを有し、タッチのロケーションは画像の最上部から300番目の画素である。いくつかの実施形態では、タッチされたと見なされる画素は、ユーザの指によってタッチされた画素のセットの中心にある画素である。いくつかの実施形態では、タッチされたと見なされる画素は、ユーザの指によってタッチされた画素のセットの平均画素座標である。
次に、プロセス3400は(3425において)元の画像のそれぞれの画素のためのグラデーション値を計算する。いくつかの実施形態では、プロセス3400は、元の画像内の画素のロケーションに基づき特定の画素のためのグラデーション値を計算する。いくつかの実施形態における画像上グラデーション効果ツールはユーザのタッチの垂直ロケーションに基づきグラデーション効果を適用するので、プロセス3400は特定の画素の行番号に基づきグラデーション値を計算する。特定の画素のためのグラデーション値の計算はまた、タッチされたロケーションの行番号及び元の画像の全体高さにも基づく。
例えば、グラデーション計算器3325は、元の画像の最上部から200番目の画素となる画素のためのグラデーション値を計算する。グラデーション計算器3325はtopYを計算する。topYは0.0及び(200/768)−0.2の最小値であり、これは0.0になる。グラデーション計算器3325は、正規化された行番号を計算する。正規化された行番号は(200/(768−1)−0.0)/(300/768−0.0)となり、これは0.668407311になる。次に、グラデーション計算器3325はグラデーション値を計算する。正規化された行番号は0.8よりも小さいので、グラデーション値は(0.1*0.668407311+(0.8−0.668407311)*0.8)/0.8となり、これは0.215143603になる。
次に、プロセス3400は(3430において)、計算されたグラデーション値を用いて混合画像及び元の画像をブレンドする。プロセス3400はブレンド画像のそれぞれの画素のためのRGBトリプレットを計算する。例えば、グラデーション画像生成器3320はブレンド画像内の画素のためのRGBトリプレットを計算する。元の画像内の対応する画素は、最上部から200番目の画素となる画素である。それゆえ、ブレンド画像内の画素のためのRGBトリプレットは、(0.5、0.5、0.5)*(1−0.215143603)+(0.182309547、0.182091925、0.263917547)*0.215143603となり、これは(0.431650931、0.431604111、0.44920837)になる。
図35は、ユーザによって選択された画像の一部分に特定のグラデーション効果を適用する画像上グラデーション効果ツールのアーキテクチャを概念的に示す。具体的には、本図は、画像上グラデーション効果ツールが「コーヒー」グラデーション効果を適用することを示す。図示されているように、図35は、グラデーション効果ツール3500、元の画像データ3520、及びグラデーション画像3525を示す。
元の画像3520は、グラデーション効果が適用される前の選択された画像のための画像データである。選択された画像は、画像編集アプリケーションの画像表示エリア内に表示される画像である。グラデーション画像3525は、画像にグラデーション効果を適用してできた画像のための画像データである。いくつかの実施形態では、グラデーション画像3525は、元の画像から新しい画像を生成するために実行する命令のセットである。
グラデーション効果ツール3500は元の画像にコーヒーグラデーション効果を適用する。グラデーション効果ツール3500は、白黒画像生成器3505、画像混合器3510、グラデーション計算器3325、及びグラデーション画像生成器3515を含む。
白黒(B/W)画像生成器3505は元の画像3530に基づき白黒画像を生成する。いくつかの実施形態におけるB/W画像生成器は、B/W画像を生成するために、B/W RGBトリプレット、例えば、(0.2、0.7、0.1)を用いる。トリプレット内の3つの数はそれぞれ、色の範囲を表す0〜1の範囲を有する。B/W画像を生成するために、B/W画像生成器3505は元の画像内のそれぞれの画素のためのRGBトリプレットとB/W RGBトリプレットとのドット積を計算する。いくつかの実施形態におけるB/W画像生成器3505はまた、より明るいB/W画像を得るために、ドット積を2.0によってスケール変更する。このようなドット積は以下の擬似コードで表すことができる。
bw=2.0*dot(im,(0.2、0.7、0.1))=2.0*(im.r*0.2+im.g*0.7+im.b*0.1);
bwはB/W画像内の画素の明度値である。imは、元の画像内の対応する画素のRGBトリプレット(im.r,im.g,im.b)である。
画像混合器3510は、茶色がかった色を定義するコーヒーRGBトリプレットを用いることによって、元の画像及びB/W画像を混合する。いくつかの実施形態では、コーヒーRGBトリプレットは(0.7、0.5、0.35)である。いくつかの実施形態における画像混合器3510は、元の画像の画素のRGB値にコーヒーRGBトリプレット及びB/W画像の画素の明度値を乗算することによって、元の画像及びB/W画像を混合する。このような混合は以下の擬似コードで表すことができる。
mixedImage=im*coffeeRGB*bw;
mixedimageは、混合された画像内の画素のRGBトリプレットである。coffeeRGBはコーヒーRGBトリプレットである。bwは、B/W画像生成器3505によって生成されたB/W画像内の対応する画素のRGBトリプレットである。
グラデーション画像生成器3520は、グラデーション計算器3325によって計算されたグラデーション値を用いて混合画像を元の画像とブレンドする。いくつかの実施形態では、グラデーション画像生成器3520は、新しい画像を生成するべく混合画像を元の画像とブレンドするために、以下の擬似コード用いる。
gradImage=originalImage*(1−gradient)+mixedImage*gradient;
gradImageは、元の画像にコーヒーグラデーション効果を適用することによって生成された新しい画像内の画素のRGBトリプレットである。
これより、図35及び36を参照してコーヒーグラデーション効果ツール3500の操作例を説明する。図36は、いくつかの実施形態が、画像にコーヒーグラデーション効果を適用するために実行するプロセス3600を概念的に示す。いくつかの実施形態におけるプロセス3600はグラデーション効果ツール3500等の画像上グラデーション効果ツールによって実行される。画像上グラデーション効果ツールが画像編集アプリケーションによって起動され、表示された画像のための画像データを受け取ると、プロセス3600は開始する。
プロセス3600は、(3605において)白黒(B/W)画像を生成することによって、始まる。いくつかの実施形態におけるプロセス3600は、B/W RGBトリプレット、例えば、(0.2、0.7、0.1)を用いることによって、B/W画像を生成する。いくつかの実施形態におけるプロセス3600は、元の画像の対応する画素(すなわち、同じ座標を有する画素)のRGBトリプレットを用いてB/W画像のそれぞれの画素のための明度値を計算する。例えば、B/W画像生成器3505は、元の画像の対応する画素のRGBトリプレット、例えば、(0.3、0.4、0.5)とB/W RGBトリプレットとのドット積をとることによって、B/W画像の画素のための明度値を計算する。すると、B/W画像の画素のための明度値は、2.0*(0.3*0.2+0.3*0.7+0.5*0.1)となるであろう。これは0.64になる。
次に、プロセス3600は(3610において)、コーヒーRGBトリプレット、例えば、(0.7、0.5、0.35)を用いて、元の画像及びB/W画像を混合する。例えば、画像混合器3515は、B/W画像内の対応する画素の明度値0.64を用いて元の画像及び生成されたカラー画像の画素を混合する。上述のように、元の画素はRGBトリプレット(0.3、0.4、0.5)を有する。それゆえ、混合画像内の対応する画素のRGBトリプレットは、(0.3、0.4、0.5)*(0.7、0.5、0.35)*0.64となり、これは(0.0768、0.128、0.112)になる。
次に、プロセス3600は(3615において)、元の画像内のロケーション上におけるタッチ入力を受け取る。いくつかの実施形態では、プロセス3600は、ユーザがロケーション上をタップした時に、ロケーション上におけるタッチ入力を受け取る。プロセス3600は、ユーザが、(例えば、指を上げずに)表示された画像にタッチしながら、指を元の画像内の別のロケーションからドラッグした時に、タッチ入力を受け取る。例えば、元の画像は768画素の高さを有し、タッチのロケーションは画像の最上部から400番目の画素である。いくつかの実施形態では、タッチされたと見なされる画素は、ユーザの指によってタッチされた画素のセットの中心にある画素である。いくつかの実施形態では、タッチされたと見なされる画素は、ユーザの指によってタッチされた画素のセットの平均画素座標である。
次に、プロセス3600は(3620において)元の画像のそれぞれの画素のためのグラデーション値を計算する。いくつかの実施形態では、プロセス3600は、元の画像内の画素のロケーションに基づき特定の画素のためのグラデーション値を計算する。いくつかの実施形態における画像上グラデーション効果ツールは、ユーザのタッチの垂直ロケーションに基づきグラデーション効果を適用するので、プロセス3600は特定の画素の行番号に基づきグラデーション値を計算する。特定の画素のためのグラデーション値の計算はまた、タッチされたロケーションの行番号及び元の画像の全体高さにも基づく。
例えば、グラデーション計算器3325は、元の画像の最上部から300番目の画素となる画素のためのグラデーション値を計算する。グラデーション計算器3525はtopYを計算する。topYは0.0及び(300/768)−0.2の最小値であり、これは0.0になる。グラデーション計算器3525は、正規化された行番号を計算する。正規化された行番号は、(300/(768−1)−0.0)/(400/768−0.0)となり、これは0.750977835になる。次に、グラデーション計算器3325はグラデーション値を計算する。正規化された行番号は0.8よりも小さいので、グラデーション値は(0.1*0.750977835+(0.8−0.750977835)*0.8)/0.8となり、これは0.142894394になる。
次に、プロセス3600は(3625において)、計算されたグラデーション値を用いて混合画像及び元の画像をブレンドする。プロセス3600はブレンド画像のそれぞれの画素のためのRGBトリプレットを計算する。例えば、グラデーション画像生成器3515はブレンド画像内の画素のためのRGBトリプレットを計算する。元の画像内の対応する画素は、最上部から300番目の画素となる画素である。それゆえ、ブレンド画像内の画素のためのRGBトリプレットは、(0.3、0.4、0.5)*(1−0.142894394)+(0.0768、0.128、0.112)*0.142894394となり、これは(0.268105971、0.361132724、0.444556975)になる。
本サブセクションでは、いくつかの画像上グラデーション効果ツールが説明された。以下の次のサブセクションはいくつかの画像上ティルトシフトツールを説明する。
B.画像上ティルトシフトツール
図37は、ユーザが、画像にタッチすることによって、画像の選択された部分にティルトシフト効果を適用することを可能にするいくつかの実施形態の画像上効果ツールの使用を概念的に示す。具体的には、本図は、ユーザが、可視的画像上ツールであるティルトシフトツール3715にタッチしてこれを操作することによって、画像3725にティルトシフト効果を適用することを、6つの異なる段階3701〜3706において示す。図37は、GUI400、アイコン3110、及び3130〜2950を示す。
上述のように、画像表示エリア410は、ユーザが画像編集アプリケーションを用いて編集したい画像を表示する。いくつかの実施形態では、画像編集アプリケーションは、ユーザが、表示された画像にタッチし、ティルトシフトツール3715を操作することによって、画像にティルトシフト効果を適用することを可能にする。画像編集アプリケーションは、画像表示エリア410内に表示された画像にティルトシフトツール3715を重ね合わせる。ティルトシフトツール3715は、図2を参照して上述されているティルトシフトツール211と同様である。
これより、画像上ティルトシフトツールの操作例を説明する。第1段階3701は、指3725でサムネイル3720にタッチすることによるユーザのサムネイル3710の選択を示す。画像編集アプリケーションは、サムネイル3710の選択に応答して、サムネイル3720によって表されている画像3710を画像表示エリア410内に表示する。
段階3702において、ユーザは、ツール選択ペイン420内に表示されているアイコン3110を選択する。それに応答して、画像編集アプリケーションは段階3703において、図示されているように、GUI400内に、選択可能なUI項目3125のセットを表示する。ユーザは、UI項目3150にタッチすることによって画像上ティルトシフトツールを選択する。画像編集アプリケーションは画像上ティルトシフトツールを起動する。
次の段階3704は、ユーザが画像の垂直中心よりも少し下の画像エリアにタッチした後のGUI400を示す。この段階において、ティルトシフトツール3715は2本の平行線を、タッチされたエリアの中心が2本の平行線から等距離となるように、画像上に配置した。ティルトシフトツール3715はまた、上部平行線よりも垂直上方にある画像の部分及び下部平行線よりも垂直下方にある画像の部分をぼかした。いくつかの実施形態では、ティルトシフトツール3715は、2本の平行線を画像のデフォルトのロケーション上にデフォルトの幅で配置する場合がある。
段階3705において、ユーザは、2本の平行線を広げて更に離すために、指3730及び3735を使い、画像上で拡大ジェスチャ実行した。上部線及び下部線は両方とも移動した。上部線は上に移動し、下部線は下に移動した。その結果、2本の平行線の間の画像の部分はより大きくなっており、ティルトシフトツールは画像のこの部分はぼかさない。
次の段階3706は、ユーザが画像3730から指3730及び3735を上げた後のGUI400を示す。2本の平行線は、これらの2本の線は操作可能であることを示すために、可視状態で残っている。ユーザが画像編集アプリケーションの編集モードから抜けると、2本の平行線は画像3710から消える。
図38は、ユーザによって選択された画像の部分にティルトシフト効果を適用するいくつかの実施形態の画像上ティルトシフトツールのアーキテクチャを概念的に示す。具体的には、本図は、画像上ティルト効果ツールが、元の選択画像に基づきぼかしたいくつかのあらかじめ生成された画像を用いてティルトシフト効果を適用することを示す。図示されているように、図38は、画像上ティルトシフトツール3800、元の画像データ3830、ぼかし画像3835、及びティルトシフト画像3840を示す。
元の画像データ3830は、ティルトシフト効果が適用される前の選択された画像のための画像データである。選択された画像は、画像編集アプリケーションの画像表示エリア内に表示される画像である。ティルトシフト画像3840は、画像にティルトシフトを適用してできた画像のための画像データである。いくつかの実施形態では、ティルトシフト画像3335は、元の画像から新しい画像を生成するために実行する命令のセットである。
画像上ティルトシフトツール3800は、ぼかし画像生成器3815、距離計算器3805、重み計算器3810、及び画像加算器3825を含む。いくつかの実施形態における画像上ティルトシフトツールは、ユーザのタッチの垂直ロケーションに基づき画定される画像の水平の帯を除き、画像を垂直ティルトシフト−ぼかすこと(換言すれば、ユーザのタッチのロケーションから既定の垂直距離以内にない画像の部分をぼかすこと)を可能にする。画像上ティルトシフトツール3800は、ティルトシフトツール3800がユーザのタッチのロケーションから既定の距離以内にない画像の部分を放射状ティルトシフトする−ぼかすことをできるようにすることを可能とするように変更されてもよい。いくつかの実施形態における画像上ティルトシフトツール3800は、元の画像を、元の画像のぼかしたバージョンと結合することによって、ティルトシフト画像を生成する。
ぼかし画像生成器3815は、元の画像に基づきいくつかのぼかし画像を生成する。いくつかの実施形態では、ぼかし画像生成器3815は、ガウスカーネルを用いて元の画像を畳み込むことによって、ぼかし画像を生成する。ガウスカーネルの標準偏差は、処理するべき元の画像のサイズと相対的なものである。また、標準偏差は元の画像の規模に比例して増加する。すなわち、元の画像の規模が大きいほど、ガウスカーネルの標準偏差は大きくなる。例えば、ぼかし画像生成器3815が5つのぼかし画像を生成する場合には、2000画素の規模を有する元の画像については、5つのガウスカーネルのための標準偏差は1.6、4、8、12及び16画素の大きさとして設定される。画像上ティルトシフトツール3800が画像編集アプリケーションによって起動されると、ぼかし画像生成器3815はぼかし画像をあらかじめ生成し、ぼかし画像を(例えば、キャッシュ内に)記憶し、それにより、元の画像上においてユーザのタッチを受け取るとこれらのぼかし画像を迅速に結合してティルトシフト画像を生成することができるようにする。
距離計算器3805は、タッチ入力を受け取るユーザインタフェースモジュール(不図示)からユーザ入力を受け取る。元の画像内の画素毎に、距離計算器3805は、画素と、ユーザによってタッチされた画素との間の垂直距離(例えば、y軸値の差)を計算する。いくつかの実施形態では、距離計算器3805は、この擬似コードの例を用いて、計算された垂直距離を正規化する:
denom=1.0/max(heightTouched、imageHeight−heightTouched);
dist=1.1−|(currentRow−heightTouched)|*denom*1.25;
dist=max(min(dist、1.0)、0.0);
heightTouchedは、ユーザがタッチした画素のy座標(例えば、タッチされた画素のセットの垂直中心画素(単数又は複数))である。いくつかの実施形態では、y座標は画像の最上部の行から開始する。すなわち、画像の画素の最上部の行は0のy座標を有し、画像の画素の最下部の行は全体高さのy座標(例えば、画像内の画素の列内の画素の数−1)を有する。imageHeightは元の画像の全体高さである。currentRowは、現在処理されている特定の画素が属する行のy座標である。distは、特定の画素のための正規化された距離である。距離は、0〜1.1の範囲を有するように正規化される。
計算された距離は、図39に示されているグラフ3900において曲線3905として描かれている。ユーザがタッチした画素は最上部の行から約800番目の画素である。グラフ3900は、2500画素の高さを有する元の画像についてのものである。グラフ3900の縦軸は、曲線3905のための正規化された距離を表し、曲線3910、3915、3920、3925、3930、及び3935のための正規化された重みを表す。横軸は最上部の行、0、から最下部の行、2500、までの行番号を表す。曲線3905は、平坦な頂上を有するピラミッドのように見える。以上に示されている擬似コードの第4行は、1.0を超える正規化された距離値を全て1.0に設定するので、曲線3905は平坦な頂上を有する。
重み計算器3810は、ぼかし画像生成器3815によって生成されたぼかし画像のそれぞれのための重み、及び元の画像のための重みを計算する。いくつかの実施形態における重み計算器は、ユーザがタッチした画素の垂直ロケーションからの距離からそれぞれのぼかし画像のための重みを導き出す。重み計算器3810は、ガウス関数であって、その入力は、正規化された距離であるガウス関数を用いて、それぞれのぼかし画像のための重みを計算する。重み計算器3810が用いるガウス関数は次式である。
Figure 2017016670
パラメータaはいくつかの実施形態では1に設定され、そのため、関数は2つのパラメータb及びcによって調節される。当技術分野において周知のように、bは対称的な「釣鐘曲線」又はガウスカーネルの中心の位置であり、cは「釣鐘」の幅を調節する。元の画像のための重みを調節するガウスカーネル3910の中心は、ユーザがタッチした画素の垂直画素ロケーションとして設定される。他のガウスカーネル3910〜3935の中心は、1つのガウスカーネル及び次のガウスカーネルがそれらの半値又はその付近において交わるように、順次、設定される。ガウスカーネルの幅はユーザのピンチジェスチャによって調節される。指の間の距離(すなわち、画像上ティルトシフトツールの2本の平行線の間の距離)が大きいほど、ガウスカーネルの幅は広くなる。全てのガウスカーネルは同じ幅を有する。重み計算器3810は、以下の擬似コードを用いてガウスカーネルの幅を計算する。
width=0.12*FXheight/0.32;
(width<0.06)である場合には、
width=0.06;
FXheightは、画像上ティルトシフトツールの2本の平行線の間の正規化された距離である。widthは、計算された幅である。重み計算器3810は、重みが合計して1.0になることを確実にするように、重みを正規化する。
画像加算器3825は、重み付けされた元の画像及び重み付けされたぼかし画像を加算することによって、ティルトシフト画像を生成する。すなわち、画像加算器3825は、元の画像のそれぞれの画素の重み付けされた画素値に、ぼかし画像生成器3835によって生成されたぼかし画像の重み付けされた画素値を加算する。
これより、図38及び40を参照して画像上ティルトシフトツール3800の操作例を説明する。図40は、いくつかの実施形態が、画像にティルトシフト効果を適用するために実行するプロセス4000を概念的に示す。いくつかの実施形態におけるプロセス4000は、オンラインシフトツール3800等の画像上ティルトシフトツールによって実行される。画像上ティルトシフトツールが画像編集アプリケーションによって起動され、表示された画像のための画像データを受け取ると、プロセス4000は開始する。
プロセス4000は、(4005において)元の画像に基づきいくつかのぼかし画像をあらかじめ生成することによって、始まる。例えば、ぼかし画像生成器3815は5つのぼかし画像を生成する。ぼかし画像生成器3815は、サイズが1.6画素に等しい平均を用いて第1のぼかし画像を生成する。すなわち、いくつかの実施形態におけるぼかし画像生成器3815は、元の画像の各1.6×1.6画素平方内の全ての画素の画素値を平均する。ぼかし画像生成器3815は、サイズが4画素に等しい平均を用いて第2のぼかし画像を生成する。すなわち、いくつかの実施形態におけるぼかし画像生成器3815は、元の画像の各4×4画素平方内の全ての画素の画素値を平均する。同様の方法で、ぼかし画像生成器3815は、サイズがそれぞれ8、12、及び16画素に等しい平均を用いて第3、第4、及び第5のぼかし画像を生成する。
次に、プロセス4000は(4010において)中心画素の選択を受け取る。例えば、距離計算器3805は、ユーザによってタッチされた画素のロケーションを受け取る。本例では、ユーザによってタッチされた画素は、垂直に2500画素を有する元の画像の最上部から800番目である。
次に、プロセス4000は(4015において)、画素の行毎に、タッチされた画素からの距離を計算する。いくつかの実施形態では、プロセス4000はまた、計算された距離を正規化する。例えば、距離計算器3805は、画像の最上部から500番目の行とタッチされた画素との間の距離を計算する。距離は、1.1−(|499−799|*(1.0/max(799,2499−799))*1.25)となり、これは0.879411765になる。
次に、プロセス4000は(4020において)、生成されたぼかし画像のそれぞれのため、及び元の画像のための重みを計算する。いくつかの実施形態では、プロセス4000はまた、全ての重みが総計で1.0になるように、計算された重みを正規化する。例えば、重み計算器3810は、全てのぼかし画像のための全てのガウスカーネルのために同じ幅を計算する。本例では、画像上ティルトシフトツールの2本の平行線の間の距離は200画素である。この距離は、正規化されると、1.1−(|200−799|*(1.0/最大(799,2499−799))*1.25)となり、これは0.658823529になる。それゆえ、幅は0.12*0.658823529/0.32となり、これは0.247058823になる。幅は0.06よりも小さくないので、幅は0.247058823になる。すると、元の画像のための重みは、e((1.0−1.0)^2/2*(0.247058823)^2)となり、これは1になる。重み計算器3810がそれぞれのぼかし画像のための重みを計算した後、重み計算器3810は、元の画像のための計算された重みを正規化する。
次に、プロセス4000は(4025において)、重み付けされた元の画像及び重み付けされたぼかし画像を加算する。すなわち、プロセス4000は、元の画像内の画素の重み付けされた画素値、及びぼかし画像内の対応する画素の重み付けされた画素値を加算する。
本サブセクションでは、いくつかの実施形態の画像上ティルトシフトツールを説明した。以下の次のサブセクションは画像上ビネットツールを説明する。
C.画像上ビネットツール
図41は、ユーザが、画像にタッチすることによって、画像の選択された部分にビネット効果を適用することを可能にするいくつかの実施形態の画像上効果ツールの使用を概念的に示す。具体的には、本図は、ユーザが、不可視の(例えば、境界のない)幾何学形状にタッチしてこれを操作することによって、画像3710にビネット効果を適用することを、6つの異なる段階4101〜4106において示す。図41は、GUI400、サムネイル3720、画像3710、並びにアイコン3110及び3130〜2950を示す。
上述のように、画像表示エリア410は、ユーザが画像編集アプリケーションを用いて編集したい画像を表示する。いくつかの実施形態では、画像編集アプリケーションは、ユーザが、幾何学形状を動かし、サイズ変更することによって、画像へのビネット効果の適用を操作することを可能にする。ユーザが画像のロケーションにタッチすると、画像編集アプリケーションは、画像のタッチされたロケーションに基づきビネット効果を適用する。いくつかの実施形態における画像編集アプリケーションは、画像のタッチされたロケーションを囲む不可視の幾何学形状(すなわち、可視的な境界線を有しない形状)を描画し、幾何学形状の外側にある画像のエリアを暗くする。その結果、幾何学形状の内側にある画像のエリアは、幾何学形状の外側にある画像のエリアよりも明るく見える。したがって、幾何学形状の外側のエリアと幾何学形状の内側のエリアとの明度の差の故に、幾何学形状は可視的に見える。しかし、形状はそれ自身の境界線を有しないという意味においては、幾何学形状自体は依然として不可視である。
いくつかの実施形態の画像編集アプリケーションは、ユーザが幾何学形状(すなわち、より明るい領域)を動かし、サイズ変更することを可能にする。ユーザは、幾何学形状にタッチすることによって幾何学形状を動かし、幾何学形状を、表示された画像内の他のロケーションへドラッグすることができる。ユーザは、複数の指で幾何学形状の内部にタッチし、指を広げて離すことによって、幾何学形状を拡大することができる。ユーザは、幾何学形状の上でピンチジェスチャを実行すること(例えば、幾何学形状にタッチしている指同士をより近くに引き寄せること)によって、幾何学形状を収縮させることができる。
いくつかの実施形態では、幾何学は任意の他の形状であってもよい。非包括的なリストは、円、三角形、長方形等を含む。形状は、不規則な形状、又は手、花等のなじみのある物体形状であってもよい。
これより、GUI4100を有する画像編集アプリケーションの操作例を説明する。最初の2つの段階4101及びQ02はそれぞれ段階3701及び3702と同一である。前の段階3702におけるサムネイル3110のユーザの選択に応答して、画像編集アプリケーションは段階4103において、図示されているように、GUI400内に選択可能なUI項目3125のセットを表示する。ユーザは、UI項目3145にタッチすることによって画像上ビネットツールを選択する。画像編集アプリケーションは画像上ビネットツールを起動する。
段階4104において、ユーザは指4110で画像内の左側の人物の顔の付近の画像のロケーションにタッチした。画像上ビネットツールは、画像のタッチされたロケーションを囲む境界のない楕円4120を描画し、楕円の外側のエリアを暗くする。その結果、左の人物の顔はスポットライトが当てられているように見える。
段階4105において、ユーザは指4110を画像の別のロケーション、右側の人物の顔へドラッグする。画像上ビネットツールはそのロケーションまで楕円を指4110に追従させる(又はそれと一緒に移動させる)。代替的に、ユーザは画像から指4110を上げ、指4110で画像3710の最上部の付近のロケーションにタッチしていてもよく、又はユーザは画像3710にタッチしながら指4110をロケーションへドラッグしていてもよい。画像上ビネットツールは、図示されているように、楕円の外側のエリアを暗くすることによってビネット効果を適用した。
次に段階4106において、ユーザは楕円4120上で、拡大アクション(例えば、画像にタッチしながら指を広げること)を実行した。画像上ビネットツールは楕円をサイズ変更し、サイズ変更された楕円サイズに基づきビネット効果を適用する。
図42は、画像編集アプリケーションのユーザが画像にビネット効果を適用することを可能にするためにいくつかの実施形態が実行するプロセス4200を概念的に示す。いくつかの実施形態におけるプロセス4200は画像編集アプリケーションによって実行される。ユーザからのタッチ入力(例えば、タップ操作、スワイプ操作等)を受け取るためのタッチセンシティブスクリーン又はニアタッチセンシティブスクリーンを有するコンピューティングデバイス上で画像編集アプリケーションが動作すると、プロセス4200は開始する。プロセス4200は、(4205において)画像編集アプリケーションの画像表示エリア内に画像を表示することによって、始まる。
次に、プロセス4200は(4210において)、表示された画像内のロケーション上におけるタッチ入力を受け取る。いくつかの実施形態では、プロセス4200は、ユーザがロケーション上をタップした時に、ロケーション上におけるタッチ入力を受け取る。プロセス4200は、ユーザが、(例えば、指を上げずに)表示された画像にタッチしながら、指を、表示された画像内の別のロケーションからドラッグした時に、タッチ入力を受け取る。
次に、プロセス4200は(4215において)画像にビネット効果を適用する。ユーザが、表示された画像内のロケーションをタップすると、プロセス4200は不可視の幾何学形状を描画し、幾何学形状の外側のエリアを暗くする。
図43は、画像編集アプリケーションのユーザが画像にビネットを適用することを可能にするためにいくつかの実施形態が実行するプロセス4300を概念的に示す。いくつかの実施形態におけるプロセス4300は画像上ビネットツールによって実行される。プロセス4300は、画像上ビネットツールが最初のタッチ入力を受け取り、最初のタッチ入力のロケーションに基づきビネット効果を適用した後に、開始する。
プロセス4300は、画像上ビネットツールは新たなタッチ入力を受け取ったかどうかを判定することによって、始まる。プロセス4300が、画像上ビネットツールは新たなタッチ入力を受け取らなかったと判定した場合には、プロセス4300は、新たなタッチ入力を受け取るのを待つために、4320へループして戻る。
プロセス4300が、画像上ビネットツールは新たなタッチ入力を受け取ったと判定した場合には、プロセス4300は、タッチ入力は幾何学形状に対するものであるのかどうかを判定するために、4325へ進む。いくつかの実施形態では、タッチ入力が幾何学形状の内部又はその付近のエリアにタッチした場合に、プロセス4300は、タッチ入力は幾何学形状に対するものであると判定する。プロセス4300が、タッチ入力は幾何学形状に対するものではないと判定した場合には、プロセス4300は、以下において更に説明される4360へ進む。
プロセス4300が、タッチ入力は幾何学形状のためのものであると判定した場合には(4125)、プロセスは、タッチ入力はマルチタッチ入力であるかどうかを判定する(4130)。プロセス4300が、タッチ入力はマルチタッチ入力ではないと判定した場合には、プロセス4300は、以下において更に説明される4355へ進む。プロセス4300が(4330において)、タッチ入力はマルチタッチ入力であると判定した場合には、プロセス4300は、マルチタッチ入力はピンチアクションであったかどうかを判定するために、4335へ進む。
プロセス4300が(4335において)、マルチタッチ入力はピンチアクションであったと判定した場合には、プロセス4300は(4340において)幾何学形状を収縮させ、幾何学形状のサイズを縮小する。プロセス4300が(4335において)、マルチタッチ入力はピンチアクションではなかったと判定した場合には、プロセス4300は(4345において)、マルチタッチ入力は、拡大アクション(又は、拡大ジェスチャ)であったかどうかを判定する。プロセス4300が(4345において)、マルチタッチ入力は拡大アクションではなかったと判定した場合には、プロセスは終了する。さもなければ、プロセス4300は幾何学形状を拡大する。
プロセス4300が(4330において)、タッチ入力はマルチタッチ入力ではなかったと判定した場合には、プロセス4300は、タッチ入力はドラッグされたかどうかを判定する(4155)。プロセス4300が(4355において)、タッチはドラッグされなかったと判定した場合には、プロセス4300は終了する。さもなければ、プロセス4300は、タッチ入力のロケーション及び既定の幾何学形状に基づき、効果を適用する。
図44は、いくつかの実施形態が、表示された画像内におけるユーザのタッチのロケーションに基づきビネット効果を適用するために実行するプロセス4400を概念的に示す。いくつかの実施形態におけるプロセス4400は画像上ビネットツールによって実行される。画像上ビネットツールがユーザのタッチのロケーションを受け取ると、プロセス4400は開始する。
プロセス4400は、(4405において)スケール値を受け取ることによって、始まる。いくつかの実施形態では、ビネット効果は、単一の「スケール」値に基づく「シグモイド」形状の減衰である。スケール値は、画像上ビネットツールが起動されている時に、ユーザが、ピンチジェスチャ又は拡大ジェスチャを実行することによって調整する幾何学形状のサイズ(例えば、円形状の半径)に対応する。いくつかの実施形態では、スケール値は、0〜1の範囲を有するように正規化される。
次に、プロセス4400は(4410において)円形状の内径及び外径を計算する。いくつかの実施形態では、プロセス4400は、半径を計算するために、以下の擬似コードの例を用いる。
innerRadius=scale*(1−scale)*0.8;
outerRadius=scale+0.5;
innerRadiusは円形状の内径である。outerRadiusは円形状の外径である。scaleは、受け取ったスケール値である。
次に、プロセス4400は(4415において)、ユーザがタッチした画素と元の画像内のそれぞれの画素との間の距離を計算する。いくつかの実施形態では、距離は、以下のユークリッド距離メトリックを用いて算出される。
dist=((x−centerX)2+(y−centerY)(1/2)
distは、計算された距離である。xは画素のx座標であり、yは画素のy座標であり、画像の左下角部が原点、(0、0)である。いくつかの実施形態では、プロセスは、2乗された距離を用いる。
次に、プロセス4400は(4420において)、計算された距離は、円形状の計算された内径よりも小さいかどうかを判定する。計算された距離が、計算された内径よりも小さい場合には、プロセス4400は(4425において)画像のそれぞれの画素のためのビネット値を第1の既定値に設定する。いくつかの実施形態では、第1の既定値は1.0である。次に、プロセスは、以下において更に説明する4455へ進む。
プロセス4400が(4420において)、計算された距離は、円形状の計算された内径よりも小さくないと判定した場合には、プロセス4400は(4430において)、計算された距離は、円形状の計算された外径よりも大きいかどうかを判定する。計算された距離が、計算された外径よりも大きい場合には、プロセス4400は(4435において)画像のそれぞれの画素のためのビネット値を第2の既定値に設定する。いくつかの実施形態では、第2の既定値は0.05である。次に、プロセスは、以下において更に説明する4455へ進む。
プロセス4400が(4430において)、計算された距離は、計算された外径よりも大きくないと判定した場合には、プロセス4400は(4440において)シグモイド形状の範囲を計算する。プロセスは(4420及び4430において)、計算された距離は、計算された内径よりも小さくなく、かつ計算された外径よりも大きくないと判定したため、処理されている画像の画素の間の距離は2つの半径の間にある。いくつかの実施形態におけるプロセス4400は、範囲を計算するために、以下の擬似コードの例を用いる:
range=3.0+2.0*scale;
プロセス4400はまた(4445において)、以下の擬似コードの例を用いていくつかの正規化コンポーネントを計算する。
rangeMin=1/(1+erange);
rangeNorm=1+e−range−rangeMin;
rangeMinは、正規化された最小範囲である。rangeNormは、正規化された範囲である。
次に、プロセス4400は(4450において)、画像であって、そのタッチされた画素からの距離は、計算された半径の間にある、画像のそれぞれの画素のためのビネット値を計算する。プロセス4400は、以下の擬似コードの例を用いてこのような画素のためのビネット値を計算する。
tmp=1/(1+etmp);
vignette=1−(tmp−rangeMin)*rangeNorm*0.95;
eはオイラー数である。rangeMin及びrangeNormは、ビネット値が1.0を超えるか又は0.05を下回るのを防ぐ働きをする。
次に、プロセス4400は画像にビネットを適用する。いくつかの実施形態では、プロセスは、画像のそれぞれの画素値に画素のためのビネット値を単純に乗算することによって、画像にビネットを適用する。しかし、当業者は、画像の画素にビネット値を適用するために、乗算以外の方法が用いられてもよいことを認識するであろう。
IV.代替的なユーザインタフェースレイアウト
上述の図に示されている画像編集アプリケーションのGUIは、画像編集アプリケーションが動作するデバイスは、GUIを表示するために十分大きいスクリーンを有することを前提として示されている。しかし、画像編集アプリケーションが動作するデバイスの一部は、制約されたスクリーンサイズを有する場合があり、より大きなデバイスのより大きなスクリーン内に項目が表示されるようにはUI項目を表示することができない場合がある。また、より大きなデバイスのより大きなスクリーンも、デバイスが異なる配向(例えば、縦向き)で保持されている時には、制約されていると見なされる場合がある。いくつかの実施形態では、画像編集アプリケーションは、制約されたスクリーンサイズに対応するために、異なる時間インスタンスにおいて異なるUI項目の異なるセットを表示する。
図45A、図45Bは、いくつかの実施形態のGUI4500を概念的に示す。具体的には、本図は、いくつかの実施形態の画像編集アプリケーションが異なる時間インスタンスにおいて異なるUI項目の異なるセットを表示することを、10個の異なる段階4501〜4510において示す。図45A、図45Bは、GUI4500は、制御ペイン4515、画像表示エリア4516、コレクション表示エリア4520、及びツールナビゲーションペイン4525を含むことを示す。
画像表示エリア4516は、ユーザが画像編集アプリケーションを用いて編集したい画像を表示する点において、画像表示エリア4516は上述の画像表示エリア410と同様である。コレクション表示エリア4515は、コレクション表示エリア4515が画像編集アプリケーションを用いた編集に利用可能である画像のサムネイルのコレクションを表示する点において、コレクション表示エリア415と同様である。いくつかの実施形態では、画像編集アプリケーションは、ユーザが、異なるサムネイルを表示するために、上及び下あるいは横にスクロールすることを可能にする。また、画像編集アプリケーションは、サムネイルが選ばれ、対応する画像が表示エリア内に表示されていることを示すためのサムネイル上の視覚的な表示(例えば、強調表示)も提供する。更に、いくつかの実施形態の画像編集アプリケーションは、対応する画像が編集されたことを示すためのサムネイル上の視覚的な指示(例えば、ツールボックスアイコン)を提供する。
ツールナビゲーションペイン4525は、異なる時間インスタンスにおいて、選択可能又は調節可能なUI項目の異なるセットを表示する。いくつかの実施形態では、ツールナビゲーションペイン4525内に現在表示されているユーザインタフェース項目のセットは、ツールナビゲーションペイン4525内に以前に表示されていたUI項目のセットとのユーザの対話に依存する。例えば、ユーザが、編集ツールのセットを表す特定のUI項目にタッチすると、その特定のUI項目に関連する編集ツールのセットのためのUI項目のセットが、ツールナビゲーションペイン4525内において特定のUI項目を含むUI項目のセットに取って代わる。
画像編集アプリケーションは、ツールナビゲーションペイン4525内に表示された第1のUI項目のセットを多数の異なる方法で第2のUI項目のセットで置き換えてもよい。例えば、画像編集アプリケーションは、第2のセットがスライドして中に入ってくるのに従って、第1のセットに第2のセットを重ね合わせる。画像編集アプリケーションは、第2のセットをスライドさせて中に入れながら、第1のセットをスライドさせて外へ出す場合もある。更に、第1及び第2のセットによるスライドの方向は任意の方向−上、下、左、右、斜め等−であってもよい。
ここで、GUI4500の操作例を説明する。段階4501において、画像編集アプリケーションは画像表示エリア4516内に画像4517を表示する。画像4517は、コレクション表示エリア4520内に表示されたサムネイル4535に対応する。すなわち、画像編集アプリケーションは、ユーザの選択(例えば、タッチすることによる)サムネイル4535に応答して画像表示エリア4516内に画像4517を表示する。この段階において、ユーザは、本例ではツールボックスを示すアイコンであるUI項目4530を選択する。UI項目4530は、画像編集アプリケーションが提供する編集ツールのセットを表す。
次の段階4502は、ツールナビゲーションペイン4525内に表示されていた第1のUI項目のセット4524が第2のUI項目のセット4526によって置き換えられていくことを示す。本例では、段階4502は、第2のUI項目のセット4526が右へスライドし、ツールナビゲーションペイン4525内に入りつつ、第1のUI項目のセットに第2のUI項目のセットが重ね合わせられつつあることを示す。しかし、いくつかの実施形態では、図示されているように、第2のUI項目のセット4526がスライドしてUI項目4530の下に潜り込み、第1のUI項目のセットの残りのものの上に覆い被さりつつある間、第1のUI項目のセットのUI項目4530は定位置にとどまる。
段階4503において、画像編集アプリケーションはツールナビゲーションペイン4525内に第2のUI項目のセット4526を表示する。図示されているように、本例における第2のUI項目のセット4526は、UI項目4545、4550、及び4555を含む、5つのUI項目を含む。第2のUI項目のセットに属さないUI項目4540がUI項目4530に取って代わった。UI項目4540は、第2のUI項目のセットをツールナビゲーションペイン4525内の別のUI項目のセットで置き換えるためのものである。UI項目4540はまた、ユーザが、ユーザは第2のUI項目のセットによって表された編集ツールを使用したくないことを示すためにタッチするためのものでもある。UI項目4545は画像上切り抜き及び角度補正ツールを表す。UI項目4550は画像上ブラシツールを表す。UI項目4555は画像上効果ツールを表す。この段階において、ユーザは、画像上切り抜き及び角度補正ツールを選択するためにUI項目4545にタッチする。
段階4504において、画像編集アプリケーションは、前の段階4503におけるユーザのUI項目4545の選択に応答して、第3のUI項目のセットを現しつつある。いくつかの実施形態では、画像編集アプリケーションは、第3のUI項目のセットを現すために、第2のUI項目のセットをスライドさせて外へ出す。第3のUI項目のセットは、段階4504においては完全に示されていないが、切り抜き及び角度補正ツールを表す。いくつかの実施形態では、画像編集アプリケーションは、図示されているように、第2のUI項目のセットを左へスライドさせ、UI項目4540の下へ潜り込ませて外へ出す。
次の段階4505は、画像編集アプリケーションが第2のUI項目のセット及びUI項目4540を第3のUI項目のセットで置き換えた後のGUI4500を示す。第3のUI項目のセットは切り抜き及び角度補正ツールを表し、UI項目4560及び4565を含む。UI項目4550は、現在、ツールナビゲーションペイン4525内に示され、起動されているのは、切り抜き及び角度補正ツールであることを示す。UI項目4560はまた、第3のUI項目のセットをツールナビゲーションペイン4525内の別のUI項目のセットで置き換えるためのものでもある。UI項目4560は、ユーザが、ユーザは、切り抜き及び角度補正ツールを用いることを望まないか又はそれを用いることを終えたことを示すためにタッチするためのものでもある。UI項目4565は上述のダイアル455と同様である。また、段階4505において、ユーザは、画像を切り抜くために、表示された画像4517上で拡大ジェスチャを実行した。
次の段階4506は、切り抜き及び角度補正ツールが画像4517を拡大し、画像表示エリア4516内に表示可能でなかった画像の部分を切り落とした後のGUI4500を示す。ユーザはまた、切り抜き及び角度補正ツールから抜けるために、UI項目4560にタッチする。
段階4507において、画像編集アプリケーションは、前の段階4506におけるユーザのUI項目4560の選択に応答して、第2のUI項目のセットをスライドさせて入れつつある。図示されているように、いくつかの実施形態では、画像編集アプリケーションは第2のUI項目のセット4526を、UI項目4565の上に覆い被さるが、UI項目4560の下へ潜り込むように、左へスライドさせて中へ入れる。
次の段階4508は、画像編集アプリケーションが第3のUI項目のセットを第2のUI項目のセットで置き換えた後のGUI4500を示す。第3のUI項目のセットのUI項目4560は、図示されているように、UI項目4540によって置き換えられた。画像編集アプリケーションはまた、サムネイル4535上に視覚的な指示4560も重ね合わせた。視覚的な指示4560は、サムネイル4535によって表されている画像が編集されたことを示す。段階4508において、ユーザは、第2のUI項目のセット4526から抜けるために、UI項目4540を選択する。
段階4509において、画像編集アプリケーションは、前の段階4506におけるユーザのUI項目4540の選択に応答して、第1のUI項目のセットを現すために、第2のUI項目のセットを左へスライドさせ、UI項目4540の下へ潜り込ませて外へ出しつつある。次の段階4510は、画像編集アプリケーションが第2のUI項目のセットを第1のUI項目のセットで置き換えた後のGUI4500を示す。図示されているように、UI項目4530がUI項目4540に取って代わった。
V.ソフトウェアアーキテクチャ
いくつかの実施形態では、図5、8、11、15、17、21、25、28、30、32、34、36、40、42、43、及び44を参照して上述されているプロセスは、コンピュータ若しくはハンドヘルドデバイス等の特定の装置上で動作するソフトウェアとして実装されるか、又はコンピュータ可読媒体内に記憶される。図46は、いくつかの実施形態の画像編集アプリケーション4600のソフトウェアアーキテクチャを概念的に示す。いくつかの実施形態において、画像編集アプリケーションは、独立型アプリケーションであるか又は別のアプリケーションに一体化され、他の実施形態において、アプリケーションは、オペレーティングシステム内で実施されてもよい。更に、いくつかの実施形態において、アプリケーションは、サーバベースソリューションの一部として提供される。いくつかのそのような実施形態において、アプリケーションは、シンクライアントによって提供される。即ち、アプリケーションは、サーバ上で動作し、ユーザは、サーバからリモートの別個のマシンを介してアプリケーションと対話する。他のそのような実施形態において、アプリケーションは、シッククライアントによって提供される。即ち、アプリケーションは、サーバからクライアントマシンに分配され、クライアントマシン上で動作する。
画像編集アプリケーション4600は、ユーザインタフェース(UI)対話モジュール4605、切り抜き及び角度補正ツール4610、ブラシツール群4615、効果ツール群4620、ティルトシフトツール4625、グラデーションツール4630、ビネットツール4635、及び起動マネージャ4670を含む。画像編集アプリケーションはまた、ソースファイル4640及び編集命令4645も用いる。いくつかの実施形態では、ソースファイル4640はメディアコンテンツ(例えば、テキスト、音声、画像、及びビデオコンテンツ)を記憶する。編集命令4645は、画像編集アプリケーション4600が実行した画像編集操作を命令のセットとして記憶する。画像編集アプリケーション4600は、ソースファイル内に記憶されている元のデータに基づき新しい画像を生成するために、これらの命令のセット用いる。いくつかの実施形態では、メディアコンテンツデータは、.mov、.avi、.jpg、.png、gif、pdf、.mp3、.wav、.txt等のファイルとしてソースファイル4640内に記憶される。いくつかの実施形態では、記憶4640及び4645は全て1つの物理記憶内に記憶される。他の実施形態では、記憶は別個の物理記憶内にあるか、又は記憶の一方は1つの物理記憶内にあり、その一方、他方は異なる物理記憶内にある。例えば、その他のプロジェクトデータ及びソースファイルは多くの場合、別々にあることになる。
図46は、また、入力デバイスドライバ(単数又は複数)4660及びディスプレイモジュール4665を含むオペレーティングシステム4650を示す。いくつかの実施形態では、図示されているように、デバイスドライバ4655及び4660並びにディスプレイモジュール4665は、画像編集アプリケーションがオペレーティングシステムと別個のアプリケーションのときでも、オペレーティングシステム4655の一部である。
入力デバイスドライバ4660は、キーボード、マウス、タッチパッド、タブレット、タッチスクリーン、ジャイロスコープ、加速度計などからの信号を変換するためのドライバを含むことがある。ユーザは、これらの入力装置のうちの1つ以上と対話し、これらの入力装置は、信号をその対応するデバイスドライバに送る。次に、デバイスドライバは、信号を、UI対話モジュール4605に提供されるユーザ入力データに変換する。
本出願は、異なる組の動作及び機能を実行する多数の方法をユーザに提供するグラフィカルユーザインタフェースについて述べる。いくつかの実施形態において、これらの動作及び機能は、様々な入力装置(例えば、キーボード、トラックパッド、タッチパッド、マウスなど)を介してユーザから受け取った様々なコマンドに基づき実行される。例えば、本出願は、グラフィカルユーザインタフェース内のカーソルを使用してグラフィカルユーザインタフェース内のオブジェクトを制御する(例えば、選択し、移動させる)ことを説明する。しかしながら、いくつかの実施形態において、グラフィカルユーザインタフェース内のオブジェクトを、タッチ制御などの他の制御によって制御又は操作することもできる。いくつかの実施形態において、タッチ制御は、装置のディスプレイ上のタッチの存在及び位置を検出することができる入力装置によって実現される。そのような装置の一例は、タッチスクリーン装置である。いくつかの実施形態において、タッチ制御によって、ユーザは、タッチスクリーン装置のディスプレイ上に重ね合わせられたグラフィカルユーザインタフェースとの対話によって、オブジェクトを直接操作することができる。例えば、ユーザは、タッチスクリーン装置のディスプレイ上の特定のオブジェクトにタッチするだけで、グラフィカルユーザインタフェース内の特定のオブジェクトを選択することができる。したがって、タッチ制御が利用されるとき、いくつかの実施形態において、グラフィカルユーザインタフェースのオブジェクトの選択を可能にするためにカーソルが提供されなくてもよい。しかしながら、グラフィカルユーザインタフェース内にカーソルが提供されるとき、いくつかの実施形態において、タッチ制御を使用してカーソルを制御することができる。
更に、本出願は、いくつかの実施形態において、メディアクリップ又は一連のメディアクリップを編集するために種々のコマンド(例えば、トリミング、編集点の拡張、分割、関心のある領域のマーキングなど等の編集コマンド)を呼び出すためのホットキーの使用を説明する。いくつかの実施形態では、ホットキーは典型的なキーボード(例えば、デスクトップコンピュータのためのキーボード、スマートフォンのためのキーパッド等)内の有形のキーである。しかし、他の実施形態では、ホットキーはタッチ制御を通じて提供される。いくつかのこのような実施形態におけるホットキーは、タッチスクリーン装置上にレンダリングされたグラフィカルキーボード内のキー、選択可能若しくはクリック可能である任意のユーザインタフェース項目、又は任意のその他のタッチスクリーン手法である。
ディスプレイモジュール4665は、ディスプレイ装置用のユーザインタフェースの出力を変換する。即ち、ディスプレイモジュール4665は、何を表示すべきかを示す信号を(例えば、UI対話モジュール4605から)受け取り、それらの信号をディスプレイ装置に送られる画素情報に変換する。ディスプレイ装置は、LCD、プラズマスクリーン、CRTモニタ、タッチスクリーンなどでよい。
画像編集アプリケーション4600のUI対話モジュール4605は、入力デバイスドライバから受け取ったユーザ入力データを解釈し、それを、切り抜き及び角度補正ツール4610、ブラシツール群4615、効果ツール群4620、ティルトシフトツール4625、グラデーションツール4630、及びビネットツール4635を含む、種々のモジュールに渡す。UI対話モジュールは、また、UIの表示を管理し、この表示情報をディスプレイモジュール4665に出力する。
起動マネージャ4670は編集ツールの起動及び停止を管理する。起動マネージャ4670は、編集ツールを起動及び停止するためのUI項目へのユーザ入力を解釈し、画像へのユーザ入力が適切な編集ツール(単数又は複数)によって処理されるように、編集ツールを起動及び停止する。
ツール4610は切り抜き、角度補正、及び拡大操作を実行する点において、切り抜き及び角度補正ツール4610は上述の切り抜き及び角度補正ツールと同様である。ブラシツール群4615は、上述の欠点除去ツール、赤目除去ツール、飽和ツール、脱飽和ツール、明色化ツール、暗色化ツール、シャープ化ツール、ソフト化ツール、及びスマート縁部検出ツールを含む。効果ツール群4620は、表示された画像に効果を適用するためのツール群を含む。ティルトシフトツール4625は上述のティルトシフトツールと同様である。いくつかの実施形態におけるグラデーションツール群4630は、上述されている暗色グラデーションツール、暖色グラデーションツール、寒色グラデーションツール、青色グラデーションツール、及びコーヒーグラデーションツールを含む。ビネットツール4635は上述のビネットツールと同様である。
特徴の多くは、1つのモジュール(例えば、グラデーションツール群4630)によって実行されるように説明されているが、当業者は、機能は複数のモジュールに分割される場合があり得ること、及び1つの特徴の実行でも複数のモジュールを必要とする場合があり得ることを認識するであろう。
VI.画像閲覧、編集、及び編成アプリケーション
上述した種々の図は、いくつかの実施形態の画像閲覧、編集、及び編成アプリケーションのGUIの様々な実施例を示したものである。図47は、画像を閲覧、編集、及び編成するいくつかの実施形態のGUI4700の詳細図を示す。いくつかの実施形態のアプリケーションによって記憶される画像についてデータ構造4800を概念的に示す図48をある程度参照してGUI4700を説明する。
データ構造4800は、画像ID4805と、画像データ4810と、編集命令4815と、画像のキャッシュされたバージョン4840と、画像の任意の更なるデータ4850とを含む。画像ID4805は、いくつかの実施形態において、コレクション内に記憶された画像を参照するためのコレクションデータ構造によって使用される画像の固有の識別子である。画像データ4810は、画像を表示する実際のフルサイズの画素データ(例えば、画像又はその符号化されたバージョン内の各画素の一連の色空間チャネル値)である。いくつかの実施形態において、このデータは、画像閲覧、編集、及び編成アプリケーションのデータベース内に記憶することができるか、又は同じ機器上で別のアプリケーションのデータと共に記憶することができる。いくつかの実施形態において、追加のアプリケーションは、画像閲覧、編集、及び編成が動作する機器で動作する別の画像編成アプリケーションである。
したがって、データ構造は、アプリケーションに関連したローカルファイルへのポインタ、又は別のアプリケーションのデータベースに問い合わせるために使用することができるIDを記憶することができる。いくつかの実施形態において、アプリケーションがジャーナル内の画像を使用するか、又は画像の編集を行うと、アプリケーションは、画像データを含む画像ファイルのローカルコピーを自動的に作製する。
編集命令4815は、ユーザが画像に適用した任意の編集に関する情報を含む。このようにすると、アプリケーションは、アプリケーションがいつでも画像の編集されたバージョンから原本に簡単に戻すことができるように、非破壊形式で画像を記憶する。例えば、ユーザは、画像に飽和効果を適用して、アプリケーションを出て、その後、別の折りにアプリケーションを再開して効果を除去することができる。これらの命令に記憶された編集は、切り抜き及び回転、完全な画像露光及び色調整、局所化された調整及び特殊効果、並びに画像の画素に影響を与える他の編集とすることができる。いくつかの実施形態は、ユーザが特定の組の編集の適用のみで、画像の異なるバージョンを閲覧することができるように、特定の順番でこれらの編集命令を記憶する。
いくつかの実施形態において、編集命令4815は、編集作業のリスト4860として実行される。リスト4860は、編集4861、4862、4863、及び4865などの編集作業を含む。リスト4860内の各編集作業では、編集作業を実行するのに必要なパラメータを指定する。例えば、リスト4860内の編集作業4865は、画像に対する、色選択パラメータθを用いて飽和効果を適用する編集を指定する。
いくつかの実施形態において、リスト4860は、最終的な編集された画像を作成するためにユーザによって着手された編集作業のシーケンスを記録する。いくつかの実施形態において、リスト4860は、いくつかの実施形態がアプリケーションによって行われる異なる可能な編集について特定の順序を規定するので、画像編集アプリケーションが表示に対して出力画像を生成するために編集を画像に適用する順序で編集命令を記憶する。例えば、いくつかの実施形態は、切り抜き及び回転、完全な画像露光、及び色調整等の他の編集作業よりも後に適用されることになる編集作業の1つとして飽和効果を定義する。これらの実施形態の一部のリスト4860は、飽和効果のための編集命令を、他の編集作業のうちの一部(例えば、編集4861〜1363)よりも後に適用されるであろう位置(すなわち、編集4865)内に記憶するであろう。
キャッシュされた画像バージョン4840は、共通にアクセス及び表示される画像のバージョンを格納し、その結果、アプリケーションは、これらの画像をフルサイズの画像データ4810から繰り返し生成する必要がない。例えば、アプリケーションは、画像のサムネイル、並びに、表示解像度バージョン(例えば、画像表示エリアに対して調整されたバージョン)を記憶することが多いだろう。いくつかの実施形態のアプリケーションは、編集が適用されるたびに画像の新しいサムネイルを生成して先のサムネイルを入れ替える。いくつかの実施形態は、元の画像及び画像の1つ以上の編集されたバージョンを含め複数の表示解像度のバージョンを記憶する。
最後に、画像データ構造4800は、アプリケーションが画像と共に記憶することがあり得る更なるデータ4850(例えば、場所及び顔のサイズなど)を含む。いくつかの実施形態において、更なるデータとして、エクスチェンジャブル・イメージ・ファイル・フォーマット(Exchangeable image file format、Exif)データ、見出しデータ、共有画像データ、画像上のタグ、又は任意の他の形式のデータを挙げることができる。Exifデータは、カメラ設定、GPSデータ、タイムスタンプなど等の、画像をキャプチャしたカメラによって記憶される種々の情報を含む。見出しは、ユーザによって入力される画像の説明である。タグは、画像をお気に入り、フラグ付き、非表示等としてマーキングするなどのように、アプリケーションが、ユーザが画像に関連付けることを許す情報である。
当業者は、画像データ構造4800は、画像の所要の情報を記憶するためにアプリケーションが使用することがあり得る1つの可能なデータ構造であるにすぎないことを認識するであろう。例えば、異なる実施形態は、更なる又はより少ない情報を記憶する、異なる順番で情報を記憶するなどし得る。
図47に戻ると、GUI4700は、サムネイル表示エリア4705と、画像表示エリア4710と、第1のツールバー4715と、第2のツールバー4720と、第3のツールバー4725とを含む。サムネイル表示エリア4705は、選択されたコレクション内の画像のサムネイルを表示する。サムネイルは、フルサイズの画像の小さい表現であり、いくつかの実施形態において画像の一部のみを表す。例えば、サムネイル表示エリア4705内のサムネイルは、フルサイズの画像のアスペクト比にかかわらず、全て、正方形である。サムネイルに使用するべき矩形画像の部分を判断するために、アプリケーションは、画像の小さい方の寸法を識別して、画像の中心部を長い方の方向に使用する。例えば、1600×1200画素の画像であれば、アプリケーションは、4700×1200の正方形を使用することになる。選択された部分をサムネイルに対して更に洗練するために、いくつかの実施形態は、(顔検出アルゴリズムを使用して)画像内の全ての顔の中心を識別して、その後、この場所を利用して切り取られる方向にサムネイル部分の中心を置く。したがって、理論的な1600×1200画像の顔が全て画像の左側に位置する場合、アプリケーションは、両側で200列を切り落すのではなく、画素の一番左の4700列を使用することになる。
サムネイルに使用するべき画像の部分を判断した後に、画像閲覧アプリケーションは、(例えば、画素混合及び他の技法を使用して)画像の低解像度バージョンを生成する。いくつかの実施形態のアプリケーションは、画像のサムネイルを画像のキャッシュされたバージョン4840として記憶する。したがって、ユーザがコレクションを選択するとき、アプリケーションは、(コレクションデータ構造を介して)コレクション内の画像の全てを識別して、サムネイル表示エリアでの表示のために各画像データ構造内のキャッシュされたサムネイルにアクセスする。
ユーザは、(例えば、上述の様々なタッチ相互作用を介して、又は他のユーザ入力相互作用を介して)サムネイル表示エリア内の1つ以上の画像を選択することができる。選択されたサムネイルは、選択のハイライト又は他のインジケータで表示される。サムネイル表示エリア4705において、サムネイル4730が選択される。更に、図示されるように、いくつかの実施形態のサムネイル表示エリア4705は、コレクション内のフラグが付された(例えば、はいに設定されたフラグのタグを有する)いくつかの画像を表示する。いくつかの実施形態において、このテキストは、フラグ付きの画像のサムネイルのみを表示するために選択可能である。
アプリケーションは、選択された画像を対応するサムネイルよりも大きい解像度にて画像表示エリア4710内に表示する。画像は、ディスプレイ機器よりも高い解像度を有するので通常は画像のフルサイズでは表示されないことが多い。この点を踏まえて、いくつかの実施形態のアプリケーションは、画像表示エリアに収まるようにデザインされた画像のキャッシュされたバージョン4840を記憶する。画像表示エリア4710内の画像は、フルサイズの画像のアスペクト比で表示される。1つの画像が選択されたとき、アプリケーションは、画像の一切の部分を切り落すことなく、画像表示エリア以内でできるだけ大きい画像を表示する。複数の画像が選択されたとき、アプリケーションは、画像が異なるアスペクト比を有するときでも各画像についてほぼ同じ画素数を使用することによって視覚的重み付けを維持するように画像を表示する。
第1のツールバー4715は、タイトル情報(例えば、GUIに示すコレクションの名前、ユーザが現在選択されている画像に付け加えた見出しなど)を表示する。更に、ツールバー4715は、第1の組のGUI項目4735〜1238と、第2の組のGUI項目4740〜1243とを含む。
GUI項目の第1の組は、戻るボタン4735と、格子ボタン4736と、ヘルプボタン4737と、取り消しボタン4738とを含む。戻るボタン4735によって、ユーザは、画像の異なるコレクション(例えば、アルバム、イベント、ジャーナルなど)から選択することができるコレクション編成GUIに戻ることができる。グリッドボタン4736の選択によって、アプリケーションは、(例えば、スライドアニメーションを介して)サムネイル表示エリアをGUIに乗せ、又はサムネイル表示エリアから外す。いくつかの実施形態において、ユーザは、スワイプジェスチャを介してサムネイル表示エリアをGUIに乗せた、又はサムネイル表示エリアから外すこともできる。ヘルプボタン4737は、ユーザに対してアクティブな現在のツールセットを識別するコンテキストに応じたヘルプ機能を起動させて、ツールをユーザに簡潔に記述するツールのペルプインジケータを提示する。いくつかの実施形態において、ペルプインジケータは、ツールに関する追加情報にアクセスするために選択可能である。取り消しボタン4738の選択によって、アプリケーション、この編集が切り抜き、色調整などであるかどうかにかかわらず、画像の最新の編集を除去する。この取り消しを行うために、いくつかの実施形態は、最新の命令を画像とともに記憶された編集命令4815の組から除去する。
GUI項目の第2の組は、共有ボタン4740と、情報ボタン4741と、原本を示すボタン4742と、編集ボタン4743とを含む。共有ボタン4740によって、ユーザは、様々な異なる方法で画像を共用することができる。いくつかの実施形態において、ユーザは、選択した画像を同じネットワーク(例えば、Wi Fi(登録商標)又はBluetooth(登録商標)ネットワーク)上の別の適合した機器に送り、画像を画像ホスティング又はソーシャルメディアウェブサイトにアップロードし、かつ、とりわけ、選択した画像の組からジャーナル(即ち、追加のコンテンツを追加することができる配置された画像のプレゼンテーション)を作成することができる。
情報ボタン4741は、1つ以上の選択された画像に関する追加の情報を表示する表示エリアを起動させる。起動した表示エリア内で表示される情報は、画像について記憶されたExifデータ(例えば、カメラ設定、タイムスタンプなど)の一部又は全部を含むことができる。複数の画像が選択されたとき、いくつかの実施形態は、選択された画像の全てに共通のExifデータのみを表示する。いくつかの実施形態は、(i)情報が利用可能な場合、GPSデータに従ってどこで画像又は複数の画像がキャプチャされたかを示すマップを表示し、かつ、(ii)任意の写真共有ウェブサイト上の画像についてコメントストリームを表示する追加のタブを情報表示エリア内に含む。ウェブサイトからこの情報をダウンロードするために、アプリケーションは、共有画像データと共に画像について記憶されたオブジェクトIDを使用してウェブサイトにこの情報を送信する。コメントストリーム、及び場合によっては追加の情報が、ウェブサイトから受信されてユーザに表示される。
原本を示すボタン4742によって、ユーザは、画像の元のバージョンと画像の現在の編集されたバージョンを切り替えることができる。ユーザがボタンを選択したとき、アプリケーションは、編集命令4815が一切適応されていない画像の元のバージョンを表示する。いくつかの実施形態において、適切なサイズ画像が、画像のキャッシュされたバージョン4840の1つとして記憶され、この画像が素早くアクセス可能となる。ユーザがボタン再び4742を再び選択したとき、アプリケーションは、編集命令4815を適用された画像の編集されたバージョンを表示する。
編集ボタン4743によって、ユーザは、編集モードに入るか又は編集モードを出ることができる。ユーザがツールバー4720内の編集ツールの1組を選択したとき、図47に示されるように、編集ボタン4743は、閲覧及び編成モードにユーザを戻す。ユーザが閲覧モードにある間に編集ボタン4743を選択したとき、アプリケーションは、ツールバー4720に示す順番で最後に使用された1組の編集ツールに戻る。即ち、ツールバー4720内の項目は、特定の順序で配置され、編集ボタン4743は、選択された画像に編集が行われた項目の一番右を起動させる。
ツールバー4720は、言及したように、左から右に特定の順序で配置された5つの項目4745〜1249を含む。切り抜き項目4745は、ユーザがゆがんだ画像を整合させて画像の不必要な部分を除去することを可能にする切り抜き及び回転ツールを起動させる。露光項目4746は、ユーザが画像の黒色点、シャドウ、コントラスト、明度、ハイライト、及び白色点を修正することを可能にする1組の露光ツールを起動させる。いくつかの実施形態において、この1組の露光ツールは、画像の階調属性を修正するために異なる組み合わせで共に機能する1組のスライダである。色項目4747は、ユーザが飽和及び活気、並びに、色特有の飽和(例えば、青色画素又は緑色画素)及びホワイトバランスを修正することを可能にする1組の色ツールを起動させる。いくつかの実施形態において、これらのツールの一部は、1組のスライダとして提示される。ブラシ項目4748は、ユーザが画像の修正を局所化することを可能にする1組の補正ツールを起動させる。ブラシで、ユーザは、赤目及び傷を除去し、かつ、擦るアクションを画像上に行うことによって画像の局所化された部分に飽和及び他の特徴を適用又は除去することができる。最後に、効果項目4749は、ユーザが画像に適用することができる1組の特殊効果を起動させる。これらの効果としては、デュオトーン効果、ざらざら効果、グラデーション、ティルトシフト、非写実的不飽和化効果、グレイスケール効果、様々なフィルタなどがある。いくつかの実施形態において、アプリケーションはこれらの効果を、ツールバー4725から展開する項目のセットとして提示する。
述べたように、UI項目4745〜1249は、特定の順番で配置される。この順序は、ユーザが最も一般に5つの異なる形式の編集を適用する順序に従う。したがって、編集命令4815は、いくつかの実施形態においてこの同じ順番で記憶される。ユーザが項目4745〜1249の1つを選択したとき、いくつかの実施形態は、選択されたツールの左のツールからの編集のみを表示された画像に適用する(が、他の編集は命令セット4815内に記憶されたままである)。
ツールバー4725は、1組のGUI項目4750〜1254、並びに、設定項目4755を含む。自動増強項目4750は、補正編集(例えば、明らかな赤目の除去、色バランス調整など)を画像に自動的に行う。回転ボタン4751は、任意の選択された画像を回転させる。いくつかの実施形態において、回転ボタンが押されるたびに、画像は、特定の方向に90°回転する。自動補正は、いくつかの実施形態において、命令セット4815内に置かれる所定の組の編集命令を含む。いくつかの実施形態は、画像の分析を行って、その後、分析結果に基づき1組の命令を定義する。例えば、自動増強ツールは、画像において赤目を検出しようとするが、赤目が検出されなかった場合、赤目を補正する命令は、生成されない。同様に、自動色バランス調整は、画像の分析結果に基づく。回転ボタンによって生成された回転も、編集命令として記憶される。
フラグボタン4752は、任意の選択された画像にフラグ付きとしてタグを付ける。いくつかの実施形態において、コレクションのフラグ付き画像は、フラグなし画像が一切なく表示することができる。お気に入りボタン4753によって、ユーザは、任意の選択された画像をお気に入りとしてマーキングすることができる。いくつかの実施形態において、これによって、お気に入りとして画像にタグが付され、また画像がお気に入り画像のコレクションに追加される。非表示ボタン4754によって、ユーザは、画像に非表示としてタグを付けることができる。いくつかの実施形態において、非表示画像は、サムネイル表示エリア内で表示されず、及び/又はユーザが画像表示エリア内でコレクションの画像を巡回するときに表示されない。図48を参照して上に論じたように、これらの特徴の多くは、タグとして画像データ構造に記憶される。
最後に、設定ボタン4755は、現在アクティブのツールセットに応じて異なるメニューオプションを提示するコンテキストに応じたメニューを起動させる。例えば、閲覧モードでは、いくつかの実施形態のメニューは、新しいアルバムの作成、アルバム用の重要な写真の設定、及び写真間での設定のコピーのためのオプション、及び他のオプションを提示する。編集ツールの異なる組がアクティブとき、メニューは、特定のアクティブのツールセットに関係するオプションを提示する。
当業者は、画像閲覧及び編集GUI4700は、画像閲覧、編集及び編成アプリケーションに関する画像の多くの可能なグラフィカルユーザインタフェースの1つの実施例にすぎないことを認識するであろう。例えば、様々な項目は、異なるエリアに、又は異なる順序で位置することができ、いくつかの実施形態は、追加の又は異なる機能性を有する項目を含むことがあり得る。いくつかの実施形態のサムネイル表示エリアは、対応するフルサイズの画像などのアスペクト比に適合するサムネイルを表示することがあり得る。
VII.電子システム
前述の機能及びアプリケーションの多くは、コンピュータ可読記憶媒体(コンピュータ可読媒体とも呼ばれる)に記録される命令セットとして指定されるソフトウェアプロセスとして実現される。これらの命令が、1つ以上の計算又は処理ユニット(例えば、1つ以上のプロセッサ、プロセッサのコア、又は他の処理ユニット)によって実行されるとき、それらの命令は、処理ユニットに、命令に示されたアクションを実行させる。コンピュータ可読媒体の例には、CD−ROM、フラッシュドライブ、ランダムアクセスメモリ(RAM)チップ、ハードディスク、消去可能プログラム可能な読出し専用メモリ(EPROM)、電気的消去可能プログラム可能な読み出し専用メモリ(EEPROM)などがあるが、これらに限定されない。コンピュータ可読媒体は、無線によって又は有線接続により進行する搬送波及び電子信号を含まない。
この明細書では、用語「ソフトウェア」は、プロセッサによって処理するためにメモリに読み込むことができる、読み出し専用メモリ内に存在するファームウェア又は磁気記憶装置に記憶されたアプリケーションを含む。また、いくつかの実施形態において、複数のソフトウェア発明は、別個のソフトウェア発明をそのままにしながら、より大きいプログラムの下位区分として実施されてもよい。いくつかの実施形態において、複数のソフトウェア発明を別個のプログラムとして実行することもできる。最後に、本明細書で述べたソフトウェア発明を一緒に実行する別個のプログラムの如何なる組み合わせも本発明の範囲内である。いくつかの実施形態において、ソフトウェアプログラムは、1つ以上の電子システム上で動作するようにインストールされたとき、ソフトウェアプログラムの動作を実行し行なう1つ以上の特定のマシン実装を定義する。
A.モバイルデバイス
いくつかの実施形態の画像編集及び閲覧アプリケーションは、モバイルデバイス上で動作する。図49は、そのようなモバイルコンピューティングデバイスのアーキテクチャ4900の実施例である。モバイルコンピューティングデバイスの実施例としては、スマートフォン、タブレット、ラップトップなどが挙げられる。図示されるように、モバイルコンピューティングデバイス4900は、1つ以上の処理ユニット4905と、メモリインタフェース4910と、周辺機器インタフェース4915とを含む。
周辺機器インタフェース4915は、カメラサブシステム4920、無線通信サブシステム4925、オーディオサブシステム4930、I/Oサブシステム4935などを含め、様々なセンサ及びサブシステムに結合される。周辺機器インタフェース4915は、処理ユニット4905と様々な周辺機器との間の通信を可能にする。例えば、配向センサ4945(例えば、ジャイロスコープ)及び加速度センサ4950(例えば、加速度計)は、配向及び加速度機能を容易にするために周辺機器インタフェース4915に結合される。
カメラサブシステム4920は、1つ以上の光センサ4940(例えば、電荷結合素子(charged coupled device、CCD)光センサ、相補型金属酸化膜半導体(complementary metal-oxide-semiconductor、CMOS)光センサなど)に結合される。光センサ4920と結合されたカメラサブシステム4940は、画像及び/又は映像データキャプチャなど、カメラ機能を容易にする。無線通信サブシステム4925は、通信機能を容易にする役目をする。いくつかの実施形態において、無線通信サブシステム4925は、無線受信器及び送信器と、光受信器及び送信器(図49では図示せず)とを含む。いくつかの実施形態のこれらの受信器及び送信器は、GSM(登録商標)ネットワーク、WiFiネットワーク、Bluetooth(登録商標)ネットワークなどの1つ以上の通信ネットワーク上で動作するように実装される。オーディオサブシステム4930は、オーディオを出力するために、(例えば、異なる画像操作に関連した異なる音響効果を出力するために)スピーカに結合される。更に、オーディオサブシステム4930は、音声認識、デジタル録音など音声起動機能を容易にするためにマイクに結合される。
I/Oサブシステム4935は、周辺機器インタフェース4915を介して、ディスプレイ、タッチスクリーンなど入出力周辺機器4905とCPUのデータバスとの間の転送を行う。I/Oサブシステム4935は、入出力周辺装置と処理ユニット4905のデータバスの間で転送を容易にするために、タッチスクリーンコントローラ4955と他の入力コントローラ4960とを含む。図示されるように、タッチスクリーンコントローラ4955は、タッチスクリーン4965に結合される。タッチスクリーンコントローラ4955は、複数のタッチ感度技術のいずれかを使用してタッチスクリーン4965上の接触及び動きを検出する。他の入力コントローラ4960は、1つ以上のボタンなど、他の入力/コントロール機器に結合される。いくつかの実施形態は、タッチ相互作用の代わりに、又はそれに加えてニアタッチ(near−タッチ)相互作用を検出することができるニアタッチ感応画面(near−タッチセンシティブスクリーン)及び対応するコントローラを含む。
メモリインタフェース4910は、メモリ4970に結合することができる。いくつかの実施形態において、メモリ4970は、揮発性メモリ(例えば、高速ランダムアクセスメモリ)、不揮発性メモリ(例えば、フラッシュメモリ)、揮発性及び不揮発性メモリの組み合わせ及び/又は任意の他の形式のメモリを含む。図49に示されるように、メモリ4970は、オペレーティングシステム(OS)4972を記憶する。OS 4972は、基本システムサービスを処理するための命令、及びハードウェア依存タスクを実行するための命令を含む。
メモリ4970は、1つ以上の追加の機器と通信することを容易にする通信命令4974と、グラフィカルユーザインタフェース処理を容易にするグラフィカルユーザインタフェース命令4976と、画像関係の処理及び機能を容易にする画像処理命令4978と、入力関係(例えば、タッチ入力)の処理及び機能を容易にする入力処理命令4980と、オーディオ関係の処理及び機能を容易にするオーディオ処理命令4982と、カメラ関係の処理及び機能を容易にするカメラ命令4984と、も含む。上述の命令は、単に例示的であり、メモリ4970は、いくつかの実施形態において更なる及び/又は他の命令を含む。例えば、スマートフォンのメモリは、電話関係のプロセス及び機能を容易にする電話命令を含むことができる。上に特定した命令は、別個のソフトウェアプログラム又はモジュールとして実行される必要はない。モバイルコンピューティング機器の様々な機能は、1つ以上の信号処理及び/又は特定用途向け集積回路を含め、ハードウェア及び/又はソフトウェアにおいて実行することができる。
図49に示すコンポーネントは別個のコンポーネントと図示されているが、当業者は、2つ以上のコンポーネントを1つ以上の集積回路に一体化することができることを認識するであろう。更に、2つ以上のコンポーネントを1本以上の通信バス又は信号線によって共に結合することができる。また、機能の多くは1つのコンポーネントによって実行されるとして説明したが、当業者は、図49に関して説明した機能が2つ以上の集積回路に分割することができることを認識するであろう。
B.コンピュータシステム
図50は、本発明のいくつかの実施形態が実現される電子システム5000の別の実施例を概念的に示す。電子システム5000は、コンピュータ(例えば、デスクトップコンピュータ、パーソナルコンピュータ、タブレットコンピュータなど)、電話、PDA、又は他の種類の電子若しくはコンピューティング装置でよい。そのような電子システムは、様々なタイプのコンピュータ可読媒体、及び様々な他のタイプのコンピュータ可読媒体のためのインタフェースを含む。電子システム5000は、バス5005、処理ユニット5010、グラフィク処理ユニット(GPU)5015、システムメモリ5020、ネットワーク5025、読み出し専用メモリ5030、永久記憶装置5035、入力デバイス5040及び出力装置5045を含む。
バス5005は、電子システム5000の多数の内部装置を通信で接続する全てのシステムバス、周辺装置バス及びチップセットバスを集合的に表す。例えば、バス5005は、処理ユニット5010を、読み出し専用メモリ5030、GPU 5015、システムメモリ5020、及び永久記憶装置5035と通信可能に結合する。
これらの様々なメモリユニットから、処理ユニット5010は、本発明のプロセスを実行するために実行すべき命令及び処理すべきデータを取得する。処理ユニットは、異なる実施形態において、シングルプロセッサ又はマルチコアプロセッサでよい。いくつかの命令は、GPU 5015に渡され、GPU 5015によって実行される。GPU 5015は、処理ユニット5010によって提供される、様々な計算をオフロードしたり、画像処理を補完したりすることができる。いくつかの実施形態において、そのような機能は、CoreImageのカーネルシェーディング言語を使用して提供されてもよい。
読み出し専用メモリ(ROM)5030は、処理ユニット5010及び電子システムの他のモジュールによって必要とされる静的データ及び命令を記憶する。他方、永久記憶装置5035は、読み書きメモリ装置である。この装置は、電子システム5000がオフでも、命令及びデータを記憶する不揮発性メモリユニットである。本発明のいくつかの実施形態は、永久記憶装置5035として大容量記憶装置(磁気又は光ディスク、及びその対応するディスクドライブなど)を使用する。
他の実施形態は、永久記憶装置としてリムーバブル記憶装置(フロッピディスク、フラッシュメモリデバイスなど、及びその対応ドライブ)を使用する。永久記憶装置5035と同様に、システムメモリ5020は、読み書きメモリ装置である。しかしながら、記憶装置5035と異なり、システムメモリ5020は、ランダムアクセスメモリなどの揮発性読み書きメモリである。システムメモリ5020は、実行時にプロセッサが必要とする命令及びデータのうちのいくつかを記憶する。いくつかの実施形態において、本発明のプロセスは、システムメモリ5020、永久記憶装置5035、及び/又は読み出し専用メモリ5030に記憶される。例えば、様々なメモリユニットは、いくつかの実施形態によれば、マルチメディアクリップを処理する命令を含む。これらの様々なメモリユニットから、処理ユニット5010は、いくつかの実施形態のプロセスを実行するために実行する命令及び処理するデータを取得する。
バス5005は、また、入力デバイス5040及び出力装置5045に接続する。ユーザは、入力デバイス5040によって、電子システムに情報を送り、コマンドを選択することができる。入力デバイス5040には、英数字キーボード及びポインティングデバイス(「カーソル制御デバイス」とも呼ばれる)、カメラ(例えば、ウェブカメラ)、音声コマンドを受け取るマイクロフォン又は類似の装置などが挙げられる。出力装置5045は、電子システムによって生成された画像を表示するか、又はデータを他の方法で出力する。出力装置5045には、プリンタ、陰極線管(CRT)又は液晶ディスプレイ(LCD)などのディスプレイデバイス、並びにスピーカ又は類似のオーディオ出力装置が挙げられる。いくつかの実施形態には、入力デバイスと出力装置との両方として機能するタッチスクリーンなどのデバイスを含む。
最後に、図50に示されたように、バス5005は、ネットワークアダプタ(図示せず)を介して電子システム5000をネットワーク5025に結合する。このように、コンピュータは、コンピュータのネットワークの一部(ローカルエリアネットワーク(「LAN」)、広域ネットワーク(「WAN」)、又はイントラネットなど)、又はインターネットなどのネットワークのネットワークでもよい。電子システム5000のいずれか又は全てのコンポーネントが、本発明で使用されてもよい。
いくつかの実施形態は、マイクロプロセッサ、機械可読又はコンピュータ可読媒体(あるいは、コンピュータ可読記憶媒体、機械可読媒体又は機械可読記憶媒体と呼ばれる)にコンピュータプログラム命令を記憶する記憶装置及びメモリなどの電子構成要素を含む。そのようなコンピュータ可読媒体のいくつかの例には、RAM、ROM、読み出し専用コンパクトディスク(CD−ROM)、追記型コンパクトディスク(CD−R)、書き換え可能コンパクトディスク(CD−RW)、読み出し専用多目的ディスク(例えば、DVD−ROM、2層DVD−ROM)、様々な記録可能/書き換え可能DVD(例えば、DVD−RAM、DVD−RW、DVD+RWなど)、フラッシュメモリ(例えば、SDカード、ミニSDカード、マイクロSDカードなど)、磁気及び/又はソリッドステートハードディスク、読み出し専用記録可能Blu−Ray(登録商標)ディスク、超高密度光ディスク、任意の他の光学又は磁気メディア、及びフロッピディスクが挙げられる。コンピュータ可読媒体は、少なくとも1つの処理ユニットによって実行可能で、様々な操作を実行するための命令セットを含むコンピュータプログラムを記憶してもよい。コンピュータプログラム又はコンピュータコードの例には、コンパイラによって作成されるようなマシンコード、及びインタープリタを使用してコンピュータ、電子構成要素又はマイクロプロセッサによって実行される高レベルコードを含むファイルが挙げられる。
上記の考察は、主に、ソフトウェアを実行するマイクロプロセッサ又はマルチコアプロセッサを参照しているが、いくつかの実施形態は、特定用途向け集積回路(ASIC)又はフィールドプログラマブルゲートアレイ(FPGA)などの1つ以上の集積回路によって実行される。いくつかの実施形態において、そのような集積回路は、回路自体に記憶された命令を実行する。更に、いくつかの実施形態は、プログラマブルロジックデバイス(PLD)、ROM、又はRAMデバイスに記憶されたソフトウェアを実行する。
本出願のこの明細書及びクレームで使用されるとき、用語「コンピュータ」、「サーバ」、「プロセッサ」及び「メモリ」は全て、電子又は他の技術装置を参照する。これらの用語は、人々又は人々のグループを含まない。規定のため、用語「ディスプレイ又は表示」は、電子システム上の表示を意味する。本出願のこの明細書及びクレームで使用されるとき、用語「コンピュータ可読媒体」、「コンピュータ可読媒体」、及び「機械可読媒体」は、コンピュータによって読み出し可能な形式で情報を記憶する有形な物理的物体に完全に制限される。これらの用語は、無線信号、有線でダウンロードされた信号、及び他の暫時信号を除外する。
本発明を多数の特定の詳細に関して述べたが、当業者は、本発明を、本発明の趣旨から逸脱しない他の特定の形式で実施できることを理解するであろう。例えば、図の多くは、様々なタッチジェスチャ(例えば、タップ、ダブルタップ、スワイプジェスチャ、押したままにするジェスチャなど)を示す。しかしながら、例示する操作の多くは、異なるタッチジェスチャ(例えば、タップなどの代わりにスワイプ)を介して、又は非タッチ入力によって(例えば、カーソルコントローラ、キーボード、タッチパッド/トラックパッド、ニアタッチ感応画面などを使用して)行うことができる。更に、いくつかの図(図5、図8、図11、図15、図17、図21、図25、図28、図30、図32、図34、図36、図40、及び図42〜44を含む)は、プロセスを概念的に示す。これらのプロセスの具体的な操作は、図示され記述された厳密な順序で実行されなくてもよい。具体的な操作は、1つの連続した一連の操作で実行されなくてもよく、様々な具体的な操作が、異なる実施形態で実行されてもよい。更に、プロセスは、いくつかのサブプロセスを使用して、又はより大きいマクロプロセスの一部として実施されてもよい。したがって、当業者は、本発明が、以上の実例となる詳細によって制限されず、添付の特許請求の範囲によって定義されることを理解するであろう。

Claims (82)

  1. コンピューティングデバイスの少なくとも1つの処理装置による実行のための画像編集アプリケーションを記憶する永続的機械可読媒体であって、前記画像編集アプリケーションは、
    前記画像編集アプリケーションの表示エリア内に画像を表示するための命令のセットと、
    前記画像を回転させるための回転可能なユーザインタフェース(UI)項目を表示するための命令のセットと、
    コンピューティングデバイスが回転されていくのに従い、前記回転可能なUI項目を回転させるための命令のセットと、
    前記回転可能なUI項目が回転されていくのに従い、前記画像を前記表示エリアの境界に対して回転させるための命令のセットと、
    を含む、機械可読媒体。
  2. 前記画像編集アプリケーションが、前記回転可能なUI項目を回転させることの可聴的指示をユーザに提供するために、前記回転可能なUI項目を回転させるのと同時に音を再生するための命令のセットを更に含む、請求項1に記載の機械可読媒体。
  3. 前記画像編集アプリケーションが、前記表示エリア内にグリッド線のセットを表示するための命令のセットを更に含む、請求項1に記載の機械可読媒体。
  4. 前記UI項目が、前記回転可能なUI項目が回転された角度を示すためのマーキングを含む、請求項1に記載の機械可読媒体。
  5. 前記画像編集アプリケーションが、回転された画像を生成するために前記画像に対して実行する操作のセットとして前記画像の前記回転を保存するための命令のセットを更に含む、請求項1に記載の機械可読媒体。
  6. 前記回転可能なUI項目を回転させるための前記命令のセットが、前記回転可能なUI項目を、前記コンピューティングデバイスの前記回転の方向と反対である方向に回転させるための命令のセットを含む、請求項1に記載の機械可読媒体。
  7. 前記画像を回転させるための前記命令のセットが、前記画像を、回転可能なUI項目の前記回転の方向と同じ方向に回転させるための命令のセットを含む、請求項1に記載の機械可読媒体。
  8. 前記回転可能なUI項目を回転させるための前記命令のセットが、前記回転可能なUI項目を、前記コンピューティングデバイスが回転する同じ角度だけ回転させるための命令のセットを含む、請求項1に記載の機械可読媒体。
  9. 少なくとも1つの処理装置による実行のための画像編集アプリケーションを記憶する機械可読媒体であって、前記画像編集アプリケーションは、
    前記画像編集アプリケーションの表示エリア内に画像を表示するための命令のセットと、
    前記画像を回転させるための回転可能なダイアルを表示するための命令のセットと、
    ユーザが前記回転可能なダイアルを回転させることに応答して、前記回転可能なUI項目が回転されていくのに従い、前記画像を前記表示エリアの境界に対して回転させるための命令のセットと、
    を含む、機械可読媒体。
  10. 前記コンピューティングデバイスが、前記コンピューティングデバイスの前記回転を測定するためのツールを有する、請求項1に記載の機械可読媒体。
  11. 前記画像編集アプリケーションが、前記コンピューティングデバイスが回転される前の前記コンピューティングデバイスの少なくとも1つの配向値を記録するための命令のセットを更に含む、請求項1に記載の機械可読媒体。
  12. 前記配向値がz軸配向値であり、前記z軸は前記コンピューティングデバイスのスクリーンと直交し、x軸及びy軸は前記スクリーンの辺と平行である、請求項11に記載の機械可読媒体。
  13. 少なくとも1つの処理装置による実行のための画像編集アプリケーションを記憶する永続的機械可読媒体であって、前記画像編集アプリケーションは、
    前記画像編集アプリケーションの表示エリアの境界と平行ではない画像の水平線を特定するための命令のセットと、
    前記表示エリア内に前記画像、及び前記水平線の指示を表示するための命令のセットと、
    前記画像を回転させるための選択可能なユーザインタフェース(UI)項目を表示するための命令のセットと、
    前記選択可能なUI項目の選択に応答して、前記画像の前記特定された水平線を前記表示エリアの前記境界に対して水平にすることによって前記画像を回転させるための命令のセットと、
    を含む、機械可読媒体。
  14. 前記UI項目が第1のUI項目であり、前記画像編集アプリケーションが、
    前記水平線の前記指示を閉じるための第2のUI項目を表示するための命令のセットと、
    前記第2のUI項目の選択を受け取るための命令のセットと、
    前記第2のUI項目の前記選択を受け取ることに応答して、前記表示エリアから前記水平線の前記表示された指示を除去するための命令のセットと、
    を更に含む、請求項13に記載の機械可読媒体。
  15. 前記画像編集アプリケーションが、前記画像を回転させている最中に前記画像を拡大するための命令のセットを更に含む、請求項13に記載の機械可読媒体。
  16. 前記画像編集アプリケーションが、前記画像を回転させている最中に前記画像を切り抜くための命令のセットを更に含む、請求項13に記載の機械可読媒体。
  17. 少なくとも1つの処理装置による実行のための画像編集アプリケーションを記憶する永続的機械可読媒体であって、前記画像編集アプリケーションは、
    前記メディアアプリケーションの表示エリア内に画像を表示するための命令のセットと、
    前記表示エリア上における回転性のユーザ入力を受け取るための命令のセットと、
    前記回転性のユーザ入力の回転の量を特定するための命令のセットと、
    前記回転の量が閾値を超えた場合にのみ前記画像の回転を開始するための命令のセットと、
    前記回転性のユーザ入力を受け取っている最中に前記画像が回転されているのを表示するための命令のセットと、
    を含む、機械可読媒体。
  18. 前記回転性のユーザ入力がタッチ入力である、請求項17に記載の機械可読媒体。
  19. 前記画像編集アプリケーションが、
    前記表示エリア内に第1のグリッド線のセットを表示するための命令のセットと、
    前記表示された画像を回転させている最中に前記表示エリア内に第2のグリッド線のセットを表示するための命令のセットと、
    を更に含む、請求項17に記載の機械可読媒体。
  20. 前記第1及び第2のグリッド線のセットが表示される場合には、前記第2のグリッド線のセットは前記第1のグリッド線のセットよりも狭く離間される、請求項19に記載の機械可読媒体。
  21. 少なくとも1つの処理装置による実行のための画像編集アプリケーションを記憶する永続的機械可読媒体であって、前記画像編集アプリケーションは、
    前記画像編集アプリケーションの表示エリア内に前記画像を表示するための命令のセットと、
    前記画像を前記表示エリアの境界に対して回転させるための命令のセットと、
    前記画像を回転させている最中に、前記画像が回転されている最中に前記画像の境界が前記表示エリア内に表示されないように前記画像の拡大レベルを調整するための命令のセット、
    を含む、機械可読媒体。
  22. 前記画像を回転させるための前記命令のセットが、前記画像を前記拡大する結果、前記表示エリアの外側へはみ出す前記画像の部分をトリミングするための命令のセットを含む、請求項21に記載の機械可読媒体。
  23. 前記画像を回転させるための前記命令のセットが、マルチタッチ入力を受け取ることに応答して前記画像を回転させるための命令のセットを含む、請求項21に記載の機械可読媒体。
  24. プログラムを記憶する永続的機械可読媒体であって、前記プログラムは、少なくとも1つの処理ユニットによって実行されると、画像を編集するためのグラフィカルユーザインタフェース(GUI)を提供し、前記GUIは、
    画像を表示するための表示エリアと、
    異なるアスペクト比を表す選択可能なユーザインタフェース(UI)項目のセットを表示するためのプリセット選択エリアと、
    (i)前記画像内の顔のセットを特定し、(ii)前記選択可能なUI項目のセット内の選択可能なUI項目の選択を受け取ることに応答して、前記表示エリア内に表示された前記画像を、前記選択されたUI項目によって表されている前記アスペクト比に基づき、前記特定された顔が、前記切り抜かれた画像内の中心に配されるように、切り抜くための切り抜きツールと、
    を含む、機械可読媒体。
  25. 前記選択可能なUI項目のセットが前記画像のサムネイル画像であり、前記特定された顔がそれぞれのサムネイル画像内の中心に配される、請求項24に記載の機械可読媒体。
  26. プログラムを記憶する永続的機械可読媒体であって、前記プログラムは、少なくとも1つの処理ユニットによって実行されると、画像を編集するためのグラフィカルユーザインタフェース(GUI)を提供し、前記GUIは、
    画像を表示するための表示エリアと、
    (i)前記表示エリア上におけるタッチが維持されている間に前記画像のエリア上における複数のタッチ入力を受け取り、(ii)前記エリアがタッチ入力を受け取るたびに前記エリアに効果を漸増的に適用するための画像処理ツールと、
    を含む、機械可読媒体。
  27. 画像処理ツールが更に、前記効果の選択を受け取るためのものである、請求項26に記載の機械可読媒体。
  28. 前記画像処理ツールが、前記画像処理ツールが閾値数のタッチ入力を受け取るまでのみ、前記効果を漸増的に適用する、請求項26に記載の機械可読媒体。
  29. 前記エリアがタッチ入力を受け取る1回目の時において前記エリアに適用される前記効果の量が、前記エリアがタッチ入力を受け取る2回目の時において前記エリアに適用される前記効果の量と異なる、請求項26に記載の機械可読媒体。
  30. 前記画像処理ツールが画像の前記エリアに適用する前記効果が、飽和効果、脱飽和効果、明色化効果、暗色化効果、シャープ化効果、及びソフト化効果のうちの少なくとも1つを含む、請求項26に記載の機械可読媒体。
  31. 前記GUIが、異なる効果を表す選択可能なユーザインタフェース項目のセットを更に含み、前記画像処理ツールが、前記効果を表すユーザインタフェース項目の選択を受け取ることに応答して前記効果を選択する、請求項26に記載の機械可読媒体。
  32. 少なくとも1つの処理ユニットによる実行のためのプログラムを記憶する永続的機械可読媒体であって、前記プログラムは、
    表示エリア内に前記画像を表示するための命令のセットであって、前記画像は複数の画素を含む、表示エリア内に前記画像を表示するための命令のセットと、
    前記画像の画素のセットの上における複数のタッチ入力を受け取るための命令のセットと、
    前記画素のセットがタッチ入力を受け取るたびに前記画素のセットに画像処理操作を漸増的に適用するための命令のセットと、
    を含む、機械可読媒体。
  33. 前記画像処理操作を漸増的に適用するための前記命令のセットが、前記画素のセットがタッチ入力を受け取るたびに異なる量の前記画像処理操作を適用するための命令のセットを含む、請求項32に記載の機械可読媒体。
  34. 前記画像処理操作を漸増的に適用するための前記命令のセットが、前記画素のセットがタッチ入力を受け取るたびに適用するべき前記画像処理操作の量を線形的に変更するための命令のセットを含む、請求項32に記載の機械可読媒体。
  35. 前記画像処理操作を漸増的に適用するための前記命令のセットが、前記画素のセットがタッチ入力を受け取るたびに適用するべき前記画像処理操作の量を非線形的に変更するための命令のセットを含む、請求項32に記載の機械可読媒体。
  36. 前記画像処理操作を漸増的に適用するための前記命令のセットが、前記画像処理ツールがユーザ入力を閾値回数受け取るまでのみ前記画像処理操作を適用するための命令のセットを含む、請求項32に記載の機械可読媒体。
  37. 前記プログラムが、前記画像のそれぞれの画素にマスク値を付与するための命令のセットを更に含む、請求項32に記載の機械可読媒体。
  38. 前記画像処理操作を漸増的に適用するための前記命令のセットが、前記画素のセットの前記マスク値を変更するための命令のセットを含む、請求項37に記載の機械可読媒体。
  39. プログラムを記憶する永続的機械可読媒体であって、前記プログラムは、少なくとも1つの処理ユニットによって実行されると、画像を編集するためのグラフィカルユーザインタフェース(GUI)を提供し、前記GUIは、
    複数の画素を含む画像を表示するための表示エリアと、
    (i)前記表示された画像の画素のセットの選択を受け取り、(ii)選択された画素の第1のサブセットの特性に基づき評価基準のセットを決定し、(iii)前記評価基準を満たす前記選択された画素の第2のサブセットにのみ画像処理操作を適用するためのツールと、
    を含む、機械可読媒体。
  40. 前記評価基準のセットが、画素は、画素値の範囲内に含まれる画素値を有するかどうかを含む、請求項40に記載の機械可読媒体。
  41. 前記ツールが、前記エリアがユーザ入力を受け取るたびに、前記画像処理操作を漸増的に適用する、請求項40に記載の機械可読媒体。
  42. 少なくとも1つの処理ユニットによる実行のためのプログラムを記憶する永続的機械可読媒体であって、前記プログラムは、
    表示エリア内に画像を表示するための命令のセットであって、前記画像は複数の画素を含む、表示エリア内に前記画像を表示するための命令のセットと、
    前記画像のエリアの選択を受け取るための命令のセットと、
    前記画像の前記選択されたエリア内の画素のサブセットの特性に基づき、画素の類似度を判定するための評価基準のセットを特定するための命令のセットと、
    前記特定された評価基準を満たす前記選択されたエリア内の画素上においてのみ画像処理操作を実行するための命令のセットと、
    を含む、機械可読媒体。
  43. 前記評価基準のセットを特定するための前記命令のセットが、前記エリア内の前記画素の画素値をRGB色モデル値からLAB空間値に変換するための命令のセットを含む、請求項42に記載の機械可読媒体。
  44. 前記評価基準のセットを特定するための前記命令のセットが、前記エリア内の画素は特定の画素のセットから既定の距離以内にあるかどうかを判定するための命令のセットを更に含む、請求項43に記載の機械可読媒体。
  45. 前記特定の画素のセットが、前記エリア内の他の画素が選択される前に選択される画素である、請求項44に記載の機械可読媒体。
  46. 前記選択されるエリアがタッチ入力によって選択される、請求項42に記載の機械可読媒体。
  47. 画像編集アプリケーションを提供する方法であって、
    画像を表示するための表示エリアを提供することと、
    (i)前記表示エリア上におけるタッチが維持されている間に前記画像のエリア上における複数のタッチ入力を受け取り、(ii)前記エリアがタッチ入力を受け取るたびに前記エリアに効果を漸増的に適用するための画像処理ツールを提供することと、
    を含む、方法。
  48. 前記画像処理ツールが、前記画像処理ツールが閾値数のタッチ入力を受け取るまでのみ、前記効果を漸増的に適用する、請求項47に記載の方法。
  49. 前記エリアがタッチ入力を受け取る1回目の時において前記エリアに適用される前記効果の量が、前記エリアがタッチ入力を受け取る2回目の時において前記エリアに適用される前記効果の量と異なる、請求項47に記載の方法。
  50. 画像処理ツールが更に、前記効果の選択を受け取るためのものである、請求項47に記載の方法。
  51. プログラムを記憶する永続的機械可読媒体であって、前記プログラムは、コンピューティングデバイスの少なくとも1つの処理ユニットによって実行されると、画像を編集するためのグラフィカルユーザインタフェース(GUI)を提供し、前記GUIは、
    画像を表示するための表示エリアと、
    (i)前記画像内のロケーションの選択を受け取り、(ii)前記選択されたロケーションに基づき効果を適用するべき前記画像内のエリアを画定し、前記画定されるエリアは、前記選択されたロケーションを含まないようにし、(iii)前記画定されたエリアに前記効果を適用するための画像処理ツールと、
    を含む、機械可読媒体。
  52. 前記画像処理ツールが、前記表示された画像に重ね合わせる可視的なユーザインタフェース項目を含まない、請求項51に記載の機械可読媒体。
  53. 前記画像処理ツールが、前記表示された画像に重ね合わせるユーザインタフェース項目を含む、請求項51に記載の機械可読媒体。
  54. 前記ユーザインタフェース項目が上部水平線及び下部水平線を含む、請求項53に記載の機械可読媒体。
  55. 前記エリアが、前記上部水平線よりも上にある前記画像の第1のエリアと、前記下部水平線よりも下にある前記画像の第2のエリアと、を含む、請求項54に記載の機械可読媒体。
  56. 前記画像処理ツールが前記エリアに適用する前記効果がぼかし効果である、請求項55に記載の機械可読媒体。
  57. 前記画像処理ツールが更に、ユーザ入力に基づき前記上部水平線と前記下部水平線との間の前記距離を調整するためのものである、請求項54に記載の機械可読媒体。
  58. 前記画像処理ツールが前記画像全体に前記効果を適用する、請求項51に記載の機械可読媒体。
  59. 前記画像処理ツールが、前記画像内の前記選択されたロケーションを含む別のエリアに前記効果を適用しない、請求項51に記載の機械可読媒体。
  60. 前記画像が複数の画素を含み、前記画像処理ツールが、前記画素が前記画像内の前記選択されたロケーションから位置する前記距離に基づき、前記エリア内の前記画素に異なる量の効果を適用する、請求項51に記載の機械可読媒体。
  61. 前記効果が、暗色化効果、ぼかし効果、グラデーション効果のうちの少なくとも1つを含む、請求項51に記載の機械可読媒体。
  62. 少なくとも1つの処理ユニットによる実行のためのプログラムを記憶する永続的機械可読媒体であって、前記プログラムは、
    表示エリア内に画像を表示するための命令のセットと、
    前記表示された画像内のロケーションにおけるタッチ入力を受け取ることに応答して、前記ロケーションに基づき効果を適用するべき前記画像内のエリアを画定するための命令のセットであって、前記画像の前記画定されるエリアは前記ロケーションを含まないようにする、命令のセットと、
    前記画定されたエリアに前記効果を適用するための命令のセットと、
    を含む、機械可読媒体。
  63. 前記画像が複数の画素を含み、前記画定されるエリアが、前記画像内の前記ロケーションから既定の距離以内にない画素を含む、請求項62に記載の機械可読媒体。
  64. 前記効果を適用するための前記命令のセットが、ユーザ入力に基づき前記既定の距離を調整するための命令のセットを含む、請求項63に記載の機械可読媒体。
  65. 前記効果が暗色化効果を含む、請求項62に記載の機械可読媒体。
  66. 前記画定されるエリアが前記画像内の前記ロケーションの垂直上方にある、請求項62に記載の機械可読媒体。
  67. 前記プログラムが、前記画像内の前記ロケーションの垂直下方にあるエリアを手を付けずにそのままにしておく命令のセットを更に含む、請求項62に記載の機械可読媒体。
  68. 前記効果がグラデーション効果を含む、請求項62に記載の機械可読媒体。
  69. 少なくとも1つの処理ユニットによる実行のためのプログラムを記憶する永続的機械可読媒体であって、前記プログラムは、
    複数の画素を含む元の画像内のロケーションにおけるユーザ入力を受け取るための命令のセットと、
    前記元の画像に基づき中間画像を生成するための命令のセットと、
    前記元の画像のそれぞれの画素のために、前記ロケーションに基づき、前記画素に適用するべき効果の量を計算するための命令のセットと、
    前記計算された量を用いて前記元の画像及び前記中間画像をブレンドするための命令のセットと、
    を含む、機械可読媒体。
  70. 前記中間画像を生成するための前記命令のセットが、前記中間画像内の色を強調するための命令のセットを含む、請求項69に記載の機械可読媒体。
  71. 前記強調される色が青色である、請求項70に記載の機械可読媒体。
  72. 前記中間画像内の色を強調するための前記命令のセットが、RGBトリプレットであって、そのうちの青色値は赤色値及び緑色値と少なくとも1桁異なる、RGBトリプレットを用いるための命令のセットを含む、請求項70に記載の機械可読媒体。
  73. 前記中間画像を生成するための前記命令のセットが、
    前記元の画像に基づき第1の画像を生成するための命令のセットと、
    前記中間画像を生成するために前記第1の画像を前記元の画像と混合するための命令のセットと、
    を含む、請求項69に記載の機械可読媒体。
  74. 前記第1の画像が白黒画像である、請求項73に記載の機械可読媒体。
  75. 前記第1の画像を前記元の画像と混合するための前記命令のセットが、RGBトリプレットであって、そのうちの赤色値及び緑色値は前記RGBトリプレットの青色値よりも大きい、RGBトリプレットを用いるための命令のセットを含む、請求項73に記載の機械可読媒体。
  76. 複数の画素を含む元の画像を編集するための、コンピュータにより実行されるシステムであって、前記システムは、
    複数の画素を含む前記元の画像内のロケーションにおけるユーザ入力を受け取るための第1のモジュールと、
    前記元の画像に基づき中間画像を生成するための第2のモジュールと、
    前記元の画像の画素毎に、前記ロケーションに基づき前記画素に適用するべき効果の量を計算するための第3のモジュールと、
    前記効果の前記計算された量を用いて前記元の画像及び前記中間画像をブレンドするための第4のモジュールと、
    を含む、システム。
  77. 前記第3のモジュールが、前記効果の前記量を計算するために前記元の画像の高さを用いる、請求項76に記載の機械可読媒体。
  78. 前記第4のモジュールが、前記元の画像及び前記中間画像をブレンドするために、式:
    gradImage=originalImage*(1−gradient)+intermediateImage*gradient、
    を用い、gradImageは前記ブレンド画像内の対応する画素のRGBトリプレットであり、originalImageは前記元の画像の前記画素のRGBトリプレットであり、intermediateImageは前記中間画像内の対応する画素のRGBトリプレットであり、gradientは、前記元の画像の前記画素に適用するために計算された前記効果の前記量である、請求項76に記載の機械可読媒体。
  79. 少なくとも1つの処理ユニットによる実行のためのプログラムを記憶する永続的機械可読媒体であって、前記プログラムは、
    表示エリア内に画像を表示するための命令のセットと、
    前記表示された画像上における方向性のタッチ入力を受け取るための命令のセットと、
    前記方向性のタッチ入力に基づき、前記表示された画像内のエリアを画定するための命令のセットと、
    前記方向性のタッチ入力の前記方向に沿って前記画像処理操作の程度を変化させることによって、前記画定されたエリアに画像処理操作を適用するための命令のセットと、
    を含む、機械可読媒体。
  80. 前記プログラムが、
    前記表示された画像内のロケーションにおけるタッチ入力を受け取るための命令のセットと、
    前記画像上の前記ロケーションから2つ以上の方向に沿って前記画像の暗さの程度を調整するための命令のセットと、
    を更に含む、請求項79に記載の機械可読媒体。
  81. 前記プログラムが、
    前記ロケーションに基づき前記画像の第1の領域を画定するための命令のセットと、
    前記第1の領域と異なる前記画像の第2の領域にぼかし効果を適用するための命令のセットと、
    を更に含む、請求項79に記載の機械可読媒体。
  82. 前記UI項目が、前記回転可能なダイアルが回転する角度を示すためのマーキングを含む、請求項9に記載の機械可読媒体。
JP2016153991A 2012-03-06 2016-08-04 電子デバイス、方法、プログラム Active JP6220021B2 (ja)

Applications Claiming Priority (12)

Application Number Priority Date Filing Date Title
US201261607550P 2012-03-06 2012-03-06
US201261607574P 2012-03-06 2012-03-06
US201261607569P 2012-03-06 2012-03-06
US61/607,574 2012-03-06
US61/607,569 2012-03-06
US61/607,550 2012-03-06
US13/629,383 US8971623B2 (en) 2012-03-06 2012-09-27 Overlaid user interface tools for applying effects to image
US13/629,370 2012-09-27
US13/629,370 US9569078B2 (en) 2012-03-06 2012-09-27 User interface tools for cropping and straightening image
US13/629,383 2012-09-27
US13/629,374 US9041727B2 (en) 2012-03-06 2012-09-27 User interface tools for selectively applying effects to image
US13/629,374 2012-09-27

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP2014560908A Division JP5986232B2 (ja) 2012-03-06 2012-12-28 画像の切り抜き及び角度補正のためのユーザインタフェースツール

Publications (2)

Publication Number Publication Date
JP2017016670A true JP2017016670A (ja) 2017-01-19
JP6220021B2 JP6220021B2 (ja) 2017-10-25

Family

ID=49113716

Family Applications (2)

Application Number Title Priority Date Filing Date
JP2014560908A Active JP5986232B2 (ja) 2012-03-06 2012-12-28 画像の切り抜き及び角度補正のためのユーザインタフェースツール
JP2016153991A Active JP6220021B2 (ja) 2012-03-06 2016-08-04 電子デバイス、方法、プログラム

Family Applications Before (1)

Application Number Title Priority Date Filing Date
JP2014560908A Active JP5986232B2 (ja) 2012-03-06 2012-12-28 画像の切り抜き及び角度補正のためのユーザインタフェースツール

Country Status (5)

Country Link
US (7) US8971623B2 (ja)
JP (2) JP5986232B2 (ja)
CN (1) CN104247390B (ja)
GB (3) GB2587183A (ja)
WO (1) WO2013133893A1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101881292B1 (ko) * 2017-02-27 2018-07-24 (주)진명아이앤씨 Uhd동영상의 스티칭 및 컷-아웃용 텔레스트레이터

Families Citing this family (169)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9792017B1 (en) 2011-07-12 2017-10-17 Domo, Inc. Automatic creation of drill paths
US9202297B1 (en) * 2011-07-12 2015-12-01 Domo, Inc. Dynamic expansion of data visualizations
US10001898B1 (en) 2011-07-12 2018-06-19 Domo, Inc. Automated provisioning of relational information for a summary data visualization
US20130239051A1 (en) 2012-03-06 2013-09-12 Apple Inc. Non-destructive editing for a media editing application
US9131192B2 (en) 2012-03-06 2015-09-08 Apple Inc. Unified slider control for modifying multiple image properties
US9202433B2 (en) 2012-03-06 2015-12-01 Apple Inc. Multi operation slider
US8971623B2 (en) * 2012-03-06 2015-03-03 Apple Inc. Overlaid user interface tools for applying effects to image
US20140040789A1 (en) * 2012-05-08 2014-02-06 Adobe Systems Incorporated Tool configuration history in a user interface
US9285971B2 (en) 2012-06-20 2016-03-15 Google Inc. Compartmentalized image editing system
US9185387B2 (en) 2012-07-03 2015-11-10 Gopro, Inc. Image blur based on 3D depth information
US9058662B2 (en) * 2012-08-16 2015-06-16 Facebook, Inc. Systems and methods for non-destructive editing of digital images
US20140055369A1 (en) * 2012-08-22 2014-02-27 Qualcomm Innovation Center, Inc. Single-gesture mobile computing device operations
KR20140028311A (ko) * 2012-08-28 2014-03-10 삼성전자주식회사 출력화면의 편집 영역을 설정하기 위한 전자 장치 및 방법
US9268423B2 (en) * 2012-09-08 2016-02-23 Stormlit Limited Definition and use of node-based shapes, areas and windows on touch screen devices
KR101935039B1 (ko) * 2012-09-11 2019-01-03 엘지전자 주식회사 이동 단말기 및 이동 단말기의 제어 방법
US10743945B2 (en) * 2012-10-02 2020-08-18 Radlink, Inc. Surgical method and workflow
US20140378828A1 (en) * 2012-10-02 2014-12-25 Brad L. Penenberg Hip arthroplasty method and workflow
CN103777857A (zh) * 2012-10-24 2014-05-07 腾讯科技(深圳)有限公司 实现视频画面转动的方法和装置
US9081487B2 (en) * 2012-11-22 2015-07-14 Agfa Healthcare Inc. System and method for manipulating an image
KR102115727B1 (ko) * 2013-01-07 2020-05-28 삼성전자주식회사 하이브리드 위젯을 제공하는 모바일 장치 및 그 제어 방법
US9741150B2 (en) 2013-07-25 2017-08-22 Duelight Llc Systems and methods for displaying representative images
US10088989B2 (en) * 2014-11-18 2018-10-02 Duelight Llc System and method for computing operations based on a first and second user input
US9916072B2 (en) * 2013-02-20 2018-03-13 Lg Electronics Inc. Application and notification window display management in a mobile terminal
CN104020935A (zh) * 2013-02-28 2014-09-03 国际商业机器公司 用于控制显示屏上的显示对象的方法和装置
CN104049855B (zh) * 2013-03-12 2018-06-15 富泰华工业(深圳)有限公司 图像查看系统及方法
KR102101850B1 (ko) * 2013-06-04 2020-04-17 삼성전자주식회사 전자 장치에서 이미지를 편집하기 위한 장치 및 방법
US9465985B2 (en) 2013-06-09 2016-10-11 Apple Inc. Managing real-time handwriting recognition
KR20150000278A (ko) * 2013-06-24 2015-01-02 삼성전자주식회사 디스플레이 장치 및 제어 방법
KR20150006191A (ko) * 2013-07-08 2015-01-16 삼성전자주식회사 파노라마 이미지 운용 방법 및 그 전자 장치
US9177362B2 (en) * 2013-08-02 2015-11-03 Facebook, Inc. Systems and methods for transforming an image
US9881645B2 (en) * 2013-08-20 2018-01-30 Google Llc Systems, methods, and media for editing video during playback via gestures
US9804760B2 (en) * 2013-08-22 2017-10-31 Apple Inc. Scrollable in-line camera for capturing and sharing content
USD768142S1 (en) * 2013-08-29 2016-10-04 Samsung Electronics Co., Ltd. Electronic device with graphical user interface
US9846532B2 (en) 2013-09-06 2017-12-19 Seespace Ltd. Method and apparatus for controlling video content on a display
KR20150029451A (ko) * 2013-09-10 2015-03-18 엘지전자 주식회사 이동 단말기 및 이의 제어방법
JP2016538657A (ja) * 2013-09-16 2016-12-08 トムソン ライセンシングThomson Licensing 複数のユーザコメントを検索してコンテンツにオーバーレイすることによるビデオのブラウジング
CN104461335A (zh) * 2013-09-25 2015-03-25 联想(北京)有限公司 一种数据处理方法及电子设备
US10820293B2 (en) * 2013-10-10 2020-10-27 Aura Home, Inc. Digital picture frame with improved display of community photographs
US20200089702A1 (en) 2013-10-10 2020-03-19 Pushd, Inc. Digital picture frames and methods of photo sharing
US10824666B2 (en) * 2013-10-10 2020-11-03 Aura Home, Inc. Automated routing and display of community photographs in digital picture frames
US20150135137A1 (en) * 2013-11-12 2015-05-14 Microsoft Corporation User Experience for Processing and Cropping Images
EP3069502B1 (en) 2013-11-14 2022-08-24 Microsoft Technology Licensing, LLC Image processing for productivity applications
CN103714349B (zh) * 2014-01-09 2017-01-25 成都淞幸科技有限责任公司 一种基于颜色和纹理特征的图像识别方法
KR20150086646A (ko) * 2014-01-20 2015-07-29 삼성전자주식회사 프리뷰 이미지를 제공하는 화상형성장치, 그 프리뷰 이미지를 디스플레이하는 디스플레이 장치 및 그 방법들
KR102056193B1 (ko) * 2014-01-22 2019-12-16 엘지전자 주식회사 이동 단말기 및 그 제어 방법
WO2015123792A1 (en) 2014-02-19 2015-08-27 Qualcomm Incorporated Image editing techniques for a device
JP5835383B2 (ja) 2014-03-18 2015-12-24 株式会社リコー 情報処理方法、情報処理装置、およびプログラム
JP5835384B2 (ja) * 2014-03-18 2015-12-24 株式会社リコー 情報処理方法、情報処理装置、およびプログラム
US20150277550A1 (en) * 2014-04-01 2015-10-01 Moju Labs, Inc. Face-Centered Motion-Based Content Navigation
US20150286349A1 (en) * 2014-04-02 2015-10-08 Microsoft Corporation Transient user interface elements
TWI560627B (en) * 2014-05-09 2016-12-01 Happy Ray Co Ltd Method and system for matching graphics
US20190244276A1 (en) * 2014-05-09 2019-08-08 Happy Ray Co. Ltd. Method and System for Matching Graphics
US9811933B2 (en) 2014-06-20 2017-11-07 Google Inc. Image editing using selective editing tools
US9619120B1 (en) * 2014-06-30 2017-04-11 Google Inc. Picture-in-picture for operating systems
US10216809B1 (en) * 2014-07-07 2019-02-26 Microstrategy Incorporated Mobile explorer
US10074013B2 (en) 2014-07-23 2018-09-11 Gopro, Inc. Scene and activity identification in video summary generation
US9685194B2 (en) 2014-07-23 2017-06-20 Gopro, Inc. Voice-based video tagging
KR102373460B1 (ko) 2014-09-15 2022-03-11 삼성전자주식회사 디바이스에 객체를 표시하는 방법 및 그 디바이스
TWI554106B (zh) * 2014-09-25 2016-10-11 聚晶半導體股份有限公司 產生影像散景效果的方法及影像擷取裝置
US9710156B2 (en) * 2014-09-25 2017-07-18 Disney Enterprises, Inc. Three-dimensional object sculpting and deformation on a mobile device
US20160093272A1 (en) 2014-09-29 2016-03-31 Brother Kogyo Kabushiki Kaisha Information processing device and non-transitory storage medium storing instructions executable by the information processing device
CN104375797B (zh) * 2014-11-17 2020-02-21 联想(北京)有限公司 一种信息处理方法及电子设备
CN104574483A (zh) * 2014-12-31 2015-04-29 北京奇虎科技有限公司 一种生成可定制动态图的方法和装置
CN104574484B (zh) * 2014-12-31 2016-10-05 北京奇虎科技有限公司 一种基于交互操作产生图片动态效果的方法和装置
US9734870B2 (en) 2015-01-05 2017-08-15 Gopro, Inc. Media identifier generation for camera-captured media
US20160259488A1 (en) 2015-03-06 2016-09-08 Alibaba Group Holding Limited Navigation user interface for compact mobile devices
US9857888B2 (en) * 2015-03-17 2018-01-02 Behr Process Corporation Paint your place application for optimizing digital painting of an image
KR101726844B1 (ko) * 2015-03-25 2017-04-13 네이버 주식회사 만화 데이터 생성 시스템 및 방법
US20160299667A1 (en) * 2015-04-12 2016-10-13 Robert Joe Alexander Image manipulation system
US10474310B2 (en) * 2015-04-27 2019-11-12 Adobe Inc. Non-modal toolbar control
CN104935787A (zh) * 2015-05-29 2015-09-23 努比亚技术有限公司 图像处理方法及装置
CN104866755B (zh) * 2015-06-11 2018-03-30 北京金山安全软件有限公司 应用程序解锁界面背景图片的设置方法、装置及电子设备
CN104866323B (zh) * 2015-06-11 2018-03-30 北京金山安全软件有限公司 一种解锁界面的生成方法、装置及电子设备
US9916861B2 (en) 2015-06-17 2018-03-13 International Business Machines Corporation Editing media on a mobile device before transmission
US9990117B2 (en) * 2015-08-04 2018-06-05 Lenovo (Singapore) Pte. Ltd. Zooming and panning within a user interface
US10003938B2 (en) 2015-08-14 2018-06-19 Apple Inc. Easy location sharing
TWI576788B (zh) * 2015-09-14 2017-04-01 華碩電腦股份有限公司 影像處理方法、非暫態電腦可讀取記錄媒體及電子裝置
US9799103B2 (en) 2015-09-14 2017-10-24 Asustek Computer Inc. Image processing method, non-transitory computer-readable storage medium and electrical device
US9552626B1 (en) * 2015-10-07 2017-01-24 Adobe Systems Incorporated Digital image blemish removal
CN105303513A (zh) * 2015-10-12 2016-02-03 无锡还有网络科技有限公司 一种图片编辑系统
US9639560B1 (en) 2015-10-22 2017-05-02 Gopro, Inc. Systems and methods that effectuate transmission of workflow between computing platforms
US9830717B2 (en) * 2015-11-05 2017-11-28 Adobe Systems Incorporated Non-destructive automatic face-aware vignettes
JP6202082B2 (ja) 2015-12-22 2017-09-27 ダイキン工業株式会社 設定値変更装置
US10430051B2 (en) * 2015-12-29 2019-10-01 Facebook, Inc. Multi-user content presentation system
US10078644B1 (en) 2016-01-19 2018-09-18 Gopro, Inc. Apparatus and methods for manipulating multicamera content using content proxy
US9787862B1 (en) 2016-01-19 2017-10-10 Gopro, Inc. Apparatus and methods for generating content proxy
US9871994B1 (en) 2016-01-19 2018-01-16 Gopro, Inc. Apparatus and methods for providing content context using session metadata
US10386931B2 (en) 2016-01-27 2019-08-20 Lenovo (Singapore) Pte. Ltd. Toggling between presentation and non-presentation of representations of input
US10129464B1 (en) 2016-02-18 2018-11-13 Gopro, Inc. User interface for creating composite images
US9972066B1 (en) 2016-03-16 2018-05-15 Gopro, Inc. Systems and methods for providing variable image projection for spherical visual content
US10324599B2 (en) * 2016-03-30 2019-06-18 Microsoft Technology Licensing, Llc Assistive move handle for object interaction
US10402938B1 (en) 2016-03-31 2019-09-03 Gopro, Inc. Systems and methods for modifying image distortion (curvature) for viewing distance in post capture
US9838730B1 (en) 2016-04-07 2017-12-05 Gopro, Inc. Systems and methods for audio track selection in video editing
US10229719B1 (en) 2016-05-09 2019-03-12 Gopro, Inc. Systems and methods for generating highlights for a video
CN105955756A (zh) * 2016-05-18 2016-09-21 广州视睿电子科技有限公司 图像擦除方法和系统
US9953679B1 (en) 2016-05-24 2018-04-24 Gopro, Inc. Systems and methods for generating a time lapse video
JP6201004B1 (ja) * 2016-06-01 2017-09-20 株式会社ゲオインタラクティブ ユーザインターフェースプログラム
DK179329B1 (en) 2016-06-12 2018-05-07 Apple Inc Handwriting keyboard for monitors
US9922682B1 (en) 2016-06-15 2018-03-20 Gopro, Inc. Systems and methods for organizing video files
US9967515B1 (en) 2016-06-15 2018-05-08 Gopro, Inc. Systems and methods for bidirectional speed ramping
US20170364248A1 (en) * 2016-06-16 2017-12-21 Microsoft Technology Licensing, Llc Segment eraser
US10045120B2 (en) 2016-06-20 2018-08-07 Gopro, Inc. Associating audio with three-dimensional objects in videos
GB201611152D0 (en) * 2016-06-27 2016-08-10 Moletest Ltd Image processing
US10395119B1 (en) 2016-08-10 2019-08-27 Gopro, Inc. Systems and methods for determining activities performed during video capture
US9953224B1 (en) 2016-08-23 2018-04-24 Gopro, Inc. Systems and methods for generating a video summary
US10282632B1 (en) 2016-09-21 2019-05-07 Gopro, Inc. Systems and methods for determining a sample frame order for analyzing a video
US10268898B1 (en) 2016-09-21 2019-04-23 Gopro, Inc. Systems and methods for determining a sample frame order for analyzing a video via segments
JP6181833B1 (ja) * 2016-09-29 2017-08-16 株式会社ゲオインタラクティブ 画像表示装置及び画像表示用プログラム
US10397415B1 (en) 2016-09-30 2019-08-27 Gopro, Inc. Systems and methods for automatically transferring audiovisual content
US10044972B1 (en) 2016-09-30 2018-08-07 Gopro, Inc. Systems and methods for automatically transferring audiovisual content
US11106988B2 (en) 2016-10-06 2021-08-31 Gopro, Inc. Systems and methods for determining predicted risk for a flight path of an unmanned aerial vehicle
US10002641B1 (en) 2016-10-17 2018-06-19 Gopro, Inc. Systems and methods for determining highlight segment sets
KR102575910B1 (ko) 2016-10-28 2023-09-08 삼성전자주식회사 가이드를 출력하는 전자 장치 및 방법
US10776887B2 (en) 2017-02-07 2020-09-15 Enseo, Inc. System and method for making reservations in a hospitality establishment
US9916863B1 (en) 2017-02-24 2018-03-13 Gopro, Inc. Systems and methods for editing videos based on shakiness measures
US10339443B1 (en) 2017-02-24 2019-07-02 Gopro, Inc. Systems and methods for processing convolutional neural network operations using textures
US10360663B1 (en) 2017-04-07 2019-07-23 Gopro, Inc. Systems and methods to create a dynamic blur effect in visual content
US10586401B2 (en) * 2017-05-02 2020-03-10 Pixar Sculpting brushes based on solutions of elasticity
US10395122B1 (en) 2017-05-12 2019-08-27 Gopro, Inc. Systems and methods for identifying moments in videos
CN108874118A (zh) * 2017-05-12 2018-11-23 翔升(上海)电子技术有限公司 一种在vr设备中处理图像的方法和装置
EP3625615A1 (en) 2017-05-19 2020-03-25 Dqpn, Llc Diet mapping processes and systems to optimize diet quality and/or minimize environmental impact
CN110770685B (zh) * 2017-06-20 2023-07-07 三菱电机株式会社 触摸输入判定装置、触摸面板输入装置、触摸输入判定方法和记录介质
US10402698B1 (en) 2017-07-10 2019-09-03 Gopro, Inc. Systems and methods for identifying interesting moments within videos
US10614114B1 (en) 2017-07-10 2020-04-07 Gopro, Inc. Systems and methods for creating compilations based on hierarchical clustering
JP2017224330A (ja) * 2017-08-08 2017-12-21 株式会社リコー 装置、方法、およびプログラム
US10405010B2 (en) * 2017-10-05 2019-09-03 Sling Media Pvt Ltd Methods, systems, and devices for adjusting streaming video field-of-view in accordance with client device commands
US11223744B2 (en) * 2017-10-17 2022-01-11 Adobe Inc. Local color range selection
US11132823B2 (en) * 2017-11-17 2021-09-28 Ntt Docomo, Inc. Information-processing device and information-processing method
CN107885440B (zh) * 2017-12-04 2021-04-30 上海联影医疗科技股份有限公司 医学图像显示方法、装置及计算机可读存储介质
USD914734S1 (en) * 2018-02-05 2021-03-30 St Engineering Land Systems Ltd Display screen or portion thereof with graphical user interface
US10402672B1 (en) 2018-02-23 2019-09-03 ExoAnalytic Solutions, Inc. Systems and synchronized visualization interfaces for tracking space objects
US10467783B2 (en) 2018-02-23 2019-11-05 ExoAnalytic Solutions, Inc. Visualization interfaces for real-time identification, tracking, and prediction of space objects
DK180171B1 (en) 2018-05-07 2020-07-14 Apple Inc USER INTERFACES FOR SHARING CONTEXTUALLY RELEVANT MEDIA CONTENT
CN108897826B (zh) * 2018-06-22 2021-09-14 上海哔哩哔哩科技有限公司 横幅图片快速生成方法、系统及存储介质
EP3598428A1 (en) * 2018-07-17 2020-01-22 Thomson Licensing Device and method for image display
CN112384127B (zh) * 2018-07-27 2023-11-10 高雄医学大学 眼睑下垂检测方法及系统
WO2020027813A1 (en) * 2018-07-31 2020-02-06 Hewlett-Packard Development Company, L.P. Cropping portions of images
US10796690B2 (en) * 2018-08-22 2020-10-06 Adobe Inc. Digital media environment for conversational image editing and enhancement
WO2020132478A1 (en) * 2018-12-20 2020-06-25 Dqpn, Llc Diet quality fingerprinting
USD949162S1 (en) * 2019-02-18 2022-04-19 Samsung Electronics Co., Ltd. Display screen or portion thereof with transitional graphical user interface
US11436776B2 (en) * 2019-03-15 2022-09-06 Canon Kabushiki Kaisha Information processing apparatus and control method thereof
US11074408B2 (en) 2019-06-01 2021-07-27 Apple Inc. Mail application features
US11194467B2 (en) * 2019-06-01 2021-12-07 Apple Inc. Keyboard management user interfaces
US11269952B1 (en) 2019-07-08 2022-03-08 Meta Platforms, Inc. Text to music selection system
AU2020319085B2 (en) 2019-07-25 2024-04-18 ExoAnalytic Solutions, Inc. Systems and visualization interfaces for orbital paths and path parameters of space objects
JP7273653B2 (ja) * 2019-08-08 2023-05-15 株式会社東芝 レーダ装置、及び信号処理方法
US11983312B2 (en) 2019-08-09 2024-05-14 Nec Corporation Information processing system, information processing method, and storage medium
US11210339B1 (en) 2019-08-29 2021-12-28 Facebook, Inc. Transient contextual music streaming
US10911504B1 (en) 2019-08-29 2021-02-02 Facebook, Inc. Social media music streaming
JP7256719B2 (ja) * 2019-09-13 2023-04-12 富士フイルム株式会社 画像処理装置、撮影装置、画像処理方法、及び画像処理プログラム
US11775581B1 (en) 2019-09-18 2023-10-03 Meta Platforms, Inc. Systems and methods for feature-based music selection
CN112533021B (zh) * 2019-09-19 2023-04-11 Vidaa(荷兰)国际控股有限公司 一种显示方法及显示设备
USD941324S1 (en) * 2019-09-25 2022-01-18 Facebook, Inc. Display screen with a graphical user interface for music fetching
US11416544B2 (en) 2019-09-25 2022-08-16 Meta Platforms, Inc. Systems and methods for digitally fetching music content
USD941325S1 (en) 2019-09-25 2022-01-18 Facebook, Inc. Display screen with a graphical user interface for music fetching
KR102170991B1 (ko) * 2019-11-14 2020-10-28 주식회사 헬스케어뱅크 개체에 대한 관찰정보의 입력 및 공유 서비스를 제공하기 위한 방법, 및 컴퓨터 판독 가능한 저장 매체
US11082769B2 (en) * 2019-11-15 2021-08-03 Bose Corporation Audio visualization in telecommunications applications
CN111352557B (zh) * 2020-02-24 2021-09-14 北京字节跳动网络技术有限公司 一种图像处理方法、组件、电子设备及存储介质
WO2021184366A1 (zh) * 2020-03-20 2021-09-23 西安诺瓦星云科技股份有限公司 屏幕显示的控制方法、装置和系统
US11481941B2 (en) * 2020-08-03 2022-10-25 Google Llc Display responsive communication system and method
CN112036310A (zh) * 2020-08-31 2020-12-04 北京字节跳动网络技术有限公司 一种图片处理方法、装置、设备及存储介质
US11694376B2 (en) * 2020-10-19 2023-07-04 Adobe Inc. Intuitive 3D transformations for 2D graphics
CN112434498B (zh) * 2020-12-10 2021-12-17 清研灵智信息咨询(北京)有限公司 一种基于云平台的智能表单构建方法
CN112632422B (zh) * 2020-12-29 2024-02-02 中国平安财产保险股份有限公司 智能裁图方法、装置、电子设备及存储介质
US11955144B2 (en) * 2020-12-29 2024-04-09 Snap Inc. Video creation and editing and associated user interface
US11631202B2 (en) * 2021-01-08 2023-04-18 Samsung Electronics Co., Ltd. System and method for obtaining and applying a vignette filter and grain layer
US11741918B1 (en) 2021-02-22 2023-08-29 Apple Inc. Display with a vignetting mask
US11893221B2 (en) * 2022-01-10 2024-02-06 Lemon Inc. Texture shader generation
WO2023162237A1 (ja) 2022-02-28 2023-08-31 京セラ株式会社 画像処理装置、制御方法、及び制御プログラム

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011120143A (ja) * 2009-12-07 2011-06-16 Ricoh Co Ltd 撮像装置および撮像方法
JP2011135438A (ja) * 2009-12-25 2011-07-07 Casio Computer Co Ltd 画像合成装置、画像合成方法及びプログラム
JP2011166302A (ja) * 2010-02-05 2011-08-25 Canon Inc 撮像装置及び画像処理方法
JP2011239267A (ja) * 2010-05-12 2011-11-24 Ricoh Co Ltd 撮像装置及び画像処理装置

Family Cites Families (419)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5287448A (en) 1989-05-04 1994-02-15 Apple Computer, Inc. Method and apparatus for providing help information to users of computers
DE4418782C2 (de) 1993-05-21 1997-01-09 Mitsubishi Electric Corp System und Verfahren zum Einstellen eines Farbbildes
US5491782A (en) 1993-06-29 1996-02-13 International Business Machines Corporation Method and apparatus for loosely ganging sliders on a user interface of a data processing system
US6201539B1 (en) 1994-01-04 2001-03-13 International Business Machines Corporation Method and system for customizing a data processing system graphical user interface
EP0693738A3 (en) 1994-06-23 1996-11-06 Dainippon Screen Mfg Device and method for producing colored masks
JP3382359B2 (ja) 1994-07-22 2003-03-04 キヤノン株式会社 撮像装置
US5517335A (en) 1994-10-11 1996-05-14 Seiko Epson Corporation Apparatus and method for enhancing color saturation in halftoned images
US5774112A (en) 1994-10-25 1998-06-30 International Business Machines Corporation Method and apparatus for tone correction of a digital color image with preservation of the chromaticity of the image
US5615347A (en) 1995-05-05 1997-03-25 Apple Computer, Inc. Method and apparatus for linking images of sliders on a computer display
JP3192066B2 (ja) 1995-09-08 2001-07-23 富士ゼロックス株式会社 作図方法および作図装置
US7124359B2 (en) 1996-01-11 2006-10-17 Canon Kabushiki Kaisha Image edit device adapted to rapidly lay-out photographs into templates with means for preview and correction by user
US5915250A (en) 1996-03-29 1999-06-22 Virage, Inc. Threshold-based comparison
EP0907947A4 (en) 1996-06-24 1999-10-20 Koevering Company Van MUSIC INSTRUMENT SYSTEM
US5808610A (en) 1996-08-28 1998-09-15 Macromedia, Inc. Method and system of docking panels
US20060020894A1 (en) 1996-12-06 2006-01-26 Nikon Corporation Information processing apparatus
US5901245A (en) 1997-01-23 1999-05-04 Eastman Kodak Company Method and system for detection and characterization of open space in digital images
JP4194644B2 (ja) 1997-02-19 2008-12-10 キヤノン株式会社 画像編集装置、画像編集方法、及び記録媒体
US5999190A (en) 1997-04-04 1999-12-07 Avid Technology, Inc. Computer imaging using graphics components
US6118480A (en) 1997-05-05 2000-09-12 Flashpoint Technology, Inc. Method and apparatus for integrating a digital camera user interface across multiple operating modes
US6009209A (en) * 1997-06-27 1999-12-28 Microsoft Corporation Automated removal of red eye effect from a digital image
US5877766A (en) 1997-08-15 1999-03-02 International Business Machines Corporation Multi-node user interface component and method thereof for use in accessing a plurality of linked records
US5977972A (en) 1997-08-15 1999-11-02 International Business Machines Corporation User interface component and method of navigating across a boundary coupled to a scroll bar display element
US6035323A (en) 1997-10-24 2000-03-07 Pictra, Inc. Methods and apparatuses for distributing a collection of digital media over a network with automatic generation of presentable media
US5995101A (en) 1997-10-29 1999-11-30 Adobe Systems Incorporated Multi-level tool tip
JPH11136568A (ja) 1997-10-31 1999-05-21 Fuji Photo Film Co Ltd タッチパネル操作式カメラ
US6058428A (en) 1997-12-05 2000-05-02 Pictra, Inc. Method and apparatus for transferring digital images on a network
US6351557B1 (en) 1998-04-03 2002-02-26 Avid Technology, Inc. Method and apparatus for color manipulation
US6281872B1 (en) * 1998-04-09 2001-08-28 Hewlett-Packard Company Rotation of an image implementing an independent mirror attribute
EP0949805A3 (en) 1998-04-10 2001-01-10 Fuji Photo Film Co., Ltd. Electronic album producing and viewing system and method
US6348936B1 (en) 1998-05-28 2002-02-19 Sun Microsystems, Inc. Method and apparatus for graphical selection of data
US6542171B1 (en) 1998-07-08 2003-04-01 Nippon Telegraph Amd Telephone Corporation Scheme for graphical user interface using polygonal-shaped slider
US6463432B1 (en) 1998-08-03 2002-10-08 Minolta Co., Ltd. Apparatus for and method of retrieving images
JP2000076271A (ja) 1998-08-31 2000-03-14 Sony Corp 情報処理装置および方法、並びに提供媒体
US6118385A (en) 1998-09-09 2000-09-12 Honeywell Inc. Methods and apparatus for an improved control parameter value indicator
EP0989739B1 (en) 1998-09-24 2006-01-11 Sharp Kabushiki Kaisha Method and apparatus for image quality adjustment
US6337698B1 (en) 1998-11-20 2002-01-08 Microsoft Corporation Pen-based interface for a notepad computer
US6512850B2 (en) 1998-12-09 2003-01-28 International Business Machines Corporation Method of and apparatus for identifying subsets of interrelated image objects from a set of image objects
US6438264B1 (en) 1998-12-31 2002-08-20 Eastman Kodak Company Method for compensating image color when adjusting the contrast of a digital color image
EP1024444B1 (en) 1999-01-28 2008-09-10 Kabushiki Kaisha Toshiba Image information describing method, video retrieval method, video reproducing method, and video reproducing apparatus
US6373979B1 (en) 1999-01-29 2002-04-16 Lg Electronics, Inc. System and method for determining a level of similarity among more than one image and a segmented data structure for enabling such determination
US7304753B1 (en) 1999-03-11 2007-12-04 Electronics For Imaging, Inc. Systems for print job monitoring
US6238217B1 (en) 1999-05-17 2001-05-29 Cec Entertainment, Inc. Video coloring book
US6636648B2 (en) 1999-07-02 2003-10-21 Eastman Kodak Company Albuming method with automatic page layout
JP3264273B2 (ja) 1999-09-22 2002-03-11 日本電気株式会社 自動色補正装置及び自動色補正方法並びにその制御プログラムを記録した記録媒体
US6870547B1 (en) 1999-12-16 2005-03-22 Eastman Kodak Company Method and apparatus for rendering a low-resolution thumbnail image suitable for a low resolution display having a reference back to an original digital negative and an edit list of operations
US6850259B1 (en) 2000-01-19 2005-02-01 Xerox Corporation Systems and methods for providing original document orientation, tone reproduction curves and task specific user instructions based on displayed portions of a graphical user interface
US6686953B1 (en) 2000-03-01 2004-02-03 Joseph Holmes Visual calibration target set method
GB2363018B (en) 2000-04-07 2004-08-18 Discreet Logic Inc Processing image data
GB2363021B (en) 2000-04-07 2004-03-03 Discreet Logic Inc Processing image data
US20020040375A1 (en) 2000-04-27 2002-04-04 Simon Richard A. Method of organizing digital images on a page
JP2002010196A (ja) 2000-06-26 2002-01-11 Sanyo Electric Co Ltd 電子アルバム装置
JP2002027260A (ja) 2000-07-12 2002-01-25 Riso Kagaku Corp カラー画像のグレー変換方法および装置
US7092122B2 (en) 2000-07-18 2006-08-15 Fuji Photo Film Co., Ltd. Image processing device and method
US7298520B2 (en) 2000-08-17 2007-11-20 Dai Nippon Printing Co., Ltd. Image printing system
US6922816B1 (en) 2000-08-24 2005-07-26 International Business Machines Corporation Method and system for adjusting settings with slider controls having variable sensitivity
US7830399B2 (en) 2000-10-04 2010-11-09 Shutterfly, Inc. System and method for manipulating digital images
US7576752B1 (en) 2000-10-04 2009-08-18 Shutterfly Inc. System and method for manipulating digital images
US7559034B1 (en) 2000-10-19 2009-07-07 DG FastChannel, Inc. Method and system for using a hyperlink, banner, or graphical icon to initiate the overlaying of an object on a window
US6816174B2 (en) 2000-12-18 2004-11-09 International Business Machines Corporation Method and apparatus for variable density scroll area
WO2002054762A1 (fr) 2000-12-28 2002-07-11 Sony Corporation Procédé et dispositif de création de contenus
JP4666274B2 (ja) 2001-02-20 2011-04-06 日本電気株式会社 カラー画像処理装置及びその方法
JP4696407B2 (ja) 2001-06-20 2011-06-08 株式会社ニコン 商品推奨システムおよび商品推奨方法
US7006688B2 (en) 2001-07-05 2006-02-28 Corel Corporation Histogram adjustment features for use in imaging technologies
KR20030005908A (ko) 2001-07-10 2003-01-23 주식회사 오픈비주얼 영상의 객체 특징 추출과 이를 이용한 내용 기반 영상검색 장치 및 방법
US7079707B2 (en) * 2001-07-20 2006-07-18 Hewlett-Packard Development Company, L.P. System and method for horizon correction within images
US6792160B2 (en) 2001-07-27 2004-09-14 Hewlett-Packard Development Company, L.P. General purpose image enhancement algorithm which augments the visual perception of detail in digital images
US6724435B2 (en) 2001-08-06 2004-04-20 Oplus Technologies Ltd. Method for independently controlling hue or saturation of individual colors in a real time digital video image
US6999068B2 (en) 2001-08-21 2006-02-14 Hewlett-Packard Development Company, L.P. System and method for enabling users to edit graphical images
JP3646931B2 (ja) 2001-08-29 2005-05-11 セイコーエプソン株式会社 イメージレタッチプログラム
US6758403B1 (en) 2001-09-11 2004-07-06 Psc Scanning, Inc. System for editing data collection device message data
US7602991B2 (en) 2001-10-24 2009-10-13 Nik Software, Inc. User definable image reference regions
JP2005527880A (ja) * 2001-10-24 2005-09-15 ニック マルチメディア インク ユーザ定義可能な画像参照ポイント
US6842541B2 (en) 2001-10-31 2005-01-11 Xerox Corporation Adaptive color super resolution thresholding
US7215813B2 (en) 2001-12-03 2007-05-08 Apple Computer, Inc. Method and apparatus for color correction
US6883143B2 (en) 2001-12-18 2005-04-19 Stanley W. Driskell Computer interface toolbar for acquiring most frequently accessed options using short cursor traverses
KR100453038B1 (ko) 2001-12-24 2004-10-15 삼성전자주식회사 컬러 영상의 채도 조절 장치 및 방법
EP1762949A3 (en) 2001-12-26 2007-08-08 Eastman Kodak Company Digital imaging method using importance rating
US7085604B2 (en) 2001-12-28 2006-08-01 Medtronic, Inc. Mechanical metaphor for representing parameter constraints graphically for medical devices
US7289132B1 (en) 2003-12-19 2007-10-30 Apple Inc. Method and apparatus for image acquisition, organization, manipulation, and publication
US20030156752A1 (en) 2002-02-12 2003-08-21 Turpin Kenneth A. Color imaging and format system and methods of making and using same
JP4064684B2 (ja) 2002-02-18 2008-03-19 セイコーインスツル株式会社 時刻監査システム及び時刻監査方法
JP4235393B2 (ja) 2002-03-11 2009-03-11 富士フイルム株式会社 インデックス画像表示制御装置
US7148990B2 (en) 2002-08-15 2006-12-12 Hewlett-Packard Development Company, L.P. System and method for producing a photobook
US7558835B1 (en) 2002-08-19 2009-07-07 Juniper Networks, Inc. Application of a configuration patch to a network device
US7027836B2 (en) 2002-09-10 2006-04-11 Eastman Kodak Company Method and system for establishing a communication network
US7502033B1 (en) 2002-09-30 2009-03-10 Dale Axelrod Artists' color display system
US20090138825A1 (en) 2002-09-30 2009-05-28 Matias Duarte Image navigation apparatus and method
US7366307B2 (en) 2002-10-11 2008-04-29 Micro Ear Technology, Inc. Programmable interface for fitting hearing devices
US7184056B2 (en) 2002-11-20 2007-02-27 Apple Computer, Inc. Method and apparatus for user customized shading of a graphical user interface
US7663605B2 (en) 2003-01-08 2010-02-16 Autodesk, Inc. Biomechanical user interface elements for pen-based computers
US20040165012A1 (en) 2003-02-20 2004-08-26 International Business Machines Corp. Cascading menu with selectable offset
US7039222B2 (en) 2003-02-28 2006-05-02 Eastman Kodak Company Method and system for enhancing portrait images that are processed in a batch mode
JP4079087B2 (ja) 2003-03-12 2008-04-23 セイコーエプソン株式会社 レイアウトシステム
JP4145805B2 (ja) 2003-03-17 2008-09-03 セイコーエプソン株式会社 テンプレート生成システム、レイアウトシステム、テンプレート生成プログラム、レイアウトプログラムおよびテンプレート生成方法並びにレイアウト方法
US7363053B2 (en) 2003-03-28 2008-04-22 Lockheed Martin Corproation System for integrated mobile devices
JP2004312139A (ja) 2003-04-03 2004-11-04 Canon Inc 撮像装置
US7369164B2 (en) 2003-04-11 2008-05-06 Eastman Kodak Company Using favorite digital images to organize and identify electronic albums
US20040205286A1 (en) 2003-04-11 2004-10-14 Bryant Steven M. Grouping digital images using a digital camera
JP2004334337A (ja) 2003-04-30 2004-11-25 Canon Inc 画像処理装置
US20040223004A1 (en) 2003-05-05 2004-11-11 Lincke Scott D. System and method for implementing a landscape user experience in a hand-held computing device
US7272444B2 (en) 2003-05-07 2007-09-18 Cardiac Pacemakers, Inc. Medical device interface system with automatic rate threshold adjustment
US8498452B2 (en) 2003-06-26 2013-07-30 DigitalOptics Corporation Europe Limited Digital image processing using face detection information
US8948468B2 (en) 2003-06-26 2015-02-03 Fotonation Limited Modification of viewing parameters for digital images using face detection information
KR100839772B1 (ko) * 2003-07-15 2008-06-20 오므론 가부시키가이샤 대상 결정 장치 및 촬상 장치
US20050034083A1 (en) 2003-08-05 2005-02-10 Denny Jaeger Intuitive graphic user interface with universal tools
US7408673B1 (en) 2003-08-21 2008-08-05 Adobe Systems Incorporated Mixed color groups
DE10342594B4 (de) 2003-09-15 2005-09-15 Océ Document Technologies GmbH Verfahren und System zum Erfassen von Daten aus mehreren maschinell lesbaren Dokumenten
US7133051B2 (en) 2003-09-19 2006-11-07 Microsoft Corporation Full scale video with overlaid graphical user interface and scaled image
US20050068583A1 (en) 2003-09-30 2005-03-31 Gutkowski Lawrence J. Organizing a digital image
US7188310B2 (en) 2003-10-09 2007-03-06 Hewlett-Packard Development Company, L.P. Automatic layout generation for photobooks
US20050262451A1 (en) 2003-10-09 2005-11-24 Jesse Remignanti Graphical user interface for changing parameters
US7623722B2 (en) 2003-10-24 2009-11-24 Eastman Kodak Company Animated display for image manipulation and correction of digital image
US7302650B1 (en) 2003-10-31 2007-11-27 Microsoft Corporation Intuitive tools for manipulating objects in a display
US20050094014A1 (en) 2003-11-03 2005-05-05 Haas William R. Slider bar interface for digital camera
GB2409789A (en) 2003-12-30 2005-07-06 Nokia Corp Interconnection of short range networks via cellular links
US7564994B1 (en) 2004-01-22 2009-07-21 Fotonation Vision Limited Classification system for consumer digital images using automatic workflow and face detection and recognition
US7702728B2 (en) 2004-01-30 2010-04-20 Microsoft Corporation Mobile shared group interaction
US7382915B2 (en) 2004-03-16 2008-06-03 Xerox Corporation Color to grayscale conversion method and apparatus
US20050212824A1 (en) 2004-03-25 2005-09-29 Marcinkiewicz Walter M Dynamic display control of a portable electronic device display
US7932909B2 (en) 2004-04-16 2011-04-26 Apple Inc. User interface for controlling three-dimensional animation of an object
US20050276573A1 (en) 2004-05-28 2005-12-15 Abbate Jeffrey A Method and apparatus to edit a media file
US7346846B2 (en) 2004-05-28 2008-03-18 Microsoft Corporation Strategies for providing just-in-time user assistance
JP2006003603A (ja) 2004-06-17 2006-01-05 Olympus Corp 画像表示プログラム、画像表示方法、画像表示装置及び記録媒体
US7602993B2 (en) 2004-06-17 2009-10-13 Olympus Corporation Image processing and display using a plurality of user movable viewer areas
US7758425B2 (en) 2004-06-21 2010-07-20 Weike (S) Ptd Ltd Virtual card gaming system
US8046712B2 (en) 2004-06-29 2011-10-25 Acd Systems International Inc. Management of multiple window panels with a graphical user interface
US7656847B2 (en) 2004-06-29 2010-02-02 Nokia Corporation Method and apparatus for utilizing bluetooth for WLAN service authentication and discovery
US7886024B2 (en) 2004-07-01 2011-02-08 Microsoft Corporation Sharing media objects in a network
US20060022953A1 (en) 2004-07-30 2006-02-02 Nokia Corporation Left-hand originated user interface control for a device
EP1784712A4 (en) 2004-08-05 2008-11-26 Disney Entpr Inc COMMON USER INTERFACE FOR MEDIA ACCESS
JP4684595B2 (ja) 2004-08-05 2011-05-18 ソニー株式会社 画像表示装置
US8146016B2 (en) 2004-08-16 2012-03-27 Microsoft Corporation User interface for displaying a gallery of formatting options applicable to a selected object
US8117542B2 (en) 2004-08-16 2012-02-14 Microsoft Corporation User interface for displaying selectable software functionality controls that are contextually relevant to a selected object
US20060053374A1 (en) 2004-09-07 2006-03-09 Adobe Systems Incorporated Localization of activity with respect to digital data
US7561157B2 (en) 2004-10-06 2009-07-14 Apple Inc. Compare mode for variable number of images
US20070094597A1 (en) 2004-11-04 2007-04-26 Rostom Mohamed A Dynamic graphical user interface for a desktop environment
US20060095865A1 (en) 2004-11-04 2006-05-04 Rostom Mohamed A Dynamic graphical user interface for a desktop environment
US20060109517A1 (en) 2004-11-23 2006-05-25 Rodrigo Catalan Personal photo book creation kit
US7593603B1 (en) 2004-11-30 2009-09-22 Adobe Systems Incorporated Multi-behavior image correction tool
US7489305B2 (en) 2004-12-01 2009-02-10 Thermoteknix Systems Limited Touch screen control
US8024658B1 (en) 2005-01-09 2011-09-20 Apple Inc. Application for designing photo albums
CN101107625B (zh) 2005-02-17 2010-05-12 富士通株式会社 图像处理方法、图像处理系统、摄像装置及图像处理装置
KR100609923B1 (ko) 2005-03-08 2006-08-08 삼성전자주식회사 디스플레이장치
US7242409B2 (en) 2005-04-08 2007-07-10 Microsoft Corporation Interpolated color transform for changing color of an application user interface
US7849116B2 (en) 2005-05-23 2010-12-07 Picateer, Inc. System and method for automated layout of collaboratively selected images
US7770148B2 (en) 2005-05-25 2010-08-03 Microsoft Corporation Methods and apparatus enabling diagram customization retention
JP2006338377A (ja) 2005-06-02 2006-12-14 Fujifilm Holdings Corp 画像補正方法および装置並びにプログラム
US20060284895A1 (en) 2005-06-15 2006-12-21 Marcu Gabriel G Dynamic gamma correction
US7864347B2 (en) 2005-06-27 2011-01-04 Xerox Corporation Systems and methods that provide custom region scan with preview image on a multifunction device
US7831054B2 (en) 2005-06-28 2010-11-09 Microsoft Corporation Volume control
KR20070010589A (ko) * 2005-07-19 2007-01-24 엘지전자 주식회사 턴테이블이 구비되는 이동통신 단말기 및 그 동작방법
JP2007065809A (ja) 2005-08-30 2007-03-15 Sony Corp ヘルプガイダンス表示方法、ヘルプガイダンス表示装置、情報処理装置、プリントキオスク装置及びプログラム
US9081470B2 (en) 2005-09-08 2015-07-14 Microsoft Technology Licensing, Llc Single action selection of data elements
JP2007080074A (ja) 2005-09-15 2007-03-29 Seiko Epson Corp 画像表示装置、画像表示方法、および、プログラム
CA2622479C (en) 2005-09-15 2018-03-06 Fringland Ltd. Incorporating a mobile device into a peer-to-peer network
US7321372B2 (en) 2005-09-19 2008-01-22 Lexmark International, Inc. Method for performing image editing
US8103094B2 (en) 2005-09-22 2012-01-24 Adobe Systems Incorporated Color correction based on skin color
JP2007115180A (ja) 2005-10-24 2007-05-10 Sony Corp 情報処理装置、情報表示方法および情報表示プログラム
WO2007145654A1 (en) 2005-10-28 2007-12-21 Aepx Animation, Inc. Automatic compositing of 3d objects in a still frame or series of frames and detection and manipulation of shadows in an image or series of images
US7873917B2 (en) 2005-11-11 2011-01-18 Apple Inc. Locking relationships among parameters in computer programs
US7689933B1 (en) 2005-11-14 2010-03-30 Adobe Systems Inc. Methods and apparatus to preview content
US20070113180A1 (en) 2005-11-15 2007-05-17 Michael Danninger Method and system for providing improved help functionality to assist new or occasional users of software in understanding the graphical elements of a display screen
US7765491B1 (en) 2005-11-16 2010-07-27 Apple Inc. User interface widget for selecting a point or range
JP4438741B2 (ja) 2005-11-30 2010-03-24 ソニー株式会社 色調整装置、印刷装置、画像処理装置、色調整方法、プログラム
US7945653B2 (en) 2006-10-11 2011-05-17 Facebook, Inc. Tagging digital media
KR100776134B1 (ko) 2005-12-23 2007-11-15 매그나칩 반도체 유한회사 이미지 센서 및 이미지 밝기 분포 조절방법
JP2007200280A (ja) 2005-12-27 2007-08-09 Ricoh Co Ltd ユーザインタフェース装置、画像表示方法、およびその方法をコンピュータに実行させるプログラム
US7644373B2 (en) 2006-01-23 2010-01-05 Microsoft Corporation User interface for viewing clusters of images
US9143657B2 (en) 2006-01-24 2015-09-22 Sharp Laboratories Of America, Inc. Color enhancement technique using skin color detection
JP5170961B2 (ja) 2006-02-01 2013-03-27 ソニー株式会社 画像処理システム、画像処理装置および方法、プログラム、並びに記録媒体
US8098964B2 (en) 2006-02-06 2012-01-17 Microsoft Corp. Raw image processing
US7634108B2 (en) 2006-02-14 2009-12-15 Microsoft Corp. Automated face enhancement
US7546532B1 (en) 2006-02-17 2009-06-09 Adobe Systems Incorporated Methods and apparatus for editing content
WO2007098497A1 (en) * 2006-02-22 2007-08-30 Nik Software, Inc. Multi-purpose digital editing tools using background processing
JP2007228189A (ja) 2006-02-22 2007-09-06 Canon Inc 色テーブル編集装置、色テーブル編集方法、プログラムおよび記憶媒体
US20110107369A1 (en) 2006-03-28 2011-05-05 O'brien Christopher J System and method for enabling social browsing of networked time-based media
US20100045705A1 (en) * 2006-03-30 2010-02-25 Roel Vertegaal Interaction techniques for flexible displays
US8054294B2 (en) 2006-03-31 2011-11-08 Sony Corporation Touch screen remote control system for use in controlling one or more devices
US7562310B2 (en) 2006-04-04 2009-07-14 International Business Machines Corporation Slider control movable in a two-dimensional region for simultaneously adjusting values of multiple variables
US9395905B2 (en) * 2006-04-05 2016-07-19 Synaptics Incorporated Graphical scroll wheel
US7783983B1 (en) 2006-04-13 2010-08-24 Emc Corporation User interface for controls
US7634715B2 (en) 2006-05-05 2009-12-15 Google Inc. Effects applied to images in a browser
US7467222B2 (en) 2006-05-12 2008-12-16 Shutterfly, Inc. Image ranking for imaging products and services
JP4769635B2 (ja) 2006-05-22 2011-09-07 日本電信電話株式会社 サーバ装置とそのクライアント装置及びプログラム
US7706606B1 (en) 2006-05-31 2010-04-27 Adobe Systems Incorporated Fast, adaptive color to grayscale conversion
JP2007328537A (ja) 2006-06-07 2007-12-20 Fujifilm Corp イベント通知装置、システムおよび方法
JP2007336143A (ja) 2006-06-14 2007-12-27 Ricoh Co Ltd 画像処理装置
US8701028B2 (en) 2006-06-14 2014-04-15 Google Inc. Graphical user interface and related method
JP2007334651A (ja) 2006-06-15 2007-12-27 Fujifilm Corp 画像検索方法およびその画像検索方法で画像検索を実行する画像検索装置が搭載されている撮像装置
US7675648B2 (en) 2006-06-22 2010-03-09 Infoprint Solutions Company, Llc Method and apparatus for converting a color representation of an image to a grayscale representation
JP4737766B2 (ja) 2006-06-30 2011-08-03 キヤノンマーケティングジャパン株式会社 画像処理装置および画像処理装置の制御方法および制御プログラムおよび記録媒体
US8677257B2 (en) 2006-08-04 2014-03-18 Apple Inc. Granular graphical user interface element
US20080046218A1 (en) 2006-08-16 2008-02-21 Microsoft Corporation Visual summarization of activity data of a computing session
US8270709B2 (en) 2006-08-31 2012-09-18 Corel Corporation Color selection and/or matching in a color image
US8564544B2 (en) 2006-09-06 2013-10-22 Apple Inc. Touch screen device, method, and graphical user interface for customizing display of content category icons
US7598964B2 (en) 2006-09-11 2009-10-06 Electronics For Imaging, Inc. Apparatus and methods for editing hue and saturation in color profiles
US8013871B2 (en) 2006-09-11 2011-09-06 Electronics For Imaging, Inc. Apparatus and methods for selective color editing of color profiles
US8564543B2 (en) 2006-09-11 2013-10-22 Apple Inc. Media player with imaged based browsing
JP4717766B2 (ja) * 2006-09-14 2011-07-06 キヤノン株式会社 画像表示装置、撮像装置、画像表示方法、記憶媒体、及び、プログラム
US7974486B2 (en) 2006-09-22 2011-07-05 Apple Inc. Plug-in architecture for exporting digital images
US7870412B2 (en) 2006-09-28 2011-01-11 Oracle International Corporation Passing client or server instructions via synchronized data objects
US8196045B2 (en) 2006-10-05 2012-06-05 Blinkx Uk Limited Various methods and apparatus for moving thumbnails with metadata
KR100791387B1 (ko) 2006-10-25 2008-01-07 삼성전자주식회사 영상 처리 방법 및 장치
US20080109722A1 (en) 2006-11-06 2008-05-08 Gengler William H Direct presentation of help information relative to selectable menu items in a computer controlled display interface
KR101144423B1 (ko) 2006-11-16 2012-05-10 엘지전자 주식회사 휴대 단말기 및 휴대 단말기의 화면 표시 방법
US20080117333A1 (en) 2006-11-17 2008-05-22 Disney Enterprises, Inc. Method, System And Computer Program Product For Video Insertion
US8627232B2 (en) 2006-11-22 2014-01-07 Oracle International Corporation Graphical tool for defining a set of ranges
US7921370B1 (en) 2006-11-29 2011-04-05 Adobe Systems Incorporated Object-level text-condition indicators
US7920739B2 (en) 2006-12-13 2011-04-05 Adobe Systems Incorporated Automatically selected adjusters
US8943410B2 (en) 2006-12-22 2015-01-27 Apple Inc. Modified media presentation during scrubbing
US7992097B2 (en) 2006-12-22 2011-08-02 Apple Inc. Select drag and drop operations on video thumbnails across clip boundaries
US8020100B2 (en) 2006-12-22 2011-09-13 Apple Inc. Fast creation of video segments
US20080163053A1 (en) 2006-12-28 2008-07-03 Samsung Electronics Co., Ltd. Method to provide menu, using menu set and multimedia device using the same
US7956847B2 (en) 2007-01-05 2011-06-07 Apple Inc. Gestures for controlling, manipulating, and editing of media files using touch sensitive devices
US20080168402A1 (en) 2007-01-07 2008-07-10 Christopher Blumenberg Application Programming Interfaces for Gesture Operations
US8055067B2 (en) 2007-01-18 2011-11-08 DigitalOptics Corporation Europe Limited Color segmentation
US7873710B2 (en) 2007-02-06 2011-01-18 5O9, Inc. Contextual data communication platform
US7693679B1 (en) 2007-02-08 2010-04-06 Fluke Corporation System and method for configuring a thermal imaging instrument
WO2008100431A1 (en) 2007-02-09 2008-08-21 Cyberscan Technology Inc. Universal player control for casino game graphic assets
US7903904B1 (en) 2007-02-16 2011-03-08 Loeb Enterprises LLC. System and method for linking data related to a set of similar images
US8438214B2 (en) 2007-02-23 2013-05-07 Nokia Corporation Method, electronic device, computer program product, system and apparatus for sharing a media object
JP2008210304A (ja) 2007-02-28 2008-09-11 Nec Corp サーバ、広告配信方法、及びプログラム
US7954067B2 (en) 2007-03-16 2011-05-31 Apple Inc. Parameter setting superimposed upon an image
US20080229232A1 (en) 2007-03-16 2008-09-18 Apple Inc. Full screen editing of visual media
US20080250314A1 (en) 2007-04-03 2008-10-09 Erik Larsen Visual command history
JP5172438B2 (ja) 2007-04-09 2013-03-27 株式会社遠藤製作所 アイアンゴルフクラブ
US8001470B1 (en) 2007-04-09 2011-08-16 Adobe Systems, Inc. Help functionality and graphical user interface applications
US8732187B1 (en) 2007-04-09 2014-05-20 Google Inc. Link-based ranking of objects that do not include explicitly defined links
JP4356762B2 (ja) 2007-04-12 2009-11-04 ソニー株式会社 情報提示装置及び情報提示方法、並びにコンピュータ・プログラム
US20080256489A1 (en) 2007-04-16 2008-10-16 Tektronix, Inc. Range Sliders with Linked Auto-Updating Spans
JP4464420B2 (ja) 2007-04-18 2010-05-19 キヤノン株式会社 画像処理装置、画像処理方法及びプログラム
US8731322B2 (en) 2007-05-03 2014-05-20 Mtekvision Co., Ltd. Image brightness controlling apparatus and method thereof
US8261205B2 (en) 2007-05-30 2012-09-04 Hewlett-Packard Development Company, L.P. User interface for presenting a list of thumbnail items associated with media items
US20080301237A1 (en) 2007-05-31 2008-12-04 Allan Peter Parsons Method and apparatus for improved referral to resources and a related social network
JP4775332B2 (ja) 2007-06-14 2011-09-21 ブラザー工業株式会社 画像選択装置および画像選択方法
KR100906109B1 (ko) 2007-06-20 2009-07-07 엔에이치엔(주) 3a 기반의 다양한 어플리케이션 상태를 제공하는유비쿼터스 프리젠스 서비스 방법 및 시스템
US8068121B2 (en) 2007-06-29 2011-11-29 Microsoft Corporation Manipulation of graphical objects on a display or a proxy device
EP2017707B1 (en) 2007-07-06 2017-04-12 Dassault Systèmes Widget of graphical user interface and method for navigating amongst related objects
US8422550B2 (en) 2007-07-27 2013-04-16 Lagavulin Limited Apparatuses, methods, and systems for a portable, automated contractual image dealer and transmitter
JP5006757B2 (ja) 2007-08-07 2012-08-22 キヤノン株式会社 画像処理装置及び画像処理方法
US8073285B2 (en) 2007-08-27 2011-12-06 Ancestry.Com Operations Inc. User interface methods and systems for image brightness and contrast
IL185675A0 (en) 2007-09-03 2008-01-06 Margalit Eyal A system and method for manipulating adverts and interactive communications interlinked to online content
US8634674B2 (en) 2007-09-11 2014-01-21 Vistaprint Schweiz Gmbh Dynamic sizing and positioning of multiple images
US8582919B2 (en) * 2007-09-24 2013-11-12 Microsoft Corporation Altering the appearance of a digital image using a shape
US8914750B2 (en) * 2007-10-05 2014-12-16 Autodesk, Inc. User defined scenarios in a three dimensional geo-spatial system
KR101455983B1 (ko) 2007-10-19 2014-11-03 엘지전자 주식회사 이동 단말기 및 이동 단말기의 정보 표시 방법
US20090146961A1 (en) 2007-12-05 2009-06-11 David Shun-Chi Cheung Digital image editing interface
US20090147011A1 (en) 2007-12-07 2009-06-11 Roche Diagnostics Operations, Inc. Method and system for graphically indicating multiple data values
US8165406B2 (en) 2007-12-12 2012-04-24 Microsoft Corp. Interactive concept learning in image search
CN101216747A (zh) 2007-12-27 2008-07-09 上海全景数字技术有限公司 一种产生智能帮助信息的方法和装置
JP5025457B2 (ja) 2007-12-28 2012-09-12 キヤノン株式会社 画像処理装置およびその方法
JP4680273B2 (ja) 2008-02-05 2011-05-11 京セラ株式会社 表示機能付き端末
US20090199126A1 (en) 2008-02-06 2009-08-06 International Business Machines Corporation Method for automatically organizing toolbars for a software application
US10540712B2 (en) 2008-02-08 2020-01-21 The Pnc Financial Services Group, Inc. User interface with controller for selectively redistributing funds between accounts
US8638338B2 (en) 2008-02-11 2014-01-28 Apple Inc. Adjusting color attribute of an image in a non-uniform way
US8009177B2 (en) 2008-02-11 2011-08-30 Apple Inc. User interfaces for managing image colors
US8185822B2 (en) 2008-02-11 2012-05-22 Apple Inc. Image application performance optimization
US8509569B2 (en) 2008-02-11 2013-08-13 Apple Inc. Optimization of image processing using multiple processing units
US8385681B2 (en) 2008-02-11 2013-02-26 Apple Inc. Blemish removal
JP5047005B2 (ja) 2008-02-29 2012-10-10 キヤノン株式会社 画像処理方法、パターン検出方法、パターン認識方法及び画像処理装置
US8793619B2 (en) 2008-03-03 2014-07-29 The United States Of America, As Represented By The Secretary Of The Navy Graphical user control for multidimensional datasets
US8687230B2 (en) 2008-03-31 2014-04-01 Brother Kogyo Kabushiki Kaisha Image processor
KR101454025B1 (ko) 2008-03-31 2014-11-03 엘지전자 주식회사 영상표시기기에서 녹화정보를 이용한 영상 재생 장치 및 방법
US20110012848A1 (en) 2008-04-03 2011-01-20 Dong Li Methods and apparatus for operating a multi-object touch handheld device with touch sensitive display
US8259208B2 (en) * 2008-04-15 2012-09-04 Sony Corporation Method and apparatus for performing touch-based adjustments within imaging devices
TW200945885A (en) * 2008-04-25 2009-11-01 Altek Corp Digital image processing method for correcting shaking blur
JP5247224B2 (ja) 2008-05-02 2013-07-24 キヤノン株式会社 画像処理装置、画像処理の調整値の変更方法及びプログラム
KR100952306B1 (ko) 2008-05-07 2010-04-13 성균관대학교산학협력단 선 입력 기반 영상 처리 방법 및 그 장치
US20090292762A1 (en) 2008-05-20 2009-11-26 Nokia Corporation Method, Apparatus, and Computer Program Product for Publishing Content
JP4913094B2 (ja) 2008-05-20 2012-04-11 シャープ株式会社 画像照合方法、画像照合装置、画像データ出力処理装置、プログラム及び記憶媒体
KR101019039B1 (ko) 2008-05-22 2011-03-04 삼성전자주식회사 터치 스크린을 구비한 단말기 및 데이터 검색 방법.
US8363019B2 (en) 2008-05-26 2013-01-29 Lg Electronics Inc. Mobile terminal using proximity sensor and method of controlling the mobile terminal
JP2010016804A (ja) 2008-06-05 2010-01-21 Canon Inc 画像処理装置及び画像処理方法、記憶媒体
US20090319897A1 (en) 2008-06-20 2009-12-24 Microsoft Corporation Enhanced user interface for editing images
US8457400B2 (en) 2008-06-27 2013-06-04 Microsoft Corporation Patch-based texture histogram coding for fast image similarity search
JP4956494B2 (ja) 2008-06-30 2012-06-20 日本写真印刷株式会社 自動組版システム
US8214766B1 (en) 2008-07-09 2012-07-03 Adobe Systems Incorporated Method and system for preview control for image adjustment
US8237807B2 (en) 2008-07-24 2012-08-07 Apple Inc. Image capturing device with touch screen for adjusting camera settings
CN106919911A (zh) 2008-07-30 2017-07-04 快图有限公司 使用脸部检测的自动脸部和皮肤修饰
US8422788B2 (en) * 2008-08-26 2013-04-16 Microsoft Corporation Automatic image straightening
KR20100027686A (ko) 2008-09-03 2010-03-11 엘지전자 주식회사 이동단말기 및 그 제어 방법
WO2010028169A2 (en) 2008-09-05 2010-03-11 Fotonauts, Inc. Reverse tagging of images in system for managing and sharing digital images
US8386560B2 (en) 2008-09-08 2013-02-26 Microsoft Corporation Pipeline for network based server-side 3D image rendering
KR101500741B1 (ko) 2008-09-12 2015-03-09 옵티스 셀룰러 테크놀로지, 엘엘씨 카메라가 구비된 이동 단말기 및 이의 촬영 방법
US8296658B2 (en) 2008-09-19 2012-10-23 Cisco Technology, Inc. Generator for personalization of electronic devices
US8666223B2 (en) 2008-09-25 2014-03-04 Kabushiki Kaisha Toshiba Electronic apparatus and image data management method
WO2010038653A1 (ja) 2008-10-01 2010-04-08 日本電気株式会社 携帯端末装置及びそれに用いる画像表示方法並びにそのプログラムを記録した記憶媒体
JP5231928B2 (ja) 2008-10-07 2013-07-10 株式会社ソニー・コンピュータエンタテインメント 情報処理装置および情報処理方法
US8744231B2 (en) 2008-10-07 2014-06-03 Intromedic Method of displaying image taken by capsule endoscope and record media of storing program for carrying out that method
US8537409B2 (en) 2008-10-13 2013-09-17 Xerox Corporation Image summarization by a learning approach
CN102265598A (zh) 2008-10-26 2011-11-30 惠普开发有限公司 使用基于内容的过滤和基于主题的聚类将图像布置到页面中
JP5540344B2 (ja) 2008-10-30 2014-07-02 シャープ株式会社 電子機器、メニューの選択方法、メニューの選択プログラム
US8830242B2 (en) 2008-10-30 2014-09-09 Adobe Systems Incorporated Realistic real-time simulation of brush behavior
US8139080B2 (en) 2008-10-31 2012-03-20 Verizon Patent And Licensing Inc. User interface color scheme customization systems and methods
US8543415B2 (en) 2008-11-26 2013-09-24 General Electric Company Mobile medical device image and series navigation
US8610673B2 (en) 2008-12-03 2013-12-17 Microsoft Corporation Manipulation of list on a multi-touch display
US8286095B2 (en) 2009-01-15 2012-10-09 Research In Motion Limited Multidimensional volume and vibration controls for a handheld electronic device
US8250488B2 (en) 2009-01-16 2012-08-21 Corel Corporation Method for controlling position indicator of curved slider
US20100185976A1 (en) 2009-01-21 2010-07-22 Sairam Sadanandan Graphic user interface and a method thereof
US20100192102A1 (en) 2009-01-29 2010-07-29 International Business Machines Corporation Displaying radial menus near edges of a display area
US8380005B1 (en) * 2009-02-02 2013-02-19 Adobe Systems Incorporated System and method for image composition using non-destructive editing model and fast gradient solver
JP2010187093A (ja) 2009-02-10 2010-08-26 Ricoh Co Ltd 画像編集装置
JP5262869B2 (ja) 2009-03-12 2013-08-14 株式会社リコー 画像処理システム、画像処理サーバ、mfp及び画像処理方法
EP2360639B1 (en) 2009-03-13 2016-11-16 Nec Corporation Image identifier matching device
US20100251127A1 (en) 2009-03-30 2010-09-30 Avaya Inc. System and method for managing trusted relationships in communication sessions using a graphical metaphor
US20100257477A1 (en) 2009-04-03 2010-10-07 Certusview Technologies, Llc Methods, apparatus, and systems for documenting and reporting events via geo-referenced electronic drawings
US8355566B2 (en) 2009-04-03 2013-01-15 Hong Kong Baptist University Method and device for use in converting a colour image into a grayscale image
CN101551915A (zh) 2009-04-22 2009-10-07 腾讯数码(天津)有限公司 一种图像处理方法和装置
US8533598B2 (en) 2009-04-30 2013-09-10 Apple Inc. Media editing with a segmented timeline
US8286081B2 (en) 2009-04-30 2012-10-09 Apple Inc. Editing and saving key-indexed geometries in media editing applications
US8601389B2 (en) 2009-04-30 2013-12-03 Apple Inc. Scrollable menus and toolbars
KR20100124438A (ko) 2009-05-19 2010-11-29 삼성전자주식회사 휴대 단말기의 페이지 제공 방법 및 이를 지원하는 휴대 단말기
US8549432B2 (en) 2009-05-29 2013-10-01 Apple Inc. Radial menus
US8681106B2 (en) 2009-06-07 2014-03-25 Apple Inc. Devices, methods, and graphical user interfaces for accessibility using a touch-sensitive surface
US20100310136A1 (en) 2009-06-09 2010-12-09 Sony Ericsson Mobile Communications Ab Distinguishing right-hand input and left-hand input based on finger recognition
US9049419B2 (en) 2009-06-24 2015-06-02 Hewlett-Packard Development Company, L.P. Image album creation
US20110154192A1 (en) 2009-06-30 2011-06-23 Jinyu Yang Multimedia Collaboration System
US9483138B2 (en) 2009-07-10 2016-11-01 Adobe Systems Incorporated Natural media painting using a realistic brush and tablet stylus gestures
US8806331B2 (en) 2009-07-20 2014-08-12 Interactive Memories, Inc. System and methods for creating and editing photo-based projects on a digital network
US8854549B2 (en) 2009-07-30 2014-10-07 Vizio, Inc. Dual slider bar control
EP2460349A4 (en) 2009-07-31 2013-08-07 Citizenglobal Inc Systems and methods for collecting, processing and distributing content
JP2011033870A (ja) 2009-08-03 2011-02-17 Sony Corp 画像処理装置、画像処理方法およびプログラム
US8441499B2 (en) 2009-08-05 2013-05-14 Apple Inc. User interface contrast filter
US10339541B2 (en) 2009-08-19 2019-07-02 Oracle International Corporation Systems and methods for creating and inserting application media content into social media system displays
JP5666852B2 (ja) 2009-09-02 2015-02-12 Necプラットフォームズ株式会社 カラー判定装置、画像処理装置、カラー判定方法、カラー判定プログラム
JP5553230B2 (ja) 2009-09-08 2014-07-16 株式会社リコー 撮像装置および撮像処理方法
US8644644B2 (en) 2009-09-14 2014-02-04 Adobe Systems Incorporation Methods and apparatus for blending images
WO2011037558A1 (en) 2009-09-22 2011-03-31 Apple Inc. Device, method, and graphical user interface for manipulating user interface objects
US9529517B2 (en) 2009-10-13 2016-12-27 Google Inc. Movable information panels
KR20110042635A (ko) 2009-10-19 2011-04-27 엘지전자 주식회사 휴대 단말기 및 그 동작방법
CA2680602C (en) 2009-10-19 2011-07-26 Ibm Canada Limited - Ibm Canada Limitee System and method for generating and displaying hybrid context menus
US8261212B2 (en) * 2009-10-20 2012-09-04 Microsoft Corporation Displaying GUI elements on natural user interfaces
US8687015B2 (en) 2009-11-02 2014-04-01 Apple Inc. Brushing tools for digital image adjustments
US8625908B2 (en) 2009-11-02 2014-01-07 Apple Inc. Managing raw and processed image file pairs
US8433135B2 (en) 2009-11-02 2013-04-30 Apple Inc. Image adjustment using extended range curves
US8594419B2 (en) 2009-11-09 2013-11-26 Hewlett-Packard Development Company, L.P. Method and apparatus for converting a color image to grayscale
US20110113086A1 (en) 2009-11-10 2011-05-12 Kevin Long System and method for monitoring activity on internet-based social networks
JP5327017B2 (ja) 2009-11-24 2013-10-30 ソニー株式会社 遠隔操作装置、遠隔操作システム、遠隔操作装置による情報処理方法およびプログラム
US20110125765A1 (en) 2009-11-25 2011-05-26 Nokia Corporation Method and apparatus for updating media profile
US8438531B2 (en) 2009-12-01 2013-05-07 Cadence Design Systems, Inc. Visualization and information display for shapes in displayed graphical images
US8526719B2 (en) 2009-12-29 2013-09-03 Postech Academy-Industry Foundation Method of converting color image into grayscale image and recording medium storing program for performing the same
US8698762B2 (en) 2010-01-06 2014-04-15 Apple Inc. Device, method, and graphical user interface for navigating and displaying content in context
WO2011085248A1 (en) 2010-01-07 2011-07-14 Swakker, Llc Methods and apparatus for modifying a multimedia object within an instant messaging session at a mobile communication device
US8209632B2 (en) * 2010-01-26 2012-06-26 Apple Inc. Image mask interface
KR20110088236A (ko) 2010-01-28 2011-08-03 삼성전자주식회사 이미지 제공 장치 및 그 방법
US20110185299A1 (en) * 2010-01-28 2011-07-28 Microsoft Corporation Stamp Gestures
US8621012B2 (en) 2010-02-08 2013-12-31 Google Inc. Active e-mails
KR101673918B1 (ko) 2010-02-11 2016-11-09 삼성전자주식회사 휴대단말에서 복수의 정보들을 제공하는 방법 및 장치
KR101640506B1 (ko) 2010-02-12 2016-07-18 삼성전자주식회사 에스엔에스 위젯 제공 방법 및 그 장치
US20110202877A1 (en) 2010-02-16 2011-08-18 Metacan Holdings Inc. Apparatus and Method for Controlling a Display to Provide Content Navigation
EP2375693B1 (en) 2010-03-22 2017-09-27 Telia Company AB Providing a presence service in a communications system
US8917632B2 (en) 2010-04-07 2014-12-23 Apple Inc. Different rate controller configurations for different cameras of a mobile device
US9542038B2 (en) 2010-04-07 2017-01-10 Apple Inc. Personalizing colors of user interfaces
US8584385B2 (en) * 2010-04-22 2013-11-19 American Greetings Corporation Interactive electronic greeting cards with tap and touch activated effects
US20110265033A1 (en) 2010-04-23 2011-10-27 Research In Motion Limited Apparatus, and associated method, for selecting multiple files at a consumer electronics device
US20150161217A1 (en) 2010-04-26 2015-06-11 Google Inc. Related images
US20110286647A1 (en) 2010-05-24 2011-11-24 Microsoft Corporation Image Browsing and Navigating User Interface
US8525899B2 (en) 2010-05-27 2013-09-03 Canon Kabushiki Kaisha Image-capturing device, user interface and method for selective color balance adjustment
WO2011149558A2 (en) * 2010-05-28 2011-12-01 Abelow Daniel H Reality alternate
US8811948B2 (en) 2010-07-09 2014-08-19 Microsoft Corporation Above-lock camera access
US8675009B2 (en) 2010-07-20 2014-03-18 Apple Inc. Keying an image in three dimensions
US8743139B2 (en) 2010-07-20 2014-06-03 Apple Inc. Automatically keying an image
KR20120010525A (ko) 2010-07-26 2012-02-03 엘지전자 주식회사 이동 단말기 및 그의 화면회전 제어방법
US8970720B2 (en) 2010-07-26 2015-03-03 Apple Inc. Automatic digital camera photography mode selection
US8468465B2 (en) 2010-08-09 2013-06-18 Apple Inc. Two-dimensional slider control
US8582834B2 (en) 2010-08-30 2013-11-12 Apple Inc. Multi-image face-based image processing
US20120050789A1 (en) 2010-08-31 2012-03-01 Apple Inc. Dynamically Generated Digital Photo Collections
US9218680B2 (en) * 2010-09-01 2015-12-22 K-Nfb Reading Technology, Inc. Systems and methods for rendering graphical content and glyphs
JP5083393B2 (ja) 2010-09-16 2012-11-28 カシオ計算機株式会社 画像表示装置及びプログラム
KR101781129B1 (ko) 2010-09-20 2017-09-22 삼성전자주식회사 어플리케이션을 다운로드받아 설치하는 단말장치 및 그 방법
US8660345B1 (en) 2010-11-11 2014-02-25 Google Inc. Colorization-based image compression using selected color samples
WO2012068551A1 (en) 2010-11-18 2012-05-24 Google Inc. Surfacing off-screen visible objects
CN102082864B (zh) * 2010-11-22 2013-10-02 成都品果科技有限公司 Camera360手机摄影平台及瞬间处理方法
US8396876B2 (en) 2010-11-30 2013-03-12 Yahoo! Inc. Identifying reliable and authoritative sources of multimedia content
US9311678B2 (en) 2010-12-15 2016-04-12 Facebook, Inc. Comment plug-in for third party system
US8532377B2 (en) 2010-12-22 2013-09-10 Xerox Corporation Image ranking based on abstract concepts
US9223471B2 (en) 2010-12-28 2015-12-29 Microsoft Technology Licensing, Llc Touch screen control
CN102054285A (zh) * 2010-12-31 2011-05-11 上海为舟网络科技有限公司 在线动态图像编辑系统
US20120173317A1 (en) 2011-01-01 2012-07-05 Kelley Timothy L Processing a patient study
JP5609656B2 (ja) 2011-01-11 2014-10-22 富士通株式会社 設定プログラム、ワークフロー作成方法およびワークフロー作成装置
GB2487972A (en) 2011-02-11 2012-08-15 Nokia Corp A method of display of comments associated with an object
US9336512B2 (en) 2011-02-11 2016-05-10 Glenn Outerbridge Digital media and social networking system and method
US8619027B2 (en) 2011-02-15 2013-12-31 Smart Technologies Ulc Interactive input system and tool tray therefor
US8767970B2 (en) 2011-02-16 2014-07-01 Apple Inc. Audio panning with multi-channel surround sound decoding
US8433670B2 (en) 2011-03-03 2013-04-30 Xerox Corporation System and method for recommending items in multi-relational environments
KR101852428B1 (ko) 2011-03-09 2018-04-26 엘지전자 주식회사 이동 단말기 및 그의 3d객체 제어방법
KR101145602B1 (ko) 2011-05-12 2012-05-15 박원주 멀티터치가 가능한 터치스크린을 이용한 화상의 색 보정 방법
TWI456434B (zh) 2011-05-31 2014-10-11 Compal Electronics Inc 具有觸控輸入系統之電子裝置
US8341525B1 (en) 2011-06-03 2012-12-25 Starsvu Corporation System and methods for collaborative online multimedia production
US8639296B2 (en) * 2011-06-07 2014-01-28 Lg Electronics Inc. Mobile device and an image display method thereof
US8880640B2 (en) 2011-06-20 2014-11-04 Facebook, Inc. Social mode for managing communications between a mobile device and a social networking system
US9746995B2 (en) 2011-07-14 2017-08-29 Microsoft Technology Licensing, Llc Launcher for context based menus
US9086794B2 (en) 2011-07-14 2015-07-21 Microsoft Technology Licensing, Llc Determining gestures on context based menus
CN102915173B (zh) 2011-08-04 2015-11-25 腾讯科技(深圳)有限公司 菜单实现方法和系统
US8810535B2 (en) 2011-10-18 2014-08-19 Blackberry Limited Electronic device and method of controlling same
US8707211B2 (en) 2011-10-21 2014-04-22 Hewlett-Packard Development Company, L.P. Radial graphical user interface
US8938100B2 (en) * 2011-10-28 2015-01-20 Intellectual Ventures Fund 83 Llc Image recomposition from face detection and facial features
US9424799B2 (en) 2011-10-28 2016-08-23 Apple Inc. On-screen image adjustments
TWI474186B (zh) 2011-11-18 2015-02-21 Inst Information Industry 可協同複數個行動裝置進行協同編輯的電子裝置與方法
US8890808B2 (en) 2012-01-06 2014-11-18 Microsoft Corporation Repositioning gestures for chromeless regions
US8806339B2 (en) 2012-02-06 2014-08-12 Apple Inc. User interface control for media editing application
US9350814B2 (en) 2012-02-21 2016-05-24 Qualcomm Incorporated Internet protocol connectivity over a service-oriented architecture bus
US8963962B2 (en) 2012-03-06 2015-02-24 Apple Inc. Display of multiple images
US9131192B2 (en) 2012-03-06 2015-09-08 Apple Inc. Unified slider control for modifying multiple image properties
US9202433B2 (en) 2012-03-06 2015-12-01 Apple Inc. Multi operation slider
US20130239051A1 (en) 2012-03-06 2013-09-12 Apple Inc. Non-destructive editing for a media editing application
US8971623B2 (en) 2012-03-06 2015-03-03 Apple Inc. Overlaid user interface tools for applying effects to image
CN104247392A (zh) 2012-03-06 2014-12-24 苹果公司 用于媒体编辑应用程序的扇形用户界面控件
US8971617B2 (en) 2012-03-06 2015-03-03 Apple Inc. Method and interface for converting images to grayscale
WO2013133905A1 (en) 2012-03-06 2013-09-12 Apple Inc. Color adjustors for color segments
US9299168B2 (en) 2012-03-06 2016-03-29 Apple Inc. Context aware user interface for image editing
US9141186B2 (en) 2012-03-22 2015-09-22 Htc Corporation Systems and methods for providing access to media content
US20130335452A1 (en) * 2012-06-14 2013-12-19 Research In Motion Limited System and method for scaling vector-based graphic designs
US20140063047A1 (en) 2012-09-01 2014-03-06 Garrett M. Johnson Duotone effect
US9355472B2 (en) * 2013-03-15 2016-05-31 Apple Inc. Device, method, and graphical user interface for adjusting the appearance of a control
US9523772B2 (en) 2013-06-14 2016-12-20 Microsoft Technology Licensing, Llc Object removal using lidar-based classification
US20160378316A1 (en) 2015-06-26 2016-12-29 Oliver Jakubiec User Interface Slider Tool For Communicating Subjective Parameters
US10185707B2 (en) 2015-12-16 2019-01-22 Microsoft Technology Licensing, Llc Aggregate visualizations of activities performed with respect to portions of electronic documents
CA2970088C (en) 2016-09-30 2022-02-08 The Toronto-Dominion Bank Device lock bypass on selectable alert

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011120143A (ja) * 2009-12-07 2011-06-16 Ricoh Co Ltd 撮像装置および撮像方法
JP2011135438A (ja) * 2009-12-25 2011-07-07 Casio Computer Co Ltd 画像合成装置、画像合成方法及びプログラム
JP2011166302A (ja) * 2010-02-05 2011-08-25 Canon Inc 撮像装置及び画像処理方法
JP2011239267A (ja) * 2010-05-12 2011-11-24 Ricoh Co Ltd 撮像装置及び画像処理装置

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101881292B1 (ko) * 2017-02-27 2018-07-24 (주)진명아이앤씨 Uhd동영상의 스티칭 및 컷-아웃용 텔레스트레이터

Also Published As

Publication number Publication date
JP5986232B2 (ja) 2016-09-06
JP6220021B2 (ja) 2017-10-25
US20170109023A1 (en) 2017-04-20
US20150205502A1 (en) 2015-07-23
US20210149549A1 (en) 2021-05-20
US20130235071A1 (en) 2013-09-12
US10942634B2 (en) 2021-03-09
US10552016B2 (en) 2020-02-04
GB2587183A (en) 2021-03-24
GB2513766B (en) 2019-05-29
US9569078B2 (en) 2017-02-14
US20130235076A1 (en) 2013-09-12
US20200133469A1 (en) 2020-04-30
US20130236093A1 (en) 2013-09-12
US8971623B2 (en) 2015-03-03
GB2570415B (en) 2019-10-16
US11481097B2 (en) 2022-10-25
GB201912286D0 (en) 2019-10-09
GB201905085D0 (en) 2019-05-22
CN104247390A (zh) 2014-12-24
GB2513766A (en) 2014-11-05
JP2015513747A (ja) 2015-05-14
CN104247390B (zh) 2017-03-29
WO2013133893A1 (en) 2013-09-12
GB2570415A (en) 2019-07-24
GB201413677D0 (en) 2014-09-17
US9041727B2 (en) 2015-05-26

Similar Documents

Publication Publication Date Title
JP6220021B2 (ja) 電子デバイス、方法、プログラム
US11706521B2 (en) User interfaces for capturing and managing visual media
US11770601B2 (en) User interfaces for capturing and managing visual media
JP6077020B2 (ja) 複数の画像プロパティを修正するための一体型スライダコントロール
US9886931B2 (en) Multi operation slider
US9299168B2 (en) Context aware user interface for image editing
JP5990600B2 (ja) 色区分に関する色調整器
US8971617B2 (en) Method and interface for converting images to grayscale
US20140063047A1 (en) Duotone effect
US9053568B2 (en) Applying a realistic artistic texture to images
US8885953B2 (en) Grain effect
US20240103713A1 (en) Use of a jog wheel
US20240103715A1 (en) Touchscreen Jog Wheel User Interface Element
WO2024064235A1 (en) Touchscreen jog wheel user interface element
WO2024064239A1 (en) Use of a jog wheel

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20170419

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20170508

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20170808

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20170904

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20170928

R150 Certificate of patent or registration of utility model

Ref document number: 6220021

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250