Deprecated: The each() function is deprecated. This message will be suppressed on further calls in /home/zhenxiangba/zhenxiangba.com/public_html/phproxy-improved-master/index.php on line 456
JP6685129B2 - Image processing apparatus, program, and image processing method - Google Patents
[go: Go Back, main page]

JP6685129B2 - Image processing apparatus, program, and image processing method - Google Patents

Image processing apparatus, program, and image processing method Download PDF

Info

Publication number
JP6685129B2
JP6685129B2 JP2015255237A JP2015255237A JP6685129B2 JP 6685129 B2 JP6685129 B2 JP 6685129B2 JP 2015255237 A JP2015255237 A JP 2015255237A JP 2015255237 A JP2015255237 A JP 2015255237A JP 6685129 B2 JP6685129 B2 JP 6685129B2
Authority
JP
Japan
Prior art keywords
image data
image
face
information
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.)
Active
Application number
JP2015255237A
Other languages
Japanese (ja)
Other versions
JP2017117405A (en
Inventor
慶範 溝口
慶範 溝口
後藤 文孝
文孝 後藤
寛康 國枝
寛康 國枝
正明 大林
正明 大林
真耶 黒川
真耶 黒川
加藤 真夫
真夫 加藤
池田 徹
徹 池田
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Canon Inc
Original Assignee
Canon Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Canon Inc filed Critical Canon Inc
Priority to 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

Landscapes

  • Collating Specific Patterns (AREA)
  • Processing Or Creating Images (AREA)

Description

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

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

選択された画像が人物を含む画像であった場合、その画像には重要な人物が含まれている方が好ましい。多くのユーザは、たとえ人物の構図や背景が同じであっても、「通行人がたまたま写り込んだ写真」よりも「自分が写った記念写真」を使ってアルバムを作成することを望む可能性が高い。このような判断を自動で行うのに必要な技術として個人認識技術がある。   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 souvenir picture of themselves" rather than "a picture of a passerby by chance," even if the composition and background of the person are the same. Is high. There is a personal recognition technique as a technique necessary for automatically making such a judgment.

例えば、特許文献1では辞書を新規に作成し、検出した顔情報に順次照合処理と登録処理を行う構成を開示している。このように辞書を新規に作成することで、各ユーザに最適な辞書を形成することが特許文献1には記載されている。   For example, Patent Document 1 discloses a configuration in which a dictionary is newly created and matching processing and registration processing are sequentially performed on the detected face information. Patent Document 1 describes that a dictionary that is optimal for each user is formed by newly creating a 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, there are cases where the “reproducibility” of the personal recognition result cannot be maintained. For example, when face detection is performed by multithreads, 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 running in only one thread, the personal recognition result changes if the input order of the face information input to the one thread varies.

個人認識結果が変わることは、自動レイアウト結果が変わってしまうことに繋がる。ユーザにとって、同じ画像を何度も用いてアルバム作成をする場合、その都度レイアウト結果の異なるアルバムが作成されることは好ましくない。   A change in the personal recognition result leads to a change in the automatic layout result. When a user creates an album using the same image many times, it is not preferable that an album with a different layout result is created 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 that can realize 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 configurations.

即ち、複数の画像データを処理する画像処理装置であって、複数の画像データを取得する取得手段と、前記取得手段により取得された複数の画像データそれぞれのの部分の情報をマルチスレッド処理で検出する検出手段と、前記検出手段により検出された前記複数の画像データそれぞれのの部分の情報をソートすることで得られたソート結果に基づいて、前記複数の画像データそれぞれのの部分の情報に対する認識処理の実行順序を決定する決定手段と、前記決定手段により決定された実行順序に従って、前記検出された顔の部分に対する前記認識処理を実行する実行手段と有することを特徴とする。 That is, in an image processing apparatus that processes a plurality of image data, an acquisition unit that acquires a plurality of image data and information of a face portion of each of the plurality of image data acquired by the acquisition unit are processed by multithread processing. a detecting means for detecting that, on the basis of being the sort result obtained by sorting the information of the detected portion of the plurality of image data each face by said detecting means, the portion of the plurality of image data each face determining means for determining the order of execution of recognition processing for information, in accordance with the execution order determined by said determining means, and having an execution unit configured to execute the recognition processing for the portion of the detected face.

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

さらに本発明を他の側面から見れば、複数の画像データを処理する画像処理装置における画像処理方法であって、複数の画像データを取得する取得工程と、前記取得された複数の画像データそれぞれのの部分の情報をマルチスレッド処理で検出する検出工程と、前記検出された前記複数の画像データそれぞれのの部分の情報をソートすることで得られたソート結果に基づいて、前記複数の画像データそれぞれのの部分の情報に対する認識処理の実行順序を決定する決定工程と、前記決定された実行順序に従って、前記検出された顔の部分に対する前記認識処理を実行する実行工程と有することを特徴とする画像処理方法を備える。 Looking further present invention from another aspect, there is provided an image processing method in an image processing apparatus for processing a plurality of image data, an acquisition step of acquiring a plurality of image data, the acquired plurality of image data for each A detection step of detecting face part information by multithread processing, and a plurality of images based on a sorting result obtained by sorting the face part information of each of the detected plurality of image data a determining step of determining the order of execution of recognition processing for the data information portion of each face, in accordance with the execution order in which the determined, to have an execution step of executing the recognition processing for the portion of the detected face A characteristic image processing method is provided.

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

画像処理装置のハードウェアの構成を示すブロック図である。It is a block diagram which shows the hardware constitutions of an image processing apparatus. アルバム作成アプリケーションのソフトウェア構成を示すブロック図である。It is a block diagram showing a software configuration of an album creating application. アルバム作成アプリケーションが提供する表示画面を示す図である。It is a figure which shows the display screen which an album production 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 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の詳細な構成を示すブロック図である。4 is a block diagram showing a detailed configuration of a person information analysis unit 205. FIG. データテーブルの例を示す図である。It is a figure which shows the example of a data table. 実施形態1に従う人物情報解析部が実行する顔検出処理を示すフローチャートである。6 is a flowchart showing face detection processing executed by a person information analysis unit according to the first embodiment. 実施形態1に従う人物情報解析部が実行する個人認識処理を示すフローチャートである。6 is a flowchart showing a personal recognition process executed by a person information analysis unit according to the first embodiment. 画像得点部の詳細な構成を示すブロック図である。It is a block diagram which shows the detailed structure of an image scoring part. 画像得点部が実行するシーン分類後の得点化処理を示すフローチャートである。It is a flowchart which shows the scoring process after the scene classification which an image scoring part performs. 選択されたテンプレートを示す図である。It is a figure which shows the selected template. 実施形態2に従うアルバム作成アプリケーションの自動レイアウト処理部が実行する処理を示すフローチャートである。9 is a flowchart showing processing executed by an automatic layout processing unit of the album creating application according to the second embodiment. 実施形態2に従うページ単位での処理をマルチスレッドで実行するフローチャートである。9 is a flowchart for executing a process in page units according to the second embodiment by multithreading. 見開き9ページのアルバムの例を示す図である。It is a figure which shows the example of a 2-page spread album. 実施形態2に従うアルバム入れ替え処理の詳細を示すフローチャートである。8 is a flowchart showing details of album replacement processing according to the second embodiment. 実施形態3に従う人物情報解析部が実行する顔検出処理を示すローチャートである。9 is a row chart showing face detection processing executed by a person information analysis unit according to the third embodiment. 実施形態3に従う人物情報解析部が実行する個人認識処理を示すフローチャートである。9 is a flowchart showing a personal recognition process executed by a personal information analysis unit according to the third embodiment.

以下添付図面を参照して本発明の実施形態について、さらに具体的かつ詳細に説明する。ただし、この実施形態に記載されている構成要素の相対配置等は、特定の記載がない限りは、この発明の範囲をそれらのみに限定する趣旨のものではない。   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 thereto only 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 figures, but also meaningless. Furthermore, the case where an image, a pattern, a pattern, or the like is widely formed on a recording medium or the medium is processed, regardless of whether or not it is actualized so that it can be visually perceived by humans.

また、「記録媒体」とは、一般的な記録装置で用いられる紙のみならず、広く、布、プラスチック・フィルム、金属板、ガラス、セラミックス、木材、皮革等、インクを受容可能なものも表すものとする。   The term "recording medium" means not only paper used in a general recording apparatus but also a wide range of materials such as cloth, plastic film, metal plate, glass, ceramics, wood, and leather that can accept ink. I shall.

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

上述した課題でも指摘したように、顔辞書と検出した顔情報との照合結果に従って順次顔辞書の内容を更新する場合、個人認識結果の「再現性」を維持できない場合がある。個人認識結果の再現性は、顔辞書の形成過程に大きく依存する。照合・登録処理の対象となる情報の入力順番が変わる事で辞書の内容が変化してしまうのはクラスタリングの課題である。   As pointed out in the above-mentioned problem, when the contents of the face dictionary are sequentially updated according to the collation result of the face dictionary and the detected face information, the "reproducibility" of the personal recognition result may not be maintained. The reproducibility of the personal recognition result largely depends on the face dictionary formation process. It is a problem of clustering that the contents of the dictionary change due to the change of the input order of the information to be collated / 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, among the face information A, B, and C, A and C are not similar to each other, and B is similar to A and C to some extent. If the personal recognition processing is executed in the order of the face information A, B, and C, B is collated with the dictionary while A is registered in the dictionary, and it is determined that the face information A and B are similar. On the contrary, if the personal recognition processing is performed in the order of face information C, B, and A, B is collated with the dictionary while C is registered in the dictionary, and it is determined that the face information B and C are similar. . In this way, the face information B can be judged as the same person by either A or C depending on the existing dictionary information. When the face detection operates in a multi-threaded manner, the detection order of the face information is different each time. Therefore, in the configuration of Patent Document 1, the face recognition result of each face information is changed according to the change of the detection order. In this embodiment, the problem is solved and the "reproducibility" of the personal recognition result is improved.

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

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

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

データ通信部108は、有線や無線等のネットワークを介した外部の装置との通信を行う。データ通信部108は、例えば、自動レイアウト機能によりレイアウトされたデータを画像処理装置100と通信可能なプリンタやサーバに送信する。データバス109は、図1の各ブロック間を相互に通信可能に接続する。   The data communication unit 108 communicates with an external device via a wired or wireless network. The data communication unit 108 transmits, for example, the data laid out by the automatic layout function to a printer or a server that can communicate with the image processing apparatus 100. The data bus 109 connects the blocks of 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 icon of the application displayed on the display 105 by the pointing device 107 to start it, as described later.

図2はアルバム作成アプリケーションのソフトウェア構成を示すブロック図である。図2は、特に、自動レイアウト機能を実行する自動レイアウト処理部に関するソフトウェアブロック図を示している。アルバム作成条件指定部201は、ポインティングデバイス107による後述のユーザのUI操作に応じたアルバム作成条件を図2において太い実線の枠で囲んだ自動レイアウト処理部に出力する。   FIG. 2 is a block diagram showing the software configuration of the album creating application. FIG. 2 particularly shows a software block diagram relating to the automatic layout processing unit that executes the automatic layout function. The album creating condition designating unit 201 outputs an album creating condition according to a user's UI operation described later by the pointing device 107 to an 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, from the HDD 104, the image data group designated by the album creation condition designation unit 201. 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 group is sorted in order of shooting date and time and serial numbers are associated with each other. The use of the serial number facilitates the identification of information when processing the designated image data. The image conversion unit 203 converts the image data used for the subsequent processing into a desired number of pixels and color information. In the present embodiment, the number of pixels of 420 pixels on the short side and sRGB color information are converted into analysis image data.

画像解析部204は、解析画像データから後述の特徴量の取得を実行する。人物情報解析部205は、顔検出、個人認識の各処理を実行する。また、画像解析部204は、HDD104から取得した画像データに付随したデータの取得、例えばExif情報から撮影日時の取得も実行する。画像分類部206は、画像データ群に対して撮影日時情報や撮影枚数、検出した顔情報等を用いて、後述のシーン分割やシーン分類を実行する。シーンとは、旅行や日常、結婚式等の撮影シーンのことである。画像得点部208は、レイアウトに適した画像データが高得点になるような得点付けを行う。   The image analysis unit 204 executes acquisition of a characteristic amount described below from the analyzed image data. The person information analysis unit 205 executes face detection and individual recognition processing. The image analysis unit 204 also executes acquisition of data associated with the image data acquired from the HDD 104, for example, acquisition of the shooting date and time from the Exif information. The image classification unit 206 uses the shooting date / time information, the number of shots, detected face information, and the like for the image data group to perform scene division and scene classification described below. A scene is a shooting scene such as a trip, daily life, or wedding. 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 hero information input unit 207 inputs the ID (identification information) of the hero instructed by the album creating condition designation unit 201 to the image score unit 208. The image scoring unit 208 is configured to add a higher score to the image data including the hero ID input from the hero information input unit 207.

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

画像レイアウト部213は、画像データのレイアウトを決定する。テンプレート入力部212は、アルバム作成条件指定部201から指定されたテンプレート情報に応じた複数のテンプレートを画像レイアウト部213に入力する。画像レイアウト部213は、画像選択部211で選択された画像データに適したテンプレートを、テンプレート入力部212から入力された複数のテンプレートから選択し、画像データのレイアウトを決定する。レイアウト情報出力部216は、画像レイアウト部213が決定した画像データのレイアウトに従って、ディスプレイ105に表示する為のレイアウト情報を出力する。レイアウト情報は、例えば、選択されたテンプレートに画像選択部211により選択された画像データをレイアウトしたビットマップデータである。   The image layout unit 213 determines the layout of image data. The template input unit 212 inputs a plurality of templates corresponding to the template information designated by the album creating condition designation 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 the 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 according to 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 executes dodging correction, red-eye correction, and contrast correction. The image correction condition input unit 214 inputs the ON / OFF condition of the image correction designated by the album creating condition designation unit 201 to the image correction unit 215. The image correction unit 215 executes the correction on the image data when the image correction condition is ON, and does not execute the correction when the image correction condition is OFF. The image correction unit 215 executes correction on the image data input from the image conversion unit 203 according to ON / OFF of 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 creating application is installed in the image processing apparatus 100, a start icon is displayed on the top screen (desktop) of the OS (operating system) operating on the image processing apparatus 100. When the user double-clicks the activation icon on the display 105 displayed on the display 105 with the pointing device 107, the album creating application program stored in the HDD 104 is loaded into the ROM 102. When the program of the ROM 102 is read out to the RAM 103 by the CPU 101 and executed, the album creating application is activated.

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

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

表示画面301上のパスボックス302は、アルバム作成の対象となる画像データ群のHDD104中の保存場所(パス)を表示する。フォルダ選択ボタン303は、ユーザからのポインティングデバイス107でのクリック操作により、アルバム作成の対象とする画像データ群を含むフォルダをツリー構成でユーザ選択可能に表示する。ユーザにより選択された画像データ群を含むフォルダパスが、パスボックス302に表示される。   A pass box 302 on the display screen 301 displays the storage location (pass) in the HDD 104 of the image data group for which the album is to be created. The folder selection button 303 displays a folder including a group of image data to be album-created in a tree structure so that the folder can be selected by the user when the user clicks on the pointing device 107. 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 the hero, and a face image of a person is displayed as the icon. A plurality of different face image icons are displayed side by side on the main character designation icon 304, and the user can select by clicking with the pointing device 107. Note that each face image is registered in association with the personal ID. The hero designating icon 304 is used to identify the hero who is the central person from the persons shown in the image represented by the image data to be analyzed. The face image is, for example, previously detected from the image data and registered in the face database in association with the personal ID. The hero designating icon 304 can be automatically set or a face image of a person selected by the user from the face images of the persons registered in the face database, for example.

見開き数ボックス305は、ユーザからのアルバムの見開き数の設定を受け付ける。ユーザは、キーボード106を介して見開き数ボックス305に直接数字を入力するか、ポインティングデバイス107を用いてリストから見開き数ボックス305に数字を入力する。   The spread number box 305 receives the setting of the number of spreads of the album from the user. The user directly inputs a number into the two-page spread box 305 via the keyboard 106 or inputs a number from the list into the two-page spread 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 taste (pop tone, thick tone, etc.) of the template. A plurality of template icons are displayed side by side on the template designation icon 306, and the user can select by clicking with the pointing device 107. A check box 307 accepts an ON / OFF designation of image correction from the user. The checked state is a state where the image correction ON is designated, and the unchecked state is a state where the image correction OFF is designated. Although the UI configuration screen 301 is configured to be able to set ON / OFF collectively for a plurality of correction processes, it 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 the OK button 308, the album creating condition designating unit 201 acquires the contents set on the display screen 301. The album creating condition specifying unit 201 outputs the acquired setting contents to the automatic layout processing unit of the album creating application. At that time, the path entered in the path box 302 is transmitted to the image acquisition unit 202. The personal ID of the hero selected by the hero designation icon 304 is transmitted to the hero information input unit 207. The number of spreads input to the number-of-spreads box 305 is transmitted to the number-of-spreads 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 of the image correction check box 307 is transmitted to the image correction condition input unit 214. The 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 creating application. Note that the flowchart of the present application is realized, for example, by the CPU 101 reading a program stored in the HDD 104 into the ROM 102 or the RAM 103 and executing the program.

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

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

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

S403では、人物情報解析部205は、S401で生成された解析画像データに対して、顔検出を実行する。ここで、顔検出の処理には、公知の方法を用いることができ、例えば、複数用意した弱識別器から強識別器を作成するAdaboostが用いられる。本実施形態では、Adaboostにより作成した強識別器により人物(オブジェクト)の顔画像が検出される。   In S403, the person information analysis unit 205 performs face detection on the analysis image data generated in S401. Here, a known method can be used for the face detection processing, and for example, Adaboost that creates a strong classifier from a plurality of prepared weak classifiers is used. 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 the face image and acquires the upper left coordinate value and the lower right coordinate value of the detected position of the face image. 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 an animal such as a dog or a cat, an object such as a flower, food, a building, a figurine or the like may be used as a detection target instead of the face to create a strong discriminator by Adaboost. Accordingly, 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 step S404, the person information analysis unit 205 performs personal recognition by comparing the face image detected in step S403 with the similarity of the representative face image stored in the face dictionary database for each individual ID. The person information analysis unit 205 sets an ID having a similarity higher than a threshold value and having the highest similarity as an ID of the detected face image. If the highest similarity is less than the threshold value, 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 a face, but also an object such as an animal such as a dog or a cat, a flower, food, a building, or a figurine may be a recognition target instead of the face. For example, when the person information analysis unit 205 targets a dog, it is possible to compare the similarities so as to identify the dog breed.

この実施形態の特徴的な構成の1つである人物情報解析部205の詳細な構成について説明する。人物情報解析部205では、図4のS403における顔検出処理とS404における個人認識処理とを実行する。   The 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 processing in S403 and the individual recognition processing in S404 of FIG.

図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 of FIG. 11 are implemented by multithread and 1404 to 1406 are implemented by single thread. Further, in the present application, even if the detection order of the face information is different each time due to the face detection being performed by the multithread, by executing 1403 to 1405, the "reproducibility" of the personal recognition result is obtained. It becomes possible to improve.

画像情報取得部1401はユーザから入力された画像データの情報を取得する。また、画像情報取得部1401は画像解析部204で取得した画像解析情報も取得することができる。画像解析部204で取得した情報を人物情報解析部205で利用することで、部分的な色情報取得などの双方で実施する処理の重複を取り除き高速化を図ることができる。   The image information acquisition unit 1401 acquires information on image data input by the 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 personal information analysis unit 205, it is possible to eliminate the duplication of the processing executed in both of the partial color information acquisition and the like, and to speed up the processing.

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

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

例えば、画像に写る顔数(画像データに含まれる顔数)が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 = When it is 90, 1 is assigned to face A, 2 is assigned to face B, and 0 is assigned to face C. It should be noted that the higher the face detection reliability value, the more the face is judged to be more likely. By performing the sorting based on the face detection reliability, it is possible to improve the dictionary accuracy of the personal recognition process in S404 described later. In addition, a threshold value may be set for the detection reliability after performing the sort. For example, when the face detection threshold is set to 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 during face detection in S403, it is possible not to number detected faces depending on the face orientation. For example, when face A: front face, face B: front face, face C: side face, and only the faces facing the front are targeted for numbering, the number of faces detected after the execution of detection was three, but the face direction is used. The total number of faces becomes 2 due to the filtering process.

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

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

図12(A)に示すように、後述する図12のS1205、S1206の処理が終了すると画像シリアル番号と顔シリアル番号とは紐付けて管理される。データテーブルは情報管理部1404が取得した顔関連情報の順番に記憶することになるが、システム構成やCPU101の性能によって、画像シリアル番号が昇順で記憶されない場合もある。その場合、データテーブルには欠番について記憶しても良いし、欠番は書き飛ばしても良い。本実施形態では、画像データから顔情報が検出されなかったときは欠番を記載(画像シリアル番号は記載し、顔シリアル番号は「-」を記憶)する。また、本実施形態では、画像データから顔が複数検出されたが、顔の向きが正面でない等の要因で、顔検出信頼度ソートが行われた後に取り除かれた顔情報に関しては欠番の書き飛ばしを行う。データテーブルに格納された情報は各顔情報を一意に特定することができる。   As shown in FIG. 12A, when the processes of S1205 and S1206 of FIG. 12 described later are completed, the image serial number and the face serial number are linked and managed. The data table is stored in the order of the face-related information acquired by the information management unit 1404, but the image serial numbers may not be stored in ascending order depending on the system configuration and the performance of the CPU 101. In that case, the missing number may be stored in the data table, or the missing number may be skipped. In this embodiment, when the face information is not detected from the image data, the missing number is described (the image serial number is described and the face serial number is “-” stored). Further, in the present embodiment, a plurality of faces are detected from the image data, but due to factors such as the face orientation not being in front, the face information removed after the face detection reliability sorting is skipped. I do. The 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 face-related information managed by the information management unit 1404, and performs a sorting process using the serial number of the face-related information. Note that this sort processing refers to both sort processing using an image serial number and sort processing using a face serial number. When the face-related information is stored in the ROM 102 and the RAM 103, necessary information is read from the ROM 102 and the RAM 103 and sorted. Similarly, when stored in the HDD 104, necessary information is read from the HDD 104 and sorted. This necessary information may be all the information in the face-related information, or may be only the data table (FIG. 12A) that manages the face group.

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

個人認識情報取得部1406は、順序制御部1405がソートした顔関連情報の順番に個人認識処理を実行する。個人認識処理は大別して「類似性算出処理」と「辞書登録処理」がある。個人認識情報取得部1406は、まず新規の顔辞書を作成する。顔辞書には、登録された顔情報の一部もしくは全てが記録されることになる。つまり、マルチスレッドで顔検出が実行されることにより顔情報の検出順番がその都度異なってしまう場合であっても、ソートされた顔関連情報の順番で個人認識処理が実行されるため、個人認識結果の「再現性」を実現できる。   The personal recognition information acquisition unit 1406 executes the personal recognition processing in the order of the face-related information sorted by the order control unit 1405. Individual 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. 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 is different each time due to the face detection being performed in multithread, the personal recognition processing is executed in the order of the sorted face-related information. "Reproducibility" of 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 in the personal recognition execution order “0” in FIG. 12B corresponds to that. At registration, the face-related information is associated with the personal ID. In the present embodiment, if there is no face registered in the dictionary, personal ID = 0 is given to newly registered face information. In this embodiment, the dictionary is newly 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 for the second person with the face dictionary.

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

以上、人物情報解析部205の詳細について説明したが、この構成を用いてS403における顔検出やS404における個人認識の処理を実行することで、個人認識処理を実行する順番や顔辞書の登録順番の再現性が高まる。マルチスレッドで顔検出処理が実行されることで、たとえ同じ画像データ群を扱う場合であっても、情報管理部1404に入力される顔関連情報の順序が顔検出処理のたびにバラバラとなるおそれがある。しかし、順序制御部1405がソート処理を実行することで、いつでも決まった個人認識実行順番を各顔関連情報に与えることができる。よって、情報管理部1404に入力される顔関連情報の順番を統一することが可能となる。   The details of the personal information analysis unit 205 have been described above. By executing the face detection processing in S403 and the personal recognition processing in S404 using this configuration, the order in which the personal recognition processing is performed and the face dictionary registration order is changed. Reproducibility is enhanced. Since the face detection processing is executed in multithreads, the order of the 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, the order control unit 1405 can perform a sort process to give a fixed personal recognition execution order to each face-related information at any time. 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 the face detection processing executed by the person information analysis unit 205.

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

なお、この処理にあたり、後述する処理画像枚数を示すパラメータnが“0”に初期化される。さらに、各画像データの処理検出顔数を示すパラメータmも“0”に初期化される。   In this process, a parameter n indicating the number of processed images, which will be described later, is initialized to "0". Further, the parameter m indicating the number of detected faces for 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 the face area in the image data from the image data information and the image analysis information acquired by the image information acquisition unit 1401. Further, in the present embodiment, the sorting process is executed on the plurality of pieces of 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 to be processed out of 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 the detected face information with an image serial number. In the present embodiment, each image data is associated with face information by using a serial number assigned in the order of shooting date and time of the image data 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, as the parameter n in S1501, a value newly assigned to each core (that is, a value that does not match the image serial number) is applied.

S1506では、顔情報ナンバリング部1403は、検出した顔情報に対して、顔シリアル番号を対応付ける。本実施形態では、S1503で取得した複数の顔情報に対しソート処理を実行するため顔信頼度が高い顔情報から昇順で顔シリアル番号と紐付けられる。   In step S1506, the face information numbering unit 1403 associates the detected face information with a face serial number. 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 the high face reliability.

S1507では、情報管理部1404は、S1503で取得した顔情報と、S1505で取得した各顔情報の画像シリアル番号、S1506で取得した各顔情報の顔シリアル番号を含む顔関連情報を保管する。本実施形態では、顔関連情報はRAM103に保管される。RAM103の記憶可能領域が少なくなった場合、その保管先をHDD104もしくはウェブサーバ上に移して、保管する。また、保管されている顔関連情報の対応表となるデータテーブルもRAM103に保管する。   In S1507, the information management unit 1404 stores the face information acquired in S1503, the image serial number of each face information acquired in S1505, and the face-related information including the face serial number of each face information acquired in S1506. In this embodiment, the face-related information is stored in the RAM 103. When the storable area of the RAM 103 becomes small, the storage destination is moved to the HDD 104 or the web server and stored. In addition, a data table that is a correspondence table of the face-related information that is stored 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. Note that FIG. 12A before sorting is described as the update target in the present embodiment, 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 process for the number of detected faces (M) is completed, that is, whether m = M, and if m ≠ M, the process returns to S1504, and if m = M, the process is performed. Advances to S1507b. Although not shown, when no face is detected from the image data, that is, when M = 0, the processes of S1504 to S1507 are not executed and the process proceeds 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 process regarding the image data of the assigned image data number (N) is completed, that is, whether n = N, and if n ≠ N, the process returns to S1501 and n = If N, the process ends.

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

ロックによってスレッド間のアクセス衝突は発生しないが、スレッド同士でロックのタイミングが揃った場合にはデッドロックが生じる。デッドロックを防止するにはロック実行の順序を制御する制御層を導入すれば良い。スレッド同士でロックのタイミングが揃ってしまった場合でも、制御層が実行順序を整列するため、デッドロックは発生しない。また、各コアが図13の処理を実行することで、結果として、図12(A)のデータテーブルが生成される。   Locks do not cause access collisions between threads, but deadlocks occur when threads are locked at the same timing. A deadlock can be prevented by introducing a control layer that controls the order of lock execution. Even if the locking timings of the threads are the same, the control layer arranges the execution order, so deadlock does not occur. Further, each core executes the processing 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 a personal recognition process executed by the personal information analysis unit 205. In the present embodiment, the face detection and the individual recognition process that operate in multithread are executed in parallel. The individual recognition process itself is not executed by multiple cores. FIG. 14 shows personal recognition processing 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 or not 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, unless there is update information in the data table and face-related information group managed by the information management unit 1404, the process proceeds to S1509 and waits for the process. In this embodiment, the standby condition is set to 10 seconds, and after 10 seconds have elapsed, the standby is ended and the process returns to S1508. The waiting end condition may be a designated number of seconds, or the waiting may be ended by using the data update information stored in the RAM 103 or the HDD 104 or on the web server as a trigger. On the other hand, if the order control unit 1405 determines in step S1508 that the data table and the face-related information group have been updated, the process proceeds to step S1510.

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

S1512では、順序制御部1405は、データテーブルに個人認識実行順番の情報を追加する。追加した個人認識実行順番は、S1513においてS1514の個人認識を実行するかどうかを判断するのに使用される。例えば、S1509で更新が確認されたデータテーブルの状態が図12(A)に示した状態であったとする。S1510とS1511のソート処理を実行後、S1512では個人認識実行順番を追加して、図12(B)に示したようなデータテーブルが取得できる。このように個人認識実行順番は画像シリアル番号の昇順、および顔シリアル番号のソート結果に従って決定される。   In S1512, the order control unit 1405 adds information on the personal recognition execution order 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, assume 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, the personal recognition execution order is added in S1512, and the data table as shown in FIG. 12B can be acquired. In this way, 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)に示すように個人認識実行順番の対象とみなさない。   Note that, in the example shown in FIG. 12A, the face-related information of the image serial number 3 is a missing number, and thus is not regarded as the target of the personal recognition execution order as shown in FIG. 12B.

