(19)
(11)EP 1 970 839 B1

(12)EUROPEAN PATENT SPECIFICATION

(45)Mention of the grant of the patent:
26.06.2019 Bulletin 2019/26

(21)Application number: 08152639.4

(22)Date of filing:  12.03.2008
(51)International Patent Classification (IPC): 
G06K 9/00(2006.01)

(54)

Apparatus, method, and program for face feature point detection

Vorrichtung, Verfahren und Programm für die Gesichtsmerkmalerkennung

Appareil, procédé et programme pour effectuer une détection de point caractéristiques


(84)Designated Contracting States:
AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HR HU IE IS IT LI LT LU LV MC MT NL NO PL PT RO SE SI SK TR

(30)Priority: 13.03.2007 JP 2007063149

(43)Date of publication of application:
17.09.2008 Bulletin 2008/38

(73)Proprietors:
  • AISIN SEIKI KABUSHIKI KAISHA
    Kariya-shi, Aichi 448-8650 (JP)
  • TOYOTA JIDOSHA KABUSHIKI KAISHA
    Toyota-shi, Aichi-ken, 471-8571 (JP)

(72)Inventors:
  • Suzuki, Tomoharu
    Aichi 448-8650 (JP)
  • Adachi, Jun
    Aichi 448-8650 (JP)
  • Yoshinaga, Yukihiko
    Aichi 448-8650 (JP)
  • Ninagawa, Yuji
    Aichi 471-8571 (JP)
  • Ohue, Kenichi
    Aichi 471-8571 (JP)
  • Takahashi, Kentaro
    Aichi 471-8571 (JP)
  • Uozumi, Shigeyasu
    Aichi 471-8571 (JP)
  • Kojima, Shinichi
    Aichi 480-1192 (JP)

(74)Representative: TBK 
Bavariaring 4-6
80336 München
80336 München (DE)


(56)References cited: : 
WO-A1-2005/059811
JP-A- 2005 025 568
US-A1- 2006 188 130
JP-A- 2000 137 792
US-A1- 2005 286 799
  
  • YANG M H ET AL: "Face Detection and Gesture Recognition for Human-Computer Interaction" 1 January 2001 (2001-01-01), Kluwer Academic Publishers , Norwell, Massachusetts , XP002597039 ISBN: 978-0-7923-7409-1pages 23-26, * page 23, line 15 - page 24, line 4 * * page 26, line 22 - line 24 *
  
Note: Within nine months from the publication of the mention of the grant of the European patent, any person may give notice to the European Patent Office of opposition to the European patent granted. Notice of opposition shall be filed in a written reasoned statement. It shall not be deemed to have been filed until the opposition fee has been paid. (Art. 99(1) European Patent Convention).


Description

FIELD OF THE INVENTION



[0001] This invention relates to an apparatus, a method and a program for detecting a predetermined feature in a face image.

BACKGROUND



[0002] A technique that determines the state of eyes based on a face image for monitoring the direction of gaze of a person and presuming his/her arousal level is known. In order to determine the state of the eyes, the eyes should be detected accurately in the face image. Further, when determining the driver's state, a face feature point should be detected in real-time.

[0003] For example, a technique that extracts a driver's eye position to detect lowering of the arousal level is disclosed in JP 7-181012A. In the process using the technique, an eye presence region is set in a first image frame. Width and length of a region where an eye is present is determined based on a center position of each eye. Then, mask processing is performed from the next frame using the eye presence region, and the eye is extracted as a label which is not in contact with the frame of the eye presence region. Follow-up conducted in the eye presence region limits an extraction range, thereby conducting the extraction at high speeds.

[0004] Further, a technique for suppressing influence of lighting conditions or individual differences in facial structure and the like in eye blinking detection is disclosed in JP 7-313459A. The technique disclosed in JP 7-313459A calculates a point P whose edge value is a positive local maximum point and a point M whose edge value is a negative local minimum point (the absolute value of the point M is large) in a one dimensional edge image. Then, initial positions of the search, i.e. points P0 and M0, are determined. The search is conducted to detect extreme points located at an outer side from each initial position, and the respective search regions are set accordingly. Hence, the search proceeds upward for detecting the positive extreme points and proceeds downward for detecting the negative extreme points. Then, the check is conducted to determine whether a sign of the edge value is inverted in the search region. The edge value is negative between the point MO and the point M1. Thus, the points P1 and M1 are set as new initial positions and the search is iteratively conducted. No other edge extreme point exists at an upper side of the point P1 and a lower side of the point M1. Hence, the point P1 is set as boundary point A and the point M1 is set as boundary point B. A distance between the boundary point A and the boundary point B is measured to be output as an opening degree of an eyelid.

[0005] In the technique disclosed in JP 7-181012A, the mask processing and labeling are performed on a predetermined region, which is not in contact with a subject to be extracted, in a binarized image. However, when using the technique that binarizes the image, the feature point of the subject may not be accurately detected due to the lighting conditions and the individual differences in the facial structure.

[0006] Further, the technique disclosed in JP 7-313459A , candidates for the subject to be detected, are extracted from the extreme points on plural base lines, the extraction is conducted based on the extreme values indicating gray level change in the one dimensional edge image. Thus, when detecting an eye, moles and the like are erroneously extracted as the candidates, and the detection result is subject to the influence of the individual differences in the facial structure.

[0007] A need thus exists to provide an eye detection apparatus which detects a face feature point in a face image, irrespective of ambient light and individual difference in facial structure.

[0008] Further prior art can be found in document WO 2005 059 811 A1, disclosing a pattern identification method, and a corresponding apparatus and program. According to document WO 2005 059 811 A1 a pattern recognition is provided which is capable of robust identification for the variance of an input pattern. In a pattern recognition apparatus which identifies the pattern of input data from a data input unit by using a hierarchical feature extraction processor which hierarchically extracts features, an extraction result distribution analyzer analyzes a distribution of at least one feature extraction result obtained by a primary feature extraction processor. On the basis of the analytical result, a secondary feature extraction processor performs predetermined secondary feature extraction.

[0009] Further prior art can be found in document JP 2005 025568 A, disclosing a head image region extraction device.

SUMMARY OF THE INVENTION



[0010] The above-mentioned objects are achieved by what is defined in the appended independent claims. Advantageous modifications thereof are set forth in the appended dependent claims.

[0011] According to the embodiment of the invention, the face feature point detection apparatus detects the feature point in the face image with great accuracy, irrespective of ambient light and individual differences in the facial structure.

BRIEF DESCRIPTION OF THE DRAWINGS



[0012] The foregoing and additional features and characteristics of the present invention will become more apparent from the following detailed description considered with reference to the accompanying drawings, wherein:

Fig. 1 is a block diagram of an eye detection apparatus according to an embodiment of the present invention;

Fig. 2 is a block diagram showing logical structure of the eye detection apparatus according to the embodiment of the present invention;

Fig. 3 is a block diagram showing structure of a computer shown in Fig. 1;

Fig. 4 is a diagram showing an example of data for determining a face region;

Fig. 5 is a diagram showing an example of a nostril search region;

Fig. 6 is a diagram showing an example of an eye search region;

Fig. 7A is a diagram showing an example of an operator for longitudinal edge detection;

Fig. 7B is a diagram showing an example of an operator for lateral edge detection;

Fig. 7C is a diagram showing an example of gray level difference which is continuous in a vertical direction;

Fig. 7D is a diagram showing an example of gray level difference which is continuous in a horizontal direction;

Fig. 8 is a schematic view showing an example of an original image of an eye search region;

Fig. 9A is a diagram showing an example of vertical edge detection in the eye search region;

Fig. 9B is a diagram showing an example of horizontal edge detection in the eye search region;

Fig. 9C is a diagram showing a resulting image after removing edges with subtle gray level difference from the vertical edges shown in Fig. 9A;

Fig. 9D is a diagram showing a resulting image after removing edges with subtle gray level difference from the horizontal edges shown in Fig. 9B;

Fig. 9E is a diagram showing a resulting image after removing short edges from the vertical edges shown in Fig. 9C;

Fig. 9F is a diagram showing a resulting image after removing short edges from the horizontal edges shown in Fig. 9C;

Fig. 10 is a diagram showing the vertical edges superposing on the horizontal edges;

Fig. 11 is a diagram describing image window scanning and feature point detection;

Fig. 12 is a diagram showing scanning performed by a vertical edge window detached from the image window;

