JP2019016004A - 情報処理装置、情報処理装置の制御方法、およびプログラム - Google Patents
情報処理装置、情報処理装置の制御方法、およびプログラム Download PDFInfo
- Publication number
- JP2019016004A JP2019016004A JP2017130426A JP2017130426A JP2019016004A JP 2019016004 A JP2019016004 A JP 2019016004A JP 2017130426 A JP2017130426 A JP 2017130426A JP 2017130426 A JP2017130426 A JP 2017130426A JP 2019016004 A JP2019016004 A JP 2019016004A
- Authority
- JP
- Japan
- Prior art keywords
- image
- person
- images
- sub
- information processing
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T11/00—2D [Two Dimensional] image generation
- G06T11/60—Editing figures and text; Combining figures or text
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V20/00—Scenes; Scene-specific elements
- G06V20/30—Scenes; Scene-specific elements in albums, collections or shared content, e.g. social network photos or video
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V40/00—Recognition of biometric, human-related or animal-related patterns in image or video data
- G06V40/10—Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
- G06V40/16—Human faces, e.g. facial parts, sketches or expressions
- G06V40/172—Classification, e.g. identification
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/75—Indicating network or usage conditions on the user display
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2200/00—Indexing scheme for image data processing or generation, in general
- G06T2200/24—Indexing scheme for image data processing or generation, in general involving graphical user interfaces [GUIs]
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Multimedia (AREA)
- Health & Medical Sciences (AREA)
- General Health & Medical Sciences (AREA)
- Oral & Maxillofacial Surgery (AREA)
- Human Computer Interaction (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Processing Or Creating Images (AREA)
Abstract
【課題】既に作成されたレイアウトデータから、別の人物を主人公とするレイアウトデータを容易に作成することができる。【解決手段】画像群から所定数の画像が配置されたレイアウトデータを取得する取得手段と、画像群を複数のサブ集合に分割する分割手段と、レイアウトデータ内に配置されている画像のうち第一の人物を含む画像を入れ替える画像入替手段と、を備え、画像入替手段は、サブ集合内に、画像群に含まれる画像であって第一の人物とは異なる第二の人物が含まれる画像がある場合は、第一の人物が含まれる画像を第二の人物が含まれる画像に入れ替え、サブ集合内に、第二の人物が含まれる画像がない場合は、第一の人物が含まれる画像を第二の人物が含まれる画像に入れ替えない。【選択図】図6
Description
本発明は、フォトブックの作成を支援する情報処理装置、情報処理装置の制御方法、およびプログラムに関する。
近年、デジタルカメラやスマートフォンで撮影した画像から、画像を選択してフォトブック(以下、アルバムともいう)を作成するサービスが普及している。また、そのようなサービスの価格も下がってきている。このため、グループ旅行のように複数人が参加するイベントにおいて、イベントの参加者向けのフォトブックを作成し、該参加者にプレゼントすることが想定される。その場合、参加者全員に同じ内容のフォトブックを配布するのではなく、受け取る人を主人公として作成された個別のフォトブックを配布することが望まれる。特定の人物を主人公であるように強調する方法として、閲覧者が関心のある人物を指定し、その人物を含む画像を中心にアルバムに配置する方法がある(特許文献1参照)。
特許文献1に記載された方法によれば、指定された人物を強調したアルバムを閲覧者に提供することができる。しかし、指定された人物とは異なる人物を主人公とするアルバムを別途提供する場合には、その都度一からアルバムを作成する必要があり、手間がかかる。
本発明は、このような問題を解決するためになされたものであり、既に作成されたフォトブック等のレイアウトデータから、別の人物を主人公とするレイアウトデータを容易に作成することが可能な情報処理装置を提供することを目的とする。
本発明による情報処理装置は、画像群から所定数の画像が配置されたレイアウトデータを取得する取得手段と、画像群を複数のサブ集合に分割する分割手段と、レイアウトデータ内に配置されている画像のうち第一の人物を含む画像を入れ替える画像入替手段と、を備え、画像入替手段は、サブ集合内に、画像群に含まれる画像であって第一の人物とは異なる第二の人物が含まれる画像がある場合は、第一の人物が含まれる画像を第二の人物が含まれる画像に入れ替え、サブ集合内に、第二の人物が含まれる画像がない場合は、第一の人物が含まれる画像を第二の人物が含まれる画像に入れ替えないことを特徴とする。
本発明によれば、既に作成されたレイアウトデータから、別の人物を主人公とするレイアウトデータを容易に作成することができる。
以下、添付の図面を参照して、本発明をその好適な実施形態に基づいて詳細に説明する。なお、以下の実施形態において示す構成は一例に過ぎず、本発明は図示された構成に限定されるものではない。
<実施形態1>
図1は、第1実施形態に係る情報処理装置(以下、フォトブック作成装置ともいう)のハードウェア構成を示す図である。CPU101は、コンピュータシステムである情報処理装置全体の制御を司る中央演算装置である。CPU101が、制御プログラムに基づいて、情報の演算や加工、各ハードウェアの制御を実行することにより、後述する、情報処理装置における各機能や各処理が実現される。RAM102は、ランダムアクセスメモリであり、CPU101の主メモリとして、実行プログラムのロードやプログラム実行に必要なワークメモリとして機能する。ROM103は、CPU101の動作を規定する制御プログラムを記録する。ROM103には、プログラムROMとデータROMとがある。プログラムROMには、コンピュータシステムの制御を行うシステムプログラムである基本ソフト(OS:Operating System)が記録される。データROMには、システムを稼動するために必要な情報などが記録される。なお、ROM103の代わりにHDD109を用いてもよい。
図1は、第1実施形態に係る情報処理装置(以下、フォトブック作成装置ともいう)のハードウェア構成を示す図である。CPU101は、コンピュータシステムである情報処理装置全体の制御を司る中央演算装置である。CPU101が、制御プログラムに基づいて、情報の演算や加工、各ハードウェアの制御を実行することにより、後述する、情報処理装置における各機能や各処理が実現される。RAM102は、ランダムアクセスメモリであり、CPU101の主メモリとして、実行プログラムのロードやプログラム実行に必要なワークメモリとして機能する。ROM103は、CPU101の動作を規定する制御プログラムを記録する。ROM103には、プログラムROMとデータROMとがある。プログラムROMには、コンピュータシステムの制御を行うシステムプログラムである基本ソフト(OS:Operating System)が記録される。データROMには、システムを稼動するために必要な情報などが記録される。なお、ROM103の代わりにHDD109を用いてもよい。
NETIF104は、ネットワークインターフェースであり、ネットワーク(不図示)を介して送受信される画像データなどのデータの入出力制御を行う。ビデオRAM(VRAM)105には、表示装置であるディスプレイ106に表示するための画像データが展開される。ディスプレイ106は、表示装置であり、例えば、液晶ディスプレイや液晶TVなどである。入力コントローラ107は、入力装置108からの入力信号を制御するコントローラである。入力装置108は、ユーザからの操作指示を受け付ける入力装置であり、例えば、タッチパネル、キーボード、マウス、リモコンが挙げられる。ハードディスクドライブ(HDD)109は、アプリケーションプログラムや画像データなどを記憶する。
入力インタフェース(入力IF)110は、CD−ROMドライブ、DVD−ROMドライブ、メモリカードドライブ等の外部装置と接続するためのインタフェースである。入力IF110は、例えば、デジタルカメラで撮影して取得された画像データの読み出しに用いられる。入出力バス111は、上述した各構成要素間を接続するためのバス(アドレスバス、データバス、及び制御バス)である。
図2は、第1実施形態に係る情報処理装置の機能構成の一例を示す図である。フォトブックには、写真や静止画だけでなく、動画や映像データから抽出される静止画が使用されても良い。ここで、フォトブックを作成する際に対象とされる画像を素材画像と呼び、それらの画像の集合を素材画像集合と呼ぶ。素材画像集合は、HDD109に格納される。素材画像集合は、例えば、グループ旅行等のひとかたまりのイベントで撮影された画像群である。フォトブックは、その素材画像集合の中から選ばれた所定数の画像で構成される。以下では、素材画像を使って既に作成されたフォトブックを、作成済みフォトブックと呼ぶ。作成済みフォトブックは、画像が配置されたレイアウトデータであるため、このレイアウトデータは、後述するフォトブック管理テーブルを書き換えることで編集可能である。
図2に示すように、本実施形態に係る情報処理装置は、データ管理部201、サブ集合分割部202、人物特定部203、画像入替制御部204、および画像選択情報出力部205を備える。なお、サブ集合分割部202と画像入替制御部204とを併せて、画像入替部と表現する場合がある。
データ管理部201は、HDD109に格納されている素材画像集合、およびレイアウトデータ内に配置されている画像(ここでは、作成済みフォトブックで選択されている画像)について管理する。データ管理部201は、それらの画像に関する情報を、図3に示す画像管理テーブル(以後T_imgと記す)や、図4に示すフォトブック管理テーブル(以後T_pbと記す)を用いて管理する。それらのテーブルの詳細については後述する。なお、T_pbはフォトブック毎に作成される。
サブ集合分割部202は、後述するように、素材画像集合を作成済みフォトブックの見開きページ数と同数のサブ集合に分割する。サブ集合分割部202は、素材画像集合を分割して得られたサブ集合を、図5に示すサブ集合テーブル(以後T_subと記す)で管理する。
人物特定部203は、作成済みフォトブックにおいて主人公となっている第一の人物と、入れ替え対象の第二の人物とを、後述する方法で特定する。
画像入替制御部204は、作成済みフォトブックで選択されている画像のうち第一の人物が写る画像(第一の人物を含む画像)を、第二の人物が写る画像(第二の人物を含む画像)へと後述する方法で入れ替える。
画像選択情報出力部205は、画像入替制御部204によって第二の人物が写る画像として選択された画像の集合を、T_pbの形式で出力する。
図3に示す画像管理テーブル(T_img)301は、素材画像集合ごとに画像を管理するためのテーブルである。したがって、それぞれが異なるグループ旅行で撮影された画像群については、別々の画像管理テーブルで管理される。また、1回の旅行であっても訪問先毎に別々のイベントとして扱う場合は、それぞれの訪問先で撮影された画像群が、別々の画像管理テーブルで管理される。
T_img301は、図3に示すように、画像ID、ファイル名、撮影日時、顔情報リスト、及びスコアを含む。ここで、画像IDは、画像の撮影時刻の時系列順に一つずつ大きくなるように付与される番号である。ファイル名は、画像を示すデータ(ファイル)の名称である。顔情報リストは、画像に含まれる人物の人物IDと、該人物の顔領域の座標情報とを含む。顔領域の座標情報には、顔領域のX座標、Y座標、幅、及び高さが含まれる。画像に複数の人物が含まれる場合には、顔情報リストに、人数分の人物IDと該人物IDに対応する座標情報とが格納される。本実施形態では、画像に含まれる人物の顔領域を検出し、顔認識技術を用いて、同じ人物には同じIDとなるように人物IDを付与する。座標情報には、検出した人物の顔領域の中心のX座標およびY座標と、顔領域の幅W及び高さHとが格納されている。X座標と幅W、及び、Y座標と高さHには、正規化された値が付与される。正規化には、画像の左上を原点とし、画像の幅および画像の高さを1とする方法が用いられる。スコアは、画像を解析し画質を評価して得られる値であり、0から1の間に正規化された値が付与される。このとき、0が低品質を表し、1が高品質を表す。スコアの算出方法は、例えば特開2014−75778号公報に記載の方法のように、検出した顔の向きや大きさ、明るさ、色彩の鮮やかさ、ボケやブレの程度など、画像を解析して得られる情報を用いて評価し、スコアを決定する。撮影日時の抽出や顔情報リストの生成、スコアの算出は、例えば各画像がHDD109に保存されたタイミングで行われる。
フォトブック管理テーブル(T_pb)401は、図4に示すように、ページIDと構成画像IDリストとを含む。ページIDは、フォトブックの見開きページごとに割り当てられるIDである。構成画像IDリストは、各見開きページに配置される画像の画像IDのリストである。なお、本実施形態では、見開きページ辺りに配置する画像数を4としている。したがって、各見開きページの構成画像IDリストには、4つの画像IDが含まれる。また、本実施形態では、見開きページに配置される各画像の大きさも同じものとする。以降、特に記載の無い限り、ページとは見開きページのことを表す。また、フォトブック管理テーブルを画像選択情報または画像配置情報と呼ぶ場合がある。
図5に示すサブ集合テーブル(T_sub)501は、サブ集合のID(以下、サブ集合IDと記す)と、サブ集合における、先頭の画像ID(以下、Startと記す)及び末尾の画像ID(以下、Endと記す)とを含む。サブ集合IDは、素材画像集合を分割して得られる各サブ集合に対して1から順に付与される。サブ集合IDは、フォトブックの見開きページに対応する。
図6は、第1実施形態に係る情報処理装置の動作を示すフローチャートである。図6には、作成済みフォトブックの情報を用いて、第二の人物を主人公としたフォトブックのフォトブック管理テーブルを作成する処理のメインフローが示されている。
ステップS601では、サブ集合分割部202が、素材画像集合の情報として、T_imgを取得する。
ステップS602では、サブ集合分割部202が、作成済みフォトブックのフォトブック管理テーブル(以後、T_pb1と記す)を取得する。
ステップS603では、サブ集合分割部202が、ステップS602で取得したT_pb1のページIDの行数を、全ページ数(以後、P_numと記す)として取得する。
ステップS604では、サブ集合分割部202が、ステップS602で取得したT_pb1に基づいて、T_imgをサブ集合に分割し、T_subの形式で管理する。ステップS604の処理(以下、サブ集合分割処理という)については、図8に示すフローチャートを用いて後述する。
ステップS605では、画像入替制御部204は、第一の人物の人物ID(以後、ID_per_1とする)を取得する。例えば、T_pb1の構成画像IDリストに含まれる画像群の中で最も登場数が多い人物IDをID_per_1として取得するようにしても良い。また例えば、図7に示すように、人物を含む画像702を複数表示する人物指定画面701をディスプレイ106に出力し、ユーザ(フォトブック作成者)に第一の人物を指定させるようにしても良い。具体的には、画像入替制御部204は、T_imgを参照して、T_pb1の構成画像IDリストに含まれる各画像IDに対応する画像から、人物IDを含む画像を抽出する。そして、画像入替制御部204は、抽出した画像のそれぞれについて、該画像が含む人物の座標情報をT_imgから取得し、該画像から人物毎の顔領域を切り出す。そして、画像入替制御部204は、切り出した顔領域の画像を人物指定画面701に表示するための表示制御を行う。そして、ユーザが人物指定画面701に表示された画像からいずれかの画像を選択した場合には、選択された画像に対応する人物の人物IDをID_per_1として取得する。図7に示す選択枠703は、選択枠703で囲われた画像がユーザによって選択されたことを示す。なお、T_pb1から、同一の人物IDを有する画像が複数抽出された場合には、代表する1枚を人物指定画面701に表示すうようにしても良い。
ステップS606では、画像入替制御部204が、第二の人物の人物ID(以後、ID_per_2と記す)を取得する。第二の人物の選択には、上述した第一の人物の選択方法と同じ方法を用いてもよい。例えば、T_pb1に格納された全ての画像IDに対応する画像の中で2番目に登場数が多い人物IDをID_per_2として取得するようにしても良い。また例えば、図7に示す画面を表示して、ユーザに選択させるようにしても良い。その際、ステップS605と異なり、画像入替制御部204は、T_imgに格納された全ての画像IDに対応する画像から、人物IDを含む画像を抽出する。そして、画像入替制御部204は、抽出した画像のそれぞれについて、該画像から人物毎の顔領域を切り出し、切り出した顔領域の画像を人物指定画面701に表示する。このとき、ID_per_1に対応する人物については選択対象外とされ表示されない。
ステップS607では、画像入替制御部204は、T_pb1を複製して、第二の人物を主人公としたフォトブック管理テーブル(以後、T_pb2と記す)を作成するための出力用のテーブルを作成する。
ステップS608では、画像入替制御部204は、処理対象となるサブ集合のID(サブ集合ID)を示すサブ集合カウンタSを1に初期化する。以下、サブ集合IDがSであるサブ集合を、サブ集合Sと記す。
ステップS609では、画像入替制御部204が、サブ集合Sに含まれる画像を用いて、画像の入れ替え処理(画像入替処理)を行う。画像入替処理の詳細については、図9に示すフローチャートを用いて後述する。
ステップS610では、全サブ集合について画像入替処理が終わったかを判断する。SがP_num以上の場合は(ステップS610のYES)、処理はステップS611に進む。一方、SがP_num未満の場合は(ステップS610のNO)、処理はステップS612に進む。
ステップS611では、画像選択情報出力部205が、T_pb2を出力する。
ステップS612では、画像入替制御部204が、サブ集合カウンタSを一つ増加させ、処理対象を次のサブ集合とする。
以上のような処理により、第二の人物を主人公としたフォトブックを作成するための画像選択情報(T_pb2)を生成することができる。またこれにより、生成された画像選択情報(T_pb2)を用いて第二の人物を主人公としたフォトブックを作成することが可能となる。
次に、図8を用いて、素材画像集合をサブ集合に分割する処理(ステップS604の処理)を説明する。
ステップS801では、サブ集合分割部202が、処理対象のページを示すページカウンタPを1に初期化する。
ステップS802では、サブ集合分割部202が、T_img内の先頭の画像ID、すなわちT_img内で一番小さい画像IDを、ID_Tとして取得する。なお、図中において、T_img内の先頭(top)の画像IDや末尾(last)の画像IDを、T_imge.topやT_imge.lastと記す場合がある。
ステップS803では、サブ集合分割部202が、PがP_num以下かどうかを判断する。P_num以下の場合は(ステップS803のYES)、処理はステップS804に進む。一方、P_numより大きい場合は(ステップS803のNO)、処理はステップS809に進む。
ステップS804では、サブ集合分割部202が、T_pb1から、ページIDがPであるページの構成画像IDリストの末尾の画像ID(一番大きい画像ID)をID_Eとして取得する。同様にサブ集合分割部202は、T_pb1のページ{P+1}の構成画像IDリストの先頭の画像ID(一番小さい画像ID)をID_Sとして取得する。なお、図中において、T_pb1においてページIDがPであるページの構成画像IDリストをT_pb1[P]と記す場合がある。また、T_pb1[P]の先頭(top)や末尾(last)の画像IDを、T_pb1[P].topやT_pb1[P].lastと記す場合がある。
ステップS805では、サブ集合分割部202が、ステップS804で取得したID_EとID_Sとの中間にあるIDをID_Cとして取得する。具体的には、ID_C=(ID_E+IE_S)/2とし、小数点以下は切り捨てられる。
ステップS806では、サブ集合分割部202が、T_subにおいて、サブ集合IDがPである行のStartにID_Tを格納し、EndにID_Cを格納する。なお、図中において、サブ集合IDがPであるサブ集合をT_sub[P]と記す場合がある。また、T_sub[P]のStartやEndを、T_sub[P].StartやT_sub[P].Endと記す場合がある。
ステップS807では、サブ集合分割部202が、ID_Cの次のIDをID_Tとして設定する。すなわち、ID_T=ID_C+1である。
ステップS808では、サブ集合分割部202が、ページカウンタPの値を一つ増加する。
ステップS809では、サブ集合分割部202が、ステップS806と同様にT_subにおいて、サブ集合IDがPである行のStartにID_Tを格納し、EndにT_img内の末尾の画像IDを格納する。以上のようにして、素材画像集合がサブ集合に分割される。
次に、図9を用いて、処理対象のサブ集合Sに対して行われる、画像入替処理(ステップS609の処理)を説明する。
ステップS901では、画像入替制御部204が、T_pb2においてページIDがSである行の構成画像IDリストから先頭の画像IDを取得し、ID_img_Aとする。
ステップS902では、画像入替制御部204が、T_subを参照してサブ集合Sの画像群を特定する。そして、画像入替制御部204は、サブ集合Sの画像群から、T_pb1に含まれない画像であって、T_imgの顔情報リストにID_per_2が含まれる画像を抽出する。画像入替制御部204は、抽出した画像の画像IDを、T_imgのスコアの良い順にソートしてリスト(以後、LST_imgs_per2とする)に格納する。
ステップS903では、画像入替制御部204が、ステップS902で特定したサブ集合Sの画像群から、T_pb1に含まれない画像であって、T_imgで顔情報リストを有さない画像を抽出する。画像入替制御部204は、抽出した画像の画像IDを、T_imgのスコアの良い順にソートしてリスト(以後、LST_imgs_nonとする)に格納する。
ステップS904では、画像入替制御部204が、T_imgにおいて、画像IDがID_img_Aである画像の顔情報リストに、人物IDがID_per_1である顔情報が含まれるかを判断する。含まれる場合は(ステップS904のYES)、処理はステップS905に進む。一方、含まれない場合は(ステップS904のNO)、処理はステップS911に進む。
ステップS905では、画像入替制御部204が、画像IDがID_img_Aである画像の顔情報リストに含まれる人物IDが、ID_per_1のみであるかどうかを判断する。ID_per_1のみである場合は(ステップS905のYES)、処理はS906に進む。一方、複数の人物IDが含まれる場合は、(ステップS905のNO)、処理はステップS909に進む。
ステップS906では、画像入替制御部204が、LST_imgs_per2に画像IDが含まれるかどうか、すなわち、LST_imgs_per2が空でないかを判断する。LST_imgs_per2が空でない場合は(ステップS906のYES)、処理はステップS907に進む。一方、LST_imgs_per2が空である場合は(ステップS906のNO)、処理はステップS908に進む。
ステップS907では、画像入替制御部204が、T_pb2においてページIDがSである行の構成画像IDリスト内にあるID_img_Aを、LST_imgs_per2内にある画像IDと入れ替える処理を行う。この処理(第二人物画像入替処理)については、図10に示すフローチャートを用いて後述する。
ステップS908では、画像入替制御部204が、T_pb2においてページIDがSである行の構成画像IDリスト内にあるID_img_Aを、人物が写っていない画像(人物を含まない画像)の画像IDに入れ替える処理を行う。以下、人物が写っていない画像を非人物画像という。この処理(非人物画像入替処理)については、図11に示すフローチャートを用いて後述する。
ステップS909では、画像入替制御部204が、T_pb2においてページIDがSである行の構成画像IDリスト内の全ての画像IDに対して処理を行ったかどうかを判断する。ここでは、画像入替制御部204は、ID_img_Aが構成画像IDリスト内の末尾の画像IDであるかを判断する。全ての画像IDに対して処理が終わっている場合は(ステップS909のYES)、処理は終了する。一方、全ての画像IDに対して処理が終了していない場合は(ステップS909のNO)、処理はステップS910に進む。
ステップS910では、画像入替制御部204が、ID_img_Aに、T_pb2の構成画像リスト内の次のIDを代入し、ステップS904の処理に戻る。なお、図中において、T_pb2[S]の次の行(現在参照している行の次の行)をT_pb2[P].nextと記す場合がある。
ステップS911では、画像入替制御部204が、ステップS906と同様に、LST_imgs_per2に画像IDが含まれるかどうかを判断する。画像IDが含まれる(LST_imgs_per2が空でない)場合は(ステップS911のYES)、処理はステップS907へ進む。一方、画像IDが含まれない(LST_imgs_per2が空である)場合は(ステップS911のNO)、処理はステップS909に進む。このようにして、第1実施形態における画像入替処理が行われる。
次に、ステップS907の第二人物画像入替処理に関して説明する。
ステップS1001では、画像入替制御部204が、LST_imgs_per2の先頭の画像IDを取得し、取得した画像IDをID_img_Bとする。
ステップS1002では、画像入替制御部204が、ステップS1001で取得したID_img_BをLST_imgs_per2から削除する。なお、図中における、LST_imgs_per2.remove(ID_img_B)は、LST_imgs_per2からID_img_Bを削除させるための命令を表す。
ステップS1003では、画像入替制御部204が、T_pb2においてページIDがSである行の構成画像IDリスト内のID_img_Aを、ID_img_Bに入れ替える。このようにして、第一の人物が写る画像を第二の人物が写る画像に入れ替えることができる。
次に、ステップS908の非人物画像入替処理に関して説明する。
ステップS1101では、画像入替制御部204が、LST_imgs_nonに画像IDがあるかどうかを判断する。画像IDがある場合は(ステップS1101のYES)、処理はS1102に進む。一方、画像IDが無い場合は(ステップS1101のNO)、処理は終了する。
ステップS1102では、画像入替制御部204が、LST_imgs_nonの先頭の画像IDを取得し、取得した画像IDをID_img_Bとする。
ステップS1103では、画像入替制御部204が、ステップS1102で取得したID_img_BをLST_imgs_nonから削除する。
ステップS1104では、図10におけるステップS1003と同様の処理が行われる。
このようにして、第一の人物が写る画像を非人物画像に入れ替えることができる。
以上説明したように、本実施形態では、素材画像集合をページ単位でサブ集合に分割し、サブ集合単位で画像の入替を行う。より具体的には、第一の人物が写る画像が存在するページから第一の人物が写る画像を削除し、該ページに対応するサブ集合内に存在する第二の人物が写る画像または非人物画像を追加する。また、第一の人物が写る画像が存在しないページにおいて、該ページに対応するサブ集合に第二の人物が写る画像が存在する場合には、第二の人物が写る画像を追加する。これにより、第一の人物を主人公として作成したフォトブックから第二の人物を主人公とするフォトブックを作成することができる。さらに、本実施形態では、一度作成した画像選択情報(上記のT_pb1)を元にして主人公となる人物が写る画像については入れ替えを行うが、その他の画像については入れ替えを行わない。これにより、主人公となる人物が写る画像を入れ替えつつ、主人公となるような人物が写っていない画像をそのまま残すことができる。そのため、画像の入れ替え後のフォトブックに、入れ替え前におけるフォトブックと共通の画像を残すことができる。このように、本実施形態により作成した画像選択情報を使用してフォトブックを作成し直すことにより、同じイベントに参加したという共通性を残しつつ、各主人公向けのフォトブックを作成することが可能となる。
なお、本実施形態では、風景や料理といった人物以外のものを被写体とし、人物を被写体としない画像を、非人物画像として扱っている。しかし、複数人が写っていて主人公となる人物が判別し難い画像を、非人物画像として扱うようにしてもよい。図11に示すフローでは、人物が写っていない画像がサブ集合内に存在しない場合には、画像の入れ替えを行わない例が示されている。しかし、そのような場合において、複数人が写る画像を入れ替え対象とするようにしてもよい。
また、一般的にフォトブックでは撮影時刻順に画像が配置される。そのため、ページを意識せず単純に人物が写る画像を入れ替えると、タイムラインが崩れ、違和感を与えてしまう。本実施形態では、素材画像集合を撮影時刻の時系列に沿って分割したサブ集合から、入れ替え対象となる画像を選択する。そのため、タイムラインが崩れることなく、違和感を与えないフォトブックが作成することができる。
また、本実施形態では、主人公となる人物が一人である場合を例にしたが、主人公となる人物は複数であっても良い。例えば、カップルや家族のように複数人のグループを主人公としても良い。その場合、人物IDを取得する処理(ステップS605,S606の処理)において、処理対象が複数人のグループとなり、図7に示す画面には、複数人のグループが写る画像が表示される。複数人のグループを検出する方法としては、例えば、人物が共に写る画像数や撮影時間帯の分布の偏りの差、画像内の顔の位置の近さなどから判断する方法がある。
また、本実施形態では、入れ替え対象の画像がサブ集合内に存在しない場合に(ステップS1101のNo)、画像を入れ替えない例を説明した。しかし、サブ集合内の画像をランダムで選択したり、フォトブック作成者が任意の画像を選択したりして、画像を入れ替えるようにしても良い。
また、本実施形態では、サブ集合の分割箇所をID_EとID_Sとの中間としているが、ID_EとID_Sの間で撮影時刻の差が大きい画像ID間を分割箇所としても良い。
また、フォトブックにおける画像配置方法としては、一つのイベントを撮影時刻順に配置する方法だけでなく、イベントの種類毎にページを割り当てる方法もある。そのような画像配置方法を採用する場合には、イベントの種類を判別し、素材画像をイベントの種類毎にサブ集合に分割しても良い。そのような形態を実現するには、例えば、画像管理テーブルに、イベントの種類を判別可能な識別情報を、各画像IDに対応づけて格納するようにすればよい。また、フォトブック内には、撮影時間帯が異なる画像を集めたイベント全体のダイジェストを表すページが存在する場合がある。そのような場合には、各ページで選択されている画像の撮影時間の分散を計算し、各画像の撮影時間に差があり分散が大きいページを、ダイジェストのページであると判断すればよい。なお、ダイジェストのページは、サブ集合分割処理の対象とされない。また、ダイジェストのページについては、素材画像集合全体から入れ替え対象の画像が選択される。
また、本実施形態では、入れ替え対象とする画像を、スコアに基づき(スコアの良い順に)選択する例を説明した。しかし、これに限らず、画像選択情報において既に選択されている画像と、選択候補の画像との類似度を算出し、類似度が高い場合には該選択候補の画像を入れ替え対象から外すようにしても良い。画像間の類似度の算出方法は、公知の方法で良く、例えば、画像の平均色を算出し、2つの画像の平均色の間の距離を算出し、距離の長さにより類似度を判断しても良い。
さらに、本実施形態で入力として用いる作成済みフォトブックのフォトブック管理テーブル(T_pb1)は、手動で作成されることを想定しているが、公知の自動選択アルゴリズムにより作成されても良い。また、本実施形態で作成されたフォトブックのフォトブック管理テーブル(T_pb2)を入力としても良い。
<実施形態2>
第1実施形態では、第一の人物が写る画像を第二の人物が写る画像に入れ替える処理を見開きページ毎に制御する例を説明した。しかし、入れ替え可能な第二の人物が写る画像が多くあると、画像入れ替え前における第一の人物が写る画像の数よりも、画像入れ替え後における第二の人物が写る画像の数が多くなる可能性がある。この場合、画像入れ替え前後のフォトブック間において共通に選ばれる、人物が写らない画像の選択数が減ってしまい、主人公の登場比率が変わってしまう。それにより、フォトブック間の類似性が低くなり、同じイベントから作成されたという共通性が低くなってしまう。このような課題に対応するため、第2実施形態では、第一の人物が写る画像数を取得し、取得した画像数に応じて、入れ替える画像数を制御する。以下では、第1実施形態と異なる部分のみを説明し、共通する部分については説明を省略する。
第1実施形態では、第一の人物が写る画像を第二の人物が写る画像に入れ替える処理を見開きページ毎に制御する例を説明した。しかし、入れ替え可能な第二の人物が写る画像が多くあると、画像入れ替え前における第一の人物が写る画像の数よりも、画像入れ替え後における第二の人物が写る画像の数が多くなる可能性がある。この場合、画像入れ替え前後のフォトブック間において共通に選ばれる、人物が写らない画像の選択数が減ってしまい、主人公の登場比率が変わってしまう。それにより、フォトブック間の類似性が低くなり、同じイベントから作成されたという共通性が低くなってしまう。このような課題に対応するため、第2実施形態では、第一の人物が写る画像数を取得し、取得した画像数に応じて、入れ替える画像数を制御する。以下では、第1実施形態と異なる部分のみを説明し、共通する部分については説明を省略する。
図12は、第2実施形態に係る情報処理装置の動作を示すフローチャートである。図12には、作成済みフォトブックの情報を用いて、第二の人物を主人公としたフォトブックのフォトブック管理テーブルを作成する処理の第2実施形態におけるメインフローが示されている。なお、ステップS1201〜S1205,S1207〜S1209,S1212〜S1214の処理は、ステップS601〜S605,S606〜S608,S610〜S612の処理と同様であるため、説明を省略する。
ステップS1206では、画像入替制御部204が、T_pb1において選択されている第一の人物が写る画像(ID_per_1を含む画像)の数(以後、N_sel_per1とする)を取得する処理を行う。該処理(以下、第一人物画像数取得処理という)については、図13を用いて後述する。
ステップS1210では、画像入替制御部204が、T_pb2において選択される第二の人物が写る画像(ID_per_2を含む画像)の数を示す変数N_sel_per2を、0に初期化する。
ステップS1211の画像入替処理は、図9におけるステップS609の画像入替処理と同様である。ただし、N_sel_per1とN_sel_per2とに基づく制御が行われる。ステップS1211の画像入替処理の詳細は、図14を用いて後述する。本実施形態では、以上のようにして、第二の人物を主人公としたフォトブックを作成するための画像選択情報(T_pb2)が生成される。
次に、図13を用いて、第一人物画像数取得処理(ステップS1206の処理)を説明する。なお、ステップS1301,S1310の処理は、ステップS801,S808の処理と同様であるため、説明を省略する。
ステップS1302では、サブ集合分割部202が、N_sel_per1を0に初期化する。
ステップS1303では、サブ集合分割部202が、T_pb1から、ページIDがPであるページの構成画像IDリストに含まれる画像の数を取得し、I_numとして値を保持する。
ステップS1304では、サブ集合分割部202が、画像カウンタIを0に初期化する。
ステップS1305では、サブ集合分割部202が、画像カウンタIがI_numより小さいかを判断する。I_numより小さい場合は(ステップS1305のYES)、処理はステップS1306に進む。一方、I_num以上である場合は(ステップS1305のNo)、処理はステップS1310に進む。
ステップS1306では、サブ集合分割部202が、画像カウンタIに対応する画像IDを有する画像をT_imgから特定し、特定した画像の顔情報リストの人物IDにID_per_1が含まれるかを判断する。ID_per_1が含まれる場合は(ステップS1306のYES)、処理はステップS1307に進む。一方、ID_per_1が含まれない場合は(ステップS1306のNo)、処理はステップS1309に進む。
ステップS1307では、サブ集合分割部202が、ステップS1306で特定した画像の顔情報リストから、ID_per_1に対応する顔幅Wを取得し、顔幅Wが閾値ThWより大きいかを判断する。閾値ThWより大きい場合は(ステップS1307のYES)、処理はステップS1308に進む。一方、閾値ThWより以下である場合は(ステップS1307のNo)、処理はステップS1309に進む。閾値ThWには、例えば、画像の幅×0.15を設定した場合には、画像の幅に対する顔領域の幅の割合が15%より大きい場合に、ステップS1307においてYESと判定される。なお、ここでは顔領域の幅Wのみを用いているが、顔領域の高さHを用いても良く、また、幅Wと高さHとを積算して得られる顔領域の面積を用いても良い。
ステップS1308では、サブ集合分割部202が、N_sel_per1の値を一つ増加する。ステップS1309では、サブ集合分割部202が、画像カウンタIの値を一つ増加する。
ステップS1311では、サブ集合分割部202が、ページカウンタPがP_num以上であるかどうかを判断する。P_num以上である場合は(ステップS1311のYES)、処理は終了する。一方、P_num未満である場合(ステップS1311のNo)、処理はステップS1303に戻る。このようにして、T_pb1において選択されている第一の人物が写る画像の数N_sel_per1が取得される。
次に、図14を用いて、第2実施形態における画像入替処理(ステップS12011)を説明する。なお、ステップS1401〜S1405,S1407〜S1409の処理は、ステップS901〜S905,S906〜S908の処理と同様であるため、説明を省略する。また、ステップS1411,S1412,S1414の処理は、ステップS909,S910,S911の処理と同様であるため、説明を省略する。
ステップS1405でYESと判定されると、処理はステップS1406に進む。ステップS1406では、画像入替制御部204が、N_sel_per2がN_sel_per1以下かどうかを判断する。N_sel_per1以下である場合は(ステップS1406のYES)、処理はステップS1407に進む。一方、N_sel_per1より大きい場合は(ステップS1406のNo)、処理はステップS1409に進む。
ステップS1404でNOと判定されると、処理はステップS1413に進む。ステップS1413では、画像入替制御部204が、ステップS1406と同様にN_sel_per2がN_sel_per1以下かどうかを判断する。N_sel_per1以下である場合は(ステップS1413のYES)、処理はステップS1414に進む。一方、N_sel_per1よい大きい場合は(ステップS1413のNo)、処理はステップS1411に進む。
ステップS1410では、画像入替制御部204が、N_sel_per2の値を1つ増加する。このようにして、第一の人物が写る画像数に応じた、画像入替処理が行われる。
以上説明したように、本実施形態によれば、画像の入れ替え前後において、第一の人物が登場する画像の数と第二の人物が登場する画像の数とを同じにすることができる。したがって、画像の入れ替え前のフォトブックと、入れ替え後のフォトブックとの類似性を低減させることがない。よって、両フォトブック間において、同じイベントから作成されたという共通性を残すことができる。
なお、本実施形態では、フォトブック全体において主人公となる人物が写る画像の数の総数が、画像の入れ替え前後において同じになるように制御している。しかし、ページ内で人物が写る画像の数が閾値以下になるように制御しても良い。これにより、第二の人物が写る画像ばかり選択されるページが生成されないようにすることできる。閾値して、例えば、ページごとに第一の人物が写る画像の選択数をT_pb1から算出し、その最頻値を用いても良い。
なお、ステップS1307,S1308の処理において、顔領域の幅Wの大きさに基づき、第一の人物が写る画像の数を算出している。これは入れ替え対象となる人物が写っている画像であっても、画像内の顔領域が小さい場合は人物が目立たず、主人公としての度合いが低いためである。したがって、本実施形態では、顔領域の幅Wが閾値以下の場合には、入れ替え対象に適さないと判断している。
また、ステップS1405の処理において、画像に含まれる人物IDが、複数ではなくID_per_1のみであるかで主人公としての度合いが強いかを判断している。しかし、人物IDの数が一つかどうかだけでなく、画像に含まれる第一の人物の顔の幅Wの大きさが閾値より大きいかを判断に使っても良い。また、幅Wの代わりに顔の高さHや、幅Wと高さHとをかけて得られる顔領域の面積を用いても良い。さらに、ステップS1407の処理においても、ID_per_2があるかだけでなく、ID_per_2に対応する顔幅Wが所定の閾値よりも大きいかどうかにより、ステップ1408の処理を実行するかを判断しても良い。同様に、ステップS1409の処理(より具体的には、ステップS1101の処理)においても、人物IDを含む画像であっても顔幅Wが閾値よりも小さい場合は、人物が写っていない画像として判断しても良い。
また、画像内の顔領域の位置が、画像の中心付近や三分割法の交点付近など構図的に主被写体を配置する場所にあるかどうかにより、画像に写る人物について、主人公としての度合いが高いかを判断してもよい。また、画像に写る人物(人物の顔)が向いている方向を公知の方法で取得し、画像に写る人物の顔が正面を向いている場合は、該人物について、主人公としての度合いが高いと判断してもよい。逆に、画像に写る人物の顔が横を向いている場合などは、該人物について、主人公としての度合いが低いと判断しても良い。
さらに、第一の人物が写る画像を第二の人物が写る画像または人物が写らない画像に入れ替える際、サブ集合内に入れ替え対象となる画像が少ない場合には、自動的な入れ替え処理は適さない。この場合は、フォトブック作成者に対して、第二の人物を主人公としたフォトブックの作成を手動で一から行うことを推奨しても良い。
<実施形態3>
第1実施形態および第2実施形態では、見開きページ辺りに配置される画像数がすべて4であり、且つ、見開きページに配置される各画像の大きさがそれぞれ同じである場合を例にした。しかし、レイアウトを変更せずに単に画像を入れ替えると、人物の入れ替わりに気付かない可能性がある。この課題に対応するため、本実施形態では、主人公となる人物の画像のレイアウトを大きく配置し、人物の写らない画像を小さく配置する例を説明する。以下、第1実施形態との差異について説明する。
第1実施形態および第2実施形態では、見開きページ辺りに配置される画像数がすべて4であり、且つ、見開きページに配置される各画像の大きさがそれぞれ同じである場合を例にした。しかし、レイアウトを変更せずに単に画像を入れ替えると、人物の入れ替わりに気付かない可能性がある。この課題に対応するため、本実施形態では、主人公となる人物の画像のレイアウトを大きく配置し、人物の写らない画像を小さく配置する例を説明する。以下、第1実施形態との差異について説明する。
図15は、第3実施形態におけるフォトブック管理テーブルの一例を示す図である。本実施形態では、図4に示すフォトブック管理テーブルに代えて、図15に示すフォトブック管理テーブルを用いる。フォトブック管理テーブル1501には、見開きページのページIDに対応づけて、見開きページ内に配置される各スロットの情報が格納される。スロットの情報には、スロットの識別情報であるスロットIDと、スロットに配置される画像の画像IDと、スロット(スロットに配置される画像)の座標とが含まれる。スロットの座標には、スロットの中心のX座標(以下、Ixと記す)と、Y座標(以下、Iyと記す)と、スロットの幅W(以下、Iwと記す)および高さH(以下、Ihと記す)とが含まれる。IxおよびIwには、見開きページの左上を原点とし、見開きページの幅を1として正規化された値が格納される。同様に、IyおよびIhには、見開きページの左上を原点とし、見開きページの高さを1として正規化された値が格納される。以下、ページIDがNであるページをページ#Nと表す場合がある。また、スロットIDがNであるスロットをスロット#Nと表す場合がある。画像IDがNである画像を画像#Nと表す場合がある。
図16は、見開きページに配置される画像のレイアウトの一例を示す図である。本実施形態では、図16(A)〜(C)に示す何れかのレイアウトで見開きページにスロットが配置されるものとする。図16(A)に示す見開きページ1601は、図15に示すフォトブック管理テーブル1501におけるページ#1に対応する。スロット1602はフォトブック管理テーブル1501のスロット#1に対応し、スロット1602には画像#2が配置される。スロット1603はスロット#2に対応し、スロット1603には画像#6が配置される。スロット1604はスロット#3に対応し、スロット1604には画像#12が配置される。見開きページ1601には、スロット#4に対応するスロットは存在しない。したがって、ページ#1のスロット#4に対応する画像ID及び座標には、該当なしを表す「N/A」が格納される。
同様に、図16(B)に示す見開きページ1605はページ#2に対応し、図16(C)に示す見開きページ1609はページ#8に対応する。
サイズが大きいスロット1604およびスロット1606には、主人公となる人物が写る画像が配置される。その他のスロット(スロット1602〜1603,1607〜1608,1610〜1613)には、人物が写っていない画像や主人公以外の人物が写る画像などが配置される。なお、以下では説明の簡単のため、その他のスロットには、人物が写っていない画像のみが配置されるものとする。したがって、本実施形態において編集対象とされる作成済みフォトブックには、各見開きページに、人物が写っていない画像が少なくとも2つ含まれることになる。
また、ここでは、ユーザが見開きページの左上、左下、右上、右下の順に画像を見ることを想定している。したがって、図16では、左綴じ(右開き)の例が示されている。なお、ユーザが上記の順とは別の順に画像を見ることが想定される場合には、それに応じて綴じ方や配置順を変えても良い。
次に、図17を用いて、第3実施形態における画像入替処理について説明する。図17は、第3実施形態における画像入替処理を示すフローチャートである。本実施形態におけるステップS609では、図9に示す画像入替処理に替えて、図17に示す画像入替処理が行われる。なお、ステップ1702,S1703,S1707の処理は、ステップ902,S903,S907の処理と同様であるため、説明を省略する。
ステップS1701では、画像入替制御部204が、T_pb2を参照して、ページIDがSである行に含まれる画像IDの中から、T_imgの顔情報リストにID_per_1が含まれる画像IDを抽出する。画像入替制御部204は、抽出した画像IDを、撮影時刻順にソートしてリスト(以後、LST_imgs_per1とする)に格納する。
ステップS1704では、画像入替制御部204が、LST_imgs_per1に画像IDが含まれるかどうか、すなわち、LST_imgs_per1が空でないかを判断する。LST_imgs_per1が空である場合は(ステップS1704のYES)、処理はステップS1705に進む。一方、LST_imgs_per1が空で無い場合は(ステップS1704のNo)、処理はステップS1711に進む。
ステップS1705では、画像入替制御部204が、LST_imgs_per1から先頭の画像IDを取得し、取得した画像IDをID_img_Aとする。
ステップS1706では、画像入替制御部204が、LST_imgs_per2に画像IDがあるかどうか、すなわち、LST_imgs_per2が空でないかを判断する。画像IDがない場合は(ステップS1706のYES)、処理はステップS1707に進む。一方、画像IDが無い場合は(ステップS1706のNo)、処理はステップS1708に進む。
ステップS1708では、画像入替制御部204が、T_pb2においてページIDがSである行の構成画像IDリスト内にあるID_img_Aを、LST_imgs_non内にある画像IDと入れ替える処理を行う。この処理(第二人物画像入替処理)については、図18に示すフローチャートを用いて後述する。
ステップS1709では、画像入替制御部204が、LST_imgs_per1に含まれる全ての画像IDに対して処理を行ったかどうかを判断する。全ての画像IDに対して処理が終わっている場合は(ステップS1709のYES)、処理はステップS1713に進む。一方、全ての画像IDに対して処理が終了していない場合は(ステップS1709のNo)、処理はステップS1710に進む。
ステップS1710では、画像入替制御部204が、ID_img_Aに、LST_imgs_per1内の次の画像IDを代入する。
ステップS1711では、画像入替制御部204が、ステップS1706と同様に、LST_imgs_per2に画像IDがあるどうかかを判断する。画像IDが含まれる場合は(ステップS17011のYES)は、処理はステップS1709に進む。一方、画像IDが含まれない(LST_imgs_per2が空である)場合は(ステップS1711のNo)は、処理はステップS1713に進む。
ステップS1712では、画像入替制御部204が、T_pb2においてページIDがSである行の構成画像IDリスト内の、顔情報リストを有さない画像IDを、LST_imgs_per2に含まれる画像IDと入れ替える処理を行う。この処理(非人物画像入替処理)については、図19に示すフローチャートを用いて後述する。
ステップS1713では、画像入替制御部204が、T_pb2においてページIDがSである行の構成画像IDリスト内の画像IDを撮影時刻順でソートする。以上のようなフローによって、第3実施形態における画像入替処理が行われる。
次に、図18を用いて、第3実施形態における非人物画像入替処理について説明する。なお、ステップS1801,S1802の処理は、ステップ1102,S1103の処理と同様であるため、説明を省略する。また、上述したように、人物が写っていない画像が見開きページに少なくとも2つ含まれることを前提としているため、ステップS1101に相当する処理(LST_imgs_nonが空であるかを判定する処理)は、図18に示すフローでは省略している。
ステップS1803では、ステップS1801と同様に、画像入替制御部204が、LST_imgs_nonの先頭の画像IDを取得し、取得した画像IDをID_img_Cとする。
ステップS1804では、ステップS1802と同様に、画像入替制御部204が、ステップS1803で取得したID_img_CをLST_imgs_nonから除去する。
ステップS1805では、画像入替制御部204が、T_pb2においてページIDがSである行の構成画像IDリストからID_img_Aを除去し、該構成画像IDリストにID_img_BとID_img_Cとを追加する。このとき、ID_img_Aの画像が配置されていた片側ページにおける画像数が1つ増加する。そのため、本実施形態では、ID_img_BとID_img_Cとに対応する表示領域を小さく設定して、ID_img_BとID_img_Cとに対応する画像が片側ページ内に収まるようにする。以上のような処理により、見開きページのレイアウトを、図16(a)または図16(b)に示す状態から、図16(c)に示す状態に変更することができる。
次に、図19を用いて、顔情報を有さない画像からID_per_2を有する画像に入れ替える処理(ステップS1708の処理)について説明する。
ステップS1901では、画像入替制御部204が、T_pb2のページIDがSである行の構成画像IDリストの中で、スコアが低い画像を選択し、選択した画像の画像IDをID_img_A1とする。ここで、スコアが低い画像とは、構成画像IDリスト内の画像のうちスコアが最も低い画像である。スコアが最も低い画像が複数存在する場合には、その中からいずれかを選択すれば良い。
ステップS1902では、画像入替制御部204が、T_pb2からID_img_A1の中心のX座標Ixを取得し、IxA1とする。
ステップS1903では、画像入替制御部204が、T_pb2においてページIDがSである行の画像の中で、中心座標IxがIxA1に一番近い画像を取得し、ID_img_A2とする。中心座標IxがIxA1に一番近い画像とは、画像IDがID_img_A1である画像と同じ片側ページ内に配置されている画像である。例えば、図16(C)に示す見開きページ1609において、スロット1611にID_img_A1を有する画像が配置されている場合、スロット1610に配置されている画像の画像IDがID_img_A2に設定される。
ステップS1904では、画像入替制御部204が、T_pb2においてページIDがSである行からID_img_A1とID_img_A2を削除する。
ステップS1905では、画像入替制御部204が、LST_imgs_per2の先頭の画像IDを取得し、ID_img_Bとする。
ステップS1906では、画像入替制御部204が、T_pb2においてページIDがSである行にID_img_Bを追加する。それとともに、画像入替制御部204は、ID_img_Bの画像の表示領域が大きくなるレイアウトの種類を選択し、ID_img_Bの座標情報に、選択したレイアウトに応じた座標を格納する。選択可能なレイアウトの種類が複数ある場合には、見開きページ内において撮影時刻順に画像を配置したときに、入れ替え対象のID_img_Bの画像が見開きページのどの領域に配置されるかによって、レイアウトの種類を選択すればよい。
例えば、図16(c)において、スロット1613に配置されている画像のスコアが最も低い場合には、該画像の画像IDがID_img_A1として取得され、スロット1612に配置されている画像の画像IDがID_img_A2として取得される。またこのとき、スロット1610,1611に配置されている画像の撮影時刻よりもID_img_Bの画像の撮影時刻が古い場合には、図16(b)に示すレイアウトが選択される。逆に、スロット1610,1611に配置されている画像の撮影時刻よりもID_img_Bの画像の撮影時刻が新しい場合には、図16(a)に示すレイアウトが選択される。なお、この際、画像のアスペクト比と表示領域のアスペクト比が異なる場合は、対象となる人物が切れないように公知の方法でトリミングしても良い。以上のようにして、図16(c)に示すレイアウトから、図16(a)や図16(b)に示すレイアウトに入れ替えることができる。
以上説明したように、本実施形態によれば、主人公となる人物が写る画像の表示領域を大きくし、人物が写らない画像の領域を小さくすることができる。これにより、新たに主人公となる人物を強調した、フォトブックを作成することができる。
<その他の実施形態>
以上、実施形態例を詳述したが、本発明は例えば、システム、装置、方法、プログラムまたは記録媒体(記憶媒体)等としての実施態様をとることが可能である。具体的には、複数の機器(例えば、ホストコンピュータ、インタフェース機器、撮像装置、webアプリケーション等)から構成されるシステムに適用しても良いし、また、一つの機器からなる装置に適用しても良い。
以上、実施形態例を詳述したが、本発明は例えば、システム、装置、方法、プログラムまたは記録媒体(記憶媒体)等としての実施態様をとることが可能である。具体的には、複数の機器(例えば、ホストコンピュータ、インタフェース機器、撮像装置、webアプリケーション等)から構成されるシステムに適用しても良いし、また、一つの機器からなる装置に適用しても良い。
また、本発明の目的は、以下のようにすることによって達成されることはいうまでもない。即ち、前述した実施形態の機能を実現するソフトウェアのプログラムコード(コンピュータプログラム)を記録した記録媒体(または記憶媒体)を、システムあるいは装置に供給する。係る記憶媒体は言うまでもなく、コンピュータ読み取り可能な記憶媒体である。そして、そのシステムあるいは装置のコンピュータ(またはCPUやMPU)が記録媒体に格納されたプログラムコードを読み出し実行する。この場合、記録媒体から読み出されたプログラムコード自体が前述した実施形態の機能を実現することになり、そのプログラムコードを記録した記録媒体は本発明を構成することになる。
202 サブ集合分割部
204 画像入替制御部
204 画像入替制御部
Claims (16)
- 画像群から所定数の画像が配置されたレイアウトデータを取得する取得手段と、
前記画像群を複数のサブ集合に分割する分割手段と、
前記レイアウトデータ内に配置されている画像のうち第一の人物を含む画像を入れ替える画像入替手段と、を備え、
前記画像入替手段は、
前記サブ集合内に、前記画像群に含まれる画像であって前記第一の人物とは異なる第二の人物が含まれる画像がある場合は、前記第一の人物が含まれる画像を前記第二の人物が含まれる画像に入れ替え、
前記サブ集合内に、前記第二の人物が含まれる画像がない場合は、前記第一の人物が含まれる画像を前記第二の人物が含まれる画像に入れ替えない
ことを特徴とする情報処理装置。 - 前記レイアウトデータは、各ページに画像が配置されたフォトブックであり、
前記分割手段は、前記画像群を前記各ページに対応させて分割して、前記サブ集合を生成し、
前記画像入替手段は、
前記各ページに配置されている画像のうち前記第一の人物が含まれる画像を、対応する前記サブ集合に含まれる画像であって前記第二の人物が含まれる画像に入れ替える
ことを特徴とする請求項1に記載の情報処理装置。 - 前記フォトブックは、各ページに撮影時刻順に画像が配置されるフォトブックであり、
前記分割手段は、
前記フォトブックの一のページに対応する前記サブ集合に、前記一のページに配置されている画像が含まれるように、前記画像群を撮影時刻の時系列に沿って分割し、前記各ページに対応する前記サブ集合を生成する
ことを特徴とする請求項2に記載の情報処理装置。 - 前記画像入替手段は、
前記各ページに配置されている前記第一の人物を含む画像を入れ替える際に、対応する前記サブ集合に前記第二の人物を含む画像がなく、かつ、該サブ集合に人物を含まない画像がある場合には、前記第一の人物を含む画像を、人物を含まない画像に入れ替える
ことを特徴とする請求項2または請求項3に記載の情報処理装置。 - 前記画像入替手段は、
前記各ページに配置されている画像のうち、前記第一の人物と前記第一の人物以外の人物とを含む画像については、画像の入れ替えを行わない
ことを特徴とする請求項2から請求項4のうちのいずれか1項に記載の情報処理装置。 - 前記画像入替手段は、
前記第一の人物を含む画像を、人物を含まない画像に入れ替える際に、人物を含まない画像を配置する領域のサイズを、前記第一の人物を含む画像が配置されている領域のサイズよりも小さく設定する
ことを特徴とする請求項5に記載の情報処理装置。 - 前記画像入替手段は、
前記各ページに配置されている画像のうち人物を含まない画像を、前記第二の人物を含む画像に入れ替える
ことを特徴とする請求項2から請求項6のうちのいずれか1項に記載の情報処理装置。 - 前記画像入替手段は、
人物を含まない画像を、前記第二の人物を含む画像に入れ替える際に、前記第二の人物を含む画像を配置する領域のサイズを、人物を含まない画像が配置されている領域のサイズよりも大きく設定する
ことを特徴とする請求項7に記載の情報処理装置。 - 前記画像入替手段は、
前記第一の人物を含む画像または人物を含まない画像を、前記第二の人物を含む画像に入れ替える際に、前記レイアウトデータ内に配置されている画像のうち前記第二の人物を含む画像の数が予め定めた閾値を超えている場合には、画像の入れ替えを行わない
ことを特徴とする請求項1から請求項8のうちのいずれか1項に記載の情報処理装置。 - 前記予め定めた閾値が、画像の入れ替えを行う前の前記レイアウトデータ内に配置されている画像のうち前記第一の人物を含む画像の数である
ことを特徴とする請求項9に記載の情報処理装置。 - 前記レイアウトデータ内に配置されている画像から、最も多くの画像に含まれる人物を特定し、特定した人物を前記第一の人物として決定する決定手段をさらに備える
ことを特徴とする請求項1から請求項10のうちのいずれか1項に記載の情報処理装置。 - 前記決定手段は、
前記レイアウトデータ内に配置されている画像から、前記第一の人物の次に多くの画像に含まれる人物を特定し、特定した人物を前記第二の人物として決定する
ことを特徴とする請求項11に記載の情報処理装置。 - 前記第一の人物または第二の人物を指定させるための人物指定画面を表示装置に表示する制御を行う表示制御手段と、
前記人物指定画面を介してユーザが指定した人物を前記第一の人物または前記第二の人物として決定する決定手段と、をさらに備え、
前記表示制御手段は、
前記ユーザに第一の人物を指定させる場合には、前記レイアウトデータ内に配置されている画像に含まれる人物を抽出し、抽出した人物を前記人物指定画面に表示する
ことを特徴とする請求項1から請求項10のうちのいずれか1項に記載の情報処理装置。 - 前記表示制御手段は、
前記ユーザに第二の人物を指定させる場合には、前記画像群のいずれかの画像に含まれる人物を抽出し、抽出した人物を前記人物指定画面に表示する
ことを特徴とする請求項13に記載の情報処理装置。 - 画像群から所定数の画像が配置されたレイアウトデータを取得する取得ステップと、
前記画像群を複数のサブ集合に分割する分割ステップと、
前記レイアウトデータ内に配置されている画像のうち第一の人物を含む画像を画像に入れ替える画像入替ステップと、を含み、
前記画像入替ステップにおいて、
前記サブ集合内に、前記画像群に含まれる画像であって前記第一の人物とは異なる第二の人物が含まれる画像がある場合は、前記第一の人物が含まれる画像を前記第二の人物が含まれる画像に入れ替え、
前記サブ集合内に、前記第二の人物が含まれる画像がない場合は、前記第一の人物が含まれる画像を前記第二の人物が含まれる画像に入れ替えない
ことを特徴とする制御方法。 - コンピュータを、請求項1から請求項14のうちのいずれか1項に記載の情報処理装置として機能させるためのプログラム。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2017130426A JP6891059B2 (ja) | 2017-07-03 | 2017-07-03 | 情報処理装置、情報処理装置の制御方法、およびプログラム |
US16/021,311 US10776974B2 (en) | 2017-07-03 | 2018-06-28 | Information processing apparatus and control method of information processing apparatus |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2017130426A JP6891059B2 (ja) | 2017-07-03 | 2017-07-03 | 情報処理装置、情報処理装置の制御方法、およびプログラム |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2019016004A true JP2019016004A (ja) | 2019-01-31 |
JP6891059B2 JP6891059B2 (ja) | 2021-06-18 |
Family
ID=64738125
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2017130426A Active JP6891059B2 (ja) | 2017-07-03 | 2017-07-03 | 情報処理装置、情報処理装置の制御方法、およびプログラム |
Country Status (2)
Country | Link |
---|---|
US (1) | US10776974B2 (ja) |
JP (1) | JP6891059B2 (ja) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP7341677B2 (ja) * | 2019-02-28 | 2023-09-11 | キヤノン株式会社 | 装置、方法、及びプログラム |
JP7250567B2 (ja) * | 2019-02-28 | 2023-04-03 | キヤノン株式会社 | 装置、方法、及びプログラム |
JP2021071766A (ja) | 2019-10-29 | 2021-05-06 | キヤノン株式会社 | 画像処理装置、画像処理方法、およびプログラム |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2015172795A (ja) * | 2014-03-11 | 2015-10-01 | 富士フイルム株式会社 | 画像処理装置、重要人物判定方法、画像レイアウト方法ならびにプログラムおよび記録媒体 |
JP2016149149A (ja) * | 2016-03-30 | 2016-08-18 | 富士フイルム株式会社 | 画像処理装置、重要人物判定方法、画像レイアウト方法ならびにプログラムおよび記録媒体 |
JP2016164748A (ja) * | 2015-03-06 | 2016-09-08 | キヤノン株式会社 | 情報処理装置、プログラム、及び情報処理方法 |
JP2017117405A (ja) * | 2015-12-25 | 2017-06-29 | キヤノン株式会社 | 画像処理装置、プログラム、及び画像処理方法 |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2006236267A (ja) | 2005-02-28 | 2006-09-07 | Fuji Photo Film Co Ltd | 画像出力装置、画像出力方法、及びプログラム |
JP2011065277A (ja) * | 2009-09-15 | 2011-03-31 | Toshiba Corp | 電子機器、画像表示方法およびコンテンツ再生プログラム |
JP5655112B2 (ja) | 2012-09-14 | 2015-01-14 | 富士フイルム株式会社 | 合成画像作成システム、画像処理装置および画像処理方法 |
JP5802255B2 (ja) * | 2013-03-13 | 2015-10-28 | 富士フイルム株式会社 | レイアウト編集装置、レイアウト編集方法およびプログラム |
US10210598B2 (en) * | 2015-06-17 | 2019-02-19 | Samsung Electronics Co., Ltd. | Electronic device for displaying a plurality of images and method for processing an image |
JP6667224B2 (ja) | 2015-08-07 | 2020-03-18 | キヤノン株式会社 | 画像処理装置およびその制御方法、並びにプログラム |
-
2017
- 2017-07-03 JP JP2017130426A patent/JP6891059B2/ja active Active
-
2018
- 2018-06-28 US US16/021,311 patent/US10776974B2/en active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2015172795A (ja) * | 2014-03-11 | 2015-10-01 | 富士フイルム株式会社 | 画像処理装置、重要人物判定方法、画像レイアウト方法ならびにプログラムおよび記録媒体 |
JP2016164748A (ja) * | 2015-03-06 | 2016-09-08 | キヤノン株式会社 | 情報処理装置、プログラム、及び情報処理方法 |
JP2017117405A (ja) * | 2015-12-25 | 2017-06-29 | キヤノン株式会社 | 画像処理装置、プログラム、及び画像処理方法 |
JP2016149149A (ja) * | 2016-03-30 | 2016-08-18 | 富士フイルム株式会社 | 画像処理装置、重要人物判定方法、画像レイアウト方法ならびにプログラムおよび記録媒体 |
Also Published As
Publication number | Publication date |
---|---|
US10776974B2 (en) | 2020-09-15 |
US20190005697A1 (en) | 2019-01-03 |
JP6891059B2 (ja) | 2021-06-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11023666B2 (en) | Narrative-based media organizing system for transforming and merging graphical representations of digital media within a work area | |
JP6009481B2 (ja) | 画像処理装置、重要人物判定方法、画像レイアウト方法ならびにプログラムおよび記録媒体 | |
US8358902B2 (en) | Apparatus, method and program for image search | |
JP6532398B2 (ja) | 画像処理装置、画像処理方法およびプログラム | |
JP6033821B2 (ja) | 画像処理装置、画像処理方法、プログラムおよび記録媒体 | |
EP3065067A1 (en) | Anonymous live image search | |
JP2010141412A (ja) | 画像選択装置及びその制御方法 | |
JP2010244526A (ja) | 共同作業コンテンツを自動的に検知する方法、システムおよびコンピュータプログラム、コンテンツの経時変化を可視化する方法およびシステム | |
JP6891059B2 (ja) | 情報処理装置、情報処理装置の制御方法、およびプログラム | |
JP6080409B2 (ja) | 情報処理装置、情報処理方法、およびプログラム | |
JP2017117404A (ja) | 画像処理装置、画像処理方法、およびプログラム | |
CN108377351A (zh) | 用于在模板上布局图像的图像处理装置和图像处理方法 | |
JP2008234124A (ja) | 代表色抽出方法、および代表色抽出装置 | |
JP2009237703A (ja) | 画像出力方法、装置およびプログラム | |
CN111770386A (zh) | 视频处理方法、视频处理装置及电子设备 | |
JP6667224B2 (ja) | 画像処理装置およびその制御方法、並びにプログラム | |
CN105229999A (zh) | 图像记录装置、图像记录方法以及程序 | |
JP6197063B2 (ja) | 画像処理装置、重要人物判定方法、画像レイアウト方法ならびにプログラムおよび記録媒体 | |
US20110304779A1 (en) | Electronic Apparatus and Image Processing Method | |
JP6393302B2 (ja) | 画像処理装置、画像処理方法、プログラムおよび記録媒体 | |
JP6142551B2 (ja) | 画像編集装置及び画像編集プログラム | |
JP5279360B2 (ja) | 画像再生装置および制御方法およびプログラム | |
US20230156177A1 (en) | Information processing apparatus, information processing method, and storage medium | |
JP7188478B2 (ja) | 検索装置、検索方法、およびプログラム | |
JP2014192795A (ja) | 電子アルバム不足画像検索装置およびその動作制御方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20200629 |
|
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: 20210427 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20210526 |
|
R151 | Written notification of patent or utility model registration |
Ref document number: 6891059 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R151 |