WO2016104156A1 - 画像処理方法 - Google Patents

画像処理方法 Download PDF

Info

Publication number
WO2016104156A1
WO2016104156A1 PCT/JP2015/084585 JP2015084585W WO2016104156A1 WO 2016104156 A1 WO2016104156 A1 WO 2016104156A1 JP 2015084585 W JP2015084585 W JP 2015084585W WO 2016104156 A1 WO2016104156 A1 WO 2016104156A1
Authority
WO
WIPO (PCT)
Prior art keywords
region
image
image processing
character
subject
Prior art date
Application number
PCT/JP2015/084585
Other languages
English (en)
French (fr)
Inventor
泰 稲葉
Original Assignee
キヤノンイメージングシステムズ株式会社
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Priority claimed from JP2015193735A external-priority patent/JP6430914B2/ja
Application filed by キヤノンイメージングシステムズ株式会社 filed Critical キヤノンイメージングシステムズ株式会社
Publication of WO2016104156A1 publication Critical patent/WO2016104156A1/ja
Priority to US15/287,066 priority Critical patent/US10007846B2/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/60Analysis of geometric attributes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/10Image acquisition

Definitions

  • the present invention relates to an image processing method for photographs taken at an event such as a marathon event.
  • Non-Patent Document 1 Based on the detected face position of the runner, a technique for estimating the position of the bib number and reading the bib number using an OCR (Optical Character Reader) is known as a conventional technique (see Non-Patent Document 1).
  • Non-Patent Document 1 has a problem that, when reading the number number of a person from the captured image, characters such as signs and road signs in the background in the image are erroneously detected as the number number. Further, when the face of a person cannot be detected from the image, or when the number is greatly deformed and the shape is distorted, the number number cannot be read correctly by character recognition by OCR.
  • the bib attached to the runner's body is characterized by being deformed toward the end with respect to the depth when photographed from the lateral direction, and the character spacing being changed. Since the technique of Non-Patent Document 1 assumes that the runner is photographed from the front, the bib number cannot be correctly read by OCR.
  • the present invention has been made in view of the above problems, and in a participant's image taken at an event, the numbering area of the detected number is increased by performing image processing on the detected number number area, and the recognized number number is recognized.
  • An object of the present invention is to provide an image processing method for associating a number with a person in an image.
  • an image processing method includes a subject detection step of detecting one or more specific subjects from an input image, and a position of the subject detected in the subject detection step.
  • a first region estimation step for estimating a first region in which identification information for specifying the subject exists, and a second region including the identification information in the first region estimated in the first region estimation step.
  • a second region detecting step for detecting a region; an image processing step for performing image processing on the second region detected in the second region detecting step; and the identification information for a processing result of the image processing step.
  • An identification information recognition step for performing the recognition process and for associating the recognition process result with the input image.
  • the number number area is efficiently detected from the captured image, and the number number recognition accuracy is improved by performing image processing on the number number area, and the recognition number number is associated with the person image. Can be performed.
  • FIG. 1 is a block diagram showing an example of an image processing apparatus 100 according to a first embodiment of the present invention.
  • FIG. 2 is a flowchart for explaining a process executed by the image processing apparatus 100 until a photographed image is read and a bib number is associated with a person image.
  • FIG. 3 is a diagram illustrating each region processed by the subject detection unit 102.
  • FIG. [FIGS. 4A to 4C] FIGS. 4A to 4C are diagrams illustrating inclination correction performed on the race bib character area 304 by the image processing unit 105.
  • FIGS. 5A to 5C are diagrams illustrating depth correction performed by the image processing unit 105 on a bib character area having a depth.
  • FIG. 6 is a block diagram showing an example of an image processing apparatus 110 according to the second embodiment of the present invention.
  • FIG. 7 is a flowchart for explaining processing executed by the image processing apparatus 110 until a photographed image is read and a bib number is associated with a person image.
  • FIGS. 8A to 8C are diagrams for explaining detection of a frame and a character area of a race bib.
  • FIG. 9 is a block diagram showing an example of an image processing apparatus 900 according to the third embodiment of the present invention.
  • FIG. 10 is a flowchart for explaining processing executed by the image processing apparatus 900 until the moving image reproduction is performed for the runner having the bib number selected by the user by synchronizing the moving image reproduction.
  • FIG. 1 is a block diagram showing an example of an image processing apparatus 100 according to the first embodiment of the present invention. ⁇ Configuration of Image Processing Device 100>
  • the illustrated image processing apparatus 100 is an apparatus such as a personal computer (PC).
  • PC personal computer
  • Devices such as mobile phones, PDAs, smartphones and tablet terminals may be used.
  • the image processing apparatus 100 includes a CPU, a memory, a communication unit, and a storage unit (both not shown) as a hardware configuration.
  • the CPU controls the entire image processing apparatus 100.
  • the memory is RAM or ROM.
  • the communication unit is an interface for connecting to a LAN, a wireless communication path, a serial interface, and the like, and is a functional unit for transmitting and receiving data to and from the imaging apparatus for transmitting a captured image to the image processing apparatus.
  • the storage unit includes an operating system that is software (hereinafter referred to as OS: not shown), an image reading unit 101, a subject detection unit 102, a race bib region estimation unit 103, a race bib character region detection unit 104, an image processing unit 105, and The character recognition unit 106 is stored, and software related to other functions is stored. These software are read into the memory and operate according to the control of the CPU.
  • OS software
  • the image reading unit 101 reads a captured image, a display drawing, and the like from the memory and develops them on the memory of the image processing apparatus 100. Specifically, a compressed image file such as a JPEG file is decompressed, developed into a raster image arranged in order of RGB values for each pixel, and developed on a memory in the PC. At this time, if the number of pixels of the read captured image is not sufficiently large, in order to sufficiently detect the human area in the subject detection unit 102 and the recognition accuracy in the image processing unit 105 and the character recognition unit 106, May be expanded to a sufficient number of pixels. Further, when the number of pixels is larger than necessary, the pixels may be thinned out and reduced in order to speed up the processing. Further, in order to correct the vertical / horizontal relationship of the captured image, the captured image may be rotated as necessary.
  • a compressed image file such as a JPEG file is decompressed, developed into a raster image arranged in order of RGB values for each pixel, and developed on
  • the subject detection unit 102 detects a person area in the captured image.
  • Human detection methods include detection methods based on organ features such as the human face, mouth, and eyes, detection methods that resemble ⁇ (omega) from the head to the shoulder, and detection based on hues such as human skin areas.
  • the present invention is not limited to this, and a plurality of detection methods may be combined.
  • the bib number area estimation unit 103 determines that the bib character area exists in the body part below the face based on the position of the face and the size of the shoulder width from the person area in the captured image detected by the subject detection unit 102. Infer.
  • the number is not limited to the bib number, and may be a uniform back number or identification information directly written on a part of the subject. Further, the estimation is not limited to the downward direction but can be appropriately changed depending on the posture of the person and the composition of the captured image.
  • the race bib character area detection unit 104 detects a race bib character area that can be a character for each area calculated by the race bib area estimation unit 103.
  • the characters are identifiers that can uniquely identify the subject, such as numbers, alphabets, hiragana, katakana, kanji, numbers, symbols, and barcode patterns.
  • the image processing unit 105 performs image processing as preprocessing for performing character recognition on each area of the race bib character area detection unit 104.
  • the character recognition unit 106 performs character recognition on the image processed by the image processing unit 105 based on a dictionary database that describes image characteristics of candidate characters, and associates the recognition result with a person image.
  • a person image is a portion where a person in a captured image exists.
  • FIG. 2 is a flowchart for explaining processing executed by the image processing apparatus 100 shown in FIG. 1 until a photographed image is read and a bib number is associated with a person image.
  • step S201 when a photographed image is designated, processing is started and the image reading unit 101 reads a photographed image as an input image (step S201).
  • step S202 the entire raster image of the input image read by the subject detection unit 102 is scanned to detect an image area that may be a person.
  • the subject detection unit 102 determines whether there is an image area that may be a person in the input image, that is, a person (step S203). If there is a person, the process proceeds to step S204. If no person exists, the process proceeds to step S205.
  • step S203 when there are one or more persons, the race bib area estimation unit 103 presumes that the race bib character area is included for each person and determines the area to be scanned (step S204).
  • the area to be scanned is determined from the vertical size of the input image and the width of the person area, and is set to the area below the face of the person.
  • the vertical size and width of the area to be scanned may be changed according to the detection method used by the subject detection unit 102.
  • step S203 if there is no person, the entire input image is determined to be scanned (step S205).
  • the bib character area detection unit 104 detects the bib character area from the area to be scanned determined for each person (step S206).
  • a candidate for the bib character area an image area that is expected to be a bib number such as a number or a character is detected, and an image area that includes one or more characters is detected.
  • a number number it is not limited to numbers.
  • step S207 For all the persons in the input image, it is determined whether the bib character area detection unit 104 has detected the bib character area (step S207). If there is an undetected person (NO in step S207), step Returning to the processing of S204, the bib character area is detected for all persons. Details of each area described in steps S201 to S207 will be described later with reference to FIG.
  • step S207 When the detection of the bib character area of all persons is completed (YES in step S207, including the case where an image area that may be a person is not found in step S203), an image is detected for each detected bib character area.
  • the processing unit 105 performs image processing, which is preprocessing for performing character recognition (step S208).
  • the image processing includes distortion correction, tilt correction, depth correction, and the like. Details of the inclination correction and depth correction will be described later with reference to FIGS. 4A to 4C and FIGS. 5A to 5C. Since various known techniques can be applied to the distortion correction, a description thereof will be omitted.
  • the character recognition unit 106 performs character recognition for each race bib character area (step S209).
  • the character recognition unit 106 associates the result of character recognition with the person image (step S210).
  • the process of associating the race bib number with the person image is terminated.
  • FIG. 3 is a diagram for explaining each area in which the subject detection unit 102, the race bib region estimation unit 103, and the race bib character region detection unit 104 perform processing for each person in the input image in FIG.
  • the image frame 301 is a frame of a captured image, and the image reading unit 101 develops the image data on the memory.
  • the person area 302 is a person area detected by the subject detection unit 102.
  • the race bib estimation area 303 is a race bib estimation area estimated by the race bib area estimation unit 103 with respect to the person area 302.
  • the race bib estimation area 303 is illustrated as a rectangle, but is not limited thereto, and may be a fan shape with the person area 302 as the center.
  • the race bib character area 304 is a race bib character area detected by the race bib character area detection unit 104 with respect to the race bib estimation area 303. ⁇ About tilt correction>
  • FIG. 4A to 4C are diagrams for explaining the inclination correction performed by the image processing unit 105 on the race bib character area 304.
  • FIG. 4A to 4C are diagrams for explaining the inclination correction performed by the image processing unit 105 on the race bib character area 304.
  • an image 401 is a bib character area 304 and includes one or more characters. Since the image 401 is affixed to the clothes of the runner, each character is distorted, and the image is inclined from the horizontal as a whole. Therefore, it is difficult for the character recognition unit 106 to recognize characters because the characters 401 cannot be appropriately extracted with the image 401 as it is.
  • the intermediate image 402, the intermediate image 403, and the intermediate image 404 are intermediate images corrected by the image processing unit 105, and are based on the inclination angle from the reference line (horizontal direction) calculated from the bib character area 304.
  • the image 401 is mapped in the horizontal direction by affine transformation.
  • the reference line is a reference line based on the X axis (horizontal direction) or the Y axis (vertical direction) of the captured image.
  • the X axis is used as a reference line
  • the Y axis is used as a reference line, and processing based on the tilt angle from the reference line is performed.
  • the intermediate image 402 and the intermediate image 403 are images that can be recognized as one character, but the intermediate image 404 is an image in which a plurality of characters are recognized as one character because the inclination of each character is different. Therefore, in the case of the intermediate image 404, the character recognition unit 106 cannot correctly recognize each character.
  • Images 405 to 409 are images obtained by further correcting the intermediate image 404 by the image processing unit 105.
  • the image processing unit 105 detects the outline and position of each character from the intermediate image 402, the intermediate image 403, and the intermediate image 404. Based on the detected width of the outline of each character, the position of each character is adjusted in the horizontal direction so that the space between the characters is vertical, and images 405 to 409 are generated. By separating each character in this way, the character recognition unit 106 can correctly recognize each character. ⁇ About depth correction>
  • 5A to 5C are diagrams illustrating depth correction performed by the image processing unit 105 on a bib character area having a depth.
  • an image frame 501 is a frame of a captured image.
  • the person area 502 is detected by the subject detection unit 102.
  • the bib estimation area 503 is estimated by the bib area estimation unit 103 with respect to the person area 302.
  • the race bib character area 504 is detected by the race bib character area detection unit 104 with respect to the race bib estimation area 503.
  • the bib of the person facing in the horizontal direction has a depth in the image of the bib character area, and the character width and the character interval become narrower from the front to the back.
  • the character recognition unit 106 recognizes the character as a single character by combining the influence of different character widths or combining adjacent characters as one character. .
  • the subject detection unit 102 indicates that the person is sideways when organs such as mouths and eyes in the person area 502 are biased to the right or left rather than from the front. Judge. Then, the face orientation angle is calculated from the degree of the bias.
  • the image processing unit 105 corrects the image from the calculated face orientation angle.
  • a trunk 505 is a model of a human trunk from above.
  • the body 505 is elliptical, and its orientation is estimated to be equal to the face orientation angle, and this angle is defined as the orientation angle 506.
  • the image 509 of the race bib character area 504 can be approximated as an image pasted on the front surface of the ellipse.
  • the bib draws a curve based on the orientation angle 506 with respect to the body 505.
  • the interval between each character is calculated with respect to the horizontal axis 507, and it is assumed that the image 509 is taken at the interval (ratio), and this is assumed as the assumed density.
  • a curve 510 is a curve generated by the orientation angle 506.
  • the inclination of the character of the image 509 is calculated, and the reciprocal of the assumed density is calculated in the horizontal direction (the same direction as the horizontal axis 507) of the center line 508 of the image 509.
  • a curve 510 for correcting the pixel interval of the image 509 with the reciprocal of the calculated assumed density is a curve 510.
  • the width of the local line segment 511 in the horizontal direction for each unit angle of the curve 510 is narrower from the front to the back in the image 509.
  • the pixel position of each character in the image 509 is calculated based on the curve 510 while performing inclination correction, and the corrected image 512 is generated by correcting the character width by expanding or contracting the horizontal direction of each pixel.
  • a reciprocal of the assumed density of the pixel value of the image 509 may be transferred as it is, or a value calculated from the pixel value of the neighboring position may be used to obtain smoothness of the image.
  • the pixel value is a numerical value representing the type of color and brightness of the pixel.
  • the image processing unit 105 By performing such image processing by the image processing unit 105, it is possible to correct the character width and the character spacing even for the deep bib character region, and the character recognition unit 106 can correctly recognize the character.
  • tilt correction processing of FIGS. 4A to 4C and the depth correction processing of FIGS. 5A to 5C have been described separately, tilt correction and depth correction may be performed as one image process.
  • the bib number of the person is detected from the captured image, and the bib number is read by performing image correction such as tilt correction and depth correction. It is possible to perform tying.
  • the second embodiment detects the problem that the number of the bib is hidden and the bib number cannot be correctly recognized due to the overlap with others or the hand of the person being placed in front of the bib.
  • the feature is to guess the number number hidden from the number number character area.
  • a frame area detection unit 107 and a character number estimation unit 108 are added to the configuration of the image processing apparatus 100 described in the first embodiment.
  • FIG. 6 is a block diagram showing an example of the image processing apparatus 110 according to the second embodiment of the present invention. Components similar to those of the image processing apparatus 100 shown in FIG. 1 are denoted by the same reference numerals, and description thereof is omitted.
  • the frame area detection unit 107 detects a frame area that can be a frame number for each bib estimation area calculated by the bib area estimation unit 103.
  • the number-of-characters estimation unit 108 estimates the position coordinates of each digit evenly arranged from the frame width of the frame region detected by the frame region detection unit 107, and calculates the number of digits.
  • the frame width is the direction (long side direction) in which the characters of the bib are arranged. Further, the present invention is not limited to the frame width but can be applied to the frame height.
  • FIG. 7 is a flowchart for explaining a process executed by the image processing apparatus 110 shown in FIG. 6 until a photographed image is read and a bib number is associated with a person image.
  • step S701 when a photographed image is designated, processing is started and the image reading unit 101 reads a photographed image as an input image (step S701).
  • step S702 the entire raster image of the input image read by the subject detection unit 102 is scanned to detect an image area that may be a person.
  • the subject detection unit 102 determines whether there is an image area that may be a person in the input image, that is, a person (step S703). If there is a person, the process proceeds to step S704. If no person exists, the process proceeds to step S705.
  • step S703 if there are one or more persons, the race bib area estimation unit 103 presumes that the race bib character area is included for each person and determines the area to be scanned (step S704).
  • the area to be scanned is determined from the vertical size of the input image and the width of the person area, and is set to the area below the face of the person.
  • the vertical size and width of the area to be scanned may be changed according to the detection method used by the subject detection unit 102.
  • step S703 if there is no person, the entire input image is determined to be scanned (step S705).
  • step S706 described below and the processing in steps S707 to S709 are executed in parallel.
  • the bib character area detection unit 104 detects the bib character area from the area to be scanned determined for each person (step S706).
  • a candidate for the bib character area an image area that is expected to be a bib number such as a number or a character is detected, and an image area that includes one or more characters is detected.
  • the frame area detection unit 107 detects vertical and horizontal edge lines, and detects the bib frame area from the positional relationship (step S707).
  • step S708 If one or more frame numbers are detected (YES in step S708), the position of each character (digit) in the frame area is determined from the frame width of the frame area detected by the character number estimation unit 108 in step S707. A coordinate area is calculated (step S709).
  • step S708 If the frame number of the race bib is not detected (NO in step S708), the process proceeds to step S710 without performing the process in step S709.
  • step S710 For all the persons in the input image, it is determined whether the bib character area detection unit 104 has detected the bib character area (step S710). If there is an undetected person (NO in step S710), step Returning to the processing of S704, the bib character area is detected for all persons.
  • step S710 When the detection of the bib character area of all persons is completed (YES in step S710, including the case where an image area that may be a person is not found in step S703), the detected bib character area and each frame area are detected.
  • the image processing unit 105 performs image processing for character recognition (step S711). Note that if the bib character area detected in step S706 is equivalent to the area calculated in step S709, the bib character area and the position coordinate area of each character (digit) may be combined for handling as one area. .
  • the character recognition unit 106 performs character recognition for each race bib character area (step S712).
  • the character recognition unit 106 associates the result of character recognition with the person image (step S713).
  • the process of associating the race bib number with the person image is terminated. ⁇ About guessing hidden characters>
  • 8A to 8C are diagrams for explaining the detection of the frame number and the character area of the bib number.
  • an image frame 801 is a frame of the captured image, and the image reading unit 101 expands the image data on the memory.
  • the person area 802 is detected by the subject detection unit 102.
  • the race bib estimation area 803 is estimated by the race bib area estimation unit 103 with respect to the person area 802.
  • the bib character area 804 is detected by the bib character area detection unit 104 with respect to the bib estimation area 303.
  • race bib character area 804 is hidden by overlapping with the person in front, and a part of the character cannot be read by the character recognition unit 106.
  • the image 805 in FIG. 8B is an example of an image of a bib partially hidden.
  • the frame area detection unit 107 detects a pixel (edge pixel) that is an edge of a pixel value having a change amount equal to or greater than a threshold value and a pixel value in the vicinity in the vertical direction and horizontal direction in the bib estimation area 803.
  • An approximate straight line serving as a bib frame is generated from the positions of edge pixels in the vertical and horizontal directions and the number of continuous pixels.
  • a race bib frame area 806 shown in FIG. 8C is a race bib frame area configured by an approximate straight line generated by the frame area detection unit 107.
  • the number-of-characters estimation unit 108 searches for the vicinity of the middle in the vertical direction of the detected bib frame area 806 and sets it as a character area.
  • Character region 807, character region 808, character region 809, character region 810, and character region 811 are character regions detected by character number estimation unit 108.
  • the character region 807 is a character region corresponding to a hidden character like the bib character region 804, and the character region is not correctly detected.
  • the character width 808 to the character region 811 in which the character region is correctly detected have the same character width and vertical position in each digit.
  • the number-of-characters estimation unit 108 determines that the image is an image of an arbitrary character of one digit and a fixed character of four digits from the relationship between each digit of the character region 808 to the character region 811 having the same character width and the character region 807 having a different character width. can do.
  • Four-digit fixed characters are recognized by the image processing unit 105 and the character recognition unit 106.
  • An arbitrary character of a single digit temporarily generates a character in a bib frame by applying a possible character.
  • the characters to be applied may be characters such as the numbers 0 to 9, or may be applied with reference to a character list of all bib numbers of events set in advance. Further, it is possible to generate exclusively using the fact that no person with the same character string exists in the same image.
  • the second embodiment of the present invention it is possible to efficiently detect a person's number from a photographed image and infer a character with a hidden number from the character width of the character area. It is.
  • a video playback application (not shown) that plays back a video is monitored by an image processing apparatus, and is sequentially cut out as a still image to perform character recognition. Next, the playback time and the recognition character at the time of moving image playback of the cut out still image are recorded. Thereby, the reproduction can be started from the reproduction time of the moving image in which the person of the specific bib number designated by the user is shown.
  • FIG. 9 is a block diagram showing an example of an image processing apparatus 900 according to the third embodiment of the present invention.
  • a moving image playback unit 901 is added to the configuration of the image processing apparatus 100 (FIG. 1) in the first embodiment.
  • the same components as those in FIG. 1 are denoted by the same reference numerals.
  • the moving image reproduction unit 901, the image reading unit 101, and the character recognition unit 106 different from the first embodiment and the second embodiment will be described below.
  • the image reading unit 101 has a function of cutting out (generating) a still image from a moving image in addition to the functions described in the first embodiment and the second embodiment.
  • how to cut out the moving image is, for example, a predetermined time interval or every frame of the moving image.
  • the video playback unit 901 is a functional unit that handles information necessary for video playback. Necessary information includes reproduction time information, information designated by the user, and the like.
  • the reproduction time information is information indicating a relative time from the start point to the end point of the moving image.
  • the information designated by the user is the subject number number.
  • the video playback unit 901 adjusts the playback time information held in the video playback unit 901 to the video playback time by designating or detecting the playback time of the video (target video) to be recognized by the image processing apparatus 900.
  • the movie playback time is the playback time of the target movie.
  • the reproduction time information is information held by the moving image reproduction unit 901 of the image processing apparatus 900.
  • the movie playback time is information held by the movie playback application, and is information on the playback time from the beginning where the target movie is played.
  • the designation of the playback time is based on estimating the video playback time by starting the video playback application from the image processing apparatus 900 and starting playback.
  • the detection of the playback time means that the video playback unit 901 detects the playback time information by recognizing the elapsed time displayed on the screen of the video playback application, notification from the video playback application, or the like.
  • the moving image reproduction unit 901 measures the elapsed reproduction time in the image processing apparatus 900, thereby sequentially updating the reproduction time information and estimating the current reproduction time of the moving image.
  • the character recognition unit 106 includes an image reading unit 101, a subject detection unit 102, and a bib region estimation for each playback time information calculated by the video playback unit 901.
  • the characters recognized through the processing of the functional units of the unit 103, the race bib character area detection unit 104, the image processing unit 105, and the character recognition unit 106 are associated with the reproduction time and recorded in a storage unit such as a database (not shown).
  • the video playback unit 901 refers to the playback time information recorded in the database or the like by the character recognition unit 106, calculates the playback time when the bib number selected by the user's predetermined operation or external input is recognized, Play video while specifying the playback time for the video.
  • the designation of the playback time is an argument or the like performed together with the designation of the target movie for the movie playback application.
  • the target movie is designated for the browser application.
  • # t (reproduction start time) together with the path of, the reproduction time to start can be designated.
  • FIG. 10 is a flowchart for explaining a process in which the image processing apparatus 900 shown in FIG. 9 synchronizes the moving image reproduction and reproduces the moving image of the runner having the bib number selected by the user.
  • the synchronization means that the reproduction time information is matched with the moving image reproduction time.
  • the video playback unit 901 plays back the target video by specifying the playback start time, or detects the current playback time of the video being played back, thereby playing back the playback time information of the video playback unit 901.
  • the reproduction of moving images is synchronized with the time (step S1001).
  • the target moving image may be a moving image file reproduced by a single application.
  • it may be a streaming video distributed from a server on the Internet and the video may be played back in the display window area of the video playback application.
  • the current playback time information of the video is stored in the database by recognizing the playback time from the video display area and counting the playback time information after synchronization. Is calculated for associating the character recognition result with the reproduction time information (step S1002).
  • the image reading unit 101 detects a display window area of a specific video playback application, copies the displayed image content to a memory or file from the video playback screen, and generates an input image (still image) for recognition processing. (Step S1003).
  • Character recognition is executed on the input image generated in step S1003 (step S1004).
  • the flowchart of FIG. 2 steps S201 to S210 of the first embodiment or the flowchart of FIG. 7 of the second embodiment (steps S701 to S713) is applied.
  • the video playback unit 901 records the playback time information calculated in step S1002 and the characters recognized in step S1004 (step S1005).
  • the recording destination is a memory or a file arranged in the image processing apparatus 900, or may be a notification to a server on the Internet.
  • step S1006 It is confirmed whether or not the reproduction of the target moving image has been completed, and if the reproduction of the target moving image is continuing (NO in step S1006), the process returns to step S1002 to calculate the next reproduction time information and perform character recognition of the input image. .
  • step S1006 When the reproduction of the target moving image is completed (YES in step S1006), the recognized character is displayed on a selection dialog or the like based on the recognized character information recorded in step S1005, and the user is allowed to select by a predetermined operation (step S1007).
  • the selection may be made by external input, and as an example, a recognition character to be reproduced may be designated from another application.
  • step S1008 If the user does not select a specific recognized character (NO in step S1008), the process is terminated.
  • step S1008 When the user selects a specific recognized character from the recognized characters displayed in the dialog (YES in step S1008), the reproduction time information recorded in step S1005 is referred to and is selected in step S1008. The reproduction time of the recognized character is detected, and the moving image is reproduced while designating the reproduction time for the target moving image (step S1009).
  • the option to specify the playback time is for an application that plays a moving image file or an Internet server that plays a streaming movie.
  • a user recognition character selection step (step S1007) and a moving image reproduction step with time designation (step S1009) are provided.
  • the server is checked in step S1005. It is also possible to perform the recognized character selection step in step S1007 and the moving image reproduction step in step S1009 on another client computer based on the reproduction time information and the recognized character information notified to.
  • the moving image may be reproduced using a plurality of time designation options in step S1009.
  • the number of a person is detected from the reproduced video, the reproduction time and the number are stored in association with each other, and the number is designated. It is possible to reproduce a moving image in which a person with a specific bib number is reflected from among the reproduced moving images.
  • the subject is described as a person.
  • the subject is not limited to a person, and the subject may be an animal or a vehicle.
  • the character recognition result is associated with the person image in the captured image, it may be associated with the captured image itself.
  • an object of the present invention is to supply a storage medium storing software program codes for realizing the functions of the above-described embodiments to a system or apparatus, and store the computer (or CPU, MPU, etc.) of the system or apparatus. This can also be achieved by reading the program code stored in the medium and executing the processing.
  • the program code itself read from the storage medium realizes the functions of the above-described embodiments, and a computer-readable storage medium storing the program code constitutes the present invention. .
  • an OS operating system
  • the like running on the computer performs part or all of the actual processing based on an instruction of the program code, and the functions of the above-described embodiments are realized by the processing. You may do it.
  • the function expansion is performed based on the instruction of the program code.
  • the CPU or the like provided in the board or the function expansion unit executes part or all of the actual processing, and the above-described embodiment is realized according to the processing.
  • a storage medium such as a floppy (registered trademark) disk, a hard disk, a magneto-optical disk, an optical disk represented by CD or DVD, a magnetic tape, a nonvolatile memory card, or a ROM is used.
  • the program code may be downloaded via a network.
  • Image processing apparatus 101 Image reading unit 102: Subject detection unit 103: Number number region estimation unit 104: Number number character region detection unit 105: Image processing unit 106: Character recognition unit 107: Frame region detection unit 108: Character number estimation unit 901: Movie playback unit

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Multimedia (AREA)
  • Geometry (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Studio Devices (AREA)

Abstract

 マラソン大会などのイベントで撮影した参加者の写真の画像処理方法は、検出したゼッケン領域に対して画像処理を行うことでゼッケン番号の認識精度を高め、認識されたゼッケン番号と写真内の人物との紐付けを行う。この画像処理方法は、入力画像から人物を検出し、検出した人物の顔位置からゼッケンが存在する領域を推定し、推定した領域からゼッケン番号を含む領域を検出し、検出した領域に対して画像処理を行って画像処理後の画像からゼッケン番号の文字認識を行い、認識結果と入力画像との紐付けを行う。

Description

画像処理方法
 本発明は、マラソン大会などのイベントで撮影された写真の画像処理方法に関するものである。
 検出したランナーの顔位置に基づき、ゼッケンの位置を推定し、ゼッケン番号をOCR(Optical Character Reader)によって読み取る技術が従来技術として知られている(非特許文献1参照)。
Idan Ben−Ami、Tali Basha、Shai Avidan著、「Racing Bib Number Recognition」、http://www.eng.tau.ac.il/~avidan/papers/RBNR.pdf
 しかしながら、非特許文献1の技術は撮影した画像内から人物のゼッケン番号を読み込む際に、画像内の背景にある看板や道路標識等の文字をゼッケン番号として誤検出してしまうという課題がある。また、画像内から人物の顔を検出できない場合や、ゼッケンが大きく変形し形状が歪んでいる場合に正しくOCRによる文字認識でゼッケン番号を読み取ることができない。そして、ランナーの体に張り付けたゼッケンは、横方向から撮影された場合に奥行きに対して端になるほど変形しており、文字間隔が変化しているという特徴がある。非特許文献1の技術はランナーを正面から撮影した場合を想定しているため、正しくOCRによってゼッケン番号を読み取ることができない。
 また、他人との重なりや本人の手などがゼッケンの前に配置されることによって、ゼッケンの一部が隠れてしまい、正しくゼッケン番号を認識できないという課題がある。このようにゼッケン番号の一部のみを検出した場合、正しくゼッケン番号が検出できたかの判断も困難である。
 本発明は、上記課題に鑑みてなされたものであり、イベントで撮影した参加者の画像において、検出したゼッケン領域に対して画像処理を行うことでゼッケン番号の認識精度を高め、認識されたゼッケン番号と画像内の人物との紐付けを行う画像処理方法を提供することを目的とする。
 上記の課題を解決するために、請求項1に記載の画像処理方法は、入力画像から特定の被写体を1つまたは複数検出する被写体検出ステップと、前記被写体検出ステップにおいて検出した前記被写体の位置から前記被写体を特定するための識別情報が存在する第一の領域を推定する第一領域推定ステップと、前記第一領域推定ステップにおいて推定した前記第一の領域内において前記識別情報を含む第二の領域を検出する第二領域検出ステップと、前記第二領域検出ステップにおいて検出した前記第二の領域に対して画像処理を行う画像処理ステップと、前記画像処理ステップの処理結果に対して前記識別情報の認識処理を行い、当該認識処理結果と前記入力画像との紐付けを行う識別情報認識ステップと、を備えることを特徴とする。
本発明によれば、撮影画像内から効率よくゼッケン領域を検出し、当該ゼッケン領域に対して画像処理を行うことでゼッケン番号の認識精度を高め、認識されたゼッケン番号と人物画像との紐付けを行うことが可能となる。
[図1]本発明の第1の実施形態による画像処理装置100の一例を示すブロック図である。
[図2]画像処理装置100が、撮影画像を読み込みゼッケン番号と人物画像との紐付けを行うまでに実行する処理を説明するためのフローチャートである。
[図3]被写体検出部102が処理する各領域について説明する図である。
[図4A乃至図4C]画像処理部105がゼッケン文字領域304に対して行う傾き補正に関して説明する図である。
[図5A乃至図5C]画像処理部105が奥行きのあるゼッケン文字領域に対して行う奥行き補正に関して説明する図である。
[図6]本発明の第2の実施形態による画像処理装置110の一例を示すブロック図である。
[図7]画像処理装置110が、撮影画像を読み込みゼッケン番号と人物画像との紐付けを行うまでに実行する処理を説明するためのフローチャートである。
[図8A乃至図8C]ゼッケンのフレームと文字領域の検出について説明するための図である。
[図9]本発明の第3の実施形態による画像処理装置900の一例を示すブロック図である。
[図10]画像処理装置900が、動画再生の同期を行い、ユーザが選択したゼッケン番号のランナーを動画再生するまでに実行する処理を説明するためのフローチャートである。
 以下、本発明の実施形態による画像処理装置の一例について図面を参照して説明する。
[第1の実施形態]
図1は、本発明の第1の実施形態による画像処理装置100の一例を示すブロック図である。
<画像処理装置100の構成>
 図示の画像処理装置100は、パーソナルコンピュータ(PC)などの装置である。携帯電話や、PDA、スマートフォンやタブレット端末などの装置でもよい。
 画像処理装置100は、ハードウェア構成として、CPU、メモリ、通信部、および記憶部(ともに不図示)を備えている。
 CPUは画像処理装置100の全体の制御を司る。メモリはRAMおよびROMなどである。
 通信部はLAN、無線通信路およびシリアルインターフェースなどに接続するためのインターフェースであって、画像処理装置に撮影画像を送信するための撮影装置とのデータ送受信を行うための機能部である。
 記憶部には、ソフトウェアであるオペレーティングシステム(以下、OSと呼ぶ:不図示)、画像読み込み部101、被写体検出部102、ゼッケン領域推定部103、ゼッケン文字領域検出部104、画像処理部105、および文字認識部106が記憶されるとともに、他の機能に係るソフトウェアが記憶されている。なお、これらのソフトウェアはメモリに読み出されて、CPUの制御に従い動作する。
 画像読み込み部101は、撮影画像およびディスプレイ描画などをメモリから読み込み、画像処理装置100のメモリ上に展開させる。具体的には、JPEGファイルなどの圧縮されたイメージファイルを解凍し、各画素単位のRGB値順に配列したラスターイメージに展開し、PC内のメモリ上に展開させる。このとき、読み込んだ撮影画像の画素数が十分に大きくない場合は、被写体検出部102における人物領域の検出や、画像処理部105、文字認識部106での認識精度を十分に保つため、画素間を補間し、十分な画素数に拡大してもよい。また、必要以上に画素数が大きい場合は、処理を高速化させるために、画素を間引いて、縮小してもよい。また、撮影画像の縦横関係を補正するために、必要に応じて撮影画像を回転させてもよい。
 被写体検出部102は、撮影画像内の人物領域を検出する。人物の検出方法は、人物の顔、口や目などの器官の特徴による検出方法や、頭部から肩にかけたΩ(オメガ)に似た形状による検出方法、人物の肌領域などの色相による検出などがあり、これに限定したものではなく、複数の検出方法を組み合わせてもよい。
 ゼッケン領域推定部103は、被写体検出部102により検出された撮影画像内の人物領域から、顔の位置や肩幅のサイズに基づき、顔より下方向の胴体部分にゼッケン文字領域が存在していると推測する。なお、ゼッケンだけに限定したものではなく、ユニフォームの背番号や被写体の一部に直接書かれた識別情報などでもよい。また、下方向に限定し推測するものではなく、人物の姿勢や撮影画像の構図によって適宜変更可能である。
 ゼッケン文字領域検出部104は、ゼッケン領域推定部103により算出された各領域に対して、文字となりうるゼッケン文字領域を検出する。ここで文字は、数字、アルファベット、平仮名、片仮名、漢字、数字および記号やバーコードのパターンなど被写体を一意に識別できる識別子のことである。
 画像処理部105は、ゼッケン文字領域検出部104の各領域に対して、文字認識を行うための前処理となる画像処理を行う。
 文字認識部106は、画像処理部105が処理した画像に対して、候補となる文字の画像特徴を記載した辞書データベースに基づき、文字認識を行いその認識結果を人物画像と紐付ける。人物画像とは、撮影画像中の人物が存在する部分である。
<画像処理装置100の処理フロー>
 図2は、図1に示す画像処理装置100が、撮影画像を読み込みゼッケン番号と人物画像との紐付けを行うまでに実行する処理を説明するためのフローチャートである。
 図2において、撮影画像が指定されると、処理を開始し画像読み込み部101が入力画像としての撮影画像の読み込みを行う(ステップS201)。
 次に、被写体検出部102が読み込んだ入力画像のラスターイメージ全体をスキャンし、人物の可能性のある画像領域を検出する(ステップS202)。
 被写体検出部102が入力画像内に人物の可能性がある画像領域、すなわち人物が存在するかを判断し(ステップS203)、人物が存在する場合は、ステップS204へ進む。人物が存在しない場合は、ステップS205へ進む。
 ステップS203において、一人以上の人物が存在する場合、ゼッケン領域推定部103が人物毎にゼッケン文字領域が含まれていると推定してスキャンする領域を決定する(ステップS204)。スキャンする領域は、入力画像の上下方向サイズおよび人物領域の幅より決定し、人物の顔より下方向の領域に設定する。ここで、被写体検出部102が用いる検出方法によってスキャンする領域の上下方向サイズおよび幅を変更してもよい。
 ステップS203において、人物が存在しない場合、入力画像内全体をスキャンする領域に決定する(ステップS205)。
 人物毎に決定されたスキャンする領域から、ゼッケン文字領域検出部104がゼッケン文字領域を検出する(ステップS206)。ゼッケン文字領域の候補として、数字や文字などのゼッケン番号と予想される画像領域を検出し、一文字または複数文字を含む画像領域を検出する。ここでゼッケン番号と表現しているが、数字に限定されるものではない。
 入力画像内の全ての人物に対して、ゼッケン文字領域検出部104がゼッケン文字領域を検出したかを判断し(ステップS207)、未検出の人物が存在する場合(ステップS207でNO)は、ステップS204の処理に戻り、全ての人物に対してゼッケン文字領域の検出を行う。ステップS201~ステップS207で述べた各領域については、図3を用いて詳細を後述する。
 全ての人物のゼッケン文字領域の検出が終了すると(ステップS207でYES。なお、ステップS203において人物の可能性がある画像領域が見つからない場合を含む)、検出した各ゼッケン文字領域に対して、画像処理部105が文字認識を行うための前処理となる画像処理を行う(ステップS208)。ここで画像処理とは、歪み補正、傾き補正、奥行き補正などである。傾き補正、奥行き補正の詳細は図4A乃至図4C、及び図5A乃至図5Cを用いて後述する。歪み補正については種々の周知技術が適用可能であるため説明を割愛する。
 全てのゼッケン文字領域の画像処理が終了すると、各ゼッケン文字領域に対して文字認識部106が文字認識を行う(ステップS209)。
 文字認識部106が文字認識の結果を人物画像に対して紐付ける(ステップS210)。すべてのゼッケン文字領域の文字認識が終了するとゼッケン番号と人物画像との紐付け処理を終了する。
<検出領域について>
 図3は、図2において被写体検出部102、ゼッケン領域推定部103およびゼッケン文字領域検出部104が、入力画像内の人物毎に処理を行う各領域を説明する図である。
 画像フレーム301は撮影した画像のフレームであり、画像読み込み部101がイメージデータをメモリ上に展開する。
 人物領域302は被写体検出部102によって検出された人物領域である。
 ゼッケン推定領域303は、人物領域302に対してゼッケン領域推定部103が推定したゼッケン推定領域である。ここでゼッケン推定領域303を矩形として例示したが、これに限定されるものではなく、人物領域302を中心として扇形などであってもよい。
 ゼッケン文字領域304は、ゼッケン推定領域303に対してゼッケン文字領域検出部104が検出したゼッケン文字領域である。
<傾き補正について>
 図4A乃至図4Cは、画像処理部105がゼッケン文字領域304に対して行う傾き補正に関して説明する図である。
 図4Aにおいて、画像401は、ゼッケン文字領域304であり、一つまたは複数の文字を含む画像である。画像401は、ランナーの衣服に貼り付けられているため、各文字が歪んでおり、全体としても水平より傾いた画像になっている。そのため画像401のままでは、各文字を適切に抽出できないため文字認識部106での文字認識が困難である。
 図4Bにおいて、中間画像402、中間画像403および中間画像404は画像処理部105によって補正された中間画像で、ゼッケン文字領域304から算出された基準線(水平方向)からの傾き角度に基づいて、アフィン変換により画像401を水平方向に写像したものである。なお、ここでいう基準線とは、撮影画像のX軸(水平方向)またはY軸(垂直方向)に基づいた基準線である。横書きの文字列の場合はX軸、縦書きの文字列の場合はY軸を基準線とし、その基準線からの傾き角度に基づいた処理を行う。
 図4Cにおいて、中間画像402、中間画像403および中間画像404を見ると、それぞれの文字が歪んで、異なる傾きを有している。そのため、中間画像404のように垂直方向に隙間がなく文字同士が非常に近接した画像となる場合がある。
 中間画像402および中間画像403は、一文字として認識できる画像だが、中間画像404はそれぞれの文字の傾きが異なるため、複数の文字が一文字として認識される画像である。したがって、中間画像404のような場合は、文字認識部106が正しく各文字を認識することができない。
 画像405~画像409は、中間画像404から画像処理部105によって更に補正を加えた画像である。画像処理部105は、中間画像402、中間画像403および中間画像404から、各文字の輪郭と位置を検出する。検出した各文字の輪郭の横幅に基づき、垂直方向に各文字の間隔ができるように各文字の位置を水平方向に調整し、画像405~画像409を生成する。このように各文字を分離させることで、文字認識部106が正しく各文字を認識することが可能となる。
<奥行き補正について>
 図5A乃至図5Cは、画像処理部105が奥行きのあるゼッケン文字領域に対して行う奥行き補正に関して説明する図である。
 図5Aにおいて、画像フレーム501は撮影した画像のフレームである。人物領域502は被写体検出部102によって検出される。ゼッケン推定領域503は人物領域302に対してゼッケン領域推定部103によって推定される。ゼッケン文字領域504は、ゼッケン推定領域503に対してゼッケン文字領域検出部104によって検出される。
 ゼッケン文字領域504のように、横方向を向いた人物のゼッケンは、ゼッケン文字領域の画像に奥行きが生じ、手前から奥へ行くほど、文字幅と文字間隔が狭くなってしまう。このようにゼッケン文字領域504のような画像では、文字認識部106が、異なる文字幅の影響や隣り合う文字同士を結合して一つの文字として認識してしまうため、正しく文字認識することができない。
 そこで被写体検出部102は、人物領域502において、人物の顔にある口や目などの器官が、正面方向からではなく、右方向または左方向に偏って存在している場合、人物は横向きであると判断する。そして、その偏りの程度から、顔の向き角度を算出する。
 画像処理部105は、算出した顔の向き角度から画像の補正を行う。
 図5Bにおいて、胴体505は、上部から人物の胴体を模式化したものである。ここで、胴体505は楕円形であり、その向きは顔の向き角度と同等であると推定し、その角度を向き角度506とする。これにより、ゼッケン文字領域504の画像509は、楕円形の前面に貼り付けられた画像であると近似することが可能である。
 胴体505に対して、ゼッケンが向き角度506に基づいたカーブを描いていると想定する。水平軸507に対して各文字の間隔を算出し、その間隔(比率)で画像509が撮影されたものと想定し、これを想定密度とする。
 図5Cにおいて、曲線510は、向き角度506によって生成された曲線である。画像509の文字の傾きを算出し、画像509のセンターライン508の水平方向(水平軸507と同じ方向)に想定密度の逆数を算出する。算出した想定密度の逆数で画像509のピクセル間隔を補正するための曲線が曲線510である。
 曲線510の単位角度毎の横方向の局所線分511の幅は、画像509において、手前から奥に行くほど狭くなっている。
 傾き補正を行いながら曲線510に基づいて、画像509の各文字の画素位置を算出し、各画素の水平方向を伸長または収縮させて文字幅を補正することで補正画像512を生成する。なお、伸長または収縮において、画像509の画素値の想定密度の逆数倍をそのまま転写してもよく、画像の滑らかさを出すために、近傍位置の画素値から算出した値を使用してもよい。画素値とは、その画素が持つ色の種類や明るさを表す数値である。
 このような画像処理を画像処理部105が行うことにより、奥行きのあるゼッケン文字領域に対しても文字幅と文字間隔を補正し、文字認識部106において正しく文字認識することが可能となる。
 また、図4A乃至図4Cの傾き補正処理と、図5A乃至図5Cの奥行き補正処理を別個に説明したが、一つの画像処理として、傾き補正と奥行き補正を行ってもよい。
 以上、説明したとおり、本発明の第1実施形態によれば、撮影画像内から人物のゼッケンを検出し、傾き補正や奥行き補正といった画像補正することでゼッケン番号を読み取り、ゼッケン番号と人物画像の紐付けを行うことが可能である。
[第2の実施形態]
 続いて、本発明の第2の実施形態について説明する。第2の実施形態は、他人との重なりや本人の手などがゼッケンの前に配置されることによって、ゼッケンの一部が隠れてしまい、正しくゼッケン番号を認識できないという課題に対して、検出したゼッケン文字領域から隠れているゼッケン番号を推測することが特徴である。
 第2の実施形態による画像処理装置110の一例を説明する。本実施形態では第1の実施形態で説明した画像処理装置100の構成にフレーム領域検出部107および文字数推測部108を追加している。
 図6は、本発明の第2の実施形態による画像処理装置110の一例を示すブロック図である。なお、図1に示す画像処理装置100と同様の構成要素については同一の参照番号を付して説明を省略する。
 フレーム領域検出部107は、ゼッケン領域推定部103より算出された各ゼッケン推定領域に対して、ゼッケンのフレームとなりうるフレーム領域を検出する。
 文字数推測部108は、フレーム領域検出部107が検出したフレーム領域のフレーム幅などから、均等配置されている各桁の位置座標を推測し、その桁数を算出する。なお、ここでいうフレーム幅とは、ゼッケンの文字が並ぶ方向(長辺方向)のことである。また、フレーム幅に限定するものではなくフレーム高にも適用可能である。
<画像処理装置110の処理フロー>
 図7は、図6に示す画像処理装置110が、撮影画像を読み込みゼッケン番号と人物画像との紐付けを行うまでに実行する処理を説明するためのフローチャートである。
 図7において、撮影画像が指定されると、処理を開始し画像読み込み部101が入力画像としての撮影画像の読み込みを行う(ステップS701)。
 次に、被写体検出部102が読み込んだ入力画像のラスターイメージ全体をスキャンし、人物の可能性のある画像領域を検出する(ステップS702)。
 被写体検出部102が入力画像内に人物の可能性がある画像領域、すなわち人物が存在するかを判断し(ステップS703)、人物が存在する場合は、ステップS704へ進む。人物が存在しない場合は、ステップS705へ進む。
 ステップS703において、一人以上の人物が存在する場合、ゼッケン領域推定部103が人物毎にゼッケン文字領域が含まれていると推定してスキャンする領域を決定する(ステップS704)。スキャンする領域は、入力画像の上下方向サイズおよび人物領域の幅より決定し、人物の顔より下方向の領域に設定する。ここで、被写体検出部102が用いる検出方法によってスキャンする領域の上下方向サイズおよび幅を変更してもよい。
 ステップS703において、人物が存在しない場合、入力画像内全体をスキャンする領域に決定する(ステップS705)。
 以下に説明するステップS706の処理とステップS707~S709の処理は並列に実行される。
 人物毎に決定されたスキャンする領域から、ゼッケン文字領域検出部104がゼッケン文字領域を検出する(ステップS706)。ゼッケン文字領域の候補として、数字や文字などのゼッケン番号と予想される画像領域を検出し、一文字または複数文字を含む画像領域を検出する。
 各スキャンする領域において、フレーム領域検出部107が垂直方向および水平方向のエッジ線を検出し、その位置関係からゼッケンのフレーム領域を検出する(ステップS707)。
 一つ以上のゼッケンのフレーム領域が検出された場合(ステップS708でYES)は、文字数推測部108がステップS707で検出したフレーム領域のフレーム幅などから、フレーム領域内の各文字(桁)の位置座標の領域を算出する(ステップS709)。
 ゼッケンのフレーム領域が検出されなかった場合(ステップS708でNO)は、ステップS709の処理は行わず、ステップS710へ進む。
 入力画像内の全ての人物に対して、ゼッケン文字領域検出部104がゼッケン文字領域を検出したかを判断し(ステップS710)、未検出の人物が存在する場合(ステップS710でNO)は、ステップS704の処理に戻り、全ての人物に対してゼッケン文字領域の検出を行う。
 全ての人物のゼッケン文字領域の検出が終了すると(ステップS710でYES。なお、ステップS703において人物の可能性がある画像領域が見つからない場合を含む)、検出した各ゼッケン文字領域と各フレーム領域に対して、画像処理部105が文字認識を行うための画像処理を行う(ステップS711)。なお、ステップS706で検出したゼッケン文字領域と、ステップS709で算出した領域が同等の場合、一つの領域として取り扱うためにゼッケン文字領域と各文字(桁)の位置座標の領域を結合してもよい。
 全てのゼッケン文字領域の画像処理が終了すると、各ゼッケン文字領域に対して、文字認識部106が文字認識を行う(ステップS712)。
 文字認識部106が文字認識の結果を人物画像に対して紐付ける(ステップS713)。すべてのゼッケン文字領域の文字認識が終了するとゼッケン番号と人物画像との紐付け処理を終了する。
<隠れている文字の推測について>
 図8A乃至図8Cは、ゼッケンのフレームと文字領域の検出について説明するための図である。
 図8Aの撮影画像において、画像フレーム801は撮影した画像のフレームであり、画像読み込み部101がイメージデータをメモリ上に展開する。
 人物領域802は被写体検出部102によって検出される。
 ゼッケン推定領域803は、人物領域802に対してゼッケン領域推定部103によって推定される。
 ゼッケン文字領域804は、ゼッケン推定領域303に対してゼッケン文字領域検出部104によって検出される。
 ここで、ゼッケン文字領域804の一部が、前方の人物との重なりによって隠れてしまい、文字の一部が文字認識部106にて読み取ることができない。
 図8Bの画像805は、一部が隠れたゼッケンの画像の例示である。
 フレーム領域検出部107は、ゼッケン推定領域803内の垂直方向および水平方向に連続した近辺の画素値と閾値以上の変化量を有する画素値のエッジとなる画素(エッジ画素)を検出する。垂直方向および水平方向のエッジ画素の位置、および連続する画素数からゼッケンのフレームとなる近似直線を生成する。
 図8Cに示すゼッケンフレーム領域806は、フレーム領域検出部107が生成した近似直線により構成されたゼッケンフレーム領域である。
 文字数推測部108は、検出されたゼッケンフレーム領域806の垂直方向の中間付近を検索し、文字領域とする。
 文字領域807、文字領域808、文字領域809、文字領域810および文字領域811は、文字数推測部108が検出した文字領域である。
 ここで、文字領域807は、ゼッケン文字領域804のように隠れている文字に対応する文字領域であり、正しく文字領域が検出されない。
 一方、正しく文字領域が検出された文字領域808~文字領域811は、各桁の文字幅および垂直方向の位置が等しく検出されている。
 文字数推測部108は、文字幅が等しい文字領域808~文字領域811の各桁と、文字幅が異なる文字領域807の関係から、一桁の任意文字と四桁の固定文字の画像であると判断することができる。四桁の固定文字は、画像処理部105および文字認識部106によって文字認識される。一桁の任意文字は、取りうる文字を当てはめることによって、ゼッケンフレーム内の文字を仮に生成する。ここで、当てはめる文字は、数字の0~9などの文字を当てはめてもよく、事前に設定したイベントの全ゼッケン番号の文字リストを参照して当てはめてもよい。また、同一画像内には同じ文字列を付けた人物は存在しないことを利用し、排他的に生成することも可能である。
 なお、例として文字幅から隠れている文字を推測する場合を図6乃至図8を用いて説明したが、これに限定されるものではなく、例示した方向と垂直な方向である文字の高さであってもよい。また、ゼッケン番号の各桁に特定の色を使用しているような場合、検出した文字領域に特定の色が含まれているかどうかで判断することも可能である。
 以上、説明したとおり、本発明の第2の実施形態によれば、撮影画像内から効率よく人物のゼッケンを検出し、文字領域の文字幅などから隠れたゼッケン番号の文字を推測することが可能である。
 また、本発明の第2の実施形態では、ゼッケン文字領域検出部104の処理とフレーム領域検出部107および文字数推測部108の処理を並列で行うと説明したが、並列に限定するものではなく直列の処理であっても、どちらか一方の処理であってもよい。
[第3の実施形態]
 続いて、本発明の第3の実施形態について説明する。本実施形態では動画の再生時間ごとに写っている人物のゼッケン番号を認識させて動画の再生時間とゼッケン番号とを紐付ける動画への適用例について例示する。
 第3の実施形態は、動画を再生している動画再生アプリケーション(不図示)を画像処理装置が監視し、逐次、静止画像として切り出して、文字認識を行う。次に切り出した静止画像の動画再生時の再生時間と認識文字を記録する。これにより、ユーザが指定した特定のゼッケン番号の人物が写っている動画の再生時間から再生を開始できることが特徴である。
 図9は、本発明の第3の実施形態による画像処理装置900の一例を示すブロック図である。第1の実施形態における画像処理装置100(図1)の構成に動画再生部901を追加している。図1と同一の構成要素については同一の参照番号を付している。第1の実施形態と第2の実施形態と異なる動画再生部901、画像読み込み部101および文字認識部106について以下に説明する。
 図9において、画像読み込み部101は、第1の実施形態および第2の実施形態で説明した機能に加え、動画から静止画を切り出す(生成する)機能を備えている。ここで、動画の切り出し方は、例えば、所定の時間間隔や動画のフレーム毎である。
 動画再生部901は、動画再生に必要な情報を取り扱う機能部である。必要な情報とは、再生時間情報や、ユーザから指定された情報などである。再生時間情報とは、動画の開始時点から終了時点までの相対的な時間を示した情報である。ユーザから指定された情報とは、被写体のゼッケン番号である。
 動画再生部901は、画像処理装置900が認識対象となる動画(対象動画)の再生時間を指定または検出することによって、動画再生部901の内部で保持する再生時間情報を動画再生時間に合わせる。動画再生時間とは、対象となる動画の再生時間である。再生時間情報は画像処理装置900の動画再生部901が保持している情報である。動画再生時間とは動画再生アプリケーションが保持する情報であり、対象となる動画が再生されている先頭からの再生時間に関する情報である。
 ここで、再生時間の指定とは、画像処理装置900から動画再生アプリケーションを起動して再生開始させることによって、動画再生時間を推定することによる。また再生時間の検出とは、動画再生部901が動画再生アプリケーションの画面上に表示されている経過時間の認識や、動画再生アプリケーションからの通知等によって、再生時間情報を検出することである。
 動画再生部901は、画像処理装置900内の再生経過時間を計測することによって、再生時間情報を逐次更新し、動画の現在の再生時間を推測する。
 文字認識部106は、第1の実施形態および第2の実施形態で説明した機能に加え、動画再生部901によって算出した再生時間情報毎に、画像読み込み部101、被写体検出部102、ゼッケン領域推定部103、ゼッケン文字領域検出部104、画像処理部105および文字認識部106の各機能部の処理を通して認識した文字を再生時間と紐付けてデータベース(不図示)などの記憶部に記録する。
 動画再生部901は、文字認識部106がデータベースなどに記録した再生時間情報を参照して、ユーザの所定の操作または外部入力にて選択されたゼッケン番号が認識された再生時間を算出し、対象動画に対して再生時間を指定しながら動画再生を行う。
 ここで、再生時間の指定は、動画再生アプリケーションに対して、対象動画の指定とともに行う引数等であり、例えば、インターネットのYouTube(登録商標)の動画再生においては、ブラウザアプリケーションに対して、対象動画のパスと共に#t=(再生開始時間)を記載して、開始する再生時間を指定することができる。
<画像処理装置900の処理フロー>
 図10は、図9に示す画像処理装置900が、動画再生の同期を行い、ユーザが選択したゼッケン番号のランナーを動画再生する処理を説明するためのフローチャートである。ここで同期とは、再生時間情報を動画再生時間に合わせることをいう。
 図10において、対象動画を動画再生部901にて、再生開始時間を指定して再生、または再生中の動画の現在の再生時間を検出することにより、動画再生部901の再生時間情報を動画再生時間に合わせて動画再生の同期をとる(ステップS1001)。例えば、画像処理装置900から動画再生を始めから開始させることによって、再生時間情報=0として、動画再生の同期をとることができる。ここで、対象動画は、単体のアプリケーションが再生する動画ファイルでもよい。例えば、インターネットのサーバから配信されるストリーミング動画であり、動画再生アプリケーションの表示ウィンドウ領域内に動画再生されていればよい。
 次に、逐次、動画から静止画として画像読み込みと文字認識処理を行うにあたって、動画表示領域内から再生時間の認識や、同期後の再生時間情報のカウントによって、動画の現在の再生時間情報をデータベースの文字認識結果と再生時間情報を紐付けるために算出する(ステップS1002)。
 画像読み込み部101は、特定の動画再生アプリケーションの表示ウィンドウ領域を検出し、動画再生画面から、表示されているイメージ内容をメモリまたはファイルにコピーし、認識処理の入力画像(静止画)を生成する(ステップS1003)。
 ステップS1003にて生成された入力画像に対して文字認識を実行する(ステップS1004)。文字認識の詳細については、第1の実施形態の図2のフローチャート(ステップS201~S210)または第2の実施形態の図7のフローチャート(ステップS701~S713)を適用する。
 動画再生部901は、ステップS1002にて算出した再生時間情報とステップS1004で認識した文字を記録する(ステップS1005)。ここで、記録先は、画像処理装置900に配置されているメモリやファイルであり、またインターネットのサーバに対する通知としてもよい。
 対象動画の再生が終了したかを確認し、対象動画の再生が続行している場合(ステップS1006でNO)は、ステップS1002に戻り、次の再生時間情報の算出と入力画像の文字認識を行う。
 対象動画の再生が終了した場合(ステップS1006でYES)は、ステップS1005で記録した認識文字の情報に基づき、認識文字を選択ダイアログ等に表示し、ユーザに所定の操作により選択させる(ステップS1007)。なお、外部入力によって選択させてもよく、その場合の一例として他のアプリケーションから再生したい認識文字の指定がなされてもよい。
 ユーザが特定の認識文字を選択しない場合(ステップS1008でNO)は、処理を終了させる。
 ユーザがダイアログ内に表示された認識文字の中から、特定の認識文字を選択した場合(ステップS1008でYES)は、ステップS1005で記録した再生時間情報を参照して、ステップS1008にて選択された認識文字の再生時間を検出し、対象動画に対して再生時間を指定しながら動画再生を行う(ステップS1009)。
 ここで、再生時間を指定するオプションは、動画ファイルを再生するアプリケーションや、ストリーミング動画を再生するインターネットサーバに対して行うものである。
 なお、図10の処理フローにおいて、動画再生が終了した後に、ユーザの認識文字選択ステップ(ステップS1007)と時間指定を伴う動画再生ステップ(ステップS1009)を設けた。しかし、サーバと複数のクライアントコンピュータから構成されるインターネットのストリーミング動画のような場合は、一台のクライアントコンピュータ上の本画像処理装置のステップS1006にて動画再生が終了する前に、ステップS1005でサーバに通知した再生時間情報と認識文字の情報により、他のクライアントコンピュータにてステップS1007の認識文字選択ステップとステップS1009の動画再生ステップを行うことも可能である。
 動画内の複数シーンにおいて、ユーザが選択した認識文字が出現する場合は、ステップS1009にて、複数回の時間指定のオプションを用いて、動画再生を行ってもよい。
 以上、説明したとおり、本発明の第3の実施形態によれば、再生動画の中から人物のゼッケンを検出し、再生時間とゼッケン番号を紐付けて記憶し、そのゼッケン番号を指定することによって、再生動画の中から特定のゼッケン番号の人物が映っている動画を再生することが可能である。
 なお、本発明は、上述した実施形態に限定されるものではなく、本発明の要旨を逸脱しない範囲内において適宜変更可能である。
 なお、本実施形態では被写体を人物として説明したが、人物に限定したものではなく被写体は動物、車両などでもよい。また、撮影画像内の人物画像に文字認識結果を紐付けるとして説明したが、撮影画像そのものに紐付けてもよい。
 加えて、横書きの文字列を例に説明したが、これに限定されるものではなく、縦書きの文字列や斜め方向の文字列などに適用してもよい。
 また、本発明の目的は、上述した実施の形態の機能を実現するソフトウェアのプログラムコードを記録した記憶媒体を、システム或いは装置に供給し、システム或いは装置のコンピュータ(またはCPUやMPU等)が記憶媒体に格納されたプログラムコードを読み出して処理を実行することによっても達成することができる。
この場合、記憶媒体から読み出されたプログラムコード自体が前述した実施の形態の機能を実現することになり、そのプログラムコードを記憶したコンピュータで読み取り可能な記憶媒体は本発明を構成することになる。
また、プログラムコードの指示に基づき、コンピュータ上で稼動しているOS(オペレーティングシステム)等が実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現されるように構成しても良い。
 さらに、記憶媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれたあと、このプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるCPU等が実際の処理の一部または全部を実行し、その処理に応じて上述した実施形態が実現される場合も含んでいる。
 なお、プログラムコードを供給するため、例えば、フロッピー(登録商標)ディスク、ハードディスク、光磁気ディスク、CDやDVDに代表される光ディスク、磁気テープ、不揮発性のメモリカード、ROM等の記憶媒体を用いることができる。または、プログラムコードは、ネットワークを介してダウンロードしてもよい。
 100、110、900:画像処理装置
 101:画像読み込み部
 102:被写体検出部
 103:ゼッケン領域推定部
 104:ゼッケン文字領域検出部
 105:画像処理部
 106:文字認識部
 107:フレーム領域検出部
 108:文字数推測部
 901:動画再生部

Claims (17)

  1.  入力画像から特定の被写体を1つまたは複数検出する被写体検出ステップと、
     前記被写体検出ステップにおいて検出した前記被写体の位置から前記被写体を特定するための識別情報が存在する第一の領域を推定する第一領域推定ステップと、
     前記第一領域推定ステップにおいて推定した前記第一の領域内において前記識別情報を含む第二の領域を検出する第二領域検出ステップと、
     前記第二領域検出ステップにおいて検出した前記第二の領域に対して画像処理を行う画像処理ステップと、
     前記画像処理ステップの処理結果に対して前記識別情報の認識処理を行い、当該認識処理結果と前記入力画像との紐付けを行う識別情報認識ステップと、
     を備えることを特徴とする画像処理方法。
  2.  前記被写体検出ステップは、動画から所定の間隔ごとに切り出した静止画を前記入力画像として処理を行うことを特徴とする請求項1に記載の画像処理方法。
  3.  前記第一の領域内において前記識別情報のサイズまたは領域を示す情報から第三の領域を検出する第三領域検出ステップと、
     前記第三領域検出ステップにおいて検出した前記第三の領域から前記識別情報内の情報数を推測する情報数推測ステップとをさらに備え、
     前記画像処理ステップは、前記第二領域検出ステップにおいて検出した前記第二の領域または前記情報数推測ステップにおいて検出した前記情報数に応じた前記第三の領域内の各領域に対して画像処理を行うことを特徴とする請求項1に記載の画像処理方法。
  4.  前記情報数推測ステップは、前記第三の領域の幅または高さから前記情報数を推測することを特徴とする請求項3に記載の画像処理方法。
  5.  前記情報数推測ステップは、前記第三の領域内の各領域のうち他の領域と幅または高さが異なる領域が存在する場合に、当該領域に対して、仮の情報を割り当てることを特徴とする請求項3に記載の画像処理方法。
  6. 前記被写体検出ステップは、前記被写体の顔位置を検出することで被写体を検出することを特徴とする請求項1に記載の画像処理方法。
  7.  前記被写体検出ステップは、前記被写体の頭部から肩にかけた形状を検出することで被写体を検出することを特徴とする請求項1に記載の画像処理方法。
  8.  前記被写体検出ステップは、前記被写体の肌領域を検出することで被写体を検出することを特徴とする請求項1に記載の画像処理方法。
  9.  前記画像処理ステップは、歪み補正を行うことを特徴とする請求項1に記載の画像処理方法。
  10.  前記画像処理ステップは、前記第二の領域の画像を前記入力画像の基準線に対する傾き角度から所定方向に写像し、文字の間隔を調整する傾き補正を行うことを特徴とする請求項1に記載の画像処理方法。
  11.  前記被写体検出ステップは、前記被写体の顔位置に加えて顔の向きを検出可能であって、
     前記画像処理ステップは、前記第二の領域の画像を前記被写体検出ステップにおいて検出した顔の向きに基づいて配置されていると想定した文字間隔を所定方向に伸長および収縮させる奥行き補正を行うことを特徴とする請求項6に記載の画像処理方法。
  12.  前記識別情報認識ステップは、さらに前記認識処理結果と再生時間との紐付けを行い、
     ユーザの所定の操作または外部入力により選択された前記識別情報に基づき、当該識別情報に紐付く前記再生時間から前記動画を再生する動画再生ステップをさらに備えることを特徴とする請求項2に記載の画像処理方法。
  13.  入力画像から特定の被写体を1つまたは複数検出する被写体検出ステップと、
     前記被写体検出ステップにおいて検出した前記被写体の位置から前記被写体を特定するための識別情報が存在する第一の領域を推定する第一領域推定ステップと、
     前記第一の領域内において前記識別情報のサイズまたは領域を示す情報から第三の領域を検出する第三領域検出ステップと、
     前記第三領域検出ステップにおいて検出した前記第三の領域から前記識別情報内の情報数を推測する情報数推測ステップと、
     前記第三領域検出ステップにおいて検出した前記第三の領域に対して画像処理を行う画像処理ステップと、
     前記画像処理ステップの処理結果に対して前記識別情報の認識処理を行い、当該認識処理結果と前記入力画像との紐付けを行う識別情報認識ステップと、
    を備えることを特徴とする画像処理方法。
  14.  前記被写体検出ステップは、動画から所定の間隔ごとに切り出した静止画を前記入力画像として処理を行うことを特徴とする請求項13に記載の画像処理方法。
  15.  前記情報数推測ステップは、前記第三の領域の幅または高さから前記情報数を推測することを特徴とする請求項13に記載の画像処理方法。
  16.  前記情報数推測ステップは、前記第三の領域内の各領域のうち他の領域と幅または高さが異なる領域が存在する場合に、当該領域に対して、仮の情報を割り当てることを特徴とする請求項13に記載の画像処理方法。
  17.  前記識別情報認識ステップは、さらに前記認識処理結果と再生時間との紐付けを行い、
     ユーザの所定の操作または外部入力により選択された前記識別情報に基づき、当該識別情報に紐付く前記再生時間から前記動画を再生する動画再生ステップをさらに備えることを特徴とする請求項14に記載の画像処理方法。
PCT/JP2015/084585 2014-12-22 2015-12-03 画像処理方法 WO2016104156A1 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US15/287,066 US10007846B2 (en) 2014-12-22 2016-10-06 Image processing method

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
JP2014-259258 2014-12-22
JP2014259258 2014-12-22
JP2015193735A JP6430914B2 (ja) 2014-12-22 2015-09-30 画像処理装置および画像処理方法
JP2015-193735 2015-09-30

Related Child Applications (1)

Application Number Title Priority Date Filing Date
US15/287,066 Continuation US10007846B2 (en) 2014-12-22 2016-10-06 Image processing method

Publications (1)

Publication Number Publication Date
WO2016104156A1 true WO2016104156A1 (ja) 2016-06-30

Family

ID=56150186

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2015/084585 WO2016104156A1 (ja) 2014-12-22 2015-12-03 画像処理方法

Country Status (1)

Country Link
WO (1) WO2016104156A1 (ja)

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH03250280A (ja) * 1990-02-28 1991-11-08 Hitachi Ltd 文字認識方法及び装置並びに情報処理装置
JP2007081681A (ja) * 2005-09-13 2007-03-29 Canon Inc 撮像装置、方法
JP2011078009A (ja) * 2009-10-01 2011-04-14 Olympus Corp 撮像装置および撮像装置用プログラム
JP2011186576A (ja) * 2010-03-05 2011-09-22 Nec Corp 動作認識装置
WO2012077267A1 (ja) * 2010-12-09 2012-06-14 パナソニック株式会社 人検出装置および人検出方法
JP2013069015A (ja) * 2011-09-21 2013-04-18 Fuji Xerox Co Ltd 情報処理装置及び情報処理プログラム

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH03250280A (ja) * 1990-02-28 1991-11-08 Hitachi Ltd 文字認識方法及び装置並びに情報処理装置
JP2007081681A (ja) * 2005-09-13 2007-03-29 Canon Inc 撮像装置、方法
JP2011078009A (ja) * 2009-10-01 2011-04-14 Olympus Corp 撮像装置および撮像装置用プログラム
JP2011186576A (ja) * 2010-03-05 2011-09-22 Nec Corp 動作認識装置
WO2012077267A1 (ja) * 2010-12-09 2012-06-14 パナソニック株式会社 人検出装置および人検出方法
JP2013069015A (ja) * 2011-09-21 2013-04-18 Fuji Xerox Co Ltd 情報処理装置及び情報処理プログラム

Similar Documents

Publication Publication Date Title
JP6430914B2 (ja) 画像処理装置および画像処理方法
US8081844B2 (en) Detecting orientation of digital images using face detection information
US8391645B2 (en) Detecting orientation of digital images using face detection information
JP5106271B2 (ja) 画像処理装置、画像処理方法、及びコンピュータプログラム
WO2020134527A1 (zh) 人脸识别的方法及装置
US9536132B2 (en) Facilitating image capture and image review by visually impaired users
JP2009514107A (ja) 集合体からの特定の人物の割り出し
JP2004192378A (ja) 顔画像処理装置およびその方法
JP5695257B1 (ja) 画像処理装置、画像処理方法、および画像処理プログラム
JP6362085B2 (ja) 画像認識システム、画像認識方法およびプログラム
US11462040B2 (en) Distractor classifier
CN109886223B (zh) 人脸识别方法、底库录入方法、装置及电子设备
WO2016158811A1 (ja) 画像処理装置、画像処理方法および画像処理システム
KR20190080388A (ko) Cnn을 이용한 영상 수평 보정 방법 및 레지듀얼 네트워크 구조
KR102037997B1 (ko) 전자 장치 및 콘텐츠 생성 방법
JP2018025966A (ja) 画像処理装置および画像処理方法
CN111182207B (zh) 图像拍摄方法、装置、存储介质及电子设备
WO2016104156A1 (ja) 画像処理方法
CN113490009B (zh) 内容信息植入方法、装置、服务器和存储介质
KR20120077485A (ko) 표정 인식 기반 음원 제공 시스템 및 서비스
JP4522323B2 (ja) 画像処理装置及びその制御方法
JP6118295B2 (ja) マーカ埋め込み装置、マーカ検出装置、方法、及びプログラム
JP2017033390A (ja) 画像解析装置及びプログラム
KR102542363B1 (ko) 3차원 공간에서 객체를 인식하는 방법
JP2017184139A (ja) 編集装置、編集方法及びプログラム

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 15872725

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 15872725

Country of ref document: EP

Kind code of ref document: A1