Fig. 13 is a diagram showing scanning performed by a horizontal edge window detached from the image window;

Fig. 14 is a diagram showing an another example of the image window;

Fig. 15 is a diagram showing an example of an image window for detecting the lower eyelid;

Fig. 16 is a diagram showing detected vertical edges of upper and lower eyelids; and

Fig. 17 is a flowchart showing an example of an operation of face feature point detection processing.


DETAILED DESCRIPTION



[0013] Hereinafter, an embodiment of the invention is described in detail with drawings. Identical reference numbers are assigned to identical or corresponding portions in the drawings, and the description is not repeated. Fig. 1 is a block diagram showing a configuration of an eye detection apparatus 1 according to the embodiment of the invention. The eye detection apparatus 1 of the embodiment is comprised of a camera 2 (image capturing means), a lighting source 3 lighting a driver's face, a computer 10 and a display device 4 connected to the computer 10. The camera 2 captures images of the driver's face to create the face images and the computer 10 detects eyes of the driver. The display device 4 is not an essential component and the system does not need the display device 4 unless it is necessary to display the face images, the detection result, the determination result, or the like.

[0014] The camera 2 converts an image formed by a lens into an electric signal by using a device such as Charge Coupled Device (CCD), and then the camera 2 outputs an image data digitalized on a per-pixel basis. Further, the camera 2 creates, for example, a grayscale image of the driver's face. The image data created by the camera 2 includes not only the driver's face but also a background image behind the driver.

[0015] The display device 4, comprised of a Liquid Crystal Display (LCD), a Cathode Ray Tube (CRT), or the like, displays binarized images created based on the face images captured by the camera 2 and the like.

[0016] The computer 10 processes the image data captured by the camera 2, and then detects right and left ends of the driver's face in a width direction of the face image, and further detects upper and lower portions of the driver's face in a longitudinal direction of the face image. Then, the computer 10 sets a region (an eye search region) from which the eyes are searched based on the right and left ends and the upper and lower portions of the face image detected as described above, and detects upper and lower eyelids of the driver's face within the eye search region.

[0017] Fig. 2 is a block diagram illustrating logical structure of the eye detection apparatus 1 of the embodiment. The eye detection apparatus 1 includes the camera 2, an image input unit 21, an eye search region setting unit 22, an edge calculating unit 23 (edge calculating means), an edge labeling unit 24 (noise removing means), an image window scanning unit 25, a feature position determining unit 26, an eyelid determining unit 27, a display processing unit 28, a data storing unit 5, the display device 4, and the like. Face image data 51, face region-eye search region data 52, horizontal-vertical edge data 53, candidate edge data 54, image window data 55 and scanning score data 56 are stored in the data storing unit 5. The eye detection apparatus 1 detects two pairs of the upper and the lower eyelids in the face image.

[0018] Fig. 3 is a block diagram illustrating an example of a physical configuration of the eye detection apparatus 1. As shown in Fig. 3, the computer 10 includes a transmitting and receiving unit 16, an image memory 12, an external memory 13, a control unit 14 (detection target determining means), a main memory 15, a display control device 17, and a lighting source control device 18. The image memory 12, the external memory 13, the main memory 15, the transmitting and receiving unit 16, the display control device 17 and the lighting source control device 18 are respectively connected to the control unit 14 via internal buses 11.

[0019] The control unit 14 is comprised of a Central Processing Unit (hereinafter referred to as CPU) and the like. The control unit 14 executes the processing for the image input unit 21, the eye search region setting unit 22, the edge calculating unit 23, the edge labeling unit 24, the image window scanning unit 25, the feature position determining unit 26, the eyelid determining unit 27, and the display processing unit 28 by following commands programmed in the external memory 13. The control unit 14 and programs executed by the control unit 14 performs the processing for the image input unit 21, the eye searching region setting unit 22, the edge calculating unit 23, the edge labeling unit 24, the image window scanning unit 25, the feature position determining unit 26, the eyelid determining unit 27, and the display processing unit 28.

[0020] The main memory 15 is comprised of a Random-Access Memory (RAM) and the like and serves as a working area of the control unit 14. The data storing unit 5 is stored as the structure of the memory region in a part of the image memory 12 and the main memory 15.

[0021] The external memory 13 is comprised of nonvolatile memories, such as a flash memory, a hard disk, a Digital Versatile Disc (DVD), a Digital Versatile Disc Random-Access Memory (DVD-RAM), a Digital Versatile Disc ReWritable (DVD-RW) or the like. The external memory 13 pre-stores the programs for the control portion 14 to execute the above-mentioned processing. Further, the external memory 13 supplies the data from each program to the control portion 14 in response to the commands from the control unit 14 and stores the data supplied from the control portion 14. For example, time-series image data may be stored in the external memory 13.

[0022] When a network is utilized to for the eye detection apparatus 1, the transmitting and receiving unit 16 is comprised of one of a Modulator-demodulator, a network terminator and either one of a serial interface or a Local Area Network interface (LAN interface) that is connected to either one of the Modulator-demodulator or the network terminator. On the other hand, when the camera 2 is directly connected to the computer 10, the transmitting and receiving unit 16 is comprised of, for example, a National Television Standard Committee interface (NTSC interface). The control unit 14 inputs the image data from the camera 2 via the transmitting and receiving unit 16. The image memory 12 stores the image data that is created by the camera 2 and is input via the transmitting and receiving unit 16.

[0023] The display control device 17 controls the display device 4 under the control of the control unit 14. The lighting source control unit 18 controls the lighting source 3 to be turned on or turned off.

[0024] The control unit 14 executes the programs stored in the external memory 13, thereby processing the image data captured by the camera 2 to detect the left and right ends and the upper and lower portions of the face. Then, the control unit 14 sets the eye search region based on the detection result of the left and right ends, and the upper and lower portions of the face. Then, the control unit 14 detects edges, indicating luminance change in horizontal and vertical directions of the image, in the eye search region to detect the upper and lower eyelids from the edge data.

[0025] Returning to Fig. 2, an operation of each unit of the eye detection apparatus 1 will be described. The camera 2 captures the face images. The image input unit 21 inputs the time-series image data from the camera 2 at predetermined time intervals and stores the time-series images as the face image data 51 in the data storing unit 5.

[0026] The eye search region setting unit 22 extracts the face region from the face image data 51 and sets the eye search region in the face region. In order to extract the face region, for example, edges of a face contour are detected in the face image. Alternatively, the face contour may be extracted by performing pattern matching. Eyebrow edges and mouth edges are respectively detected in upper and lower portions of a range defined by the face contour, thereby setting the face region. Then, the eye search region is set in the face region based on a ratio determined by a statistical data. Fig. 4 shows examples of a face region F and an eye search region E. The eye search region setting unit 22 stores the face region F and the eye search region E as a face region-eye search region data 52 in the data storing unit 5.

[0027] The eye search region E may be set based on an easy-to-detect portion that has a distinctive feature. For example, nostrils are detected and the eye search region E may be set based on the positions of the nostrils. Alternatively, the eye search region E is set by using a distance between the eyebrow and the nostril and width of the face contour. For example, length of the eye search region E is calculated by multiplying the distance between the eyebrow and the nostril by a predetermined ratio and width of the eye search region E is calculated by multiplying the width of the face contour by a predetermined ratio. Then, the calculated length is set as the length of the eye search region E and the upper side of the eye search region E is placed on the eyebrow. As for the width of the eye search region E, the calculated width is set as the width of the eye search region E and the eye search region E is placed along a horizontal centerline of the face contour. Setting the eye search region E improves the efficiency of the eye detection.

[0028] Fig. 5 illustrates an example of a nostril search region N. A region surrounded with a chain line in Fig. 5 represents the nostril search region N. For example, in a case where height of the face region F is referred to as H and width of the face region F is referred to as W, a rectangular region which is 9/16H long and 6/16 W wide is placed at a position which is 2/16 H higher than a lower lip point M and is placed on a center of the face region F in the horizontal direction to be set as the nostril search region N.

[0029] Fig. 6 is a diagram showing an example of the eye search region E. In Fig. 6, two rectangles surrounded by the chain line represent the eye search region E. For example, providing that the width of the face region F is referred to as W, each of the eye search region E is set to a rectangle which is 0.35W long and 0.26W wide. Each rectangle is placed at a position 0.08W higher from a centroid of each nostril. Further, the two rectangles are spaced away from each other by 0.13W. Then, the two rectangles are respectively set as the eye search regions E.

