JP2010250633A - Image server, image retrieval system, image retrieval method, and index creation method - Google Patents

Image server, image retrieval system, image retrieval method, and index creation method Download PDF

Info

Publication number
JP2010250633A
JP2010250633A JP2009100503A JP2009100503A JP2010250633A JP 2010250633 A JP2010250633 A JP 2010250633A JP 2009100503 A JP2009100503 A JP 2009100503A JP 2009100503 A JP2009100503 A JP 2009100503A JP 2010250633 A JP2010250633 A JP 2010250633A
Authority
JP
Japan
Prior art keywords
image
search
images
image data
cluster
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.)
Pending
Application number
JP2009100503A
Other languages
Japanese (ja)
Inventor
Yasuhisa Hayaishi
育央 早石
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.)
Seiko Epson Corp
Original Assignee
Seiko Epson Corp
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 Seiko Epson Corp filed Critical Seiko Epson Corp
Priority to JP2009100503A priority Critical patent/JP2010250633A/en
Publication of JP2010250633A publication Critical patent/JP2010250633A/en
Pending legal-status Critical Current

Links

Images

Abstract

<P>PROBLEM TO BE SOLVED: To improve the precision of image retrieval without increasing a time required for image retrieval. <P>SOLUTION: An image server 10 is provided with a storage device 13 for storing a plurality of image data. The plurality of image data stored in a storage device 13 are classified into a plurality of clusters as image indexes by a hierarchial clustering method. Representative values as the attributes of the clusters are associated with the respective clusters. Thus, it is possible to improve image retrieval precision without deteriorating an image retrieval speed. <P>COPYRIGHT: (C)2011,JPO&INPIT

Description

本発明は、画像を検索するための画像検索システムに関する。   The present invention relates to an image search system for searching for an image.

ネットワークを介して、所望の画像を検索するための技術が実用化されている。画像データを格納するサーバーコンピューター(画像サーバー)は、数多くの画像データを画像データの特徴を記述するメタデータと関連付けて格納している。画像サーバーとネットワークを介して接続されているクライアントコンピューターは、検索を所望する画像をキーワードで表した検索要求を画像サーバーに送信し、画像サーバーから検索結果として、一または複数の画像データを受信する。   A technique for searching for a desired image via a network has been put into practical use. A server computer (image server) that stores image data stores a lot of image data in association with metadata that describes the characteristics of the image data. A client computer connected to the image server via a network transmits a search request representing an image desired to be searched with a keyword to the image server, and receives one or more image data as a search result from the image server. .

特開2004−361987号公報JP 2004-361987 A

しかしながら、メタデータを用いた従来の検索では、検索対象が画像であるにもかかわらず、検索要求をキーワードによって入力しなければならなかった。所望の画像をキーワードによって適切に特定することは容易でなく、また、画像サーバー上に格納されている画像データについても適切なメタデータが付されていない場合がある。この結果、利用者が所望する画像を精度良く、また、迅速に得られないという問題があった。また、検索要求として画像(画像データ)を用いる場合には、画像検索に膨大な時間を要し、現実的な画像検索システムを提供することができないという問題があった。   However, in a conventional search using metadata, a search request must be input by a keyword even though the search target is an image. It is not easy to appropriately specify a desired image with a keyword, and there is a case where appropriate metadata is not attached to image data stored on the image server. As a result, there is a problem that an image desired by the user cannot be obtained accurately and quickly. In addition, when an image (image data) is used as a search request, there is a problem that an enormous time is required for the image search and a realistic image search system cannot be provided.

本発明は、上記課題の少なくとも一部を解決するためになされたものであり、画像検索に要する時間を増大させることなく画像検索の精度を向上させることを目的とする。   The present invention has been made to solve at least a part of the above-described problems, and an object thereof is to improve the accuracy of image search without increasing the time required for image search.

上記課題の少なくとも一部を解決するために、本発明は以下の種々の態様を採る。   In order to solve at least a part of the above problems, the present invention adopts the following various aspects.

第1の態様は、画像サーバーを提供する。第1の態様に係る画像サーバーは、複数の画像を格納する記憶装置と、前記格納されている複数の画像のそれぞれについて、画像の特徴を表す複数の特徴量を取得する特徴量取得部と、各前記画像から取得した前記複数の特徴量を正規化する正規化部と、階層型クラスタリング手法によって、前記各画像から取得し正規化した前記複数の特徴量を用いて、画像検索時における計算負荷によって定まる所定画像数以下の画像を含むクラスタを複数作成するクラスタ処理実行部と、作成した各前記クラスタの属性を決定し、前記各クラスタにそれぞれ対応づけるインデックス作成部と
を備える。
A first aspect provides an image server. An image server according to a first aspect includes: a storage device that stores a plurality of images; a feature amount acquisition unit that acquires a plurality of feature amounts representing image features for each of the plurality of stored images; A normalization unit that normalizes the plurality of feature amounts acquired from each of the images, and a calculation load at the time of image search using the plurality of feature amounts acquired from the images and normalized by a hierarchical clustering technique A cluster processing execution unit that creates a plurality of clusters including images equal to or less than a predetermined number of images determined by the above, and an index creation unit that determines the attribute of each created cluster and associates it with each cluster.

第1の態様に係る画像サーバーによれば、階層型クラスタリング手法によって、前画像から取得し正規化した複数の特徴量を用いて、画像検索時における計算負荷によって定まる所定画像数以下の画像を含むクラスタを複数作成し、作成した各クラスタの属性を決定し、各クラスタにそれぞれ対応づけて画像のインデックスを作成することができる。したがって、画像検索に要する時間を増大させることなく画像検索の精度を向上させることができる。   According to the image server according to the first aspect, by using a plurality of feature amounts acquired from the previous image and normalized by the hierarchical clustering technique, images having a predetermined number of images or less determined by the calculation load at the time of image search are included. A plurality of clusters can be created, attributes of each created cluster can be determined, and an image index can be created in association with each cluster. Therefore, the accuracy of the image search can be improved without increasing the time required for the image search.

第1の態様に係る画像サーバーにおいて、前記正規化部は、標準偏差を用いて前記複数の特徴量を正規化しても良い。この場合には、特徴量の偏差(分散、ばらつき)を大きくすることが可能となり、クラスタリングの精度を向上させることができる。   In the image server according to the first aspect, the normalization unit may normalize the plurality of feature amounts using a standard deviation. In this case, it becomes possible to increase the deviation (dispersion, variation) of the feature amount, and the clustering accuracy can be improved.

第1の態様に係る画像サーバーにおいて、前記特徴量は、輝度、色相、テクスチャ、顔の大きさのうちの少なくとも2つを含んでも良い。この場合には、画像の特徴をよく表すことが可能となり、クラスタリングの精度を向上させることができる。   In the image server according to the first aspect, the feature amount may include at least two of luminance, hue, texture, and face size. In this case, the feature of the image can be expressed well, and the accuracy of clustering can be improved.

第1の態様に係る画像サーバーにおいて、前記所定画像数は100〜300であっても良い。この場合には、画像サーバーにおける計算負荷を増大させることなく(検索時間を増大させることなく)、画像検索を実現させることができる。   In the image server according to the first aspect, the predetermined number of images may be 100 to 300. In this case, the image search can be realized without increasing the calculation load on the image server (without increasing the search time).

第2の態様は、画像サーバーにおけるインデックス作成方法を提供する。第2の態様に係るインデックス作成方法は、複数の画像のそれぞれについて、画像の特徴を表す複数の特徴量を取得し、各前記画像から取得した前記複数の特徴量を正規化し、階層型クラスタリング手法によって、前記各画像から取得し正規化した前記複数の特徴量を用いて、画像検索時における計算負荷によって定まる所定画像数以下の画像が属するクラスタを複数作成し、作成した各前記クラスタの属性を決定し、前記クラスタにそれぞれ対応づけることを備える。   A second aspect provides an index creation method in an image server. The index creation method according to the second aspect includes obtaining a plurality of feature quantities representing image features for each of a plurality of images, normalizing the plurality of feature quantities obtained from the images, and a hierarchical clustering method. By using the plurality of feature quantities acquired and normalized from each image, a plurality of clusters to which an image equal to or less than a predetermined number of images determined by the calculation load at the time of image search belongs, and the attribute of each created cluster is Determining and associating with each of the clusters.

第2の態様に係るインデックス作成方法によれば、第1の態様に係る画像サーバーと同様の作用効果を得ることができると共に、第1の態様に係る画像サーバーと同様にして種々の態様にて実現することができる。   According to the index creation method according to the second aspect, it is possible to obtain the same operational effects as the image server according to the first aspect, and in various aspects similarly to the image server according to the first aspect. Can be realized.

第3の態様は、画像サーバーを提供する。第3の態様に係るが蔵サーバーは、階層型クラスタリング手法によって、予め複数のクラスタにクラスタリングされた複数の画像データを記憶する記憶装置と、検索の対象となる画像である検索画像を取得する検索画像取得部と、前記複数のクラスタの中から前記検索画像に近似する複数のクラスタを選択し、選択した各前記クラスタに属する複数の画像から検索画像に近似する画像を複数選択する検索部と、前記検索部によって検索された複数の画像を検索結果として出力する出力部とを備える。   A third aspect provides an image server. According to the third aspect, the warehouse server uses a hierarchical clustering method to store a plurality of image data clustered in advance into a plurality of clusters, and a search for acquiring a search image that is an image to be searched An image acquisition unit; a plurality of clusters that approximate the search image from the plurality of clusters; a search unit that selects a plurality of images that approximate the search image from a plurality of images belonging to each of the selected clusters; An output unit that outputs a plurality of images searched by the search unit as a search result.

第3の態様に係る画像サーバーによれば、階層型クラスタリング手法によって、予め複数のクラスタにクラスタリングされた複数の画像データを記憶する記憶装置から、検索画像に近似する複数のクラスタを選択し、選択した各クラスタに属する複数の画像から検索画像に近似する画像を複数選択するので、画像検索に要する時間を増大させることなく画像検索の精度を向上させることができる。   According to the image server according to the third aspect, a plurality of clusters that approximate the search image are selected and selected from a storage device that stores a plurality of image data clustered in advance into a plurality of clusters by a hierarchical clustering technique. Since a plurality of images that approximate the search image are selected from the plurality of images that belong to each cluster, the accuracy of the image search can be improved without increasing the time required for the image search.

第3の態様に係る画像サーバーにおいて、前記クラスタにはクラスタの特徴を表す属性が関連づけられており、前記検索部は、前記検索画像の特徴量を取得し、取得した特徴量と前記属性とを用いて前記近似する複数のクラスタを選択しても良い。この場合には、クラスタの検索精度を低下させることなく検索時間を短縮させることができる。   In the image server according to the third aspect, the cluster is associated with an attribute representing a feature of the cluster, and the search unit acquires the feature amount of the search image, and the acquired feature amount and the attribute are obtained. The plurality of approximate clusters may be selected by using them. In this case, the search time can be shortened without reducing the cluster search accuracy.