ここで説明のために、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 the sort process in 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 the multi-thread processing, even if the image data is evenly distributed to each core, there is a difference in the processing end time of each core.

図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, the core A has serial numbers 0, 3, 6, 9 ..., the core B has serial numbers 1, 4, 7, 10 ..., and the core C has serial numbers 2, 5, 8 ,. It is assumed that the image data of 11 ... Is distributed and the face detection processing flow is executed in each core. The cores A, B, and C do not end the face detection processing on the image data with serial numbers 0, 1, and 2 at the same time, and the execution end timing depends on the difference in contents 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, the core B corresponds to the image serial number 7 before the face detection result of the image data having the image serial numbers 6 and 8 is obtained. Face information of the created 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 individual recognition execution order addition process for the data table shown in FIG. 12C. 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 the present 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 in the image data having the image serial number 6 is unknown. Therefore, in S1512, the face-related information acquired from the image data having the image serial number 7 ends with the individual 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 S1513, the order control unit 1405 determines whether there is face-related information for which the personal recognition information acquisition unit 1406 should perform personal recognition based on the personal recognition execution order. This determination is specifically realized by determining whether or not there is a 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 be personally recognized in the personal recognition execution order. That is, it is determined that there is face-related information for which personal recognition should be performed. On the other hand, in the state shown in FIG. 12D, the image serial numbers 1 to 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 perform the personal recognition in the personal recognition execution order. After that, for example, even if the face detection of the image serial number 8 is completed, the face detection of the image serial number 6 is unprocessed, and there is a gap in the image serial number. Therefore, until the face detection of the image serial number 6 is processed, the order control unit 1405 determines that there is no face-related information for which personal recognition should be performed (S1513-No). The reproducibility of the execution order of the individual recognition is enhanced by the definition of the order in S1512 and the execution propriety determination in S1513. If it is determined in S1513 that there is no good face information for which personal recognition is performed, the process returns to S1509 and waits for information update.