[0030] As shown in Figs. 4 and 6, the external memory 13 stores data for determining the face region F, data for determining the eye search region E and image window data 55 from among the face images stored in the main memory 15. As described above, the eye search region E is a region where the eyes and the eyebrows are presumed to be present. The image window data 55 is for detecting the face feature point, such as eyelids, by scanning the edge images.

[0031] Figs. 7A, 7B, 7C and 7D are diagrams for describing an example of fixed data that is used for edge detection. The external memory 13 stores operators of the sobel filter for horizontal edge detection and vertical edge detection as shown in Figs. 7A and 7B. In this embodiment, a horizontal edge is defined as clustered dots whose luminance changes from bright to dark, or from dark to bright in the horizontal direction. The dots of the horizontal edges are usually clustered continuously in a longitudinal direction. Hence, the horizontal edge is also referred to as a longitudinal direction of the image. On the other hand, the vertical edge is defined as clustered dots whose luminance changes from bright to dark, or from dark to bright in the vertical direction. The dots of the vertical edges usually are clustered continuously in a lateral direction of the image. Hence, the vertically edge is also referred to as a lateral edge.

[0032] The sobel filter for the horizontal edge detection (longitudinal edge) shown in Fig. 7A is an operator for extracting vertically continuous boundaries between dark color and bright color (edge) shown in Fig. 7C. The sobel filter for the vertical edge detection (lateral edge) shown in Fig. 7B is an operator for extracting laterally continuous boundaries between the dark color and the bright color (edge) as shown in Fig. 7D.

[0033] Each value of the sobel filter for horizontal edge detection is multiplied by a luminance value of the corresponding pixel. Then, the products of each sobel filter value and the luminance value are added and the sum of these products is defined as a horizontal edge value of the pixel located in a center of the filter. Similarly, each value of the sobel filter for vertical edge detection is multiplied by a luminance value of the corresponding pixel. Then, the products of each sobel filter value and the luminance value are added and the sum of these products is defined as a vertical edge value of the pixel located in the center of the filter.

[0034] An absolute value of the edge value becomes large in a region with strong luminance change observed in the direction. In a region with subtle luminance change, the absolute value is small. The edge value becomes 0 in a region where the luminance change is not observed. Namely, the edge value corresponds to a partial derivative of the luminance in a certain direction. The edge value may be set to a value determined by methods other than the sobel filter shown in Figs. 7A and 7B as far as the value indicates the degree of the luminance change in a certain direction.

[0035] The horizontal and vertical edge values may be calculated for each pixel of the image. The horizontal edge values of the pixels are arranged based on the pixel arrangement of the original image to create a horizontal edge image, and the vertical edge values of the pixels are arranged based on the pixel arrangement of the original image to create a vertical edge image.

[0036] The edge value may indicate a luminance change observed in any direction of the image. Namely, the edge value calculation is not limited to the horizontal or vertical direction of the image. For example, the luminance changing in an upper right direction at 45 degree angle, or the luminance changing in a lower right direction at 45 degree angle may be indicated by the edge value. When the edge values are calculated with respect to two directions, the luminance change of the two directions, which are orthogonal to one another, should be used. Usually, the image is represented by arranging the pixels divided by horizontal and vertical grids. Thus, the edge value is often calculated in the horizontal and vertical directions.

[0037] When applying the sobel filter for horizontal edge detection shown in Fig. 7A, each of the horizontal edge values of the clustered pixels, changing its luminance from bright to dark in a left to right direction of the image, takes a positive value, and each of the horizontal edge values of the clustered pixels, changing its luminance from dark to bright, takes a negative value. When the clustered pixels change its luminance from bright to dark in the left to right direction and each of the horizontal edge values of the pixels is higher than a predetermined value, the clustered pixels are considered as a longitudinal plus edge. Further, when the clustered pixels changes its luminance from dark to bright in the left to right direction and each absolute value of the horizontal edge values of the clustered pixels is higher than the predetermined value, the clustered pixels are considered as a longitudinal minus edge.

[0038] When applying the sobel filter for vertical edge detection shown in Fig. 7B, each of the vertical edge values of the clustered pixels, changing its luminance from bright to dark in a downward direction of the image, takes a positive value, and each of the horizontal edge value of the clustered pixels, changing its luminance from dark to bright, takes a negative value. When the clustered pixels change its luminance from bright to dark in the downward direction and each of the vertical edge values of the clustered pixels is higher than a predetermined value, the clustered pixels are considered as a lateral plus edge. Further, when the clustered pixels changes its luminance from dark to bright in the downward direction and each absolute value of the vertical edge values of the clustered pixels is higher than a predetermined value, the clustered pixels are considered as a lateral minus edge.

[0039] The edge calculating unit 23 creates the horizontal edge image and the vertical edge image by applying the filters such as the filters shown in Figs. 7A and 7B. Fig. 8 schematically shows an example of an original image of the eye search region E. In Fig. 8, a dark region of the image is hatched. In Fig. 8, a case where upper eyelid shadows appear is shown as an example. Fig. 9A shows an example of the vertical edges detected from the original image of the eye search region E. Fig. 9B shows an example of horizontal edges detected from the original image of the eye search region E.

[0040] In Fig. 9A, a cluster of dots changing its luminance from bright to dark in the downward direction is referred to as a lateral plus edge A, and a cluster of dots changing its luminance from dark to bright in the downward direction is referred to as a lateral minus edge B. Prominent edges, out of the lateral plus edges A, are considered as upper eyelid candidates. Further, prominent edges, out of the lateral minus edges B, are considered as lower eyelid candidates. Other than the above-described candidates, upper and lower edges of the eyebrows, lower edges of upper eyelid shadows (or eye shadow), lower edges of irises are detected as the vertical edges.

[0041] In Fig. 9B, a cluster of dots changing its luminance from bright to dark in a left to right direction is considered as a longitudinal plus edge C, and a cluster of dots changing from dark to bright in the left to right direction is considered as a longitudinal minus edge D. The longitudinal edge (horizontal edge) appears at both ends of each upper eyelid. Thus, each upper eyelid is basically comprised of the longitudinal plus edge C, the lateral plus edge A, and the longitudinal minus edge D and these edges are arranged from the left to the right of the eyelid in an above-described order. In the lower eyelid, the lateral minus edge B (vertical edge) appears, however, the longitudinal edge (horizontal edge) rarely appears. In Fig. 9B, the eye search region B is formed so as to be long in a horizontal direction, and thus, the face contour appears as the longitudinal edges. Further, shadows of eye pits, the shadows of the upper eyelids (or the eye shadow), left and right edges of the irises are detected as the horizontal edges.

[0042] The edge calculating unit 23 removes an edge from the detected edges when gray level difference in the edge is less than a predetermined value. In other words, an edge is removed from the detected edges when the difference of the luminance values between the pixels in the horizontal edge or the difference of the luminance values between the pixels in the vertical edge is less than the predetermined value. Corresponding to Figs. 9A and Fig. 9B, Figs. 9C and 9D are diagrams in which the edges with small gray level difference are removed.

[0043] The edge calculating unit 23 stores the detected horizontal and vertical edges as the horizontal-vertical edge data 53 in the data storing unit 5.

[0044] The edge labeling unit 24 removes an edge from the horizontal-vertical edge data 53 when the number of the continuously clustered pixels, each having an edge value whose absolute value is higher than or equal to a predetermined value, does not reach a predetermined number (continuous score). Here, an edge is removed by setting 0, indicating no luminance change, to the edge values of the pixels of the edge. Further, continuously clustered dots, having a length which is longer than or equal to the predetermined length, are grouped as an edge. Fig. 9E shows the resulting image of the eyelid edge labeling performed on the vertical edges shown in Fig. 9C. Fig. 9F shows the resulting image of the eye edge labeling performed on the horizontal edges shown in Fig. 9D. Removing the short edge points, considered as noise, from the edge image allows the eyelid detection apparatus 1 to perform the scanning with the image window and determine a largest weighted sum with greater accuracy. Details of the processing will be described below.

[0045] The edge labeling unit 24 stores the horizontal-vertical edge image data, in which the noise is removed, as the candidate edge data 54 in the data storing unit 5. In Figs. 9E and 9F, the short edges have been removed. In the candidate edge data 54, the continuously clustered dots are labeled as an edge.

[0046] In Fig. 10, the vertical and horizontal edges, which remain after the eyelid edge labeling, are superposed. The lateral plus edge A, appearing with the longitudinal plus edge C and the longitudinal minus edge D respectively appeared at one side and the other side of the lateral plus edge A, is considered as the most likely upper eyelid candidate.

