JP6902886B2 - 画像処理装置、方法およびプログラム - Google Patents

画像処理装置、方法およびプログラム Download PDF

Info

Publication number
JP6902886B2
JP6902886B2 JP2017049055A JP2017049055A JP6902886B2 JP 6902886 B2 JP6902886 B2 JP 6902886B2 JP 2017049055 A JP2017049055 A JP 2017049055A JP 2017049055 A JP2017049055 A JP 2017049055A JP 6902886 B2 JP6902886 B2 JP 6902886B2
Authority
JP
Japan
Prior art keywords
image
trimming
scene
type
face
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.)
Active
Application number
JP2017049055A
Other languages
English (en)
Other versions
JP2018151979A (ja
JP2018151979A5 (ja
Inventor
寛康 國枝
寛康 國枝
堀 信二郎
信二郎 堀
井口 良介
良介 井口
正明 大林
正明 大林
池田 徹
徹 池田
後藤 文孝
文孝 後藤
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Canon Inc
Original Assignee
Canon Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Canon Inc filed Critical Canon Inc
Priority to JP2017049055A priority Critical patent/JP6902886B2/ja
Priority to US15/907,408 priority patent/US10796405B2/en
Publication of JP2018151979A publication Critical patent/JP2018151979A/ja
Publication of JP2018151979A5 publication Critical patent/JP2018151979A5/ja
Application granted granted Critical
Publication of JP6902886B2 publication Critical patent/JP6902886B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T3/00Geometric image transformations in the plane of the image
    • G06T3/40Scaling of whole images or parts thereof, e.g. expanding or contracting
    • 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
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2210/00Indexing scheme for image generation or computer graphics
    • G06T2210/22Cropping

Landscapes

  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Processing Or Creating Images (AREA)
  • Image Analysis (AREA)

Description

本発明は、画像データをレイアウトする画像処理装置、方法およびプログラムに関する。
近年では、デジタルカメラの普及に加え、スマートデバイスの普及及びカメラ性能向上によりユーザの写真撮影枚数が急激に増加しており、撮影された膨大な写真を活用するものとして、写真アルバムが注目されてきている。写真アルバムの作成においては、膨大な写真からアルバムに適した画像を選択し、配置するところまでを自動で行うことや、選択した写真を円形や矩形などにトリミングして配置することで、デザイン性を高めることが求められてきている。特許文献1には、トリミングを行う際に、検出した顔が中心となるようにトリミング位置を設定することが記載されている。
特開2008−225720号公報
しかしながら、画像の撮影シーンによっては、顔領域が中心からずれた方が、ユーザが撮影時に考慮した構図に沿ったものとなる場合がある。従って、特許文献1に記載の手法により顔領域が中心となるようなトリミングを行っても、シーンの種類によっては、ユーザに違和感を与えてしまう可能性がある。
本発明の目的は、このような従来の問題点を解決することにある。上記の点に鑑み、本発明は、シーンの種類に応じた適切な位置であるトリミング領域に対してトリミングを行う画像処理装置、方法およびプログラムを提供することを目的とする。
上記課題を解決するため、本発明に係る画像処理装置は、レイアウトの対象となる画像を取得する取得手段と、前記取得手段により取得した画像において、前記画像が表すシーンの種類に応じて、トリミング領域の位置を決定する決定手段と、前記画像において、前記決定手段により決定した位置である前記トリミング領域をトリミングするトリミング手段と、を備え、前記決定手段は、前記画像に含まれる特定のオブジェクトの位置に基づきデフォルトトリミング領域の位置を決定し、前記画像が表すシーンの種類が第1種類の場合は、前記デフォルトトリミング領域の位置から前記第1種類に応じた第1移動量だけ移動させた位置を、前記トリミング領域の位置として決定し、前記画像が表すシーンの種類が前記第1種類と異なる第2種類の場合は、前記デフォルトトリミング領域の位置から、前記第1移動量と異なる、前記第2種類に応じた第2移動量だけ移動させた位置を、前記トリミング領域の位置として決定する、ことを特徴とする。
本発明によれば、シーンの種類に応じた適切な位置であるトリミング領域に対してトリミングを行うことができる。
画像処理装置のハードウェア構成を示すブロック図である。 アルバム作成アプリケーションのソフトウェア構成を示すブロック図である。 アルバム作成アプリケーションのユーザインタフェース画面を示す図である。 アルバム作成アプリケーションの処理を示すフローチャートである。 各画像ごとに記憶される解析情報を示す図である。 シーン分割した結果を示す図である。 シーンごとの平均値と標準偏差を示す図である。 シーンごと、スロットごとについての得点化を説明するための図である。 分割群からの画像の選択を説明するための図である。 画像のレイアウトに用いるテンプレートを示す図である。 トリミング制御に関するブロック図である。 トリミング領域の設定を説明するための図である。 トリミング処理を示すフローチャートである。 トリミング制御に関するブロック図である。 顔を選定する処理を説明するための図である。 トリミング処理を示すフローチャートである。 トリミング制御に関するブロック図である。 トリミング領域の設定を説明するための図である。 顔切れ判定領域を示す図である。 トリミング処理を示すフローチャートである。
以下、添付図面を参照して本発明の実施形態を詳しく説明する。尚、以下の実施形態は特許請求の範囲に係る本発明を限定するものでなく、また本実施形態で説明されている特徴の組み合わせの全てが本発明の解決手段に必須のものとは限らない。なお、同一の構成要素には同一の参照番号を付して、説明を省略する。
[第1の実施形態]
本実施形態では、PC(パーソナルコンピュータ)上で、アルバム作成アプリケーションを動作させ、写真アルバムの自動レイアウト生成を行う処理を説明する。
図1は、画像処理装置100のハードウェアの構成を示すブロック図である。画像処理装置100として、例えば、汎用的なPCが用いられる。CPU101は、中央演算装置(プロセッサ)であり、写真アルバムの自動レイアウト生成を行うアルバム作成アプリケーションを実行する。図1では、CPU101は、1つのみが示されているが、複数構成されていても良い。ROM102は、例えば、CPU101により実行されるプログラムを記憶する。RAM103は、例えば、CPU101によるプログラムの実行時に、各種情報を一時的に記憶するためのメモリとして用いられる。HDD(ハードディスク)104は、例えば、画像データや(以下、単に画像ともいう)、画像解析などの処理結果を保持するデータベースなどを記憶する記憶媒体である。
ディスプレイ105は、本実施形態のユーザインタフェース(UI)画面や画像のレイアウト結果をユーザに表示する。ディスプレイ105は、タッチセンサ機能を備えても良い。キーボード106は、例えば、ユーザが、ディスプレイ105に表示されたUI画面上でアルバムの見開き数などの設定値を入力するために用いられる。ポインティングデバイス107は、ユーザがディスプレイ105に表示されたUI上のボタンをクリック等により選択/指定する際に用いられる。データ通信部108は、自動レイアウト生成が行われたデータを画像処理装置100に接続されたプリンタやサーバに送信する。上記の各ブロックは、システムバス109を介して相互に接続される。
図2は、アルバム作成アプリケーションの自動レイアウト処理部216に関するソフトウェアブロック図である。図2において、アルバム作成条件指定部201は、ポインティングデバイス107による後述のUI操作に応じて指定されたアルバム作成条件を自動レイアウト処理部216に出力する。
画像取得部202は、アルバム作成条件指定部201で指定された画像群をHDD104から取得する。HDD104に保存される画像群は、デジタルカメラやスマートデバイスで撮影された静止画像、動画から切り出された切り出し画像、データ通信部108を介してソーシャルネットワークやサーバから取得されたSNS画像、を含む。また、画像取得部202は、各画像に付随したデータを解析して取得先を判定する。例えば、SNS画像については、アルバム作成アプリケーションを介してSNSから取得され、アルバム作成アプリケーション内で、判定された取得先を管理するようにしても良い。なお、本実施形態では、上記画像種類以外の画像が用いられても良い。
画像変換部203は、画像を所望の画素数や色情報の画像に変換する。本実施形態では、画像変換部203は、例えば、短辺420画素の画素数とsRGBの色情報の解析画像に変換する。画像解析部204は、解析画像に対して、後述の特徴量取得、顔検出、表情認識、個人認識の各処理を実行する。また、画像解析部204は、HDD104から取得した画像に付随したデータ、例えばExif情報から、撮影日時を取得する。また、画像解析部204は、画像データを解析して、特定のオブジェクト、例えば、人物の顔画像を検出する。画像分類部205は、画像群に対して、撮影日時情報や枚数、検出した顔情報を用いて、後述のシーン分割、シーン分類を実行する。ここで、シーンとは、旅行や日常、結婚式等の撮影シーンを表す。
画像得点部207は、各画像に対して、レイアウトに適した画像が高得点となるような得点付けを行う。後述するが、得点付けの際、画像解析部204で取得された情報と、画像分類部205で取得された情報とが用いられる。主人公情報入力部206は、アルバム作成条件指定部201で指定された主人公のID(識別情報)を画像得点部207に入力する。画像得点部207は、例えば、主人公情報入力部206から入力された主人公のIDが含まれる画像の得点をアップする。
見開き割当部209は、画像群を分割して各見開きに割り当てる。見開き入力部208は、アルバム作成条件指定部201で指定されたアルバムの見開き数を見開き割当部209に入力する。見開き割当部209は、入力された見開き数に応じて画像群を分割し、各見開きに画像群の一部を割り当てる。画像選択部210は、見開き割当部209で各見開きに割り当てられた画像群の一部から、画像得点部207で付与された得点に基づいて、画像を選択する。画像レイアウト部212は、画像のレイアウトを決定する。
テンプレート入力部211は、アルバム作成条件指定部201で指定されたテンプレート情報に応じた複数のテンプレートを画像レイアウト部212に入力する。画像レイアウト部212は、画像選択部210で選択された画像に適したテンプレートを、テンプレート入力部211から入力された複数のテンプレートから選択し、画像のレイアウトを決定する。レイアウト情報出力部215は、画像レイアウト部212で決定された画像のレイアウトに従って、ディスプレイ105に表示するためのレイアウト情報を出力する。レイアウト情報は、例えば、選択されたテンプレートに、選択された画像をレイアウトしたビットマップデータである。
画像補正条件入力部213は、アルバム作成条件指定部201で指定された画像補正のON/OFF条件を画像補正部214に入力する。画像補正部214は、画像補正条件がONの場合、画像に対して補正を実行し、画像補正条件がOFFの場合、補正を実行しない。なお、画像補正部214は、画像変換部203から入力された画像に対して、画像補正条件に基づき、補正の実行を制御する。画像変換部203から画像補正部214に入力される画像の画素数は、画像レイアウト部212で決定したレイアウトの各スロットのサイズに合わせて変更可能である。
アルバム作成アプリケーションが画像処理装置100にインストールされると、画像処理装置100上で動作するOS(オペレーティングシステム)のトップ画面(デスクトップ)上に起動アイコンが表示される。ユーザがディスプレイ105に表示されているデスクトップ上の起動アイコンをポインティングデバイス107等でダブルクリックすると、HDD104に保存されているアルバム作成アプリケーションのプログラムがROM102にロードされる。そして、ROM102のプログラムがCPU101によって実行され、アルバム作成アプリケーションが起動する。
図3は、起動したアルバム作成アプリケーションのUI画面301であり、UI画面301は、ディスプレイ105に表示される。パスボックス302は、アルバム作成の対象となる画像群のHDD104中の保存場所(パス)を示すパスボックスである。フォルダ選択ボタン303は、例えばユーザによりポインティングデバイス107でクリックされると、アルバム作成の対象とする画像群を含むフォルダがツリー構成として選択可能に表示される。ユーザにより選択された画像群を含むフォルダパスが、パスボックス302に表示される。
主人公指定アイコン304には、異なる顔画像のアイコンが並んで表示され、ポインティングデバイス107のクリック操作等により選択される。見開き数ボックス305は、見開き数の指定を受け付ける。例えば、ユーザのキーボード106操作により見開き数ボックス305に直接数字が入力されるか、ポインティングデバイス107の操作によりリストから見開き数ボックスに数字が入力される。
テンプレート指定アイコン306には、テンプレートのサイズやテンプレートのテイスト(ポップ調やシック調等)を示すアイコンが並んで表示され、ポインティングデバイス107のクリック操作等により選択される。チェックボックス307は、画像補正のON/OFFの指定を受け付ける。ポインティングデバイス107等によりチェックされた場合、画像補正がONとなり、チェックされない場合、画像補正がOFFとなる。
OKボタン308は、UI画面301上で指定されている状態をアルバム作成条件指定部201に出力するためのボタンである。OKボタン308が例えばポインティングデバイス107でクリックされると、アルバム作成条件指定部201により、アルバム作成条件が自動レイアウト処理部216に出力される。パスボックス302に入力されたパスは、画像取得部202に出力される。主人公指定アイコン304で選択された主人公のIDは、主人公情報入力部206に出力される。見開き数ボックス305に入力された見開き数は、見開き数入力部208に出力される。テンプレート指定アイコン306で選択されたテンプレート情報は、テンプレート入力部211に出力される。画像補正チェックボックスの画像補正のON/OFF情報は、画像補正条件入力部213に出力される。リセットボタン309は、UI画面301上の各設定情報をリセットするためのボタンである。
図4は、アルバム作成アプリケーションの自動レイアウト処理部216の処理を示すフローチャートである。図4の処理は、例えば、CPU101がROM102に記憶されたプログラムをRAM103に読み出して実行することにより実現される。以下、図4を参照しながら、アルバム作成アプリケーションの自動レイアウト生成の処理を説明する。
S401において、画像変換部203は、解析画像を生成する。画像変換部203は、アルバム作成条件指定部201で指定されたHDD104の画像群の各画像を所定の画素数と色情報の解析画像に変換する。本実施形態では、例えば、短辺420画素とsRGBの色情報の解析画像に変換する。
S402において、画像解析部204は、画像の特徴量を取得する。画像解析部204は、HDD104から取得された各画像に付随する例えばExif情報から、撮影日時を取得する。また、画像解析部204は、S401で生成された解析画像から特徴量として、例えばピント情報を取得するようにしても良い。ピント情報を取得する場合、画像解析部204は、ソーベルフィルタでエッジ検出して、エッジの始点と終点の輝度差を始点と終点の距離で割ることによりエッジの傾きを算出する。そして、画像解析部204は、画像中のエッジの平均傾きを算出し、平均傾き大の画像は平均傾き小の画像よりもピントが合っていると判別する。また、傾きに対して異なる値の複数の閾値を設定し、どの閾値以上であるかを判別することでピント量を判別しても良い。例えば、画像解析部204は、異なる2つの閾値を設定し、○△×の3段階でピント量を判別する。つまり、アルバムに採用したいピントの傾きを○、許容できるピントの傾きを△、許容できない傾きを×として評価する。閾値は、例えば、実験等により予め設定される。
S403において、画像解析部204は、顔検出を実行する。画像解析部204は、S401で生成された解析画像から、顔検出を実行する。顔検出には、複数用意された弱識別器からAdaboostにより作成された強識別器により顔検出が実行される。画像解析部204は、顔画像を検出するとともに、検出した顔画像の位置の左上座標値と右下座標値を取得する。画像解析部204は、それらの2つの座標から、顔数、顔の位置、顔のサイズを取得する。
S404において、画像解析部204は、個人認識を実行する。画像解析部204は、S403で検出された顔画像と、顔辞書データベースに個人ID毎に保存されている代表顔画像との類似性を判定し、類似性が閾値以上で最も類似性が高いIDを、検出された顔画像のIDとする。なお、類似性が閾値未満の場合、画像解析部204は、新規の顔の個人IDとして、検出された顔画像を顔辞書データベースに登録する。
S402〜S404で取得された情報は、図5に示すように各画像を識別する画像ID毎に区別して保存される。図5に示すように、S402で取得した撮影日時情報とピント情報、S403で検出した顔数と顔の位置情報、が保存される。なお、顔の位置情報は、S404で取得した個人ID毎に区別して保存される。
S405において、アルバム作成条件指定部201で指定されたHDD104の画像群の全画像に対してS401〜S404の処理が終了したか否かが判定される。終了していないと判定された場合、S401からの処理を繰り返す。終了していると判定された場合、S406に進む。
S406において、画像分類部205は、シーン分割を実行する。画像分類部205は、S402で取得済みの撮影日時情報から算出した、画像と画像の時間差に基づいて、画像群を複数に分割する。その際、画像間に撮影していない日が存在する場合には、その日を境として分割する。また、撮影日が連続する場合、時間差が16時間以上空いている場合、その時間差の部分を境として分割する。一方、時間差が16時間未満の場合、連続する各日の最初の撮影から最後の撮影までの時間差が4時間未満の場合には、それらを纏まりとして分割する。また、4時間以上の場合には、連続する各日の撮影枚数が50枚未満であれば、それらを纏まりとして分割し、50枚以上であれば、分割しない。図6(A)は、上記のシーン分割方法で分割した結果を示している。
S407において、画像分類部206は、シーンの種類を決定するシーン分類を実行する。本実施形態では、旅行、日常、セレモニーの各シーンに分類する例で説明する。画像分類部206は、ユーザが旅行、日常、セレモニーであると予め判定した画像群をそれぞれ複数集める。そして、画像解析部204は、各画像群について、特徴量を取得する。ここで、取得する特徴量は、例えば撮影期間、撮影枚数、撮影人数である。撮影期間は、画像群の最初の撮影から最後の撮影までの時間差である。撮影枚数は、画像群中の撮影枚数である。撮影人数は、顔が写っている画像における顔の数である。そして、シーン毎に集めた複数の画像群に対して、撮影期間の平均値と標準偏差、撮影枚数の平均値と標準偏差、1画像あたりの人数の平均値と標準偏差を求める。
図7は、上記で求められた各平均値と標準偏差を示しており、これらの求めた値をアルバム作成アプリケーションのプログラムに予め組み込んでおく。アルバム作成アプリケーションが起動された後、ユーザがパスボックス302で指定した画像群のS406でシーン分割された各分割群について、撮影期間と撮影枚数、撮影人数の平均値を特徴量として算出する。上述の各分割群の特徴量について、図7のシーン毎の平均値と標準偏差を用いて式(1)及び(2)により得点化を行う。
得点=50−|10×(平均値−特徴量)/標準偏差| ・・・(1)
平均得点=(撮影期間の得点+撮影枚数の得点+人数の得点)/特徴量項目数 ・・・(2)
以上によって、各分割群について、旅行、日常、セレモニー毎の平均得点が算出される。そして、分割群毎に最高点のシーンにその分割群を分類することで、その分割群のシーンの種類を決定する。ここで、同点の場合には、優先シーンに分類するとする。例えば、本実施形態では、日常>セレモニー>旅行の順に、日常シーンの優先度が最も高く設定されている。図6(A)でシーン分割された後の分割群「5」は、撮影期間が36時間、撮影枚数が300枚、撮影人数の平均値が1.7人であったとする。そこで、旅行シーンについての得点が45.32、日常シーンについての得点が18.38、セレモニーについての得点が−29.92となる場合、分割群「5」は旅行シーンに分類される。
S408において、S406で分割された全シーンに対して、S407のシーン分類が終了したか否かを判定する。終了していないと判定された場合、S407に戻る。終了していると判定された場合、S409に進む。
S409において、画像得点化部207は、主人公設定を実行する。主人公設定は、ユーザが指定した画像群に対して実行され、自動での実行と手動での実行の2種類がある。自動で主人公を設定する場合、S404において実行された個人認識の結果と、S406において実行されたシーン分割の結果が用いられる。取得した結果から、画像群に登場する各個人IDの回数、各シーンに登場する各個人IDの回数、各個人IDが登場するシーンの回数等を取得することが可能であり、これらの情報から主人公を設定する。本実施形態では、画像群にシーンが複数ある場合、複数のシーンに登場する個人IDが主人公IDとして設定され、画像群が単一シーンで構成される場合、登場回数が多い個人IDが主人公IDとして設定される。
手動で主人公を設定する場合、ユーザにより指定されている主人公設定アイコン304の個人IDが、主人公情報入力部206を介して画像得点部207に出力される。ユーザにより指定された個人IDがある場合には、上記で説明した自動設定の主人公IDは無視され、ユーザにより指定された個人IDが主人公IDとして設定される。
S410において、画像得点化部207は、得点化を実行する。図10は、画像のレイアウトに用いるテンプレート群を示している。テンプレート1005は1枚のテンプレートを示し、メインスロット1002はメインスロットを示し、サブスロット1003と1004はサブスロットを示している。メインスロット1002は、テンプレート1005内でメインとなるスロット(画像をレイアウトする枠)であり、サブスロット1003及び1004よりもサイズが大きいという特徴がある。得点化は、メインスロット用の得点とサブスロット用の得点の両方を各画像に対して付与するように行われる。
図8(A)は、旅行、日常、セレモニーの各シーンについて、アルバムに採用する画像の特徴をメインスロットとサブスロットに分けて定義した情報を示す図である。画像得点化部207は、図8(A)に示す各シーンのメインスロットとサブスロットの各特徴に適合するとユーザが判定した複数の画像を予め集めておく。画像得点化部207は、集めておいた各画像の顔の数、顔の位置、顔のサイズの特徴を収集し、平均値と標準偏差を各シーン各スロット(メインスロットとサブスロット)に対して求め、アルバム作成アプリケーションのプログラムに記憶しておく。ここで、ユーザが指定した画像群の各画像がどのシーンに属するかについては、S407のシーン分類の結果から取得される。注目画像のシーンに対応する予め求めておいた平均値と標準偏差、および注目画像の主人公IDの顔数、顔位置、顔サイズの各特徴量に対して式(3)及び(4)により得点と平均得点を算出する。
得点=50−|10×(平均値−特徴量)/標準偏差| ・・・(3)
平均得点=(顔数の得点+顔位置の得点+顔サイズの得点)/特徴量項目数 ・・・(4)
得点化は、メインスロット用とサブスロット用の両方について行われる。ここで、アルバムに用いられる画像はピントが合っている方が好ましいので、図5に示すピントの特徴量が「○」である画像IDの画像については、得点を所定量、加算するようにしても良い。
図8(B)は、上記の説明の得点化による得点結果の一例を示しており、各画像IDに対して、メインスロットとサブスロットについての得点化が行われている。
S411において、ユーザにより指定された画像群の全画像に対してS410の画像得点化が終了したか否かが判定される。終了していないと判定された場合、S410に戻る。終了していると判定された場合、S412に進む。
S412において、画像分類部205は、S406でのシーン分割の分割数が見開き数入力部208から入力される見開き数と同じであるか否かを判定する。同じでないと判定された場合、S413に進む。同じであると判定された場合、S416に進む。例えば、図6(A)のシーン分割数は8であり、見開き数入力部208の入力数が8であれば、S416に進む。
S413において、画像分類部205は、S406でのシーン分割の分割数が見開き数入力部208から入力される見開き数より少ないか否かを判定する。少なくないと判定された場合、S415に進む。少ないと判定された場合、S414に進む。例えば、図6(A)のシーン分割数は8であり、見開き数入力部208の入力数が10であれば、S414に進む。
S414において、画像分類部205は、「シーン分割数<見開き数」となっている現在の分割されたシーンを更に細分割するサブシーン分割を行う。ここでは、図6(A)のシーン分割数8に対して指定見開き数が10の場合を一例として説明する。図6(B)は、図6(A)にサブシーン分割を行った結果を示している。2と3の間の矢印、6と7の間の矢印の箇所で分割したことにより、分割数が10になっている。
分割の基準は、以下のとおりである。図6(A)の各分割の中で画像枚数が多い分割群を探す。ここでは、分割数を8から10に2箇所増やすために、画像枚数が多い2箇所を決定する。ここでは、画像枚数が多い方から、まず分割群「5」が決定される。次に、分割「1」と「2」は同じ枚数であるが、分割群「2」の方が最初の画像から最後の画像までの時間差が大きいので、分割群「2」が分割対象として決定される。
分割群「5」と「2」をそれぞれ分割する。まず、分割群「2」の分割を説明する。分割群「2」には、画像枚数の山が2つあり、この2つは、撮影日が異なる。よって、図6(B)の破線矢印の箇所で分割する。次に、分割群「5」には、画像枚数の山が3つあり、3日間連続している。つまり、撮影日が変わる箇所が2箇所あるが、分割後の枚数差が小さくなるように分割する。よって、図6(B)の破線矢印の箇所で分割する。
以上のように、分割数を8から10にする。ここでは、撮影日の異なる箇所で分割したが、画像枚数が多い箇所が単一日である場合には、単一日の中で時間差が最大の箇所で分割する。
S415において、画像分類部205は、「シーン分割数>見開き数」となっている現在の分割されたシーンを統合するシーン統合を行う。ここでは、図6(A)のシーン分割数8に対して指定見開き数が6の場合を一例として説明する。図6(C)は、図6(A)にシーン統合を行った結果を示している。破線の箇所を統合したことで、分割数が6になっている。
統合の基準は、以下のとおりである。図6(A)の各分割群の中で画像枚数が少ない分割群を探す。ここでは、分割数を8から6に2箇所減らすために、画像枚数が少ない2箇所を決定する。ここでは、画像枚数が少ない方から、まず分割群「8」が決定される。次に、分割群「3」と「7」は同じ枚数であるが、分割群「7」に隣接する分割群「8」が既に統合対象であるので、分割群「3」が統合対象として決定される。
分割群「8」と分割群「3」をそれぞれ統合する。まず、分割群「3」の統合を説明する。分割群「3」の前後の分割群「2」と「4」との時間差を比較すると、分割群「4」の方が時間差が小さいので、分割群「4」に統合する。よって、図6(C)の破線の箇所で統合する。次に、分割群「8」は、後続する分割群がないので、前段の分割群「7」と統合する。よって、図6(C)の破線箇所で統合する。
S416において、見開き割当部209は、見開き割当を実行する。S412〜S415によって、シーン分割数と指定見開き数は同じ数になっている。よって、撮影日時的に先頭の分割を見開きの先頭に割り当て、後続する分割群を、後続する見開きに順に割り当てていく。
S417において、画像選択部210は、画像選択を行う。ここでは、ある見開きに割り当てられた分割群から画像を4枚選択する例を、図9を参照しながら説明する。
図9(A)は、見開きに割り当てられた分割群の撮影日時が最初の画像から最後の画像までの時間差(分割撮影期間)を示している。図9(B)により、1枚目を選択する方法を説明する。テンプレートには1枚のメインスロット1002がある。1枚目はメインスロット用の画像を選択する。図9(B)に示す分割撮影期間に対応する画像のうちS410で付与したメインスロット用の得点が最高点である画像を選択する。2枚目以降は、サブスロット用の画像を選択する。
画像選択は、分割撮影期間の一部に集中しないように、以下のように、分割撮影期間を細分化するように行われる。まず、図9(C)のように、分割撮影期間を2分割する。次に、図9(D)のように1枚目が選ばれていない実線の分割撮影期間から2枚目を選択する。実線の分割撮影期間に対応する画像のうちサブスロット用の得点が最高点の画像を選択する。次に、図9(E)のように図9(D)の各分割撮影期間を2分割する。図9(F)のように1枚目と2枚目が選ばれていない実線の分割撮影期間に対応する画像のうちサブスロット用の得点が最高点の画像を3枚目として選択する。
次に、画像を選択する分割撮影期間に画像が存在せず、画像選択できない例を4枚目の選択を例として説明する。図9(G)のように、まだ画像が選ばれていない斜線の分割撮影期間から4枚目を選択したいが、この斜線の分割撮影期間には画像が存在しない場合である。そこで、図9(H)のように各分割撮影期間を2分割する。次に、図9(I)のように1〜3枚目が選ばれていない実線の分割撮影期間に対応する画像のうちサブスロット用の最高点の画像を4枚目として選択する。
S418において、画像レイアウト部212は、画像レイアウトの決定を行う。テンプレート入力部211により、指定のテンプレート情報に従ってある見開きに対して図10のテンプレート1005〜1007が入力された例を説明する。入力されたテンプレートのスロット数は3である。選択されている画像3枚を撮影日時について並べると、図10(B)であったとする。ここでは、スロット1010がメインスロット用であり、スロット1008と1009がサブスロット用である。本実施形態では、テンプレートの左上に撮影日時がより古い画像、右下に撮影日時がより新しい画像がレイアウトされる。メインスロット用画像1010は撮影日時が一番新しいので、テンプレート1007が選択された画像に最も適したテンプレートとしてレイアウトが決定される。S418では、どの画像をどのテンプレートのどのスロットにレイアウトするかを識別できる情報が決定される。
S419において、画像補正部214は、画像補正を実行する。画像補正条件入力部213から画像補正がONで入力された場合、画像補正が実行される。本実施形態では、画像補正として、例えば、覆い焼き補正(輝度補正)、赤目補正、コントラスト補正が行われる。一方、画像補正条件入力部213から画像補正がOFFで入力された場合、画像補正は実行されない。例えば、補正する画像の画素数は短辺1200画素であり、sRGBの色空間に変換した画像に対して画像補正のON/OFFが設定される。
S420において、レイアウト情報出力部215は、レイアウト情報の作成を行う。レイアウト情報出力部215は、S418で決定されたテンプレートの各スロットに、S419の処理を介した画像をレイアウトする。このとき、レイアウト情報出力部215は、スロットのサイズ情報に合わせてレイアウトする画像を変倍してレイアウトする。レイアウト情報出力部215は、テンプレートに画像をレイアウトしたビットマップデータを生成する。
S421において、S417〜S20の処理が全ての見開きに対して終了したか否かが判定される。終了していないと判定された場合、S417に戻る。終了していると判定された場合、図4を終了する。
以下、画像を変倍してレイアウトする際のトリミングに関して詳細に説明する。S418で決定されたテンプレートの各スロットに割り当てた画像に対して、トリミング処理が実行される。
図11は、トリミング制御に関するブロック図である。図11の各ブロックは、例えば、図2のレイアウト情報出力部215内に構成される。以下、選択された図10のテンプレート1007のスロットに、画像1010をレイアウトするケースについて説明する。
画像取得部1101は、画像1005を取得する。顔情報取得部1102は、画像1005に対して画像解析部204により実行された顔検出結果を取得する。取得する顔検出結果は、顔の個数、顔のサイズ(幅、高さ)、顔の位置情報、個人認識されたID情報を含む。
シーン情報取得部1103は、画像1005に対して画像分類部205により実行されたシーン判定結果を取得する。スロット情報取得部1104は、S418で決定されたテンプレート内の画像を配置するスロットの情報を取得する。取得するスロットの情報は、スロットの幅、および高さを含む。
トリミング領域初期設定部1105は、取得されたスロット情報に基づいて、画像のトリミング領域の暫定位置を設定する。トリミング領域の暫定位置については図12で後述する。また、トリミング領域初期設定部1105は、スロット情報、即ちトリミング領域に基づいて画像の変倍率を算出し、算出した変倍率により画像を変倍する。
図12は、トリミング領域の設定を説明するための図である。幅1201は、変倍後の画像の幅を示し、高さ1202は、変倍後の画像の高さを示している。また、中心軸1203は、画像の中心軸を示している。
トリミング領域に基づいて画像の変倍率を求める他に、シーンに応じてトリミング領域のサイズを変更し、変更されたトリミング領域のサイズを用いて画像を変倍しても良い。例えば、旅行シーンの場合には、トリミング領域をスロット領域より小さくし、小さく変更されたトリミング領域のサイズを用いて画像を変倍する。そして、変更前のトリミング領域によりトリミングを行うようにすることで、倍率を低くして風景と人物が一緒にトリミングされ易くすることができる。また、日常シーンの場合には、トリミング領域をスロット領域より大きくし、大きく変更されたトリミング領域のサイズを用いて画像を変倍する。そして、変更前のトリミング領域によりトリミングを行うようにすることで、倍率を高くして人物がメインとしてトリミングされ易くすることができる。
幅1209は、初期トリミング領域1207の幅を示し、高さ1210は、初期トリミング領域1207の高さを示している。ここでは、トリミング領域は、幅と高さが等しい正方領域とする。初期トリミング領域1207は、デフォルトとして暫定的に設定されるトリミング領域の初期設定を示している。初期設定時には、配置する画像に含まれる顔領域が考慮され、つまり、図12の人物Aの顔の中心座標が初期トリミング領域1207の中心座標となるように、初期トリミング領域1207の位置が設定される。
ここでは、画像内に人物が1名写っている場合を例に説明する。中心座標1204は、検出された顔の中心座標(Fx、Fy)を示している。顔幅1205は、検出された顔の幅を示し、顔高さ1206は、検出された顔の高さを示している。ここでは、顔幅1205と顔高さ1206は、同じサイズとする。中心座標1204、顔幅1205、顔高さ1206は、倍率が変更された画像に合わせて変更された値である。
初期トリミング領域1207は、検出された顔の中心座標1204に対して、初期トリミング領域1207の中心位置が重なるように配置される。このように配置すると、初期トリミング領域1207が画像領域を超えてしまう場合、画像領域を超えないよう顔の中心座標1204とトリミング領域の中心位置の距離とがなるべく短くなるように初期トリミング領域1207の位置が調整される。
図11のトリミング領域移動部1106は、判定されたシーン分類結果に応じた移動量分、トリミング領域初期設定部1105により設定された初期トリミング領域1207を移動する。トリミング領域移動部1106には、画像分類部205により分類されたシーン分類結果(旅行、日常、結婚式など)が入力される。一般的に、旅行シーンでは行った先の風景や建物と人物を一緒に撮影するケースが多い。そのため、引きで撮影して画像の中心からずれた位置に人物を配置する構図が多い。図12で説明した初期トリミング領域1207により顔を中心としたトリミングを行うと、一緒に撮った風景や建物などが大幅に切れてしまうことになる。その結果、ユーザの意図を反映させたアルバム作成ができず、ユーザの満足度を低下させてしまう。
一方、日常シーンなどの場合、人物がメインで被写体となるケースが多い。そのため、初期トリミング領域1207により顔を中心としたトリミングを行った場合でも、ユーザに対して違和感を与えることなくトリミングを行うことができる。結婚式シーンなどの他のシーンの場合には、旅行シーンと日常シーンの間の構図となるようにトリミングを行う。本実施形態では、以上のように、撮影シーンを考慮して、初期トリミング領域1207を移動する。その結果、ユーザの意図を反映させたアルバム作成を行うことができる。
以下、初期トリミング領域1207の移動を撮影シーンに応じて移動する処理を説明する。本処理においては、図12の初期トリミング領域1207を中心軸1203の方向に移動する。まず、検出された顔幅1205、顔高さ1206の2倍のサイズを顔の中心座標1204に対して設定する。以下、そのサイズの領域を顔切れ判定領域とする。ここでは、顔切れ判定領域の設定を顔サイズの定数倍としているが、シーンに応じてサイズを変更するようにしても良い。例えば、旅行シーンの場合、顔以外の風景も入れるようにするために顔切れ判定領域を小さく設定し、それ以外のシーンの場合、大きく設定するようにしても良い。
次に、初期トリミング領域1207から顔切れ判定領域までの距離dを算出する。図12では、式(5)により距離dを算出する。
d=Fx−2×(FW/2) ・・・(5)
図12では、横方向の移動のみを説明しているが、縦方向の移動であっても同様に距離dが算出可能である。算出された距離dに対して、シーンを考慮した移動量を式(6)により算出する。
ds=d×Rate_s ・・・(6)
Rate_sはシーンから設定される移動量の重みである。移動量の重みは、旅行シーンの場合には移動量が大きくなるように、また、それ以外のシーンの場合には移動量が小さくなるように設定される。例えば、旅行シーンの移動量の重みは0.8、日常シーンの移動量の重みは0、それ以外のシーンの移動量の重みは0.4と設定される。また、旅行以外のシーンに対して、それぞれ個別の重みを設定するようにしても良い。また、シーン判定時に、信頼度が算出される場合は、その信頼度に応じて移動量dsを調整するようにしても良い。例えば、信頼度が高い場合には、算出した移動量dsをそのまま採用し、信頼度が低い場合は、移動量dsにバイアスをかけて移動量を少なくする。上記のような手順により算出された移動量を用いて、初期トリミング領域1207からds分移動したトリミング領域1208を最終的なトリミング領域として決定する。
トリミング処理部1107は、トリミング領域移動部1106で移動したトリミング領域に基づいて画像をトリミングする。
図13は、トリミング処理を示すフローチャートである。図13の処理は、図4のS420において行われる。
S1301において、画像取得部1101は、選択されたテンプレート内の指定スロットにトリミングして配置する画像を取得する。S1302において、顔情報取得部1102は、配置する画像内に含まれる顔情報を取得する。
S1303において、シーン情報取得部1103は、配置する画像に関するシーンの種類の判定結果を取得する。具体的には、該画像が含まれる画像群(シーン)に対して、S407で決定されたシーンの種類が取得される。S1304において、スロット情報取得部1104は、選択されたテンプレート内で画像を配置するスロットの情報を取得する。
S1305において、トリミング領域初期設定部1105は、スロット情報に基づいて、配置する画像および顔情報を変倍する。そして、トリミング領域初期設定部1105は、配置される画像内の顔位置とトリミング領域(スロット情報)の中心が一致するように初期トリミング領域1207を暫定的に設定し、初期トリミング領域1207と顔切れ判定領域との距離dを算出する。
S1306において、トリミング領域移動部1106は、S1303で取得されたシーンの種類の判定結果に応じて、初期トリミング領域1207の移動量を変更する。ここでは、旅行シーン、日常シーン、その他のシーンに応じて、初期トリミング領域1207の移動量を変更する。
シーン判定結果により日常シーンと判定されている場合、S1307において、トリミング領域と顔切れ判定領域との距離dに対して、重みRate_sが例えば0にセットされ、移動量dsが算出される。ここでは、重みRate_sが0であるので、移動量dsは0である。そして、移動量dsに基づいて、初期トリミング領域1207が移動され、最終的なトリミング領域が設定される。
シーン判定結果によりその他のシーンと判定されている場合、S1307において、トリミング領域と顔切れ判定領域との距離dに対して、重みRate_sが例えば0.4にセットされ、移動量dsが算出される。そして、移動量dsに基づいて、初期トリミング領域1207が移動され、最終的なトリミング領域が設定される。
シーン判定結果により旅行シーンと判定されている場合、S1307において、トリミング領域と顔切れ判定領域との距離dに対して、重みRate_sが例えば0.8にセットされ、移動量dsが算出される。そして、移動量dsに基づいて、初期トリミング領域1207が移動され、最終的なトリミング領域が設定される。
S1310において、トリミング処理部1107は、設定されたトリミング領域に基づいて画像をトリミングする。
本実施形態では、画像分類部206により行われたシーン分類結果に応じて、トリミング領域を設定する処理について説明した。しかしながら、シーン設定については、他の方法でシーンを設定するようにしても良い。例えば、ユーザ手動によりUI上でシーンを設定するようにしても良い。また、テンプレートにシーン情報を関連付け、ユーザが選んだテンプレートからシーンを設定するようにしても良い。いずれの方法によっても、設定されたシーンに応じて、初期トリミング領域1207が移動量ds分移動し、最終的なトリミング領域が設定される。その結果、ユーザの意図を反映させたアルバム作成を行うことができる。
[第2の実施形態]
第2の実施形態では、画像内に複数個の顔が含まれる場合のトリミング方法について説明する。以下、第1の実施形態と異なる点について説明する。
図14は、トリミング制御に関するブロック図である。画像取得部1101、顔情報取得部1102、シーン情報取得部1103、スロット情報取得部1104、トリミング処理部1107については、図11における説明と同じであるので、その説明を省略する。顔選定部1401は、顔情報取得部1102により取得された顔の個数、各顔のサイズ、各顔の位置情報、各顔のID情報を用いて、取得した顔情報に基づいてトリミング領域内に含まれる顔を選定する。
図15は、顔選定部1401により顔を選定する処理を説明するための図である。ここでは、説明のために、顔が2個検出された場合を例として説明する。検出された顔の中心座標から、顔が分布する領域を判定する。ここでは、画像の中心軸1203より左側であるか、右側であるかで分布をグループ分けする。グループは、更に詳細に分けるようにしても良い。図15では、画像の左側に顔が集まっているので、それらの顔を1つのグループとして判定する。本実施形態では、顔選定部1401は、この判定されたグループに対して更に、トリミング領域を設定するための顔選定を行う。ここで、グループが複数判定されている場合には、グループ内に含まれる顔数が多いグループが顔選定を行う対象として決定されても良い。もしくは、主人公情報入力部206で設定された主人公の顔を含むか否かに応じて、顔選定を行うグループを決定するようにしても良い。
図15に示すように、人物A、人物Bの二人の顔が含まれている。中心座標1504は、人物Aに対して検出された顔中心座標(Fax、Fay)を表し、顔幅1505は、人物Aの顔幅を表し、顔高さは、人物Aの顔高さを表す。中心座標1511は、人物Bに対して検出された顔中心座標(Fbx、Fby)を表し、顔幅1512は、人物Bの顔幅を表し、顔高さ1513は、人物Bの顔高さを表す。
次に、人物Aと人物Bの各中心座標1504、1511から画像の中心軸1203までの最短距離を算出し、距離が遠い方の顔を選定する。図15の場合には、人物Aの顔が選定される。そして、後述する初期トリミング領域1207の設定は、この選定された顔に対して行われる。
本実施形態では、グループ内において、中心軸1203からより離れた顔を選定しているが、他の方法で選定するようにしても良い。例えば、顔のサイズが大きい方を選定するようにしても良いし、主人公と設定された顔を選定するようにしても良い。また、シーンに応じて選定する方法を変更するようにしても良い。例えば、旅行シーンの際には顔サイズが小さい方を選定し、日常シーンの際には顔サイズが大きい方を選定するようにしても良い。
図14のトリミング領域初期設定部1402は、顔選定部1401により選定された顔と、スロット情報取得部1104により取得されたスロット情報とに基づいて、初期トリミング領域1207の暫定位置を設定する。
図15において人物Aの顔が選定されると、トリミング領域初期設定部1402は、選定された人物Aの顔中心座標に対して、初期トリミング領域1207の中心位置が重なるように、初期トリミング領域1207を配置する。このように配置するとトリミング領域が画像領域を超えてしまう場合、画像領域を超えないよう顔の中心座標と初期トリミング領域1207の中心位置との距離がなるべく短くなるように初期トリミング領域1207の配置を調整する。
トリミング領域移動部1403は、トリミング領域初期設定部1402により設定された初期トリミング領域1207を、判定されたシーン分類結果に応じて移動する。その際人物Aの顔幅1505、顔高さ1506の2倍のサイズが、中心座標1504に対する顔切れ判定領域として設定される。その後、トリミング処理部1107により、初期トリミング領域1207の移動量が制御される。
図16は、本実施形態におけるトリミング処理を示すフローチャートである。S1601及びS1602は、S1301及びS1302における説明と同じであるので、その説明を省略する。S1603において、顔選定部1401は、トリミングする画像に含まれる顔情報に基づいて、初期トリミング領域1207の設定で用いる顔を選定する。
S1604及びS1605は、S1303及びS1304における説明と同じであるので、その説明を省略する。S1606において、トリミング領域初期設定部1402は、S1605で取得したスロット情報に基づいて、配置する画像および顔情報を変倍する。そして、トリミング領域初期設定部1402は、S1603で選定した顔に基づいて、初期トリミング領域1207を暫定的に設定し、初期トリミング領域1207と顔切れ判定領域との距離dを算出する。S1607〜S1611は、S1306〜S1310における説明と同じであるので、その説明を省略する。
以上のように、本実施形態によれば、複数の顔が画像に含まれていても、所定の条件を満たす顔を選定し、その選定された顔に基づいて、初期トリミング領域1207を設定し、また、最終的なトリミング領域を設定することができる。その結果、ユーザの意図を反映させたアルバム作成を行うことができる。
[第3の実施形態]
第3の実施形態では、シーンに応じて初期トリミング領域1207の中心位置を移動し、その後、最終的なトリミング領域を設定する方法について説明する。以下、第1および第2の実施形態と異なる点について説明する。
図17は、トリミング制御に関するブロック図である。画像取得部1101、顔情報取得部1102、シーン情報取得部1103、スロット情報取得部1104については、図11における説明と同じであるので、その説明を省略する。
トリミング領域中心設定部1705は、顔情報取得部1102により取得した顔情報に基づいて、トリミング領域の中心位置を設定する。ここでは、画像領域内に顔が1つ含まれる場合を説明する。
図18は、トリミング領域中心設定部1705によりトリミング領域を設定する方法を説明するための図である。顔情報取得部1102により取得した顔情報から、顔の中心座標1204が基準点として取得される。ここで、距離1805は、顔の中心座標1204から、顔中心と同じ高さとなる中心軸1203までの距離を表している。中心1806は、シーンに応じた基準点の移動後のトリミング領域の中心を表す。
本実施形態では、距離1805で表される距離Dをシーン判定結果に応じて変更する。シーンに応じた距離Dsは、式(7)により算出される。
Ds=D×Rate_s ・・・(7)
ここで、Rate_sは、シーンに対応する重みであり、例えば、旅行シーンでは0.8、日常シーンでは0、それ以外のシーンでは0.4と設定される。そして、顔の中心座標1204と中心軸1203とを結ぶ線上において、顔の中心座標1204から、式(7)により算出した距離Ds分離れた位置を移動後のトリミング領域の中心1806と設定する。例えば、日常シーンの場合、Rate_s=0であるので、距離Dsは0となり、移動後のトリミング領域の中心1806は、変わらず顔の中心座標1204となる。
図17のトリミング領域中心移動部1706は、上記の距離Ds分の基準点の移動を行う。
トリミング領域設定部1707は、トリミング領域中心移動部1706による移動後のトリミング領域の中心に基づいて、トリミング領域を設定する。トリミング領域設定部1707は、スロット情報取得部1104により取得したスロット情報に基づき変倍された画像の短辺に合わせてトリミング領域を設定する。図18では、画像の短辺が高さ1202であり、トリミング領域設定部1707は、高さ1202に合わせて矩形のトリミング領域を設定する。その際、移動後のトリミング領域の中心1806にトリミング領域の中心が重なるように、トリミング領域を設定する。トリミング領域1807は、トリミング領域設定部1707により設定されたトリミング領域である。
トリミング領域調整部1708の動作について説明する。上記のように、トリミング領域設定部1707によりトリミング領域を設定した際に、顔領域が切れてしまう場合がある。そのため、図19に示すように、トリミング領域調整部1708は、検出した顔サイズに基づいて、顔切れ判定領域1908を設定する。ここでは、顔切れ判定領域1908は、検出した顔幅1205、顔高さ1206の2倍のサイズを設定する。トリミング領域調整部1708は、トリミング領域内に顔切れ判定領域1908が収まるか否かを判定し、顔切れ判定領域1908が収まっていない、即ち、顔切れが発生していると判定された場合は、以下の処理を実行する。
図19において顔切れが発生すると判定された場合、画像の中央寄りにトリミング領域が設定されているということである。そこで、顔切れ判定領域1908において中心軸1203から最も離れた端辺と、その端辺から最短距離にあるトリミング領域の端辺とが重なるようにトリミング領域の位置を調整する。その結果、顔切れ判定領域1908が収まっている、即ち、顔切れが発生していない状態とすることができる。
上記では、画像内に顔が1つ含まれる場合を説明したが、顔が複数個含まれる場合であっても良い。その際、第2の実施形態で説明した処理により、顔を選定しても良い。つまり、中心軸1203から最も離れた顔を基準点として設定しても良い。また、複数の顔の重心位置を算出し、基準点として設定しても良い。また、複数の顔において主人公として指定された顔を基準点として設定しても良い。いずれの方法によっても、基準点がシーンに応じた距離分、移動され、移動後の点を中心としてトリミング領域が設定される。
図20は、本実施形態におけるトリミング処理を示すフローチャートである。S2001〜S2004は、S1301〜S1304における説明と同じであるので、その説明を省略する。S2005において、トリミング領域中心設定部1705は、取得した顔情報から基準点を設定する。S2006において、トリミング領域中心移動部1706は、取得したシーン判定結果に応じて処理を切り替える。ここでは、旅行シーン、日常シーン、その他のシーンに応じて、処理を切り替える。
日常シーンと判定された場合、S2007において、トリミング中心位置移動部1706は、顔の中心座標1204から中心軸1203までの距離Dに対して、重みRate_sが例えば0に設定され、式(7)により移動量Dsが算出される。そして、トリミング中心位置移動部1706は、顔の中心座標1204から距離Ds分離れた位置に、移動後のトリミング領域の中心を設定する。
その他のシーンと判定された場合、S2008において、トリミング中心位置移動部1706は、距離Dに対して、重みRate_sが例えば0.4に設定され、式(7)により移動量Dsが算出される。そして、トリミング中心位置移動部1706は、顔の中心座標1204から距離Ds分離れた位置に、移動後のトリミング領域の中心を設定する。
旅行シーンと判定された場合、S2009において、トリミング中心位置移動部1706は、距離Dに対して、重みRate_sが例えば0.8に設定され、式(7)により移動量Dsが算出される。そして、トリミング中心位置移動部1706は、顔の中心座標1204から距離Ds分離れた位置に、トリミング領域の中心を設定する。
S2010において、トリミング領域設定部1707は、S2004で取得したスロット情報に基づいて、画像の短辺に合わせてトリミング領域のサイズを決定する。トリミング領域設定部1707は、決定されたサイズのトリミング領域の中心と、S2007〜S2009で設定されたトリミング領域の中心とが一致するように、トリミング領域を設定する。
S2011において、トリミング領域調整部1708は、S2010で設定したトリミング領域により顔切れが発生しているかを判定する。顔切れが発生していないと判定された場合、図20の処理を終了する。顔切れが発生していると判定された場合、S2012へ進む。S2012において、トリミング領域調整部1708は、上述したように、トリミング領域を調整する。
以上のように、本実施形態によれば、第2の実施形態で説明したような初期トリミング領域を暫定的に設定することなく、最終的なトリミング領域を設定し、ユーザの意図を反映させたアルバム作成を行うことができる。
以上の各実施形態においては、アルバム作成アプリケーションを想定した例により説明したが、お勧め画像を自動選択するような他の画像選択処理に適用されても良い。また、画像処理装置100は、据え置き型のパーソナルコンピュータであると説明したが、携帯可能なスマートデバイスが画像処理装置100として用いられても良い。また、各実施形態は、ローカル環境を想定した構成において実行されるばかりでなく、例えば、サーバ内に保存されている画像を利用もしくは画像をアップロードすることにより、実行されても良い。
(その他の実施例)
本発明は、上述の実施形態の1以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。
100 画像処理装置: 101 CPU: 102 ROM: 103 RAM: 216 自動レイアウト処理部

Claims (16)

  1. レイアウトの対象となる画像を取得する取得手段と、
    前記取得手段により取得した画像において、前記画像が表すシーンの種類に応じて、トリミング領域の位置を決定する決定手段と、
    前記画像において、前記決定手段により決定した位置である前記トリミング領域をトリミングするトリミング手段と、を備え、
    前記決定手段は、
    前記画像に含まれる特定のオブジェクトの位置に基づきデフォルトトリミング領域の位置を決定し、
    前記画像が表すシーンの種類が第1種類の場合は、前記デフォルトトリミング領域の位置から前記第1種類に応じた第1移動量だけ移動させた位置を、前記トリミング領域の位置として決定し、
    前記画像が表すシーンの種類が前記第1種類と異なる第2種類の場合は、前記デフォルトトリミング領域の位置から、前記第1移動量と異なる、前記第2種類に応じた第2移動量だけ移動させた位置を、前記トリミング領域の位置として決定する、
    とを特徴とする画像処理装置。
  2. 前記第1移動量は0であり、前記第2移動量は0ではない値であることを特徴とする請求項1に記載の画像処理装置。
  3. 前記デフォルトトリミング領域は、特定のオブジェクトを中心に含むことを特徴とする請求項1又は2に記載の画像処理装置。
  4. 前記決定手段は、前記シーンの種類に応じて、前記トリミング領域が特定のオブジェクトを含むように前記トリミング領域の位置を決定することを特徴とする請求項1乃至3のいずれか1項に記載の画像処理装置。
  5. 前記画像に含まれる複数のオブジェクトから条件を満たすオブジェクトを前記特定のオブジェクトとして特定する特定手段、をさらに備えることを特徴とする請求項に記載の画像処理装置。
  6. 前記条件は、前記特定のオブジェクトの位置に関することを特徴とする請求項に記載の画像処理装置。
  7. 前記条件は、前記特定のオブジェクトの大きさに関することを特徴とする請求項又はに記載の画像処理装置。
  8. 前記特定のオブジェクトは、人物の顔を含むことを特徴とする請求項乃至のいずれか1項に記載の画像処理装置。
  9. 前記トリミング手段によりトリミングされた画像をレイアウトするレイアウト手段、をさらに備えることを特徴とする請求項1乃至のいずれか1項に記載の画像処理装置。
  10. 前記レイアウト手段は、前記トリミング手段によりトリミングされた画像を、テンプレート内のスロットにレイアウトすることを特徴とする請求項に記載の画像処理装置。
  11. 前記レイアウトの対象となる画像は、複数の画像から選択されることを特徴とする請求項1乃至10のいずれか1項に記載の画像処理装置。
  12. 前記複数の画像を解析することにより、当該複数の画像が表すシーンの種類を判定するシーン判定手段、をさらに備えることを特徴とする請求項11に記載の画像処理装置。
  13. 前記複数の画像の特徴量に基づいて得点化を行う得点化手段、をさらに備え、
    前記シーン判定手段は、前記得点化手段により得点化された得点に基づいて、前記複数の画像が表すシーンの種類を決定する、
    ことを特徴とする請求項12に記載の画像処理装置。
  14. 前記取得手段は、アルバム作成アプリケーションにおいてレイアウトの対象となる画像を取得することを特徴とする請求項1乃至13のいずれか1項に記載の画像処理装置。
  15. 画像処理装置において実行される方法であって、
    レイアウトの対象となる画像を取得する取得工程と、
    前記取得工程において取得した画像において、前記画像が表すシーンの種類に応じて、トリミング領域の位置を決定する決定工程と、
    前記画像において、前記決定工程において決定した位置である前記トリミング領域をトリミングするトリミング工程と、を有し、
    前記決定工程では、
    前記画像に含まれる特定のオブジェクトの位置に基づきデフォルトトリミング領域の位置を決定し、
    前記画像が表すシーンの種類が第1種類の場合は、前記デフォルトトリミング領域の位置から前記第1種類に応じた第1移動量だけ移動させた位置を、前記トリミング領域の位置として決定し、
    前記画像が表すシーンの種類が前記第1種類と異なる第2種類の場合は、前記デフォルトトリミング領域の位置から、前記第1移動量と異なる、前記第2種類に応じた第2移動量だけ移動させた位置を、前記トリミング領域の位置として決定する、
    とを特徴とする方法。
  16. 請求項1乃至14のいずれか1項に記載の画像処理装置の各手段としてコンピュータを機能させるためのプログラム。
JP2017049055A 2017-03-14 2017-03-14 画像処理装置、方法およびプログラム Active JP6902886B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2017049055A JP6902886B2 (ja) 2017-03-14 2017-03-14 画像処理装置、方法およびプログラム
US15/907,408 US10796405B2 (en) 2017-03-14 2018-02-28 Image processing apparatus and method, and non-transitory computer-readable storage medium storing program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2017049055A JP6902886B2 (ja) 2017-03-14 2017-03-14 画像処理装置、方法およびプログラム

Publications (3)

Publication Number Publication Date
JP2018151979A JP2018151979A (ja) 2018-09-27
JP2018151979A5 JP2018151979A5 (ja) 2020-04-23
JP6902886B2 true JP6902886B2 (ja) 2021-07-14

Family

ID=63520215

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2017049055A Active JP6902886B2 (ja) 2017-03-14 2017-03-14 画像処理装置、方法およびプログラム

Country Status (2)

Country Link
US (1) US10796405B2 (ja)
JP (1) JP6902886B2 (ja)

Families Citing this family (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6938422B2 (ja) 2018-04-23 2021-09-22 キヤノン株式会社 画像処理装置、画像処理方法、およびプログラム
JP7341677B2 (ja) 2019-02-28 2023-09-11 キヤノン株式会社 装置、方法、及びプログラム
JP7341676B2 (ja) 2019-02-28 2023-09-11 キヤノン株式会社 装置、方法、及びプログラム
JP7350495B2 (ja) 2019-02-28 2023-09-26 キヤノン株式会社 装置、方法、及びプログラム
JP7286393B2 (ja) * 2019-04-17 2023-06-05 キヤノン株式会社 画像処理装置、画像処理方法、及びプログラム
JP7286392B2 (ja) 2019-04-17 2023-06-05 キヤノン株式会社 画像処理装置、画像処理方法、及びプログラム
JP7418976B2 (ja) 2019-06-07 2024-01-22 キヤノン株式会社 学習方法
JP7414409B2 (ja) 2019-06-07 2024-01-16 キヤノン株式会社 学習方法
JP2021015346A (ja) * 2019-07-10 2021-02-12 キヤノン株式会社 情報処理方法、画像処理装置、及びプログラム
US11438466B2 (en) * 2019-12-19 2022-09-06 HCL Technologies Italy S.p.A. Generating an automatic virtual photo album
JP7443100B2 (ja) 2020-03-10 2024-03-05 キヤノン株式会社 電子機器、電子機器の制御方法、プログラムおよび記憶媒体
JP2022123210A (ja) 2021-02-12 2022-08-24 キヤノン株式会社 画像処理装置、画像処理装置の制御方法、及びプログラム
JP2022123213A (ja) 2021-02-12 2022-08-24 キヤノン株式会社 画像処理装置、画像処理装置の制御方法、及びプログラム
JP2022123209A (ja) 2021-02-12 2022-08-24 キヤノン株式会社 画像処理装置、画像処理方法、及びプログラム
JP2023021794A (ja) 2021-08-02 2023-02-14 キヤノン株式会社 画像処理装置、画像処理方法、及びプログラム
JP2023067164A (ja) 2021-10-29 2023-05-16 キヤノン株式会社 画像処理装置及び画像処理方法
JP2023067166A (ja) 2021-10-29 2023-05-16 キヤノン株式会社 画像処理装置及び画像処理方法

Family Cites Families (37)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4208333B2 (ja) 1999-03-19 2009-01-14 キヤノン株式会社 画像処理装置、画像処理システム、画像処理方法、及び記憶媒体
US7006668B2 (en) 1999-12-28 2006-02-28 Canon Kabushiki Kaisha Image processing method and image processing apparatus
JP4095265B2 (ja) 2001-09-06 2008-06-04 キヤノン株式会社 画像処理装置、画像処理方法、コンピュータ読み取り可能な記憶媒体、及びコンピュータプログラム
US8102558B2 (en) 2002-08-05 2012-01-24 Canon Kabushiki Kaisha Image supply apparatus, control method therefor, and printing system
US7432985B2 (en) 2003-03-26 2008-10-07 Canon Kabushiki Kaisha Image processing method
JP2007116658A (ja) * 2005-09-26 2007-05-10 Fujifilm Corp 画像集作成システム、画像集作成方法および画像集作成プログラム
JP4926568B2 (ja) 2006-06-29 2012-05-09 キヤノン株式会社 画像処理装置、画像処理方法、及び画像処理プログラム
JP4637063B2 (ja) 2006-07-04 2011-02-23 キヤノン株式会社 画像処理装置、画像処理方法およびプログラム
JP4632452B2 (ja) 2006-07-07 2011-02-16 キヤノン株式会社 画像補正処理装置、画像補正処理方法、プログラム及び記憶媒体
JP4683339B2 (ja) * 2006-07-25 2011-05-18 富士フイルム株式会社 画像トリミング装置
JP4837602B2 (ja) 2007-03-12 2011-12-14 富士フイルム株式会社 画像トリミング装置および方法並びにプログラム
JP5032911B2 (ja) 2007-07-31 2012-09-26 キヤノン株式会社 画像処理装置及び画像処理方法
JP5335501B2 (ja) 2009-03-18 2013-11-06 キヤノン株式会社 画像処理装置、画像処理方法およびプログラム
JP5183568B2 (ja) 2009-05-21 2013-04-17 キヤノン株式会社 画像処理装置及び方法、及びプログラムを記録した記憶媒体
JP5328505B2 (ja) 2009-06-18 2013-10-30 キヤノン株式会社 画像処理装置および画像処理方法
US8472076B2 (en) 2009-08-05 2013-06-25 Canon Kabushiki Kaisha Detecting and removing blur of a character by comparison with the original image after a thinning and fattening operation
JP5641782B2 (ja) 2010-05-24 2014-12-17 キヤノン株式会社 画像処理装置及び画像処理方法
JP6012310B2 (ja) 2012-07-09 2016-10-25 キヤノン株式会社 画像処理装置、画像処理方法、およびプログラム
JP5981789B2 (ja) * 2012-07-09 2016-08-31 キヤノン株式会社 画像処理装置、画像処理方法およびプログラム
JP5956860B2 (ja) 2012-07-09 2016-07-27 キヤノン株式会社 画像処理装置、画像処理方法、プログラム
JP6039942B2 (ja) 2012-07-09 2016-12-07 キヤノン株式会社 情報処理装置及びその制御方法及びプログラム
JP5993642B2 (ja) 2012-07-09 2016-09-14 キヤノン株式会社 情報処理装置及びその制御方法及びプログラム
KR101508977B1 (ko) * 2012-08-16 2015-04-08 네이버 주식회사 이미지 분석에 의한 이미지 자동 편집 장치, 방법 및 컴퓨터 판독 가능한 기록 매체
US20140078157A1 (en) * 2012-09-20 2014-03-20 Kabushiki Kaisha Toshiba Information processing apparatus and parallel processing method
US9088753B2 (en) 2013-01-11 2015-07-21 Canon Kabushiki Kaisha Image forming apparatus, luminance correction method, and storage medium storing program
JP6417154B2 (ja) 2014-08-27 2018-10-31 キヤノン株式会社 情報処理装置、情報処理方法、及びプログラム
JP6386841B2 (ja) 2014-09-12 2018-09-05 キヤノン株式会社 画像処理装置、プログラム、画像処理システム、及び、画像処理方法
JP6322099B2 (ja) 2014-09-12 2018-05-09 キヤノン株式会社 画像処理装置、及び、画像処理方法
JP2016063324A (ja) 2014-09-16 2016-04-25 キヤノン株式会社 画像処理装置、画像処理方法及びプログラム
JP6397284B2 (ja) 2014-09-16 2018-09-26 キヤノン株式会社 画像処理装置、画像処理方法及びプログラム
JP6478840B2 (ja) 2015-07-01 2019-03-06 キヤノン株式会社 画像処理装置および画像処理方法
JP6532398B2 (ja) * 2015-08-07 2019-06-19 キヤノン株式会社 画像処理装置、画像処理方法およびプログラム
JP6660119B2 (ja) 2015-08-07 2020-03-04 キヤノン株式会社 情報処理装置、情報処理方法、並びにプログラム
JP6525862B2 (ja) 2015-08-07 2019-06-05 キヤノン株式会社 画像処理装置、画像処理方法およびプログラム
JP6397382B2 (ja) * 2015-08-07 2018-09-26 キヤノン株式会社 情報処理装置及びその制御方法
JP6666046B2 (ja) 2016-04-25 2020-03-13 キヤノン株式会社 画像処理装置および画像処理方法
EP3239929B1 (en) 2016-04-27 2019-06-12 Canon Kabushiki Kaisha Image processing apparatus, image processing method and program

Also Published As

Publication number Publication date
US20180268520A1 (en) 2018-09-20
JP2018151979A (ja) 2018-09-27
US10796405B2 (en) 2020-10-06

Similar Documents

Publication Publication Date Title
JP6902886B2 (ja) 画像処理装置、方法およびプログラム
JP6938422B2 (ja) 画像処理装置、画像処理方法、およびプログラム
JP7224774B2 (ja) 画像処理装置、画像処理方法、及びプログラム
JP6711937B2 (ja) 画像処理装置、画像処理方法、及びプログラム
JP6525862B2 (ja) 画像処理装置、画像処理方法およびプログラム
JP6494504B2 (ja) 情報処理装置、制御方法およびプログラム
JP6862164B2 (ja) プログラム、画像処理装置、および画像処理方法
JP6723937B2 (ja) プログラム、画像処理装置、および画像処理方法
JP7286393B2 (ja) 画像処理装置、画像処理方法、及びプログラム
JP6532398B2 (ja) 画像処理装置、画像処理方法およびプログラム
JP7336211B2 (ja) 画像処理装置、制御方法、及びプログラム
JP6681192B2 (ja) 画像処理装置、画像処理方法、及びコンピュータプログラム
JP7027101B2 (ja) 情報処理装置、制御方法、及びプログラム
JP2020140555A (ja) 画像処理装置、制御方法、及びプログラム
JP2018124776A (ja) 情報処理装置、情報処理方法、及びプログラム
EP3128461B1 (en) Image processing apparatus, image processing method, and program
EP4024347A2 (en) Image processing apparatus, image processing method, and program
JP2021149195A (ja) プログラム、画像処理方法、及び画像処理装置
JP2021144618A (ja) 画像処理装置、画像処理方法、及びプログラム
JP2021149196A (ja) 画像処理装置、画像処理方法、及びプログラム
JP6700806B2 (ja) プログラム、情報処理装置および制御方法
JP6647039B2 (ja) 画像処理装置、画像処理方法、及びコンピュータプログラム
JP6700686B2 (ja) 画像処理装置およびアルバム作成方法およびプログラム
JP2021149194A (ja) プログラム、画像処理方法、及び画像処理装置
JP2020140556A (ja) 画像処理装置、制御方法、及びプログラム

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20200310

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20200310

RD01 Notification of change of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7421

Effective date: 20210103

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20210113

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20210224

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20210305

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20210428

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: 20210524

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20210622

R151 Written notification of patent or utility model registration

Ref document number: 6902886

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151