S1514では、個人認識情報取得部1406は、実行可能な顔関連情報に対して個人認識を実行する。S1514では、顔辞書に対して実行可能な顔関連情報との類似度算出を行う。ここで、その類似度が閾値を超えていれば、類似していた登録済み個人IDと同一の個人IDを顔関連情報に追加し、その類似度が閾値を下回っていた場合は、辞書には未登録である新規の個人IDを顔関連情報に追加する。そして、顔関連情報は、その情報の一部もしくは全てを顔辞書に保存し、顔辞書を更新する。   In step S1514, the personal recognition information acquisition unit 1406 performs personal recognition on the executable face-related information. In step S1514, the degree of 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 is similar is added to the face-related information. If the similarity is below the threshold, the dictionary does not A new unregistered personal ID is added to the face-related information. Then, as for face-related information, a 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 if the face detection processing is performed by multithreads, the order of the face-related information for which the personal recognition processing is executed in S1514 is the same for 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 face dictionary, the personal ID associated with each face-related information, and finally the album creation result is improved. In other words, when face detection of each of a plurality of image data is performed multiple times by multi-thread processing, the execution order of personal recognition processing for the face information detected by the previous detection processing and the face information detected by the detection processing again. The execution order of the personal recognition processing for is the same.

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

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

S405では、アルバム作成条件指定部201で指定されたHDD104の画像データ群の全画像データに対してS401〜S404の処理が終了したか否かが判定される。ここで、終了していないと判定された場合、S401からの処理を繰り返す。終了していると判定された場合、処理はS406に進む。   In S405, it is determined whether or not the processes of S401 to S404 have been completed for all the image data of the image data group of the HDD 104 designated by the album creating condition designating unit 201. Here, if it is determined that the processing has not ended, the processing from S401 is repeated. If it is determined that the processing has ended, the processing 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 dividing and managing the image data group designated by the condition designation unit 201 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 non-photographed day between the image data, that portion is used as a reference for division. The division may be performed according to other criteria. For example, in the case where the division is performed even when the shooting days are continuous, if the time difference is 16 hours or more, the division is performed using that portion as a reference. 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 of each day is divided into one image group. If the time difference from the first shooting to the last shooting on each day is 4 hours or more and the number of consecutive shootings on each day is less than 50, the image data group for each day is regarded as one image group. Will be divided. On the other hand, if the number is 50 or more, the division is not performed. FIG. 6A is a diagram showing an example of the result of scene division of the 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, the arrows indicate the boundaries of the groups. It should be noted that the threshold value for the difference in image capturing date and time and the threshold value for the number of captured image data used in the above description of the scene division method are examples, and the present invention is not limited to these values.

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

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