[0047] The image window scanning unit 25 scans the candidate edge data 54, (or the horizontal-vertical edge data 53) with an image window which is an aggregation of selected pixels formed in a predetermined shape. The edge value corresponding to each pixel in the image window is multiplied by a predefined value determined on a per-pixel basis. Then, all products of each edge value and the predetermined value are added up to calculate a weighted sum. The image window is shifted by one pixel, and the weighted sum of the pixels included in the image window is calculated each shifting.

[0048] A weighting factor, which is the predetermined value to be multiplied to each edge value, is set based on properties of the face feature point to be detected. The weighting factor may be set to a constant value, for example 1 or -1, throughout the image window. Alternatively, the weighting factor may be set on the per-pixel basis. Namely, different values are set as the weighting factor in the single image window. When the weighting factor is uniformly set to 1 throughout the image window, the weighted sum equals the sum of the edge values of the pixels included in the image window. When the weighting factor is uniformly set to -1 throughout the image window, the weighting sum equals the sum of the edge values, each having an inverted sign, of the pixels included in the image window.

[0049] The image window may be comprised of a horizontal edge window used for scanning the horizontal edge image and a vertical edge window used for scanning the vertical edge image. When the scanning is performed, a constant positional relationship is maintained between the horizontal edge window and the vertical edge window. In that case, the image window scanning unit 25 multiplies the horizontal edge value corresponding to each pixel in the horizontal edge window by a predetermined value determined on the per-pixel basis and adds up all products of each horizontal edge value and the predetermined value to calculate the weighed sum. The image window scanning unit 25 similarly calculates the weighted sum of the pixels in the vertical edges by multiplying the vertical edge value corresponding to each pixel in the vertical edge window by a predetermined value determined on the per-pixel basis and adding up all products of each vertical edge value and the predetermined value. Then, the image window scanning unit 25 calculates a total weighted sum (grand total) by adding the weighted sum of the horizontal edge values to the weighted sum of the vertical edge values. The image window scanning unit 25 stores each weighted sum and total weighted sum (grand total) calculated as described above as scanning score data 56 in the data storing unit 5.

[0050] The feature position determining unit 26 determines a position of the image window having the largest weighted sum or the largest total weighted sum in the weighted sums calculated by the image window scanning unit 25 to be a position where the feature point to be detected are present (detection position).

[0051] Figs. 11 to 13 are diagrams for describing the image window scanning and the feature point detection. In Figs. 11 to 13, a region surrounded by a rectangle R of Fig. 10 is enlarged. The image window is composed of horizontal edge windows 7L and 7R and a vertical edge window 8. A constant positional relationship is maintained between the horizontal edge windows 7L and 7R and the vertical edge window 8, while the scanning is being performed on the horizontal and vertical edge images by the image window scanning unit 25. In Fig. 11, the position of the image window having the largest total weighted sum is shown in the chain double dashed line.

[0052] Fig. 12 shows the scanning performed with the vertical edge window detached from the image window. The vertical edge image is scanned with the vertical edge window 8 alone, however, the horizontal edge windows 7L and 7R are shown in a dashed line to show that the constant positional relationship is maintained between the vertical edge window 8 and the horizontal edge windows 7L and 7R. In Fig. 12, the position of the vertical edge window 8 having the largest weighted sum is indicated by the chain double dashed line.

[0053] The weighting factor is uniformly set to a constant value, i.e. 1, throughout the vertical edge window 8 for detecting the lateral plus edge of the upper eyelid. Namely, the edge value of the lateral minus edge is negative and therefore the weighted sum calculated by scanning the vertical edge window 8 is unlikely to be the largest value. Hence, the horizontal minus edge B of Fig. 12 is not detected when setting the weighting factor to 1. When performing the scanning with the vertical edge window 8 alone, the vertical edge window having the largest weighted sum might be positioned at a lower level shown by the chain double dashed line of Fig. 12. The horizontal position of the lateral plus edge may not be determined by the vertical edge window 8 alone.

[0054] Fig. 13 shows the scanning performed by the horizontal edge window detached from the image window. The horizontal edge image is scanned by the horizontal edge windows 7L and 7R alone, however, the vertical edge window 8 is shown in the dashed line to show that the constant positional relationship is maintained between the vertical edge window 8 and the horizontal edge windows 7L and 7R. In Fig. 13, the positions of the horizontal edge windows 7L and 7R having the largest total weighted sum are indicated by the chain double dashed line.

[0055] The weighting factor is uniformly set to a constant value, i.e. 1, throughout the horizontal edge window 7L to detect the longitudinal plus edges C of the upper eyelid. The weighting factor is uniformly set to a constant value, i.e, -1, throughout the horizontal edge window 7R to detect the longitudinal minus edges D of the upper eyelid. Thus, as indicated by the chain double dashed line in Fig. 13, the total weighted sum of the horizontal edge windows 7L and 7R becomes the largest at a position where the horizontal edge window 7L is on the longitudinal plus edge C and the horizontal edge window 7R is on the longitudinal minus edge D. When the scanning is performed with the horizontal edge windows 7L and 7R alone, the largest total weighted sum may be positioned slightly upper than a position indicated by the chain double dashed line in Fig. 13. Basically, the positional relationship between the horizontal edge windows 7L and 7R and the vertical edge window 8 should be considered for determining the position of the image window having the largest total weighted sum.

[0056] Fig. 11 is a diagram in which the vertical edge image of Fig. 12 and the horizontal edge image of Fig. 13 are superposed. As described above, the constant positional relationship is maintained between the vertical edge window 8 and the horizontal edge windows 7L and 7R while scanning the horizontal and vertical edge image respectively. As a result, the position of the image window having the largest total weighted sum is determined to be the detection position. For example, the position of the image window indicated by the chain double dashed line in Fig. 11 is determined to be the position of the upper eyelid.

[0057] Fig. 14 shows another example of the image window. It is not necessary that the horizontal edge windows 7L and 7R are in contact with the vertical edge 8 within the image window. As far as the constant positional relationship is maintained therebetween, the pixels of the horizontal and vertical image widows may be overlapped or spaced away. In Fig. 14, the pixels of the horizontal edge windows 7L and 7R and the vertical edge 8 are overlapped.

[0058] The image window need not be composed of sub-windows, which are the aggregations of the selected pixels formed in the rectangular shape. The shape of the image window may be determined depending on the feature point to be detected. For example, the shape of the image window may be a part of an arc, an aggregation of the arcs, or a pixel pattern determined based on statistical data. Further, the weighting factor may be set based on the properties of the feature point of the face to be detected.

[0059] Fig. 15 shows an example of an image window for detecting the lower eyelid. Since the horizontal edge rarely appears in the lower eyelid, the scanning on the vertical edge image will do. For example, the vertical edge image is scanned with the image window 6 shown in Fig. 15, and the position of the image window 6 having the largest weighted sum is detected as indicated by the chain double dashed line in Fig. 15. When the position of the upper eyelid has been detected, the scanning range of the image window 6 for detecting the lower eyelid may be further limited.

[0060] The positions of the upper and lower eyelids are determined as described above. In Fig. 16, a vertical edge A detected as an upper eyelid and a vertical edge B detected as a lower eyelid are shown. The eyelid determining unit 27 determines the opening and closing degree of the eyes based on edge data. The edge data is created based on the edges which are on the positions of the upper and lower eyelids.

[0061] The display processing unit 28 displays the detection result, i.e. the upper and lower eyelids, as well as the face contour and the like on the display device 4. The arousal level of the driver is presumed from the opening and closing degree of the upper and lower eyelids, and the eye detection apparatus 1 displays warning messages, which may include audible warnings, on the display device 4 when detecting that the driver falls asleep. Further, the data of the upper and lower eyelids may be utilized for presuming the direction of the gaze.

[0062] The operation of the eye detection apparatus 1 will be described. The control unit 14 conducts the operation of the eye detection apparatus 1 by co-operating with the camera 2, the transmitting and receiving unit 16, the image memory 12, the external memory 13, and the main memory 15.

[0063] Fig. 17 is a flowchart showing an example of the operation in the face feature point detection processing. The control unit 14 inputs the face images from the camera 2 through the transmitting and receiving unit 16 in Step S1. Then, as described above, the face region is set and the eye search region is set within the face region in Step S2.