第3の態様に係る画像サーバーにおいて、前記検索部は、前記選択したクラスタに含まれている画像の特徴量を取得し、前記選択したクラスタに含まれている画像の特徴量、取得した前記検索画像の特徴量とを用いて前記近似する複数の画像を選択しても良い。この場合には、クラスタに含まれる複数の画像から検索画像を検索することができるので、検索時間を短縮させることができる。   In the image server according to the third aspect, the search unit acquires the feature amount of the image included in the selected cluster, the feature amount of the image included in the selected cluster, and the acquired search The plurality of approximate images may be selected using image feature amounts. In this case, the search image can be searched from a plurality of images included in the cluster, so that the search time can be shortened.

第3の態様に係る記載の画像サーバーはさらに、複数の画像のそれぞれについて、画像の特徴を表す複数の特徴量を取得する特徴量取得部と、各前記画像から取得した前記複数の特徴量を正規化する正規化部と、階層型クラスタリング手法によって、前記各画像から取得し正規化した前記複数の特徴量を用いて、画像検索時における計算負荷によって定まる所定画像数以下の画像を含むクラスタを複数作成するクラスタ実行部と、作成した各前記クラスタの属性を決定し、前記求めた属性を前記クラスタにそれぞれ対応づけるインデックス作成部とを備えてもよい。この場合には、画像検索に要する時間を増大させることなく画像検索の精度を向上させることができる画像のインデックスを作成することができる。   The image server according to the third aspect further includes, for each of a plurality of images, a feature amount acquisition unit that acquires a plurality of feature amounts representing image features, and the plurality of feature amounts acquired from each of the images. A normalization unit for normalization, and a cluster including images equal to or less than a predetermined number of images determined by a calculation load at the time of image search, using the plurality of feature quantities acquired and normalized from each image by a hierarchical clustering technique. There may be provided a plurality of cluster execution units to be created, and an index creation unit for determining attributes of each created cluster and associating the obtained attributes with the clusters. In this case, it is possible to create an image index that can improve the accuracy of the image search without increasing the time required for the image search.

第4の態様は、画像検索システムを提供する。第4の態様に係る画像検索システムは、第3の態様に係る画像サーバーと、前記画像サーバーにネットワークを介してアクセス可能なプリンターであって、前記画像サーバーに対して前記検索画像を送信する送信部と、前記画像サーバーから出力された前記検索結果としての複数の画像を受け取る受信部と、前記受信した画像を出力する表示部とを備えるプリンターとを備える。   A fourth aspect provides an image search system. An image search system according to a fourth aspect is an image server according to the third aspect and a printer that is accessible to the image server via a network, and transmits the search image to the image server. And a printer that includes a receiving unit that receives a plurality of images as the search results output from the image server, and a display unit that outputs the received images.

第4の態様に係る画像検索システムによれば、画像検索に要する時間を増大させることなく画像検索の精度を向上させることができる。   According to the image search system according to the fourth aspect, it is possible to improve the accuracy of the image search without increasing the time required for the image search.

第5の態様は、画像検索方法を提供する。第5の態様に係る画像検索方法は、検索の対象となる画像である検索画像を取得し、記憶装置に格納されている複数の画像データを用いて、階層型クラスタリング手法によって予めクラスタリングされた複数のクラスタの中から前記検索画像に近似する複数のクラスタを選択し、選択した各前記クラスタに属する複数の画像から検索画像に近似する画像を複数選択し、前記選択された複数の画像を検索結果として出力することを備える。   The fifth aspect provides an image search method. The image search method according to the fifth aspect obtains a search image, which is an image to be searched, and uses a plurality of image data stored in a storage device and clustered in advance by a hierarchical clustering technique. Selecting a plurality of clusters approximating the search image from the plurality of clusters, selecting a plurality of images approximating the search image from a plurality of images belonging to each of the selected clusters, and retrieving the selected plurality of images as a search result As output.

第5の態様に係る画像検索方法によれば、第3の態様に係る画像サーバーと同様の作用効果を得ることができると共に、第3の態様に係る画像サーバーと同様にして種々の態様にて実現され得る。   According to the image search method according to the fifth aspect, it is possible to obtain the same operational effects as the image server according to the third aspect, and in various aspects similarly to the image server according to the third aspect. Can be realized.

第2および第5の態様に係る方法は、それぞれインデックス作成プログラム、画像検索プログラムとして実現され得ると共に、インデックス作成プログラム、画像検索プログラムがそれぞれ記録されたコンピューター読み取り可能な媒体として実現され得る。   The methods according to the second and fifth aspects can be realized as an index creation program and an image search program, respectively, and can also be realized as a computer-readable medium on which the index creation program and the image search program are recorded.

本実施例に係る画像検索システムの概略構成を示す説明図である。It is explanatory drawing which shows schematic structure of the image search system which concerns on a present Example. 本実施例に係る画像サーバーの内部構成を機能ブロック図にて模式的に示す説明図である。It is explanatory drawing which shows typically the internal structure of the image server which concerns on a present Example with a functional block diagram. 画像サーバーが備えるメモリに格納されている各種プログラム、モジュールを示す説明図である。It is explanatory drawing which shows the various programs and modules stored in the memory with which an image server is provided. 本実施例に係るプリンターの内部構成を機能ブロック図にて模式的に示す説明図である。FIG. 3 is an explanatory diagram schematically illustrating an internal configuration of the printer according to the embodiment in a functional block diagram. 画像プリンターが備えるメモリに格納されている各種プログラム、モジュールを示す説明図である。It is explanatory drawing which shows the various programs and modules stored in the memory with which an image printer is provided. 第1のクラスタリング手法として、階層型クラスタリング手法を用いて画像インデックスを作成するために実行される処理ルーチンを示すフローチャートである。It is a flowchart which shows the processing routine performed in order to produce an image index using a hierarchical clustering method as a 1st clustering method. は第1のクラスタリング手法により生成されたクラスタの概念を示す説明図である。FIG. 4 is an explanatory diagram showing a concept of clusters generated by the first clustering method. 画像データベースにおける画像管理テーブルの一例を示す説明図である。It is explanatory drawing which shows an example of the image management table in an image database. クラスタの属性を管理するクラスタテーブルの一例を示す説明図である。It is explanatory drawing which shows an example of the cluster table which manages the attribute of a cluster. 第2のクラスタリング手法として、非階層型クラスタリング手法を用いて画像インデックスを作成するために実行される処理ルーチンを示すフローチャートである。It is a flowchart which shows the processing routine performed in order to produce an image index using a non-hierarchical clustering method as a 2nd clustering method. 第2のクラスタリング手法により生成されたクラスタの概念を示す説明図である。It is explanatory drawing which shows the concept of the cluster produced | generated by the 2nd clustering method. 本実施例に係る画像サーバーにおいて実行される画像検索処理ルーチンを示すフローチャートである。It is a flowchart which shows the image search process routine performed in the image server which concerns on a present Example. 本実施例に係るプリンターにおいて実行される画像検索要求処理ルーチンを示すフローチャートである。6 is a flowchart illustrating an image search request processing routine executed in the printer according to the embodiment. 第2のクラスタリング手法によって形成されたクラスタを用いた画像データの検索処理の概念を模式的に示す説明図である。It is explanatory drawing which shows typically the concept of the search process of the image data using the cluster formed by the 2nd clustering method.

以下、本発明に係る画像検索システム、画像サーバー、インデックス作成方法、画像検索方法、プリンターについて、図面を参照しつつ、実施例に基づいて説明する。   Hereinafter, an image search system, an image server, an index creation method, an image search method, and a printer according to the present invention will be described based on embodiments with reference to the drawings.

図1は本実施例に係る画像検索システムの概略構成を示す説明図である。本実施例に係る画像検索システムISSは、サーバーコンピューター10、プリンター20、パーソナルコンピューター30を備えている。サーバーコンピューター10と、プリンター20およびパーソナルコンピューター30とはネットワークNEを介して双方向通信可能に接続されている。ネットワークは、インターネットであっても良く、イントラネットであっても良い。   FIG. 1 is an explanatory diagram illustrating a schematic configuration of an image search system according to the present embodiment. The image search system ISS according to the present embodiment includes a server computer 10, a printer 20, and a personal computer 30. The server computer 10 is connected to the printer 20 and the personal computer 30 through a network NE so that bidirectional communication is possible. The network may be the Internet or an intranet.

サーバーコンピューター10は、数多くの被検索画像データを格納し、クライアントコンピューターからの検索要求に応じて画像の検索を実行する。したがって、サーバーコンピューターは画像サーバーであると言うことができる。プリンター20およびパーソナルコンピューター30は、画像サーバー10に対するクライアントまたは画像検索端末装置と呼ぶことができる。パーソナルコンピューター30は、表示ディスプレイ31並びにキーボードおよびマウスといった入力装置32を備えている。   The server computer 10 stores a large number of image data to be searched and executes an image search in response to a search request from a client computer. Therefore, it can be said that the server computer is an image server. The printer 20 and the personal computer 30 can be called a client for the image server 10 or an image search terminal device. The personal computer 30 includes a display 31 and an input device 32 such as a keyboard and a mouse.

画像サーバーの構成:
図2は本実施例に係る画像サーバーの内部構成を機能ブロック図にて模式的に示す説明図である。図3は画像サーバーが備えるメモリに格納されている各種プログラム、モジュールを示す説明図である。画像サーバー10は、互いに通信可能に接続されている中央処理装置(CPU)11、メモリ12、画像データベースが構築されている記憶装置(画像データベースともいう)13、および入出力インターフェース14を備えている。CPU11は、メモリ12に格納されている各種プログラム、モジュールを実行する。メモリ12は、CPU11によって実行されるプログラム、モジュールを不揮発的に記憶すると共に、CPU11による処理実行時にプログラム、モジュールが展開される揮発的な作業領域を有する。メモリ12としては、例えば、プログラム等を不揮発的に記憶するリードオンリメモリ、プログラム実行時における揮発的な作業領域を提供するランダムアクセスメモリといった半導体記憶装置が用いられ得る。
Image server configuration:
FIG. 2 is an explanatory diagram schematically showing the internal configuration of the image server according to the present embodiment in a functional block diagram. FIG. 3 is an explanatory diagram showing various programs and modules stored in a memory included in the image server. The image server 10 includes a central processing unit (CPU) 11, a memory 12, a storage device (also referred to as an image database) 13 in which an image database is constructed, and an input / output interface 14 that are communicably connected to each other. . The CPU 11 executes various programs and modules stored in the memory 12. The memory 12 stores programs and modules executed by the CPU 11 in a nonvolatile manner, and has a volatile work area where the programs and modules are expanded when the CPU 11 executes processing. As the memory 12, for example, a semiconductor storage device such as a read only memory that stores a program or the like in a non-volatile manner, or a random access memory that provides a volatile work area when the program is executed can be used.