例えば、アルバム作成条件指定部201は、不図示のユーザインタフェース画面上で、ユーザが旅行シーンであると判断した複数の画像データの指定を受け付ける。そして、画像解析部204は、それらの画像データについて、特徴量を取得する。ここで、取得される特徴量は、例えば、撮影期間、撮影枚数、撮影人数である。撮影期間は、複数の画像データの最初の撮影から最後の撮影までの時間差である。撮影枚数は、複数の画像データの枚数である。撮影人数は、複数の画像データにおいて撮影されている顔の数である。その結果、ユーザが旅行シーンであると判断した複数の画像データから成る1画像データ群について、撮影期間、撮影枚数、撮影人数の特徴量が取得される。なお、特徴量として、これらの1つのみが用いられても良いし、他の特徴量が用いられても良い。   For example, the album creating condition designating unit 201 receives 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 the feature amount 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 pieces of image data. The number of photographed persons is the number of faces photographed in a plurality of image data. As a result, the feature amount of the shooting period, the number of shots, and the number of shots is acquired for one image data group including 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 amount, or another feature amount may be used.

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

図7に示した各平均値と標準偏差が、シーンの複数種類のそれぞれに対応する画像データを選択する際の選択基準(画像データの評価基準)に反映される。その詳細は後述する。   The respective average values and standard deviations 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. The details 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 creating application is started, the image classification unit 206 determines the characteristics of the shooting period, the number of shots, and the number of shots for each group in which the image data group designated by the user in the pass box 302 is divided into scenes in S406. Calculate the amount score. The image classification unit 206 calculates the shooting period of each group, the number of shots, the score of the number of shots, and the average score thereof by using the average value and standard deviation for each scene shown in FIG. 7 and equations (1) and (2). Calculated from That is,
Score = 50− | 10 × (average value−feature amount) / standard deviation | ... (1)
Average score = (score of shooting period + score of number of shots + score of number of shoots) / number of feature amount items
…… (2)
Is.