[0064] The control unit 14 detects the horizontal edges and the vertical edges in the eye search region set as described above in Step S3 (edge calculating step). The control unit 14 groups the detected horizontal and vertical edges to perform the eyelid edge labeling such as removing the edge when the length of the edge is shorter than the predetermined length, i.e. continuous score, in Step S4. Further, the position of the image window is initialized in the edge image.

[0065] Next, the control unit 14 multiplies the horizontal edge value, corresponding to each pixel in the horizontal edge window, by the predetermined value determined in the per-pixel basis and adds up all products of each horizontal edge value and the predetermined value to calculate the weighted sum. The control unit 14 also multiplies the vertical edge value, corresponding to each pixel in the vertical edge window, by the predetermined value determined in the per-pixel basis and adds up all products of each vertical edge value and the predetermined value to calculate the weighted sum. Then, the control unit 14 adds the weighted sum of the horizontal edge value to the weighted sum of the vertical edge value to calculate the total weighed sum in Step S5 (detection target determining step). The total weighted sum calculated as above is stored as a value obtained at the position of the image window.

[0066] The control unit 14 shifts the image window by one pixel in Step S6. Then, the control unit 14 determines if the image window is in the search region in Step S7. If the image window is in the search region (Step S7; Yes), the process is returned to Step S5 to calculate the total weighted sum of the image window.

[0067] If the image window is not in the search region (Step S7; No), the image window is moved to a next scanning line in Step S8. Then, the operation is resumed from Step S5. The calculation of the total weighted sum of the image window and the window shift are iteratively looped back while the image window is in the search region (Step S9; Yes).

[0068] Only if the image window is not in the search region (Step S9; No), after the image window is moved to the next scanning line in Step S8, the position of the feature point is detected in Step S10 (detection target determining step). Namely, the position of the image window having the largest total weighted sum in the total weighted sums calculated in Step S5 is determined to be the detection position of the feature point. The horizontal and/ or vertical edges on the position of the image window are extracted as the edges composing the feature point.

[0069] According to the embodiment, the eye detection apparatus 1 accurately detects the eyes in the face image data without being subject to influence of ambient light or individual differences in facial structure.

[0070] According to the embodiment, the eyelid detection is described as an example. However, the technique of the embodiment is applicable to the detection of feature points other than the eyelid by setting the image window and the weighting factor in accordance with the detection target. Even if the face image from which the feature point is searched contains the noise, the noise is removed to some extend by removing the edge lines whose lengths are shorter than the predetermined length as noise contents. Hence, the position of the feature point is determined with greater accuracy. In the embodiment, the position of the image window having the largest total weighted sum is determined to be the detection position where the detection target is present. However, the detection method is not limited to the above-described method, the detection position may be determined by other methods. For example, a threshold value is set in the image window and the number of the edge values which are greater than the threshold value is counted. Then, the position of the image window, containing the largest number of the edge values which are greater than the threshold value, is determined to be the detection position.

[0071] The above-mentioned hardware configuration and the processing illustrated in the flowchart describe only an example of the configuration and the operation of the eye detection apparatus 1, and any desired changes and modifications may be made.

[0072] The main portion of the eye detection apparatus 1, conducting the operation, includes the control unit 14, the transmitting and receiving unit 16, the image memory 12, the external memory 13, the main memory 15 and the like. The main portion may be configured by a computer system for general use, not a dedicated system, For example, a computing program for executing the above-mentioned operation is stored in a readable storage media such as a flexible disc, the CD-ROM, DVD-ROM and the like for distribution, and the eye detection apparatus 1 may be configured so that the above-described operation is conducted by installing the program on the computer. Alternatively, the program is stored in a storage media included in a server on the communication network such as internet and the like, and the eye detection apparatus 1 may be configured so that the above-described operation is conducted by downloading the program onto the computer system.

[0073] Further, when the functions of the eye detection apparatus 1 are accomplished by assigning the tasks to the operation system (OS) and the application programs or co-operating the operation system and the application programs, only the application programs may be stored in the storage media or the memory device.

[0074] Additionally, the computing system may be distributed through the communication network by superimposing the computing program on a carrier wave. For example, the computing program may be distributed through the network by uploading the program to a bulletin board system (BBS) on the communication network. The eye detection apparatus 1 may be configured so that the above-described processes are executed by activating the computer program and running the application program under the control of the operation system in a similar manner to other applications.

[0075] A face feature point detection apparatus (1) includes an image capturing device (2), an edge calculating unit (23) calculating edge values indicating a luminance change in a direction, and a detection target determining unit (14) scanning an edge image, which is created by arranging the edge values for corresponding pixels based on pixel arrangement of the face image, with an image window being an aggregation of selected pixels formed in a predetermined shape, the detection target determining unit (14) determining a position of the image window having a largest weighted sum of weighted sums to be a detection position where a detection target is present, providing that the weighted sum is calculated by multiplying the edge value which corresponds to each pixel in the image window by a predetermined value defined on a per-pixel basis and adding up all products of the edge value and the predetermined value.


Claims

1. A face feature point detection apparatus (1), comprising:

an image capturing means (2) capturing a face image;

an edge calculating means (23) creating a horizontal edge image by arranging horizontal edge values, each horizontal edge value indicating a luminance change in a horizontal direction, based on a pixel arrangement in the face image, and a vertical edge image by arranging vertical edge values, each vertical edge value indicating a luminance change in a vertical direction, based on the pixel arrangement in the face image; and

a detection target determining means (14) scanning the horizontal edge image and the vertical edge image, which are created by the edge calculating means with an image window, which is configured with plural sub-windows (7L, 7R, 8) including horizontal edge windows (7L, 7R) each of which is an aggregation of selected pixels formed in a predetermined shape for scanning the horizontal edge image and a vertical edge window (8) that is an aggregation of selected pixels formed in a predetermined shape for scanning the vertical edge image, a constant positional relationship is maintained between the horizontal edge windows (7L, 7R) and the vertical edge window (8) while scanning the edge image, the detection target determining means determining a position of the image window having a largest total value among total values, each of which is obtained by adding a weighted sum that is obtained by adding values calculated by multiplying the horizontal edge value corresponding to each pixel within each of the horizontal edge windows (7L, 7R) by a predetermined value corresponding to each pixel within the horizontal edge window (7L, 7R) and a weighted sum that is obtained by adding values calculated by multiplying the vertical edge value corresponding to each pixel within the vertical edge window (8) by a predetermined value corresponding to each pixel within the vertical edge window (8), as a detection position where a detection target is present,

wherein an eye is the detection target, the vertical edge window (8) corresponds to a vertical edge of an eyelid, and the horizontal edge windows (7L, 7R) correspond to a horizontal edge of an inner corner of the eye and a horizontal edge of an outer corner of the eye,

wherein the horizontal edge windows (7L, 7R), corresponding to the inner and outer corners of the eye, are located at both sides of the vertical edge window (8) at a level lower than the vertical edge window (8), and

wherein the predetermined value is uniformly set to a predetermined positive value throughout the vertical edge window (8), the predetermined value is uniformly set to a predetermined positive value throughout one of the horizontal edge windows (7L, 7R) and the predetermined value is uniformly set to a predetermined negative value throughout the other one of the horizontal edge windows (7L, 7R).


 
2. A face feature point detection apparatus according to Claim 1, further comprising:
a noise removing means (24) removing an edge containing continuously clustered pixels whose number is less than a predetermined value, providing that each pixel has the edge value whose absolute value is larger than or equal to a predetermined threshold value.
 
3. A face feature point detection method, comprising:

an edge calculating step (23) creating a horizontal edge image by arranging horizontal edge values, each horizontal edge value indicating a luminance change in a horizontal direction, based on a pixel arrangement in the face image, and a vertical edge image by arranging vertical edge values, each vertical edge value indicating a luminance change in a vertical direction, based on the pixel arrangement in the face image; and

a detection target determining step (14) scanning the horizontal edge image and the vertical edge image, which are created by the edge calculating step (23) with an image window, which is configured with plural sub-windows (7L, 7R, 8) including horizontal edge windows (7L, 7R) each of which is an aggregation of selected pixels formed in a predetermined shape for scanning the horizontal edge image and a vertical edge window (8) that is an aggregation of selected pixels formed in a predetermined shape for scanning the vertical edge image, a constant positional relationship is maintained between the horizontal edge windows (7L, 7R) and the vertical edge window (8) while scanning the edge image, the detection target determining step (14) determining a position of the image window having a largest total value among total values, each of which is obtained by adding a weighted sum that is obtained by adding values calculated by multiplying the horizontal edge value corresponding to each pixel within each of the horizontal edge windows (7L, 7R) by a predetermined value corresponding to each pixel within the horizontal edge window (7L, 7R) and a weighted sum that is obtained by adding values calculated by multiplying the vertical edge value corresponding to each pixel within the vertical edge window (8) by a predetermined value corresponding to each pixel within the vertical edge window (8), as a detection position where a detection target is present,