記憶装置13は、例えば、ハードディスクドライブ、フラッシュメモリドライブといった1または複数の大容量記憶装置によって構成されている。記憶装置13には、複数の画像データ、並びに各画像データの特徴量、所属クラスタおよび画像データの特徴量といった画像データの管理情報(属性情報)から構成されている画像データベースが構築されている。なお、画像データが出力(表示、印刷)された態様が画像であるが、請求項における画像は画像データを意味することは当業者にとって自明な事項である。記憶装置13は、複数の画像データのみを格納する画像データ格納部として機能しても良い。この場合には、記憶装置13に格納されている各画像データの特徴量および画像データの管理情報(属性情報)はメモリ12に格納される。本実施例では、クライアントから見て、画像サーバー10自体が画像データベースとして機能する。なお、本実施例では、記憶装置13が単に画像データおよび画像管理情報を格納するデータベースを例をとって説明しているが、記憶装置13に検索機能を備える制御部を備え、外部からの検索要求に応じて検索結果を出力する独立型のデータベースシステム(ファイルサーバー)であっても良い。この場合には、画像サーバー10の外部に画像データベースシステムが配置され、入出力インターフェース14を介して両者の間で検索要求および検索結果の送受信が実行される。いずれの場合にも、データベース検索用のプログラムはメモリ12に格納され、CPU11によって実行される。   The storage device 13 is configured by one or a plurality of mass storage devices such as a hard disk drive and a flash memory drive. In the storage device 13, an image database including a plurality of image data and image data management information (attribute information) such as the feature amount of each image data, the cluster to which the image data belongs, and the feature amount of the image data is constructed. In addition, although the aspect in which the image data is output (displayed or printed) is an image, it is obvious to those skilled in the art that the image in the claims means the image data. The storage device 13 may function as an image data storage unit that stores only a plurality of image data. In this case, the feature amount of each image data stored in the storage device 13 and the management information (attribute information) of the image data are stored in the memory 12. In this embodiment, when viewed from the client, the image server 10 itself functions as an image database. In the present embodiment, the storage device 13 is described as an example of a database that simply stores image data and image management information. However, the storage device 13 includes a control unit having a search function, and searches from the outside. It may be an independent database system (file server) that outputs search results in response to requests. In this case, an image database system is arranged outside the image server 10, and search requests and search results are transmitted and received between the two via the input / output interface 14. In either case, the database search program is stored in the memory 12 and executed by the CPU 11.

入出力インターフェース14は、外部装置、例えば、プリンター20、パーソナルコンピューター30といったクライアントとの間で、周知の通信プロトコルに従って検索要求および検索結果の送受信を実行する。   The input / output interface 14 transmits / receives a search request and a search result to / from an external device, for example, a client such as the printer 20 or the personal computer 30 according to a known communication protocol.

メモリ12に格納されている各種プログラム、モジュールについて図3を用いて説明する。メモリ12は、画像インデックスを作成するために実行される画像インデックス作成プログラムSP1と、記憶装置13から画像を検索するために実行される画像検索プログラムSP2とを格納している。画像インデックス作成プログラムSP1は、画像データ取得モジュールSM11、特徴量取得モジュールSM12、正規化モジュールSM13、クラスタリングモジュールSM14、インデックス作成モジュールSM15を備えている。画像データ取得モジュールSM11は、記憶装置(画像データベース)13に格納されている画像データを順次、重複なく取得するために実行されるモジュールである。特徴量取得モジュールSM12は、画像データ取得モジュールSM11によって取得された画像データを解析して、特徴量を取得するために実行されるモジュールである。ここで、特徴量とは、例えば、画像データの平均輝度、最小輝度、最高輝度、色相、画像データに含まれる顔のサイズ、位置といった値である。これら特徴量は、当業者にとって周知の方法で取得することが可能であるから説明を省略する。   Various programs and modules stored in the memory 12 will be described with reference to FIG. The memory 12 stores an image index creation program SP1 that is executed to create an image index, and an image search program SP2 that is executed to search for an image from the storage device 13. The image index creation program SP1 includes an image data acquisition module SM11, a feature amount acquisition module SM12, a normalization module SM13, a clustering module SM14, and an index creation module SM15. The image data acquisition module SM11 is a module executed to sequentially acquire image data stored in the storage device (image database) 13 without duplication. The feature amount acquisition module SM12 is a module executed for analyzing the image data acquired by the image data acquisition module SM11 and acquiring the feature amount. Here, the feature amount is, for example, values such as average luminance, minimum luminance, maximum luminance, hue, and face size and position included in the image data. Since these feature quantities can be obtained by methods well known to those skilled in the art, description thereof will be omitted.

正規化モジュールSM13は、特徴量取得モジュールSM12によって取得された、記憶装置13に含まれている全ての画像データの各特徴量を正規化するために実行されるモジュールである。正規化は、例えば、特徴量の標準偏差を用いて実行されても良く、あるいは、取得された各特徴量の最大値が1に最小値が0になるように実行されても良い。クラスタリングモジュールSM14は、正規化された各特徴量を用いて、画像データベース13内の画像データを複数のクラスタに分類するために実行されるモジュールである。クラスタリングの手法としては、階層型クラスタリング手法、非階層型クラスタリング手法が知られている。本実施例では、第1のクラスタリング手法として、階層型クラスタリング手法を用い、第2のクラスタリング手法として、非階層型クラスタリング手法の1つであるK−平均法を用いる。インデックス作成モジュールSM15は、クラスタリングによって形成された各クラスタに対して代表値を付与して画像検索に用いられるインデックスを作成するために実行されるモジュールである。なお、画像インデックス作成プログラムSP1、画像データ取得モジュールSM11、特徴量取得モジュールSM12、正規化モジュールSM13、クラスタリングモジュールSM14、インデックス作成モジュールSM15は、それぞれCPU11によって実行されることによって、画像インデックス作成部、画像データ取得部、特徴量取得部、正規化部、クラスタリング部、インデックス作成部として機能する。   The normalization module SM13 is a module executed to normalize each feature amount of all image data included in the storage device 13 acquired by the feature amount acquisition module SM12. The normalization may be executed using, for example, a standard deviation of feature amounts, or may be executed such that the maximum value of each acquired feature amount is 1 and the minimum value is 0. The clustering module SM14 is a module executed to classify the image data in the image database 13 into a plurality of clusters using each normalized feature amount. Hierarchical clustering methods and non-hierarchical clustering methods are known as clustering methods. In this embodiment, a hierarchical clustering method is used as the first clustering method, and a K-means method, which is one of the non-hierarchical clustering methods, is used as the second clustering method. The index creation module SM15 is a module executed to create an index used for image search by assigning a representative value to each cluster formed by clustering. Note that the image index creation program SP1, the image data acquisition module SM11, the feature amount acquisition module SM12, the normalization module SM13, the clustering module SM14, and the index creation module SM15 are executed by the CPU 11, respectively, so that the image index creation unit, the image It functions as a data acquisition unit, a feature amount acquisition unit, a normalization unit, a clustering unit, and an index creation unit.

画像検索プログラムSP2は、検索画像データ取得モジュールSM21、画像データ検索モジュールSM22を備えている。画像データ検索モジュールSM22は、サブモジュールとして検索画像データ特徴量取得モジュールSM23、類似度算出モジュールSM24を備えている。検索画像データ取得モジュールSM21は、クライアントであるプリンター20およびパーソナルコンピューター30によって送信された検索画像データを取得するために実行されるモジュールである。画像データ検索モジュールSM22は、取得した検索画像データを用いて、記憶装置13から、検索画像データに類似または一致する画像データを検索するために実行されるモジュールである。検索画像データ特徴量取得モジュールSM23は、取得した検索画像データの複数の特徴量を取得するために実行され、類似度算出モジュールSM24は取得した検索画像データの特徴量と、各クラスタの代表値および各クラスタに属する画像データの特徴量とを用いて検索画像データと被検索画像データとの類似度を算出するため実行されるモジュールである。なお、画像検索プログラムSP2、検索画像データ取得モジュールSM21、画像データ検索モジュールSM22、検索画像データ特徴量取得モジュールSM23および類似度算出モジュールSM24は、それぞれCPU11によって実行されることによって、画像検索部、検索画像取得部、画像データ特徴量取得部、類似度算出部として機能する。   The image search program SP2 includes a search image data acquisition module SM21 and an image data search module SM22. The image data search module SM22 includes a search image data feature amount acquisition module SM23 and a similarity calculation module SM24 as submodules. The search image data acquisition module SM21 is a module executed to acquire search image data transmitted by the printer 20 and the personal computer 30 that are clients. The image data search module SM22 is a module that is executed to search the storage device 13 for image data that is similar to or matches the search image data, using the acquired search image data. The search image data feature amount acquisition module SM23 is executed to acquire a plurality of feature amounts of the acquired search image data, and the similarity calculation module SM24 includes the acquired feature amount of the search image data, the representative value of each cluster, and This is a module executed to calculate the similarity between the search image data and the searched image data using the feature amount of the image data belonging to each cluster. Note that the image search program SP2, the search image data acquisition module SM21, the image data search module SM22, the search image data feature amount acquisition module SM23, and the similarity calculation module SM24 are executed by the CPU 11, respectively, so that the image search unit, the search It functions as an image acquisition unit, an image data feature amount acquisition unit, and a similarity calculation unit.

プリンターの構成:
図4は本実施例に係るプリンターの内部構成を機能ブロック図にて模式的に示す説明図である。図5は画像プリンターが備えるメモリに格納されている各種プログラム、モジュールを示す説明図である。本実施例では、画像検索端末装置としてプリンター20を例にとって説明するが、パーソナルコンピューター30についても同様に画像検索端末装置として用いることが可能であることは言うまでもない。プリンター20は、信号線によって互いに接続されている制御回路21、入力操作部22、表示部23、印刷部24、外部入出力インターフェース25を備えている。制御回路21は、互いに通信可能に接続されている中央処理装置(CPU)210、メモリ211、入出力(I/O)インターフェース212を備えている。CPU210は、メモリ211に格納されている各種プログラム、モジュールを実行する。メモリ211は、CPU210によって実行されるプログラム、モジュールを不揮発的に記憶すると共に、CPU210による処理実行時にプログラム、モジュールが展開される揮発的な作業領域を有する。メモリ211としては、例えば、プログラム等を不揮発的に記憶するリードオンリメモリ、プログラム実行時における揮発的な作業領域を提供するランダムアクセスメモリといった半導体記憶装置が用いられ得る。入出力インターフェース212は、制御回路21と、入力操作部22、表示部23、印刷部24および外部入出力インターフェース25との間で、コマンド、データの送受信を実行する。入力操作部22は、プリンター20に対してユーザが指示を入力するための操作部であり、例えば、ボタン、ホイールによって実現され得る。表示部23は、ユーザに対して検索した画像データに基づく画像の表示、ユーザに対する各種情報の表示を行うカラー表示可能な表示画面である。印刷部24は、ユーザ(制御回路21)からの印刷指示に従って印刷媒体に対して画像を形成する印刷実行部である。外部入出力インターフェース25は、外部装置、例えば、画像サーバー10との間で、周知の通信プロトコルに従って検索要求および検索結果の送受信を実行する。
Printer configuration:
FIG. 4 is an explanatory diagram schematically showing the internal configuration of the printer according to the present embodiment in a functional block diagram. FIG. 5 is an explanatory diagram showing various programs and modules stored in a memory included in the image printer. In this embodiment, the printer 20 is described as an example of the image search terminal device, but it goes without saying that the personal computer 30 can also be used as an image search terminal device. The printer 20 includes a control circuit 21, an input operation unit 22, a display unit 23, a printing unit 24, and an external input / output interface 25 that are connected to each other by signal lines. The control circuit 21 includes a central processing unit (CPU) 210, a memory 211, and an input / output (I / O) interface 212 that are communicably connected to each other. The CPU 210 executes various programs and modules stored in the memory 211. The memory 211 stores programs and modules executed by the CPU 210 in a nonvolatile manner, and has a volatile work area where the programs and modules are expanded when the CPU 210 executes processes. As the memory 211, for example, a semiconductor storage device such as a read-only memory that stores a program or the like in a nonvolatile manner, or a random access memory that provides a volatile work area when the program is executed can be used. The input / output interface 212 transmits and receives commands and data between the control circuit 21 and the input operation unit 22, the display unit 23, the printing unit 24, and the external input / output interface 25. The input operation unit 22 is an operation unit for a user to input an instruction to the printer 20 and can be realized by, for example, a button or a wheel. The display unit 23 is a display screen capable of color display for displaying an image based on image data searched for the user and displaying various information for the user. The printing unit 24 is a printing execution unit that forms an image on a printing medium in accordance with a printing instruction from a user (control circuit 21). The external input / output interface 25 transmits / receives a search request and a search result to / from an external device, for example, the image server 10 according to a known communication protocol.

