A person's region is detected from input video of a surveillance camera; a person's direction in the person's region is determined; the separability of person's clothes is determined to generate clothing segment separation information; furthermore, clothing features representing visual features of person's clothes in the person's region are extracted in consideration of the person's direction and the clothing segment separation information. The person's direction is determined based on a person's face direction, person's motion, and clothing symmetry. The clothing segment separation information is generated based on analysis information regarding a geometrical shape of the person's region and visual segment information representing person's clothing segments which are visible based on the person's region and background prior information. A person is searched out based on a result of matching between a clothing query text, representing a type and a color of person's clothes, and the extracted person's clothing features.
|
6. A person search method implemented by a processor, the method comprising:
searching, by the processor, for clothing feature parameters based on a clothing query text representing a type and a color of person's clothes;
generating, by the processor, a clothing feature query based on clothing feature parameters;
comparing, by the processor, the clothing feature query with clothing features retrieved from a clothing feature storage, thus producing a matching result; and
producing, by the processor, a person search result based on the matching result.
1. A person search device comprising:
a clothing information extraction part that extracts clothing feature parameters, used for creating visual features of clothes, based on a clothing query text including a type and a color of person's clothes;
a clothing feature query generation part that generates a clothing feature query representing visual features of clothes based on clothing feature parameters;
a clothing feature matching part that compares the clothing feature query with clothing features retrieved from a clothing feature storage, thus producing its matching result; and
a person search part that produces a person search result based on the matching result.
2. The person search device according to
3. The person search device according to
4. The person search device according to
5. The person search device according to
a person region detection part that detects a person's region from input video;
a person direction determination part that determines a person's direction in the person's region;
a clothing segment separation part that determines a separability of person's clothes in the person's region so as to produce clothing segment separation information; and
a clothing feature extraction part that extracts clothing features representing visual features of person's clothes in the person's region in consideration of the person's direction and the clothing segment separation information,
wherein the clothing feature storage stores the extracted clothing features.
7. The person search method according to
8. The person search method according to
9. The person search method according to
10. The person search method according to
detecting, by the processor, a person's region from input video;
determining, by the processor, a person's direction in the person's region;
determining, by the processor, a separability of person's clothes in the person's region so as to produce clothing segment separation information; and
extracting, by the processor, clothing features representing visual features of person's clothes in the person's region in consideration of the person's direction and the clothing segment separation information, thus storing them in the clothing feature storage.
11. A non-transitory computer readable medium storing a program which describes the person search method as defined in
|
This application is a National Stage of International Application No. PCT/JP2010/067914, filed on Oct. 13, 2010, which claims priority from JP 2009-239360, filed Oct. 16, 2009, the contents of all of which are incorporated herein by reference in their entirety.
The present invention relates to a person clothing feature extraction device that extracts person clothing features from input video. Additionally, the present invention relates to a person search device that searches for persons based on person clothing features extracted from input video. Furthermore, the present invention relates to a person clothing feature extraction processing method and a person search processing method.
The present application claims priority on Japanese Patent Application No. 2009-239360 filed Oct. 16, 2009, the entire content of which is incorporated herein by reference.
Conventionally, a variety of person search methods, surveillance systems, and image storing/search systems has been developed. PLT 1 disclosed a person search method that searches for persons based on stored video in a surveillance system. When recording video, the surveillance system extracts information, regarding person's faces and clothes, so as to store information in a database. When searching persons, the surveillance system compares face/clothing features of an image given as a query with face/clothing features stored in the database so as to determine whether or not they indicate the same person.
A person search system disclosed in PLT 1 will be described in detail with reference to
The face region detection/face feature extraction part 1000 detects a face region so as to extract face features based on video captured by the surveillance system, thus sending extracted face features to the face feature database 1050. The clothing region detection/clothing feature extraction part 1010 detects a clothing region so as to extract clothing features based on video captured by the surveillance system, thus sending extracted clothing features to the clothing feature database 1040. On the other hand, the face region detection/face feature extraction part 1020 detects a face region so as to extract face features from a query image, thus sending query face features to the clothing similarity calculation part 1070. The face similarity calculation part 1060 compares query face features, received from the face region detection/face feature extraction part 1020, with face features stored in the face feature database 1050, thus calculating and sending a face similarity to the person identity determination part 1080. The clothing similarity calculation part 1070 compares query clothing features, received from the clothing region detection/clothing feature extraction part 1030, with clothing features stored in the clothing feature database 1040, thus calculating and sending a clothing similarity to the person identity determination part 1080. The person identity determination part 1080 determines person identity based on a face similarity calculated by the face similarity calculation part 1060 and a clothing similarity calculated by the clothing similarity calculation part 1070, thus producing a person search result.
Next, the operation of the person search device shown in
The clothing region detection/clothing feature extraction part 1010 detects a clothing region from input video so as to extract its visual features, i.e. clothing features. Extracted clothing features are stored in the clothing feature database 1040.
In case of person searching, a query image is input into the face region detection/face feature extraction part 1020 and the clothing region detection/clothing feature extraction part 1030. The face region detection/face feature extraction part 1020 and the clothing region detection/clothing feature extraction part 1030 function similarly to the face region detection/face feature extraction part 1000 and the clothing region detection/clothing feature extraction part 1010 so as to extract query face features and query clothing features.
The face similarity calculation part 1060 compares query face features with face features stored in the face feature database 1050 so as to calculate a face similarity. On the other hand, the clothing similarity calculation part 1070 compares query clothing features with clothing features stored in the clothing feature database 1040 so as to calculate a clothing similarity. The person identity determination part 1080 integrates a face similarity with a clothing similarity so as to determine person identity, thus producing a person search result.
PLT 2 disclosed an image storing/search system that searches for image data including image features equivalent to color sensation languages representing coloring which humans may subjectively sense. Herein, it is necessary to preset a correlation between color expressions, included in human natural languages, and images in a color space. Additionally, it is necessary to extract pixels from image data stored in a database, calculate similarities with color expressions, and save them in memory. Provided a color expression as a query, this system checks similarities of image data with color expressions so as to search and display image data with a high similarity.
PLT 1: Japanese Patent Application Publication No. 2009-199322
PLT 2: Japanese Patent Application Publication No. 2009-3581
The person search system shown in
The image storing/search system disclosed in PLT 2 is able to search for persons based on a query text representing a single color of clothes such as “red clothes”, but this system is unable to search for persons by use of multiple colors since its query text is able to simply designate a single color. Similar to PLT 1, this system is unable to reflect differences of person's directions and differences of visual features, found between the upper part and the lower part of a person's body, into person search results.
The present invention is made in consideration of the aforementioned circumstances, wherein the present invention provides a person clothing feature extraction device which is able to extract clothing features of person's clothes included in video.
Additionally, the present invention provides a person search device which searches for persons upon comparison between a query text and person's clothing features detected from video.
Furthermore, the present invention provides programs describing a person clothing feature extraction processing method and a person search processing method.
A person clothing feature extraction device of the present invention includes a person region detection part that detects a person's region from input video; a person direction determination part that determines a person's direction in the person's region; a clothing segment separation part that determines the separability of person's clothes in the person's region so as to produce clothing segment separation information; a clothing feature extraction part that extracts clothing features representing visual features of person's clothes in the person's region in consideration of the person's direction and the clothing segment separation information; and a clothing feature storage that stores the extracted clothing features.
A person search device of the present invention includes a clothing information extraction part that extracts clothing feature parameters based on a clothing query text representing a type and a color of person's clothes; a clothing feature query generation part that generates a clothing feature query based on clothing feature parameters; a clothing feature matching part that compares the clothing feature query with clothing features retrieved from a clothing feature storage, thus producing its matching result; and a person search part that produces a person search result based on the matching result.
A person clothing feature extraction method of the present invention executes a person region detecting process for detecting a person's region from input video; a person direction determining process for determining a person's direction in the person's region; a person clothing segment separation process for determining the separability of person's clothes in the person's region so as to produce clothing segment separation information; and a clothing feature extracting process for extracting clothing features representing visual features of person's clothes in the person's region in consideration of the person's direction and the clothing segment separation information.
A person search method of the present invention executes a clothing information extracting process for extracting clothing feature parameters based on a clothing query text representing a type and a color of person's clothes; a clothing feature query generating process for generating a clothing feature query based on clothing feature parameters; a clothing feature matching process for comparing the clothing feature query with clothing features retrieved from a clothing feature storage; and a person search process for producing a person search result based on a matching result.
The present invention provides a program describing the foregoing clothing feature extraction method in a computer-readable/executable format. Additionally, the present invention provides a program describing the foregoing person search method in a computer-readable/executable format.
The present invention aims to detect a person's region from video captured by a surveillance camera or the like, accurately extract clothing features of a person who exists in the person's region, and thereby produce a person search result precisely reflecting a searcher's intention based on extracted clothing features of a person.
An embodiment of the present invention will be described in detail with reference to the accompanying drawings.
The person clothing feature extraction device is realized by installing a person clothing feature extraction program in a computer configured of a CPU, a ROM, and a RAM. The person clothing feature extraction program (or an information collection program) can be stored in various storage media, or they can be transferred via communication media. Storage media may encompass flexible disks, hard disks, magnetic disks, magneto-optic disks, CD-ROM, DVD, ROM cartridges, battery-backup RAM cartridges, flash memory cartridges, and nonvolatile RAM cartridges. Communication media may encompass wired communication media such as telephone lines, radio communication media such as microwave lines, and the Internet.
The person region detection part 100 detects a person's region that exists in input video. A person's region detected from input video is supplied to the person direction determination part 110, the clothing segment separation part 120, and the clothing feature extraction part 130. The person direction determination part 110 determines a person's direction in a person's region of input video so as to send it to the clothing feature extraction part 130. The clothing segment separation part 120 determines whether or not clothes of a person who exists in a person's region of input video can be separated into segments, thus providing clothing segment separation information to the clothing feature extraction part 130. Specifically, it calculates clothing segment separation information based on background prior information and a person's region of input video so as to send clothing segment separation information to the clothing feature extraction part 130. The clothing feature extraction part 130 extracts visual information of person's clothes based on a person's region of input video, a person's direction, and clothing segment separation information, thus sending visual information to the clothing feature storage 140. In other words, it extracts person's clothing features from a person's region of input video, a person's direction, and clothing segment separation information, thus sending them to the clothing feature storage 140. The clothing feature storage 140 receives and stores person's clothing features from the clothing feature extraction part 130.
Next, the operation of the person clothing feature extraction device shown in
The person region detection part 100 detects a person's region per each frame of input video. As a person region detection processing method, it is possible to employ various methods. For instance, a difference between input video and pre-captured background image (hereinafter, referred to as a “differential image”) is calculated and subjected to execution of a threshold process, thus extracting only the person's region from input video. It is possible to extract a differential image, representing a difference between input video and background image, for each frame. Alternatively, each frame is divided into a plurality of subdivisions, so that it is possible to extract a differential image for each subdivision. That is, it is possible to make a decision as to existence/nonexistence of an individual animal (i.e. an animal other than a person) for each subdivision of each frame of input video, and subsequently calculate a difference between background image and video demonstrating nonexistence of an individual animal, thus extracting a person's region. Additionally, it is possible to uniformly set a threshold, which is used for a threshold process executed on a differential image, over the entire screen. Alternatively, it is possible to adaptively set a threshold over each area on a screen. For instance, it is possible to increase a threshold with respect to an area undergoing high variations of information over time on a screen, while it is possible to decrease a threshold with respect to a stable area undergoing small variations of information over time on a screen.
Person's regions extracted from input video are grouped into neighboring areas, wherein an individual ID (identification information) is assigned to each group, so that a person's region corresponds to an area specified by each ID. As a depicting method of each person's region, it is possible to employ various methods. For instance, it is possible to calculate mask information representing two-dimensional information assigned with a specific value which differs from a value representing background of an area specified by each ID. The calculated person's region is sent to the person direction determination part 110 together with input video.
The person direction determination part 110 determines a person's direction based on a person's region and input video. A person's direction is determined based on a face direction, a person's motion direction, and symmetry of person's clothes. This is because a person's direction exhibits a high correlation to a face direction and a person's motion. Generally speaking, clothes may frequently exhibit right/left symmetrical patterns; hence, symmetry of clothes can be used to determine whether or not a person turns his/her body in a front direction. These pieces of information are used to determine the direction of a person who exists in a person's region in input video. Details of information used for determining a person's direction will be described later. It is unnecessary to use all the face direction, the person's motion direction, and the symmetry of clothes in determining a person's direction; hence, it is possible to determine a person's direction based on at least one of these pieces of information. Herein, a person's direction is calculated per each area specified by each ID. For instance, a person's direction is calculated with respect to three segments, namely a front direction, a rear direction, and an indeterminate direction (i.e. an indeterminate direction of a person). The calculated person's direction is supplied to the closing feature extraction part 130. In this connection, a person's direction is not necessarily limited to three segments, namely a front direction, a rear direction, and an indeterminate direction; hence, a person's direction can be classified into four or more segments.
The clothing segment separation part 120 receives a person's region, background prior information, and input video. The clothing segment separation part 120 separates person's clothes into a plurality of segments based on these pieces of information.
The background prior information is information representing a manner how a person is viewed depending on a position in the background of a person's region. For instance, when an obstacle such as a desk and a shelf exists in a viewing scope of a camera and comes in contact with the lower end of a person's region, it is considered that a part of a person (e.g. the upper part of a body) may be visible in the background prior information. Thus, a floor which exists in a viewing scope of a camera is marked as background prior information indicating that the entirety of a person may be visible, whilst the upper end of an obstacle is marked as background prior information indicating that a part of a person (e.g. the upper part of a body) may be visible. In case of a surveillance camera with a fixed viewing scope, it is necessary to capture background prior information at once. As a method of capturing background prior information, a surveyor may manually mark background prior information and capture the information. With a surveillance camera whose viewing scope is adaptable to a plurality of fixed positions, a surveyor may manually mark background prior information and capture the information at each fixed position. With a surveillance camera whose viewing scope is continuously varied, a surveyor may temporarily mark background prior information and capture the information, so that background prior information will be automatically changed to follow the motion of a surveillance camera. Specifically, a conventionally-known feature point extraction method is adopted to automatically extract feature points such as corners of a desk or a shelf, so that feature points which are moving in a viewing scope to follow the motion of a camera are correlated to each other between frames, thus keeping track of the movement of a person's region in each background prior information.
The clothing feature extraction part 130 extracts visual features in a person's region with respect to each segment of a person based on input video, a person's region of the person region detection part 100, and clothing segment separation information of the clothing segment separation part 120.
When clothing segment separation information represents separation between the upper part and the lower part of a person's image and indicates its separation position, for example, it is possible to extract visual features regarding the upper part of a body from the upper area above the separation position while extracting visual features regarding the lower part of a body from the lower area below the separation position in a person's region. Alternatively, it is possible to determine segments such as a face and legs of a person from the upper part and the lower part of a body in a person's region, thus extracting visual features precluding those segments. Thus, visual features extracted from a person's region are correlated to segments of a person. For instance, visual features regarding the upper part of a body are provided in combination with an index representing the upper part of a person's body. Additionally, they can be provided together with a person's direction of the person direction determination part 110. In case of a person's direction corresponding to his/her front direction, for example, visual features are provided together with an index representing the front direction. In case of a person's direction corresponding to his/her rear direction (or his/her side direction), visual features are provided together with an index representing the rear direction (or the side direction). In case of a person's direction corresponding to an indeterminable direction, visual features are provided together with an index representing the indeterminable direction (e.g. an index having a specific value).
Visual features represent colors and textures of persons' clothes. Using visual features, expressed in an HSV color space, pixel data of a person's region are converted into Hue, Saturation, and Value, which are further subjected to quantization to produce an HSV histogram. In case of visual features representing designated colors for use in Dominant Color Descriptor of MPEG-7 specified in ISO/IEC 15938-3, a person's region is divided into color divisions, so that a dominant color is searched through each division so as to determine visual features. Other than this method, it is possible to use various visual features representing colors for use in a color layout of MPEG-7. When an edge histogram is used as representation of visual features regarding patterns, an edge is detected in each direction of a person's region so as to produce an edge histogram. In case of visual features based on a Wavelet method, a person's region is subjected to Wavelet conversion to produce Wavelet coefficients. Wavelet coefficients or statics (i.e. an average, variance, etc. among Wavelet coefficients in its directional component) are used as visual features. Moreover, it is possible to use various visual features regarding patterns for use in Homogeneous Texture of MPEG-7. In this connection, visual features do not necessarily contain both of color elements and pattern elements; hence, they may contain one of color elements and pattern elements. Furthermore, visual features may contain elements other than color elements and pattern elements.
Visual features regarding person's clothes, which are extracted by the foregoing method, are stored in the clothing feature storage 140 as clothing features. As a storage format of clothing features, it is possible to employ various formats. For instance, input video is divided into temporal units with a fixed time lengths, so that clothing features are stored in files in temporal units. Alternatively, video of a short recording time is stored in files in units of images.
Next, the operation of the person clothing feature extraction device shown in
The person clothing feature extraction device extracts and stores clothing features based on a person's direction and separability of clothing segments. For this reason, it is possible to provide information (i.e. clothing feature information) which makes it possible to search for clothes having different visual features with respect to each person's direction and each clothing segment.
Next, the operation of the person direction determination part 110 of the person clothing feature extraction device will be described in detail.
The face direction determination part 300 determines a person's face direction based on input video, thus providing its determination result to the integrative direction determination part 330. The person motion analysis part 310 analyzes person's motion based on input video and a person's region, thus providing its determination result to the integrative direction determination part 330. The clothing symmetry determination part 320 determines clothing symmetry based on input video and a person's region, thus providing its determination result to the integrative direction determination part 330. The integrative direction determination part 330 determines a person's direction based on a person's face direction, a person's motion, and clothing symmetry.
Next, the operation of the person direction determination part 110 will be described in detail. The face direction determination part 300 detects a person's face region per each frame of input video while estimating a face direction. As a method of detecting a person's face region and estimating a face direction, it is possible to employ various methods. When a plurality of persons' faces is detected in each frame of input video, it is necessary to estimate each person's face direction. Information regarding a person's face direction is a set of face positions and directions (particularly, left/right directions) which are collected with respect to each person's face. If no person's face is detected in input video, it is necessary to provide information indicating that no person's face is detected. To detect a person's face region and estimate a face direction, it is necessary to calculate a reliability representing detection/estimation certainty, which is attached to information regarding a person's face direction. A person's face direction, which is determined as described above, is supplied to the integrative direction determination part 330.
The person motion analysis part 310 analyzes movement of a person's region based on time-series information pertaining to input video and a person's region. For instance, it is possible to estimate movement of a person's region by detecting feature points per each frame in a person's region and tracking them between frames. Alternatively, it is possible to estimate movement of a person's region by calculating a centroid point of a person's region per each frame and tracking its movement. In this case, it is possible to estimate movement of a person's region based on two frames which occur sequentially in time series. Alternatively, it is possible to estimate movement of a person's region based on numerous frames. With respect to relatively small movement of a person's region, it is necessary to calculate an optical flow between frames, thus estimating movement of a person's region based on the optical flow. In this case, it is possible to calculate an average among optical flows between pixels in a person's region and perform a nonlinear static process such as median, thus estimating movement of a person's region. The estimated movement of a person's region (i.e. a person motion) is supplied to the integrative direction determination part 330.
The clothing symmetry determination part 320 determines clothing symmetry based on input video and a person's region. As a method of determining clothing symmetry, it is possible to propose various methods. For instance, it is possible to check whether or not a pixel function, which can be produced by scanning pixels in a person's region in a horizontal direction, exhibits symmetry about an axis proximate to the center of a person's region. Specifically, it is necessary to calculate symmetry deviation according to Equation 1.
Herein, I(x,y) denotes pixel data (i.e. a three-dimensional vector in a color space R, G, B) at coordinates (x,y). M(x,y) denotes mask information representing a person's region, wherein it is set to “1” when coordinates (x,y) represent a person's region, otherwise, it is set to “0”. W is a constant, and u is set to a value representing proximity to the center of a person's region. Equation 1 produces Ds(y) per each value of y as a minimum value of symmetry deviation when the center of a person's region is moved (i.e. when a value of u is varied). The symmetry deviation Ds(y), which is calculated as described above, is averaged between an upper end y=Y0 and a lower end y=Y1 in a person's region in accordance with Equation 2, thus calculating an average distortion of symmetry.
It is possible to presume the situation where uniform pixel data appear in a viewing scope so as to increase symmetry regardless of directions; hence, it is necessary to concurrently check flatness of pixel data, whereby it is necessary to determine a low reliability in calculating high symmetry deviation when pixel data exhibit high flatness. For this reason, it is necessary to calculate flatness of pixel data for each scanning line in a horizontal direction in accordance with Equation 3 (i.e. a left end x=X0 and a right end x=X1 in a person's region) and then average it between the upper end y=Y0 and the lower end y=Y1 in a person's region in accordance with Equation 4, thus calculating an average distortion of symmetry.
Herein, I(x,y) with bar denotes an average of pixel data which can be obtained by scanning in a horizontal direction while fixing y. Ds with bar and Df with bar, which are calculated as described above, are supplied to the integrative direction determination part 330 as clothing symmetry. Alternatively, it is possible to provide functional values regarding symmetry and flatness, which are expressed in Equation 1 and Equation 3, as clothing symmetry.
The integrative direction determination part 330 determines a person's integrative direction based on a person's face direction, person's motion, and clothing symmetry in a person's region. Herein, it is possible to employ various methods. For instance, it is possible to calculate scores in a front direction (hereinafter, referred to as “frontality scores”) with respect to a person's face direction, person's motion, and clothing symmetry, so that a person's direction is determined by integrating those scores. In this case, it is possible to directly use a person's face direction as a frontality score.
As to person's motion, it is possible to calculate the similarity between the calculated motion vector and a downward vector, thus estimating in which direction a person is currently moving (or walking). For instance, it is possible to calculate a cosine value between a motion vector and a downward vector, thus estimating a person's direction based on the cosine value. Herein, a cosine value of “−1” is calculated with respect to a motion vector corresponding to an upward vector. Specifically, a frontality score is calculated according to Equation 5. A frontality value with a high positive value is calculated with respect to a motion vector with a high correlation to a downward vector. In contrast, a frontality score with a high negative value is calculated with respect to a motion vector with a high correlation to an upward vector. Herein, a downward direction is defined as a positive direction of a y-axis.
Herein, it is possible to calculate a frontality score in consideration of scalar quantity of motion vector. When scalar quantity of motion vector is equal to or less than a threshold, Equation 5 may produce a frontality score of “0”.
Additionally, it is possible to calculate a frontality score based on clothing symmetry. That is, when the clothing symmetry determination part 320 provides clothing symmetry using Ds with bar and Df with bar, it is possible to calculate a frontality score according to Equation 6.
Sc=g(
Herein, g(x) denotes a monotone nondecreasing function, while s(x) denotes a monotone nonincreasing function which produces “0” when x is a large number. Alternatively, when the clothing symmetry determination part 320 provides clothing symmetry using Ds(y) and Df(y), it is possible to calculate a frontality score according to Equation 7.
As described above, it is possible to determine a person's direction based on frontality scores which are calculated with respect to a person's face direction, person's motion, and clothing symmetry. Herein, it is necessary to calculate the sum or product of frontality scores, thus determining that a person is currently turning in a front direction when the sum/product is higher than a predetermined threshold. Alternatively, it is possible to create an identification system such as a neural network, which inputs frontality scores so as to output a determination result regarding integrative frontality, by use of a learning function of input data, thus determining person's frontality. Herein, a person's direction is determined by classifying it into a front direction, a rear direction, and an indeterminable direction.
Next, the entire process of the person direction determination part 110 shown in
Next, the clothing segment separation part 120 of the person clothing feature extraction device shown in
The regional shape analysis part 400 analyzes a person's region so as to generate shape analysis information and forward it to the integrative segment separation part 420. The visible segment determination part 410 generates visible segment information based on a person's region and background prior information so as to forward it to the integrative segment separation part 420. The integrated segment separation part 420 generates clothing segment separation information based on input video, the shape analysis information of the regional shape determination part 400, and the visible segment information of the visible segment determination part 410.
Next, the process of the clothing segment separation part 120 shown in
The visible segment determination part 410 determines whether or not a person is separable into the upper part and the lower part of a body based on a person's region and background prior information. Specifically, it determines whether or not a person's entire body is visible in a person's region based on the background prior information located at the coordinates which are calculated with respect to the lower end of a person's region. In the case where the background prior information indicates that a person's entire body is visible, visible segment information representing it is generated. In the case where the background prior information indicates that the upper part (or the lower part) of a person is solely visible in a person's region, visible segment information representing it is generated. In other cases, visible segment information representing indetermination of visible segments is generated. Visible segment information is supplied to the integrative segment separation part 420.
The integrative segment separation part 420 determines whether or not person's clothing segments are separable based on shape analysis information and visible segment information. Specifically, it determines whether or not a person falls within an appropriate range (i.e. an appropriate range inside a viewing scope) based on shape analysis information. For instance, when visible segment information indicates that the entire body of a person who is standing straightly within an appropriate range is visible, the integrative segment separation part 420 determines that a person is separable into the upper part and the lower part of a body. On the other hand, when shape analysis information indicates that the upper part of a person's body solely falls within an appropriate range and when visible segment information indicates that the upper part of a person's body is visible, the integrative segment separation part 420 determines that the upper part of a person's body is solely visible. When visible segment information indicates indetermination of visible segments, the integrative segment separation part 420 determines that a person cannot be separated into the upper part and the lower part of a body. Alternatively, when shape analysis information indicates that a person who is standing straightly does not fall within an appropriate range or when it indicates that the upper part of a person's body does not fall within an appropriate range, the integrative segment separation part 420 determines that a person cannot be separated into the upper part and the lower part of a body.
Upon determining that a person is separable into the upper part and the lower part of a body, the integrative segment separation part 420 calculates its separation position as well. As a method of calculating a separation position, it is possible to propose various methods. For instance, it is possible to scan pixel data of a person's region in a horizontal direction in accordance with Equation 8, thus calculating pixel function values projected in a y-axis direction.
Herein, I(x,y) denotes pixel data (i.e. a three-dimensional vector in a color space R, G, B) at coordinates (x,y), while M(x,y) denotes mask information of a person's region. A y-coordinate that greatly varies a pixel function value f(y) of Equation 8 is calculated. For instance, Equation 9 is used to produce a maximum value among differences of pixel function values; hence, it is possible to determine that a person is separable into the upper part and the lower part of a body when a maximum difference D0 is higher than a threshold. When it is determined that a person is separable into the upper part and the lower part of a body, Equation 10 is used to calculate a y-coordinate value y0 at this state. As described above, the integrative segment separation part 420 stores the y-coordinate value y0 at the foregoing state, in addition to the determination result that a person is separable into the upper part and the lower part of a body, in clothing segment separation information.
In this connection, when a relatively small difference is found among visual features between the upper part and the lower part of person's clothes, it is determined that a person's region is separable with a predetermined separation ratio, so that the separation ratio is stored in clothing segment separation information.
Next, the process of the clothing segment separation part 120 shown in
Next, a person search device according to an embodiment of the present invention will be described in detail.
The functionality of the person search device is realized by installing a person search program in a computer which is configured of a CPU, a ROM, and a RAM.
The clothing information extraction part 200 extracts words representing types of clothes and visual features based on clothing query texts, thus producing clothing feature parameters. Specifically, it analyzes a clothing query text with reference to a clothing dictionary, thus producing and providing clothing feature parameters to the clothing feature query generation part 210. The clothing feature query generation part 210 estimates clothing visual features based on clothing feature parameters, thus producing and providing a clothing feature query to the clothing feature matching part 220. The clothing feature storage 140 stores person's clothing features which are extracted by means of the person clothing feature extraction part shown in
Next, the operation of the person search device shown in
Upon receiving a clothing query text representing “a white shirt, a blue jacket, and black trousers”, for example, the clothing information extraction part 200 extractsfrom the clothing dictionary the clothing information that “shirt” and “jacket” are related to the upper part of a body while they are colored “white” and “blue” respectively. Additionally, the clothing information extraction part 200 extracts from the clothing dictionary the clothing information that “trousers” are related to the lower part of a body while it is colored “black”. Furthermore, the clothing information extraction part 200 determines that, when a shirt and a jacket are simultaneously worn by a person, the jacket appears in the front layer of wearing so that “blue” has a higher ratio than “white” as the total color of the upper part of a body. Considering a fact that both the shirt and the jacket are visible through observation of a person in his/her front direction whilst the jacket is solely visible through observation of a person in his/her rear direction, the clothing information extraction part 200 generates different color parameters with respect to the front side and the rear side in the upper part of a body. As to the lower part of a body, it generates a color parameter indicating that both the front side and the rear side are colored “black”.
When a clothing query text includes a language representing ambiguity such as “roughly . . . ” and “a sort of . . . ” in Japanese, it is necessary to describe a degree of ambiguity in a clothing feature parameter. When clothing features are displayed using a color histogram, for example, it is possible to adjust a spreading factor of the color histogram with a degree of ambiguity.
As described above, pixel data (e.g. RGB data or HSV data) regarding the upper part and the lower part of a body, the color ratio, the color parameter, and the degree of ambiguity in color rendition are described in clothing feature parameters, which are supplied to the clothing feature query generation part 210.
The clothing feature query generation part 210 generates a clothing feature query based on clothing feature parameters provided from the clothing information extraction part 200. When a color histogram is used to represent clothing features, for example, it is necessary to create a color histogram with a peak value corresponding to pixel data included in clothing feature parameters, and a spreading factor dependent upon a degree of ambiguity in color rendition. Herein, the peak value of a color histogram is adjusted in response to the color ratio. Additionally, it is necessary to create color histograms individually with respect to a front direction and a non-front direction of a person because a manner how colors of clothes are viewed depends on a person's direction (i.e. a decision whether or not a person is turning in his/her front direction). Furthermore, it is necessary to create clothing feature queries with respect to the upper part and the lower part of a body. Clothing feature queries, which are created as described above, are supplied to the clothing feature matching part 220.
The clothing feature matching part 220 compares a clothing feature query, which is generated by the clothing feature query generation part 210, with clothing features (i.e. clothing features of a person currently subjected to searching) stored in the clothing feature storage 140, thus calculating matching scores. Comparison between a clothing feature query and clothing features (which are retrieved from the clothing feature storage 140) can be carried out with respect to each of clothing segments specified by clothing segment separation information.
The foregoing matching scores represent similarities of clothing features; for example, they can be calculated using the scalar product of clothing feature vectors. Alternatively, it is possible to calculate distances (or differences) between clothing features and subsequently convert them into similarities of clothing features. That is, a distance d between clothing features is converted into a similarity S in accordance with Equation 11.
Since clothing features stored in the clothing feature storage 140 are stored in connection with a person's direction and clothing segment separation information, the clothing feature matching part 220 considers its information to compare a clothing feature query with retrieved clothing features. Specifically, when retrieved clothing features are correlated to front sides of persons, they should be compared with a clothing feature query pertaining to the front side of a person. When retrieved clothing features are correlated to non-front directions of persons, they should be compared with a clothing feature query pertaining to a non-front direction of a person. When retrieved clothing features are correlated to indeterminable directions of persons, they should be compared with both the clothing feature queries pertaining to a front direction and a non-front direction of a person, so that a better matching result will be selected.
When retrieved clothing features are correlated to the upper parts of persons, they should be compared with a clothing feature query pertaining to the upper part of a person's body in consideration of clothing segment separation information. When retrieved clothing features are correlated to the lower parts of persons, they should be compared with a clothing feature query pertaining to the lower part of a person's body. On the other hand, when person's clothes cannot be separated into the upper part and the lower part of a person's body, it is necessary to compare them with an integrative clothing feature query which is created by integrating clothing feature queries pertaining to the upper part and the lower part of a person's body. When a color histogram is used to represent clothing features, for example, clothing features pertaining to the upper part and the lower part of a person's body are added together, normalized as necessary, and then compared to retrieved clothing features.
When the upper part and the lower part of a person's body are concurrently visible, the clothing feature matching part 220 is able to concurrently produce matching results with respect to both the upper part and the lower part of a person's body. In this case, it is possible to determine a matching degree by using both the matching results of clothing features pertaining to the upper part and the lower part of a person's body. When one of the upper part and the lower part of a person's body is visible, or when person's clothes cannot be separated into the upper part and the lower part of a person's body, the clothing feature matching part 220 may solely produce one matching result. In this case, it is necessary to determine a matching degree by using one matching result.
As described above, the clothing feature matching part 220 generates different numbers of matching results depending on a manner how a person is visible. When one matching result is produced, a similarity of clothing features at this state is directly used as an entire matching result. When a plurality of matching results pertaining to the upper part and the lower part of a person's body or the like is produced, it is possible to calculate a plurality of similarities S1, S2 regarding clothing features. In this case, it is necessary to calculate an integrative similarity S according to Equation 12.
S=h(S1+Ss)
Herein, h(x) denotes a monotone nondecreasing function, for example, which is expressed via Equation 12.
h(s)=√{square root over (s)} [Equation 13]
Owing to the foregoing processes, it is possible to produce matching results, which are close to person's clothing features by intuition, by increasing similarities which are calculated via integrative matching. Matching results of the clothing feature matching part 220 are supplied to the person search part 230.
The person search part 230 produces person search results based on matching results of the clothing feature matching part 220. Specifically, matching results are sorted in a descending order of integrative similarities so that they are provided as person search results. When the number of matching results included in a person search result is fixed to N, it is necessary to selectively provide N matching results in upper places in the descending order of integrative similarities.
Next, the operation of the person search device shown in
The person search device shown in
In this connection, the present invention is not necessarily limited to the foregoing embodiment so that it allows for any changes within the scope of the invention defined by the appended claims. For instance, the clothing feature separation part 120 does not necessarily separate person's clothing segments into two parts, i.e. the upper part and the lower part of a body, but it may separate them into other clothing segments such as shoes and hats.
The present invention is designed to detect a person's region within the viewing scope of a surveillance camera, extract person's clothing features included in the person's region, and thereby search for a person with a high accuracy with reference to a database; hence, the present invention is applicable to security usages in public organizations and private companies.
Takahashi, Yusuke, Oami, Ryoma, Hirakawa, Yasufumi
Patent | Priority | Assignee | Title |
10957055, | Jun 20 2016 | OBSCHESTVO S OGRANICHENNOI OTVETSTVENNOSTYU SATELLIT INNOVATSIA | Methods and systems of searching for an object in a video stream |
11126652, | Sep 13 2018 | Kabushiki Kaisha Toshiba | Retrieval device, retrieval method, and computer program product |
11613843, | Feb 27 2018 | Levi Strauss & Co. | Automatically generating apparel collection imagery |
11618995, | Feb 27 2018 | Levi Strauss & Co. | Apparel collection management with image preview |
11636662, | Sep 30 2021 | Snap Inc.; SNAP INC | Body normal network light and rendering control |
11651572, | Oct 11 2021 | Snap Inc. | Light and rendering of garments |
11670059, | Sep 01 2021 | Snap Inc.; SNAP INC | Controlling interactive fashion based on body gestures |
11673054, | Sep 07 2021 | Snap Inc. | Controlling AR games on fashion items |
11708662, | Feb 27 2018 | Levi Strauss & Co. | Replacing imagery of garments in an existing apparel collection with laser-finished garments |
11734866, | Sep 13 2021 | Snap Inc. | Controlling interactive fashion based on voice |
11790531, | Feb 24 2021 | Snap Inc.; SNAP INC | Whole body segmentation |
11900506, | Sep 09 2021 | Snap Inc.; SNAP INC | Controlling interactive fashion based on facial expressions |
11983826, | Sep 30 2021 | SNAP INC ; Snap Inc. | 3D upper garment tracking |
12056832, | Sep 01 2021 | Snap Inc. | Controlling interactive fashion based on body gestures |
12100156, | Apr 12 2021 | Snap Inc. | Garment segmentation |
12106486, | Feb 24 2021 | SNAP INC | Whole body visual effects |
12148108, | Oct 11 2021 | Snap Inc. | Light and rendering of garments |
ER2170, |
Patent | Priority | Assignee | Title |
7668367, | Sep 30 2005 | Sony United Kingdom Limited | Image processing for generating a representative color value indicative of a representative color of an image sub-area |
8270709, | Aug 31 2006 | Corel Corporation | Color selection and/or matching in a color image |
8306281, | Jan 11 2007 | Hitachi, Ltd. | Human image retrieval system |
8379920, | May 05 2010 | NEC Corporation | Real-time clothing recognition in surveillance videos |
20060159370, | |||
20080056564, | |||
20080212899, | |||
20090141940, | |||
20090296989, | |||
20110274314, | |||
CN101236599, | |||
CN1499816, | |||
CN1892702, | |||
JP2000030033, | |||
JP2005202938, | |||
JP2008139941, | |||
JP2008165700, | |||
JP2009003581, | |||
JP2009110460, | |||
JP2009199322, |
Executed on | Assignor | Assignee | Conveyance | Frame | Reel | Doc |
Oct 13 2010 | NEC Corporation | (assignment on the face of the patent) | / | |||
Apr 06 2012 | OAMI, RYOMA | NEC Corporation | ASSIGNMENT OF ASSIGNORS INTEREST SEE DOCUMENT FOR DETAILS | 028037 | /0786 | |
Apr 06 2012 | HIRAKAWA, YASUFUMI | NEC Corporation | ASSIGNMENT OF ASSIGNORS INTEREST SEE DOCUMENT FOR DETAILS | 028037 | /0786 | |
Apr 06 2012 | TAKAHASHI, YUSUKE | NEC Corporation | ASSIGNMENT OF ASSIGNORS INTEREST SEE DOCUMENT FOR DETAILS | 028037 | /0786 |
Date | Maintenance Fee Events |
May 03 2018 | M1551: Payment of Maintenance Fee, 4th Year, Large Entity. |
May 11 2022 | M1552: Payment of Maintenance Fee, 8th Year, Large Entity. |
Date | Maintenance Schedule |
Nov 18 2017 | 4 years fee payment window open |
May 18 2018 | 6 months grace period start (w surcharge) |
Nov 18 2018 | patent expiry (for year 4) |
Nov 18 2020 | 2 years to revive unintentionally abandoned end. (for year 4) |
Nov 18 2021 | 8 years fee payment window open |
May 18 2022 | 6 months grace period start (w surcharge) |
Nov 18 2022 | patent expiry (for year 8) |
Nov 18 2024 | 2 years to revive unintentionally abandoned end. (for year 8) |
Nov 18 2025 | 12 years fee payment window open |
May 18 2026 | 6 months grace period start (w surcharge) |
Nov 18 2026 | patent expiry (for year 12) |
Nov 18 2028 | 2 years to revive unintentionally abandoned end. (for year 12) |