wherein an eye is the detection target, the vertical edge window (8) corresponds to a vertical edge of an eyelid, and the horizontal edge windows (7L, 7R) correspond to a horizontal edge of an inner corner of the eye and a horizontal edge of an outer corner of the eye,

wherein the horizontal edge windows (7L, 7R), corresponding to the inner and outer corners of the eye, are located at both sides of the vertical edge window (8) at a level lower than the vertical edge window (8), and

wherein the predetermined value is uniformly set to a predetermined positive value throughout the vertical edge window (8), the predetermined value is uniformly set to a predetermined positive value throughout one of the horizontal edge windows (7L, 7R) and the predetermined value is uniformly set to a predetermined negative value throughout the other one of the horizontal edge windows (7L, 7R).


 
4. A program instructing a computer (10) to function as:

an edge calculating means (23) creating a horizontal edge image by arranging horizontal edge values, each horizontal edge value indicating a luminance change in a horizontal direction, based on a pixel arrangement in the face image, and a vertical edge image by arranging vertical edge values, each vertical edge value indicating a luminance change in a vertical direction, based on the pixel arrangement in the face image; and

a detection target determining means (14) scanning the horizontal edge image and the vertical edge image, which are created by the edge calculating means (23) with an image window, which is configured with plural sub-windows (7L, 7R, 8) including horizontal edge windows (7L, 7R) each of which is an aggregation of selected pixels formed in a predetermined shape for scanning the horizontal edge image and a vertical edge window (8) that is an aggregation of selected pixels formed in a predetermined shape for scanning the vertical edge image, a constant positional relationship is maintained between the horizontal edge windows (7L, 7R) and the vertical edge window (8) while scanning the edge image, the detection target determining means (14) determining a position of the image window having a largest total value among total values, each of which is obtained by adding a weighted sum that is obtained by adding values calculated by multiplying the horizontal edge value corresponding to each pixel within each of the horizontal edge window (7L, 7R) by a predetermined value corresponding to each pixel within the horizontal edge window (7L, 7R) and a weighted sum that is obtained by adding values calculated by multiplying the vertical edge value corresponding to each pixel within the vertical edge window (8) by a predetermined value corresponding to each pixel within the vertical edge window (8), as a detection position where a detection target is present,

wherein an eye is the detection target, the vertical edge window (8) corresponds to a vertical edge of an eyelid, and the horizontal edge windows (7L, 7R) correspond to a horizontal edge of an inner corner of the eye and a horizontal edge of an outer corner of the eye,

wherein the horizontal edge windows (7L, 7R), corresponding to the inner and outer corners of the eye, are located at both sides of the vertical edge window (8) at a level lower than the vertical edge window (8), and

wherein the predetermined value is uniformly set to a predetermined positive value throughout the vertical edge window (8), the predetermined value is uniformly set to a predetermined positive value throughout one of the horizontal edge windows (7L, 7R) and the predetermined value is uniformly set to a predetermined negative value throughout the other one of the horizontal edge windows (7L, 7R).


 


Ansprüche

1. Gesichtsmerkmalpunkterfassungsvorrichtung (1), mit

einer Bildaufnahmeeinrichtung (2), die ein Gesichtsbild aufnimmt,

einer Kantenberechnungseinrichtung (23), die ein Horizontalkantenbild durch Anordnen von Horizontalkantenwerten, wobei jeder Horizontalkantenwert eine Luminanzänderung in einer Horizontalrichtung indiziert, basierend auf einer Pixelanordnung in dem Gesichtsbild, und ein Vertikalkantenbild durch Anordnen von Vertikalkantenwerten, wobei jeder Vertikalkantenwert eine Luminanzänderung in einer Vertikalrichtung indiziert, basierend auf der Pixelanordnung in dem Gesichtsbild erstellt, und

einer Erfassungszielbestimmungseinrichtung (14), die das Horizontalkantenbild und das Vertikalkantenbild, die durch die Kantenberechnungseinrichtung erstellt sind, mittels eines Bildfensters abtastet, das mittels mehrerer Unterfenster (7L, 7R, 8) einschließlich Horizontalkantenfenstern (7L, 7R), von denen jedes eine Ansammlung ausgewählter Pixel ist, die in einer vorbestimmten Form zur Abtastung des Horizontalkantenbildes ausgebildet sind, und einem Vertikalkantenfenster (8), das eine Ansammlung ausgewählter Pixel ist, die in einer vorbestimmten Form zur Abtastung des Vertikalkantenbildes ausgebildet sind, konfiguriert ist, wobei eine konstante Positionsbeziehung zwischen den Horizontalkantenfenstern (7L, 7R) und dem Vertikalkantenfenster (8) während eines Abtastens des Kantenbilds beibehalten ist, wobei die Erfassungszielbestimmungseinrichtung eine Position des Bildfensters mit einem größten Gesamtwert unter Gesamtwerten, von denen jeder durch Addieren einer gewichteten Summe, die durch Addieren von Werten erlangt ist, die durch Multiplizieren des Horizontalkantenwerts entsprechend jedem Pixel innerhalb jedes der Horizontalkantenfenster (7L, 7R) mit einem vorbestimmten Wert entsprechend jedem Pixel innerhalb des Horizontalkantenfensters (7L, 7R) berechnet sind, und einer gewichteten Summe, die durch Addieren von Werten erlangt ist, die durch Multiplizieren des Vertikalkantenwerts entsprechend jedem Pixel innerhalb des Vertikalkantenfensters (8) mit einem vorbestimmten Wert entsprechend jedem Pixel innerhalb des Vertikalkantenfensters (8) berechnet sind, erlangt ist, als eine Erfassungsposition bestimmt, an der ein Erfassungsziel vorhanden ist,

wobei ein Auge das Erfassungsziel ist, wobei das Vertikalkantenfenster (8) einer Vertikalkante eines Augenlids entspricht, und die Horizontalkantenfenster (7L, 7R) einer Horizontalkante einer inneren Ecke des Auges und einer Horizontalkante einer äußeren Ecke des Auges entsprechen,

wobei die Horizontalkantenfenster (7L, 7R), die den inneren und äußeren Ecken des Auges entsprechen, an beiden Seiten des Vertikalkantenfensters (8) bei einem Niveau geringer als das Vertikalkantenfenster (8) angeordnet sind, und

wobei der vorbestimmte Wert über das Vertikalkantenfenster (8) einheitlich auf einen vorbestimmten positiven Wert eingestellt ist, der vorbestimmte Wert über eines der Horizontalkantenfenster (7L, 7R) einheitlich auf einen vorbestimmten positiven Wert eingestellt ist, und der vorbestimmte Wert über das andere der Horizontalkantenfenster (7L, 7R) einheitlich auf einen vorbestimmten negativen Wert eingestellt ist.


 
2. Gesichtsmerkmalpunkterfassungsvorrichtung nach Anspruch 1, ferner mit
einer Rauschentferneinrichtung (24), die eine Kante entfernt, die kontinuierlich gruppierte Pixel aufweist, deren Anzahl geringer als ein vorbestimmter Wert ist, unter der Voraussetzung, dass jeder Pixel den Kantenwert aufweist, dessen Absolutwert größer als oder gleich wie ein vorbestimmter Schwellenwert ist.
 
3. Gesichtsmerkmalpunkterfassungsverfahren, mit

einem Kantenberechnungsschritt (23), der ein Horizontalkantenbild durch Anordnen von Horizontalkantenwerten, wobei jeder Horizontalkantenwert eine Luminanzänderung in einer Horizontalrichtung indiziert, basierend auf einer Pixelanordnung in dem Gesichtsbild, und ein Vertikalkantenbild durch Anordnen von Vertikalkantenwerten, wobei jeder Vertikalkantenwert eine Luminanzänderung in einer Vertikalrichtung indiziert, basierend auf der Pixelanordnung in dem Gesichtsbild erstellt, und