メモリ211に格納されている各種プログラム、モジュールについて図5を用いて説明する。メモリ211は、画像サーバー10に対して画像検索を要求するための画像検索要求プログラムCP1を備え、画像検索要求プログラムCP1は、画像データ特定モジュールCM11、検索要求モジュールCM12、検索結果取得モジュールCM13および検索結果表示モジュールCM14を備えている。画像データ特定モジュールCM11は、検索対象(検索キー)となる画像(画像データ)を特定するために実行されるモジュールである。検索要求モジュールCM12は、特定された画像データと検索の要求を画像サーバー10に対して送信するためのモジュールである。検索結果取得モジュールCM13は、画像サーバー10から検索結果としても一または複数の画像データを取得するためのモジュールである。検索結果表示モジュールCM14は、検索結果として取得した一または複数の画像データを用いて表示部23に検索結果としての画像を表示するためのプログラムである。なお、画像検索要求プログラムCP1、画像データ特定モジュールCM11、検索要求モジュールCM12、検索結果取得モジュールCM13および検索結果表示モジュールCM14は、それぞれCPU210によって実行されることによって、画像検索要求部、検索画像特定部、検索要求部、検索結果取得部および検索結果表示部として機能する。   Various programs and modules stored in the memory 211 will be described with reference to FIG. The memory 211 includes an image search request program CP1 for requesting an image search to the image server 10, and the image search request program CP1 includes an image data identification module CM11, a search request module CM12, a search result acquisition module CM13, and a search. A result display module CM14 is provided. The image data specifying module CM11 is a module that is executed to specify an image (image data) to be searched (search key). The search request module CM12 is a module for transmitting the specified image data and a search request to the image server 10. The search result acquisition module CM13 is a module for acquiring one or a plurality of image data as a search result from the image server 10. The search result display module CM14 is a program for displaying an image as a search result on the display unit 23 using one or a plurality of image data acquired as a search result. The image search request program CP1, the image data identification module CM11, the search request module CM12, the search result acquisition module CM13, and the search result display module CM14 are executed by the CPU 210, respectively, so that an image search request unit, a search image specification unit , Functions as a search request unit, a search result acquisition unit, and a search result display unit.

第1のクラスタリング手法:
図6は第1のクラスタリング手法として、階層型クラスタリング手法を用いて画像インデックスを作成するために実行される処理ルーチンを示すフローチャートである。図7は第1のクラスタリング手法により生成されたクラスタの概念を示す説明図である。図8は画像データベースにおける画像管理テーブルの一例を示す説明図である。図9はクラスタの代表値を管理するクラスタテーブルの一例を示す説明図である。
First clustering method:
FIG. 6 is a flowchart showing a processing routine executed for creating an image index using a hierarchical clustering technique as the first clustering technique. FIG. 7 is an explanatory diagram showing the concept of clusters generated by the first clustering method. FIG. 8 is an explanatory diagram showing an example of an image management table in the image database. FIG. 9 is an explanatory diagram showing an example of a cluster table for managing representative values of clusters.

本処理ルーチンは、例えば、画像データベースに対して画像インデックスを作成する最初のタイミングにて、あるいは、画像データベースに所定量の新規な画像データが追加されたタイミングにて画像サーバー10によって実行される。画像サーバー10(CPU11)は画像データ取得モジュールSM11を実行して、画像データベース13から画像データを取得する(ステップS100)。取得された画像データは一時的にメモリ12に格納される。   This processing routine is executed by the image server 10 at, for example, the first timing of creating an image index for the image database, or at the timing when a predetermined amount of new image data is added to the image database. The image server 10 (CPU 11) executes the image data acquisition module SM11 and acquires image data from the image database 13 (step S100). The acquired image data is temporarily stored in the memory 12.

CPU11は特徴量取得モジュールSM12を実行して、メモリ12に格納されている画像データから複数の特徴量を取得する(ステップS102)。本実施例において用いられる特徴量は、例えば、画像データの輝度または画像データの一部の領域における輝度のヒストグラム、テクスチャ、顔の有無、顔の大きさ、色相であり、複数の特徴量が用いられる。輝度のヒストグラムからは、平均輝度値、最高輝度値、最小輝度値が取得され、色相としては、画像データにおけるR、G、B各成分の平均値、または、画像データを構成する全画素数に占める所定値以上のR、G、B成分画素数の割合が取得される。輝度のヒストグラム、色相、テクスチャを特徴量として取得する方法は当業者にとって周知の方法であるから説明を省略する。また、顔の有無、すなわち顔検出、および顔の大きさの検出は、例えば、モデル顔形状を用いたパターンマッチング法、肌色の色相領域を特定する方法、顔の器官を検出する方法がそれぞれ単独または組み合わせて用いられ得る。   The CPU 11 executes the feature amount acquisition module SM12 and acquires a plurality of feature amounts from the image data stored in the memory 12 (step S102). The feature amount used in this embodiment is, for example, the brightness of the image data or the brightness histogram in a partial area of the image data, texture, presence / absence of face, face size, hue, and a plurality of feature amounts are used. It is done. From the luminance histogram, the average luminance value, the maximum luminance value, and the minimum luminance value are acquired, and the hue is the average value of each of R, G, and B components in the image data, or the total number of pixels constituting the image data. The ratio of the number of R, G, and B component pixels that occupy a predetermined value or more is acquired. Since a method of acquiring a luminance histogram, hue, and texture as a feature amount is a method well known to those skilled in the art, a description thereof will be omitted. The presence / absence of a face, that is, face detection and face size detection, for example, includes a pattern matching method using a model face shape, a method for specifying a skin color hue region, and a method for detecting a face organ. Or they can be used in combination.

CPU11は、画像データベースに格納されている全ての画像データから特徴量を取得するまで(ステップS104:No)、ステップS100およびS102を繰り返し実行する。CPU11は、全画像データに対する特徴量の取得が終了すると(ステップS104:Yes)、正規化モジュールSM13を実行して取得した特徴量を種別毎に正規化する(ステップS106)。本実施例では、特徴量毎に各画像データの特徴量の標準偏差σを求め、求めた標準偏差σと以下の式を用いて平均が0、標準偏差が1となるように正規化が行われる。正規化値=(x−μ)/σ(xは正規化対象の特徴量の値、μは当該特徴量の平均値)。   The CPU 11 repeatedly executes steps S100 and S102 until the feature amount is acquired from all the image data stored in the image database (step S104: No). When the acquisition of feature amounts for all image data is completed (step S104: Yes), the CPU 11 normalizes the feature amounts acquired by executing the normalization module SM13 for each type (step S106). In this embodiment, the standard deviation σ of the feature amount of each image data is obtained for each feature amount, and normalization is performed using the obtained standard deviation σ and the following formula so that the average is 0 and the standard deviation is 1. Is called. Normalization value = (x−μ) / σ (x is a feature value to be normalized, and μ is an average value of the feature values).

CPU11は、クラスタリングモジュールSM14を実行して、正規化処理を終えた各特徴量をパラメータとして階層型クラスタリング手法によって、画像データベース13内の画像データを複数のクラスタに分類するクラスタリング処理を実行する(ステップS108)。本実施例では階層型クラスタリング手法として、図7に示すように、所定の特徴量を用いて全体を順に分割していく分割型クラスタリング手法を用いる。本実施例では、分割後のクラスタに対して、同一の所定の特徴量を複数回用いているが一度だけ用いる用にしても良い。図7の例では、先ず、正規化された特徴量に基づいて画像データ(画像)が顔を含むか否かによって画像データが分割される。続いて、顔を含むクラスタについては、顔の大きさが(顔の大きさを示す正規化された特徴量が)所定値以上(顔サイズ大)であるか所定値未満(顔サイズ小)であるかに基づいてさらに分割される。顔サイズ大のクラスタについては、顔が子供の顔であるか大人の顔であるか(年齢)に基づいて(例えば、顔の器官位置に関する特徴量に基づいて)更に分割される。顔サイズ小のクラスタについては、風景シーンであるか否か(青または緑の色相を示す正規化された特徴量が所定値以上であるか)に基づいてさらに分類される。風景シーンのクラスタについては、色相が青を示すか否かに基づき更に分割され、色相が青でないクラスタについては色相が緑を示すか否かに基づき更に分割される。顔を含まないクラスタについては、風景であるか否かに基づいて分類され、風景シーンでないクラスタについては、彩度が所定値以上(彩度大)であるか所定値未満(彩度小)であるかに基づいてさらに分割される。   The CPU 11 executes the clustering module SM14 and executes a clustering process for classifying the image data in the image database 13 into a plurality of clusters by a hierarchical clustering method using each feature amount after the normalization process as a parameter (step) S108). In this embodiment, as a hierarchical clustering method, as shown in FIG. 7, a divided clustering method is used in which the whole is sequentially divided using a predetermined feature amount. In the present embodiment, the same predetermined feature amount is used a plurality of times for the divided cluster, but may be used only once. In the example of FIG. 7, first, image data is divided based on whether or not the image data (image) includes a face based on the normalized feature amount. Subsequently, for a cluster including a face, the face size (a normalized feature amount indicating the face size) is greater than or equal to a predetermined value (large face size) or less than a predetermined value (small face size). It is further divided based on whether there is any. A cluster having a large face size is further divided based on whether the face is a child's face or an adult's face (age) (for example, based on a feature amount related to the organ position of the face). A cluster having a small face size is further classified based on whether or not it is a landscape scene (whether the normalized feature amount indicating the hue of blue or green is equal to or greater than a predetermined value). The scene scene cluster is further divided based on whether the hue indicates blue, and the cluster where the hue is not blue is further divided based on whether the hue indicates green. Clusters that do not include a face are classified based on whether or not they are landscapes. For clusters that are not landscape scenes, the saturation is greater than or equal to a predetermined value (high saturation) or less than a predetermined value (saturation low). It is further divided based on whether there is any.