算出の結果、各分割分の画像データに対して、旅行、日常、セレモニーのシーン毎の平均得点が算出される。そして、画像分類部206は、各グループの画像データを、上記のうち最高得点に対応するシーンに分類する。   As a result of the calculation, an average score for each scene of travel, daily life, and ceremony is calculated for each divided image data. Then, the image classification unit 206 classifies the image data of each group into the 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 are selection criteria (evaluation criteria for image data (equation) that is used when selecting image data corresponding to each of a plurality of types of scenes. This is reflected in (1), so that the image data can be selected according to the 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を付与して管理する。   Here, when the scenes have the same score, the scenes are classified according to a predetermined priority order of the scenes. For example, in the present embodiment, the priority order of daily life> ceremony> travel is set, and the priority of everyday scene is the highest. For example, in the image data group 5 after the scene division in 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 into travel scenes. The image classification unit 206 manages the classified scenes by assigning scene IDs so that the scenes can be identified.

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

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

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

手動設定は、一度アルバム作成が終了した後に、ユーザ自身が編集画面で設定できる。編集画面でのユーザの手間を簡易化するため、個人IDを代表する顔画像をユーザに提示する等の工夫が行える。この時、個人IDを代表する顔画像を決定するために画像シリアル番号や顔シリアル番号を用いても良い。例えば、顔シリアル番号は顔検出信頼度から設定している。顔検出信頼度の高い顔を代表する顔画像とすれば、ブレボケの少ない顔画像を編集画面に表示できる。   The manual setting can be set by the user on the edit screen after the album creation is completed once. In order to simplify the trouble of the user on the editing screen, it is possible to make a device such as presenting the face image representing the individual ID to the user. At this time, the image serial number or the face serial number may be used to determine the face image representing the individual 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 blurring 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 executes scoring (evaluation of image data). The scoring is to give a score evaluated from the viewpoint described later to each image data (scoring), and is referred to when selecting the image data of the layout target used for the layout described later. FIG. 10 is a diagram showing a template group used for layout of image data. Each of the plurality of templates included in the template group corresponds to each spread. Template 1001 is a single template, slot 1002 indicates a main slot, and slots 1003 and 1004 indicate subslots. The main slot 1002 is a main slot (frame for laying out image data) in the template 1001 and has a larger size than the sub-slots 1003 and 1004. The image scoring unit 208 gives both a main slot score and a sub slot score to each image data.

図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. Generally, the viewpoints of photography that are considered preferable are different in travel scenes, daily scenes, and ceremony scenes. The most preferred composition in the travel scene is, for example, a photograph in which a symbolic scenery at a destination and a person who plays a leading role in the travel are shown together. Also, in the ceremony scene, for example, a photograph of a composition in which the bride and groom are close together (a photograph in which the two are close) is preferred.

また、各シーンにおいて好ましいと考えられる写真は1種類であるとは限らない。旅行シーンは上述の人物及び風景写真以外にも、顔がアップや横顔である写真、旅行に同伴した人物や出会った人との記念写真や、旅先での食べ物や建物、風景の写真なども好ましいと考えられる場合がある。   In addition, the number of photographs considered to be preferable in each scene is not limited to one. In addition to the above-mentioned portraits of people and landscapes, it is also preferable to take photographs of people with close-ups or profiles, commemorative photographs of people accompanying or on the trip, foods, buildings, and landscapes at the destination. May be considered.

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

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

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

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

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

画像データの評価基準である式(3)では、図7に示したシーンの複数種類のそれぞれに対応する各平均値と標準偏差に従って、各画像データに対応するシーンの種類に対して求められた平均値、標準偏差が適用される。そのため、シーンの種類に対して適切な選択基準(画像データの評価基準)により画像データを選択することができる。   In the expression (3) which is the evaluation criterion of the image data, it is obtained for the type of the scene corresponding to each image data according to each average value and standard deviation corresponding to each of the plurality of types of scenes shown in FIG. Mean value and standard deviation are applied. Therefore, the image data can be selected according to the selection criterion (image data evaluation criterion) 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, it is preferable that the image data used for the album be in focus, so that a predetermined score may be added to the image data of the image ID having the focus feature amount ◯ shown in FIG. good. FIG. 8B shows an example of the scoring result obtained by the above-mentioned scoring, in which the main slot and the sub-slot are scored for each image ID.

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

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

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

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

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

なお、画像解析情報格納部1104で管理される画像解析情報は、上述の情報に限定されるものではない。例えば、色解析情報取得部1102と人物関連解析情報取得部1103で取得した情報だけでない副次的情報が管理されても良い。また、画像解析情報格納部1104は、色解析情報取得部1102または人物関連解析情報取得部1103の一方のみを使用する場合もある。   The image analysis information managed by the image analysis information storage unit 1104 is not limited to the above information. For example, subsidiary 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 each type of shooting scene and a scene classification method for determining 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 the 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 the 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 scene classification process in the scene determination unit 1106 determines the shooting scene of each image data.

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

得点化部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. Each scoring unit scores (scoring) 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, 1110 corresponds to the score for the main slot 1002 and the scores for the sub-slots 1003 and 1004. Although the number of scoring units is three in FIG. 15, 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 performed 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 having the above-described configuration, it is possible to perform scoring on the scoring axis according to the shooting scene of the image data. Since the scoring axis and the method of determining the parameters are not uniform among the shooting scenes, it is possible to acquire the image data of the optimal composition and the number of people composition for each shooting scene or type of slot.
FIG. 16 is a flowchart showing the scoring process after scene classification performed 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 the image analysis information from the color analysis information acquisition unit 1102 and the person-related analysis information acquisition unit 1103. In step S1202, 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 a main slot or a sub slot. In S1204, the parameter setting unit 1107 sets the parameters required for each scoring axis in the shooting scene of the set image data. In S1205, the scoring units 1108, 1109, and 1110 score points according to the set parameters. In the present embodiment, the scoring is calculated by the above 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 positions / face size for the main slot described above. As the judgment threshold value and the judgment weight information, n pieces corresponding to each parameter on each scoring axis e (i, j) are secured. Here, i corresponds to the ID of the shooting scene of the image data set in S1202. Further, j corresponds to a plurality of scoring axes in the shooting scene.

ここで、判定閾値と判定重み情報について説明する。   Here, the judgment threshold value and the judgment 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 S1201 is compared with the determination threshold Th {n, e (i, j)}. Here, if the value of the image analysis information exceeds the judgment threshold value Th {n, e (i, j)}, the value W {n, e (i, j)} of the judgment weight information in Expression (4) is used. It is reflected in the corresponding parameter (for example, the score of the number of faces). The final score is a value in which the determination weight information is reflected in each parameter of Expression (4).

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

本実施形態では、図8(B)に示すようなメインスロットについての得点、サブスロットについての得点が、各画像データに対して付与される。各得点化軸における得点化により、ユーザ所望の条件に合致した画像データが、他の画像データとどれほどの優劣を持っているかが定量的に判定可能となる。また、異なる得点化軸間(例えば、メインスロットとサブスロット間)であっても優劣の評価が行えるように、得点の正規化を行うようにしても良い。   In the present embodiment, a score for the main slot and a score for the sub slot 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 that matches the condition desired by the user is with other image data. Further, the scores may be normalized so that superiority or inferiority can be evaluated even between different scoring axes (for example, between the main slot and the sub-slot).

再び図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 in S410 is completed for all the image data in the image data group designated by the user. If it is determined that the processing has not ended, the processing from S410 is repeated. If it is determined that the processing has ended, the processing proceeds to S412.

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

S413では、見開き割当部210は、S406でのシーン分割の分割数が見開き数入力部209から入力される見開き数より少ないか否かを判定する。少なくない(多い)と判定された場合、S415に進む。少ないと判定された場合、S414に進む。図6(A)に示すようにシーン分割数が8であり、見開き数入力部209の入力数が10である場合、S414に進む。   In step S413, the two-page spread allocation unit 210 determines whether the number of scene divisions in step S406 is less than the number of two-page spreads input from the two-page spread input unit 209. When it is determined that the number is not small (large), the process proceeds to S415. When it is determined that the number is small, the process proceeds to S414. As shown in FIG. 6A, when the number of scene divisions is 8 and the number of inputs to 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 step S414, the double-page spread allocation unit 210 executes sub-scene division. The sub-scene division means that when the number of scene divisions is smaller than the number of double-page spreads of the album, the divided scenes are further subdivided. The case where the number of spreads of the designated album is 10 with respect to the number of scene divisions 8 in FIG. 6A will be described. FIG. 6 (B) shows the result of sub-scene division of FIG. 6 (A). The number of divisions is set to 10 by dividing at the portion 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. In the division of FIG. 6A, a division location having a large number of image data is searched. Here, in order to increase the number of divisions from 8 to 10, the number of image data is determined to be two. In FIG. 6A, the image group 5 is first, followed by the image group 1 and the image group 2. Although the image groups 1 and 2 have the same number of images, the image group 2 has a larger time difference from the first image to the last image, and therefore the image group 2 is set as a division target, and the 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. Image group 2 has two peaks of the number of pieces of image data, and since these two have different photographing dates, they are divided at the portion indicated by the broken arrow in FIG. 6B corresponding to that portion. Next, the division of the image group 5 will be described. The image group 5 has three peaks of the number of pieces of image data, which is three consecutive days. Although there are two locations where the shooting date changes, division is performed at the location of the dashed arrow in FIG. 6B so that the difference in the number of sheets after division is small. As described above, the number of divisions is changed from 8 to 10. Here, the image data is divided at different locations on the shooting date, but when the image data is large on a single day, the image data may be divided at a location having the largest time difference in the single day.

S415では、見開き割当部210は、シーン統合を実行する。シーン統合とは、シーン分割数>アルバムの見開き数の場合、分割されたシーンを統合することを表す。図6(C)は、図6(A)をシーン統合した結果を示す。破線の箇所を統合したことで、分割数を6にしている。   In step S415, the double-page spread allocation unit 210 executes scene integration. The scene integration means integration of the divided scenes when the number of scene divisions> the number of spreads of the album. FIG. 6C shows the result of scene integration of FIG. 6A. 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 standard of integration. Among the divisions in FIG. 6A, a division location having a small number of image data is searched. Here, in order to reduce the number of divisions from 8 to 6, the number of image data is determined to be two. In FIG. 6A, the image group 8, the image group 3, and the image group 7 are arranged in order from the smallest one. The image group 3 and the image group 7 have the same number of image data. However, since the image group 8 adjacent to the image group 7 is an integration target, the image group 3 is an 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. Comparing the time differences between the image groups 2 and 4 before and after the image group 3, the time difference with the image group 4 is smaller. Therefore, the image group 3 is integrated into the image group 4 as shown by the broken line in FIG. Next, the integration of the image group 8 will be described. Since the image group 8 has no subsequent image group, it is integrated with the previous image group 7 as shown by the broken line in FIG. 6C.

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

S417では、画像選択部211は、画像データの選択を実行する。以下、ある見開きに割り当てられた画像データ群の分割分から画像データを4枚選択する例を、図9を参照しながら説明する。   In S417, the image selection unit 211 executes selection of image data. Hereinafter, an example in which four pieces of image data are selected from the divided image data group 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 a time difference (divided shooting period) from the shooting date and time of the first image data to the shooting date and time of the last image data for the group assigned to the spread. . A method of selecting the first sheet will be described with reference to FIG. The template has one main slot 1002. Therefore, as the first sheet, the image data for the main slot is selected from the target group. Image data having the highest score for the main slot provided in S410 is selected from the plurality of image data corresponding to the divided shooting period shown in FIG. 9B. The image data for the sub-slot is selected for the second and subsequent sheets.

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

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

次に、図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, the image data with the highest score for the sub-slot among the plurality of image data corresponding to the solid-line shooting periods in which the first and second images are not selected is It is selected as the third sheet.

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

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

再び図4を参照して続きの処理を説明する。S418では、画像レイアウト部213は、画像レイアウトの決定を行う。以下、テンプレート入力部212が、指定されたテンプレート情報に従って、ある見開きに対して図10の(a)〜(p)を入力する例を説明する。   The subsequent processing will be described with reference to FIG. 4 again. In step S418, the image layout unit 213 determines the image layout. Hereinafter, an example in which the template input unit 212 inputs (a) to (p) of 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 designated as 3 as an example. Further, FIG. 10 (q) is a result of arranging three pieces of selected image data in order of shooting date and time, and also shows the orientation of the image. That is, the image data 1006 has a vertical image orientation, and has the oldest shooting date and time. In the image data 1007, the orientation of the image 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 latest. Here, the image data 1005 is for the main slot, and the image data 1006 and 1007 is for the sub slot. In the present embodiment, image data older than the shooting date and time is laid out at the upper left of the template, and newer image data as the shooting date and time is laid out at 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 in FIGS. 10 (i) to (l) are candidates. Further, since the older image data 1006 for the sub-slot is the vertical image and the newer image data 1007 is the horizontal image, the template of FIG. 10 (i) is consequently converted into the selected three image data. It is decided as the most suitable template and the layout is decided.

このとき、仮に、図10(i)のテンプレートに対して、スロット数や各スロットの縦横、位置も合致しており、メインスロットの大きさが図10(i)よりも大きい、図17に示すテンプレートが検索されたとする。つまり、選択された画像データ同士の撮影日時の順序や縦横位置に基づいて、なお、複数のテンプレート候補が存在した場合、本実施形態では、各画像データの得点差からテンプレートを選定する。例えば、メインスロットの画像データの得点が、複数のサブスロットの画像データの平均得点よりも所定の閾値を超えて大きい場合、メインスロットがより大きい図17に示すテンプレートが選択される。一方、閾値を超えていない場合、図10(i)のテンプレートが選択される。上記は、メインスロットについて他のテンプレートが検索された場合を説明したが、サブスロットについて同様に他のテンプレートが検索された場合、他のスロットの平均得点と比較するようにしても良い。   At this time, tentatively, the number of slots, the length and width, and the position of each slot are matched with 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, based on the order of shooting dates and times and the vertical and horizontal positions of the selected image data, when there are a plurality of template candidates, in the present embodiment, the 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 sub-slots by a predetermined threshold value or more, 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 of FIG. 10 (i) is selected. In the above, the case where another template is searched for the main slot has been described, but when another template is similarly searched for the sub slot, the average score of the other slots may be compared.

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

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

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, for each slot of the template determined in S418, the image data subjected to the image correction in S419. At this time, the image layout unit 213 scales and lays out the image data to be laid out according to the size information of the slot. Then, the layout information output unit 216 generates bitmap data in which the image data is laid out in the slots of the template.

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

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

<実施形態2>
本発明の実施形態の共通の特徴に、ユーザが指定したアルバムのページごとにマルチスレッドが実行可能な構成を有することがある。実施形態1では、ユーザがアルバム作成用に入力した画像データ群をコアに割当てて顔検出を実行し、その際に、各コアに割当てる画像データ数の基準を撮影日時とし、各コアの処理に偏りがないように画像データを分配した。
<Embodiment 2>
A common feature of the embodiments of the present invention is that a multi-thread can be executed for each page of an album designated by the user. In the first embodiment, the image data group input by the user for creating the album is assigned to the cores to perform face detection. At that time, the reference of the number of image data assigned to each core is set as 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, the event division process and the page allocation process are executed after the image data group input by the user to create the album is acquired. The difference of this embodiment from the first embodiment is that the input image data group is divided into the required number of pages before the image analysis and the evaluation value calculation are executed. The image processing apparatus allocates thread processing to each core on a page-by-page basis, and each core executes image analysis processing for an image group belonging to the allocated page.

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

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

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

その後、S401〜S405を全画像データに対して実行し、S407〜S408で全シーンに関してシーン分類を実行する。   After that, 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では主人公設定を行わず、また主人公情報を得点化に反映しない。   After that, in S1802, the image scoring unit 208 executes scoring (evaluation of image data). This execution method is the same as that described in the first embodiment, but the image scoring unit 208 of this embodiment does not set the protagonist and does not reflect the protagonist information in scoring.

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

次にS1803では、画像選択部211は、S418における画像レイアウト決定で取得したレイアウト情報から、S409における主人公設定の情報を加味した画像データの入れ替えを行う。   Next, in step S1803, the image selection unit 211 replaces the image data in which the layout information acquired in the image layout determination in step S418 is added with the hero setting information in step S409.

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

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

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

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

図19はページ単位での処理をマルチスレッドで実行するフローチャートである。   FIG. 19 is a flowchart for executing a process in page units by multithread.

なお、この処理にあたり、後述する処理ページ枚数を示すパラメータ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 1 indicating the number of processed pages is incremented by "+1". In this embodiment, a page allocation process of allocating the image data group input by the user for creating an album to each page is executed in advance. Then, it is assigned to each thread in the processing unit of each page of the album. For example, as shown in FIG. 20, it is assumed that the user creates an album of two-page spreads. In this case, the two-page spread allocation unit 210 executes page allocation according to the shooting date and time of the image data, as shown in FIG. 20, and sequentially prints 1 to 9 pages of 20, 30, 25, 30, 25. The numbers are assigned to 10, 10, 20, 30, and 10. Here, the uneven distribution of the number of assigned image data for each page is a result of the influence of the density of the shooting date / time intervals of the image groups and the cohesion as a scene. 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 the instruction of the OS. The number of pages assigned to each core may be uniform, or may be biased 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 shown in FIG. 20, pages with A = {1, 4, 7}, B = {2, 5, 8}, and C = {3, 6, 9} are provided in three cores A, B, and C, respectively. Assigned. That is, each core is in charge of processing three pages. Therefore, if the example shown in FIG. 20 is applied, each thread executes the loop of S1901 to S1907a three times. That is, the number L of pages allocated for processing 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 step S1902, the parameter k indicating the number of processed image data among the number of image data assigned 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 pieces of image data are processed for the first page, 30 pieces for the fourth page, and 20 pieces for the seventh 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 S1903, image analysis processing is executed. The method of executing the image analysis process is the same as the process in the image analysis unit 204 and the process for acquiring the image feature amount in S402 described in the first embodiment. In step S1904, face detection processing is executed. The content of the face detection process is the same as that described with reference to FIG. 13 in the first embodiment.

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

S1905では、得点化処理を実施する。得点化処理の実行方法は実施形態1において説明した画像選択部211とS410における画像得点化の説明と、主人公情報を画像評価値に反映させない点を除き、同様である。S1906では、画像選択処理を実行する。画像選択処理の実行方法は実施形態1において説明した画像選択部211とS417における画像選択の説明と同様である。S1907では、レイアウト選択処理を実行する。レイアウト選択処理の実行方法は実施形態1において説明した画像レイアウト部213とS418における画像レイアウト決定の説明と同様である。   In S1905, scoring processing is performed. The execution method of the scoring process is the same as the description of the image scoring in S410 and the image selection unit 211 described in the first embodiment, except that the hero information is not reflected in the image evaluation value. In S1906, image selection processing is executed. The execution method of the image selection process is the same as the description of the image selection unit 211 and the image selection in S417 described in the first embodiment. In step 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 of all allocated pages L has been completed. Here, if L = 1, it is determined that the processing has ended, and the processing ends, but if L ≠ 1, the processing is incomplete and the processing returns to step S1901.

以上説明したように、この実施形態ではページ単位でマルチスレッドを実行し、各スレッドでページごとのアルバムレイアウトを作成することができる。従って実施形態1と異なり、顔検出だけでなく、得点化処理や画像選択、レイアウト選択もマルチスレッドで実行することで、更に処理を高速化することができる。   As described above, in this embodiment, it is possible to execute a multi-thread for each page and create an album layout for each page in each thread. Therefore, unlike the first embodiment, not only the face detection but also the scoring process, the image selection, and the layout selection are executed by the multithread, 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 individual recognition processing is executed in parallel for each core that operates in multithread. The personal recognition process is as described with reference to FIG. 14 in the first embodiment. Further, similar to the first embodiment, the configuration of the face detection in S403 and the individual recognition processing in S404 is as shown in FIG. The reproducibility of the personal recognition result is improved by the processing in the face information numbering unit 1403, the information management unit 1404, and the order control unit 1405.

次に、個人認識処理が全ての顔検出結果の顔関連情報について終了した後に実行する画像選択部211に関連したアルバムレイアウト入れ替え処理について説明する。   Next, the album layout replacement process related to the image selection unit 211, which is executed after the personal recognition process is completed for all face-related information of the 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 individual recognition process shown in FIG. 16 has been completed. Here, if it is determined that the individual recognition process is completed, the process proceeds to S1910, but if it is determined that the individual recognition process is not completed, the process proceeds to S1909 and waits for the predetermined time. In this embodiment, the predetermined time is set to 10 seconds, and after 10 seconds have elapsed, the standby is ended, the processing returns to S1908, and it is checked whether or not the individual recognition processing is ended. In this way, the process waits until the individual recognition process is executed for all the faces appearing in the image group input by the user.

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

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

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

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

一方、結婚式シーンでは、画像グループは新郎新婦がメインで撮られた写真が多いため、個人認識結果に応じた画像データ入れ替え処理は必要でない場合がある。個人認識が実行できなかった顔の向きになっている新郎新婦の画像データなどは、他の画像データと入れ替える必要はない。よって結婚式シーンは画像データ入れ替えにおける各要素の近似条件を厳しく設定してもよい。各要素の近似条件が厳しくなれば主人公が写っていると判断された画像データでも、得点が高くなければ、撮影日時が近くなければ入れ替えを実施しない。   On the other hand, in the wedding scene, there are many images mainly taken by the bride and groom in the image group, and thus image data replacement processing depending on the result of individual recognition may not be necessary. It is not necessary to replace the image data of the bride and groom whose faces are facing each other for which individual recognition could not be performed, with other image data. Therefore, in the wedding scene, the approximation condition of each element in the replacement of the image data may be set strictly. Even in image data in which it is determined that the main character is captured if the approximation conditions for each element are severe, the image data is not replaced unless the shooting date and time are 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 multithreading from the image analysis of each page. Then, since the reflection of the individual recognition result is finally executed by the image data replacement process, the album layout result also has reproducibility. Further, by increasing the number of processes in the multi-thread, it is possible to realize a higher speed than in the first embodiment.

<実施形態3>
この実施形態では、アルバム作成アプリケーションを使ってアルバム作成途中に中断、もしくは作成後にアプリケーションを終了した状態において、そのアプリケーションを再実行して再度アルバムを作成するときも、結果の再現性を高める例について説明する。
<Embodiment 3>
In this embodiment, an example in which the reproducibility of the result is improved even when the album is created again by using the album creating application while the album is being interrupted during the album creation or after the application is closed explain.

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

S1501の後、S1501aでは、S1501で実行するパラメータnのカウントアップに対応して、そのパラメータが示す画像データに関して、以前に顔検出を含む画像解析処理が実行済みであるかどうかを調べる。例えば、ユーザがアルバム作成用に200枚の画像データを入力した場合を想定する。前回アプリケーション立ち上げ時にユーザが120枚の画像データを解析した時点でアプリケーションを終了すれば、その解析結果である顔関連情報はHDD104やウェブサーバ上などに保管されている。同様に、120枚分の解析結果を管理するデータテーブルもHDD104やウェブサーバ上などに保管されている。従って、このような保管データを次回のアルバム作成時に再利用できれば、その分の処理短縮が実現できる。このため、S1501aでは、利用可能な前回作成時のデータを検索し、該当する画像データに関して、以前に顔検出を含む画像解析処理が実行済みであるかどうかを調べる。   After S1501, in S1501a, in response to the count-up of the parameter n executed in S1501, it is checked whether or not the image data indicated by the parameter has already been subjected to image analysis processing including face detection. For example, assume that the user inputs 200 image data for creating an album. If the application is terminated when the user analyzes 120 pieces of image data at the time of launching the application last time, the face-related information as the analysis result is stored in the HDD 104, the web server, or the like. Similarly, a data table that manages the analysis results for 120 sheets is also stored in the HDD 104, the web server, or the like. Therefore, if such stored data can be reused at the time of creating the next album, the processing can be shortened accordingly. For this reason, in S1501a, the available data at the time of the previous creation is searched, and it is checked whether or not the image analysis process including the face detection has been already executed for 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に保管することもできる。また、ユーザと画像解析結果との対応付けが管理システムで実現できている場合、そのデータテーブルをウェブサーバ上に保管することもできる。   Now, when the processing of S1502 to S1506 is executed, the information management unit 1404 stores the 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, but in this embodiment, it is unconditionally stored in the HDD 104. By storing in the HDD 104, past analysis results can be reused when the application is restarted. In S1507 ', the data table recording the face detection result of the image data that matches the count value of the parameter n obtained in S1501 can be stored in the HDD 104 as well. In addition, when the management system can realize the correspondence between the user and the image analysis result, the data table can be stored on the web server.

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

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

S1508aでは、個人認識情報取得部1406は、顔辞書の更新処理を行う。顔辞書も前回解析結果をHDD104に保管することができる。本実施形態では、個人認識結果の再現性を高めるために顔辞書を新規状態に更新する。なお、顔辞書とデータテーブルの一致・整合性が取れる段階までロールバックする仕組みを入れてもよい。その場合、S1508aでは、個人認識情報取得部1406は、顔辞書を前回作成時点と整合性が取れる状態まで戻す更新処理を行う。   In step S1508a, the personal identification information acquisition unit 1406 updates the face dictionary. 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. It should be noted that a mechanism for rolling back to a stage where the face dictionary and the data table can be matched / consistent may be provided. In this case, in step S1508a, the personal identification information acquisition unit 1406 performs an update process of returning the face dictionary to a state in which the face dictionary is consistent with the time when it was created last time.

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

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

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

なお、本発明は上述の実施形態の1以上の機能を実現するプログラムをネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサがプログラムを読出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。この場合、そのプログラム、および該プログラムを記憶した記憶媒体は本発明を構成する。   Note that the present invention supplies a program that implements 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. It can also be realized by the processing. 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 (15)

複数の画像データを処理する画像処理装置であって、
複数の画像データを取得する取得手段と、
前記取得手段により取得された複数の画像データそれぞれのの部分の情報をマルチスレッド処理で検出する検出手段と、
前記検出手段により検出された前記複数の画像データそれぞれのの部分の情報をソートすることで得られたソート結果に基づいて、前記複数の画像データそれぞれのの部分の情報に対する認識処理の実行順序を決定する決定手段と、
前記決定手段により決定された実行順序に従って、前記検出された顔の部分に対する前記認識処理を実行する実行手段と有することを特徴とする画像処理装置。
An image processing apparatus for processing a plurality of image data,
An acquisition means for acquiring a plurality of image data,
A detection unit that detects information of a face portion of each of the plurality of image data acquired by the acquisition unit by multithread processing,
Execution of recognition processing for information of the face portion of each of the plurality of image data based on a sorting result obtained by sorting information of the face portion of each of the plurality of image data detected by the detection unit A determining means for determining the order,
In accordance with the execution order determined by said determining means, an image processing apparatus characterized by comprising an execution means for executing the recognition processing for the portion of the detected face.
前記実行手段により実行された前記認識処理の結果に基づいて前記複数の画像データをレイアウトするレイアウト手段をさらに有することを特徴とする請求項1に記載の画像処理装置。The image processing apparatus according to claim 1, further comprising a layout unit that lays out the plurality of image data based on a result of the recognition processing executed by the execution unit. 前記取得手段により取得された前記複数の画像データを複数の画像グループに分割する分割手段と、
前記分割手段により分割された複数の画像グループを複数のコアに割当てる割当て手段とをさらに有し、
前記検出手段は、前記割当て手段により割り当てられた前記複数のコアを用いて前記複数の画像グループに含まれる画像データに関して、前記の部分の情報を検出することを特徴とする請求項に記載の画像処理装置。
Dividing means for dividing the plurality of image data acquired by the acquiring means into a plurality of image groups,
Further comprising allocation means for allocating a plurality of image groups divided by the dividing means to a plurality of cores,
Said detection means, with respect to the image data included in the plurality of picture groups using the plurality of cores assigned by the assigning means, according to claim 2, characterized in that to detect the information of the portion of the face Image processing device.
前記分割手段は、前記複数の画像データを複数のページにわたってレイアウトする場合に、前記複数の画像データを、予め定められた基準に従って、前記複数の画像グループに分割して、前記複数のページに割当て、
前記割当て手段は、前記分割手段により前記複数のページそれぞれに割当てられた画像データを前記複数のコアに割当てることを特徴とする請求項に記載の画像処理装置。
When laying out the plurality of image data over a plurality of pages, the dividing unit divides the plurality of image data into the plurality of image groups according to a predetermined standard and assigns the plurality of image data to the plurality of pages. ,
The image processing apparatus according to claim 3 , 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.
前記予め定められた基準は、前記複数の画像データの撮影日時を含むことを特徴とする請求項に記載の画像処理装置。 The image processing apparatus according to claim 4 , wherein the predetermined criterion includes a shooting date and time of the plurality of image data. 前記検出手段による前記複数の画像グループに含まれる画像データの前記の部分の情報が検出された後に、前記レイアウト手段によりレイアウトされた前記複数の画像データの内の少なくとも一部を入れ替える入れ替え手段をさらに有することを特徴とする請求項に記載の画像処理装置。 A replacement unit that replaces at least a part of the plurality of image data laid out by the layout unit after the information of the face portion of the image data included in the plurality of image groups is detected by the detection unit. The image processing apparatus according to claim 3 , further comprising: 前記検出手段により検出された前記の部分の情報を格納する格納手段をさらに有し、
前記取得手段により取得された複数の画像データを用いて再度のレイアウトを行う場合、前記レイアウト手段は、前記格納手段により格納された前記の部分の情報を用いてレイアウトを実行することを特徴とする請求項5又は6に記載の画像処理装置。
Further comprising storage means for storing information on the face portion detected by the detection means,
When the layout is performed again by using the plurality of image data acquired by the acquisition unit, the layout unit executes the layout by using the information of the face portion stored by the storage unit. The image processing apparatus according to claim 5, wherein
前記検出手段による検出が中断され、その後、再実行した場合、前記格納手段に格納された前記の部分の情報に基づいて、前記検出手段による検出が再実行されることを特徴とする請求項に記載の画像処理装置。 The detection by the detection means is re-executed based on the information of the face portion stored in the storage means when the detection by the detection means is interrupted and then re-executed. 7. The image processing device according to 7 . 前記格納手段はHDDを含むことを特徴とする請求項7又は8に記載の画像処理装置。 The image processing apparatus according to claim 7, wherein the storage unit includes an HDD. 前記の部分の情報とは、各画像データに含まれる人物の顔に関する情報であることを特徴とする請求項1乃至のいずれか1項に記載の画像処理装置。 Information portion of the face, the image processing apparatus according to any one of claims 1 to 9, characterized in that the information about the face of a person included in the image data. 前記複数の画像データを特定するために前記取得された複数の画像データに番号を割当てる第1のナンバリング手段と、
前記検出手段により検出された顔を特定するために前記検出された顔に番号を割当てる第2のナンバリング手段とを有し、
前記決定手段は、前記第1のナンバリング手段により割当てられた画像データの番号と、前記第2のナンバリング手段により割当てられた顔の番号とに基づいて、前記実行順序を決定することを特徴とする請求項10に記載の画像処理装置。
First numbering means for assigning a number to the acquired plurality of image data to identify the plurality of image data,
Second numbering means for assigning a number to the detected face to identify the face detected by the detecting means,
The determining unit may determine the execution order based on the image data number assigned by the first numbering unit and the face number assigned by the second numbering unit. The image processing apparatus according to claim 10 .
前記認識処理は、前記検出された顔の部分の情報と、データベースに個人ID毎に保存されている代表顔画像との類似性を比較する処理であることを特徴とする請求項1乃至11のいずれか1項に記載の画像処理装置。 12. The recognition process is a process of comparing the similarity between the detected face part information and the representative face image stored in the database for each individual ID. The image processing apparatus according to any one of items . 前記複数の画像データそれぞれのの部分の情報をマルチスレッド処理で検出する検出処理が再度された場合、前回の検出処理で検出された前記複数の画像データそれぞれのの部分の情報の実行順序と、再度の検出処理で検出された前記複数の画像データそれぞれのの部分の情報の実行順序は同じであることを特徴とする請求項1乃至12のいずれか1項に記載の画像処理装置。 When the detection process of detecting the face part information of each of the plurality of image data by the multithread process is performed again, the execution order of the face part information of each of the plurality of image data detected in the previous detection process When the image processing apparatus according to any one of claims 1 to 12, characterized in that the execution order of the information of the detected portion of the plurality of image data each face detection processing again is the same . コンピュータを請求項1乃至13のいずれか1項に記載の画像処理装置の各手段として機能させるプログラム。 Program to function as each unit of the image processing apparatus according to computer in any one of claims 1 to 13. 複数の画像データを処理する画像処理装置における画像処理方法であって、
複数の画像データを取得する取得工程と、
前記取得された複数の画像データそれぞれのの部分の情報をマルチスレッド処理で検出する検出工程と、
前記検出された前記複数の画像データそれぞれのの部分の情報をソートすることで得られたソート結果に基づいて、前記複数の画像データそれぞれのの部分の情報に対する認識処理の実行順序を決定する決定工程と、
前記決定された実行順序に従って、前記検出された顔の部分に対する前記認識処理を実行する実行工程と有することを特徴とする画像処理方法。
An image processing method in an image processing apparatus for processing a plurality of image data, comprising:
An acquisition process for acquiring a plurality of image data,
A detecting step of detecting information on the face portion of each of the acquired plurality of image data by multithread processing,
Based on the sorting result obtained by sorting the information of the face portion of each of the detected plurality of image data, the execution order of the recognition process for the information of the face portion of each of the plurality of image data is determined. Decision process to
In accordance with the execution order in which the determined, an image processing method characterized by comprising an execution step of executing the recognition processing for the portion of the detected face.
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 JP2017117405A (en) 2017-06-29
JP6685129B2 true 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)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6891059B2 (en) * 2017-07-03 2021-06-18 キヤノン株式会社 Information processing device, control method of information processing device, and program

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4240867B2 (en) * 2001-09-28 2009-03-18 富士フイルム株式会社 Electronic album editing device
JP4623120B2 (en) * 2008-03-31 2011-02-02 ブラザー工業株式会社 Image processing device
JP2011034477A (en) * 2009-08-05 2011-02-17 Seiko Epson Corp Layout device and layout method
JP5660306B2 (en) * 2010-12-17 2015-01-28 カシオ計算機株式会社 Imaging apparatus, program, and imaging method
JP2014044606A (en) * 2012-08-28 2014-03-13 Canon Inc Face recognition device
JP5719406B2 (en) * 2012-09-14 2015-05-20 富士フイルム株式会社 Composite image creation system, image processing apparatus, and image processing method
JP6261206B2 (en) * 2013-06-28 2018-01-17 キヤノン株式会社 Information processing apparatus, information processing method, and program