einem Erfassungszielbestimmungsschritt (14), der das Horizontalkantenbild und das Vertikalkantenbild, die durch den Kantenberechnungsschritt (23) erstellt sind, mittels eines Bildfensters abtastet, das mittels mehrerer Unterfenster (7L, 7R, 8) einschließlich Horizontalkantenfenstern (7L, 7R), von denen jedes eine Ansammlung ausgewählter Pixel ist, die in einer vorbestimmten Form zur Abtastung des Horizontalkantenbildes ausgebildet sind, und einem Vertikalkantenfenster (8), das eine Ansammlung ausgewählter Pixel ist, die in einer vorbestimmten Form zur Abtastung des Vertikalkantenbildes ausgebildet sind, konfiguriert ist, wobei eine konstante Positionsbeziehung zwischen den Horizontalkantenfenstern (7L, 7R) und dem Vertikalkantenfenster (8) während eines Abtastens des Kantenbildes beibehalten wird, wobei der Erfassungszielbestimmungsschritt (14) eine Position des Bildfensters mit einem größten Gesamtwert unter Gesamtwerten, von denen jeder durch Addieren einer gewichteten Summe, die durch Addieren von Werten erlangt ist, die durch Multiplizieren des Horizontalkantenwerts entsprechend jedem Pixel innerhalb jedes der Horizontalkantenfenster (7L, 7R) mit einem vorbestimmten Wert entsprechend jedem Pixel innerhalb des Horizontalkantenfensters (7L, 7R) berechnet sind, und einer gewichteten Summe, die durch Addieren von Werten erlangt ist, die durch Multiplizieren des Vertikalkantenwertes entsprechend jedem Pixel innerhalb des Vertikalkantenfensters (8) mit einem vorbestimmten Wert entsprechend jedem Pixel innerhalb des Vertikalkantenfensters (8) berechnet sind, erlangt ist, als eine Erfassungsposition bestimmt, an der ein Erfassungsziel vorhanden ist,

wobei ein Auge das Erfassungsziel ist, das Vertikalkantenfenster (8) einer Vertikalkante eines Augenlids entspricht, und die Horizontalkantenfenster (7L, 7R) einer Horizontalkante einer inneren Ecke des Auges und einer Horizontalkante einer äußeren Ecke des Auges entsprechen,

wobei die Horizontalkantenfenster (7L, 7R), die den inneren und äußeren Ecken des Auges entsprechen, an beiden Seiten des Vertikalkantenfensters (8) bei einem Niveau geringer als das Vertikalkantenfenster (8) angeordnet sind, und

wobei der vorbestimmte Wert über das Vertikalkantenfenster (8) einheitlich auf einen vorbestimmten positiven Wert eingestellt ist, der vorbestimmte Wert über eines der Horizontalkantenfenster (7L, 7R) einheitlich auf einen vorbestimmten positiven Wert eingestellt ist, und der vorbestimmte Wert über das andere der Horizontalkantenfenster (7L, 7R) einheitlich auf einen vorbestimmten negativen Wert eingestellt ist.


 
4. Programm, das einen Computer (10) anweist, zu wirken als:

eine Kantenberechnungseinrichtung (23), die ein Horizontalkantenbild durch Anordnen von Horizontalkantenwerten, wobei jeder Horizontalkantenwert eine Luminanzänderung in einer Horizontalrichtung indiziert, basierend auf einer Pixelanordnung in dem Gesichtsbild, und ein Vertikalkantenbild durch Anordnen von Vertikalkantenwerten, wobei jeder Vertikalkantenwert eine Luminanzänderung in einer Vertikalrichtung indiziert, basierend auf der Pixelanordnung in dem Gesichtsbild erstellt, und

eine Erfassungszielbestimmungseinrichtung (14), die das Horizontalkantenbild und das Vertikalkantenbild, die durch die Kantenberechnungseinrichtung (23) erstellt sind, mittels eines Bildfensters abtastet, das mittels mehrerer Unterfenster (7L, 7R, 8) einschließlich Horizontalkantenfenstern (7L, 7R), von denen jedes eine Ansammlung ausgewählter Pixel ist, die in einer vorbestimmten Form zur Abtastung des Horizontalkantenbildes ausgebildet sind, und einem Vertikalkantenfenster (8), das eine Ansammlung ausgewählter Pixel ist, die in einer vorbestimmten Form zur Abtastung des Vertikalkantenbildes ausgebildet sind, konfiguriert ist, wobei eine konstante Positionsbeziehung zwischen den Horizontalkantenfenstern (7L, 7R) und dem Vertikalkantenfenster (8) während eines Abtastens des Kantenbilds beibehalten ist, wobei die Erfassungszielbestimmungseinrichtung eine Position des Bildfensters mit einem größten Gesamtwert unter Gesamtwerten, von denen jeder durch Addieren einer gewichteten Summe, die durch Addieren von Werten erlangt ist, die durch Multiplizieren des Horizontalkantenwerts entsprechend jedem Pixel innerhalb jedes der Horizontalkantenfenster (7L, 7R) mit einem vorbestimmten Wert entsprechend jedem Pixel innerhalb des Horizontalkantenfensters (7L, 7R) berechnet sind, und einer gewichteten Summe, die durch Addieren von Werten erlangt ist, die durch Multiplizieren des Vertikalkantenwerts entsprechend jedem Pixel innerhalb des Vertikalkantenfensters (8) mit einem vorbestimmten Wert entsprechend jedem Pixel innerhalb des Vertikalkantenfensters (8) berechnet sind, erlangt ist, als eine Erfassungsposition bestimmt, an der ein Erfassungsziel vorhanden ist,

wobei ein Auge das Erfassungsziel ist, wobei das Vertikalkantenfenster (8) einer Vertikalkante eines Augenlids entspricht, und die Horizontalkantenfenster (7L, 7R) einer Horizontalkante einer inneren Ecke des Auges und einer Horizontalkante einer äußeren Ecke des Auges entsprechen,

wobei die Horizontalkantenfenster (7L, 7R), die den inneren und äußeren Ecken des Auges entsprechen, an beiden Seiten des Vertikalkantenfensters (8) bei einem Niveau geringer als das Vertikalkantenfenster (8) angeordnet sind, und

wobei der vorbestimmte Wert über das Vertikalkantenfenster (8) einheitlich auf einen vorbestimmten positiven Wert eingestellt ist, der vorbestimmte Wert über eines der Horizontalkantenfenster (7L, 7R) einheitlich auf einen vorbestimmten positiven Wert eingestellt ist, und der vorbestimmte Wert über das andere der Horizontalkantenfenster (7L, 7R) einheitlich auf einen vorbestimmten negativen Wert eingestellt ist.


 


Revendications

1. Appareil de détection de point de caractéristique faciale (1), comprenant :

un moyen de capture d'image (2) capturant une image de visage ;

un moyen de calcul de bord (23) créant une image de bord horizontal en agençant des valeurs de bord horizontal, chaque valeur de bord horizontal indiquant un changement de luminance dans une direction horizontale, sur la base d'un agencement de pixels dans l'image de visage, et une image de bord vertical en agençant des valeurs de bord vertical, chaque valeur de bord vertical indiquant un changement de luminance dans une direction verticale, sur la base de l'agencement de pixels dans l'image de visage ; et

un moyen de détermination de cible de détection (14) balayant l'image de bord horizontal et l'image de bord vertical, lesquelles sont créées par le moyen de calcul de bord avec une fenêtre d'image, laquelle est configurée avec plusieurs sous-fenêtres (7L, 7R, 8) incluant des fenêtres de bord horizontal (7L, 7R) dont chacune correspond à une agrégation de pixels sélectionnés formés dans une forme prédéterminée pour balayer l'image de bord horizontal, et une fenêtre de bord vertical (8) qui correspond à une agrégation de pixels sélectionnés formés dans une forme prédéterminée pour balayer l'image de bord vertical, dans lequel une relation de position constante est maintenue entre les fenêtres de bord horizontal (7L, 7R) et la fenêtre de bord vertical (8) lors du balayage de l'image de bord, le moyen de détermination de cible de détection déterminant une position de la fenêtre d'image présentant une valeur totale la plus élevée parmi des valeurs totales, dont chacune est obtenue en additionnant une somme pondérée, qui est obtenue en additionnant des valeurs calculées en multipliant la valeur de bord horizontal correspondant à chaque pixel dans chacune des fenêtres de bord horizontal (7L, 7R) par une valeur prédéterminée correspondant à chaque pixel dans la fenêtre de bord horizontal (7L, 7R), et une somme pondérée qui est obtenue en additionnant des valeurs calculées en multipliant la valeur de bord vertical correspondant à chaque pixel dans la fenêtre de bord vertical (8) par une valeur prédéterminée correspondant à chaque pixel dans la fenêtre de bord vertical (8), en tant qu'une position de détection où une cible de détection est présente ;