クラスタの分割は、例えば、各クラスタに含まれる画像データの数が、画像データの検索時における計算負荷によって定まる所定画像データ数以下となるまで繰り返される。ここで、画像データの検索時における計算負荷とは、後述する検索画像データとクラスタに属する画像データとの類似度の計算の負荷(計算時間)であり、所定画像データ数は、例えば、計算時間が2秒以下となる画像データ数である。現在の一般的なサーバーの演算能力に基づき、この条件を満たす所定画像データ数としては、例えば、100〜300である。ただし、サーバーの演算能力の向上に伴って所定画像データ数は増大することは明らかである。階層型クラスタリング手法として、この他に、類似する画像データを集めることを繰り返す凝集型クラスタリング手法が用いられても良い。この場合にも各クラスタに属する画像データ数を所望の数に制御することができる。なお、階層型クラスタリング手法は、当業者にとって周知であるから更なる説明は省略する。   The division of the clusters is repeated until, for example, the number of image data included in each cluster is equal to or less than a predetermined number of image data determined by a calculation load at the time of image data search. Here, the calculation load at the time of image data search is a calculation load (calculation time) of similarity between search image data to be described later and image data belonging to a cluster, and the predetermined number of image data is, for example, calculation time Is the number of image data that is 2 seconds or less. The number of predetermined image data that satisfies this condition based on the current general server computing capacity is, for example, 100 to 300. However, it is clear that the number of predetermined image data increases as the computing capability of the server increases. In addition to this, an agglomerative clustering method that repeatedly collects similar image data may be used as the hierarchical clustering method. Also in this case, the number of image data belonging to each cluster can be controlled to a desired number. Since the hierarchical clustering method is well known to those skilled in the art, further explanation is omitted.

各画像データは、図8に示す管理テーブルによってクラスタに対応付けられることによって、クラスタ化が実現される。図8の例では、管理テーブルには画像データのファイル名と、所属クラスタと、正規化されていない特徴量とが記述されている。なお、管理テーブルに代えて、各画像データのヘッダに所属クラスタと、正規化されていない特徴量とが共通のフォーマットで記述されていても良い。   Each image data is associated with a cluster by the management table shown in FIG. 8, thereby realizing clustering. In the example of FIG. 8, the management table describes the file name of the image data, the cluster to which the image data belongs, and the unnormalized feature quantity. Instead of the management table, the belonging cluster and the unnormalized feature quantity may be described in a common format in the header of each image data.

CPU11は、クラスタリングによって得られた各クラスタの代表値(属性)を取得し、各クラスタに対応付けて(ステップS110)本処理ルーチンを終了する。すなわち、各クラスタについて属性を対応付けることで類似する画像データを迅速に特定するための画像インデックスを作成する。各クラスタの代表値は、例えば、各クラスタに属する画像データの正規化されていない各特徴量の平均値を求めることによって取得される。取得された各クラスタの代表値と各クラスタとは、例えば、図9に示すクラスタテーブルによって対応付けられる。図9の例では、属性(代表値)として輝度成分、R,G,B各成分、顔の大きさの平均値が各クラスタに対して対応付けられている。このクラスタテーブルは、メモリ12に格納されていてもよく、画像データベース(記憶装置12)の所定の領域に格納されていても良い。   The CPU 11 acquires a representative value (attribute) of each cluster obtained by clustering, associates it with each cluster (step S110), and ends this processing routine. That is, an image index for quickly identifying similar image data is created by associating attributes with each cluster. The representative value of each cluster is acquired by, for example, obtaining an average value of each feature amount that is not normalized of the image data belonging to each cluster. The acquired representative value of each cluster and each cluster are associated with each other by, for example, the cluster table shown in FIG. In the example of FIG. 9, luminance components, R, G, and B components, and the average face size are associated with each cluster as attributes (representative values). This cluster table may be stored in the memory 12 or may be stored in a predetermined area of the image database (storage device 12).

第2のクラスタリング手法:
図10は第2のクラスタリング手法として、非階層型クラスタリング手法を用いて画像インデックスを作成するために実行される処理ルーチンを示すフローチャートである。図11は第2のクラスタリング手法により生成されたクラスタの概念を示す説明図である。
Second clustering method:
FIG. 10 is a flowchart showing a processing routine executed for creating an image index using a non-hierarchical clustering technique as the second clustering technique. FIG. 11 is an explanatory diagram showing the concept of clusters generated by the second clustering method.

本処理ルーチンは、例えば、画像データベースに対して画像インデックスを作成する最初のタイミングにて、あるいは、画像データベースに所定量の新規な画像データが追加されたタイミングにて画像サーバー10によって実行される。なお、第1のクラスタリング手法を用いた画像インデックスの生成方法とは、クラスタリング手法が第2のクラスタリング手法である点を除いて同様であるから同一のステップ(処理)については、第1のクラスタリング手法の説明において用いたステップ番号と同一のステップ番号を付す。画像サーバー10(CPU11)は画像データ取得モジュールSM11を実行して、画像データベース13から画像データを取得する(ステップS100)。取得された画像データは一時的にメモリ12に格納される。   This processing routine is executed by the image server 10 at, for example, the first timing of creating an image index for the image database, or at the timing when a predetermined amount of new image data is added to the image database. Since the image index generation method using the first clustering method is the same except that the clustering method is the second clustering method, the same steps (processes) are the same as the first clustering method. The same step number as the step number used in the description of FIG. The image server 10 (CPU 11) executes the image data acquisition module SM11 and acquires image data from the image database 13 (step S100). The acquired image data is temporarily stored in the memory 12.

CPU11は特徴量取得モジュールSM12を実行して、メモリ12に格納されている画像データから複数の特徴量を取得する(ステップS102)。本実施例において用いられる特徴量は、例えば、画像データの輝度または画像データの一部の領域における輝度のヒストグラム、テクスチャ、顔の有無、顔の大きさ、色相であり、複数の特徴量が用いられる。輝度のヒストグラムからは、平均輝度値、最高輝度値、最小輝度値が取得され、色相としては、画像データにおけるR、G、B各成分の平均値、または、画像データを構成する全画素数に占める所定値以上のR、G、B成分画素数の割合が取得される。輝度のヒストグラム、色相、テクスチャを特徴量として取得する方法は当業者にとって周知の方法であるから説明を省略する。また、顔の有無、すなわち顔検出、および顔の大きさの検出は、例えば、モデル顔形状を用いたパターンマッチング法、肌色の色相領域を特定する方法、顔の器官を検出する方法がそれぞれ単独または組み合わせて用いられ得る。   The CPU 11 executes the feature amount acquisition module SM12 and acquires a plurality of feature amounts from the image data stored in the memory 12 (step S102). The feature amount used in this embodiment is, for example, the brightness of the image data or the brightness histogram in a partial area of the image data, texture, presence / absence of face, face size, hue, and a plurality of feature amounts are used. It is done. From the luminance histogram, the average luminance value, the maximum luminance value, and the minimum luminance value are acquired, and the hue is the average value of each of R, G, and B components in the image data, or the total number of pixels constituting the image data. The ratio of the number of R, G, and B component pixels that occupy a predetermined value or more is acquired. Since a method of acquiring a luminance histogram, hue, and texture as a feature amount is a method well known to those skilled in the art, a description thereof will be omitted. The presence / absence of a face, that is, face detection and face size detection, for example, includes a pattern matching method using a model face shape, a method for specifying a skin color hue region, and a method for detecting a face organ. Or they can be used in combination.

CPU11は、画像データベースに格納されている全ての画像データから特徴量を取得するまで(ステップS104:No)、ステップS100およびS102を繰り返し実行する。CPU11は、全画像データに対する特徴量の取得が終了すると(ステップS104:Yes)、正規化モジュールSM13を実行して取得した特徴量を種別毎に正規化する(ステップS106)。本実施例では、特徴量毎に各画像データの特徴量の標準偏差σを求め、求めた標準偏差σと以下の式を用いて平均が0、標準偏差が1となるように正規化が行われる。正規化値=(x−μ)/σ(xは正規化対象の特徴量の値、μは当該特徴量の平均値)。   The CPU 11 repeatedly executes steps S100 and S102 until the feature amount is acquired from all the image data stored in the image database (step S104: No). When the acquisition of feature amounts for all image data is completed (step S104: Yes), the CPU 11 normalizes the feature amounts acquired by executing the normalization module SM13 for each type (step S106). In this embodiment, the standard deviation σ of the feature amount of each image data is obtained for each feature amount, and normalization is performed using the obtained standard deviation σ and the following formula so that the average is 0 and the standard deviation is 1. Is called. Normalization value = (x−μ) / σ (x is a feature value to be normalized, and μ is an average value of the feature values).