Also Published As

Publication number Publication date
JP2017117405A (en) 2017-06-29

Similar Documents

Publication Publication Date Title
CN108230262B (en) Image processing method, image processing apparatus, and storage medium
JP6902860B2 (en) Image processing equipment, image processing methods, and programs
JP6525862B2 (en) Image processing apparatus, image processing method and program
JP6938422B2 (en) Image processing equipment, image processing methods, and programs
JP6711937B2 (en) Image processing device, image processing method, and program
CN108377351B (en) Image processing apparatus and image processing method for laying out images on templates
CN108230425B (en) Image processing method, image processing device and storage medium
JP6719206B2 (en) Image processing apparatus, image processing method, and program
JP6532398B2 (en) Image processing apparatus, image processing method and program
JP2017117406A (en) Information processing apparatus, control method, and program
CN108234814A (en) Control method and storage medium
JP7336211B2 (en) Image processing device, control method, and program
JP6080409B2 (en) Information processing apparatus, information processing method, and program
US11509777B2 (en) Image processing apparatus, image processing method, and storage medium
JP6606374B2 (en) Image processing apparatus and method, and program
JP7336209B2 (en) Image processing device, control method, and program
JP6685129B2 (en) Image processing apparatus, program, and image processing method
EP3128461B1 (en) Image processing apparatus, image processing method, and program
JP6700806B2 (en) Program, information processing apparatus, and control method
JP7408304B2 (en) Apparatus, method, and program
JP7336212B2 (en) Image processing device, control method, and program
JP7336210B2 (en) Image processing device, control method, and program

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