JP6031278B2 - 情報処理装置及びその制御方法及びプログラム - Google Patents

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

Info

Publication number
JP6031278B2
JP6031278B2 JP2012154007A JP2012154007A JP6031278B2 JP 6031278 B2 JP6031278 B2 JP 6031278B2 JP 2012154007 A JP2012154007 A JP 2012154007A JP 2012154007 A JP2012154007 A JP 2012154007A JP 6031278 B2 JP6031278 B2 JP 6031278B2
Authority
JP
Japan
Prior art keywords
information
evaluation
image
layouts
images
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
JP2012154007A
Other languages
English (en)
Other versions
JP2014016820A5 (ja
JP2014016820A (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 JP2012154007A priority Critical patent/JP6031278B2/ja
Priority to US13/934,001 priority patent/US20140009796A1/en
Publication of JP2014016820A publication Critical patent/JP2014016820A/ja
Publication of JP2014016820A5 publication Critical patent/JP2014016820A5/ja
Application granted granted Critical
Publication of JP6031278B2 publication Critical patent/JP6031278B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K15/00Arrangements for producing a permanent visual presentation of the output data, e.g. computer output printers
    • G06K15/40Details not directly involved in printing, e.g. machine management, management of the arrangement as a whole or of its constitutive parts
    • 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/46Colour picture communication systems
    • H04N1/56Processing of colour picture signals
    • H04N1/60Colour correction or control
    • H04N1/6011Colour correction or control with simulation on a subsidiary picture reproducer
    • H04N1/6013Colour correction or control with simulation on a subsidiary picture reproducer by simulating several colour corrected versions of the same image simultaneously on the same picture reproducer
    • 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/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1202Dedicated interfaces to print systems specifically adapted to achieve a particular effect
    • G06F3/1203Improving or facilitating administration, e.g. print management
    • G06F3/1204Improving or facilitating administration, e.g. print management resulting in reduced user or operator actions, e.g. presetting, automatic actions, using hardware token storing data
    • 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/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1202Dedicated interfaces to print systems specifically adapted to achieve a particular effect
    • G06F3/1203Improving or facilitating administration, e.g. print management
    • G06F3/1208Improving or facilitating administration, e.g. print management resulting in improved quality of the output result, e.g. print layout, colours, workflows, print preview
    • 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/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1223Dedicated interfaces to print systems specifically adapted to use a particular technique
    • G06F3/1237Print job management
    • G06F3/1242Image or content composition onto a page
    • 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/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1223Dedicated interfaces to print systems specifically adapted to use a particular technique
    • G06F3/1237Print job management
    • G06F3/1253Configuration of print job parameters, e.g. using UI at the client
    • G06F3/1257Configuration of print job parameters, e.g. using UI at the client by using pre-stored settings, e.g. job templates, presets, print styles
    • 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/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1278Dedicated interfaces to print systems specifically adapted to adopt a particular infrastructure
    • G06F3/1285Remote printer device, e.g. being remote from client or server
    • G06F3/1287Remote printer device, e.g. being remote from client or server via internet

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Processing Or Creating Images (AREA)
  • Editing Of Facsimile Originals (AREA)

Description

本発明は記憶管理された画像をテンプレートに従って配置する技術に関するものである。
画像をテンプレートに配置することで、フォトアルバムを作成する技術がある。また、ユーザの好みを考慮した画像を選択する方法がある。
特許文献1では、画像の表示回数が多いものや表示時間が長いものほど重要度が高い画像であると推定し、選択する手法もある。
特開2007-005886号公報
しかし、上述したこれまでの技術には以下の課題が存在する。
特許文献1のように、画像の閲覧回数、印刷回数、ピンぼけや色かぶりを用いた画像評価などの情報を用いてレイアウトを作成した場合、画像の評価値が機械的に決定される。その評価値が高い画像を用いてレイアウトを作成するため、画像の評価値がユーザの意図とは関係なく機械的に決定され、ある程度幅広い人の好みに合うレイアウトが作成できると言える。しかし、あくまで機械的な画像の評価に基づいて作成してしまうため、例えば旅行などにおいて特に思い出に残った場所であるかどうかなどの判断はできない。従って例えば特定の人たちで共有するアルバムを作成する場合に、所望のアルバムが作成できないことがある。
従って本発明の目的は、上記の問題を鑑みて、適切な画像を出力対象として選択することができる画像処理装置、画像処理方法、およびプログラムを提供することを目的とする。
この課題を解決するため、例えば本発明の情報処理装置は以下の構成を備える。すなわち、
画像がテンプレートに配置されることで得られるレイアウトを表示装置または印刷装置に出力する情報処理装置であって、
所定の画像群から、前記テンプレートに配置される複数の画像をランダムに選択することで、前記レイアウトを複数生成する生成手段と、
前記生成手段により生成された複数のレイアウトのそれぞれに配置される複数の画像のそれぞれに対するユーザによる評価を示す第1の情報が示す値に対する重みよりも大きな重み付けを、ユーザの指示に応じた前記複数の画像のそれぞれの表示または印刷の履歴に基づく第2の情報が示す値行って、当該第1の情報と第2の情報との両方に従って、前記複数のレイアウトを評価する評価手段と、
前記評価手段による評価に基づいて、前記複数のレイアウトのうちの出力対象のレイアウトを表示装置または印刷装置に出力して表示または印刷を実行させる出力手段と、を備える。
本発明によれば、適切な画像を出力対象として選択することができる。
本実施形態のソフトウェアを実行可能なハードウェア構成を示す図。 本実施形態の処理のソフトウェアブロック図。 画像解析処理のフローチャート。 画像解析処理のフローチャート。 人物グループ生成処理のフローチャート。 自動レイアウト提案処理のフローチャート。 人物グループの表示例を示す図。 サムネイル形式による画像群の表示例を示す図。 カレンダー形式による画像群の表示例を示す図。 画像解析した結果得られる属性情報の例を示す図。 画像解析結果の保存形式の例を示す図。 ユーザが手動入力可能な属性情報の例を示す図。 手動でお気に入り度を入力するためのUI例を示す図。 手動でイベント情報を入力するためのUI例を示す図。 手動で人物属性情報を入力するためのUI例を示す図。 顔の明るさと画像評価値の対応例を示す図。 レイアウトテンプレートの一例を示す図。 図17のレイアウトテンプレートの保持形式の例を示す図。 レイアウトテンプレートの一例を示す図。 図19のレイアウトテンプレートの保持形式の例を示す図。 第1の実施形態における自動レイアウト生成処理のフローチャート。 第1の実施形態における不要画像フィルタリング処理のフローチャート 自動トリミング処理の一例を示す図。 自動レイアウトを行う際のレイアウト評価値の例を示す図。 明るさ適正度の算出方法の説明図。 彩度適正度の算出方法の説明図。 トリミング欠け判定処理の説明図。 ぼかし処理後の輝度値の差と画像評価値の対応例を示す図。 自動レイアウト生成結果の表示例を示す図。 決定されたテーマと主人公情報の保持例を示す図。 生成した自動レイアウト情報の保持例を示す図。 嗜好性評価処理のフローチャート。 ユーザによる手動と自動のお気に入り度のバランス入力例を示す図。 自動お気に入り度の重みとユーザ設定値の対応例を示す図。 お気に入り度のプロット例を示す図。 相関係数と重みの対応例を示す図。 差分の平均値と重みの対応例を示す図。
以下、添付図面に従って本発明に係る実施形態を詳細に説明する。
[第1の実施形態]
以下では、デジタルカメラ等で撮像した画像群を記憶管理すると共に、その画像群を用いて自動でレイアウト出力物を生成するために、本発明における好適な第1実施形態について説明する。これはあくまで実施の1つの形態を例として示したものであり、本発明は以下の実施に限定されるものではない。
なお、本実施形態では簡単のため、レイアウト出力物として、1ページのコラージュ系出力物を想定するが、本発明を複数ページのアルバム出力に応用することも、当業者であれば容易に実現することができることは、言うまでもない。
<ハードウェア構成の説明>
図1は、第1の実施形態に係わる情報処理装置のハードウェア構成例を説明するブロック図である。同図において、100はCPU(中央演算装置)であり、本実施形態で説明する情報処理方法をプログラムに従って実行する。101はROMであり、CPU100により実行されるBIOSプログラムが記憶されている。102はRAMで、CPU100により実行されるOSやアプリケーションを記憶したり、CPU100による各種情報の一時的に記憶のためのワークメモリとしても機能する。103はハードディスク等の2次記憶装置であり、OS,各種アプリケーションを記憶保持機能、並びに、記憶管理対象の画像ファイルを格納する画像記憶機能、更には、画像解析結果を保存するデータベース機能として作用する記憶媒体である。104はディスプレイであり、本実施形態の処理結果をユーザに提示する装置である。該ディスプレイはタッチパネル機能を備えても良い。また、110は制御バス/データバスであり、上述の各部とCPU100とを接続する。このほかにユーザが画像補正の処理の指示等を入力するためのマウスやキーボードといった入力装置105によるユーザインタフェース(UI)も備える。
また、ハードウェア115は、内部撮像デバイス106を備えてもよい。該内部撮像デバイスで撮像された画像は、所定の画像処理を経た後、2次記憶装置103に保存される。また、画像データはインターフェース(IF108)を介して接続された外部撮像デバイス111から読み込んでも構わない。さらに、ハードウェア115は無線LAN(Local Area Network)109を備え、該LANはインターネット113に接続されている。該インターネットに接続された外部サーバー114より画像を取得することもできる。
最後に、画像等を出力するためのプリンタ112が、IF107を介して接続されている。なお、該プリンタはさらにインターネット上に接続されており、上記無線LAN109経由でプリントデータのやり取りをすることもできる。
<ソフトウェアのブロック図>
図2は本実施形態における基本ソフトウェア構成のブロック図になっている。
まずハードウェア115が取得する、デジタルカメラ等で撮像された画像データは、通常JPEG(Joint Photography Expert Group)等の圧縮形式になっている。そのため、画像コーデック部200は、該圧縮形式を解凍していわゆるRGB点順次のビットマップデータ形式に変換する。変換されたビットマップデータは、表示・UI制御部201に伝達され、ディスプレイ等の表示デバイス104上に表示される。
上記ビットマップデータは、さらに画像センシング部203に入力され、同部において、画像の様々な解析処理(詳細は後述)が行われる。上記解析処理の結果得られた画像の様々な属性情報は、所定の形式に従ってデータベース部202において、上述した2次記憶装置103に保存される。なお、以降においては、画像解析処理とセンシング処理は同義で扱う。
シナリオ生成部204では、ユーザが入力した様々な条件に応じて、自動で生成すべきレイアウトの条件を生成する(詳細は後述)。レイアウト生成部205では上記シナリオに従って、自動でレイアウトを生成する処理を行う。
生成したレイアウトは、レンダリング部206で表示用のビットマップデータを生成し、該ビットマップデータは表示・UI制御部201に送られ、結果がディスプレイに表示される。また、レンダリング結果はさらにプリントデータ生成部207に送られ、同部でプリンタ用コマンドデータに変換され、プリンタに送出される。
<処理のフローチャート>
また、以下に示すものは最も基本的な処理のフローチャートである。
図3および図4は、画像センシング部203のフローを示しており、複数の画像データ群を取得して、それぞれについて解析処理を施し、その結果をデータベースに格納するまでの処理の流れを示している。図5は、検出した顔位置情報に基づいて、同じ人物と思われる顔情報をグループ化するための処理の流れを示している。図6は、画像の解析情報およびユーザが入力した様々な情報に基づいて、レイアウト作成のためのシナリオを決定し、該シナリオに基づいて、自動でレイアウトを生成するための処理の流れを示している。以下では上記フローチャートに従って、それぞれの処理の説明をしてゆく。
<画像の取得>
まず図3のS301では、画像データ群の取得を行う。画像データ群の取得は、例えば、ユーザが、撮影画像が格納された撮像装置やメモリカードをハードウェア115に接続することで、該撮像画像を読み込むことができる。また、内部撮像装置で撮影され、2次記憶装置に保存されていた画像も、当然のことながら対象となる。あるいは、画像は無線LANを介して、インターネット上に接続された外部サーバー114等、ローカルハードウェア115以外の場所から取得をしてもよい。
画像データ群を取得すると、そのサムネイル群が図8および図9のようにUIに表示される。図8の801に示すように2次記憶装置内のフォルダ単位で画像のサムネイル802を表示してもよいし、図9に示すようにカレンダーのようなUI901で日付ごとに管理されていてもよい。なお、図9のカレンダー形式表示では、同日に撮影した画像の中の撮影時刻が最先のものが代表画像として表示されるものとしている。また、図9のUI901において、日付の部分902をクリックすれば、その日に撮影された画像が、図8のようなサムネイル一覧で表示される。
<バックグラウンドセンシング&DB登録>
次に図3のフローチャートにおいて、取得した画像データ群それぞれについて、解析処理および解析結果のデータベース登録を行う。
すなわち、S302において、アプリケーションは、新規で保存され未だセンシング処理が行われていない画像をサーチし、抽出された各画像について、コーデック部が圧縮データからビットマップデータに変換する。
次に、S303において、上記ビットマップデータに対して、各種センシング処理を実行させる。ここでいうセンシング処理には、図10に示されるような様々な処理を想定する。本実施形態では、センシング処理の例として、顔検出および顔領域の特徴量解析、画像の特徴量解析、シーン解析を挙げており、それぞれ同図に示すようなデータ型の結果を算出することになる。以下、それぞれのセンシング処理について説明する。
まず画像の基本的な特徴量である全体の平均輝度、平均彩度については、公知の方法で求めればよいため、詳細は割愛する。概要としては、画像の各画素について、RGB成分を公知の輝度色差成分(例えばYCbCr成分)に変換し(変換式省略)、Y成分の平均値を求めればよい。また、平均彩度については、上記CbCr成分について画素毎に次式Sを算出し、その平均値を求めればよい。
S=(Cb2+Cr21/2
また、画像の色合いを評価するための特徴量として、画像内の平均色相AveHを算出することも考えられる。各画素毎の色相は、公知のHIS変換式を用いて求めることができ、それらを画像全体で平均化することにより、AveHを求めることができる。
また、上記特徴量は、画像全体のみで算出する必要はない。例えば、画像を所定サイズの領域に分割し、各領域毎に算出することも考えられる。
次に、人物の顔検出処理について説明する。本実施形態で使用する人物の顔検出手法としては、すでに様々な手法が提案されている。例えば、特開2002-183731号公報によれば、入力画像から目領域を検出し、目領域周辺を顔候補領域としている。
該顔候補領域に対して、画素毎の輝度勾配、および輝度勾配の重みを算出し、これらの値を、あらかじめ設定されている理想的な顔基準画像の勾配、および勾配の重みと比較する。その時に、各勾配間の平均角度が所定の閾値以下であった場合、入力画像は顔領域を有すると判定する方法が記載されている。
また、特開2003-30667号公報によれば、まず画像中から肌色領域を検出し、同領域内において、人間の虹彩色画素を検出することにより、目の位置を検出することが可能であるとしている。
さらに、特開平8-63597号公報によれば、複数の顔の形状をしたテンプレートと画像とのマッチング度を計算する。該マッチング度が最も高いテンプレートを選択し、最も高かったマッチング度があらかじめ定められた閾値以上であれば、選択されたテンプレート内の領域を顔候補領域とする。同テンプレートを用いるこことで、目の位置を検出することが可能であるとしている。
さらに、特開2000-105829号公報によれば、まず、鼻画像パターンをテンプレートとし、画像全体、あるいは画像中の指定された領域を走査し最もマッチする位置を鼻の位置として出力する。次に、画像の鼻の位置よりも上の領域を目が存在する領域と考え、目画像パターンをテンプレートとして目存在領域を走査してマッチングをとり、ある閾値よりもマッチ度が度置きい画素の集合である目存在候補位置集合を求める。さらに、目存在候補位置集合に含まれる連続した領域をクラスタとして分割し、各クラスタと鼻位置との距離を算出する。その距離が最も短くなるクラスタを目が存在するクラスタと決定することで、器官位置の検出が可能であるとしている。
その他、顔および器官位置を検出する方法としては、特開平8-77334号公報、特開2001-216515号公報、特開平5-197793号公報、特開平11-53525号公報、特開2000-132688号公報、特開2000-235648号公報、特開平11-250267号公報がある。さらには特登録2541688号公報など、数多くの手法が提案されている。本実施形態では特に手法を限定はしない。
さて、上記処理の結果、各入力画像について、人物顔の個数と各顔毎の画像内における座標位置を取得することができる。また、画像中の顔座標位置が分かれば、該顔領域毎に顔領域内に含まれる画素値の平均YCbCr値を求めることにより、該顔領域の平均輝度および平均色差を得ることができる。
また、画像の特徴量を用いてシーン解析処理を行うことができる。シーン解析処理については、例えば、出願人が開示している特開2010-251999号公報や特開2010-273144号公報等で開示されている技術を利用してもよい。なお、ここでは両者の詳細説明は割愛する。上記シーン解析の結果、画像毎に、風景(Landscape)、夜景(Nightscape)、人物(Portrait)、露出不足(Underexposure)、その他(Others)、という撮影シーンを区別するためのIDを取得することができる。
なお、本発明については、上記に限定されるものではない。その他のセンシング情報を利用したとしても、本発明の範疇に含まれることは言うまでもない。
上記のようにして取得したセンシング情報を、データベース202に保存する。
データベースへの保存形式については、例えば図11に示すような汎用的なフォーマット(XML:eXtensible Markup Language)で記述し、格納することが考えられる。
同図においては、各画像毎の属性情報を、3つのカテゴリに分けて記述する例を示している。1番目のBaseInfoタグは、画像サイズや撮影時情報として、あらかじめ取得した画像ファイルに付加されている情報である。ここには、画像毎の識別子IDや、画像ファイルが格納されている保存場所及びファイル名、画像サイズ、撮影日時などが含まれる。
2番目のSensInfoタグは、上述した画像解析処理の結果を格納するためのタグである。画像全体の平均輝度、平均彩度、平均色相やシーン解析結果が格納され、さらに、画像中に存在する人物の顔位置や顔色に関する情報が記述可能である。
そして、3番目のUserInfoタグは、ユーザが画像毎に入力した情報を格納することができるが、詳細については後述する。
なお、画像属性情報のデータベース格納方法については、上記に限定されるものではない。その他公知のどのような形式であっても構わない。
<個人認識処理を用いた人物グルーピング>
次に、図3のS306において、S303で検出された顔位置情報を用いて、人物毎のグループを生成する処理を行う。あらかじめ人物の顔を自動でグループ化しておくことにより、その後ユーザが各人物に対して名前を付けていく作業を効率化することが可能となる。
ここでの人物グループ形成は、公知の個人認識技術を用いて、図5の処理フローにより実行する。
なお、個人認識技術は、主に顔の中に存在する眼や口といった器官の特徴量抽出と、それらの関係性の類似度を比較する、という二つの技術で構成されるが、その技術については、例えば特許第3469031号公報等で開示されているので、ここでの詳細な説明は省く。なお、上記は一例であって、本発明においては、そのいかなる公知の手法を用いても構わない。
図5は人物グループ生成処理S306の基本的なフローチャートである。
まず、S501で、2次記憶装置に保存されている画像を順次読み出してデコード処理を行う。さらにS502でデータベースS503にアクセスし、該画像中に含まれる顔の個数と顔の位置情報を取得する。次に、S504において、個人認識処理を行うための正規化顔画像を生成する。
ここで正規化顔画像とは、画像内に様々な大きさ、向き、解像度で存在する顔を切り出して、すべて所定の大きさと向きになるよう、変換して切り出した顔画像のことである。個人認識を行うためには、眼や口といった器官の位置が重要となるため、正規化顔画像のサイズは、上記器官が確実に認識できる程度であることが望ましい。このように正規化顔画像を用意することにより、特徴量検出処理において、様々な解像度の顔に対応する必要がなくなるという利点がある。
次に、S505で、正規化顔画像から顔特徴量を算出する。ここでの顔特徴量とは眼や口、鼻といった器官の位置、大きさや、さらには顔の輪郭などを含むことを特徴とする。
さらに、S506で、あらかじめ人物の識別子(ID)毎に用意されている顔特徴量を格納したデータベースS507(以降、顔辞書と呼ぶ)の顔特徴量と類似しているか否かの判定を行う。上記判定の結果Yesの場合、S509において同じ人物として、同じ人物の辞書IDに追加する。
S506の判定がNoの場合、現在評価対象となっている顔は、これまで顔辞書に登録された人物とは異なる人物であるとして、新規人物IDを発行して顔辞書S507に追加する。S502〜S509までの処理を、入力画像群の中から検出した顔領域全てに適用して、登場した人物のグループ化を行う。
グループ化の結果は、XMLフォーマットで各顔毎にIDタグを用いて記述し、上述したデータベースS304に保存しておく。
なお、上記実施形態においては、図3に示したように、画像のセンシング処理が終了した後に人物グループ生成処理を実行したが、本発明はこれに限定するものではない。例えば、図4に示すように、各画像に対してS403でセンシング処理を実行した後に、顔検出位置情報を利用してグループ化処理S405を行ったとしても、同様の結果を生成することができる。
また、上記の処理によって得られた各人物グループは、図7のようなUI701にて表示されることになる。同図において、702は人物グループの代表顔画像を表しており、その横には、該人物グループの名前を表示する領域703が存在する。自動の人物グループ化処理を終了した直後は、同図に示すように人物名は「No name」と表示されている。また、704は該人物グループに含まれる複数の顔画像が表示されている。後述するが、同図のUIにおいては、「No name」の領域703をポインティングデバイスで指定して、正式な人物名を入力したり、人物毎に誕生日や続柄等の情報を入力することができる。
また、上記センシング処理は、コンピュータ115を操作するユーザには気付かれないよう、オペレーティングシステムのバックグラウンドタスクを利用して実行しても良い。この場合、ユーザはコンピュータ上で別の作業を行っていたとしても、画像群のセンシング処理を継続させることができる。
<ユーザ情報の入力(人物名、誕生日、お気に入り度、など)>
本実施形態においては、ユーザが手動で画像に関する様々な属性情報を入力することも想定する。
その属性情報(以降、手動登録情報)の例の一覧を、図12に示す。手動登録情報は大きく、画像単位に設定するものと、上記処理によりグループ処理した人物に設定する情報に分かれる。
まず、画像単位に設定するものとして、ユーザのお気に入り度(第1の情報)がある。お気に入り度は、その画像を気に入っているかどうかを、ユーザがマウス等のポインティングデバイスで段階的に直接的に入力するものである。例えば図13に示すように、UI1301上で、所望のサムネイル画像1302をマウスポインタ1303で選択し、右クリックをすることでお気に入り度を入力できるダイアログを表示する。ユーザはメニューの中で自分の好みに応じて、★の数を選択することができる。一般的には、お気に入り度が高いほど★の数が多くなるよう設定する。そして、★の値に応じて0〜100までの点数をお気に入り度として設定する。このお気に入り度はユーザが明示的にマウスやキーボードから★の数を設定するので、「手動」によるものと言うことができる。
また、上記お気に入り度ではなく、ユーザが明示しなくても、どれだけその画像に関心があるかを示す「関心度」(第2の情報)もある。かかる関心度は、その画像の閲覧要求指示に起因するアクセスの回数や画像評価値などの要素を用いて算出する。閲覧回数としては例えば、ユーザが図8に示す画像サムネイル一覧表示の状態から、所望の画像ファイルをクリックし、1画像表示画面に遷移した場合における、そ遷移した回数である。そして、遷移回数によって0〜100までの点数を設定する。すなわち、閲覧した回数が多いほど、ユーザが該画像を気に入っていると判断することになる。この閲覧回数に代表される関心度は、先に示したお気に入り度と違って、アクセスする回数が上がるほど高い値となるものであって、アクセスにより自動的に更新されるものと言える。それ故、この関心度は、「自動なお気に入り度」と言い換えることもできる。
また、同様に画像の評価値も0〜100までの点数で算出する。例えば、人物の画像であれば顔の明るさを算出し、その値が図16のように良いとされる値であるなら良い画像であり、ユーザが気に入っているであろうとして高い得点を設定する。他にも画像がブレぼけを起こしているかを判定するために、画像にぼかし処理を行い、ぼかし処理後の画像と元画像との輝度値の差分をとることで良い画像であるか判定することも考えられる。図28のように差分が大きいほどぶれていないと判断し、良い画像であるとして高い得点を設定する。このように様々な手法を用いることで画像の評価値を算出する。
また他にも自動のお気に入り度(関心度)を算出する要素として、プリント回数を用いることもできる。プリント行為を行った場合、当然その画像を気に入っていると判断し、プリント回数を計測することで、よりお気に入り度が高いと判断することができる。
このように自動のお気に入り度の要素を全て0〜100までの点数で算出し、最後に各要素の平均値を求めることで自動のお気に入り度を決定する。これによって手動、自動ともに0〜100までの点数が設定されることになり、ユーザが意図的につけたものは何点なのか、自動によって機械的につけられた点数としては何点なのかが同じスケールでわかるようになる。
以上で説明したように、お気に入り度については、ユーザが手動で設定する方法と閲覧回数、画像評価値、あるいはプリント回数などの画像情報を基に自動で設定する方法がある。上記設定および計測した情報については、それぞれ個別に、図11で示すようなXMLフォーマットで、データベース202のUserInfoタグ内に該当する画像ファイル(図11では画像ファイル「IMG0001.jpg」)に関連付けられて格納される。例えば、お気に入り度はFavoriteRateタグで、閲覧回数はViewingTimesタグで、画像評価値はImageRateタグで、プリント回数はPrintingTimesタグでそれぞれ表わされる。
また、画像単位に設定する別の情報として、イベント情報が考えられる。イベント情報は、例えば、家族旅行“travel”であったり、卒業式“graduation”であったり、結婚式“wedding”であったりする。
イベントの指定は、図14で示すように、カレンダー上で所望の日付をマウスポインタ1402などで指定して、その日のイベント名を入力することが考えられる。指定されたイベント名は、画像の属性情報の一部として、図11で示すXMLフォーマットに含まれることになる。同図のフォーマットでは、UserInfoタグ内のEventタグを使って、イベント名と画像を紐付けている。
次に、別の手動設定情報である、人物属性情報について説明する。
図15は、人物の属性情報を入力するためのUIを示している。同図において、1502は所定人物(この場合は“father”)の代表顔画像を示している。また、1504には、他の画像の中から検出し、S506で顔特徴量が類似していると判断された画像の一覧が表示されている。
センシング処理が終了した直後は、図7に示したように各人物グループには名前が入力されていないが、「No name」の部分703をマウスポインタで指示することにより、任意の人物名を入力することができる。
また、人物毎の属性として、それぞれの人物の誕生日やアプリを操作しているユーザから見た続柄を設定することもできる。図15の人物の代表顔1502をクリックすると、画面下部に図示するように、クリックした人物の誕生日1505および続柄情報1506を入力することができる。
以上、入力された人物属性情報は、これまでの画像に紐付けられた属性情報とは異なり、XMLフォーマットによって、画像属性情報とは別にデータベース202内で管理されることになる。
<テンプレートの取得>
本実施形態においては、あらかじめ様々なレイアウトテンプレートが用意されていることを想定する。レイアウトテンプレートとは図17および図19に示すようなもので、レイアウトする用紙サイズ上に、複数の画像配置枠1702,1902(以降、スロットと同義)を配置した構成となっている。
このようなテンプレートは多数用意されており、あらかじめ本実施形態を実行するためのソフトウェアがコンピュータ115にインストールされた時点で、2次記憶装置に保存しておけばよい。また、その他の方法として、IF 107や無線LAN109を介して接続されたインターネット上に存在するサーバー114から、任意のテンプレート群を取得してもよい。
これらのテンプレートは汎用性の高いページ記述言語、例えば上述したセンシング結果の格納と同様にXMLで記載されていることが望ましい。XMLデータの例を図18および図20に示す。これらの図では、まずBASICタグにおいて、レイアウトページの基本的な情報を記述する。基本的な情報とは、例えば該レイアウトのテーマやページサイズ、およびページの解像度(dpi)等が考えられる。同図において、テンプレートの初期状態では、レイアウトテーマであるThemeタグはブランクとなっている。また、基本情報として、ページサイズはA4、解像度は300dpiを設定している。
また、以降は、上述した画像配置枠の情報をImageSlotタグで記述している。ImageSlotタグの中にはIDタグとPOSITIONタグの2つを保持し、画像配置枠のIDと位置を記述してある。該位置情報については、図17や図19で図示するように、例えば左上を原点とするX-Y座標系において定義されることとする。
また、上記ImageSlotは、その他にそれぞれのスロットに対して、スロットの形状および配置すべき推奨人物グループ名を設定することができる。例えば、図17のテンプレートにおいては、図18のShapeタグで示すように、すべてのスロットは矩形“rectangle”形状で、人物グループ名はPersonGroupタグによって“MainGroup”を配置することを推奨している。また、図19のテンプレートにおいては、図20に示すように、中央に配置しているID=0のスロットは矩形形状であることが記載されている。また、人物グループは“SubGroup”を配置し、その他のID=1,2と続くスロットは楕円“ellipse”形状で、人物グループは“MainGroup”を配置することを推奨している。
本実施形態においては、このようなテンプレートを多数保持することを推奨する。
<提案シナリオ決定(解決情報含む)>
上記のように、本実施形態で提示したアプリケーションは、入力された画像群に対して解析処理を実行し、人物を自動的にグループ化してUIで表示することができる。また、ユーザはその結果を見て、人物グループ毎に名前や誕生日などの属性情報を入力したり、画像毎にお気に入り度などを設定することができる。
さらにはテーマごとに分類された多数のレイアウトテンプレートを保持することができる。
以上の条件を満たすと、本実施形態のアプリケーションは、ある所定のタイミングに、自動的にユーザに好まれそうなコラージュレイアウトを生成し、ユーザに提示する処理を行う。これを、レイアウトの提案処理と呼ぶこととする。具体的には、情報処理装置のOSが起動すると、先ず、常駐アプリケーションプログラムが二次記憶装置からRAMにロードされ実行される。そして、その常駐アプリケーションが、人物や画像のデータベースにおける各種日付に関する情報を収集し、その中で現在の日時との差が予め設定され閾値以下となる日付を探し出し、そのような情報があるとシナリオの提案処理を行う。
図6は、該提案処理を行うための基本的なフローチャートを示している。
同図において、まずS601において、提案処理のシナリオを決定する。シナリオには、提案するレイアウトのテーマおよびテンプレートの決定、およびレイアウト内で重視する人物(主人公)の設定、およびレイアウト生成に用いる画像群の選定情報が含まれる。
以下では簡単のため、2つのシナリオについて例を記載する。
例えば、図15で自動グループ化されている人物“son”の1歳の誕生日が近いとする。この場合には、提案するレイアウトのテーマは成長記録“growth”と決定する。次にテンプレートの選択を行うが、この場合には成長記録に適した図19のようなものを選択し、図30に示すように、XMLのThemeタグの部分に“growth”と記載する。次にレイアウトを行う際に注目する主人公“MainGroup”として、“son”を設定する。また、レイアウトを行う際に副次的に注目する“SubGroup”として“son”と“father”を設定する。次に、レイアウトに利用するための画像群を選定する。この例の場合には、データベースS602を参照し、上記人物“son”の誕生日からこれまでに撮影した画像群のうち、“son”を含む画像群を大量に抽出してリスト化する。以上が、成長記録レイアウトのためのシナリオ決定である。
上記とは異なる例として、図14で登録したイベント情報から、例えば数日前に家族旅行に行きその画像が大量に2次記憶装置に保存されていることがわかると、シナリオ決定部は、家族旅行のレイアウトを提案するためのシナリオを決定する。この場合には、提案するレイアウトのテーマは旅行“travel”と決定する。次にテンプレートの選択を行うが、この場合には図17のようなレイアウトを選択し、図30に示したように、XMLのThemeタグの部分を今度は“travel”と記載する。次にレイアウトを行う際に注目する主人公“MainGroup”として、“son”、“mother”、“father”を設定する。このように、XMLの特性を活かせば、“MainGroup”として複数の人物を設定することができる。次に、レイアウトに利用するための画像群を選定する。この例の場合には、データベースS602を参照し、上記旅行イベントに紐付けられた画像群を大量に抽出してリスト化する。以上が、家族旅行レイアウトのためのシナリオ決定である。
<レイアウト生成処理(レイアウトテーマに応じた画像選択&配置)>
次に、図6のS603において、上述したシナリオに基づくレイアウトの自動生成処理を実行する。図21はレイアウト処理部の詳細な処理フローを示している。以降は、同図に沿って、各処理ステップの説明を行う。
同図では、まずS2101で、上述したシナリオ生成処理で決定され、テーマと人物グループ情報が設定された後のテンプレート情報を、S2102より取得する。
次に、S2103においては、上記シナリオで決定した画像リストS2106に基づいて、各画像毎に該画像の特徴量をデータベースS2104から取得し、画像群属性情報リストを生成する。ここでいう画像群情報リストとは、図11に示したIMAGEINFOタグが画像リスト分だけ並んだ構成となっている。以降ではこの画像属性情報リストに基づいて、S2105〜S2109における自動レイアウト生成処理を行う。
このように、本実施形態の自動レイアウト生成処理では、このように画像データそのものを直接扱うのではなく、あらかじめ画像毎にセンシング処理を行ってデータベース保存しておいた属性情報を利用する。この理由は、レイアウト生成処理を行う際に、画像データそのものを対象としてしまうと、画像群を記憶するために非常に巨大なメモリ領域を必要としてしまうことを避けることにある。
次に、S2105において、入力された画像群の属性情報を用いて、入力された画像群の中から不要画像のフィルタリングを行う。フィルタリング処理は、図22のフローにて行う。同図では、各画像毎に、まずS2201で全体の平均輝度がある閾値(ThY_LowとThY_Hight)内に含まれているかの判定を行う。否の場合にはS2206に進み、注目画像はレイアウト対象から除去する。
同様に、S2202〜S2205では、注目画像に含まれる顔領域それぞれについて、平均輝度、平均色差成分が、良好な肌色領域を示す所定閾値に含まれているかの判定を行う。S2202〜S2205のすべての判定がYesとなる画像のみ、以降のレイアウト生成処理に適用される。なお、このフィルタリング処理では、以降の一時レイアウト作成処理に明らかに不要と判断できる画像の除去を目的としているため、上記閾値は比較的湯緩やかに設定することが望ましい。例えばS2201の画像全体輝度の判定において、ThY_HighとThY_Lowの差が画像ダイナミックレンジに比して極端に小さいと、それだけYesと判定される画像が少なくなってしまう。本実施形態のフィルタリング処理ではそうならないよう、両者の差をできる限り広く設定し、かつ明らかに異常画像と判断されるものは除去できるような閾値に設定する。
次に図21のS2107において、上記処理でレイアウト対象となった画像群を用いて、大量(L個)の一時レイアウトを生成する。一時レイアウトは、取得したテンプレートの画像配置枠に対して、入力画像を任意に当てはめる処理を繰り返す。この時に、以下のパラメータをランダムで決定する。
・レイアウト中の画像配置枠がN個の時、画像群の中からどの画像を選択するか
・選択した複数の画像を、どの配置枠に配置するか
・配置した際に、どの程度のトリミング処理を行うかというトリミング率
ここで、トリミング率は例えば0〜100%で表わされ、画像の中心を基準として、図23のようにトリミングされる。同図において、2301は画像全体を示し、2302はトリミング率50%でトリミングした際の切り取り枠を示している。
上記の画像選択・配置・トリミング基準に基づいて、可能な限り数多くの一時レイアウトを生成する。生成した各一時レイアウトは、図31のXMLのように表わすことができる。各スロットに対して、選択され配置された画像のIDがImageIDタグで、トリミング率がTrimingRatioタグでそれぞれ記述されている。
なお、ここで生成する一時レイアウトの数Lについては、後述するレイアウト評価ステップでの評価処理の処理量と、それを処理するハードウェア115の性能に応じて決定されるが、例えば数十万通り以上の一時レイアウトを用意することが望ましい。生成したレイアウトは、それぞれIDを付加して図31のXML形式で2次記憶装置にファイル保存してもよいし、構造体など別のデータ構造を用いてRAM上に記憶してもよい。
次に、図21のS2108において、上記で作成したL個の一時レイアウトに対して、それぞれ所定のレイアウト評価量を用いて評価を行う。本実施形態におけるレイアウト評価量の一覧を、図24に示す。同図に示すように、本実施形態で用いるレイアウト評価量は、主に3つのカテゴリに分けることができる。
一つは、画像個別の評価量である。これは画像の明るさや彩度、ブレぼけ量等の状態を判断し、スコア化するものである。スコア化の一例を以下に示す。まず明るさの適正度については、図25に示すように、平均輝度がある所定レンジ範囲内においてはスコア値100とし、そこから外れてゆくとスコア値が下げるよう設定している。また、彩度の適正度については、図26に示すように、画像全体の平均彩度がある所定の彩度値より大きい場合にはスコア値100とし、所定値より小さい場合にはスコア値を除所に下げていくよう設定している。
二つ目の評価カテゴリは、画像とスロットの適合度の評価をスコア化するものである。例えば、人物適合度とは、スロットに指定されている人物と、実際に該スロットに配置された画像内に存在する人物の適合率を表したものである。例を挙げると、あるスロットが、XMLで指定されているPersonGroupで、“father”、“son”が指定されているものとする。この時、該スロットに割り当てられた画像に上記2人の人物が写っていたとすると、該スロットの人物適合度はスコア値100とする。もし片方の人物しか写っていなかったとすると、適合度はスコア値50になる。両者とも写っていなかった場合は、スコア値0になることは言うまでもない。ページ内の適合度は、各スロット毎に算出した適合度の平均値とする。
また別の画像・スロット適合度評価値として、トリミング領域2702の欠け判定が存在する。例えば、図27に示すように、画像中に存在する顔の位置2703が判明している場合、欠けた部分の面積に応じて、0から100までのスコア値を算出する。欠けた面積が0の場合、スコアは100とし、逆にすべての顔領域が欠けた場合、スコア値は0とする。
三つめの評価カテゴリは、レイアウトページ内のバランスを評価するものである。図24ではバランスを評価するための評価値をいくつか提示している。
まず、画像類似性について説明する。画像の類似性は、大量に生成した一時レイアウト毎に、それぞれの画像の類似性を算出する。例えば旅行テーマのレイアウトを作成したい場合、あまりに似通った類似度の高い画像ばかりが並んでいたとすると、それは良いレイアウトとは言えない。例えば、類似性は、撮影日時によって評価することができる。撮影日時が近い画像は、同じような場所で撮影された可能性が高いが、撮影日時が離れていれば、その分、場所もシーンも異なる可能性が高いからである。撮影日時は、図11で示したように、画像属性情報として、予めデータベース202に保存されている、画像毎の属性情報から取得することができる。撮影日時から類似度を求めるには以下のような計算を行う。例えば、今注目している一時レイアウトに4つの画像がレイアウトされているものとする。この時、この4つの画像間で、撮影時間間隔が最も短くなる値を算出する。例えば、30分が最も短い間隔であるとする。この間隔をMinIntervalとし、秒単位で格納する。すわなち30分=1800秒である。このMinIntervalをL個の各一時レイアウト毎に算出して配列stMinInterval[l]に格納する。次に、該stMinInterval[l]の中で最大値MaxMinInterval値を求める。すると、l番目の一時レイアウトの類似度評価値Similarity[l]は以下のようにして求めることができる。
Similarity[l] = 100×stMinInterval[l] / MaxMinInterval
すなわち、上記Similarity[l]は、最小撮影時間間隔が大きいほど100に近づき、小さいほど0に近づく値となっているため、画像類似度評価値として有効である。
次に、レイアウトページ内のバランスを評価するための評価量として、色合いのバラつきについて説明する。例えば旅行テーマのレイアウトを作成したい場合、あまりに似通った色(例えば、青空の青、山の緑)の画像ばかりが並んでいたとすると、それは良いレイアウトとは言えない。したがって、ここでは注目しているl番目の一時レイアウト内に存在する画像の平均色相AveHの分散を算出して、それを色合いのバラつき度tmpColorVariance[l]として格納する。次に、該tmpColorVariance[l]の中での最大値MaxColorVariance値を求める。すると、l番目の一時レイアウトの色合いバラつき度の評価値ColorVariance[l]は以下のようにして求めることができる。
ColorVariance[l] = 100 × tmpColorVariance[l] / MaxColorVariance
すなわち、上記ColorVariance[l]は、ページ内に配置された画像の平均色相のバラつきが大きいほど100に近づき、小さいほど0に近づく値となっているため、色合いのばらつき度評価値として有効である。
次に、レイアウトページ内のバランスを評価するための評価量として、顔の大きさのバラつき度について説明する。例えば旅行テーマのレイアウトを作成したい場合、レイアウト結果を見て、あまりに似通った顔のサイズの画像ばかりが並んでいたとすると、それは良いレイアウトとは言えない。レイアウト後の紙面上における顔の大きさが、小さいものもあれば大きいものもあり、それらがバランスよく配置されていることが、良いレイアウトと考える。その場合、注目しているl番目の一時レイアウト内に配置された後の顔の大きさ(顔位置の左上から右下までの対角線の距離)の分散値を、tmpFaceVariance[l]として格納する。次に、該tmpFaceVariance[l]の中での最大値MaxFaceVariance値を求める。すると、l番目の一時レイアウトの顔サイズバラつき度の評価値FaceVariance[l]は、以下のようにして求めることができる。
FaceVariance[l] = 100 × tmpFaceVariance[l] / MaxFaceVariance
すなわち、上記FaceVariance[l]は、紙面上に配置された顔サイズのバラつきが大きいほど100に近づき、小さいほど0に近づく値となっているため、顔サイズのバラつき度評価値として有効である。
またその他カテゴリとして、ユーザの嗜好性評価が考えられる。
以上説明したような、各一時レイアウト毎に算出した複数の評価値を、以下では統合化して、各一時レイアウト毎のレイアウト評価値とする。今、l番目の一時レイアウトの統合評価値をEvalLayout[l]とし、上記で算出したN個の評価値(図24の評価値それぞれを含む)の値をEvalValue[n]とする。この時、統合評価値は次式で求めることができる。
EvalLayout[l]=ΣEvalValue[n]×W[n]
ここで、Σはn=0,1,2,…,Nの合算演算記号を示す。また、W[n]は、図24で示したシーン毎の各評価値の重みである。該重みはレイアウトのテーマ毎に異なる重みを設定していることが特徴となっている。例えば、図24に示すようにテーマを成長記録“growth”と旅行“travel”で比較した場合、旅行テーマの方は、できるだけ良質の写真をいろいろな場面で数多くレイアウトすることが望ましい。そのため、画像の個別評価値やページ内のバランス評価値を重視する傾向にある。一方、成長記録“growth”の場合、画像のバリエーションよりは、成長記録の対象となる主人公が確実にスロットに適合しているか否かが重要である。そのため、ページ内バランスや画像個別評価よりも、画像・スロット適合度評価を重視する傾向にある。また他にも、テーマをお気に入り“favorite”にすることでユーザ嗜好性のみを評価値とすることもできる。
このようにして算出したEvalLayout[l]を用いて、S2109では、レイアウト結果表示のためのレイアウトリストLayoutList[k]を生成する。レイアウトリストは、予め定められた個数(例えば5個)に対して、EvalLayout[l]のうち、評価値が高いもの順に識別子lを記憶しておく。例えば最も良いスコアを出したものが、l=50番目に作成した一時レイアウトであった場合、LayoutList[0]=50となる。同様に、LayoutList[1]以降は、スコア値が2番目以降の識別子lを記憶しておく。
以上、図21のフローチャートに従った処理を説明した。
<レンダリング&表示>
次に、上記処理によって得られたレイアウト結果を、図6のS605でレンダリングして結果を図29のように表示する。S605では、まずLayoutList[0]に格納されているレイアウト識別子を読み出し、該識別子に相当する一時レイアウト結果を、2次記憶装置あるいはRAM上から読み出す。レイアウト結果には、上述したようにテンプレート情報と該テンプレート内に存在するスロット毎に、割り当てられた画像名が設定されている。S605ではこれらの情報に基づいて、コンピュータ115上で動作するOSの描画関数を用いて、該レイアウト結果をレンダリングし、図29のレイアウト枠2902のように表示することになる。

同図のNextボタン2904を押下することにより、次点スコアであるLayoutList[1]の識別子を読み出し、上記と同様にレンダリング後、表示を行うことで、ユーザは様々なバリエーションの提案レイアウトを閲覧することができる。また、Previousボタン2903を押下することにより、前に表示したレイアウトを再表示することもできる。さらに、表示されたレイアウトが気に入った場合には、プリントボタン2905を押下することで、コンピュータ115に接続されたプリンタ112からレイアウト結果2902をプリントアウトすることもできる。
以上の説明が、本実施形態における基本的な処理の流れである。
次に、上記実施形態のうち、本発明を実現するためのさらに細かい実施形態を追記してゆく。すなわち図21のS2108で行われるレイアウト評価における嗜好性評価の手法を、図32を基に詳述する。
まずS3201では、図21のS2105で行った不要画像のフィルタリングで残った全画像を対象にお気に入り度の取得を行う。お気に入り度は図12の画像の属性情報の例に示したようにユーザが手動で設定するお気に入り度と画像情報を基に自動で設定するお気に入り度があり、この両方を取得する。
次にS3202では、自動のお気に入り度の重みづけを行う。ここではユーザにどの程度自動を重視させたいかを入力させ、その結果に応じた重みAWを決定する。図33のようにユーザの好みが反映された手動のお気に入り度と機械的に決定される一般的な好みが反映された自動のお気に入り度をどのバランスで用いるかをスライドバーで入力させることによって、AWの値を図34に示すように決定する。これによって、ユーザがより多くの人が好むレイアウトを作成するよう入力を行えば、より自動のお気に入り度を重視する設定になる。
次にS3203では、画像1枚あたりの嗜好性評価を行う。なお、このときに先程のS3202で決定したAWを利用する。例えば、手動のお気に入り度が80点、自動のお気に入り度が60点という画像の場合、手動のお気に入り度ManualValue[j]に80点、自動のお気に入り度AutoValue[j]に60点を格納する。そしてAutoValue[j]にS3202で決定した重みづけを行い、合計点を、画像の重要度を表わす嗜好性評価値ImgValue[j]とする。つまり、画像の嗜好性評価は以下の式によって求めることができる。
ImgValue[j] = ManualValue[j] + AutoValue[j] × AW
このような手法を用いることにより、画像1枚の最終的な嗜好性評価を算出することができる。また、ManualValueとAutoValueのどちらの評価値も0~100と同じスケールにした上でAWを常に1.0よりも大きい値とすることで自動のお気に入り度を重視した嗜好性評価となる。
そして最後にS3204でレイアウト毎の嗜好性評価値を算出する。l番目の一時レイアウトされたM個の画像の評価値ImgValue[m]の合計値をtmpPalatability[l]として格納する。次に、該tmpPalatability[l]の中での最大値MaxPalatability値を求める。すると、l番目の一時レイアウトの嗜好性評価値Palatability[l]は以下のようにして求めることができる。
Palatability[l] = 100 × tmpPalatability[l] / MaxPalatability
すなわち、上記Palatability [l]は、紙面上に配置された全画像の嗜好性評価の合計値が高いほど100に近づき、低いほど0に近づく値となっているため、レイアウトの嗜好性評価値として有効である。このような手法により得られたレイアウトの嗜好性評価値を他のレイアウト評価値とともに用いてレイアウトを生成することによって、自動のお気に入り度を重視し、嗜好性を考慮したレイアウトを生成することができる。
なお、本実施形態では予め大量の一時レイアウトを作成し、レイアウト評価を行う際に嗜好性評価を行うという例を記したが、本発明はこれに限定するものではない。例えば、同様の手法を画像フィルタリングの時点で行い、評価の高い画像だけをレイアウト対象にするという手法を用いることも考えられる。
[第2の実施形態]
第2の実施形態では第1の実施形態との違いのみを表記する。すなわちS3202の自動のお気に入り度の重みづけの別の手法を説明する。本手法は手動で設定したお気に入り度と自動で設定したお気に入り度(関心度)の相関性から類似性を判定し、重みづけを行うという手法である。
画像のお気に入り度を取得した後、全画像の手動のお気に入り度と自動のお気に入り度の相関をとる。例えば、取得した画像群が図35のようにプロットされる画像群であるとする。これらの画像のお気に入り度の相関性があるかを判定するために相関係数rを求める。相関係数の詳細については通常用いられる式で求めることができるため省略する。相関係数の計算結果、rに正の相関がある際に類似性があると判定し、それに応じた重みAWを決定する。例えば図36のような相関係数とそれに対する重みである。このように相関性を判定することによって全画像に設定されている手動の値と自動の値の類似性がわかる。もし類似性がない場合はユーザが手動で設定したお気に入り度は一般的な評価とはずれているため、より自動を重視した評価を行わないと多くの人の好みに合うレイアウトが作成できないということになる。そのため、図36のように類似性が低い程、重みAWを高い値にする。後は第1の実施形態と同様の手法を行うことによって、ユーザの嗜好性を考慮したレイアウトを生成することができる。
本手法はあくまで類似性を利用するというものであり、類似性を求める際の計算方法は上記に限らない。例えば画像毎に手動の値と自動の値の差分をとり、全画像の差分の平均値を算出する。そして、その平均値が低ければ類似性があるとして、例えば図37のような重みと対応させるという手法を用いることも考えられる。
以上の実施形態では、ユーザによる指示による出力の履歴(閲覧回数)と、ユーザによる評価(お気に入り度)の両方を用いて、出力対象の画像を決定した。そのため、出力対象の画像を適切に決定することができる。なお、出力の履歴としては、閲覧回数に限らず、画像が印刷された印刷回数であってもよいし、また回数に限らず、出力条件でもよい。出力条件としては、画像が印刷されたときの印刷回数が挙げられる。例えば、印刷に用いられた用紙の種類により、ユーザの画像に対するお気に入り度を自動的に求めてもよい。
[その他の実施形態]
以上説明した実施形態は本発明の効果を得るための一手段であり、類似の別手法を用いたり、異なるパラメータを用いたとしても、本発明と同等の効果が得られる場合は、本発明の範疇に含まれる。
また、本発明は、複数の機器(例えばホストコンピュータ、インタフェイス機器、リーダ、プリンタ等)から構成されるシステムに適用しても、一つの機器からなる装置(例えば、プリンタ、複写機、ファクシミリ装置等)に適用しても良い。
また、本発明の目的は、以下によっても達成できる。まず、前述した実施形態の機能を実現するソフトウエアのプログラムコードを記録した記憶媒体(または記録媒体)を、システムあるいは装置に供給する。次に、そのシステムあるいは装置のコンピュータ(またはCPUやMPU)が記憶媒体に格納されたプログラムコードを読み出し実行すればよい。この場合、記憶媒体から読み出されたプログラムコード自体が前述した実施形態の機能を実現することになり、そのプログラムコードを記憶した記憶媒体は本発明を構成することになる。また、コンピュータが読み出したプログラムコードを実行することにより、前述した実施形態の機能が実現されるだけではない。例えば、そのプログラムコードの指示に基づき、コンピュータ上で稼働しているオペレーティングシステム(OS)などが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
さらに、まず、記憶媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張カードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれる。その後、該プログラムコードの指示に基づき、その機能拡張カードや機能拡張ユニットに備わるCPUなどが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。

Claims (21)

  1. 画像がテンプレートに配置されることで得られるレイアウトを表示装置または印刷装置に出力する情報処理装置であって、
    所定の画像群から、前記テンプレートに配置される複数の画像をランダムに選択することで、前記レイアウトを複数生成する生成手段と、
    前記生成手段により生成された複数のレイアウトのそれぞれに配置される複数の画像のそれぞれに対するユーザによる評価を示す第1の情報が示す値に対する重みよりも大きな重み付けを、ユーザの指示に応じた前記複数の画像のそれぞれの表示または印刷の履歴に基づく第2の情報が示す値行って、当該第1の情報と第2の情報との両方に従って、前記複数のレイアウトを評価する評価手段と、
    前記評価手段による評価に基づいて、前記複数のレイアウトのうちの出力対象のレイアウトを表示装置または印刷装置に出力して表示または印刷を実行させる出力手段と、
    を備えることを特徴とする情報処理装置。
  2. 前記評価手段は、前記第1の情報が示す値と前記第2の情報が示す値との相関係数に応じた重み付けを行うことを特徴とする請求項1に記載の情報処理装置。
  3. 前記評価手段は、前記相関係数が示す前記第1の情報が示す値と前記第2の情報が示す値の類似性が低いほど大きな重みに従って、前記第2の情報が示す値に重み付けを行うことを特徴とする請求項2に記載の情報処理装置。
  4. 前記評価手段は、ユーザの指示に応じて設定された、前記第1の情報が示す値に対する重みよりも大きな重みに従って、前記第2の情報が示す値に重み付けを行うことを特徴とする請求項1乃至3のいずれか1項に記載の情報処理装置。
  5. 前記第2の情報は、画像が表示または印刷された回数を示し、前記評価手段は、当該回数と、ユーザによる当該画像に対する評価の両方に基づき、前記複数のレイアウトのそれぞれに配置される前記複数の画像のそれぞれを評価し、前記複数の画像のそれぞれの評価に従って、前記複数のレイアウトを評価することを特徴とする請求項1乃至4のいずれか1項に記載の情報処理装置。
  6. 複数の画像における顔領域を解析することにより、複数の人物のそれぞれに対応する画像をデータベースに登録する登録手段を有し、
    前記所定の画像群は、前記登録手段により登録が行われた前記データベースにおいて、前記複数の人物のうちの所定の人物に対応する画像群であることを特徴とする請求項1乃至5のいずれか1項に記載の情報処理装置。
  7. ユーザにより前記複数の人物のそれぞれに対して設定されている日付と、現在の日付とに基づいて、前記複数の人物のうちの所定の人物に対応する画像群を、前記所定の画像群として選定する第1の選定手段を有することを特徴とする請求項6に記載の情報処理装置。
  8. ユーザにより日付に対して設定されたイベントに対応する画像群を前記所定の画像群として選定する第2の選定手段を有し、
    前記生成手段は、前記第2の選定手段により選定された前記画像群から選択された複数の画像を、前記画像群に対応するイベントに対応するテンプレートに配置することで、前記複数のレイアウトを生成することを特徴とする請求項1乃至7のいずれか1項に記載の情報処理装置。
  9. 前記出力手段は、前記評価手段による評価に対応する、前記複数のレイアウトの順序に従って、前記複数のレイアウトを前記表示装置に順次表示させることを特徴とする請求項1乃至8のいずれか1項に記載の情報処理装置。
  10. 前記出力手段は、ユーザによる指示に応じて、前記順序に従って前記複数のレイアウトを順次表示させることを特徴とする請求項9に記載の情報処理装置。
  11. 画像がテンプレートに配置されることで得られるレイアウトを表示装置または印刷装置に出力する情報処理装置の制御方法であって、
    所定の画像群から、前記テンプレートに配置される複数の画像をランダムに選択することで、前記レイアウトを複数生成する生成工程と、
    前記生成工程において生成された複数のレイアウトのそれぞれに配置される複数の画像のそれぞれに対するユーザによる評価を示す第1の情報が示す値に対する重みよりも大きな重み付けを、ユーザの指示に応じた前記複数の画像のそれぞれの表示または印刷の履歴に基づく第2の情報が示す値に行って、当該第1の情報と第2の情報との両方に従って、前記複数のレイアウトを評価する評価工程と、
    前記評価工程における評価に基づいて、前記複数のレイアウトのうちの出力対象のレイアウトを表示装置または印刷装置に出力して表示または印刷を実行させる出力工程と、
    を備えることを特徴とする制御方法。
  12. 画像がテンプレートに配置されることで得られるレイアウトを表示装置または印刷装置に出力する情報処理装置を、
    所定の画像群から、前記テンプレートに配置される複数の画像をランダムに選択することで、前記レイアウトを複数生成する生成手段と、
    前記生成手段により生成された複数のレイアウトのそれぞれに配置される複数の画像のそれぞれに対するユーザによる評価を示す第1の情報が示す値に対する重みよりも大きな重み付けを、ユーザの指示に応じた前記複数の画像のそれぞれの表示または印刷の履歴に基づく第2の情報が示す値に行って、当該第1の情報と第2の情報との両方に従って、前記複数のレイアウトを評価する評価手段と、
    前記評価手段による評価に基づいて、前記複数のレイアウトのうちの出力対象のレイアウトを表示装置または印刷装置に出力して表示または印刷を実行させる出力手段と、
    として機能させるためのプログラム。
  13. 前記評価手段は、前記第1の情報が示す値と前記第2の情報が示す値との相関係数に応じた重み付けを行うことを特徴とする請求項12に記載のプログラム。
  14. 前記評価手段は、前記相関係数が示す前記第1の情報が示す値と前記第2の情報が示す値の類似性が低いほど大きな重みに従って、前記第2の情報が示す値に重み付けを行うことを特徴とする請求項13に記載のプログラム。
  15. 前記評価手段は、ユーザの指示に応じて設定された、前記第1の情報が示す値に対する重みよりも大きな重みに従って、前記第2の情報が示す値に重み付けを行うことを特徴とする請求項12乃至14のいずれか1項に記載のプログラム。
  16. 前記第2の情報は、画像が表示または印刷された回数を示し、前記評価手段は、当該回数と、ユーザによる当該画像に対する評価の両方に基づき、前記複数のレイアウトのそれぞれに配置される前記複数の画像のそれぞれを評価し、前記複数の画像のそれぞれの評価に従って、前記複数のレイアウトを評価することを特徴とする請求項12乃至15のいずれか1項に記載のプログラム。
  17. 複数の画像における顔領域を解析することにより、複数の人物のそれぞれに対応する画像をデータベースに登録する登録手段を有し、
    前記所定の画像群は、前記登録手段により登録が行われた前記データベースにおいて、前記複数の人物のうちの所定の人物に対応する画像群であることを特徴とする請求項12乃至16のいずれか1項に記載のプログラム。
  18. ユーザにより前記複数の人物のそれぞれに対して設定されている日付と、現在の日付とに基づいて、前記複数の人物のうちの所定の人物に対応する画像群を、前記所定の画像群として選定する第1の選定手段を有することを特徴とする請求項17に記載のプログラム。
  19. ユーザにより日付に対して設定されたイベントに対応する画像群を前記所定の画像群として選定する第2の選定手段を有し、
    前記生成手段は、前記第2の選定手段により選定された前記画像群から選択された複数の画像を、前記画像群に対応するイベントに対応するテンプレートに配置することで、前記複数のレイアウトを生成することを特徴とする請求項12乃至18のいずれか1項に記載のプログラム。
  20. 前記出力手段は、前記評価手段による評価に対応する、前記複数のレイアウトの順序に従って、前記複数のレイアウトを前記表示装置に順次表示させることを特徴とする請求項12乃至19のいずれか1項に記載のプログラム。
  21. 前記出力手段は、ユーザによる指示に応じて、前記順序に従って前記複数のレイアウトを順次表示させることを特徴とする請求項20に記載のプログラム。
JP2012154007A 2012-07-09 2012-07-09 情報処理装置及びその制御方法及びプログラム Active JP6031278B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2012154007A JP6031278B2 (ja) 2012-07-09 2012-07-09 情報処理装置及びその制御方法及びプログラム
US13/934,001 US20140009796A1 (en) 2012-07-09 2013-07-02 Information processing apparatus and control method thereof

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2012154007A JP6031278B2 (ja) 2012-07-09 2012-07-09 情報処理装置及びその制御方法及びプログラム

Publications (3)

Publication Number Publication Date
JP2014016820A JP2014016820A (ja) 2014-01-30
JP2014016820A5 JP2014016820A5 (ja) 2015-08-27
JP6031278B2 true JP6031278B2 (ja) 2016-11-24

Family

ID=49878332

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2012154007A Active JP6031278B2 (ja) 2012-07-09 2012-07-09 情報処理装置及びその制御方法及びプログラム

Country Status (2)

Country Link
US (1) US20140009796A1 (ja)
JP (1) JP6031278B2 (ja)

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5993642B2 (ja) 2012-07-09 2016-09-14 キヤノン株式会社 情報処理装置及びその制御方法及びプログラム
JP5938379B2 (ja) * 2013-09-24 2016-06-22 富士フイルム株式会社 画像処理装置、画像処理方法、プログラムおよび記録媒体
WO2016017987A1 (en) 2014-07-31 2016-02-04 Samsung Electronics Co., Ltd. Method and device for providing image
KR102301231B1 (ko) * 2014-07-31 2021-09-13 삼성전자주식회사 영상 제공 방법 및 이를 위한 장치
JP6492849B2 (ja) * 2015-03-24 2019-04-03 富士ゼロックス株式会社 ユーザプロファイル作成装置、動画像分析装置、動画像再生装置、及びユーザプロファイル作成プログラム
JP6511951B2 (ja) * 2015-05-14 2019-05-15 富士ゼロックス株式会社 情報処理装置及びプログラム
EP3128461B1 (en) * 2015-08-07 2022-05-25 Canon Kabushiki Kaisha Image processing apparatus, image processing method, and program
JP6674798B2 (ja) * 2016-03-07 2020-04-01 富士フイルム株式会社 画像処理装置、画像処理方法、プログラムおよび記録媒体
JP7128665B2 (ja) * 2018-06-11 2022-08-31 富士フイルム株式会社 画像処理装置,画像処理方法ならびに画像処理プログラムおよびそのプログラムを格納した記録媒体
JP2020056839A (ja) * 2018-09-28 2020-04-09 パナソニック株式会社 撮像装置

Family Cites Families (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6453078B2 (en) * 1998-08-28 2002-09-17 Eastman Kodak Company Selecting, arranging, and printing digital images from thumbnail images
US7340676B2 (en) * 2000-12-29 2008-03-04 Eastman Kodak Company System and method for automatic layout of images in digital albums
US7190467B2 (en) * 2001-07-12 2007-03-13 Hewlett-Packard Development Company, L.P. Print option configurations specific to a service or device for printing in a distributed environment
US7327505B2 (en) * 2002-02-19 2008-02-05 Eastman Kodak Company Method for providing affective information in an imaging system
JP4280452B2 (ja) * 2002-03-19 2009-06-17 キヤノン株式会社 情報処理装置及びその制御方法及びそれを実現するプログラム
JP2004246868A (ja) * 2003-01-22 2004-09-02 Canon Inc 画像抽出方法及び該方法をコンピュータに実行させるプログラム
JP4578948B2 (ja) * 2003-11-27 2010-11-10 富士フイルム株式会社 画像編集装置および方法並びにプログラム
JP4455302B2 (ja) * 2003-12-25 2010-04-21 富士フイルム株式会社 画像編集装置および方法並びにプログラム
EP1844411A2 (en) * 2005-01-28 2007-10-17 Koninklijke Philips Electronics N.V. Dynamic photo collage
JP2006279119A (ja) * 2005-03-28 2006-10-12 Casio Comput Co Ltd 画像再生装置及びプログラム
US7801907B2 (en) * 2006-06-13 2010-09-21 Alamy Limited Assignment of a display order to images selected by a search engine
CN101388008A (zh) * 2007-09-14 2009-03-18 鹏智科技(深圳)有限公司 图片显示装置及其图片显示方法
US10916043B2 (en) * 2007-11-26 2021-02-09 Fraunhofer-Gesellschaft Zur Foerderung Der Angewandten Forschung E.V. Apparatus, method and computer program for generating a template for arranging at least one object at at least one place
JP2009177497A (ja) * 2008-01-24 2009-08-06 Olympus Corp コンテンツ処理装置、及びコンテンツ処理システム
JP5231827B2 (ja) * 2008-02-04 2013-07-10 富士フイルム株式会社 画像表示装置、表示制御方法及び表示制御プログラム
JP5388683B2 (ja) * 2009-05-12 2014-01-15 キヤノン株式会社 画像配置装置、画像配置方法、プログラム及び記憶媒体
JP2010267018A (ja) * 2009-05-13 2010-11-25 Canon Inc 情報処理装置及び情報処理方法
CN102804759B (zh) * 2009-06-24 2016-03-02 惠普开发有限公司 图像相册创建
US8781231B1 (en) * 2009-08-25 2014-07-15 Google Inc. Content-based image ranking
US8571331B2 (en) * 2009-11-30 2013-10-29 Xerox Corporation Content based image selection for automatic photo album generation
US20110213795A1 (en) * 2010-03-01 2011-09-01 Kenneth Kun Lee Automatic creation of alternative layouts using the same selected photos by applying special filters and/or changing photo locations in relation to creating the photobook
US9031961B1 (en) * 2011-03-17 2015-05-12 Amazon Technologies, Inc. User device with access behavior tracking and favorite passage identifying functionality
US8897485B2 (en) * 2012-06-29 2014-11-25 Intellectual Ventures Fund 83 Llc Determining an interest level for an image
US20140096075A1 (en) * 2012-10-01 2014-04-03 John Joseph King Method of and circuit for displaying images associated with a plurality of picture files

Also Published As

Publication number Publication date
US20140009796A1 (en) 2014-01-09
JP2014016820A (ja) 2014-01-30

Similar Documents

Publication Publication Date Title
JP5993642B2 (ja) 情報処理装置及びその制御方法及びプログラム
JP6031278B2 (ja) 情報処理装置及びその制御方法及びプログラム
JP6012310B2 (ja) 画像処理装置、画像処理方法、およびプログラム
JP6045232B2 (ja) 画像処理装置、画像処理方法、及びプログラム
JP5956860B2 (ja) 画像処理装置、画像処理方法、プログラム
JP5981789B2 (ja) 画像処理装置、画像処理方法およびプログラム
JP6039942B2 (ja) 情報処理装置及びその制御方法及びプログラム
JP6071289B2 (ja) 画像処理装置、画像処理方法、およびプログラム
JP6012309B2 (ja) 情報処理装置、情報処理方法、およびプログラム
JP6016489B2 (ja) 画像処理装置、画像処理装置の制御方法、プログラム
JP6071288B2 (ja) 画像処理装置、画像処理方法、及びプログラム
JP6071287B2 (ja) 画像処理装置、画像処理方法、及びプログラム
JP2015053541A (ja) 画像処理装置、画像処理方法、及びプログラム
JP6282065B2 (ja) 画像処理装置、画像処理方法、及びプログラム
JP6222900B2 (ja) 画像処理装置、画像処理方法およびプログラム
JP2015011557A (ja) 情報処理装置、情報処理方法及びプログラム
JP6168928B2 (ja) 画像処理装置、画像処理方法およびプログラム
JP6797871B2 (ja) プログラム

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20150709

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20150709

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20160615

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20160627

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20160823

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20161024

R151 Written notification of patent or utility model registration

Ref document number: 6031278

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151