CPU11は、クラスタリングモジュールSM14を実行して、正規化処理を終えた各特徴量をパラメータとして非階層型クラスタリング手法によって、画像データベース13内の画像データを複数のクラスタに分類するクラスタリング処理を実行する(ステップS109)。本実施例では非階層型クラスタリング手法として、図11に示すようにK−平均法を用いる。図11の例では、縦軸および横軸は0〜1の値を取り、正規化された2つの特徴量(特徴量A、特徴量B)がプロットされる。先ず、生成すべきクラスタ数Kを決定し、任意のクラスタ中心点(位置)CPをK個決定する(K個の仮のクラスタを生成する。続いて、各クラスタの重心、例えば、各クラスタに属する画像データの特徴量A、Bの各平均を算出し、各画像データ(の座標位置)と各クラスタの重心(の座標位置)間の距離を求め、各画像データを最も距離が近いクラスタに再割当てする。各画像データが移動しなくなるまで、あるいは、各画像データと各クラスタの重心距離が所定距離以下となるまで、画像データの再割当てを繰り返し実行する。各画像データの座標と各クラスタの重心の座標との距離は、例えば、当業者にとって周知のユークリッド距離、マハラノビス距離、マンハッタン距離によって求めることができる。非階層型クラスタリング手法として、この他にも、自己組織化マップ(SOM)等を用いることができる。   The CPU 11 executes the clustering module SM14 and executes a clustering process for classifying the image data in the image database 13 into a plurality of clusters by a non-hierarchical clustering method using each feature amount after the normalization process as a parameter ( Step S109). In this embodiment, as a non-hierarchical clustering method, a K-average method is used as shown in FIG. In the example of FIG. 11, the vertical axis and the horizontal axis take values of 0 to 1, and two normalized feature quantities (feature quantity A and feature quantity B) are plotted. First, the number K of clusters to be generated is determined, and K arbitrary cluster center points (positions) CP are determined (K temporary clusters are generated. Subsequently, the center of gravity of each cluster, for example, each cluster is determined. The respective averages of the feature amounts A and B of the image data to which it belongs are calculated, the distance between each image data (coordinate position) and the center of gravity (coordinate position) of each cluster is obtained, and each image data is set to the nearest cluster. The image data is reassigned repeatedly until each image data does not move, or until the center-of-gravity distance between each image data and each cluster is equal to or less than a predetermined distance. The distance from the coordinates of the center of gravity can be determined by, for example, the Euclidean distance, Mahalanobis distance, and Manhattan distance known to those skilled in the art. As, In addition to this, it is possible to use a self-organizing map (SOM) and the like.

各画像データは、図8に示す管理テーブルによってクラスタに対応付けられることによって、クラスタ化が実現される。CPU11は、クラスタリングによって得られた各クラスタの代表値(属性)を取得し、各クラスタに対応付けて(ステップS110)本処理ルーチンを終了する。すなわち、各クラスタについて属性を対応付けることで類似する画像データを迅速に特定するための画像インデックスを作成する。各クラスタの代表値は、各クラスタに属する画像データの正規化されていない特徴量の平均値を求めることによって取得される。取得された各クラスタの代表値と各クラスタとは、例えば、図9に示すクラスタテーブルによって対応付けられる。   Each image data is associated with a cluster by the management table shown in FIG. 8, thereby realizing clustering. The CPU 11 acquires a representative value (attribute) of each cluster obtained by clustering, associates it with each cluster (step S110), and ends this processing routine. That is, an image index for quickly identifying similar image data is created by associating attributes with each cluster. The representative value of each cluster is obtained by obtaining an average value of unnormalized feature amounts of image data belonging to each cluster. The acquired representative value of each cluster and each cluster are associated with each other by, for example, the cluster table shown in FIG.

画像データの検索:
図12は本実施例に係る画像サーバーにおいて実行される画像検索処理ルーチンを示すフローチャートである。図13は本実施例に係るプリンターにおいて実行される画像検索要求処理ルーチンを示すフローチャートである。図14は第2のクラスタリング手法によって形成されたクラスタを用いた画像データの検索処理の概念を模式的に示す説明図である。なお、以下では図12および図13を適宜参照しつつ説明する。
Search for image data:
FIG. 12 is a flowchart showing an image search processing routine executed in the image server according to the present embodiment. FIG. 13 is a flowchart illustrating an image search request processing routine executed in the printer according to the present embodiment. FIG. 14 is an explanatory diagram schematically showing the concept of image data search processing using clusters formed by the second clustering method. Hereinafter, description will be made with reference to FIGS. 12 and 13 as appropriate.

図13を参照して説明する。プリンター20(CPU210)は、画像データ特定モジュールCM11を実行して、表示部23に表示されている画像の内、ユーザによって特定された画像(検索画像)に対応する検索画像データを特定する(ステップS300)。表示部23に表示される画像は、例えば、可搬式半導体記憶装置に格納されている画像データであり、入力操作部22を介して選択される。CPU210は、検索要求モジュールCM12を実行して、検索画像データを画像サーバー10に送信する(ステップS302)。具体的には、外部入出力インターフェース25、ネットワークNEを介して画像サーバー10に送信される。   This will be described with reference to FIG. The printer 20 (CPU 210) executes the image data specifying module CM11 and specifies the search image data corresponding to the image (search image) specified by the user from among the images displayed on the display unit 23 (step). S300). The image displayed on the display unit 23 is, for example, image data stored in a portable semiconductor memory device, and is selected via the input operation unit 22. The CPU 210 executes the search request module CM12 and transmits the search image data to the image server 10 (step S302). Specifically, the image data is transmitted to the image server 10 via the external input / output interface 25 and the network NE.

図12を参照して説明する。画像サーバー10(CPU11)は、画像データ取得モジュールSM21を実行して、プリンター20から送信されてきた検索画像データを取得する(ステップS200)。具体的には、入出力インターフェース14を介して検索画像データが画像サーバー10内に取り込まれ、メモリ12に格納される。CPU11は、検索画像データ特徴量取得モジュールSM23を実行して、検索画像データの複数の特徴量を取得する(ステップS202)。特徴量としては、検索精度を向上させるため、例えば、画像サーバー10がクラスタリングに際して用いた複数の特徴量が取得される。特徴量の取得の方法については画像インデックスの作成において既述したとおりである。   This will be described with reference to FIG. The image server 10 (CPU 11) executes the image data acquisition module SM21 to acquire the search image data transmitted from the printer 20 (step S200). Specifically, the search image data is taken into the image server 10 via the input / output interface 14 and stored in the memory 12. The CPU 11 executes the search image data feature amount acquisition module SM23 to acquire a plurality of feature amounts of the search image data (step S202). As the feature amount, in order to improve the search accuracy, for example, a plurality of feature amounts used by the image server 10 for clustering are acquired. The method for acquiring the feature amount is as described in the creation of the image index.

CPU11は、類似度算出モジュールSM24を実行して、検索画像データに類似・一致する複数のクラスタを検索する(ステップS204)。具体的には、取得した検索画像データの各特徴量の値と、各クラスタに対応付けられている属性(各特徴量の代表値)とを用いて類似度を算出される。類似度は、例えば、ユークリッド距離、マハラノビス距離といった距離算出方法によって算出された、検索画像データの特徴量と、各クラスタに対応付けられている代表値との間の距離、すなわち、検索画像データの特徴量と各クラスタの代表値によって表される多元ベクトル間の距離を用いて判断され、得られた距離が短いほど類似していると判断される。あるいは、検索画像データの各特徴量の多元ベクトルと、各クラスタの対応する代表値の多元ベクトルとの内積を求めて判断されても良い。この場合には、内積の値が1の近いほど類似度が高いと判断することができる。なお、これら類似度を算出するための各距離の算出手法および内積の演算式は当業者にとって周知であるから説明を省略する。たとえば、図14に示す、画像データベースの画像インデックスがK平均法によって形成されている場合には、検索画像データTDに近い代表値を有するクラスタが複数選択される。なお、図14において縦軸および横軸は各特徴量の正規化されていない実値である。また、画像データベースの画像インデックスが階層型クラスタリング手法によって形成されている場合にも、検索画像データに近い代表値を有する複数のクラスタ、一般的には同じ枝から分割された複数のクラスタが選択される。なお、複数のクラスタの選択は、予めしきい値としての距離を決めておいても良く、あるいは、選択すべきクラスタ数を決めておいても良い。   The CPU 11 executes the similarity calculation module SM24 and searches for a plurality of clusters that are similar to or match the search image data (step S204). Specifically, the similarity is calculated using the value of each feature value of the acquired search image data and the attribute (representative value of each feature value) associated with each cluster. The similarity is, for example, the distance between the feature amount of the search image data calculated by a distance calculation method such as the Euclidean distance or the Mahalanobis distance, and the representative value associated with each cluster, that is, the search image data Judgment is made using the distance between the multi-element vectors represented by the feature quantity and the representative value of each cluster, and the shorter the obtained distance, the more similar it is judged. Alternatively, the determination may be made by obtaining the inner product of the multi-vector of each feature quantity of the search image data and the multi-vector of the representative value corresponding to each cluster. In this case, the closer the inner product value is to 1, the higher the similarity can be determined. It should be noted that the calculation method of each distance and the calculation formula of the inner product for calculating the similarity are well known to those skilled in the art, and thus description thereof is omitted. For example, when the image index of the image database shown in FIG. 14 is formed by the K-average method, a plurality of clusters having representative values close to the search image data TD are selected. In FIG. 14, the vertical axis and the horizontal axis are unnormalized actual values of the feature amounts. Even when the image index of the image database is formed by the hierarchical clustering method, a plurality of clusters having representative values close to the search image data, generally a plurality of clusters divided from the same branch, are selected. The In selecting a plurality of clusters, a distance as a threshold value may be determined in advance, or the number of clusters to be selected may be determined.

CPU11は、類似度算出モジュールSM24を実行して、検索によって得られた複数のクラスタに属する複数の画像データから、検索画像データに一致または類似する複数の画像データを検索する(ステップS206)。類似または一致の判断は、検索画像データの各特徴量と各クラスタに属する各画像データの各特徴量とを用いて、既述の類似度を算出することによって行われる。なお、複数の画像データの選択は、予めしきい値としての距離を決めておいても良く、あるいは、画像データ数を決めておいても良い。   The CPU 11 executes the similarity calculation module SM24 to search for a plurality of image data that matches or is similar to the search image data from the plurality of image data belonging to the plurality of clusters obtained by the search (step S206). Similarity or coincidence is determined by calculating the above-described similarity using each feature amount of the search image data and each feature amount of each image data belonging to each cluster. In selecting a plurality of image data, a distance as a threshold value may be determined in advance, or the number of image data may be determined.

CPU11は検出した複数の画像データを、検索要求の送信元であるプリンター20に対して送信して(ステップS208))本処理ルーチンを終了する。なお、いずれのプリンター20から検索要求が送信されたかについては、たとえば、プリンター20が備える外部入出力インターフェース25の識別情報(例えば、MACアドレス)によって識別することができ、当該識別情報を用いて検索要求の送信元であるプリンター20に対して複数の画像データを送信することができる。   The CPU 11 transmits the detected plurality of image data to the printer 20 that is the transmission source of the search request (step S208), and ends this processing routine. Note that the printer 20 from which the search request is transmitted can be identified by, for example, identification information (for example, a MAC address) of the external input / output interface 25 provided in the printer 20, and the search is performed using the identification information. A plurality of pieces of image data can be transmitted to the printer 20 that is the transmission source of the request.

図13を参照して説明する。プリンター20は、複数の画像データを受信する(ステップS304)と、検索結果取得モジュールCM13を実行して、メモリ211に格納する。CPU210は、検索結果表示モジュールCM14を実行して、メモリ211に格納されている画像データを表示部23上に表示させて(ステップS306)本処理ルーチンを終了する。   This will be described with reference to FIG. When the printer 20 receives a plurality of image data (step S304), the printer 20 executes the search result acquisition module CM13 and stores it in the memory 211. The CPU 210 executes the search result display module CM14 to display the image data stored in the memory 211 on the display unit 23 (step S306), and ends this processing routine.

以上説明した本実施例に係る画像インデックスの作成方法、画像サーバー、画像検索方法、プリンターによれば、画像インデックスを用いて所望の画像データを検査することができるので、特徴量を用いて画像データを検索する場合であっても、画像データ検索速度を向上させることができる。また、画像インデックスの作成に際して、画像データの複数の特徴量を用いてクラスタリングを実行するので、画像データの検索精度を低下させることなく画像データの検索速度を向上させることができる。   According to the image index creation method, the image server, the image search method, and the printer according to the present embodiment described above, desired image data can be inspected using the image index. Even when searching, it is possible to improve the image data search speed. In addition, since clustering is performed using a plurality of feature amounts of image data when an image index is created, the image data search speed can be improved without reducing the image data search accuracy.

