JP2017117405A - Image processing unit, program and image processing method - Google Patents

Image processing unit, program and image processing method Download PDF

Info

Publication number
JP2017117405A
JP2017117405A JP2015255237A JP2015255237A JP2017117405A JP 2017117405 A JP2017117405 A JP 2017117405A JP 2015255237 A JP2015255237 A JP 2015255237A JP 2015255237 A JP2015255237 A JP 2015255237A JP 2017117405 A JP2017117405 A JP 2017117405A
Authority
JP
Japan
Prior art keywords
image data
image
information
face
unit
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2015255237A
Other languages
Japanese (ja)
Other versions
JP6685129B2 (en
Inventor
慶範 溝口
Yoshinori Mizoguchi
慶範 溝口
後藤 文孝
Fumitaka Goto
文孝 後藤
寛康 國枝
Hiroyasu Kunieda
寛康 國枝
正明 大林
Masaaki Obayashi
正明 大林
真耶 黒川
Maya Kurokawa
真耶 黒川
加藤 真夫
Masao Kato
真夫 加藤
池田 徹
Toru Ikeda
徹 池田
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 JP2015255237A priority Critical patent/JP6685129B2/en
Publication of JP2017117405A publication Critical patent/JP2017117405A/en
Application granted granted Critical
Publication of JP6685129B2 publication Critical patent/JP6685129B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Abstract

PROBLEM TO BE SOLVED: To provide an image processing unit capable of improving reproductivity of a layout result.SOLUTION: An image processing unit is configured to: obtain information on a specific portion, for instance, face information, from among a plurality of images being candidates of a layout object; determine an execution order for specific processing using the information, for instance, individual recognition processing; and according to the determined execution order, execute individual recognition processing.SELECTED DRAWING: Figure 11

Description

本発明は画像処理装置、プログラム、及び画像処理方法に関し、特に、例えば、デジタルカメラなどで撮影された複数の画像からフォトアルバムを作成する画像処理装置、プログラム、及び画像処理方法に関する。   The present invention relates to an image processing apparatus, a program, and an image processing method, and more particularly, to an image processing apparatus, a program, and an image processing method for creating a photo album from a plurality of images taken with a digital camera or the like.

近年、ユーザが撮影した画像を自動レイアウトしてアルバムを作成サービスが提供され始めている。ここでいう、自動レイアウトとは、アルバム作成に関する一部もしくは全機能が自動処理されることを指す。例えば、(1)アルバム掲載用に自動で画像を選択する、(2)アルバムに使用するテンプレートを自動で決定する、(3)テンプレートに自動で画像を割り当てる等がこれに該当する。   In recent years, a service for creating an album by automatically laying out images taken by a user has started to be provided. Here, automatic layout refers to automatic processing of some or all of the functions related to album creation. For example, (1) an image is automatically selected for album publication, (2) a template to be used for an album is automatically determined, and (3) an image is automatically assigned to a template.

選択された画像が人物を含む画像であった場合、その画像には重要な人物が含まれている方が好ましい。多くのユーザは、たとえ人物の構図や背景が同じであっても、「通行人がたまたま写り込んだ写真」よりも「自分が写った記念写真」を使ってアルバムを作成することを望む可能性が高い。このような判断を自動で行うのに必要な技術として個人認識技術がある。   When the selected image is an image including a person, it is preferable that the image includes an important person. Many users may want to create an album with a “photograph that they have taken” rather than a “photo that the passer-by has taken” even if the composition and background of the person are the same Is expensive. There is a personal recognition technology as a technology necessary for making such a determination automatically.

例えば、特許文献1では辞書を新規に作成し、検出した顔情報に順次照合処理と登録処理を行う構成を開示している。このように辞書を新規に作成することで、各ユーザに最適な辞書を形成することが特許文献1には記載されている。   For example, Patent Document 1 discloses a configuration in which a dictionary is newly created, and collation processing and registration processing are sequentially performed on detected face information. Patent Document 1 describes that a dictionary that is optimal for each user is formed by creating a new dictionary in this way.

特開2014−44606号公報JP 2014-44606 A

しかしながら、特許文献1のように順次顔辞書の内容を更新する場合、個人認識結果の「再現性」を維持できない場合がある。例えば、マルチスレッドで顔検出を実施すると、タスクの使用状況によって各スレッドの開始・終了タイミングがばらつく。結果として、個人認識処理自体が1つのスレッドだけで動いていても、その1つのスレッドに対して入力される顔情報の入力順番がばらつけば個人認識結果が変わってしまう。   However, when the contents of the face dictionary are sequentially updated as in Patent Document 1, the “reproducibility” of the personal recognition result may not be maintained. For example, when face detection is performed in multiple threads, the start / end timing of each thread varies depending on the task usage status. As a result, even if the personal recognition process itself is operated by only one thread, the personal recognition result changes if the input order of the face information input to the single thread varies.

個人認識結果が変わることは、自動レイアウト結果が変わってしまうことに繋がる。ユーザにとって、同じ画像を何度も用いてアルバム作成をする場合、その都度レイアウト結果の異なるアルバムが作成されることは好ましくない。   Changing the personal recognition result leads to changing the automatic layout result. When creating an album using the same image many times, it is not preferable for the user to create an album with a different layout result each time.

本発明は上記従来例に鑑みてなされたもので、同じ画像であれば同じレイアウト構成が実現可能な画像処理装置、画像処理方法、及び、プログラムを提供することを目的としている。   The present invention has been made in view of the above conventional example, and an object thereof is to provide an image processing apparatus, an image processing method, and a program capable of realizing the same layout configuration for the same image.

上記目的を達成するために本発明の画像処理装置は次のような構成を含む。   In order to achieve the above object, the image processing apparatus of the present invention includes the following arrangement.

即ち、複数の画像データをレイアウトする画像処理装置であって、複数の画像データを取得する取得手段と、前記取得手段により取得された複数の画像データそれぞれの特定の部分の情報をマルチスレッド処理で検出する検出手段と、前記検出手段により検出された前記複数の画像データそれぞれの特定の部分の情報をソートすることで得られたソート結果に基づいて、前記複数の画像データそれぞれの特定の部分の情報に対する、前記特定の部分の情報を用いる特定の処理の実行順序を決定する決定手段と、前記決定手段により決定された実行順序に従って、前記特定の処理を実行する実行手段と、前記実行手段により実行された前記特定の処理の結果に基づいて前記複数の画像データをレイアウトするレイアウト手段とを有することを特徴とする。   That is, an image processing apparatus that lays out a plurality of image data, wherein an acquisition unit that acquires a plurality of image data, and information on a specific portion of each of the plurality of image data acquired by the acquisition unit are processed by multithread processing. Based on the sorting result obtained by sorting the information of the specific part of each of the plurality of image data detected by the detection means and the detection means detected by the detection means, the specific part of each of the plurality of image data A determination unit that determines an execution order of a specific process using information of the specific part for information; an execution unit that executes the specific process according to the execution order determined by the determination unit; and Layout means for laying out the plurality of image data based on a result of the executed specific processing. To.

また本発明を他の側面から見れば、コンピュータを上記構成の装置の各手段として機能させるプログラムを備える。   In another aspect of the present invention, a program for causing a computer to function as each unit of the apparatus having the above-described configuration is provided.

さらに本発明を他の側面から見れば、複数の画像データをレイアウトする画像処理装置における画像処理方法であって、複数の画像データを取得する取得工程と、前記取得された複数の画像データそれぞれの特定の部分の情報をマルチスレッド処理で検出する検出工程と、前記検出された前記複数の画像データそれぞれの特定の部分の情報をソートすることで得られたソート結果に基づいて、前記複数の画像データそれぞれの特定の部分の情報に対する、前記特定の部分の情報を用いる特定の処理の実行順序を決定する決定工程と、前記決定された実行順序に従って、前記特定の処理を実行する実行工程と、前記実行工程において実行された前記特定の処理の結果に基づいて前記複数の画像データをレイアウトするレイアウト工程とを有することを特徴とする画像処理方法を備える。   Further, according to another aspect of the present invention, there is provided an image processing method in an image processing apparatus that lays out a plurality of image data, an acquisition step of acquiring a plurality of image data, and a plurality of acquired image data respectively. The plurality of images based on a detection step of detecting information on a specific part by multi-thread processing and a sorting result obtained by sorting information on the specific part of each of the detected plurality of image data A determination step of determining an execution order of a specific process using the information of the specific part with respect to information of the specific part of each data; an execution step of executing the specific process according to the determined execution order; A layout step of laying out the plurality of image data based on a result of the specific processing executed in the execution step. And an image processing method comprising and.

従って本発明によれば、各画像の特定の部分を検出して得られた情報を用いて特定の処理を実行する場合に、同じ画像データを用いれば、同じレイアウト構成が得られるという効果がある。   Therefore, according to the present invention, when a specific process is executed using information obtained by detecting a specific part of each image, the same layout configuration can be obtained by using the same image data. .

画像処理装置のハードウェアの構成を示すブロック図である。It is a block diagram which shows the structure of the hardware of an image processing apparatus. アルバム作成アプリケーションのソフトウェア構成を示すブロック図である。It is a block diagram which shows the software structure of an album creation application. アルバム作成アプリケーションが提供する表示画面を示す図である。It is a figure which shows the display screen which an album creation application provides. 自動レイアウト処理を示すフローチャートである。It is a flowchart which shows an automatic layout process. ID毎に区別した画像解析情報を示す図である。It is a figure which shows the image analysis information distinguished for every ID. 画像データ群のシーン分割の結果を示す図である。It is a figure which shows the result of the scene division | segmentation of an image data group. シーン毎の平均値と標準偏差を示す図である。It is a figure which shows the average value and standard deviation for every scene. 得点化軸の概念を示す図である。It is a figure which shows the concept of a scoring axis. 画像データの選択を説明するための図である。It is a figure for demonstrating selection of image data. 画像データのレイアウトに使うテンプレート群を示す図である。It is a figure which shows the template group used for the layout of image data. 人物情報解析部205の詳細な構成を示すブロック図である。3 is a block diagram illustrating a detailed configuration of a person information analysis unit 205. FIG. データテーブルの例を示す図である。It is a figure which shows the example of a data table. 実施形態1に従う人物情報解析部が実行する顔検出処理を示すフローチャートである。It is a flowchart which shows the face detection process which the person information analysis part according to Embodiment 1 performs. 実施形態1に従う人物情報解析部が実行する個人認識処理を示すフローチャートである。It is a flowchart which shows the personal recognition process which the person information analysis part according to Embodiment 1 performs. 画像得点部の詳細な構成を示すブロック図である。It is a block diagram which shows the detailed structure of an image score part. 画像得点部が実行するシーン分類後の得点化処理を示すフローチャートである。It is a flowchart which shows the scoring process after the scene classification | category which an image scoring part performs. 選択されたテンプレートを示す図である。It is a figure which shows the selected template. 実施形態2に従うアルバム作成アプリケーションの自動レイアウト処理部が実行する処理を示すフローチャートである。12 is a flowchart showing processing executed by an automatic layout processing unit of the album creating application according to the second embodiment. 実施形態2に従うページ単位での処理をマルチスレッドで実行するフローチャートである。10 is a flowchart for executing processing in units of pages according to the second embodiment in multi-threads. 見開き9ページのアルバムの例を示す図である。It is a figure which shows the example of an album of 2 pages of spreads. 実施形態2に従うアルバム入れ替え処理の詳細を示すフローチャートである。10 is a flowchart showing details of album replacement processing according to the second embodiment. 実施形態3に従う人物情報解析部が実行する顔検出処理を示すローチャートである。It is a flowchart which shows the face detection process which the person information analysis part according to Embodiment 3 performs. 実施形態3に従う人物情報解析部が実行する個人認識処理を示すフローチャートである。It is a flowchart which shows the personal recognition process which the person information analysis part according to Embodiment 3 performs.

以下添付図面を参照して本発明の実施形態について、さらに具体的かつ詳細に説明する。ただし、この実施形態に記載されている構成要素の相対配置等は、特定の記載がない限りは、この発明の範囲をそれらのみに限定する趣旨のものではない。   Hereinafter, embodiments of the present invention will be described more specifically and in detail with reference to the accompanying drawings. However, the relative arrangement and the like of the constituent elements described in this embodiment are not intended to limit the scope of the present invention only to those unless otherwise specified.

なお、この明細書において、「記録」(「プリント」という場合もある)とは、文字、図形等有意の情報を形成する場合のみならず、有意無意を問わない。さらに人間が視覚で知覚し得るように顕在化したものであるか否かも問わず、広く記録媒体上に画像、模様、パターン等を形成する、または媒体の加工を行う場合も表すものとする。   In this specification, “recording” (sometimes referred to as “printing”) is not limited to the case of forming significant information such as characters and graphics, but may be significant. Furthermore, it also represents a case where an image, a pattern, a pattern, or the like is widely formed on a recording medium or a medium is processed regardless of whether or not it is manifested so that a human can perceive it visually.

また、「記録媒体」とは、一般的な記録装置で用いられる紙のみならず、広く、布、プラスチック・フィルム、金属板、ガラス、セラミックス、木材、皮革等、インクを受容可能なものも表すものとする。   “Recording medium” refers not only to paper used in general recording apparatuses but also widely to cloth, plastic film, metal plate, glass, ceramics, wood, leather, and the like that can accept ink. Shall.

<実施形態1>
この実施形態では、画像処理装置上で、アルバム作成アプリケーション(以下、アプリ)を動作させ、自動レイアウトを生成する例について説明する。この実施形態は、顔検出処理をマルチスレッドで実行することが可能な構成となっていることが特徴である。
<Embodiment 1>
In this embodiment, an example in which an album creation application (hereinafter referred to as an application) is operated on an image processing apparatus to generate an automatic layout will be described. This embodiment is characterized in that the face detection process can be executed in a multi-thread manner.

上述した課題でも指摘したように、顔辞書と検出した顔情報との照合結果に従って順次顔辞書の内容を更新する場合、個人認識結果の「再現性」を維持できない場合がある。個人認識結果の再現性は、顔辞書の形成過程に大きく依存する。照合・登録処理の対象となる情報の入力順番が変わる事で辞書の内容が変化してしまうのはクラスタリングの課題である。   As pointed out in the above-described problem, when the contents of the face dictionary are sequentially updated according to the collation result between the face dictionary and the detected face information, the “reproducibility” of the personal recognition result may not be maintained. The reproducibility of personal recognition results largely depends on the face dictionary formation process. It is a clustering problem that the contents of the dictionary change due to a change in the input order of information to be collated and registered.

例えば、顔情報A、B、Cの内、AとCは類似しておらず、BはAにもCにもある程度類似しているとする。仮に顔情報A、B、Cの順に個人認識処理を実行すると、Aを辞書に登録した状態でBを辞書と照合し、顔情報AとBは類似していると判断される。逆に顔情報C、B、Aの順で個人認識処理が実行されたとすると、Cを辞書に登録した状態でBを辞書と照合し、顔情報BとCは類似していると判断される。このように、顔情報Bは既存の辞書情報によってはAもしくはCのどちらにも同一人物として判断され得ることになる。顔検出がマルチスレッドで動作する場合に顔情報の検出順番がその都度異なってしまうため、特許文献1のような構成では検出順番の変更に伴って各顔情報の顔認識結果が異なってしまう。この実施形態ではその課題を解決し、個人認識結果の「再現性」を向上する。   For example, it is assumed that A and C are not similar among face information A, B, and C, and B is somewhat similar to A and C to some extent. If the personal recognition processing is executed in the order of face information A, B, and C, B is checked against the dictionary while A is registered in the dictionary, and face information A and B are determined to be similar. Conversely, if the personal recognition processing is executed in the order of face information C, B, A, B is checked against the dictionary with C registered in the dictionary, and it is determined that face information B and C are similar. . Thus, the face information B can be determined as the same person in both A and C depending on the existing dictionary information. When face detection is performed in a multi-thread manner, the detection order of face information is different each time. Therefore, in the configuration as in Patent Document 1, the face recognition result of each face information is different as the detection order is changed. This embodiment solves the problem and improves the “reproducibility” of the personal recognition result.

図1は画像処理装置のハードウェアの構成を示すブロック図である。なお、画像処理装置としては、例えば、PC、スマートフォン等が挙げられ、本実施形態ではPCとする。   FIG. 1 is a block diagram illustrating a hardware configuration of the image processing apparatus. Examples of the image processing apparatus include a PC and a smartphone. In the present embodiment, the image processing apparatus is a PC.

CPU(中央演算装置/プロセッサ)101は、画像処理装置100を統括的に制御し、例えば、ROM102に記憶されたプログラムをRAM103に読み出して実行することにより、本実施形態の動作を実現する。図1では、CPUは1つであるが、複数のCPUで構成されても良い。ROM102は、汎用的なROMであり、例えば、CPU101により実行されるプログラムが記憶されている。RAM103は、汎用的なRAMであり、例えば、CPU101によるプログラムの実行時に、各種情報を一時的に記憶するためのワーキングメモリとして用いられる。HDD(ハードディスク)104は、画像ファイル、画像データ、画像解析などの処理結果を保持するデータベースや、アルバム作成アプリケーションにより用いられるテンプレートなどを記憶するための記憶媒体(記憶部)である。   A CPU (central processing unit / processor) 101 controls the image processing apparatus 100 as a whole, and implements the operation of the present embodiment by reading a program stored in the ROM 102 into the RAM 103 and executing it, for example. In FIG. 1, there is one CPU, but it may be composed of a plurality of CPUs. The ROM 102 is a general-purpose ROM, and stores programs executed by the CPU 101, for example. The RAM 103 is a general-purpose RAM, and is used as a working memory for temporarily storing various types of information when the CPU 101 executes a program, for example. The HDD (hard disk) 104 is a storage medium (storage unit) for storing a database that holds processing results such as image files, image data, and image analysis, a template used by an album creation application, and the like.

ディスプレイ105は、本実施形態のユーザインタフェース(UI)や画像データのレイアウト結果をユーザに表示する。キーボード106及びポインティングデバイス107は、ユーザからの指示操作を受け付ける。ディスプレイ105は、タッチセンサ機能を備えても良い。キーボード106は、例えば、ユーザが、ディスプレイ105に表示されたUI上に、作成したいアルバムの見開き数等の入力をユーザから受け付ける際に用いられる。ポインティングデバイス107は、例えば、ユーザが、ディスプレイ105に表示されたUI上のボタンをクリックする際に用いられる。   The display 105 displays the user interface (UI) of the present embodiment and the layout result of the image data to the user. The keyboard 106 and the pointing device 107 receive an instruction operation from the user. The display 105 may have a touch sensor function. The keyboard 106 is used when, for example, the user receives an input from the user such as the number of spreads of an album to be created on the UI displayed on the display 105. The pointing device 107 is used when the user clicks a button on the UI displayed on the display 105, for example.

データ通信部108は、有線や無線等のネットワークを介した外部の装置との通信を行う。データ通信部108は、例えば、自動レイアウト機能によりレイアウトされたデータを画像処理装置100と通信可能なプリンタやサーバに送信する。データバス109は、図1の各ブロック間を相互に通信可能に接続する。   The data communication unit 108 communicates with an external device via a wired or wireless network. For example, the data communication unit 108 transmits data laid out by the automatic layout function to a printer or server that can communicate with the image processing apparatus 100. The data bus 109 connects the blocks in FIG. 1 so that they can communicate with each other.

本実施形態におけるアルバム作成アプリケーションは、HDD104に保存され、後述するようにユーザがディスプレイ105に表示されているアプリケーションのアイコンをポインティングデバイス107によりダブルクリックして起動する。   The album creating application according to the present embodiment is stored in the HDD 104, and the user double-clicks the application icon displayed on the display 105 and starts up as will be described later.

図2はアルバム作成アプリケーションのソフトウェア構成を示すブロック図である。図2は、特に、自動レイアウト機能を実行する自動レイアウト処理部に関するソフトウェアブロック図を示している。アルバム作成条件指定部201は、ポインティングデバイス107による後述のユーザのUI操作に応じたアルバム作成条件を図2において太い実線の枠で囲んだ自動レイアウト処理部に出力する。   FIG. 2 is a block diagram showing the software configuration of the album creation application. FIG. 2 particularly shows a software block diagram relating to an automatic layout processing unit for executing an automatic layout function. The album creation condition designating unit 201 outputs album creation conditions according to a user's UI operation described later by the pointing device 107 to the automatic layout processing unit surrounded by a thick solid line frame in FIG.

画像取得部202は、アルバム作成条件指定部201から指定された画像データ群をHDD104から取得する。なお、画像データ群は、データ通信部108を介してネットワーク上のサーバやSNSから取得されても良い。取得した画像データ群は、撮影日時順にソートされシリアル番号の対応付けがなされる。シリアル番号を使用することで指定画像データの処理を行う際に情報の特定が容易になる。画像変換部203は、以降の処理に用いる画像データを所望の画素数や色情報に変換する。本実施形態では、短辺420画素の画素数とsRGBの色情報の解析画像データに変換する。   The image acquisition unit 202 acquires the image data group designated from the album creation condition designation unit 201 from the HDD 104. The image data group may be acquired from a server or SNS on the network via the data communication unit 108. The acquired image data groups are sorted in order of shooting date and time, and serial numbers are associated. By using the serial number, it becomes easy to specify information when processing the designated image data. The image conversion unit 203 converts image data used for subsequent processing into a desired number of pixels and color information. In this embodiment, the image data is converted into analysis image data of 420 pixels of the short side and sRGB color information.

画像解析部204は、解析画像データから後述の特徴量の取得を実行する。人物情報解析部205は、顔検出、個人認識の各処理を実行する。また、画像解析部204は、HDD104から取得した画像データに付随したデータの取得、例えばExif情報から撮影日時の取得も実行する。画像分類部206は、画像データ群に対して撮影日時情報や撮影枚数、検出した顔情報等を用いて、後述のシーン分割やシーン分類を実行する。シーンとは、旅行や日常、結婚式等の撮影シーンのことである。画像得点部208は、レイアウトに適した画像データが高得点になるような得点付けを行う。   The image analysis unit 204 executes acquisition of a feature amount described later from the analysis image data. The person information analysis unit 205 executes face detection and individual recognition processes. The image analysis unit 204 also acquires data associated with the image data acquired from the HDD 104, for example, acquisition of the shooting date and time from Exif information. The image classification unit 206 executes scene division and scene classification described later using the shooting date / time information, the number of shots, detected face information, and the like for the image data group. A scene is a shooting scene such as a trip, daily life, wedding or the like. The image scoring unit 208 performs scoring so that image data suitable for the layout has a high score.

主人公情報入力部207は、アルバム作成条件指定部201から指示された主人公のID(識別情報)を画像得点部208に入力する。画像得点部208は、主人公情報入力部207から入力された主人公IDが含まれる画像データについてより高い得点を付加するように構成されている。   The main character information input unit 207 inputs the main character ID (identification information) instructed from the album creation condition specifying unit 201 to the image scoring unit 208. The image score unit 208 is configured to add a higher score to the image data including the main character ID input from the main character information input unit 207.

見開き割当部210は、画像データ群を分割(グルーピング)してアルバムの各見開きに割り当てる。見開き数入力部209は、アルバム作成条件指定部201から指定されたアルバムの見開き数を見開き割当部210に入力する。見開き割当部210は、入力された見開き数に応じて画像データ群を分割し、各見開きに画像データ群の一部(分割分、又は画像グループともいう)を割り当てる。画像選択部211は、見開き割当部210で各見開きに割り当てられた画像データ群の一部から、アルバム作成条件指定部201から指定されたスロット数分の画像データを、画像得点部208で付された得点に基づいて選択する。   The spread assignment unit 210 divides (groups) the image data group and assigns it to each spread of the album. The spread number input unit 209 inputs the number of spreads of the album designated by the album creation condition designation unit 201 to the spread allocation unit 210. The spread assignment unit 210 divides the image data group according to the input number of spreads, and assigns a part of the image data group (also referred to as division or image group) to each spread. The image selection unit 211 adds image data corresponding to the number of slots designated by the album creation condition designation unit 201 from a part of the image data group assigned to each spread by the spread assignment unit 210 by the image scoring unit 208. Select based on score obtained.

画像レイアウト部213は、画像データのレイアウトを決定する。テンプレート入力部212は、アルバム作成条件指定部201から指定されたテンプレート情報に応じた複数のテンプレートを画像レイアウト部213に入力する。画像レイアウト部213は、画像選択部211で選択された画像データに適したテンプレートを、テンプレート入力部212から入力された複数のテンプレートから選択し、画像データのレイアウトを決定する。レイアウト情報出力部216は、画像レイアウト部213が決定した画像データのレイアウトに従って、ディスプレイ105に表示する為のレイアウト情報を出力する。レイアウト情報は、例えば、選択されたテンプレートに画像選択部211により選択された画像データをレイアウトしたビットマップデータである。   The image layout unit 213 determines the layout of the image data. The template input unit 212 inputs a plurality of templates corresponding to the template information specified from the album creation condition specifying unit 201 to the image layout unit 213. The image layout unit 213 selects a template suitable for the image data selected by the image selection unit 211 from a plurality of templates input from the template input unit 212, and determines the layout of the image data. The layout information output unit 216 outputs layout information to be displayed on the display 105 in accordance with the image data layout determined by the image layout unit 213. The layout information is, for example, bitmap data obtained by laying out the image data selected by the image selection unit 211 on the selected template.

画像補正部215は、覆い焼き補正、赤目補正、コントラスト補正を実行する。画像補正条件入力部214は、アルバム作成条件指定部201から指定された画像補正のON/OFF条件を画像補正部215に入力する。画像補正部215は、画像補正条件がONの場合、画像データに対して補正を実行し、画像補正条件がOFFの場合、補正を実行しない。尚、画像補正部215は、画像変換部203から入力された画像データに対して補正のON/OFFに従って、補正を実行する。画像変換部203から画像補正部215に入力される画像データの画素数は、画像レイアウト部213で決定したレイアウトのサイズに合わせて変更可能である。   The image correction unit 215 performs dodging correction, red-eye correction, and contrast correction. The image correction condition input unit 214 inputs the image correction ON / OFF condition designated by the album creation condition designation unit 201 to the image correction unit 215. The image correction unit 215 performs correction on the image data when the image correction condition is ON, and does not execute correction when the image correction condition is OFF. Note that the image correction unit 215 performs correction on the image data input from the image conversion unit 203 in accordance with ON / OFF of the correction. The number of pixels of the image data input from the image conversion unit 203 to the image correction unit 215 can be changed according to the layout size determined by the image layout unit 213.

アルバム作成アプリケーションは、画像処理装置100にインストールされると、画像処理装置100上で動作するOS(オペレーティングシステム)のトップ画面(デスクトップ)上に起動アイコンが表示される。ユーザがディスプレイ105に表示されているディスプレイ105上の起動アイコンをポインティングデバイス107でダブルクリックすると、HDD104に保存されているアルバム作成アプリケーションのプログラムがROM102にロードされる。ROM102のプログラムがCPU101によりRAM103に読み出されて実行されると、アルバム作成アプリケーションが起動する。   When the album creation application is installed in the image processing apparatus 100, a startup icon is displayed on a top screen (desktop) of an OS (operating system) that runs on the image processing apparatus 100. When the user double-clicks the start icon on the display 105 displayed on the display 105 with the pointing device 107, the album creation application program stored in the HDD 104 is loaded into the ROM 102. When the program in the ROM 102 is read by the CPU 101 into the RAM 103 and executed, the album creation application is activated.

図3は、アルバム作成アプリケーションが提供する表示画面301の一例を示す図である。   FIG. 3 is a diagram illustrating an example of a display screen 301 provided by the album creation application.

表示画面301は、ディスプレイ105に表示される。ユーザは表示画面301を介して後述するアルバムの作成条件を設定し、アルバム作成条件指定部201は、ユーザにより設定された内容を取得する。   A display screen 301 is displayed on the display 105. The user sets album creation conditions, which will be described later, via the display screen 301, and the album creation condition designating unit 201 acquires the contents set by the user.

表示画面301上のパスボックス302は、アルバム作成の対象となる画像データ群のHDD104中の保存場所(パス)を表示する。フォルダ選択ボタン303は、ユーザからのポインティングデバイス107でのクリック操作により、アルバム作成の対象とする画像データ群を含むフォルダをツリー構成でユーザ選択可能に表示する。ユーザにより選択された画像データ群を含むフォルダパスが、パスボックス302に表示される。   A path box 302 on the display screen 301 displays a storage location (path) in the HDD 104 of the image data group to be created. A folder selection button 303 displays a folder including an image data group to be created as an album creation target in a tree structure so that the user can select it by clicking on the pointing device 107 from the user. A folder path including the image data group selected by the user is displayed in the path box 302.

主人公指定アイコン304は、ユーザが主人公を指定するためのアイコンであり、人物の顔画像がアイコンとして表示される。主人公指定アイコン304には、複数の異なる顔画像のアイコンが並んで表示され、ユーザがポインティングデバイス107によりクリックして選択可能である。なお、それぞれの顔画像は個人IDと関連付けて登録されている。また、主人公指定アイコン304は、解析対象の画像データが表わす画像に写った人物から中心人物である主人公を特定するために用いられる。顔画像は、例えば、予め画像データから検出され、個人IDと関連付けて顔データベースに登録されている。主人公指定アイコン304は、例えば顔データベースに登録された人物の顔画像のうち、ユーザによって選択された人物の顔画像や自動設定されることもできる。   The hero designation icon 304 is an icon for the user to designate a hero, and a person's face image is displayed as an icon. A plurality of different face image icons are displayed side by side on the main character designation icon 304, and can be selected by the user by clicking with the pointing device 107. Each face image is registered in association with a personal ID. The hero designation icon 304 is used to specify the hero who is the central person from the person shown in the image represented by the image data to be analyzed. For example, the face image is detected in advance from the image data and registered in the face database in association with the personal ID. The hero designation icon 304 can be automatically set, for example, as a face image of a person selected by a user among face images registered in the face database.

見開き数ボックス305は、ユーザからのアルバムの見開き数の設定を受け付ける。ユーザは、キーボード106を介して見開き数ボックス305に直接数字を入力するか、ポインティングデバイス107を用いてリストから見開き数ボックス305に数字を入力する。   The spread number box 305 accepts the setting of the number of spreads of the album from the user. The user inputs a number directly into the spread number box 305 via the keyboard 106 or inputs a number from the list into the spread number box 305 using the pointing device 107.

テンプレート指定アイコン306は、テンプレートのテイスト(ポップ調やシック調等)別にイラスト画像を表示する。テンプレート指定アイコン306には、複数のテンプレートアイコンが並んで表示され、ユーザがポインティングデバイス107によりクリックして選択可能である。チェックボックス307は、ユーザからの画像補正のON/OFFの指定を受け付ける。チェックが入った状態は画像補正ONが指定された状態であり、チェックが入っていない状態は画像補正OFFが指定された状態である。なお、UI構成画面301は複数の補正処理についてまとめてON/OFFを設定可能に構成されているが、個別の補正処理ごとにON/OFFを設定可能に構成されても良い。   The template designation icon 306 displays an illustration image for each template taste (pop style, chic style, etc.). A plurality of template icons are displayed side by side on the template designation icon 306 and can be selected by the user by clicking with the pointing device 107. A check box 307 receives an ON / OFF designation for image correction from the user. A state with a check is a state in which image correction ON is designated, and a state without a check is a state in which image correction OFF is designated. The UI configuration screen 301 is configured to be able to set ON / OFF for a plurality of correction processes collectively, but may be configured to be able to set ON / OFF for each individual correction process.

ユーザによりOKボタン308が押下されると、アルバム作成条件指定部201は、表示画面301上で設定されている内容を取得する。アルバム作成条件指定部201は、取得した設定内容を、アルバム作成アプリケーションの自動レイアウト処理部に出力する。その際、パスボックス302に入力されているパスは、画像取得部202に伝えられる。主人公指定アイコン304で選択されている主人公の個人IDは、主人公情報入力部207に伝えられる。見開き数ボックス305に入力されている見開き数は、見開き数入力部209に伝えられる。テンプレート指定アイコン306で選択されているテンプレート情報は、テンプレート入力部212に伝えられる。画像補正のチェックボックス307の画像補正のON/OFF指定は、画像補正条件入力部214に伝えられる。表示画面301上のリセットボタン309は、表示画面301上の各設定情報をリセットするためのボタンである。   When the user presses an OK button 308, the album creation condition designating unit 201 acquires the contents set on the display screen 301. The album creation condition designation unit 201 outputs the acquired setting contents to the automatic layout processing unit of the album creation application. At this time, the path input in the path box 302 is transmitted to the image acquisition unit 202. The personal ID of the main character selected by the main character specifying icon 304 is transmitted to the main character information input unit 207. The spread number input in the spread number box 305 is transmitted to the spread number input unit 209. The template information selected by the template designation icon 306 is transmitted to the template input unit 212. The image correction ON / OFF designation in the image correction check box 307 is transmitted to the image correction condition input unit 214. A reset button 309 on the display screen 301 is a button for resetting each setting information on the display screen 301.

図4は、アルバム作成アプリケーションの自動レイアウト処理部の処理を示すフローチャートである。なお、本願のフローチャートは、例えば、CPU101がHDD104に記憶されたプログラムをROM102やRAM103に読み出して実行することにより実現される。   FIG. 4 is a flowchart showing the processing of the automatic layout processing unit of the album creation application. Note that the flowchart of the present application is realized, for example, when the CPU 101 reads a program stored in the HDD 104 into the ROM 102 or the RAM 103 and executes the program.

ここで、図4を参照しながら、自動レイアウト処理を説明する。   Here, the automatic layout process will be described with reference to FIG.

S401では、画像変換部203は、解析画像データを生成する。画像変換部203は、アルバム作成条件指定部201で指定されたHDD104の画像データ群の各画像データを所望の画素数と色情報の解析画像データに変換する。本実施形態では、短辺420画素とsRGBの色情報の解析画像データに変換する。   In step S401, the image conversion unit 203 generates analysis image data. The image conversion unit 203 converts each image data of the image data group of the HDD 104 designated by the album creation condition designating unit 201 into analysis image data having a desired number of pixels and color information. In this embodiment, the analysis image data is converted to 420 pixels of short sides and sRGB color information.

S402では、画像解析部204は、画像特徴量を解析し、取得する。画像解析部204は、HDD104から取得した各画像データに付随する、例えばExif情報から撮影日時を取得する。また、画像解析部204は、S401で生成された解析画像データから特徴量を取得する。特徴量としては、例えば、ピントである。エッジの検出方法として一般的にソーベルフィルタが知られている。ソーベルフィルタでエッジ検出を行い、エッジの始点と終点の輝度差を、始点と終点の距離で割れば、エッジの傾き(輝度勾配)が算出される。画像中のエッジの平均傾きを算出した結果から、平均傾きが大きい画像は、平均傾きが小さい画像よりもピントが合っているとみなすことができる。そして、傾きに対して異なる値の複数の閾値を設定すれば、どの閾値以上かを判定することにより、ピント量の評価値を出力可能である。本実施形態では、異なる2つの閾値を予め設定しておき、○△×の3段階により、ピント量を判定する。例えば、アルバムに採用したいピントの傾きを○と判定し、許容可能なピントの傾きを△と判定し、許容不可能な傾きを×と判定し、各閾値を予め設定しておく。閾値の設定は、例えば、アルバム作成アプリケーションの作成元等により提供されても良いし、ユーザインタフェース上で設定可能としても良い。   In step S402, the image analysis unit 204 analyzes and acquires the image feature amount. The image analysis unit 204 acquires the shooting date and time from, for example, Exif information attached to each image data acquired from the HDD 104. Further, the image analysis unit 204 acquires a feature amount from the analysis image data generated in S401. For example, the feature amount is in focus. A Sobel filter is generally known as an edge detection method. Edge detection is performed by a Sobel filter, and the edge gradient (luminance gradient) is calculated by dividing the luminance difference between the start point and the end point of the edge by the distance between the start point and the end point. From the result of calculating the average inclination of the edges in the image, an image with a large average inclination can be considered to be in focus than an image with a small average inclination. If a plurality of threshold values having different values with respect to the inclination are set, it is possible to output an evaluation value of the focus amount by determining which threshold value or more. In the present embodiment, two different threshold values are set in advance, and the focus amount is determined in three stages of ◯ Δ ×. For example, the focus inclination to be adopted for the album is determined as ◯, the allowable focus inclination is determined as Δ, the unacceptable inclination is determined as X, and each threshold is set in advance. The threshold setting may be provided by, for example, the creator of the album creation application, or may be set on the user interface.

S403では、人物情報解析部205は、S401で生成された解析画像データに対して、顔検出を実行する。ここで、顔検出の処理には、公知の方法を用いることができ、例えば、複数用意した弱識別器から強識別器を作成するAdaboostが用いられる。本実施形態では、Adaboostにより作成した強識別器により人物(オブジェクト)の顔画像が検出される。   In step S403, the person information analysis unit 205 performs face detection on the analysis image data generated in step S401. Here, a known method can be used for the face detection process, for example, Adaboost that creates a strong classifier from a plurality of weak classifiers prepared. In this embodiment, a face image of a person (object) is detected by a strong classifier created by Adaboost.

人物情報解析部205は、顔画像を抽出するとともに、検出した顔画像の位置の左上座標値と右下座標値を取得する。この2種の座標を持つことにより、画像解析部204は、顔画像の位置と顔画像のサイズを取得可能である。ここで、顔に限らず、犬や猫等の動物、花、食べ物、建物、置物等のオブジェクトを顔の代わりの検出対象としてAdaboostにより強識別器を作成しても良い。これにより、画像解析部204は、顔画像以外のオブジェクトを検出することができる。   The person information analysis unit 205 extracts a face image and acquires the upper left coordinate value and the lower right coordinate value of the detected face image position. By having these two types of coordinates, the image analysis unit 204 can acquire the position of the face image and the size of the face image. Here, not only the face but also animals such as dogs and cats, flowers, food, buildings, figurines and other objects such as objects to be detected instead of faces may be used to create a strong discriminator using Adaboost. Thereby, the image analysis unit 204 can detect an object other than the face image.

S404では、人物情報解析部205は、S403で検出した顔画像と、顔辞書データベースに個人ID毎に保存されている代表顔画像との類似性を比較することにより、個人認識を行う。人物情報解析部205は、類似性が閾値以上で類似性が最も高いIDを、検出した顔画像のIDとする。尚、最も高い類似性が閾値未満の場合、人物情報解析部205は、抽出した顔画像を新規の顔として新規の個人IDとして顔辞書データベースに登録する。ここで、顔に限らず、犬や猫等の動物、花、食べ物、建物、置物等のオブジェクトを顔の代わりの認識対象としても良い。例えば人物情報解析部205が犬を検出対象とした場合、犬種を識別するように類似性を比較することが可能である。   In S404, the person information analysis unit 205 performs personal recognition by comparing the similarity between the face image detected in S403 and the representative face image stored for each personal ID in the face dictionary database. The person information analysis unit 205 sets the ID having the highest similarity that is equal to or higher than the threshold as the ID of the detected face image. When the highest similarity is less than the threshold, the person information analysis unit 205 registers the extracted face image as a new face in the face dictionary database as a new personal ID. Here, not only the face but also animals such as dogs and cats, flowers, food, buildings, figurines, and the like may be used as recognition targets instead of faces. For example, when the person information analysis unit 205 sets a dog as a detection target, it is possible to compare similarities so as to identify dog breeds.

この実施形態の特徴的な構成の1つである人物情報解析部205の詳細な構成について説明する。人物情報解析部205では、図4のS403における顔検出処理とS404における個人認識処理とを実行する。   A detailed configuration of the person information analysis unit 205, which is one of the characteristic configurations of this embodiment, will be described. The person information analysis unit 205 executes the face detection process in S403 of FIG. 4 and the personal recognition process in S404.

図11は人物情報解析部205の詳細な構成を示すブロック図である。なお、本実施形態では、図11の1401〜1403がマルチスレッドで実施され、1404〜1406がシングルスレッドで実施されるものとする。また、本願では、マルチスレッドで顔検出が実行されることにより顔情報の検出順番がその都度異なってしまう場合であっても、1403〜1405を実行することで、個人認識結果の「再現性」を向上することが可能となる。   FIG. 11 is a block diagram showing a detailed configuration of the person information analysis unit 205. In the present embodiment, it is assumed that 1401 to 1403 in FIG. 11 are implemented by multithreads, and 1404 to 1406 are implemented by single threads. Further, in the present application, even if the detection order of face information is different each time due to multi-threaded face detection, by executing 1403 to 1405, “reproducibility” of the personal recognition result is obtained. Can be improved.

画像情報取得部1401はユーザから入力された画像データの情報を取得する。また、画像情報取得部1401は画像解析部204で取得した画像解析情報も取得することができる。画像解析部204で取得した情報を人物情報解析部205で利用することで、部分的な色情報取得などの双方で実施する処理の重複を取り除き高速化を図ることができる。   An image information acquisition unit 1401 acquires information of image data input from a user. The image information acquisition unit 1401 can also acquire the image analysis information acquired by the image analysis unit 204. By using the information acquired by the image analysis unit 204 in the person information analysis unit 205, it is possible to eliminate the duplication of processing performed in both of the partial color information acquisition and to increase the speed.

顔情報取得部1402は、画像情報取得部1401で取得した画像データの情報から画像に写る顔を検出し、その検出結果を取得する。検出結果は、顔の数、各顔の位置情報、各顔の大きさ情報、各顔の回転角度、各顔の向き、各顔同士の位置関係、各顔の検出信頼度などを含む。検出信頼度とは、顔検出結果で顔と判定された領域に対して、「顔らしさ」の度合いを数値化したものである。また、検出結果として、検出された顔領域の画素値も取得することができる。本実施形態では検出された顔領域の画素値は後述の個人認識処理のために情報を正規化してから取得する。   The face information acquisition unit 1402 detects a face appearing in an image from the information of the image data acquired by the image information acquisition unit 1401 and acquires the detection result. The detection result includes the number of faces, the position information of each face, the size information of each face, the rotation angle of each face, the orientation of each face, the positional relationship between each face, the detection reliability of each face, and the like. The detection reliability is obtained by quantifying the degree of “face-likeness” with respect to an area determined to be a face by the face detection result. Further, the pixel value of the detected face area can also be acquired as a detection result. In the present embodiment, the pixel value of the detected face area is acquired after normalizing information for the personal recognition process described later.

顔情報ナンバリング部1403は、顔情報取得部1402で取得した複数の顔情報について、シリアル番号を付与する。本実施形態では、画像データ間の情報である画像シリアル番号と画像データ内の情報である顔シリアル番号を取得した各顔情報と対応付けて管理する。画像シリアル番号は画像データに対応付けられていたシリアル番号を使用する。顔シリアル番号は検出した各顔をS403における顔検出時に取得した検出信頼度でソートし、ソートされた各顔に対してナンバリングする。   The face information numbering unit 1403 assigns serial numbers to a plurality of pieces of face information acquired by the face information acquisition unit 1402. In this embodiment, an image serial number that is information between image data and a face serial number that is information in the image data are managed in association with each acquired face information. The serial number associated with the image data is used as the image serial number. The face serial numbers are sorted according to the detection reliability acquired at the time of face detection in S403, and numbered for each sorted face.

例えば、画像に写る顔数(画像データに含まれる顔数)が3人(顔A、顔B、顔C)で各顔の検出信頼度が顔A=80、顔B=70、顔C=90であった場合、顔シリアル番号として顔Aに1、顔Bに2、顔Cに0が割り当てられる。なお、顔の検出信頼度の数値が高い程、より顔らしいと判断されることを示す。顔の検出信頼度を基準にソートを行うことで、後述のS404における個人認識処理の辞書精度を高めることができる。また、ソート実行後に、検出信頼度に対して閾値を設けることもできる。例えば、顔検出閾値を75とした時、S403における顔検出実行後の検出顔数は3人だったが、閾値処理によって顔B=70は顔とみなされず、合計顔数は2人となる。また、S403における顔検出時に得られる顔の向き情報から、顔の向きによっては検出顔をナンバリングしないことも可能である。例えば、顔A:正面、顔B:正面、顔C:横顔であり、正面向きの顔のみをナンバリング対象とした場合、検出実行後の検出顔数は3人だったが、顔の向きを用いたフィルタ処理によって、合計顔数は2人となる。   For example, the number of faces in the image (the number of faces included in the image data) is three (face A, face B, face C), and the detection reliability of each face is face A = 80, face B = 70, face C = If it is 90, 1 is assigned to face A, 2 to face B, and 0 to face C as the face serial number. It should be noted that the higher the value of the face detection reliability, the more likely it is to be a face. By performing the sorting based on the detection reliability of the face, it is possible to improve the dictionary accuracy of the personal recognition process in S404 described later. In addition, a threshold can be set for the detection reliability after sorting. For example, when the face detection threshold is 75, the number of detected faces after the face detection in S403 is 3, but the face B = 70 is not regarded as a face by the threshold processing, and the total number of faces is 2. Further, from the face orientation information obtained at the time of face detection in S403, the detected face may not be numbered depending on the face orientation. For example, when face A: front, face B: front, face C: profile, and only the face facing front is the numbering target, the number of detected faces after the detection execution was three, but the face orientation was used. The total number of faces is 2 by the filtering process.

情報管理部1404は、顔情報取得部1402で取得した複数の顔情報と顔情報ナンバリング部1403で取得した画像シリアル番号、顔シリアル番号とを紐付けて管理する。情報管理部1404は顔関連情報(顔情報とシリアル番号の組み合わせ情報)をROM102やRAM103に逐次保存する。ROM102、RAM103の記憶可能領域が保管する顔関連情報によって少なくなった場合、もしくは、ROM102、RAM103の記憶領域は他に割当て対象のデータがあるという場合はHDD104に保管することもできる。また、本実施形態では保管情報として、各顔の情報を個別に持つだけでなく、保管された顔群を管理するデータテーブルを保管することもできる。   The information management unit 1404 manages the plurality of face information acquired by the face information acquisition unit 1402 and the image serial number and face serial number acquired by the face information numbering unit 1403 in association with each other. The information management unit 1404 sequentially stores face related information (combination information of face information and serial number) in the ROM 102 and RAM 103. If the storable areas of the ROM 102 and RAM 103 are reduced due to the face-related information stored, or if there are other storage target data in the ROM 102 and RAM 103, they can be stored in the HDD 104. In the present embodiment, as the storage information, not only can each face information be individually stored, but also a data table for managing the stored face group can be stored.

図12(A)はデータテーブルの例を示す図である。   FIG. 12A shows an example of a data table.

図12(A)に示すように、後述する図12のS1205、S1206の処理が終了すると画像シリアル番号と顔シリアル番号とは紐付けて管理される。データテーブルは情報管理部1404が取得した顔関連情報の順番に記憶することになるが、システム構成やCPU101の性能によって、画像シリアル番号が昇順で記憶されない場合もある。その場合、データテーブルには欠番について記憶しても良いし、欠番は書き飛ばしても良い。本実施形態では、画像データから顔情報が検出されなかったときは欠番を記載(画像シリアル番号は記載し、顔シリアル番号は「-」を記憶)する。また、本実施形態では、画像データから顔が複数検出されたが、顔の向きが正面でない等の要因で、顔検出信頼度ソートが行われた後に取り除かれた顔情報に関しては欠番の書き飛ばしを行う。データテーブルに格納された情報は各顔情報を一意に特定することができる。   As shown in FIG. 12A, when the processing of S1205 and S1206 in FIG. 12 to be described later is completed, the image serial number and the face serial number are managed in association with each other. The data table is stored in the order of the face related information acquired by the information management unit 1404, but the image serial number may not be stored in ascending order depending on the system configuration and the performance of the CPU 101. In this case, the missing number may be stored in the data table, or the missing number may be skipped. In this embodiment, when face information is not detected from image data, a missing number is written (the image serial number is written and the face serial number is stored as “−”). In this embodiment, a plurality of faces are detected from the image data, but missing face numbers are skipped for face information removed after the face detection reliability sort is performed due to factors such as the face direction being not front. I do. Information stored in the data table can uniquely identify each face information.

順序制御部1405は、情報管理部1404で管理された複数の顔関連情報を取得し、顔関連情報が持つシリアル番号を用いたソート処理を行う。なお、このソート処理は、画像シリアル番号を用いたソート処理と顔シリアル番号を用いたソート処理の両方を指す。顔関連情報がROM102、RAM103に格納されている場合、ROM102、RAM103から必要情報を読み出しソートする。HDD104に格納してある場合も同様にHDD104から必要情報を読み出しソートする。この必要情報とは、顔関連情報における全ての情報でも良いし、顔群を管理するデータテーブル(図12(A))だけでも良い。   The order control unit 1405 acquires a plurality of pieces of face related information managed by the information management unit 1404, and performs sort processing using the serial numbers of the face related information. This sort process refers to both a sort process using an image serial number and a sort process using a face serial number. When face-related information is stored in the ROM 102 and RAM 103, necessary information is read from the ROM 102 and RAM 103 and sorted. Similarly, when stored in the HDD 104, necessary information is read from the HDD 104 and sorted. The necessary information may be all information in the face related information or only a data table (FIG. 12A) for managing the face group.

本実施形態では画像シリアル番号で昇順ソート、同一画像シリアル番号内で顔シリアル番号の昇順ソートを実行する。この2つの昇順ソートの結果、図12(B)が得られる。なお、図12(A)に示したデータテーブルに格納されていた欠番や書き飛ばしの箇所は順序制御部1405で吸収し、画像シリアル番号と顔シリアル番号が割り振られているデータに限って「個人認識実行順番」が割り振られる。   In this embodiment, the image serial number is sorted in ascending order, and the face serial number is sorted in ascending order within the same image serial number. As a result of these two sorts in ascending order, FIG. 12B is obtained. It should be noted that missing numbers and skipped portions stored in the data table shown in FIG. 12A are absorbed by the order control unit 1405, and only for data to which image serial numbers and face serial numbers are assigned, "Recognition execution order" is assigned.

個人認識情報取得部1406は、順序制御部1405がソートした顔関連情報の順番に個人認識処理を実行する。個人認識処理は大別して「類似性算出処理」と「辞書登録処理」がある。個人認識情報取得部1406は、まず新規の顔辞書を作成する。顔辞書には、登録された顔情報の一部もしくは全てが記録されることになる。つまり、マルチスレッドで顔検出が実行されることにより顔情報の検出順番がその都度異なってしまう場合であっても、ソートされた顔関連情報の順番で個人認識処理が実行されるため、個人認識結果の「再現性」を実現できる。   The personal recognition information acquisition unit 1406 executes personal recognition processing in the order of the face related information sorted by the order control unit 1405. The personal recognition processing is roughly classified into “similarity calculation processing” and “dictionary registration processing”. The personal recognition information acquisition unit 1406 first creates a new face dictionary. A part or all of the registered face information is recorded in the face dictionary. In other words, even if the detection order of face information changes each time due to multi-threaded face detection, the personal recognition processing is executed in the order of the sorted face-related information. The “reproducibility” of the results can be realized.

個人認識情報取得部1406は、はじめに1人目に入力された顔情報を登録する。図12(B)における個人認識実行順番“0”の顔情報がそれに該当する。登録時は顔関連情報に個人IDを紐付ける。本実施形態において、辞書に登録済みの顔がない状態であれば、新規で登録する顔情報には個人ID=0を与える。なお、本実施形態では辞書が新規作成され、はじめの顔情報を登録するが、辞書の初期状態であるかどうかは問わない。例えば、既に辞書に顔情報が登録済みであっても良い。   The personal recognition information acquisition unit 1406 first registers the face information input to the first person. The face information of the personal recognition execution order “0” in FIG. At the time of registration, the personal ID is linked to the face related information. In this embodiment, if there is no registered face in the dictionary, personal ID = 0 is assigned to newly registered face information. In this embodiment, a new dictionary is created and the first face information is registered, but it does not matter whether the dictionary is in the initial state. For example, face information may already be registered in the dictionary.

次に、個人認識情報取得部1406は2人目に入力された顔情報を顔辞書と照合する。   Next, the personal recognition information acquisition unit 1406 collates the face information input by the second person with the face dictionary.

ここでは、図12(B)における個人認識実行順番“1”の顔情報に関し、個人ID=0の顔情報を含んだ顔辞書との類似性を算出する。そして、個人認識実行順番“1”の顔情報に関し、個人ID=0との類似性を判断し、個人ID=0と同一人物とみなすか、新規の個人ID=1を割り振るべきか判断する。その判断が終了後、個人認識実行順番“1”の顔情報も個人IDと紐付けて辞書に登録する。このように、顔辞書はユーザが投入した画像データから取得した顔情報で更新される。なお、本実施形態では全ての顔画像について登録処理を行うが、ある個人IDに対して代表顔情報を決定することで、登録する顔情報を限定することも可能である。   Here, regarding the face information of the personal recognition execution order “1” in FIG. 12B, the similarity with the face dictionary including the face information of the personal ID = 0 is calculated. Then, regarding the face information of the personal recognition execution order “1”, the similarity with personal ID = 0 is determined, and it is determined whether the personal ID = 0 is regarded as the same person or a new personal ID = 1 should be allocated. After the determination, the face information of the personal recognition execution order “1” is also registered in the dictionary in association with the personal ID. Thus, the face dictionary is updated with face information acquired from image data input by the user. In this embodiment, registration processing is performed for all face images, but it is also possible to limit the face information to be registered by determining representative face information for a certain personal ID.

以上、人物情報解析部205の詳細について説明したが、この構成を用いてS403における顔検出やS404における個人認識の処理を実行することで、個人認識処理を実行する順番や顔辞書の登録順番の再現性が高まる。マルチスレッドで顔検出処理が実行されることで、たとえ同じ画像データ群を扱う場合であっても、情報管理部1404に入力される顔関連情報の順序が顔検出処理のたびにバラバラとなるおそれがある。しかし、順序制御部1405がソート処理を実行することで、いつでも決まった個人認識実行順番を各顔関連情報に与えることができる。よって、情報管理部1404に入力される顔関連情報の順番を統一することが可能となる。   The details of the person information analysis unit 205 have been described above, but by using this configuration to perform face detection in S403 and personal recognition processing in S404, the order in which the personal recognition processing is performed and the registration order of the face dictionary are changed. Increases reproducibility. When face detection processing is executed in multiple threads, the order of face-related information input to the information management unit 1404 may be different for each face detection processing even when the same image data group is handled. There is. However, when the order control unit 1405 executes the sort processing, the individual recognition execution order determined at any time can be given to each face related information. Therefore, it is possible to unify the order of the face related information input to the information management unit 1404.

図13は人物情報解析部205が実行する顔検出処理を示すフローチャートである。   FIG. 13 is a flowchart showing face detection processing executed by the person information analysis unit 205.

本実施形態では、顔検出処理時にマルチスレッドを実行する。図13に示す処理は1つのスレッドが実行する顔検出処理のフローチャートである。この実施形態では、ユーザがアルバム作成用に入力した画像データ群を各スレッド(各スレッドを実行する各コア)に等分に分けて実行する。例えば、ユーザが120枚の画像データをアルバム作成に用いることを指定し、かつ、処理実行時に顔検出用に3つ分のコアが使用可能である場合、1つのコアは40枚の画像データを扱う。この場合、1スレッドに割当てられる画像データ数(N)は、N=40である。なお、コア数の指定はOSの指示によって適応的に変えることもできる。画像データの分配も等分である必要はなく、各スレッドの進行を見て適応的に変えることも可能である。   In the present embodiment, multithreading is executed during the face detection process. The process shown in FIG. 13 is a flowchart of the face detection process executed by one thread. In this embodiment, the image data group input by the user for album creation is divided into each thread (each core that executes each thread) and is divided into equal parts. For example, when the user specifies that 120 pieces of image data are used for album creation and three cores can be used for face detection at the time of processing, one core uses 40 pieces of image data. deal with. In this case, the number of image data (N) allocated to one thread is N = 40. The designation of the number of cores can be adaptively changed according to an instruction from the OS. The distribution of the image data does not need to be equally divided, and can be adaptively changed according to the progress of each thread.

なお、この処理にあたり、後述する処理画像枚数を示すパラメータnが“0”に初期化される。さらに、各画像データの処理検出顔数を示すパラメータmも“0”に初期化される。   In this process, a parameter n indicating the number of processed images described later is initialized to “0”. Furthermore, the parameter m indicating the number of detected faces of each image data is also initialized to “0”.

S1501では処理画像枚数を示すパラメータnが“+1”インクリメントされる。S1502では、画像情報取得部1401は、コアに割り当てられた画像グループから1枚分の画像データの情報を取得する。このとき、画像情報取得部1401は、画像解析部204で取得した画像解析情報も取得することができる。S1503では、顔情報取得部1402は、画像情報取得部1401によって取得した画像データの情報と画像解析情報から、画像データにおける顔領域を検出する。また、本実施形態では、取得した複数の顔情報に対して顔検出信頼度でソート処理を実行する。   In S1501, the parameter n indicating the number of processed images is incremented by “+1”. In step S1502, the image information acquisition unit 1401 acquires information about one piece of image data from the image group assigned to the core. At this time, the image information acquisition unit 1401 can also acquire the image analysis information acquired by the image analysis unit 204. In step S1503, the face information acquisition unit 1402 detects a face area in the image data from the image data information and the image analysis information acquired by the image information acquisition unit 1401. In the present embodiment, the sort processing is executed on the acquired face information with the face detection reliability.

S1504は、S1503で取得した検出顔数(M)の内の処理検出顔数を示すパラメータmを“+1”インクリメントする。1つの画像データから複数の顔が検出された場合は、検出信頼度の高い顔情報から順番にS1505、S1506の処理を実行する。   In step S1504, the parameter m indicating the number of detected faces in the number of detected faces (M) acquired in step S1503 is incremented by “+1”. When a plurality of faces are detected from one image data, the processes of S1505 and S1506 are executed in order from the face information with the highest detection reliability.

S1505では、顔情報ナンバリング部1403は、検出した顔情報に対して、画像シリアル番号を対応付ける。本実施形態では、各画像データに対して、画像データの撮影日時順に付与したシリアル番号を画像シリアル番号として、顔情報に関連付けさせる。その際、S1501のパラメータnの値と、S1505で顔情報に対応付ける画像シリアル番号は必ずしも一致しなくてよい。例えば、あるコアが処理する画像シリアル番号が、4、8、9である場合に、S1501のパラメータnとして1から順次パラメータを割り当てても良い。本実施形態では、S1501のパラメータnは、コアごとに新たに割り振った値(つまり、画像シリアル番号とは一致しない値)を適用する。   In step S1505, the face information numbering unit 1403 associates an image serial number with the detected face information. In this embodiment, a serial number assigned to each image data in the order of shooting date and time of the image data is associated with the face information as an image serial number. At that time, the value of the parameter n in S1501 and the image serial number associated with the face information in S1505 do not necessarily match. For example, when the image serial numbers processed by a certain core are 4, 8, and 9, parameters may be sequentially assigned from 1 as the parameter n in S1501. In the present embodiment, a value newly assigned to each core (that is, a value that does not match the image serial number) is applied to the parameter n in S1501.

S1506では、顔情報ナンバリング部1403は、検出した顔情報に対して、顔シリアル番号を対応付ける。本実施形態では、S1503で取得した複数の顔情報に対しソート処理を実行するため顔信頼度が高い顔情報から昇順で顔シリアル番号と紐付けられる。   In step S1506, the face information numbering unit 1403 associates a face serial number with the detected face information. In the present embodiment, since the sort processing is executed on the plurality of face information acquired in S1503, the face serial numbers are linked in ascending order from the face information having a high face reliability.

S1507では、情報管理部1404は、S1503で取得した顔情報と、S1505で取得した各顔情報の画像シリアル番号、S1506で取得した各顔情報の顔シリアル番号を含む顔関連情報を保管する。本実施形態では、顔関連情報はRAM103に保管される。RAM103の記憶可能領域が少なくなった場合、その保管先をHDD104もしくはウェブサーバ上に移して、保管する。また、保管されている顔関連情報の対応表となるデータテーブルもRAM103に保管する。   In S1507, the information management unit 1404 stores face-related information including the face information acquired in S1503, the image serial number of each face information acquired in S1505, and the face serial number of each face information acquired in S1506. In the present embodiment, the face related information is stored in the RAM 103. When the storable area of the RAM 103 decreases, the storage destination is moved to the HDD 104 or the web server and stored. In addition, a data table serving as a correspondence table of the stored face related information is also stored in the RAM 103.

S1504〜S1507の処理中でデータテーブル(例えば、図12(A))の内容は更新される。なお、本実施形態では、更新対象としてソート前の図12(A)を記載したが、ソート後のデータテーブルが更新されても構わない。   The contents of the data table (for example, FIG. 12A) are updated during the processing of S1504 to S1507. In the present embodiment, FIG. 12A before sorting is described as the update target, but the data table after sorting may be updated.

S1507aでは、検出顔数(M)の処理が終了したかどうか、即ち、m=Mとなったかどうかを調べ、m≠Mであれば、処理はS1504に戻り、m=Mとなれば、処理はS1507bに進む。なお、図示してはいないが、画像データから顔が検出されなかった場合は、即ち、M=0であれば、S1504〜S1507の処理は実行されず、処理は次の画像データに移る。例えば、画像シリアル番号「0」の画像データから2つの顔情報が検出された場合、S1504−S1507の処理が2回実行される。結果として、図12(A)の「画像シリアル番号:0−顔シリアル番号0」と「画像シリアル番号:0−顔シリアル番号1」が保存される。   In S1507a, it is checked whether or not the processing of the number of detected faces (M) is completed, that is, whether or not m = M. If m ≠ M, the process returns to S1504, and if m = M, the process is performed. Advances to S1507b. Although not shown, if a face is not detected from the image data, that is, if M = 0, the processing of S1504 to S1507 is not executed, and the processing moves to the next image data. For example, when two pieces of face information are detected from the image data of the image serial number “0”, the processes of S1504 to S1507 are executed twice. As a result, “image serial number: 0-face serial number 0” and “image serial number: 0-face serial number 1” in FIG. 12A are stored.

S1507bでは、割当てられた画像データ数(N)の画像データに関する処理が終了したかどうか、即ち、n=Nとなったかどうかを調べ、n≠Nであれば、処理はS1501に戻り、n=Nであれば、処理は終了する。   In S1507b, it is checked whether or not the processing relating to the allocated number (N) of image data has been completed, that is, whether or not n = N. If n ≠ N, the process returns to S1501, and n = If N, the process ends.

なお、本実施形態ではデータテーブルをスレッド間で共有するが、データテーブルは各スレッドで個別のものを作成しても良い。個別のデータテーブルを持つ場合は、テーブルの統合処理を必要とする。データテーブルを共有する場合は、スレッド間でデータ書込みのタイミングが重なる、アクセス衝突を回避しなくてはならない。テーブルの統合処理も同様に、各スレッドでの書込みタイミングと統合時の読込みタイミングのずれによる結果の不一致を防がなくてはならない。そのような衝突や結果の不一致を防ぐ方法として、スレッド間でのロック処理を実行する。例えば。スレッド間で共有するデータがある場合、あるスレッドが書込む前に書込み権限をロックする。他のスレッドは書込み権限がロックされていれば、書込みを行わず待機する。   In this embodiment, the data table is shared between threads, but a separate data table may be created for each thread. When individual data tables are provided, table integration processing is required. When sharing a data table, it is necessary to avoid an access collision in which data write timings overlap among threads. Similarly, in the table integration process, it is necessary to prevent a mismatch between the results due to a difference between the write timing in each thread and the read timing at the time of integration. As a method for preventing such a collision or a result mismatch, lock processing between threads is executed. For example. If there is data shared between threads, lock the write permission before a thread writes. Other threads wait without writing if the write permission is locked.

ロックによってスレッド間のアクセス衝突は発生しないが、スレッド同士でロックのタイミングが揃った場合にはデッドロックが生じる。デッドロックを防止するにはロック実行の順序を制御する制御層を導入すれば良い。スレッド同士でロックのタイミングが揃ってしまった場合でも、制御層が実行順序を整列するため、デッドロックは発生しない。また、各コアが図13の処理を実行することで、結果として、図12(A)のデータテーブルが生成される。   Access collision between threads does not occur due to locking, but deadlock occurs when the locking timings are aligned between threads. In order to prevent deadlock, a control layer for controlling the order of lock execution may be introduced. Even when the lock timings are aligned between threads, the control layer arranges the execution order, so no deadlock occurs. Each core executes the process of FIG. 13, and as a result, the data table of FIG. 12A is generated.

図14は人物情報解析部205が実行する個人認識処理を示すフローチャートである。本実施形態では、マルチスレッドで動作する顔検出と個人認識処理が並列処理で実行される。個人認識処理自体は複数のコアで実行しない。図14は1つのスレッドが実行する個人認識処理を示している。   FIG. 14 is a flowchart showing the personal recognition processing executed by the person information analysis unit 205. In the present embodiment, face detection and personal recognition processing operating in a multi-thread are executed in parallel processing. The personal recognition process itself is not executed by multiple cores. FIG. 14 shows a personal recognition process executed by one thread.

S1508では、順序制御部1405は、情報管理部1404が管理するデータテーブル(例えば、図12(A))と顔関連情報群に更新情報があるかどうかを調べる。ここで、情報管理部1404が管理するデータテーブルと顔関連情報群に更新情報がない限り、処理はS1509に進み、処理を待機する。本実施形態では待機条件を10秒間とし、10秒が経過した後、待機を終了し、S1508に戻る。なお、待機終了条件は指定の秒数でも良いし、RAM103やHDD104に格納された、もしくはウェブサーバ上のデータ更新情報をトリガとして待機を終了させても良い。これに対して、S1508で、順序制御部1405は、データテーブルおよび顔関連情報群の更新があると判断された場合、処理はS1510に進む。   In step S1508, the order control unit 1405 checks whether there is update information in the data table (for example, FIG. 12A) managed by the information management unit 1404 and the face related information group. Here, as long as there is no update information in the data table and the face related information group managed by the information management unit 1404, the process proceeds to S1509 and waits for the process. In the present embodiment, the standby condition is 10 seconds, and after 10 seconds have elapsed, the standby is terminated and the process returns to S1508. The waiting end condition may be a specified number of seconds, or the waiting may be ended using data update information stored in the RAM 103 or the HDD 104 or on the web server as a trigger. On the other hand, in step S1508, if the order control unit 1405 determines that there is an update of the data table and the face related information group, the process proceeds to step S1510.

S1510では、順序制御部1405は、情報管理部1404が保管しているデータテーブル(例えば、図12(A))を読込み、画像シリアル番号を基準に昇順ソートする。本実施形態では、画像シリアル番号はユーザがアルバム作成用に入力した画像グループの撮影日時順に対応している。昇順ソートによって、各顔関連情報は顔が写っていた画像データの撮影日時が古い順に整列する。   In step S1510, the order control unit 1405 reads a data table (for example, FIG. 12A) stored in the information management unit 1404, and sorts the data table in ascending order based on the image serial number. In this embodiment, the image serial number corresponds to the shooting date and time of the image group input by the user for album creation. By ascending order sorting, each face-related information is arranged in the order of the shooting date and time of the image data in which the face was shown.

S1511では、順序制御部1405は、情報管理部1404が保管しているデータテーブル(例えば、図12(A))を読込み、同一画像シリアル番号内で顔シリアル番号を用いた昇順ソートを行う。なお、ソート基準は昇順でなくても良い。   In step S1511, the order control unit 1405 reads the data table (for example, FIG. 12A) stored in the information management unit 1404, and performs ascending sort using the face serial number within the same image serial number. Note that the sort criteria may not be in ascending order.

S1512では、順序制御部1405は、データテーブルに個人認識実行順番の情報を追加する。追加した個人認識実行順番は、S1513においてS1514の個人認識を実行するかどうかを判断するのに使用される。例えば、S1509で更新が確認されたデータテーブルの状態が図12(A)に示した状態であったとする。S1510とS1511のソート処理を実行後、S1512では個人認識実行順番を追加して、図12(B)に示したようなデータテーブルが取得できる。このように個人認識実行順番は画像シリアル番号の昇順、および顔シリアル番号のソート結果に従って決定される。   In step S <b> 1512, the order control unit 1405 adds personal recognition execution order information to the data table. The added personal recognition execution order is used in S1513 to determine whether to execute the personal recognition in S1514. For example, it is assumed that the state of the data table confirmed to be updated in S1509 is the state shown in FIG. After executing the sort processing of S1510 and S1511, in S1512 the personal recognition execution order is added, and a data table as shown in FIG. 12B can be acquired. Thus, the personal recognition execution order is determined according to the ascending order of the image serial numbers and the sorting result of the face serial numbers.

なお、図12(A)に示す例では画像シリアル番号3の顔関連情報は欠番であるため、図12(B)に示すように個人認識実行順番の対象とみなさない。   In the example shown in FIG. 12A, the face-related information with the image serial number 3 is a missing number, and therefore is not regarded as a target of the personal recognition execution order as shown in FIG.

ここで説明のために、S1509にいて確認された更新が図12(C)に示すようなデータテーブルの状態であったとする。この場合、図12(C)のデータテーブルは、S1510とS1511によりソート処理が実行される。ただし、図12(C)に示す例では、画像シリアル番号6である画像データの顔検出結果がデータテーブルに記載されていない。マルチスレッド処理では、各コアに均等に画像データを分配していたとしてもそれぞれの処理終了時間に差異が発生する。   Here, for the sake of explanation, it is assumed that the update confirmed in S1509 is in the state of the data table as shown in FIG. In this case, the data table of FIG. 12C is subjected to sort processing by S1510 and S1511. However, in the example shown in FIG. 12C, the face detection result of the image data having the image serial number 6 is not described in the data table. In multi-thread processing, even when image data is evenly distributed to each core, a difference occurs in each processing end time.

図12(C)の例は、コアAにシリアル番号0、3、6、9……、コアBにシリアル番号1、4、7、10……、コアCにシリアル番号2、5、8、11……である画像データを分配して、各コアで顔検出処理フローを実行したものとする。コアA、B、Cはシリアル番号0、1、2の画像データにおける顔検出処理を同時に終了することはなく、各画像データに含まれるコンテンツの違いや、実行当時の端末の状態によって実行終了タイミングは差異が生じる。各スレッドでの実行時間に再現性はなく、処理終了時間を予測することは難しい。図12(C)ではコアBが、コアA、Cよりも早く画像データを処理しているため、画像シリアル番号6、8である画像データの顔検出結果を得る前に画像シリアル番号7に対応した画像データの顔情報が保管されている。   In the example of FIG. 12C, serial numbers 0, 3, 6, 9,... For core A, serial numbers 1, 4, 7, 10,... For core B, serial numbers 2, 5, 8,. It is assumed that the image data 11... Is distributed and the face detection processing flow is executed in each core. The cores A, B, and C do not end face detection processing for image data of serial numbers 0, 1, and 2 at the same time, and the execution end timing depends on the content included in each image data and the state of the terminal at the time of execution. Makes a difference. The execution time in each thread is not reproducible and it is difficult to predict the processing end time. In FIG. 12C, since the core B processes the image data earlier than the cores A and C, it corresponds to the image serial number 7 before obtaining the face detection result of the image data having the image serial numbers 6 and 8. The face information of stored image data is stored.

図12(D)に示すデータテーブルは、図12(C)に示したデータテーブルに対するソート処理と個人認識実行順番の追加処理で取得できる。図12(D)に示す例では、画像シリアル番号7である画像データから取得した顔関連情報については、個人認識実行順番を決定していない。本実施形態では、画像シリアル番号および顔シリアル番号の昇順ソート結果に従って個人認識実行順番を決定するものである。図12(C)に示した状態からは、画像シリアル番号6である画像データに写る顔の数は分からない。このため、S1512では、画像シリアル番号7である画像データから取得した顔関連情報は次のテーブル更新まで個人認識実行順番を未決定として終了する。   The data table shown in FIG. 12D can be acquired by the sorting process and the personal recognition execution order addition process for the data table shown in FIG. In the example shown in FIG. 12D, the personal recognition execution order is not determined for the face related information acquired from the image data having the image serial number 7. In this embodiment, the personal recognition execution order is determined according to the ascending order sorting result of the image serial number and the face serial number. From the state shown in FIG. 12C, the number of faces appearing in the image data having the image serial number 6 is unknown. For this reason, in S1512, the face recognition information acquired from the image data having the image serial number 7 ends with the personal recognition execution order being undetermined until the next table update.

S1513では、順序制御部1405は、個人認識実行順番から個人認識情報取得部1406で個人認識を実行すべき顔関連情報が存在するかを判定する。この判定は、具体的には、データテーブル上で画像シリアル番号に抜けがないか否かを判定することで実現される。データテーブルが、例えば、図12(B)に示す状態であるとき、画像シリアル番号1−5までが連続して揃っている。そのため、図12(B)に対応する全ての顔関連情報が、個人認識実行順番に従って、個人認識を実行可能であると判定される。つまり、個人認識を実行すべき顔関連情報が存在すると判定される。一方、図12(D)に示す状態であるとき、画像シリアル番号1−5までが連続して揃っている。そのため、図12(D)に対応する画像シリアル番号1−5に対応する顔関連情報が、個人認識実行順番に従って、個人認識を実行可能であると判定される。その後、例えば、画像シリアル番号8の顔検出が終わったとしても画像シリアル番号6の顔検出が未処理であり、画像シリアル番号に抜けが存在する。そのため、画像シリアル番号6の顔検出が処理されるまで、順序制御部1405は、個人認識を実行すべき顔関連情報が存在しないと判定する(S1513−No)。S1512での順番の定義と、S1513での実行可否判断によって、個人認識の実行順番の再現性が高まる。なお、S1513で個人認識を実行して良い顔情報がないと判断されたなら、処理はS1509に戻って情報の更新を待機する。   In step S <b> 1513, the order control unit 1405 determines from the personal recognition execution order whether there is face-related information for which personal recognition information acquisition unit 1406 should perform personal recognition. Specifically, this determination is realized by determining whether or not there is no missing image serial number on the data table. For example, when the data table is in the state shown in FIG. 12B, the image serial numbers 1 to 5 are continuously arranged. Therefore, it is determined that all face-related information corresponding to FIG. 12B can execute personal recognition according to the personal recognition execution order. That is, it is determined that there is face-related information for which personal recognition is to be performed. On the other hand, in the state shown in FIG. 12D, image serial numbers 1-5 are continuously arranged. Therefore, it is determined that the face-related information corresponding to the image serial numbers 1-5 corresponding to FIG. 12D can be personally recognized according to the personal recognition execution order. Thereafter, for example, even if the face detection of the image serial number 8 is finished, the face detection of the image serial number 6 is not processed, and there is a gap in the image serial number. Therefore, until the face detection of the image serial number 6 is processed, the sequence control unit 1405 determines that there is no face-related information for which personal recognition is to be performed (S1513-No). The reproducibility of the execution order of the personal recognition is enhanced by the definition of the order in S1512 and the execution possibility determination in S1513. If it is determined in S1513 that there is no face information that can be used for personal recognition, the process returns to S1509 to wait for information update.

S1514では、個人認識情報取得部1406は、実行可能な顔関連情報に対して個人認識を実行する。S1514では、顔辞書に対して実行可能な顔関連情報との類似度算出を行う。ここで、その類似度が閾値を超えていれば、類似していた登録済み個人IDと同一の個人IDを顔関連情報に追加し、その類似度が閾値を下回っていた場合は、辞書には未登録である新規の個人IDを顔関連情報に追加する。そして、顔関連情報は、その情報の一部もしくは全てを顔辞書に保存し、顔辞書を更新する。   In step S1514, the personal recognition information acquisition unit 1406 performs personal recognition on executable face-related information. In S1514, the similarity with the face related information that can be executed for the face dictionary is calculated. Here, if the similarity exceeds the threshold, the same personal ID as the registered personal ID that was similar is added to the face related information, and if the similarity is below the threshold, A new unregistered personal ID is added to the face related information. As for the face related information, part or all of the information is stored in the face dictionary, and the face dictionary is updated.

以上説明したように、この実施形態では、顔検出処理がマルチスレッドで処理された場合でもS1514で個人認識処理が実行される顔関連情報の順番は、顔検出に使用される画像データが同じである限り、いつでも同じになる。その結果、顔辞書や各顔関連情報に対応づけられる個人IDや最終的にアルバム作成結果の再現性は高まる。つまり、複数の画像データそれぞれの顔検出をマルチスレッド処理で複数回実行する場合、前回の検出処理で検出された顔情報に対する個人認識処理の実行順序と、再度の検出処理で検出された顔情報に対する個人認識処理の実行順序は同じである。   As described above, in this embodiment, even when face detection processing is performed in a multi-thread manner, the order of face-related information for which personal recognition processing is executed in S1514 is the same as the image data used for face detection. As long as there is, it will always be the same. As a result, the reproducibility of the personal ID associated with the face dictionary and each face related information and finally the album creation result is enhanced. That is, when face detection of each of a plurality of image data is executed multiple times by multi-thread processing, the execution order of the personal recognition processing for the face information detected by the previous detection processing and the face information detected by the second detection processing The order of execution of the personal recognition processing for is the same.

なお、本実施形態は、個人認識処理と顔検出処理が並列実行される。本実施形態のように、実行終了した画像データから検出された顔関連情報について逐次個人認識を実行すれば実行時間を短縮できるという利点がある。また、全ての画像データに対して顔検出を実行後に、顔関連情報をソートして個人認識処理を実行することもできる。   In the present embodiment, the personal recognition process and the face detection process are executed in parallel. As in this embodiment, there is an advantage that the execution time can be shortened if individual recognition is sequentially performed on face-related information detected from image data that has been executed. In addition, after face detection is performed on all image data, face-related information can be sorted and personal recognition processing can be performed.

画像解析部204及び人物情報解析部205は、S402〜S404で取得した画像解析情報を、図5に示すように各画像データを識別するID毎に区別して、RAM103等の記憶領域に記憶する。例えば、図5に示すように、S402で取得された撮影日時情報とピント判別結果、S403で検出された顔画像の数と位置情報とがテーブル形式で記憶される。尚、顔画像の位置情報は、S404で取得された個人ID毎に区別して記憶される。   The image analysis unit 204 and the person information analysis unit 205 distinguish the image analysis information acquired in S402 to S404 for each ID for identifying each image data as shown in FIG. For example, as shown in FIG. 5, the shooting date / time information acquired in S402, the focus determination result, the number of face images detected in S403, and the position information are stored in a table format. The face image position information is stored separately for each personal ID acquired in S404.

S405では、アルバム作成条件指定部201で指定されたHDD104の画像データ群の全画像データに対してS401〜S404の処理が終了したか否かが判定される。ここで、終了していないと判定された場合、S401からの処理を繰り返す。終了していると判定された場合、処理はS406に進む。   In S <b> 405, it is determined whether or not the processing of S <b> 401 to S <b> 404 has been completed for all image data in the image data group of the HDD 104 specified by the album creation condition specifying unit 201. If it is determined that the processing has not ended, the processing from S401 is repeated. If it is determined that the process has been completed, the process proceeds to S406.

S406では、画像分類部206は、シーン分割を実行する。シーン分割とは、条件指定部201で指定された画像データ群を複数の画像グループに分割して管理することを指す。画像分類部206は、S402で取得済みの撮影日時情報から算出した画像データ間の時間差に基づいて、画像データ群を複数のグループに分割する。本実施形態では、例えば、画像データ間に撮影していない日が存在する場合、その部分を基準として分割が行われる。分割は、他の基準により行われても良い。例えば、撮影日が連続する場合にも分割が行われる場合、時間差が16時間以上空いていれば、その部分を基準として分割が行われる。また、16時間未満の場合は、連続する各日の最初の撮影から最後の撮影までの時間差が4時間未満であれば、各1日の画像データ群が1つの画像グループとして分割される。各日の最初の撮影から最後の撮影までの時間差が4時間以上であり、かつ、連続する各日の撮影枚数が50枚未満である場合、各1日の画像データ群が1つの画像グループとして分割される。一方、50枚以上なら分割は行われない。図6(A)は、上記のシーン分割方法で画像データ群がシーン分割された結果の一例を示す図である。図6(A)では、撮像画像データ群を8個の画像グループに分割している。図6(A)において矢印はグループの境界を示している。なお、上記のシーン分割方法の説明において使用した撮像日時の差に対する閾値や撮像画像データの数に対する閾値は一例であり、これらの値に限るものではない。   In S406, the image classification unit 206 executes scene division. The scene division refers to managing the image data group designated by the condition designation unit 201 by dividing it into a plurality of image groups. The image classification unit 206 divides the image data group into a plurality of groups based on the time difference between the image data calculated from the shooting date / time information acquired in S402. In the present embodiment, for example, when there is a date when no image is taken between image data, the division is performed based on that portion. The division may be performed according to other criteria. For example, when the division is performed even when the shooting dates are consecutive, if the time difference is more than 16 hours, the division is performed based on that portion. In the case of less than 16 hours, if the time difference from the first shooting to the last shooting on each successive day is less than 4 hours, the image data group for each day is divided as one image group. When the time difference from the first shooting to the last shooting on each day is 4 hours or more and the number of shots on each consecutive day is less than 50, the image data group for each day is regarded as one image group. Divided. On the other hand, if the number is 50 or more, no division is performed. FIG. 6A is a diagram illustrating an example of a result of scene division of an image data group by the above scene division method. In FIG. 6A, the captured image data group is divided into eight image groups. In FIG. 6A, an arrow indicates a group boundary. Note that the thresholds for the difference in imaging date and time and the threshold for the number of captured image data used in the description of the above scene division method are examples, and are not limited to these values.

S407では、画像分類部206は、シーン分類を実行する。具体的には、画像分類部206は、S406でシーン分割された画像グループをシーンの種類毎に得点化して、一番得点が高いシーンに、判定対象のグループを分類する。本実施形態では、画像グループは、旅行、日常、セレモニーのいずれかのシーンの種類に分類される。ここで、図4の自動レイアウト処理部が開始される前に、予め、ユーザは、旅行、日常、セレモニーのシーンであると判断した複数の画像データをそれぞれ集めて指定している。   In step S407, the image classification unit 206 executes scene classification. Specifically, the image classification unit 206 scores the image group obtained by scene division in S406 for each type of scene, and classifies the determination target group into the scene with the highest score. In the present embodiment, the image group is classified into one of the scene types of travel, daily life, and ceremony. Here, before the automatic layout processing unit of FIG. 4 is started, the user collects and designates a plurality of image data determined to be travel, daily life, and a ceremony scene in advance.

ここで、予め行われるユーザによる指定について説明する。   Here, the designation performed by the user in advance will be described.

例えば、アルバム作成条件指定部201は、不図示のユーザインタフェース画面上で、ユーザが旅行シーンであると判断した複数の画像データの指定を受け付ける。そして、画像解析部204は、それらの画像データについて、特徴量を取得する。ここで、取得される特徴量は、例えば、撮影期間、撮影枚数、撮影人数である。撮影期間は、複数の画像データの最初の撮影から最後の撮影までの時間差である。撮影枚数は、複数の画像データの枚数である。撮影人数は、複数の画像データにおいて撮影されている顔の数である。その結果、ユーザが旅行シーンであると判断した複数の画像データから成る1画像データ群について、撮影期間、撮影枚数、撮影人数の特徴量が取得される。なお、特徴量として、これらの1つのみが用いられても良いし、他の特徴量が用いられても良い。   For example, the album creation condition designation unit 201 accepts designation of a plurality of image data that the user has determined to be a travel scene on a user interface screen (not shown). Then, the image analysis unit 204 acquires feature amounts for those image data. Here, the acquired feature amount is, for example, a shooting period, the number of shots, and the number of shots. The shooting period is a time difference from the first shooting to the last shooting of a plurality of image data. The number of shots is the number of image data. The number of photographers is the number of faces photographed in a plurality of image data. As a result, the characteristic amount of the shooting period, the number of shots, and the number of shots is acquired for one image data group made up of a plurality of image data that the user has determined to be a travel scene. Note that only one of these may be used as the feature quantity, or another feature quantity may be used.

そして、画像解析部204は、上記のような撮影期間、撮影枚数、撮影人数の特徴量の取得を、ユーザがさらに指定した他の画像データ群についても行う。そして、画像解析部204は、複数の画像データ群から取得された特徴量に基づいて、撮影期間の平均値と標準偏差、撮影枚数の平均値と標準偏差、撮影人数の平均値と標準偏差を求める。図7は、上記の求められた、シーンの複数種類(旅行、日常、セレモニー)のそれぞれに対応する各平均値と標準偏差を示しており、画像解析部204は、これらの値をROM102等の記憶領域に予め記憶しておく。または、アルバム作成アプリケーションのプログラムに予め組み込まれるようにしても良い。   Then, the image analysis unit 204 also performs the acquisition of the feature amount of the shooting period, the number of shots, and the number of shots as described above for other image data groups further designated by the user. Then, the image analysis unit 204 calculates the average value and standard deviation of the shooting period, the average value and standard deviation of the number of shots, and the average value and standard deviation of the number of shots based on the feature amounts acquired from the plurality of image data groups. Ask. FIG. 7 shows the average values and standard deviations corresponding to each of the plurality of types of scenes (travel, daily life, ceremony) obtained as described above, and the image analysis unit 204 stores these values in the ROM 102 or the like. Store in advance in the storage area. Alternatively, it may be incorporated in advance in the album creation application program.

図7に示した各平均値と標準偏差が、シーンの複数種類のそれぞれに対応する画像データを選択する際の選択基準(画像データの評価基準)に反映される。その詳細は後述する。   Each average value and standard deviation shown in FIG. 7 are reflected in selection criteria (image data evaluation criteria) when selecting image data corresponding to each of a plurality of types of scenes. Details thereof will be described later.

再び、図4に戻って、続きの処理を説明する。アルバム作成アプリケーションが起動された後、ユーザがパスボックス302で指定した画像データ群がS406でシーン分割された各グループに対して、画像分類部206は、撮影期間、撮影枚数、撮影人数の各特徴量の得点を算出する。画像分類部206は、各グループの撮影期間、撮影枚数、撮影人数の得点、及びそれらの平均得点を、図7に示すシーン毎の平均値と標準偏差を用いて式(1)及び(2)より算出する。即ち、
得点 =50−|10×(平均値−特徴量)/標準偏差|……(1)
平均得点=(撮影期間の得点+撮影枚数の得点+撮影人数の得点)/特徴量項目数
……(2)
である。
Returning to FIG. 4 again, the subsequent processing will be described. After the album creation application is activated, for each group in which the image data group specified by the user in the pass box 302 is divided into scenes in S406, the image classification unit 206 has characteristics of shooting period, number of shots, and number of shots A quantity score is calculated. The image classification unit 206 uses the average value and the standard deviation for each scene shown in FIG. Calculate from That is,
Score = 50− | 10 × (average value−feature) / standard deviation | …… (1)
Average score = (Score for shooting period + Score for number of shots + Score for number of photographers) / Number of features
(2)
It is.

算出の結果、各分割分の画像データに対して、旅行、日常、セレモニーのシーン毎の平均得点が算出される。そして、画像分類部206は、各グループの画像データを、上記のうち最高得点に対応するシーンに分類する。   As a result of the calculation, an average score for each scene of travel, daily life, and ceremony is calculated for the image data for each division. Then, the image classification unit 206 classifies the image data of each group into a scene corresponding to the highest score among the above.

図7に示したシーンの複数種類のそれぞれに対応する各平均値と標準偏差が、シーンの複数種類のそれぞれに対応する画像データを選択する際の選択基準(画像データの評価基準である(式(1))に反映される。そのため、シーンの種類に対して適切な選択基準により画像データを選択することができる。   Each average value and standard deviation corresponding to each of a plurality of types of scenes shown in FIG. 7 is a selection criterion for selecting image data corresponding to each of a plurality of types of scenes. Therefore, the image data can be selected based on a selection criterion appropriate for the type of scene.

ここで、同点のシーンとなった場合には、予め定められたシーンの優先順位に従って分類する。例えば、本実施形態では、日常>セレモニー>旅行の優先順位が定められており、日常シーンの優先度が最も高い。例えば、図6(A)のシーン分割された後の画像データ群5は、撮影期間が36時間、撮影枚数が300枚、撮影人数が1.7人であった。上記の式(1)及び(2)により算出された旅行シーンの平均得点は45.32、日常シーンの平均得点は18.38、セレモニーシーンの平均得点は−29.92となる。従って、画像データ群5は、旅行シーンに分類される。画像分類部206は、分類されたシーンに対して、識別可能なようにシーンIDを付与して管理する。   If the scenes are the same, the scenes are classified according to a predetermined scene priority order. For example, in the present embodiment, daily> ceremony> travel priorities are defined, and daily scenes have the highest priority. For example, in the image data group 5 after the scene division of FIG. 6A, the shooting period is 36 hours, the number of shots is 300, and the number of shots is 1.7. The average score of the travel scene calculated by the above formulas (1) and (2) is 45.32, the average score of the daily scene is 18.38, and the average score of the ceremony scene is -29.92. Therefore, the image data group 5 is classified as a travel scene. The image classification unit 206 assigns a scene ID to the classified scene so that the scene can be identified.

S408では、S406の分割により得られた全グループに対してS407のシーン分類が終了したか否かが判定される。ここで、終了していないと判定された場合、S407からの処理を繰り返す。終了していると判定された場合、処理はS409に進む。   In S408, it is determined whether or not the scene classification in S407 has been completed for all groups obtained by the division in S406. If it is determined that the process has not ended, the process from S407 is repeated. If it is determined that the process has been completed, the process proceeds to S409.

S409では、画像得点部208は、主人公設定を実行する。主人公設定は、ユーザが指定した画像データ群に対して実行され、自動と手動の2種類の設定方法のいずれかにより行われる。画像得点部208は、S404で実行された個人認識結果と、S406で実行されたシーン分割の結果から、画像データ群に登場する各個人IDの回数、各シーンに登場する各個人ID回数、各個人IDが登場するシーン回数等を取得可能である。画像得点部208は、それらの情報から、ユーザから指定を受け付けることなく自動で主人公を設定する。本実施形態では、画像得点部208は、シーンが複数ある場合、複数のシーンでの登場回数が多い個人IDを主人公IDと設定し、単一のシーンのみである場合、単一シーンにおいて登場回数が多い個人IDを主人公IDと設定する。   In step S409, the image scoring unit 208 performs hero setting. The main character setting is executed for the image data group designated by the user, and is performed by one of two types of setting methods, automatic and manual. The image scoring unit 208 determines the number of individual IDs that appear in the image data group, the number of individual IDs that appear in each scene, and the The number of scenes in which the personal ID appears can be acquired. The image scoring unit 208 automatically sets the main character from the information without accepting designation from the user. In the present embodiment, when there are a plurality of scenes, the image scoring unit 208 sets a personal ID that has a large number of appearances in a plurality of scenes as the main character ID, and when there is only a single scene, the number of appearances in a single scene. Personal ID with many characters is set as the main character ID.

また、ユーザが主人公指定アイコン304を指定している場合、主人公情報入力部207は、その指定されている個人IDを画像得点部208に伝える。ユーザにより個人IDが指定されている場合、画像得点部208は、上記の自動で設定された主人公IDによらず、ユーザにより指定された個人IDを主人公IDとして設定する。この設定を手動設定と呼ぶ。   When the user designates the hero designation icon 304, the hero information input unit 207 informs the image scoring unit 208 of the designated personal ID. When the personal ID is specified by the user, the image scoring unit 208 sets the personal ID specified by the user as the main character ID, regardless of the main character ID set automatically. This setting is called manual setting.

手動設定は、一度アルバム作成が終了した後に、ユーザ自身が編集画面で設定できる。編集画面でのユーザの手間を簡易化するため、個人IDを代表する顔画像をユーザに提示する等の工夫が行える。この時、個人IDを代表する顔画像を決定するために画像シリアル番号や顔シリアル番号を用いても良い。例えば、顔シリアル番号は顔検出信頼度から設定している。顔検出信頼度の高い顔を代表する顔画像とすれば、ブレボケの少ない顔画像を編集画面に表示できる。   The manual setting can be set by the user on the editing screen once the album creation is completed. In order to simplify the user's trouble on the editing screen, it is possible to devise such as presenting a face image representing a personal ID to the user. At this time, an image serial number or a face serial number may be used to determine a face image representing a personal ID. For example, the face serial number is set from the face detection reliability. If a face image representing a face with high face detection reliability is used, a face image with less blur can be displayed on the editing screen.

S410では、画像得点部208は、得点化(画像データの評価)を実行する。得点化とは、画像データ毎に後述の観点で評価した得点を付与する(スコアリング)ことであり、後述の、レイアウトに用いられるレイアウト対象の画像データの選択時に参照される。図10は、画像データのレイアウトに使うテンプレート群を示す図である。テンプレート群に含まれている複数のテンプレートのそれぞれが、各見開きに対応している。テンプレート1001は1枚のテンプレートであり、スロット1002はメインスロットを示し、スロット1003と1004はサブスロットを示す。メインスロット1002は、テンプレート1001内でメインとなるスロット(画像データをレイアウトする枠)であり、サブスロット1003と1004よりもサイズが大きい。画像得点部208は、各画像データに対して、メインスロット用の得点とサブスロット用の得点の両方を付与する。   In S410, the image scoring unit 208 performs scoring (evaluation of image data). The scoring is to assign a score evaluated from the viewpoint described later to each image data (scoring), and is referred to when selecting image data to be laid out to be used for layout described later. FIG. 10 is a diagram showing a template group used for image data layout. Each of the plurality of templates included in the template group corresponds to each spread. A template 1001 is a single template, a slot 1002 indicates a main slot, and slots 1003 and 1004 indicate subslots. The main slot 1002 is a main slot (a frame for laying out image data) in the template 1001 and is larger in size than the sub slots 1003 and 1004. The image scoring unit 208 gives each image data both a score for the main slot and a score for the subslot.

図8(A)は、得点化軸の概念を示す図である。図8(A)は、S407のシーン分類により分類される旅行シーン、日常シーン、セレモニーシーンについて示している。一般的に、旅行シーン、日常シーン、セレモニーシーンではそれぞれ好ましいと考えられる写真の観点は異なる。旅行シーンにおける最も好まれる構図とは、例えば、旅先での象徴的な景色と旅行の主役となる人物が一緒に写っている写真である。また、セレモニーシーンでは、例えば、新郎新婦が2人で寄り添う構図の写真(2人の距離が近い写真)が好まれる。   FIG. 8A is a diagram showing the concept of the scoring axis. FIG. 8A shows a travel scene, a daily scene, and a ceremony scene classified by the scene classification of S407. In general, the viewpoints of photographs that are considered preferable for travel scenes, daily scenes, and ceremony scenes are different. The most preferred composition in the travel scene is, for example, a photograph in which a symbolic scenery at the destination and a person who will be the main character of the travel are shown together. In the ceremony scene, for example, a photograph of a composition in which two brides and grooms are close to each other (a photograph in which the distance between the two persons is close) is preferred.

また、各シーンにおいて好ましいと考えられる写真は1種類であるとは限らない。旅行シーンは上述の人物及び風景写真以外にも、顔がアップや横顔である写真、旅行に同伴した人物や出会った人との記念写真や、旅先での食べ物や建物、風景の写真なども好ましいと考えられる場合がある。   Also, there is not always one kind of photograph that is considered preferable in each scene. In addition to the above-mentioned portraits and landscape photos, the travel scene is preferably a photo with a face up or side profile, a commemorative photo with a person who accompanied or traveled, a photo of food, buildings, or scenery at the destination. May be considered.

このように、シーンごとに好ましい写真の条件は異なり、またシーン内においても好ましい写真の条件は1つ以上か複数存在する。本実施形態では、画像データについてメインスロット用の得点とサブスロット用の得点との2パターンの得点を算出するために、図8(A)に示すように、各シーン内において好ましい写真の条件を2つ設定する。   As described above, preferable photo conditions differ from scene to scene, and there are one or more preferable photo conditions in a scene. In this embodiment, in order to calculate two patterns of scores for the main slot and the subslot for image data, as shown in FIG. 8A, preferable photographic conditions are set in each scene. Set two.

図4の自動レイアウト処理部の実行が開始される前に、予め、ユーザは、図8(A)に示す各シーンのメインスロット向きとサブスロット向きの特徴に適合すると判断した複数の画像データを集めて指定している。   Before the execution of the automatic layout processing unit of FIG. 4 is started, the user preliminarily stores a plurality of pieces of image data determined to conform to the characteristics of the main slot direction and the sub slot direction of each scene shown in FIG. Collect and specify.

ここで、予め行われるユーザによる指定について説明する。   Here, the designation performed by the user in advance will be described.

例えば、アルバム作成条件指定部201は、不図示のユーザインタフェース画面上でユーザが旅行シーンのメインスロット向き(又は、サブスロット向き)であると判断した複数の画像データの指定を受け付ける。人物情報解析部205は、指定された各画像データの顔の数、顔の位置、顔のサイズの特徴量を取得する。その結果、ユーザが例えば旅行シーンのメインスロット向き(又は、サブスロット向き)であると判断した複数の画像データそれぞれについて、顔数、顔の位置、顔サイズの特徴量が取得される。そして、人物情報解析部205は、顔数の平均値と標準偏差、顔の位置の平均値と標準偏差、顔サイズの平均値と標準偏差を求める。人物情報解析部205は、各シーン各スロット種類(メインスロットとサブスロット)について、上記のように、各特徴量の統計値として平均値と標準偏差を求める。人物情報解析部205は、これらの値をROM102等の記憶領域に予め記憶しておく。または、アルバム作成アプリケーションのプログラムに予め組み込まれるようにしても良い。   For example, the album creation condition designating unit 201 accepts designation of a plurality of pieces of image data that are determined by the user to be in the main slot direction (or subslot direction) of the travel scene on a user interface screen (not shown). The person information analysis unit 205 acquires the number of faces, the position of the face, and the feature amount of the face size of each designated image data. As a result, for each of a plurality of pieces of image data that the user has determined to be in the main slot direction (or sub slot direction) of the travel scene, for example, the face quantity, face position, and face size feature quantities are acquired. Then, the person information analysis unit 205 obtains the average value and standard deviation of the number of faces, the average value and standard deviation of the face position, and the average value and standard deviation of the face size. The person information analysis unit 205 obtains an average value and a standard deviation as a statistical value of each feature amount as described above for each slot type (main slot and subslot) of each scene. The person information analysis unit 205 stores these values in a storage area such as the ROM 102 in advance. Alternatively, it may be incorporated in advance in the album creation application program.

画像得点部208は、評価対象である各画像データがどのシーンに属するのかの情報をS407のシーン分類の結果から取得可能である。画像得点部208は、注目画像データのシーンに対応する予め求めておいた上記の平均値と標準偏差、および注目画像データの主人公IDの顔数、顔位置、顔サイズの各特徴量を用いて、式(3)及び(4)により、評価対象の画像データの平均得点を算出する。即ち、
得点 = 50−|10×(平均値−特徴量)/標準偏差| ……(3)
平均得点= (顔数の得点+顔位置の得点+顔サイズの得点)/特徴量項目数
……(4)
である。
The image scoring unit 208 can acquire information about which scene each image data to be evaluated belongs to from the result of the scene classification in S407. The image scoring unit 208 uses the average value and the standard deviation obtained in advance corresponding to the scene of the target image data, and the number of faces, the face position, and the face size of the main character ID of the target image data. The average score of the image data to be evaluated is calculated by the equations (3) and (4). That is,
Score = 50− | 10 × (average value−feature) / standard deviation | (3)
Average score = (Face number score + Face position score + Face size score) / Number of feature parameters
...... (4)
It is.

画像データの評価基準である式(3)では、図7に示したシーンの複数種類のそれぞれに対応する各平均値と標準偏差に従って、各画像データに対応するシーンの種類に対して求められた平均値、標準偏差が適用される。そのため、シーンの種類に対して適切な選択基準(画像データの評価基準)により画像データを選択することができる。   In the expression (3) which is the evaluation standard of the image data, it is obtained for the scene type corresponding to each image data according to each average value and standard deviation corresponding to each of a plurality of types of scenes shown in FIG. Average value and standard deviation are applied. Therefore, it is possible to select image data according to selection criteria (image data evaluation criteria) appropriate for the type of scene.

画像得点部208は、上記の得点化を、メインスロット用とサブスロット用の両方について実行する。ここで、アルバムに用いる画像データはピントが合っている方が好ましいので、図5に示すピントの特徴量が○である画像IDの画像データに対しては所定の得点を加算するようにしても良い。図8(B)は、上記の得点化による得点結果の一例を示しており、各画像IDに対して、メインスロットとサブスロットについて得点化されている。   The image scoring unit 208 executes the above scoring for both the main slot and the sub slot. Here, since it is preferable that the image data used for the album is in focus, a predetermined score may be added to the image data of the image ID whose focus feature amount is ○ shown in FIG. good. FIG. 8B shows an example of the result of scoring by the above scoring. For each image ID, the main slot and subslot are scored.

つまり、本実施形態では、各シーンについてメインスロットとサブスロットに適する条件が図8(A)に示すように定められており、予め、ユーザは、それらに適するであろうと判断した画像データを指定している。人物情報解析部205は、そのユーザから指定された画像データについて、顔数、顔位置、顔サイズの特徴量を取得し、特徴量ごとに平均値と標準偏差を求めておく。そして、アルバム作成アプリケーションの起動後、図4の自動レイアウト処理が開始されると、自動レイアウト処理対象の各画像データ(シーン分類済)が、どの程度、メインスロット向きである等のユーザ判断基準に近いかを示す得点化(類似度)が行われる。例えば、図8(B)では、画像ID1は、メインスロット用として20点が付与され、画像ID2は、メインスロット用として45点が付与されている。これは、つまり、メインスロット用としては、画像ID2の方がユーザの判断基準により近いということを表している。   That is, in this embodiment, conditions suitable for the main slot and subslot are determined for each scene as shown in FIG. 8A, and the user designates image data determined to be suitable for them in advance. doing. The person information analysis unit 205 acquires the feature quantity of the number of faces, the face position, and the face size for the image data designated by the user, and obtains an average value and a standard deviation for each feature quantity. When the automatic layout process of FIG. 4 is started after the album creation application is started, each image data (scene classified) subject to the automatic layout process is set to a user judgment criterion such as the orientation of the main slot. Scoring (similarity) indicating whether they are close is performed. For example, in FIG. 8B, image ID 1 is assigned 20 points for the main slot, and image ID 2 is assigned 45 points for the main slot. This means that, for the main slot, the image ID 2 is closer to the user's criterion.

ここで、画像得点部208の詳細な構成について説明する。   Here, a detailed configuration of the image score unit 208 will be described.

図15は画像得点部208の詳細な構成を示すブロック図である。   FIG. 15 is a block diagram showing a detailed configuration of the image score unit 208.

図15によれば、画像群取得部1101は、ユーザから入力された画像データ群を取得する。画像群取得部1101は、画像データ群取得時にS406でシーン分割されたシーン分割情報も取得する。   According to FIG. 15, the image group acquisition part 1101 acquires the image data group input from the user. The image group acquisition unit 1101 also acquires the scene division information obtained by dividing the scene in S406 when the image data group is acquired.

色解析情報取得部1102は、S402で取得された画像特徴量を取得する。また、色解析情報取得部1102は、画像データの撮影日時情報、画像データの色合いやエッジ、ピント量などの解析情報も取得する。人物関連解析情報取得部1103は、S403での顔検出とS404での個人認識の処理結果を取得する。また、人物関連解析情報取得部1103は、S409での主人公設定の情報も取得する。   The color analysis information acquisition unit 1102 acquires the image feature amount acquired in S402. The color analysis information acquisition unit 1102 also acquires image data shooting date / time information, and analysis information such as the color and edge of the image data, and the amount of focus. The person-related analysis information acquisition unit 1103 acquires the processing results of face detection in S403 and personal recognition in S404. The person related analysis information acquisition unit 1103 also acquires information on the main character setting in S409.

画像解析情報格納部1104は、色解析情報取得部1102と人物関連解析情報取得部1103で取得した各種画像解析情報を包括して管理する。また、画像解析情報格納部1104は、色解析情報取得部1102と人物関連解析情報取得部1103から算出・推量可能な副次的な特徴も管理する。例えば、画像解析情報格納部1104は、S403で得られる各顔の位置だけでなく、そこから推量可能な各顔同士の距離も管理する。   The image analysis information storage unit 1104 comprehensively manages various image analysis information acquired by the color analysis information acquisition unit 1102 and the person related analysis information acquisition unit 1103. The image analysis information storage unit 1104 also manages secondary features that can be calculated and estimated from the color analysis information acquisition unit 1102 and the person-related analysis information acquisition unit 1103. For example, the image analysis information storage unit 1104 manages not only the position of each face obtained in S403 but also the distance between each face that can be estimated from the position.

なお、画像解析情報格納部1104で管理される画像解析情報は、上述の情報に限定されるものではない。例えば、色解析情報取得部1102と人物関連解析情報取得部1103で取得した情報だけでない副次的情報が管理されても良い。また、画像解析情報格納部1104は、色解析情報取得部1102または人物関連解析情報取得部1103の一方のみを使用する場合もある。   Note that the image analysis information managed by the image analysis information storage unit 1104 is not limited to the information described above. For example, secondary information other than the information acquired by the color analysis information acquisition unit 1102 and the person-related analysis information acquisition unit 1103 may be managed. The image analysis information storage unit 1104 may use only one of the color analysis information acquisition unit 1102 and the person related analysis information acquisition unit 1103.

シーン格納部1105は、撮影シーンの各種類と各撮影シーンであると判断するためのシーン分類方法を格納する。本実施形態では、旅行シーン、日常シーン、セレモニーシーンの3種類と、各シーンを判別するためのシーン分類方法が格納される。例えば、シーン格納部1105は、図7や図8(A)に示す情報を格納する。   The scene storage unit 1105 stores scene classification methods for determining each type of shooting scene and each shooting scene. In the present embodiment, three types of travel scenes, daily scenes, and ceremony scenes, and a scene classification method for discriminating each scene are stored. For example, the scene storage unit 1105 stores information shown in FIGS. 7 and 8A.

シーン判定部1106は、画像解析情報格納部1104で管理される画像解析情報から画像データの撮影シーンを判定する。シーン判定部1106は、S407でのシーン分類に相当する処理結果を取得する。本実施形態では、各画像データは、画像解析情報に基づいて、旅行シーン、日常シーン、セレモニーシーンに分類される。シーン判定部1106でのシーン分類処理によって、各画像データの撮影シーンが決定される。   The scene determination unit 1106 determines the shooting scene of the image data from the image analysis information managed by the image analysis information storage unit 1104. The scene determination unit 1106 acquires a processing result corresponding to the scene classification in S407. In the present embodiment, each image data is classified into a travel scene, a daily scene, and a ceremony scene based on the image analysis information. The shooting scene of each image data is determined by the scene classification process in the scene determination unit 1106.

パラメータ設定部1107では、決定した撮影シーンに基づいて得点化に用いるパラメータを設定する。本実施形態では、そのパラメータは、例えば、所定のシーンにおける顔数/顔の位置/顔サイズそれぞれについての平均値および標準偏差である。パラメータは予め決定されたパラメータが使用されても良いし、ユーザの経験則によりまたはシステム実行時にユーザにより設定されても良い。   The parameter setting unit 1107 sets parameters used for scoring based on the determined shooting scene. In the present embodiment, the parameters are, for example, an average value and a standard deviation for the number of faces / face positions / face sizes in a predetermined scene. As the parameter, a predetermined parameter may be used, or the parameter may be set by the user according to a user's rule of thumb or when the system is executed.

得点化部1108、1109、1110には、パラメータ設定部1107からそれぞれ別々のパラメータが与えられる。各得点化部は、パラメータ設定部1107から設定されたパラメータと画像解析情報格納部1104で取得される画像解析情報とから、画像データを得点化する(スコアリングする)。本実施形態においては、得点化部1108、1109、1110で取得される得点のいずれかが、メインスロット1002についての得点、サブスロット1003および1004の得点に対応する。図15では得点化部の個数は3個であるが、本発明はこの数に限定されるものではない。例えば、アルバム作成に要求される得点化軸が3つ以上であれば、3つ以上の得点化部により得点化を実行する。また、3つ未満の得点化軸で十分である場合は3つ未満の得点化部により得点化を実行する。   The scoring units 1108, 1109, and 1110 are given different parameters from the parameter setting unit 1107, respectively. Each scoring unit scores (scores) image data from the parameters set by the parameter setting unit 1107 and the image analysis information acquired by the image analysis information storage unit 1104. In the present embodiment, any of the scores acquired by the scoring units 1108, 1109, and 1110 corresponds to the score for the main slot 1002 and the scores for the subslots 1003 and 1004. In FIG. 15, the number of scoring units is three, but the present invention is not limited to this number. For example, if there are three or more scoring axes required for album creation, scoring is executed by three or more scoring units. If less than three scoring axes are sufficient, scoring is performed by less than three scoring units.

以上説明したような構成の画像得点部208により、各画像データの得点を算出することで、画像データの撮影シーンに応じた得点化軸で得点化を実行することができる。撮影シーン間で得点化軸およびパラメータの決め方が一律とならないので、撮影シーンやスロットの種類ごとに最適な構図や人数構成の画像データを取得することができる。
図16は画像得点部208が実行するシーン分類後の得点化処理を示すフローチャートである。
By calculating the score of each image data by the image scoring unit 208 configured as described above, scoring can be performed with a scoring axis corresponding to the shooting scene of the image data. Since scoring axes and parameters are not uniformly determined between shooting scenes, it is possible to acquire image data having an optimal composition and number of people for each shooting scene and slot type.
FIG. 16 is a flowchart showing scoring processing after scene classification executed by the image scoring unit 208.

S1201では、画像解析情報格納部1104は、色解析情報取得部1102及び人物関連解析情報取得部1103から画像解析情報を取得して設定する。S1202では、シーン判定部1106は、シーン格納部1105で用意されていたシーン分類方法に基づいて分類された画像データの撮影シーンを設定する。   In step S1201, the image analysis information storage unit 1104 acquires and sets image analysis information from the color analysis information acquisition unit 1102 and the person related analysis information acquisition unit 1103. In step S <b> 1202, the scene determination unit 1106 sets a shooting scene of image data classified based on the scene classification method prepared in the scene storage unit 1105.

S1203では、設定された画像データの撮影シーンに基づいて、撮影シーンにおける複数の得点化軸を取得するためのループ処理が実行される。本実施形態では、得点化軸とは、例えば、メインスロットやサブスロットについての得点化である。S1204では、パラメータ設定部1107は、設定された画像データの撮影シーンにおいて、各得点化軸において要求されるパラメータを設定する。S1205では、得点化部1108、1109、1110は、設定されたパラメータに従って得点化を行う。本実施形態では、得点化は、上述した式(3)や(4)により算出される。   In S1203, a loop process for acquiring a plurality of scoring axes in the shooting scene is executed based on the shooting scene of the set image data. In the present embodiment, the scoring axis is, for example, scoring for the main slot and subslot. In step S1204, the parameter setting unit 1107 sets parameters required for each scoring axis in the shooting scene of the set image data. In S1205, the scoring units 1108, 1109, and 1110 perform scoring according to the set parameters. In the present embodiment, scoring is calculated by the above-described equations (3) and (4).

S1204で設定されるn個のパラメータには、判定閾値および判定重み情報が関連付けられている。本実施形態では、n個のパラメータとは、例えば、上述のメインスロットについての顔数/顔の位置/顔サイズである。判定閾値及び判定重み情報は、各得点化軸e(i,j)における各パラメータに対応したn個分が確保される。ここで、iは、S1202で設定された画像データの撮影シーンのIDに対応する。また、jは、撮影シーンにおける複数の得点化軸に対応する。   A determination threshold value and determination weight information are associated with the n parameters set in S1204. In the present embodiment, the n parameters are, for example, the number of faces / face position / face size for the main slot described above. As for the determination threshold value and the determination weight information, n pieces corresponding to each parameter in each scoring axis e (i, j) are secured. Here, i corresponds to the shooting scene ID of the image data set in S1202. Further, j corresponds to a plurality of scoring axes in the shooting scene.

ここで、判定閾値と判定重み情報について説明する。   Here, the determination threshold value and the determination weight information will be described.

S1201において取得した画像解析情報と判定閾値Th{n,e(i,j)}とを比較する。ここで、画像解析情報の値が判定閾値Th{n,e(i,j)}を上回っていれば、判定重み情報の値W{n,e(i,j)}を式(4)の該当パラメータ(例えば、顔数の得点)に反映する。式(4)の各パラメータに判定重み情報が反映された値が最終的な得点となる。   The image analysis information acquired in step S1201 is compared with the determination threshold value Th {n, e (i, j)}. Here, if the value of the image analysis information exceeds the determination threshold value Th {n, e (i, j)}, the value W {n, e (i, j)} of the determination weight information is expressed by the equation (4). This is reflected in the corresponding parameter (for example, the score of the number of faces). A value in which the determination weight information is reflected in each parameter of Expression (4) is the final score.

このように、式(3)や(4)により得点が算出されるばかりでなく、各得点軸における最終的な得点に、各パラメータが持つ判定重み情報の値が反映されるようにしても良い。上記のような判定閾値と判定重み情報により、得点化軸によっては重みが0であるパラメータ(使用しないパラメータ、例えば顔のサイズを使用しない)や、どの撮影シーンや得点化軸であっても共通で使用するパラメータなどを柔軟に設定することができる。   Thus, not only the score is calculated by the equations (3) and (4), but the value of the determination weight information possessed by each parameter may be reflected in the final score on each score axis. . Based on the determination threshold and the determination weight information as described above, a parameter with a weight of 0 depending on the scoring axis (a parameter that is not used, for example, a face size is not used), or any shooting scene or scoring axis is common. The parameters used in can be set flexibly.

本実施形態では、図8(B)に示すようなメインスロットについての得点、サブスロットについての得点が、各画像データに対して付与される。各得点化軸における得点化により、ユーザ所望の条件に合致した画像データが、他の画像データとどれほどの優劣を持っているかが定量的に判定可能となる。また、異なる得点化軸間(例えば、メインスロットとサブスロット間)であっても優劣の評価が行えるように、得点の正規化を行うようにしても良い。   In this embodiment, a score for the main slot and a score for the subslot as shown in FIG. 8B are given to each image data. By scoring on each scoring axis, it is possible to quantitatively determine how superior or inferior the image data matching the user-desired condition is with other image data. Also, normalization of scores may be performed so that superiority or inferiority can be evaluated even between different scoring axes (for example, between main slots and subslots).

再び図4を参照して残りの処理について説明する。   The remaining processing will be described with reference to FIG. 4 again.

S411では、画像得点部208は、ユーザ指定の画像データ群の全て画像データに対してS410の画像得点化が終了したか否かを判定する。終了していないと判定された場合、S410からの処理を繰り返す。終了していると判定された場合、S412に進む。   In S411, the image scoring unit 208 determines whether or not the image scoring of S410 has been completed for all image data in the user-specified image data group. If it is determined that the processing has not ended, the processing from S410 is repeated. If it is determined that the process has been completed, the process proceeds to S412.

S412では、見開き割当部210は、S406でのシーン分割の分割数が見開き数入力部209から入力されるアルバムの見開き数と同じであるか否かを判定する。同じでないと判定された場合、S413に進む。同じであると判定された場合、S416に進む。例えば、図6(A)に示すようにシーン分割数が8であり、見開き数入力部209の入力数が8である場合、S416に進む。   In S <b> 412, the spread allocation unit 210 determines whether the number of scene divisions in S <b> 406 is the same as the number of spreads of the album input from the spread number input unit 209. If it is determined that they are not the same, the process proceeds to S413. If it is determined that they are the same, the process proceeds to S416. For example, as shown in FIG. 6A, when the number of scene divisions is 8, and the number of inputs of the spread number input unit 209 is 8, the process proceeds to S416.

S413では、見開き割当部210は、S406でのシーン分割の分割数が見開き数入力部209から入力される見開き数より少ないか否かを判定する。少なくない(多い)と判定された場合、S415に進む。少ないと判定された場合、S414に進む。図6(A)に示すようにシーン分割数が8であり、見開き数入力部209の入力数が10である場合、S414に進む。   In S413, the spread allocation unit 210 determines whether the number of scene divisions in S406 is smaller than the number of spreads input from the spread number input unit 209. If it is determined that the number is not small (large), the process proceeds to S415. If it is determined that there are few, the process proceeds to S414. As shown in FIG. 6A, when the number of scene divisions is 8, and the input number of the spread number input unit 209 is 10, the process proceeds to S414.

S414では、見開き割当部210は、サブシーン分割を実行する。サブシーン分割とは、シーン分割数<アルバムの見開き数の場合に、分割されたシーンを更に細分割することを表す。図6(A)のシーン分割数8に対して指定されたアルバムの見開き数が10の場合で説明する。図6(B)は、図6(A)をサブシーン分割した結果を示す。破線矢印の箇所で分割したことで、分割数を10にしている。   In S414, the spread assignment unit 210 executes sub-scene division. The sub-scene division means that the divided scene is further subdivided when the number of scene divisions <the number of album spreads. A case will be described where the number of spreads of the album specified for the number of scene divisions 8 in FIG. FIG. 6 (B) shows the result of dividing the sub-scene of FIG. 6 (A). The number of divisions is set to 10 by dividing at the position indicated by the broken-line arrow.

分割の基準について説明する。図6(A)の分割の中で、画像データ数が多い分割箇所が検索される。ここでは、分割数を8から10に2箇所増やすために、画像データ数が多い2箇所を決定する。図6(A)では、多い方から画像グループ5、次に、画像グループ1と画像グループ2である。画像グループ1と画像グループ2は同じ枚数だが、画像グループ2の方が最初の画像から最後の画像の時間差が大きいので、画像グループ2を分割対象とし、画像グループ5と2をそれぞれ分割する。   The criteria for division will be described. Among the divisions shown in FIG. 6A, a division portion having a large number of image data is searched. Here, in order to increase the number of divisions from 8 to 10, two locations with a large number of image data are determined. In FIG. 6A, image group 5 is the largest, and then image group 1 and image group 2. Image group 1 and image group 2 are the same number, but image group 2 has a larger time difference from the first image to the last image, and therefore image group 2 is set as a division target, and image groups 5 and 2 are divided.

まず、画像グループ2の分割を説明する。画像グループ2には画像データ数の山が2つあり、この2つは撮影日が違うので、その部分に対応する図6(B)の破線矢印の箇所で分割する。次に、画像グループ5の分割を説明する。画像グループ5には画像データ数の山が3つあり、3日連続である。撮影日が変わる箇所が2箇所あるが、分割後の枚数差が小さくなるように、図6(B)の破線矢印の箇所で分割する。以上のように、分割数を8から10にする。ここでは、撮影日の異なる箇所で分割したが、画像データ数が多い箇所が単一日である場合、単一日の中で時間差が最大の箇所で分割するようにしても良い。   First, the division of the image group 2 will be described. In the image group 2, there are two peaks of the number of image data, and since these two have different shooting dates, the image group 2 is divided at the location indicated by the broken line arrow in FIG. 6B. Next, the division of the image group 5 will be described. In the image group 5, there are three peaks of the number of image data, which are three consecutive days. There are two places where the shooting date changes, but the division is performed at the broken-line arrows in FIG. 6B so that the difference in the number of sheets after the division is small. As described above, the number of divisions is changed from 8 to 10. In this example, the image is divided at different locations on the shooting date. However, if the location where the number of image data is large is a single day, the location may be divided at the location where the time difference is the largest within the single date.

S415では、見開き割当部210は、シーン統合を実行する。シーン統合とは、シーン分割数>アルバムの見開き数の場合、分割されたシーンを統合することを表す。図6(C)は、図6(A)をシーン統合した結果を示す。破線の箇所を統合したことで、分割数を6にしている。   In S415, the spread allocation unit 210 executes scene integration. The scene integration means that the divided scenes are integrated when the number of scene divisions> the number of album spreads. FIG. 6C shows the result of scene integration of FIG. The number of divisions is set to 6 by integrating the broken lines.

統合の基準について説明する。図6(A)の分割の中で、画像データ数が少ない分割箇所が検索される。ここでは、分割数を8から6に2箇所減らすために、画像データ数が少ない2箇所を決定する。図6(A)では、少ない方から画像グループ8、画像グループ3、画像グループ7である。画像グループ3と画像グループ7は同じ画像データ数である。但し、画像グループ7に隣接する画像グループ8が統合対象であるので、画像グループ3を統合対象とする。結果、画像グループ8と画像グループ3それぞれの統合が行われる。   Explain the integration criteria. Among the divisions shown in FIG. 6A, a division portion having a small number of image data is searched. Here, in order to reduce the number of divisions from 8 to 6 at two places, two places at which the number of image data is small are determined. In FIG. 6A, the image group 8, the image group 3, and the image group 7 are arranged in ascending order. Image group 3 and image group 7 have the same number of image data. However, since the image group 8 adjacent to the image group 7 is the integration target, the image group 3 is the integration target. As a result, the image group 8 and the image group 3 are integrated.

まず、画像グループ3の統合を説明する。画像グループ3の前後の画像グループ2と4との時間差を比較すると、画像グループ4との時間差の方が小さい。従って、図6(C)の破線箇所に示すように、画像グループ3を画像グループ4に統合する。次に、画像グループ8の統合を説明する。画像グループ8は、後続の画像グループがないので、図6(C)の破線箇所に示すように、前の画像グループ7と統合される。   First, the integration of the image group 3 will be described. When the time difference between the image groups 2 and 4 before and after the image group 3 is compared, the time difference with the image group 4 is smaller. Therefore, the image group 3 is integrated into the image group 4 as indicated by the broken line in FIG. Next, the integration of the image group 8 will be described. Since there is no subsequent image group, the image group 8 is integrated with the previous image group 7 as indicated by the broken line in FIG.

S416では、見開き割当部210は、見開き割当を実行する。S412〜S415によって、シーン分割数と指定見開き数は同じとなっている。見開き割当部210は、撮影日時順に先頭の分割から見開きの先頭に順に割り当てる。   In S416, the spread allocation unit 210 executes the spread allocation. By S412 to S415, the number of scene divisions and the number of specified spreads are the same. The spread assignment unit 210 assigns from the top division to the top of the spread in order of shooting date and time.

S417では、画像選択部211は、画像データの選択を実行する。以下、ある見開きに割り当てられた画像データ群の分割分から画像データを4枚選択する例を、図9を参照しながら説明する。   In step S417, the image selection unit 211 executes selection of image data. Hereinafter, an example in which four pieces of image data are selected from divided image data groups assigned to a certain spread will be described with reference to FIG.

図9(A)に示すスタート〜エンドの区間は、見開きに割り当てられたグループ分の、最初の画像データの撮影日時から最後の画像データの撮影日時までの時間差(分割撮影期間)を示している。図9(B)を参照しながら、1枚目を選択する方法を説明する。テンプレートには、1枚のメインスロット1002がある。従って、1枚目として、メインスロット用の画像データが対象グループから選択される。図9(B)に示す分割分の撮影期間に対応する複数の画像データのうち、S410で付与されたメインスロット用の得点が最高点の画像データが選択される。2枚目以降としては、サブスロット用の画像データが選択される。   The section from start to end shown in FIG. 9A shows the time difference (division shooting period) from the shooting date / time of the first image data to the shooting date / time of the last image data for the group assigned to spread. . A method of selecting the first sheet will be described with reference to FIG. There is one main slot 1002 in the template. Accordingly, as the first image, image data for the main slot is selected from the target group. Of the plurality of pieces of image data corresponding to the divided shooting periods shown in FIG. 9B, the image data with the highest score for the main slot assigned in S410 is selected. For the second and subsequent images, image data for subslots is selected.

本実施形態では、画像グループ内の撮影期間の一部に集中しないように、画像データの選択が行われる。   In the present embodiment, image data is selected so as not to concentrate on a part of the shooting period in the image group.

以下、本実施形態における、分割分の撮影期間を細分化する方法について説明する。図9(C)に示すように、分割分の撮影期間を2分割する。次に、図9(D)に示すように、1枚目が選ばれていない実線の撮影期間から2枚目の画像データが選択される。図9(D)の実線の撮影期間に対応する複数の画像データのうち、サブスロット用の得点が最高点の画像データが選択される。   Hereinafter, a method for subdividing the imaging period for the division in this embodiment will be described. As shown in FIG. 9C, the photographing period is divided into two. Next, as shown in FIG. 9D, the second image data is selected from the solid line shooting period in which the first image is not selected. Of the plurality of pieces of image data corresponding to the solid line shooting period in FIG. 9D, the image data having the highest score for the subslot is selected.

次に、図9(E)に示すように、図9(D)の各分割分の撮影期間を2分割する。そして、図9(F)に示すように、1枚目と2枚目が選ばれていない実線の撮影期間に対応する複数の画像データのうち、サブスロット用の得点が最高点の画像データが3枚目として選択される。   Next, as shown in FIG. 9E, the imaging period for each division in FIG. 9D is divided into two. Then, as shown in FIG. 9F, among the plurality of pieces of image data corresponding to the solid line shooting period in which the first and second images are not selected, the image data with the highest score for the subslot is obtained. Selected as the third sheet.

画像データの選択対象の撮影期間に画像データが存在せず、そのため選択できない場合について、4枚目の選択を例として説明する。図9(G)は、まだ画像データが選択されていない斜線の撮影期間から4枚目を選択しようとする場合、この斜線の撮影期間には画像データが存在しない例を示す。この場合、図9(H)に示すように、各分割分の撮影期間を2分割する。次に、図9(I)に示すように、1〜3枚目が選ばれていない実線の撮影期間に対応する複数の画像データのうち、サブスロット用の最高点の画像データが4枚目として選択される。   The case where the image data does not exist during the image data selection target shooting period and therefore cannot be selected will be described by taking the fourth selection as an example. FIG. 9G shows an example in which there is no image data in the hatched shooting period when the fourth image is selected from the hatched shooting period in which image data is not yet selected. In this case, as shown in FIG. 9H, the photographing period for each division is divided into two. Next, as shown in FIG. 9I, among the plurality of image data corresponding to the solid line shooting period in which the first to third images are not selected, the highest image data for the subslot is the fourth image data. Selected as.

このようにメインスロットとサブスロットのように、異なる得点化軸によって得られた得点に基づいて画像データの選択を行うことで、レイアウトに選択される画像データにバリエーションを持たせることができる。つまり、異なる判断基準の画像データを選択することができるので、変化に富むアルバムを作成することができる。   As described above, by selecting image data based on the scores obtained by different scoring axes like the main slot and the subslot, it is possible to give variations to the image data selected for the layout. That is, since image data with different judgment criteria can be selected, an album rich in change can be created.

再び図4を参照して続きの処理を説明する。S418では、画像レイアウト部213は、画像レイアウトの決定を行う。以下、テンプレート入力部212が、指定されたテンプレート情報に従って、ある見開きに対して図10の(a)〜(p)を入力する例を説明する。   The subsequent processing will be described with reference to FIG. 4 again. In S418, the image layout unit 213 determines an image layout. Hereinafter, an example in which the template input unit 212 inputs (a) to (p) in FIG. 10 for a certain spread according to the specified template information will be described.

ここでは、入力されたテンプレートのスロット数は一例として3と指定されている。また、図10(q)は、選択されている画像データ3枚を撮影日時順に並べた結果であり、画像の向きも示している。つまり、画像データ1006は画像の向きが縦であり、撮影日時が一番古い。画像データ1007は、画像の向きが横であり、撮影日時は2番目に古い。画像データ1005は、画像の向きが縦であり、撮影日時は一番新しい。ここでは、画像データ1005がメインスロット用であり、画像データ1006と1007がサブスロット用である。本実施形態では、テンプレートの左上に撮影日時のより古い画像データがレイアウトされ、右下に撮影日時のより新しい画像データがレイアウトされる。図10(q)では、メインスロット用の画像データ1005は撮影日時が一番新しいので、図10(i)〜(l)のテンプレートが候補となる。また、サブスロット用の古い方の画像データ1006が縦画像であり、新しい方の画像データ1007が横画像であるので、結果、図10(i)のテンプレートが、選択された3つの画像データに最も適したテンプレートとして決定され、レイアウトが決まる。   Here, the number of slots of the input template is specified as 3 as an example. FIG. 10 (q) shows the result of arranging the three selected image data in order of shooting date and time, and also shows the orientation of the image. That is, in the image data 1006, the orientation of the image is vertical, and the shooting date is the oldest. In the image data 1007, the image orientation is horizontal, and the shooting date and time is the second oldest. In the image data 1005, the orientation of the image is vertical, and the shooting date and time is the newest. Here, the image data 1005 is for the main slot, and the image data 1006 and 1007 are for the subslot. In this embodiment, image data with an older shooting date and time is laid out in the upper left of the template, and image data with a newer shooting date and time is laid out in the lower right. In FIG. 10 (q), the image data 1005 for the main slot has the latest shooting date and time, so the templates of FIGS. 10 (i) to 10 (l) are candidates. Further, since the older image data 1006 for the subslot is a vertical image and the newer image data 1007 is a horizontal image, the template shown in FIG. 10 (i) is converted into the selected three image data. It is determined as the most suitable template, and the layout is determined.

このとき、仮に、図10(i)のテンプレートに対して、スロット数や各スロットの縦横、位置も合致しており、メインスロットの大きさが図10(i)よりも大きい、図17に示すテンプレートが検索されたとする。つまり、選択された画像データ同士の撮影日時の順序や縦横位置に基づいて、なお、複数のテンプレート候補が存在した場合、本実施形態では、各画像データの得点差からテンプレートを選定する。例えば、メインスロットの画像データの得点が、複数のサブスロットの画像データの平均得点よりも所定の閾値を超えて大きい場合、メインスロットがより大きい図17に示すテンプレートが選択される。一方、閾値を超えていない場合、図10(i)のテンプレートが選択される。上記は、メインスロットについて他のテンプレートが検索された場合を説明したが、サブスロットについて同様に他のテンプレートが検索された場合、他のスロットの平均得点と比較するようにしても良い。   At this time, the number of slots, vertical and horizontal positions, and positions of the slots match the template of FIG. 10 (i), and the size of the main slot is larger than that of FIG. 10 (i). Suppose a template is searched. That is, when there are a plurality of template candidates based on the order of shooting date and time and the vertical and horizontal positions of the selected image data, in the present embodiment, a template is selected from the score difference of each image data. For example, when the score of the image data of the main slot is larger than the average score of the image data of the plurality of subslots by a predetermined threshold, the template shown in FIG. 17 having a larger main slot is selected. On the other hand, if the threshold is not exceeded, the template shown in FIG. 10 (i) is selected. The above describes the case where another template is searched for the main slot. However, when another template is similarly searched for the subslot, it may be compared with the average score of the other slot.

S418では、どの画像データをどのテンプレートのどのスロットにレイアウトするかが決定される。   In S418, which image data is to be laid out in which slot of which template is determined.

S419では、画像補正部215は、画像補正を実行する。画像補正部215は、画像補正条件入力部214から画像補正ONが入力された場合、画像補正を実行する。画像補正として、例えば、覆い焼き補正、赤目補正、コントラスト補正が実行される。画像補正部215は、画像補正条件入力部214から画像補正OFFが入力された場合、画像補正を実行しない。画像補正は、例えば、短辺1200画素で、sRGBの色空間にサイズが変換された画像データに対しても実行可能である。   In step S419, the image correction unit 215 performs image correction. When the image correction ON is input from the image correction condition input unit 214, the image correction unit 215 performs image correction. As image correction, for example, dodging correction, red-eye correction, and contrast correction are executed. The image correction unit 215 does not perform image correction when image correction OFF is input from the image correction condition input unit 214. The image correction can be executed, for example, also on image data having a short side of 1200 pixels and a size converted to an sRGB color space.

S420では、レイアウト情報出力部216は、レイアウト情報を作成する。画像レイアウト部213は、S418で決定されたテンプレートの各スロットに対して、S419の画像補正が実行された画像データをレイアウトする。このとき、画像レイアウト部213は、スロットのサイズ情報に合わせてレイアウトする画像データを変倍してレイアウトする。そして、レイアウト情報出力部216は、テンプレートのスロットに画像データをレイアウトしたビットマップデータを生成する。   In S420, the layout information output unit 216 creates layout information. The image layout unit 213 lays out the image data subjected to the image correction in S419 for each slot of the template determined in S418. At this time, the image layout unit 213 scales and lays out the image data to be laid out according to the slot size information. Then, the layout information output unit 216 generates bitmap data in which image data is laid out in a template slot.

S421では、S417〜S420の処理が全ての見開きに対して終了したか否かが判定される。終了していないと判定された場合、S417からの処理を繰り返す。終了していると判定された場合、図4の自動レイアウト処理は終了する。   In S421, it is determined whether or not the processing of S417 to S420 has been completed for all spreads. If it is determined that the processing has not ended, the processing from S417 is repeated. If it is determined that the process has ended, the automatic layout process of FIG. 4 ends.

従って以上説明した実施形態に従えば、顔検出処理をマルチスレッド処理で実行しても、同じデータ群が使用される限り、個人認識結果の再現性を向上させることができる。また、この処理に続く画像得点部や画像レイアウト部も個人認識の結果を利用するため、アルバムのレイアウト結果にも個人認識結果の再現性の向上が反映される。これにより、ユーザに最適な顔辞書を作成しても、アルバム作成の高速化を実現するとともに、その再現性を向上させることができる。   Therefore, according to the embodiment described above, even if the face detection processing is executed by multithread processing, the reproducibility of the personal recognition result can be improved as long as the same data group is used. Further, since the image scoring unit and the image layout unit following this processing also use the result of personal recognition, the improvement in the reproducibility of the personal recognition result is reflected in the album layout result. As a result, even if a face dictionary optimal for the user is created, it is possible to speed up the album creation and improve the reproducibility thereof.

<実施形態2>
本発明の実施形態の共通の特徴に、ユーザが指定したアルバムのページごとにマルチスレッドが実行可能な構成を有することがある。実施形態1では、ユーザがアルバム作成用に入力した画像データ群をコアに割当てて顔検出を実行し、その際に、各コアに割当てる画像データ数の基準を撮影日時とし、各コアの処理に偏りがないように画像データを分配した。
<Embodiment 2>
A common feature of the embodiment of the present invention is that it has a configuration capable of executing multi-thread for each page of an album specified by a user. In the first embodiment, the image data group input by the user for album creation is assigned to the core and face detection is performed. At that time, the reference of the number of image data to be assigned to each core is the shooting date and time, and the processing of each core is performed. The image data was distributed so that there was no bias.

この実施形態では、ユーザによりアルバム作成のために入力された画像データ群が取得された後に、イベント分割処理とページ割当て処理を実行する。この実施形態が実施形態1と異なる点は、入力された画像データ群を画像解析や評価値の算出を実行する前に、必要なページ枚数分に分割する点にある。画像処理装置は各コアに対し、ページ単位でスレッド処理の割当てを行い、各コアは割当てられたページに属する画像グループに対する画像解析処理を実行する。   In this embodiment, after an image data group input for album creation by the user is acquired, event division processing and page allocation processing are executed. This embodiment is different from the first embodiment in that the input image data group is divided into a necessary number of pages before image analysis and evaluation value calculation are executed. The image processing apparatus assigns thread processing to each core in units of pages, and each core executes image analysis processing for an image group belonging to the assigned page.

なお、この実施形態で用いるアルバム作成アプリケーションのソフトウェア構成は、実施形態1において、図2を参照して説明した構成と同様なので、その説明は省略する。ただし、この実施形態では、主人公情報入力部207が、画像得点部208ではなく画像選択部211の処理に影響している点が特徴となる。   Note that the software configuration of the album creating application used in this embodiment is the same as that described with reference to FIG. However, this embodiment is characterized in that the main character information input unit 207 affects the processing of the image selection unit 211 instead of the image scoring unit 208.

図18はアルバム作成アプリケーションの自動レイアウト処理部が実行する処理を示すフローチャートである。なお、図18において、図4を参照して既に実施形態1で説明したのと同じ処理ステップについては同じステップ参照番号を付し、その説明は省略する。   FIG. 18 is a flowchart showing processing executed by the automatic layout processing unit of the album creating application. In FIG. 18, the same processing steps as those already described in the first embodiment with reference to FIG. 4 are denoted by the same step reference numerals, and the description thereof is omitted.

S1801では、画像変換部203は、画像データのExif情報を取得する。取得したExif情報には画像データの撮影日時が記録されている。次に、S406のシーン分割処理では、S1801で取得した各画像データの撮影日時を元に画像グループをシーンごとに分割する。分割したシーンに対しては、S412〜S416の処理によって必要ページ数に応じた分割・統合処理を実行する。シーン分割方法や、ページ数分に分割・統合する処理の方法は実施形態1で説明した通りである。   In step S <b> 1801, the image conversion unit 203 acquires Exif information of image data. The acquired Exif information records the shooting date and time of the image data. Next, in the scene division process of S406, the image group is divided for each scene based on the shooting date and time of each image data acquired in S1801. For the divided scenes, the division / integration processing corresponding to the required number of pages is executed by the processing of S412 to S416. The scene dividing method and the processing method for dividing and integrating the pages into the number of pages are as described in the first embodiment.

その後、S401〜S405を全画像データに対して実行し、S407〜S408で全シーンに関してシーン分類を実行する。   Thereafter, S401 to S405 are executed for all image data, and scene classification is executed for all scenes in S407 to S408.

その後、S1802では、画像得点部208は得点化(画像データの評価)を実行する。この実行方法は実施形態1で説明したのと同様であるが、この実施形態の画像得点部208では主人公設定を行わず、また主人公情報を得点化に反映しない。   Thereafter, in S1802, the image scoring unit 208 performs scoring (evaluation of image data). Although this execution method is the same as that described in the first embodiment, the image scoring unit 208 of this embodiment does not set the main character and does not reflect the main character information in scoring.

全画像データに対して得点化(画像データの評価)が終了すると、S417〜S418、S421を全見開きが終了するまで実行し、その後、S409で主人公設定を行う。   When scoring (evaluation of image data) is completed for all image data, S417 to S418 and S421 are executed until full spread is completed, and then the main character is set in S409.

次にS1803では、画像選択部211は、S418における画像レイアウト決定で取得したレイアウト情報から、S409における主人公設定の情報を加味した画像データの入れ替えを行う。   In step S <b> 1803, the image selection unit 211 replaces image data in consideration of the main character setting information in step S <b> 409 from the layout information acquired in the image layout determination in step S <b> 418.

この実施形態では、S417における画像選択時点では主人公情報は反映されず、画像データの構図情報や人物バランスといった評価基準に従った得点化の結果を元に画像データの選択処理を実行する。従って、S418における画像レイアウト決定で選ばれる画像データに主人公が写っている保証はない。このため、良い構図の画像データをメインスロットに配置していても、ユーザにとって好ましい画像データでない可能性がある。S1803では、S409における主人公設定の結果を受けて、選択済み画像データにおいてユーザにとって好ましくない画像データと選択候補画像データの中でユーザにとって好ましいだろう画像データを入れ替える。   In this embodiment, the main character information is not reflected at the time of image selection in S417, and the image data selection process is executed based on the scoring result according to the evaluation criteria such as the composition information of the image data and the person balance. Therefore, there is no guarantee that the main character is reflected in the image data selected in the image layout determination in S418. For this reason, even if image data having a good composition is arranged in the main slot, there is a possibility that the image data is not preferable for the user. In S1803, in response to the result of the main character setting in S409, the image data that is not preferable for the user in the selected image data and the image data that is preferable for the user in the selection candidate image data are switched.

例えば、選択済み画像データが「通行人が写り込んだ画像データ」であった場合、画像データの得点や撮影日時、構図などの要素から入れ替え可能と判断された「主人公が写っている画像データ」に画像データの入れ替えを行うことができる。人物が主人公ではないという情報から、「通行人」とみなすことは可能である。   For example, if the selected image data is “image data with passers-by”, “image data showing the main character” determined to be replaceable based on factors such as image data score, shooting date and composition, etc. The image data can be replaced. From the information that the person is not the main character, it is possible to regard it as a “passerby”.

入れ替え基準は、主人公情報を優先し、スロットの種類に応じて次の優先度を変えても良い。例えば、メインスロットの画像データを入れ替える場合は、対象の選択済み画像データと画像データの得点が同程度に高い画像データを選択するために、「画像データの得点」の優先度を上げても良い。サブスロットの画像データを入れ替える場合は、対象の選択済み画像データや隣接の選択済み画像データの撮影日時を考慮して画像データを選択するために、「画像データの撮影日時」の優先度を上げても良い。いずれにしても、画像データの入れ替え処理を実行することで、実施形態1とは異なるプロセスでもユーザにとって好ましいアルバムレイアウトを完成させることができる。   The replacement standard may prioritize the main character information and change the next priority according to the slot type. For example, when the image data of the main slot is replaced, the priority of “scoring of image data” may be increased in order to select image data having the same high score as that of the target selected image data. . When replacing the image data in the subslot, increase the priority of the “image data shooting date” in order to select the image data in consideration of the shooting date of the target selected image data and the adjacent selected image data. May be. In any case, an album layout preferable for the user can be completed by a process different from that of the first embodiment by executing the image data replacement process.

次に、ページ単位での処理の詳細について説明する。   Next, details of processing in units of pages will be described.

図19はページ単位での処理をマルチスレッドで実行するフローチャートである。   FIG. 19 is a flowchart for executing processing in units of pages in a multi-thread manner.

なお、この処理にあたり、後述する処理ページ枚数を示すパラメータlは“0”に初期化され、各ページの処理画像データ数を示すパラメータkも“0”に初期化される。   In this process, a parameter l indicating the number of processed pages, which will be described later, is initialized to “0”, and a parameter k indicating the number of processed image data of each page is also initialized to “0”.

S1901では、処理ページ枚数を示すパラメータlを“+1”する。本実施形態では、ユーザがアルバム作成用に入力した画像データ群を各ページに割当てるページ割当て処理を事前に実行する。そして、アルバムの各ページという処理単位で各スレッドに割当てる。例えば、図20に示すように、ユーザが見開き9ページのアルバムを作成するケースを想定する。この場合、見開き割当部210では、図20に示すように画像データの撮影日時に応じたページ割当てを実行し、1ページから9ページまで順に、20枚、30枚、25枚、30枚、25枚、10枚、20枚、30枚、10枚と割当てる。ここで、ページ毎に割当て画像データ数の偏りがあるのは、画像グループの撮影日時間隔の粗密やシーンとしてのまとまりが影響した結果である。OSの指示によって、各ページは各コアに割当てられる。コア数の指定はOSの指示によって適応的に変えてもよい。また、各コアに割当てるページ数は均一であってもよいし、システム構成やCPU101のパフォーマンスに従った偏りがあってもよい。   In S1901, the parameter l indicating the number of processed pages is incremented by “+1”. In the present embodiment, a page assignment process for assigning image data groups input by the user for album creation to each page is executed in advance. Then, it is assigned to each thread in a processing unit of each page of the album. For example, as shown in FIG. 20, it is assumed that the user creates an album with 9 pages. In this case, the spread allocation unit 210 executes page allocation according to the shooting date / time of the image data as shown in FIG. 20, and in order from page 1 to page 9, 20, 30, 25, 30, 25 Assign 10 sheets, 20 sheets, 30 sheets, and 10 sheets. Here, the deviation in the number of assigned image data for each page is a result of the influence of the density of the photographing date and time intervals of the image group and the grouping of scenes. Each page is assigned to each core according to the instruction of the OS. The designation of the number of cores may be adaptively changed according to an instruction from the OS. Further, the number of pages allocated to each core may be uniform, or there may be a deviation according to the system configuration and the performance of the CPU 101.

図20に示す例では、3つのコアA、B、Cにそれぞれ、A={1、4、7}、B={2、5、8}、C={3、6、9}のページが割当てられる。即ち、各コアが3ページの処理を担当する。従って、図20に示す例を適用すれば、各スレッドでS1901〜S1907aに関する3回のループが実行されることになる。つまり、処理割当てページ枚数LはL=3となる。   In the example illustrated in FIG. 20, pages of A = {1, 4, 7}, B = {2, 5, 8}, and C = {3, 6, 9} are respectively included in the three cores A, B, and C. Assigned. That is, each core is in charge of processing for three pages. Therefore, if the example shown in FIG. 20 is applied, three loops relating to S1901 to S1907a are executed in each thread. That is, the process allocation page number L is L = 3.

S1902では、各ページに割り振られた画像データ数の内、処理画像データ数を示すパラメータkを“+1”する。図20に示す例を適用すれば、コアAの処理の場合、1ページ目では20枚、4ページ目では30枚、7ページ目では20枚の画像データを処理する。このため、1回目のループでは割当て画像データ数Kは、K=20、2回目のループではK=30、3回目ループではK=20となる。   In S1902, the parameter k indicating the number of processed image data among the number of image data allocated to each page is incremented by “+1”. If the example shown in FIG. 20 is applied, in the case of the processing of the core A, 20 sheets of image data are processed on the first page, 20 sheets on the 4th page, and 30 sheets on the 7th page. Therefore, the number K of assigned image data in the first loop is K = 20, K = 30 in the second loop, and K = 20 in the third loop.

S1903では、画像解析処理を実行する。画像解析処理の実行方法は実施形態1で説明した画像解析部204における処理、S402における画像特徴量取得の処理と同様である。S1904では、顔検出処理を実行する。顔検出処理の内容については、実施形態1において図13を参照して説明したのと同様の処理である。   In step S1903, image analysis processing is executed. The execution method of the image analysis processing is the same as the processing in the image analysis unit 204 described in the first embodiment and the image feature amount acquisition processing in S402. In S1904, face detection processing is executed. The contents of the face detection process are the same as those described with reference to FIG. 13 in the first embodiment.

S1904aでは割当てられるべき全ての画像データについて処理を終了したかどうかを調べる。ここで、K=kであれば、処理終了と判断し、処理はS1905に進むが、K≠kであれば、処理未完了として処理はステップS1902に戻る。   In S1904a, it is checked whether or not the processing has been completed for all the image data to be allocated. Here, if K = k, it is determined that the process is completed, and the process proceeds to S1905. If K ≠ k, the process is not completed, and the process returns to step S1902.

S1905では、得点化処理を実施する。得点化処理の実行方法は実施形態1において説明した画像選択部211とS410における画像得点化の説明と、主人公情報を画像評価値に反映させない点を除き、同様である。S1906では、画像選択処理を実行する。画像選択処理の実行方法は実施形態1において説明した画像選択部211とS417における画像選択の説明と同様である。S1907では、レイアウト選択処理を実行する。レイアウト選択処理の実行方法は実施形態1において説明した画像レイアウト部213とS418における画像レイアウト決定の説明と同様である。   In S1905, a scoring process is performed. The scoring process is performed in the same manner as in the image selection unit 211 and S410 described in the first embodiment, except that the main character information is not reflected in the image evaluation value. In S1906, an image selection process is executed. The execution method of the image selection process is the same as the description of the image selection in the image selection unit 211 and S417 described in the first embodiment. In S1907, layout selection processing is executed. The execution method of the layout selection process is the same as the description of the image layout determination in the image layout unit 213 and S418 described in the first embodiment.

S1907aでは割当てページL全ての処理を終了したかどうかを調べる。ここで、L=lであれば、処理終了と判断し、処理は終了するが、L≠lであれば、処理未完了として処理はステップS1901に戻る。   In S1907a, it is checked whether or not the processing for all the assigned pages L has been completed. Here, if L = 1, it is determined that the process is completed, and the process ends. If L ≠ 1, the process returns to step S1901 because the process is not completed.

以上説明したように、この実施形態ではページ単位でマルチスレッドを実行し、各スレッドでページごとのアルバムレイアウトを作成することができる。従って実施形態1と異なり、顔検出だけでなく、得点化処理や画像選択、レイアウト選択もマルチスレッドで実行することで、更に処理を高速化することができる。   As described above, in this embodiment, multi-threading can be executed in units of pages, and an album layout for each page can be created in each thread. Accordingly, unlike the first embodiment, not only face detection but also scoring processing, image selection, and layout selection are executed in a multi-thread manner, so that the processing can be further speeded up.

さらに、この実施形態では、実施形態1と同様に、マルチスレッドで動く各コアに対して個人認識処理を並列処理で実行する。個人認識処理は実施形態1において図14を参照して説明した通りである。また、実施形態1と同様に、S403における顔検出とS404における個人認識処理の構成については図11に示す通りである。顔情報ナンバリング部1403、情報管理部1404、順序制御部1405における処理によって個人認識結果の再現性が高まる。   Further, in this embodiment, as in the first embodiment, the personal recognition processing is executed in parallel processing for each core moving in multithread. The personal recognition process is as described with reference to FIG. 14 in the first embodiment. As in the first embodiment, the configuration of face detection in S403 and personal recognition processing in S404 is as shown in FIG. The process in the face information numbering unit 1403, the information management unit 1404, and the order control unit 1405 increases the reproducibility of the personal recognition result.

次に、個人認識処理が全ての顔検出結果の顔関連情報について終了した後に実行する画像選択部211に関連したアルバムレイアウト入れ替え処理について説明する。   Next, an album layout replacement process related to the image selection unit 211, which is executed after the personal recognition process is completed for the face related information of all face detection results, will be described.

図21は、アルバム入れ替え処理の詳細を示すフローチャートである。   FIG. 21 is a flowchart showing details of the album replacement process.

S1908では、図16で示す個人認識処理が終了したかどうかを調べる。ここで、個人認識処理が終了と判断されれば、処理はS1910に進むが、未終了であると判断されれば、処理はS1909に進み、所定の時間、処理を待ち合わせる。この実施形態では所定の時間を10秒間とし、10秒が経過した後、待機を終了し、処理は再びS1908に戻り、個人認識処理が終了したかどうかを調べる。このようにして、ユーザが入力した画像グループに写る顔に対して全て個人認識処理が実行されるまで、処理を待機する。   In S1908, it is checked whether or not the personal recognition process shown in FIG. If it is determined that the personal recognition process is complete, the process proceeds to S1910. If it is determined that the personal recognition process is not complete, the process proceeds to S1909, and the process waits for a predetermined time. In this embodiment, the predetermined time is set to 10 seconds, and after 10 seconds have elapsed, the standby is finished, and the process returns to S1908 to check whether the personal recognition process is finished. In this way, the process waits until the personal recognition process is executed for all the faces in the image group input by the user.

なお、待機終了条件は10秒以外の指定の秒数でも良いし、ROM102やHDD104、もしくはウェブサーバ上のデータ更新情報をトリガとして待機を終了させても良い。また、終了判定フラグをスレッド間で共有して、個人認識終了とともにフラグ内容を変更することをトリガとすることも可能である。   The standby end condition may be a specified number of seconds other than 10 seconds, or the standby may be ended using data update information on the ROM 102, HDD 104, or web server as a trigger. It is also possible to share the end determination flag between threads and use the trigger to change the flag contents as the personal recognition ends.

S1910では、主人公設定を行う。主人公設定の実行方法は実施形態1において説明した主人公情報入力部207とS409における主人公設定の処理と同様である。図21に示す処理では、S1910において主人公設定を行う際には、既にユーザがアルバム作成用に入力した全画像データに関して顔検出と個人認識の終了判断がなされているため、S1910では全個人ID情報を用いて主人公判定を実行できる。また、実施形態1において説明した図11に示したのと同様の構成で顔検出と個人認識を実行するため、個人認識の実行順序やアルバム作成結果の再現性が高まる。   In S1910, the main character is set. The execution method of the hero setting is the same as the hero information input unit 207 and the hero setting process in S409 described in the first embodiment. In the process shown in FIG. 21, when performing the hero setting in S1910, the end of face detection and personal recognition is already determined for all image data input by the user for album creation. The main character can be determined using. Further, since face detection and personal recognition are executed with the same configuration as that shown in FIG. 11 described in the first embodiment, the reproducibility of the execution order of personal recognition and the album creation result is improved.

S1911では、画像選択部211は、S1907で決定したレイアウト情報を用いて画像データの入れ替え処理を行う。入れ替え判定に用いる情報には、S1910で取得した主人公情報を利用する。   In step S1911, the image selection unit 211 performs image data replacement processing using the layout information determined in step S1907. The main character information acquired in S1910 is used as information used for the replacement determination.

この処理では、S1906で選択した選択済み画像データに主人公が写っていなければ、画像データの得点、画像データの撮影日時、画像データの構図から少なくとも1つの要素で近似している画像データを入れ替え候補画像データとする。そして、入れ替え候補画像データ中で主人公が写っている画像データがあれば、選択済み画像データと入れ替え処理を実行する。入れ替え判断基準である各近似判断条件に関しては、メインスロット、サブスロットで重みを変えても良いし、各近似判断条件を異なるシーン間で変えてもよい。   In this process, if the protagonist does not appear in the selected image data selected in S1906, the image data approximated with at least one element from the image data score, the image data shooting date and time, and the composition of the image data are replaced candidates. Let it be image data. Then, if there is image data in which the main character is reflected in the replacement candidate image data, the replacement processing is executed with the selected image data. Regarding each approximate determination condition that is a replacement determination criterion, the weight may be changed between the main slot and the subslot, or each approximate determination condition may be changed between different scenes.

例えば、旅行シーンが掲載されるページは、通行人が紛れ込んだ風景画像データに高い得点がついてしまうことが多いと考えられる。よって旅行シーンは画像データ入れ替えにおける各要素の近似条件を緩く設定する必要がある。各要素の近似条件が緩くなれば、得点に見劣りがあったとしても、主人公が写っている画像データを優先して入れ替える。   For example, it is considered that a page on which a travel scene is posted often gives a high score to landscape image data in which a passerby is mixed. Therefore, it is necessary to set a loose approximation condition for each element in the image data exchange for the travel scene. If the approximate condition of each element becomes loose, even if the score is poor, the image data showing the main character is replaced with priority.

一方、結婚式シーンでは、画像グループは新郎新婦がメインで撮られた写真が多いため、個人認識結果に応じた画像データ入れ替え処理は必要でない場合がある。個人認識が実行できなかった顔の向きになっている新郎新婦の画像データなどは、他の画像データと入れ替える必要はない。よって結婚式シーンは画像データ入れ替えにおける各要素の近似条件を厳しく設定してもよい。各要素の近似条件が厳しくなれば主人公が写っていると判断された画像データでも、得点が高くなければ、撮影日時が近くなければ入れ替えを実施しない。   On the other hand, in the wedding scene, there are many pictures taken mainly by the bride and groom in the image group, so there is a case where the image data exchange process according to the personal recognition result is not necessary. It is not necessary to replace the image data of the bride and groom whose face has been unable to be recognized with other image data. Therefore, the wedding scene may be set with strict approximation conditions for each element in the image data exchange. If the approximate condition of each element becomes strict, even if it is determined that the main character is reflected in the image data, if the score is not high, the replacement is not performed unless the shooting date is close.

従って以上説明した実施形態に従えば、各ページの画像解析からアルバムレイアウトをマルチスレッドで実行しても、個人認識結果の再現性を向上できる。そして、個人認識結果の反映は最終的に画像データ入れ替え処理で実行されるため、アルバムのレイアウト結果にも再現性が生まれる。また、マルチスレッドでの処理を多くすることで実施形態1に比較して、より一層の高速化を実現することができる。   Therefore, according to the embodiment described above, the reproducibility of the personal recognition result can be improved even if the album layout is executed by multi-thread from the image analysis of each page. Since the reflection of the personal recognition result is finally executed by the image data replacement process, the album layout result also has reproducibility. Further, by increasing the number of multi-thread processes, it is possible to realize a further increase in speed compared to the first embodiment.

<実施形態3>
この実施形態では、アルバム作成アプリケーションを使ってアルバム作成途中に中断、もしくは作成後にアプリケーションを終了した状態において、そのアプリケーションを再実行して再度アルバムを作成するときも、結果の再現性を高める例について説明する。
<Embodiment 3>
In this embodiment, when the album creation application is interrupted in the middle of album creation or the application is terminated after creation, the application is re-executed and the album is created again to increase the reproducibility of the results. explain.

図22は人物情報解析部205が実行する顔検出処理を示すローチャートである。ここでは実施形態では実施形態1と同様に、顔検出をマルチスレッドで実行する。なお、図22において、図13を参照して実施形態1において説明したのと同じ処理ステップについては同じステップ参照番号を付し、その説明は省略する。   FIG. 22 is a flowchart showing face detection processing executed by the person information analysis unit 205. In this embodiment, as in the first embodiment, face detection is performed in a multi-thread manner. In FIG. 22, the same processing steps as those described in the first embodiment with reference to FIG. 13 are denoted by the same step reference numerals, and the description thereof is omitted.

S1501の後、S1501aでは、S1501で実行するパラメータnのカウントアップに対応して、そのパラメータが示す画像データに関して、以前に顔検出を含む画像解析処理が実行済みであるかどうかを調べる。例えば、ユーザがアルバム作成用に200枚の画像データを入力した場合を想定する。前回アプリケーション立ち上げ時にユーザが120枚の画像データを解析した時点でアプリケーションを終了すれば、その解析結果である顔関連情報はHDD104やウェブサーバ上などに保管されている。同様に、120枚分の解析結果を管理するデータテーブルもHDD104やウェブサーバ上などに保管されている。従って、このような保管データを次回のアルバム作成時に再利用できれば、その分の処理短縮が実現できる。このため、S1501aでは、利用可能な前回作成時のデータを検索し、該当する画像データに関して、以前に顔検出を含む画像解析処理が実行済みであるかどうかを調べる。   After S1501, in S1501a, in response to the count-up of parameter n executed in S1501, it is checked whether image analysis processing including face detection has been performed on the image data indicated by the parameter. For example, it is assumed that the user inputs 200 pieces of image data for creating an album. If the application is terminated when the user analyzes 120 pieces of image data at the time of starting the application last time, the face related information as the analysis result is stored on the HDD 104 or the web server. Similarly, a data table for managing analysis results for 120 sheets is also stored on the HDD 104 or the web server. Therefore, if such stored data can be reused when the next album is created, the corresponding processing can be shortened. For this reason, in S1501a, the data at the time of the last creation that can be used is searched, and it is checked whether or not the image analysis processing including face detection has been performed on the corresponding image data.

ここで、そのような画像解析処理により得られた情報があると判断された場合、処理はS1502〜S1507aをスキップして、S1507bに進む。これに対して、そのような画像解析処理により得られた情報がないと判断された場合、処理はS1502に進み、実施形態1で説明した処理を実行する。   If it is determined that there is information obtained by such image analysis processing, the processing skips S1502 to S1507a and proceeds to S1507b. On the other hand, if it is determined that there is no information obtained by such image analysis processing, the processing proceeds to S1502, and the processing described in the first embodiment is executed.

さて、S1502〜S1506の処理が実行されると、処理はS1507’において、情報管理部1404は、顔検出結果とシリアル番号の組み合わせである顔関連情報をHDD104に保管する。実施形態1では、顔関連情報は可能な限りRAM103に保管する構成を取っていたが、この実施形態ではHDD104に無条件に保管する。HDD104に保管することで、アプリケーションの再起動時に過去の解析結果の再利用が可能になる。S1507’では、S1501で得られるパラメータnのカウント値に一致する画像データの顔検出結果を記録したデータテーブルも同様にHDD104に保管することもできる。また、ユーザと画像解析結果との対応付けが管理システムで実現できている場合、そのデータテーブルをウェブサーバ上に保管することもできる。   When the processing from S1502 to S1506 is executed, the information management unit 1404 stores face related information, which is a combination of the face detection result and the serial number, in the HDD 104 in S1507 '. In the first embodiment, the face-related information is stored in the RAM 103 as much as possible. However, in this embodiment, the face-related information is stored in the HDD 104 unconditionally. By storing in the HDD 104, past analysis results can be reused when the application is restarted. In S1507 ', the data table in which the face detection result of the image data matching the count value of the parameter n obtained in S1501 can be stored in the HDD 104 in the same manner. Further, when the association between the user and the image analysis result can be realized by the management system, the data table can be stored on the web server.

以上説明したように、この実施形態では実施形態1に比べて、過去の解析結果が残っているかどうかを確認している。このため、画像解析や顔検出についてはアルバム再作成時も同じ結果が得られるため、再作成時に同じ画像データに対してその処理の実行を省略できる。このようにして、過去の解析結果を再利用することで処理時間の短縮化を図っている。   As described above, in this embodiment, it is confirmed whether past analysis results remain as compared with the first embodiment. For this reason, the same results can be obtained for image analysis and face detection when the album is recreated, so that the execution of the processing can be omitted for the same image data when recreating. In this way, the processing time is shortened by reusing past analysis results.

図23は人物情報解析部205が実行する個人認識処理を示すフローチャートである。ここでは実施形態では実施形態1と同様に顔検出(マルチスレッド)と個人認識処理が並列で実行される。なお、図23において、図14を参照して実施形態1において説明したのと同じ処理ステップについては同じステップ参照番号を付し、その説明は省略する。   FIG. 23 is a flowchart showing the personal recognition processing executed by the person information analysis unit 205. In this embodiment, face detection (multi-thread) and personal recognition processing are executed in parallel as in the first embodiment. In FIG. 23, the same processing steps as those described in the first embodiment with reference to FIG. 14 are denoted by the same step reference numerals, and the description thereof is omitted.

S1508aでは、個人認識情報取得部1406は、顔辞書の更新処理を行う。顔辞書も前回解析結果をHDD104に保管することができる。本実施形態では、個人認識結果の再現性を高めるために顔辞書を新規状態に更新する。なお、顔辞書とデータテーブルの一致・整合性が取れる段階までロールバックする仕組みを入れてもよい。その場合、S1508aでは、個人認識情報取得部1406は、顔辞書を前回作成時点と整合性が取れる状態まで戻す更新処理を行う。   In step S1508a, the personal recognition information acquisition unit 1406 performs face dictionary update processing. The face dictionary can also store the previous analysis result in the HDD 104. In this embodiment, the face dictionary is updated to a new state in order to improve the reproducibility of the personal recognition result. A mechanism for rolling back to a stage where the face dictionary and the data table can be matched and matched may be included. In this case, in S1508a, the personal recognition information acquisition unit 1406 performs an update process for returning the face dictionary to a state where consistency with the previous creation time point can be obtained.

S1508bでは、順序制御部1405は、データテーブルの更新を行う。図12(D)に示すように、データテーブルには前回作成時点での個人認識実行順番が保管されている。その実行順番は、個人認識実行が終了し個人IDが判定された顔関連情報には与えられない。本実施形態ではS1508aで顔辞書を新規状態に更新している。これに従って個人認識実行順番も新規状態に更新する。なお、ロールバック機能などで顔辞書を整合性が取れる状態に更新した場合は、個人認識実行順番も顔辞書と整合性が取れる状態まで戻す更新処理を行う。   In step S1508b, the order control unit 1405 updates the data table. As shown in FIG. 12D, the personal recognition execution order at the time of the previous creation is stored in the data table. The execution order is not given to the face related information for which the personal recognition execution is completed and the personal ID is determined. In this embodiment, the face dictionary is updated to a new state in S1508a. Accordingly, the personal recognition execution order is also updated to a new state. When the face dictionary is updated to a state where consistency can be obtained by a rollback function or the like, update processing is performed to return the personal recognition execution order to a state where consistency can be obtained with the face dictionary.

これ以降の処理は実施形態1で説明した通りである。   The subsequent processing is as described in the first embodiment.

従って以上説明した実施形態に従えば、実施形態1と比べて、過去の解析結果を最利用し、過去の解析結果が残っている場合、データテーブルを含めた各情報をアルバム再作成時に再利用することができる。これにより、アプリケーションの強制終了などによりデータテーブルの書き込みが中途状態で終了した場合でも、顔関連情報との対応付けエラーなどにも対処し結果の再現性を向上させることができる。   Therefore, according to the embodiment described above, compared to the first embodiment, the past analysis result is most utilized, and when the past analysis result remains, each information including the data table is reused when the album is recreated. can do. Thereby, even when the writing of the data table is terminated in the middle due to forced termination of the application or the like, it is possible to cope with an association error with the face related information and improve the reproducibility of the result.

なお、本発明は上述の実施形態の1以上の機能を実現するプログラムをネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサがプログラムを読出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。この場合、そのプログラム、および該プログラムを記憶した記憶媒体は本発明を構成する。   The present invention supplies a program that realizes one or more functions of the above-described embodiments to a system or apparatus via a network or a storage medium, and one or more processors in a computer of the system or apparatus read and execute the program This process can be realized. It can also be realized by a circuit (for example, ASIC) that realizes one or more functions. In this case, the program and the storage medium storing the program constitute the present invention.

101 CPU、102 ROM、103 RAM、104 HDD 101 CPU, 102 ROM, 103 RAM, 104 HDD

Claims (14)

複数の画像データをレイアウトする画像処理装置であって、
複数の画像データを取得する取得手段と、
前記取得手段により取得された複数の画像データそれぞれの特定の部分の情報をマルチスレッド処理で検出する検出手段と、
前記検出手段により検出された前記複数の画像データそれぞれの特定の部分の情報をソートすることで得られたソート結果に基づいて、前記複数の画像データそれぞれの特定の部分の情報に対する、前記特定の部分の情報を用いる特定の処理の実行順序を決定する決定手段と、
前記決定手段により決定された実行順序に従って、前記特定の処理を実行する実行手段と、
前記実行手段により実行された前記特定の処理の結果に基づいて前記複数の画像データをレイアウトするレイアウト手段とを有することを特徴とする画像処理装置。
An image processing apparatus that lays out a plurality of image data,
Obtaining means for obtaining a plurality of image data;
Detecting means for detecting information of a specific part of each of the plurality of image data acquired by the acquiring means by multi-thread processing;
Based on the sorting result obtained by sorting the information on the specific part of each of the plurality of image data detected by the detecting means, the specific part of the information on the specific part of the plurality of image data Determining means for determining an execution order of a specific process using the information of the part;
Execution means for executing the specific process according to the execution order determined by the determination means;
An image processing apparatus comprising: a layout unit that lays out the plurality of image data based on a result of the specific processing executed by the execution unit.
前記取得手段により取得された前記複数の画像データを複数の画像グループに分割する分割手段と、
前記分割手段により分割された複数の画像グループを複数のコアに割当てる割当て手段とをさらに有し、
前記検出手段は、前記割当て手段により割り当てられた前記複数のコアにより前記複数の画像グループに含まれる画像データに関して、前記特定の部分の情報を検出することを特徴とする請求項1に記載の画像処理装置。
A dividing unit that divides the plurality of image data acquired by the acquiring unit into a plurality of image groups;
Assigning means for assigning a plurality of image groups divided by the dividing means to a plurality of cores;
2. The image according to claim 1, wherein the detection unit detects information of the specific portion with respect to image data included in the plurality of image groups by the plurality of cores allocated by the allocation unit. Processing equipment.
前記分割手段は、前記複数の画像データを複数のページにわたってレイアウトする場合に、前記複数の画像データを、予め定められた基準に従って、前記複数の画像グループに分割して、前記複数のページに割当て、
前記割当て手段は、前記分割手段により前記複数のページそれぞれに割当てられた画像データを前記複数のコアに割当てることを特徴とする請求項2に記載の画像処理装置。
The dividing unit divides the plurality of image data into the plurality of image groups according to a predetermined criterion and allocates the plurality of image data to the plurality of pages when the plurality of image data are laid out over a plurality of pages. ,
The image processing apparatus according to claim 2, wherein the assigning unit assigns the image data assigned to each of the plurality of pages by the dividing unit to the plurality of cores.
前記予め定められた基準は、前記複数の画像データの撮影日時を含むことを特徴とする請求項3に記載の画像処理装置。   The image processing apparatus according to claim 3, wherein the predetermined reference includes shooting dates and times of the plurality of image data. 前記検出手段による前記複数の画像グループに含まれる画像データの前記特定の部分の情報が検出された後に、前記レイアウト手段によりレイアウトされた前記複数の画像データの内の少なくとも一部を入れ替える入れ替え手段をさらに有することを特徴とする請求項3又は4に記載の画像処理装置。   An exchanging unit for exchanging at least a part of the plurality of image data laid out by the layout unit after the information on the specific part of the image data included in the plurality of image groups is detected by the detecting unit; The image processing apparatus according to claim 3, further comprising: 前記検出手段により検出された前記特定の部分の情報を格納する格納手段をさらに有し、
前記取得手段により取得された複数の画像データを用いて再度のレイアウトを行う場合、前記レイアウト手段は、前記格納手段により格納された前記特定の部分の情報を用いてレイアウトを実行することを特徴とする請求項1乃至5のいずれか1項に記載の画像処理装置。
And further comprising storage means for storing information on the specific part detected by the detection means,
When performing a second layout using a plurality of image data acquired by the acquisition unit, the layout unit executes the layout using the information on the specific part stored by the storage unit. The image processing apparatus according to any one of claims 1 to 5.
前記検出手段による検出が中断され、その後、再実行した場合、前記格納手段に格納された前記特定の部分の情報に基づいて、前記検出手段による検出が再実行されることを特徴とする請求項6に記載の画像処理装置。   The detection by the detection means is re-executed based on the information of the specific part stored in the storage means when the detection by the detection means is interrupted and then re-executed. 6. The image processing apparatus according to 6. 前記格納手段はHDDを含むことを特徴とする請求項6又は7に記載の画像処理装置。   The image processing apparatus according to claim 6, wherein the storage unit includes an HDD. 前記特定の部分の情報とは、各画像データに含まれる人物の顔に関する情報であることを特徴とする請求項1乃至8のいずれか1項に記載の画像処理装置。   The image processing apparatus according to claim 1, wherein the information on the specific part is information on a person's face included in each image data. 前記複数の画像データを特定するために前記取得された複数の画像データに番号を割当てる第1のナンバリング手段と、
前記検出手段により検出された顔を特定するために前記検出された顔に番号を割当てる第2のナンバリング手段とを有し、
前記決定手段は、前記第1のナンバリング手段により割当てられた画像データの番号と、前記第2のナンバリング手段により割当てられた顔の番号とに基づいて、前記実行順序を決定することを特徴とする請求項9に記載の画像処理装置。
First numbering means for assigning a number to the acquired plurality of image data in order to identify the plurality of image data;
Second numbering means for assigning a number to the detected face in order to identify the face detected by the detection means;
The determining means determines the execution order based on the number of image data assigned by the first numbering means and the face number assigned by the second numbering means. The image processing apparatus according to claim 9.
前記実行手段は、前記実行順序に従って、前記検出された顔に対応する個人の認識を行うことを特徴とする請求項10に記載の画像処理装置。   The image processing apparatus according to claim 10, wherein the execution unit recognizes an individual corresponding to the detected face according to the execution order. 前記複数の画像データそれぞれの特定の部分の情報をマルチスレッド処理で検出する検出処理が再度された場合、前回の検出処理で検出された前記複数の画像データそれぞれの特定の部分の情報の実行順序と、再度の検出処理で検出された前記複数の画像データそれぞれの特定の部分の情報の実行順序は同じであることを特徴とする請求項1乃至11のいずれか1項に記載の画像処理装置。   When detection processing for detecting information on a specific portion of each of the plurality of image data is performed again by multi-thread processing, the execution order of information on the specific portion of each of the plurality of image data detected in the previous detection processing is performed 12. The image processing apparatus according to claim 1, wherein the execution order of information of specific portions of each of the plurality of image data detected by the second detection process is the same. . コンピュータを請求項1乃至12のいずれか1項に記載の画像処理装置の各手段として機能させるプログラム。   A program for causing a computer to function as each unit of the image processing apparatus according to any one of claims 1 to 12. 複数の画像データをレイアウトする画像処理装置における画像処理方法であって、
複数の画像データを取得する取得工程と、
前記取得された複数の画像データそれぞれの特定の部分の情報をマルチスレッド処理で検出する検出工程と、
前記検出された前記複数の画像データそれぞれの特定の部分の情報をソートすることで得られたソート結果に基づいて、前記複数の画像データそれぞれの特定の部分の情報に対する、前記特定の部分の情報を用いる特定の処理の実行順序を決定する決定工程と、
前記決定された実行順序に従って、前記特定の処理を実行する実行工程と、
前記実行工程において実行された前記特定の処理の結果に基づいて前記複数の画像データをレイアウトするレイアウト工程とを有することを特徴とする画像処理方法。
An image processing method in an image processing apparatus for laying out a plurality of image data,
An acquisition step of acquiring a plurality of image data;
A detection step of detecting information of a specific portion of each of the plurality of acquired image data by multi-thread processing;
The information on the specific part with respect to the information on the specific part of each of the plurality of image data based on the sorting result obtained by sorting the information on the specific part of each of the detected plurality of image data. A determination step for determining the execution order of a specific process using
An execution step of executing the specific process according to the determined execution order;
A layout step of laying out the plurality of image data based on a result of the specific processing executed in the execution step.
JP2015255237A 2015-12-25 2015-12-25 Image processing apparatus, program, and image processing method Active JP6685129B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2015255237A JP6685129B2 (en) 2015-12-25 2015-12-25 Image processing apparatus, program, and image processing method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2015255237A JP6685129B2 (en) 2015-12-25 2015-12-25 Image processing apparatus, program, and image processing method

Publications (2)

Publication Number Publication Date
JP2017117405A true JP2017117405A (en) 2017-06-29
JP6685129B2 JP6685129B2 (en) 2020-04-22

Family

ID=59234511

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2015255237A Active JP6685129B2 (en) 2015-12-25 2015-12-25 Image processing apparatus, program, and image processing method

Country Status (1)

Country Link
JP (1) JP6685129B2 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2019016004A (en) * 2017-07-03 2019-01-31 キヤノン株式会社 Information processing apparatus, control method of information processing apparatus and program

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003111009A (en) * 2001-09-28 2003-04-11 Fuji Photo Film Co Ltd Electronic album editing device
JP2009246888A (en) * 2008-03-31 2009-10-22 Brother Ind Ltd Image processor
JP2011034477A (en) * 2009-08-05 2011-02-17 Seiko Epson Corp Layout device and layout method
JP2012129933A (en) * 2010-12-17 2012-07-05 Casio Comput Co Ltd Imaging apparatus and program
JP2014044606A (en) * 2012-08-28 2014-03-13 Canon Inc Face recognition device
JP2014075777A (en) * 2012-09-14 2014-04-24 Fujifilm Corp Composite image generation system, image processor and image processing method
JP2015011557A (en) * 2013-06-28 2015-01-19 キヤノン株式会社 Information processing device, information processing method and program

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003111009A (en) * 2001-09-28 2003-04-11 Fuji Photo Film Co Ltd Electronic album editing device
JP2009246888A (en) * 2008-03-31 2009-10-22 Brother Ind Ltd Image processor
JP2011034477A (en) * 2009-08-05 2011-02-17 Seiko Epson Corp Layout device and layout method
JP2012129933A (en) * 2010-12-17 2012-07-05 Casio Comput Co Ltd Imaging apparatus and program
JP2014044606A (en) * 2012-08-28 2014-03-13 Canon Inc Face recognition device
JP2014075777A (en) * 2012-09-14 2014-04-24 Fujifilm Corp Composite image generation system, image processor and image processing method
JP2015011557A (en) * 2013-06-28 2015-01-19 キヤノン株式会社 Information processing device, information processing method and program

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
森岡澄夫: ""ラズパイ式走るリモート探査カメラ"", INTERFACE, vol. 第42巻, 第1号, JPN6019049849, 26 November 2015 (2015-11-26), JP, pages 131 - 140, ISSN: 0004223209 *

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2019016004A (en) * 2017-07-03 2019-01-31 キヤノン株式会社 Information processing apparatus, control method of information processing apparatus and program

Also Published As

Publication number Publication date
JP6685129B2 (en) 2020-04-22

Similar Documents

Publication Publication Date Title
JP6902860B2 (en) Image processing equipment, image processing methods, and programs
CN108230262B (en) Image processing method, image processing apparatus, and storage medium
JP6525862B2 (en) Image processing apparatus, image processing method and program
JP6938422B2 (en) Image processing equipment, image processing methods, and programs
CN108230425B (en) Image processing method, image processing apparatus, and storage medium
JP6494504B2 (en) Information processing apparatus, control method, and program
CN108377351B (en) Image processing apparatus and image processing method for laying out images on template
JP6532398B2 (en) Image processing apparatus, image processing method and program
JP7076974B2 (en) Image processing equipment, control methods and programs
CN106454064A (en) Image processing apparatus, and image processing method
US20200279423A1 (en) Apparatus, method and medium
JP6080409B2 (en) Information processing apparatus, information processing method, and program
JP7336211B2 (en) Image processing device, control method, and program
JP7336209B2 (en) Image processing device, control method, and program
EP3128733A1 (en) Information processing method, information processing apparatus, and program
JP6685129B2 (en) Image processing apparatus, program, and image processing method
EP3128461B1 (en) Image processing apparatus, image processing method, and program
US11509777B2 (en) Image processing apparatus, image processing method, and storage medium
US20210287413A1 (en) Storage medium, image processing method, and image processing apparatus
JP7336212B2 (en) Image processing device, control method, and program
JP7336210B2 (en) Image processing device, control method, and program
US11887214B2 (en) Storage medium storing program for generating album data, image processing method for generating album data, and image processing apparatus for generating album data

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20181126

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20191209

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20191223

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20200219

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20200331

R151 Written notification of patent or utility model registration

Ref document number: 6685129

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151