dans lequel un oeil est la cible de détection, la fenêtre de bord vertical (8) correspond à un bord vertical d'une paupière, et les fenêtres de bord horizontal (7L, 7R) correspondent à un bord horizontal d'un coin intérieur de l'oeil et à un bord horizontal d'un coin extérieur de l'oeil ;

dans lequel les fenêtres de bord horizontal (7L, 7R), correspondant aux coins intérieur et extérieur de l'oeil, sont situées des deux côtés de la fenêtre de bord vertical (8) à un niveau inférieur à la fenêtre de bord vertical (8) ; et

dans lequel la valeur prédéterminée est définie uniformément sur une valeur positive prédéterminée tout au long de la fenêtre de bord vertical (8), la valeur prédéterminée est définie uniformément sur une valeur positive prédéterminée tout au long de l'une des fenêtres de bord horizontal (7L, 7R), et la valeur prédéterminée est définie uniformément sur une valeur négative prédéterminée tout au long de l'autre des fenêtres de bord horizontal (7L, 7R).


 
2. Appareil de détection de point de caractéristique faciale selon la revendication 1, comprenant en outre :
un moyen de suppression de bruit (24) supprimant un bord contenant des pixels groupés en continu dont le nombre est inférieur à une valeur prédéterminée, à condition que chaque pixel présente la valeur de bord dont la valeur absolue est supérieure ou égale à une valeur de seuil prédéterminée.
 
3. Procédé de détection de point de caractéristique faciale, comprenant :

une étape de calcul de bord (23) créant une image de bord horizontal en agençant des valeurs de bord horizontal, chaque valeur de bord horizontal indiquant un changement de luminance dans une direction horizontale, sur la base d'un agencement de pixels dans l'image de visage, et une image de bord vertical en agençant des valeurs de bord vertical, chaque valeur de bord vertical indiquant un changement de luminance dans une direction verticale, sur la base de l'agencement de pixels dans l'image de visage ; et

une étape de détermination de cible de détection (14) balayant l'image de bord horizontal et l'image de bord vertical, lesquelles sont créées par l'étape de calcul de bord (23) avec une fenêtre d'image, laquelle est configurée avec plusieurs sous-fenêtres (7L, 7R, 8) incluant des fenêtres de bord horizontal (7L, 7R) dont chacune correspond à une agrégation de pixels sélectionnés formés dans une forme prédéterminée pour balayer l'image de bord horizontal, et une fenêtre de bord vertical (8) qui correspond à une agrégation de pixels sélectionnés formés dans une forme prédéterminée pour balayer l'image de bord vertical, dans lequel une relation de position constante est maintenue entre les fenêtres de bord horizontal (7L, 7R) et la fenêtre de bord vertical (8) lors du balayage de l'image de bord, l'étape de détermination de cible de détection (14) déterminant une position de la fenêtre d'image présentant une valeur totale la plus élevée parmi des valeurs totales, dont chacune est obtenue en additionnant une somme pondérée, qui est obtenue en additionnant des valeurs calculées en multipliant la valeur de bord horizontal correspondant à chaque pixel dans chacune des fenêtres de bord horizontal (7L, 7R) par une valeur prédéterminée correspondant à chaque pixel dans la fenêtre de bord horizontal (7L, 7R), et une somme pondérée qui est obtenue en additionnant des valeurs calculées en multipliant la valeur de bord vertical correspondant à chaque pixel dans la fenêtre de bord vertical (8) par une valeur prédéterminée correspondant à chaque pixel dans la fenêtre de bord vertical (8), en tant qu'une position de détection où une cible de détection est présente ;

dans lequel un oeil est la cible de détection, la fenêtre de bord vertical (8) correspond à un bord vertical d'une paupière, et les fenêtres de bord horizontal (7L, 7R) correspondent à un bord horizontal d'un coin intérieur de l'oeil et à un bord horizontal d'un coin extérieur de l'oeil ;

dans lequel les fenêtres de bord horizontal (7L, 7R), correspondant aux coins intérieur et extérieur de l'oeil, sont situées des deux côtés de la fenêtre de bord vertical (8) à un niveau inférieur à la fenêtre de bord vertical (8) ; et

dans lequel la valeur prédéterminée est définie uniformément sur une valeur positive prédéterminée tout au long de la fenêtre de bord vertical (8), la valeur prédéterminée est définie uniformément sur une valeur positive prédéterminée tout au long de l'une des fenêtres de bord horizontal (7L, 7R), et la valeur prédéterminée est définie uniformément sur une valeur négative prédéterminée tout au long de l'autre des fenêtres de bord horizontal (7L, 7R).


 
4. Programme donnant instruction à un ordinateur (10) de fonctionner en tant que :

un moyen de calcul de bord (23) créant une image de bord horizontal en agençant des valeurs de bord horizontal, chaque valeur de bord horizontal indiquant un changement de luminance dans une direction horizontale, sur la base d'un agencement de pixels dans l'image de visage, et une image de bord vertical en agençant des valeurs de bord vertical, chaque valeur de bord vertical indiquant un changement de luminance dans une direction verticale, sur la base de l'agencement de pixels dans l'image de visage ; et

un moyen de détermination de cible de détection (14) balayant l'image de bord horizontal et l'image de bord vertical, lesquelles sont créées par le moyen de calcul de bord (23) avec une fenêtre d'image, laquelle est configurée avec plusieurs sous-fenêtres (7L, 7R, 8) incluant des fenêtres de bord horizontal (7L, 7R) dont chacune correspond à une agrégation de pixels sélectionnés formés dans une forme prédéterminée pour balayer l'image de bord horizontal, et une fenêtre de bord vertical (8) qui correspond à une agrégation de pixels sélectionnés formés dans une forme prédéterminée pour balayer l'image de bord vertical, dans lequel une relation de position constante est maintenue entre les fenêtres de bord horizontal (7L, 7R) et la fenêtre de bord vertical (8) lors du balayage de l'image de bord, le moyen de détermination de cible de détection (14) déterminant une position de la fenêtre d'image présentant une valeur totale la plus élevée parmi des valeurs totales, dont chacune est obtenue en additionnant une somme pondérée, qui est obtenue en additionnant des valeurs calculées en multipliant la valeur de bord horizontal correspondant à chaque pixel dans chacune des fenêtres de bord horizontal (7L, 7R) par une valeur prédéterminée correspondant à chaque pixel dans la fenêtre de bord horizontal (7L, 7R), et une somme pondérée qui est obtenue en additionnant des valeurs calculées en multipliant la valeur de bord vertical correspondant à chaque pixel dans la fenêtre de bord vertical (8) par une valeur prédéterminée correspondant à chaque pixel dans la fenêtre de bord vertical (8), en tant qu'une position de détection où une cible de détection est présente ;

dans lequel un oeil est la cible de détection, la fenêtre de bord vertical (8) correspond à un bord vertical d'une paupière, et les fenêtres de bord horizontal (7L, 7R) correspondent à un bord horizontal d'un coin intérieur de l'oeil et à un bord horizontal d'un coin extérieur de l'oeil ;

dans lequel les fenêtres de bord horizontal (7L, 7R), correspondant aux coins intérieur et extérieur de l'oeil, sont situées des deux côtés de la fenêtre de bord vertical (8) à un niveau inférieur à la fenêtre de bord vertical (8) ; et

dans lequel la valeur prédéterminée est définie uniformément sur une valeur positive prédéterminée tout au long de la fenêtre de bord vertical (8), la valeur prédéterminée est définie uniformément sur une valeur positive prédéterminée tout au long de l'une des fenêtres de bord horizontal (7L, 7R), et la valeur prédéterminée est définie uniformément sur une valeur négative prédéterminée tout au long de l'autre des fenêtres de bord horizontal (7L, 7R).


 




Drawing


















































Cited references

REFERENCES CITED IN THE DESCRIPTION



This list of references cited by the applicant is for the reader's convenience only. It does not form part of the European patent document. Even though great care has been taken in compiling the references, errors or omissions cannot be excluded and the EPO disclaims all liability in this regard.

Patent documents cited in the description