また、画像データに関連付けられた画像データの内容を記述するメタデータを用いることなく、画像データの特徴量に基づいて画像データを検索するので、言葉(キーワード)を用いて画像データを特定する必要が無く画像データの検索を容易化することができる。さらに、主観的なメタデータに依存しないので、画像データの検索の客観性を高めることが可能となり、画像データの検索精度を向上させることができる。   In addition, the image data is searched based on the feature amount of the image data without using the metadata describing the contents of the image data associated with the image data, so it is necessary to specify the image data using words (keywords). This makes it easy to search for image data. Furthermore, since it does not depend on subjective metadata, the objectivity of image data search can be improved, and the image data search accuracy can be improved.

第1のクラスタリング手法として階層型クラスタリング手法を用いる場合には、各クラスタに属する画像データ数を任意の数に調整することが可能となるので、個々の画像サーバーの検索処理能力に応じた画像データ数を含むように各クラスタを生成することによって、画像データの検索時間の遅延を抑制することができる。   When the hierarchical clustering method is used as the first clustering method, the number of image data belonging to each cluster can be adjusted to an arbitrary number, so that the image data according to the search processing capability of each image server. By generating each cluster so as to include a number, it is possible to suppress a delay in the search time for image data.

また、分割型の第1のクラスタリング手法では、1回の分割に用いられる特徴量が1つであるため各クラスタの属性を、例えば、風景、顔画像ありといったように特定し易い。したがって、画像データの提供サービス等において各クラスタに対してテキストによる説明を付すことも可能となり、利用者が所望する画像データを提供しやすいという利点がある。   In addition, since the division type first clustering method has one feature amount used for one division, it is easy to specify the attribute of each cluster, for example, a landscape or a face image. Accordingly, it is possible to provide a text description for each cluster in an image data providing service or the like, and there is an advantage that it is easy to provide image data desired by the user.

第2のクラスタリング手法としてK平均法(非階層型クラスタリング手法)を用いる場合には、複数の正規化された特徴量を用いてクラスタリングが実行されるので、各画像データの特徴を複数の特徴量によって表すことが可能となり、各画像データの特徴をより反映した画像インデックスに基づいて画像データの検索を行うことができる。   When the K-means method (non-hierarchical clustering method) is used as the second clustering method, clustering is performed using a plurality of normalized feature amounts. The image data can be searched based on the image index more reflecting the characteristics of each image data.

・その他の実施例:
(1)上記実施例では、画像サーバー10として、クライアントからの要求に応じての画像データベースを検索するサーバーコンピューターを例にとって説明したが、例えば、パーソナルコンピューター30の記憶装置に格納されているローカルな画像データベースに対して上記した画像インデックスを作成しても良い。すなわち、画像サーバーはネットワークに接続されていない、スタンドアローンのパーソナルコンピューターまたはプリンターが有する機能の一部、さらにはコンピュータープログラム、コンピュータープログラムが格納されたコンピューター読み取り可能媒体として実現されても良い。この場合には、パーソナルユースにおける画像データ検索の利便性、すなわち、検索速度の向上、検索精度の向上、検索の容易化を実現することができる。さらに、プリンター20に大容量記憶装置が備えられている場合には、上記した画像インデックスの作成、画像検索方法は、プリンター20におけるローカルな画像データ検索に適用されても良い。なお、コンピューター読み取り可能媒体としては、CD、DVD、ハードディスクドライブ、フラッシュメモリといった種々の記録媒体を用いることができる。
Other examples:
(1) In the above embodiment, a server computer that searches an image database in response to a request from a client has been described as an example of the image server 10, but for example, a local computer stored in a storage device of the personal computer 30 is used. The above-described image index may be created for the image database. In other words, the image server may be realized as a part of the functions of a stand-alone personal computer or printer that is not connected to a network, as well as a computer program and a computer-readable medium storing the computer program. In this case, it is possible to realize convenience of image data search in personal use, that is, improvement in search speed, improvement in search accuracy, and ease of search. Furthermore, when the printer 20 is provided with a large-capacity storage device, the above-described image index creation and image search method may be applied to local image data search in the printer 20. As the computer-readable medium, various recording media such as a CD, a DVD, a hard disk drive, and a flash memory can be used.

(2)本実施例に係る画像インデックスの作成では、画像データの特徴量として、輝度、色相、テクスチャ、顔の大きさ、顔の有無を用いているが、他の特徴量が用いられることは言うまでもない。例えば、画像データのコントラスト、彩度、顔の目、鼻、口といった器官の配置位置(パターン)、露出補正量、撮影シーン情報といった特徴量を用いることができる。これらの特徴量を用いることによって、目的に合った画像インデックスを作成することが可能となり、ユーザの所望する画像データの検索結果を得ることができる。 (2) In the creation of an image index according to the present embodiment, brightness, hue, texture, face size, and presence / absence of a face are used as the feature amount of image data, but other feature amounts may be used. Needless to say. For example, it is possible to use feature amounts such as contrast of image data, saturation, arrangement positions (patterns) of organs such as face eyes, nose, mouth, exposure correction amount, and shooting scene information. By using these feature amounts, an image index suitable for the purpose can be created, and a search result of image data desired by the user can be obtained.

(3)上記実施例では、画像インデックスを作成するための画像インデックス作成プログラムおよび画像検索プログラムの双方を備える画像サーバーを用いて説明したが、画像サーバーは、画像インデックス作成プログラムまたは画像検索プログラムのいずれか一方を備えていても良い。例えば、既に構築されている外部の画像データベースを用いる場合には画像サーバーには画像検索プログラムのみが備えられていればよく、画像検索プログラムがクライアントに備えられている場合には画像サーバーには画像インデックス作成プログラムのみが備えられていれば良い。いずれの態様を取るかは、どのような態様のシステム構成が用いられるかに依存して決定すれば良い。 (3) In the above embodiment, the image server including both the image index creation program and the image search program for creating the image index has been described. However, the image server may be either an image index creation program or an image search program. Either may be provided. For example, when an external image database that has already been constructed is used, the image server only needs to have an image search program. When the image search program is provided to the client, the image server has an image search program. It is sufficient if only an index creation program is provided. Which aspect is taken may be determined depending on what kind of system configuration is used.

(4)上記実施例では、テキストによるクラスタの説明を行っていないが、例えば、分割型の第1のクラスタリング手法による場合には、各クラスタに対してテキストによる説明を付して、利用者が所望する画像データを選択しやすい環境を整えても良い。この場合には、画像データの特徴量に加えて、ユーザが所望する属性を有するクラスタの選択を促すことによって、よりユーザのニーズに合った画像データの検索結果を提供することができる。 (4) In the above embodiment, the description of the clusters by text is not performed. However, for example, in the case of the split type first clustering method, each cluster is described by text, and the user An environment in which desired image data can be easily selected may be prepared. In this case, in addition to the feature amount of the image data, it is possible to provide a search result of the image data more suitable for the user's needs by prompting selection of a cluster having the attribute desired by the user.

(5)上記実施例において、画像データベースに含まれる画像データが増加した場合には、第1および第2のクラスタリング手法において再度、画像インデックスを形成するための処理が実行され、画像データベースに含まれる画像データが低減した場合には、第1および第2のクラスタリング手法において、クラスタの代表値のみを再計算すれば良い。一般的に、第2のクラスタリング手法では、各クラスタの代表値が求められるに過ぎず、各クラスタに対する画像データの所属は問われないが、図9を用いて説明したテーブルによって管理すれば、各画像データが属するクラスタを明らかにすることができる。 (5) In the above embodiment, when the image data included in the image database increases, the processing for forming the image index is executed again in the first and second clustering methods and included in the image database. When the image data is reduced, only the representative values of the clusters need be recalculated in the first and second clustering methods. Generally, in the second clustering method, only a representative value of each cluster is obtained, and the affiliation of the image data to each cluster is not questioned. However, if managed by the table described with reference to FIG. The cluster to which the image data belongs can be clarified.

(6)上記実施例では、複数のクラスタおよび複数の画像データを検索しているが、絞り込み検索に時間を要しない場合には、単一のクラスタおよび単一の画像データを検索しても良い。この場合には、ユーザの更なる選択を不要にすることができる。 (6) In the above-described embodiment, a plurality of clusters and a plurality of image data are searched. However, when time is not required for the narrowing search, a single cluster and a single image data may be searched. . In this case, further selection by the user can be eliminated.

以上、実施例、変形例に基づき本発明について説明してきたが、上記した発明の実施の形態は、本発明の理解を容易にするためのものであり、本発明を限定するものではない。本発明は、その趣旨並びに特許請求の範囲を逸脱することなく、変更、改良され得ると共に、本発明にはその等価物が含まれる。   As mentioned above, although this invention was demonstrated based on the Example and the modification, Embodiment mentioned above is for making an understanding of this invention easy, and does not limit this invention. The present invention can be changed and improved without departing from the spirit and scope of the claims, and equivalents thereof are included in the present invention.

ISS…画像検索システム
10…サーバーコンピューター(画像サーバー)
11…CPU
12…メモリ
13…記憶装置(画像データベース)
14…入出力インターフェース
20…プリンター
21…制御回路
22…入力操作部
23…表示部
24…印刷部
25…外部入出力インターフェース
210…CPU
211…メモリ
212…入出力インターフェース
30…パーソナルコンピューター
31…表示ディスプレイ
32…入力装置
CP1…画像検索要求プログラム
CM11…画像データ特定モジュール
CM12…検索要求モジュール
CM13…検索結果取得モジュール
CM14…検索結果表示モジュール
SP1…画像インデックス作成プログラム
SM11…画像データ取得モジュール
SM12…特徴量取得モジュール
SM13…正規化モジュール
SM14…クラスタリングモジュール
SM15…インデックス作成モジュール
SP2…画像検索プログラム
SM21…検索画像データ取得モジュール
SM22…画像データ検索モジュール
SM23…検索画像データ特徴量取得モジュール
SM24…類似度算出モジュール
TD…検索画像データ
NE…ネットワーク
ISS ... Image search system 10 ... Server computer (image server)
11 ... CPU
12 ... Memory 13 ... Storage device (image database)
DESCRIPTION OF SYMBOLS 14 ... Input / output interface 20 ... Printer 21 ... Control circuit 22 ... Input operation part 23 ... Display part 24 ... Printing part 25 ... External input / output interface 210 ... CPU
211 ... Memory 212 ... Input / output interface 30 ... Personal computer 31 ... Display display 32 ... Input device CP1 ... Image search request program CM11 ... Image data identification module CM12 ... Search request module CM13 ... Search result acquisition module CM14 ... Search result display module SP1 Image index creation program SM11 Image data acquisition module SM12 Feature quantity acquisition module SM13 Normalization module SM14 Clustering module SM15 Index creation module SP2 Image search program SM21 Image search data acquisition module SM22 Image data search module SM23 ... Search image data feature acquisition module SM24 ... Similarity calculation module TD ... Search image data Data NE ... network

Claims (11)

画像サーバーであって、
複数の画像を格納する記憶装置と、
前記格納されている複数の画像のそれぞれについて、画像の特徴を表す複数の特徴量を取得する特徴量取得部と、
各前記画像から取得した前記複数の特徴量を正規化する正規化部と、
階層型クラスタリング手法によって、前記各画像から取得し正規化した前記複数の特徴量を用いて、画像検索時における計算負荷によって定まる所定画像数以下の画像を含むクラスタを複数作成するクラスタ処理実行部と、
作成した各前記クラスタの属性を決定し、前記各クラスタにそれぞれ対応づけるインデックス作成部と
を備える画像サーバー。
An image server,
A storage device for storing a plurality of images;
For each of the plurality of stored images, a feature amount acquisition unit that acquires a plurality of feature amounts representing image features;
A normalization unit that normalizes the plurality of feature amounts acquired from each of the images;
A cluster processing execution unit that creates a plurality of clusters including images equal to or less than a predetermined number of images determined by a calculation load at the time of image search using the plurality of feature amounts acquired and normalized from each image by a hierarchical clustering method; ,
An image server comprising an index creation unit that determines an attribute of each created cluster and associates the attribute with each cluster.
請求項1に記載の画像サーバーにおいて、
前記正規化部は、標準偏差を用いて前記複数の特徴量を正規化する、画像サーバー。
The image server according to claim 1,
The normalization unit is an image server that normalizes the plurality of feature amounts using a standard deviation.
請求項1または2に記載の画像サーバーにおいて、
前記特徴量は、輝度、色相、テクスチャ、顔の大きさのうちの少なくとも2つを含む、画像サーバー。
The image server according to claim 1 or 2,
The feature server includes at least two of brightness, hue, texture, and face size.
請求項1から3のいずれかに記載の画像サーバーにおいて、
前記所定画像数は100〜300である画像サーバー。
The image server according to any one of claims 1 to 3,
An image server in which the predetermined number of images is 100 to 300.
画像サーバーにおけるインデックス作成方法であって、
複数の画像のそれぞれについて、画像の特徴を表す複数の特徴量を取得し、
各前記画像から取得した前記複数の特徴量を正規化し、
階層型クラスタリング手法によって、前記各画像から取得し正規化した前記複数の特徴量を用いて、画像検索時における計算負荷によって定まる所定画像数以下の画像が属するクラスタを複数作成し、
作成した各前記クラスタの属性を決定し、前記クラスタにそれぞれ対応づける
インデックス作成方法。
An indexing method in an image server,
For each of a plurality of images, obtain a plurality of feature amounts representing the features of the image,
Normalizing the plurality of feature quantities acquired from each of the images;
Using a plurality of feature quantities acquired and normalized from each image by a hierarchical clustering method, a plurality of clusters to which images of a predetermined number of images or less determined by a calculation load at the time of image search belong,
An index creation method for determining an attribute of each created cluster and associating it with the cluster.
画像サーバーであって、
階層型クラスタリング手法によって、予め複数のクラスタにクラスタリングされた複数の画像データを記憶する記憶装置と、
検索の対象となる画像である検索画像を取得する検索画像取得部と、
前記複数のクラスタの中から前記検索画像に近似する複数のクラスタを選択し、選択した各前記クラスタに属する複数の画像から検索画像に近似する画像を複数選択する検索部と、
前記検索部によって検索された複数の画像を検索結果として出力する出力部とを備える画像サーバー。
An image server,
A storage device for storing a plurality of image data clustered in advance into a plurality of clusters by a hierarchical clustering method;
A search image acquisition unit for acquiring a search image that is an image to be searched;
A search unit that selects a plurality of clusters that approximate the search image from the plurality of clusters, and that selects a plurality of images that approximate the search image from a plurality of images belonging to each of the selected clusters;
An image server comprising: an output unit that outputs a plurality of images searched by the search unit as a search result.
請求項6に記載の画像サーバーにおいて、
前記クラスタにはクラスタの特徴を表す属性が関連づけられており、
前記検索部は、前記検索画像の特徴量を取得し、取得した特徴量と前記属性とを用いて前記近似する複数のクラスタを選択する
画像サーバー。
The image server according to claim 6,
The cluster is associated with an attribute representing the characteristics of the cluster,
The search unit is an image server that acquires a feature amount of the search image and selects the plurality of approximate clusters using the acquired feature amount and the attribute.
請求項7に記載の画像サーバーにおいて、
前記検索部は、前記選択したクラスタに含まれている画像の特徴量を取得し、前記選択したクラスタに含まれている画像の特徴量、取得した前記検索画像の特徴量とを用いて前記近似する複数の画像を選択する
画像サーバー。
The image server according to claim 7, wherein
The search unit acquires a feature amount of an image included in the selected cluster, and uses the feature amount of an image included in the selected cluster and the acquired feature amount of the search image to perform the approximation. An image server that selects multiple images to perform.
請求項6から8のいずれかに記載の画像サーバーはさらに、
複数の画像のそれぞれについて、画像の特徴を表す複数の特徴量を取得する特徴量取得部と、
各前記画像から取得した前記複数の特徴量を正規化する正規化部と、
階層型クラスタリング手法によって、前記各画像から取得し正規化した前記複数の特徴量を用いて、画像検索時における計算負荷によって定まる所定画像数以下の画像を含むクラスタを複数作成するクラスタ実行部と、
作成した各前記クラスタの属性を決定し、前記求めた属性を前記クラスタにそれぞれ対応づけるインデックス作成部と
を備える画像サーバー。
The image server according to any one of claims 6 to 8, further comprising:
For each of the plurality of images, a feature amount acquisition unit that acquires a plurality of feature amounts representing the features of the image;
A normalization unit that normalizes the plurality of feature amounts acquired from each of the images;
A cluster execution unit that creates a plurality of clusters including images equal to or less than a predetermined number of images determined by a calculation load at the time of image search using the plurality of feature amounts acquired and normalized from each image by a hierarchical clustering method;
An image server comprising: an index creating unit that determines an attribute of each created cluster and associates the obtained attribute with the cluster.
画像検索システムであって、
請求項6から9のいずれかに記載の画像サーバーと、
前記画像サーバーにネットワークを介してアクセス可能なプリンターであって、
前記画像サーバーに対して前記検索画像を送信する送信部と、
前記画像サーバーから出力された前記検索結果としての複数の画像を受け取る受信部と、
前記受信した画像を出力する表示部
とを備えるプリンターとを備える、
画像検索システム。
An image search system,
An image server according to any one of claims 6 to 9,
A printer capable of accessing the image server via a network,
A transmission unit for transmitting the search image to the image server;
A receiving unit for receiving a plurality of images as the search results output from the image server;
A printer comprising a display unit for outputting the received image.
Image search system.
画像検索方法であって、
検索の対象となる画像である検索画像を取得し、
記憶装置に格納されている複数の画像データを用いて、階層型クラスタリング手法によって予めクラスタリングされた複数のクラスタの中から前記検索画像に近似する複数のクラスタを選択し、
選択した各前記クラスタに属する複数の画像から検索画像に近似する画像を複数選択し、
前記選択された複数の画像を検索結果として出力、画像検索方法。
An image search method,
Retrieve the search image that is the target of the search,
Using a plurality of image data stored in the storage device, selecting a plurality of clusters that approximate the search image from a plurality of clusters clustered in advance by a hierarchical clustering method,
Select a plurality of images that approximate the search image from a plurality of images belonging to each of the selected clusters,
An image search method for outputting the selected plurality of images as a search result.
JP2009100503A 2009-04-17 2009-04-17 Image server, image retrieval system, image retrieval method, and index creation method Pending JP2010250633A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2009100503A JP2010250633A (en) 2009-04-17 2009-04-17 Image server, image retrieval system, image retrieval method, and index creation method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2009100503A JP2010250633A (en) 2009-04-17 2009-04-17 Image server, image retrieval system, image retrieval method, and index creation method

Publications (1)

Publication Number Publication Date
JP2010250633A true JP2010250633A (en) 2010-11-04

Family

ID=43312875

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2009100503A Pending JP2010250633A (en) 2009-04-17 2009-04-17 Image server, image retrieval system, image retrieval method, and index creation method

Country Status (1)

Country Link
JP (1) JP2010250633A (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108052535A (en) * 2017-11-15 2018-05-18 国家计算机网络与信息安全管理中心 The parallel fast matching method of visual signature and system based on multi processor platform
JP2021103570A (en) * 2020-04-23 2021-07-15 ベイジン バイドゥ ネットコム サイエンス アンド テクノロジー カンパニー リミテッド Method for searching for image, device, apparatus, and medium

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108052535A (en) * 2017-11-15 2018-05-18 国家计算机网络与信息安全管理中心 The parallel fast matching method of visual signature and system based on multi processor platform
CN108052535B (en) * 2017-11-15 2021-02-05 国家计算机网络与信息安全管理中心 Visual feature parallel rapid matching method and system based on multiprocessor platform
JP2021103570A (en) * 2020-04-23 2021-07-15 ベイジン バイドゥ ネットコム サイエンス アンド テクノロジー カンパニー リミテッド Method for searching for image, device, apparatus, and medium
US11836186B2 (en) 2020-04-23 2023-12-05 Beijing Baidu Netcom Science And Technology Co., Ltd. Method and apparatus for retrieving image, device, and medium

Similar Documents

Publication Publication Date Title
US10296534B2 (en) Storing and searching fingerprints derived from media content based on a classification of the media content
US20200372294A1 (en) Video Content Indexing and Searching
KR101325110B1 (en) Information processing apparatus and method, and computer-readable recording medium
JP2006508446A5 (en)
US20100217755A1 (en) Classifying a set of content items
JP2011070412A (en) Image retrieval device and image retrieval method
JP5976115B2 (en) Image search method
JP2014123341A (en) Information processor, information processing method, program and recording medium
US20120314962A1 (en) Auto-recognition for noteworthy objects
JP4374902B2 (en) Similar image search device, similar image search method, and similar image search program
JP2010250637A (en) Image server, image retrieval system, image retrieval method, and image management method
JP2011053781A (en) Image database creation device, image retrieval device, image database creation method and image retrieval method
US11809494B2 (en) Information processing apparatus and information processing method
JP2010250630A (en) Image server, image retrieval system, and image retrieval method
JP2010250634A (en) Image server, image retrieval system, image retrieval method, and index creation method
JP6173754B2 (en) Image search system, image search apparatus, and image search method
JP2010250636A (en) Image retrieval terminal device and image retrieval request method
JP5515417B2 (en) Image processing method and apparatus, and computer program therefor
KR20090037704A (en) Meta data generation method for intutive image search
JP2010250633A (en) Image server, image retrieval system, image retrieval method, and index creation method
JP5408241B2 (en) Information processing apparatus, information processing method, and program
JP2014048989A (en) Bof expression generation device and bof expression generation method
JP2004192555A (en) Information management method, device and program
US20220114207A1 (en) Method and system for image searching and evaluation using tags
US11500937B1 (en) Data retrieval system