WO2011010703A1 - マーカ生成装置、マーカ生成検出システム、マーカ生成検出装置、マーカ、マーカ生成方法及びプログラム - Google Patents

マーカ生成装置、マーカ生成検出システム、マーカ生成検出装置、マーカ、マーカ生成方法及びプログラム Download PDF

Info

Publication number
WO2011010703A1
WO2011010703A1 PCT/JP2010/062378 JP2010062378W WO2011010703A1 WO 2011010703 A1 WO2011010703 A1 WO 2011010703A1 JP 2010062378 W JP2010062378 W JP 2010062378W WO 2011010703 A1 WO2011010703 A1 WO 2011010703A1
Authority
WO
WIPO (PCT)
Prior art keywords
feature
marker
specific
features
unique
Prior art date
Application number
PCT/JP2010/062378
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
Application filed by 日本電気株式会社 filed Critical 日本電気株式会社
Priority to EP10802323.5A priority Critical patent/EP2458557A4/en
Priority to US13/386,294 priority patent/US8705864B2/en
Priority to CN201080032774.2A priority patent/CN102473313B/zh
Priority to JP2011523692A priority patent/JP5700219B2/ja
Publication of WO2011010703A1 publication Critical patent/WO2011010703A1/ja

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/70Determining position or orientation of objects or cameras
    • G06T7/73Determining position or orientation of objects or cameras using feature-based methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/40Extraction of image or video features
    • G06V10/42Global feature extraction by analysis of the whole pattern, e.g. using frequency domain transformations or autocorrelation
    • G06V10/422Global feature extraction by analysis of the whole pattern, e.g. using frequency domain transformations or autocorrelation for representing the structure of the pattern or shape of an object therefor
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/30Subject of image; Context of image processing
    • G06T2207/30204Marker
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/95Pattern authentication; Markers therefor; Forgery detection

Definitions

  • the present invention relates to a marker generation device that generates a marker, a marker generation detection system including the marker generation device, a marker generation detection device including a marker generation function and a detection function, the marker, a marker generation method that generates the marker, The present invention also relates to a marker generation program for executing this marker generation.
  • an image of a space in which no marker exists is taken as a background video by video input means, feature points are extracted from the background video, and the feature points are mapped to an invariant feature space to be invariant features.
  • a portion where this invariant feature does not appear as a unique feature a marker pattern is generated based on this unique feature
  • an image of a space including the object with the marker is taken as a detection target video, Extract feature points from this detection target video, determine if there is a feature point arrangement that matches the feature point extraction extracted from the marker pattern, and if there is a match,
  • a technique for detecting this as a marker see, for example, Patent Document 1).
  • a pattern that does not appear in the background video can be generated as a marker pattern in the marker generation stage. For this reason, in the marker detection stage, the marker is not erroneously detected from the place where the marker does not exist in the detection target video, and the marker attached to the object can be reliably detected.
  • the present invention has been invented in view of the above problems, and generates a plurality of types of marker patterns and enables an object to be detected for each type, a marker generation detection system, a marker generation detection device, a marker An object is to provide a marker generation method and a marker generation program.
  • the present invention is characterized in that feature points are extracted from an image, the feature points are represented in a predetermined space, and a plurality of the feature points of the space having a predetermined number or less are selected as specific features. It is a marker generation device having marker pattern generation means for generating a plurality of types of marker patterns using all or a part of the plurality of unique features.
  • the present invention includes a marker generation device and a marker detection device, wherein the marker generation device extracts a feature point from the first video input means for inputting an image and the image input by the first video input means.
  • a first arrangement means for representing the extracted feature points in a predetermined space; a singular feature selection means for selecting a portion having a predetermined number or less of the feature points in the space as a singular feature; and a marker using the singular feature.
  • Marker generating means for generating a plurality of types of patterns
  • the marker detection device includes a marker storage means for storing a plurality of types of the marker patterns, a second video input means for inputting an image, and the second video input.
  • a feature point is extracted based on the image input by the means, and the second arrangement unit that represents the extracted feature point in a predetermined space, and the arrangement of the feature point group represented in the predetermined space, Serial is a marker generation detection system and a collating means for determining whether there is disposed of feature points based on the marker pattern.
  • the present invention provides first video input means for inputting an image, and first arrangement means for extracting feature points from the image input by the first video input means, and expressing the extracted feature points in a predetermined space.
  • a singular feature selection unit that selects, as a singular feature, a portion having a predetermined number or less of the feature points in the space, a marker generation unit that generates a plurality of types of marker patterns using the singular feature, and stores the marker pattern Marker storage means, second video input means for inputting an image, feature points are extracted based on the image input by the second video input means, and the extracted feature points are expressed in a predetermined space.
  • a marker generation and detection apparatus comprising: arrangement means; and collation means for determining whether or not there is an arrangement of feature points corresponding to the marker pattern in the arrangement of the feature points represented in the predetermined space. That.
  • feature points are extracted for each image, the extracted feature points are represented in a predetermined space, and a portion having a predetermined number or less of the feature points in the predetermined space is selected as a unique feature.
  • a plurality of types of markers generated using the unique features.
  • the present invention includes a step of inputting an image, a step of extracting feature points from the image, a step of expressing the feature points in a predetermined space, and a portion of the space where the number of feature points is a predetermined number or less. And a step of generating a plurality of types of marker patterns using all or a part of the plurality of unique features.
  • the present invention provides a process for inputting an image, a process for extracting feature points from the image, a process for representing the feature points in a predetermined space, and a unique feature in the space where the feature points are equal to or less than a predetermined number. And a process for generating a plurality of types of marker patterns using all or a part of the plurality of unique features.
  • the marker generation detection system when designing a marker from a specific feature group, the combination of specific features to be selected is changed.
  • a plurality of types of marker patterns can be generated. Then, by associating the types of marker patterns with the types of objects and attaching markers corresponding to the types of the objects, it is possible to detect not only the object but also the type of the object.
  • FIG. 1 is a block diagram showing a configuration of a marker generation device according to the first embodiment of the present invention.
  • FIG. 2 is a block diagram showing a detailed configuration of the marker generation device according to the first embodiment of the present invention.
  • FIG. 3 is a chart showing the structure of the feature point detection table.
  • FIG. 4 is a chart showing the structure of the unique feature table.
  • FIG. 5 is a diagram showing the configuration of the unique feature layout diagram.
  • FIG. 6 is a diagram showing the arrangement of unique features.
  • FIG. 7 is a chart showing the structure of the use-specific feature combination table.
  • FIG. 8 is a diagram illustrating an example of generating a marker pattern.
  • FIG. 9 is a diagram showing another example of generating a marker pattern.
  • FIG. 10 is a diagram showing the distance between feature points.
  • FIG. 1 is a block diagram showing a configuration of a marker generation device according to the first embodiment of the present invention.
  • FIG. 2 is a block diagram showing a detailed configuration of
  • FIG. 11 is a chart showing the configuration of the unique feature distance calculation table.
  • FIG. 12 is a diagram illustrating a combination in the case of selecting two use-specific feature groups configured by three unique features.
  • FIG. 13 is a diagram showing the distance between each unique feature in two use-specific feature groups.
  • FIG. 14 is a diagram showing the sum of the distances between the unique features of the two used unique feature groups.
  • FIG. 15 is a diagram showing two selected use-specific feature groups.
  • FIG. 16 is a diagram showing the position of each use specific feature group when one of the specific features in one use specific feature group and one of the specific features in another use specific feature group are overlapped.
  • FIG. 12 is a diagram illustrating a combination in the case of selecting two use-specific feature groups configured by three unique features.
  • FIG. 13 is a diagram showing the distance between each unique feature in two use-specific feature groups.
  • FIG. 14 is a diagram showing the sum of the distances between the unique features of the two used unique feature groups.
  • FIG. 15 is
  • FIG. 17 is a diagram illustrating a distance between non-overlapping specific features when one of the specific features in one use specific feature group and one of the specific features in another use specific feature group are overlapped.
  • FIG. 18 is a chart showing the sum of distances between non-overlapping singular features when one singular feature in one used singular feature group and one singular feature in another used singular feature group are superimposed.
  • FIG. 19 shows a list of sums of distances between non-overlapping singular features when one singular feature in one used singular feature group and one singular feature in another used singular feature group are sequentially superimposed. It is a chart.
  • FIG. 20 is a diagram showing shape approximation values.
  • FIG. 21 is a flowchart showing an operation procedure (marker generation method) of the marker generation device according to the first embodiment of the present invention.
  • FIG. 21 is a flowchart showing an operation procedure (marker generation method) of the marker generation device according to the first embodiment of the present invention.
  • FIG. 22 is a flowchart showing the operation procedure of the use-specific feature selection process (i).
  • FIG. 23 is a flowchart showing the operation procedure of the use-specific feature selection process (ii).
  • FIG. 24 is a flowchart showing the operation procedure of the use specific feature selection process (iii).
  • FIG. 25 is a flowchart showing the operation procedure of the use specific feature selection process (iv).
  • FIG. 26 is a block diagram showing a configuration of a marker generation device according to the second embodiment of the present invention.
  • FIG. 27 is a diagram showing allocation of use-specific feature groups to objects.
  • FIG. 28 is a diagram showing the Levenshtein distance between two use-specific feature groups.
  • FIG. 29 is a diagram showing a state in which a plurality of use-specific feature groups are arranged based on the Levenshtein distance, and (i) is based on the use-specific feature group (t1, t2, t4) having the number “2”. (Ii) shows the case where the use specific feature group (t2, t3, t5) of number “8” is used as a reference.
  • FIG. 30 is a chart showing a distance in a predetermined space between the reference use specific feature group (t1, t2, t3) and another use specific feature group.
  • FIG. 31 is a chart showing a state in which each use specific feature group is arranged in ascending order based on the distance in a predetermined space between the reference use specific feature group (t1, t2, t3) and another use specific feature group. is there.
  • FIG. 32 is a chart showing the distance in a predetermined space between the reference use specific feature group (t1, t2, t4) and another use specific feature group.
  • FIG. 33 is a chart showing a state in which each use specific feature group is arranged in ascending order based on the distance in a predetermined space between the reference use specific feature group (t1, t2, t4) and another use specific feature group. is there.
  • FIG. 34 is a chart showing a distance in a predetermined space between a reference use specific feature group (t2, t3, t5) and another use specific feature group.
  • FIG. 35 is a chart showing a state in which each use specific feature group is arranged in ascending order based on the distance in a predetermined space between the reference use specific feature group (t2, t3, t5) and another use specific feature group. is there.
  • FIG. 36 is a chart showing shape approximation values of the reference use specific feature group (t1, t2, t3) and other use specific feature groups.
  • FIG. 37 shows a state in which each used singular feature group is arranged in the ascending order of the shape approximate value based on the shape approximate values of the reference use specific feature group (t1, t2, t3) and other use specific feature groups. It is a chart shown.
  • FIG. 38 is a chart showing shape approximation values of the reference use-specific feature groups (t1, t2, t4) and other use-specific feature groups.
  • FIG. 39 shows a state in which each use specific feature group is arranged in ascending order of the shape approximate value based on the shape approximate values of the reference use specific feature group (t1, t2, t4) and other use specific feature groups. It is a chart shown.
  • FIG. 38 is a chart showing shape approximation values of the reference use-specific feature groups (t1, t2, t4) and other use-specific feature groups.
  • FIG. 39 shows a state in which each use specific feature group is arranged in ascending order of the shape approximate value based on the shape approximate values of the reference use specific feature group (
  • FIG. 40 is a chart showing shape approximation values of the reference use specific feature groups (t2, t3, t5) and other use specific feature groups.
  • FIG. 41 shows a state in which each used singular feature group is arranged in ascending order of the shape approximate value based on the shape approximate value of the reference used singular feature group (t2, t3, t5) and other used singular feature groups. It is a chart shown.
  • FIG. 42 is a diagram in which the large value of the approximate shape values shown in FIG. 20 is indicated by gray shading.
  • FIG. 43 shows a state in which each use specific feature group is arranged in ascending order of the shape approximate value based on the shape approximate value of the reference use specific feature group (t1, t3, t4) and the other use specific feature group. It is a chart shown.
  • FIG. 41 shows a state in which each used singular feature group is arranged in ascending order of the shape approximate value based on the shape approximate value of the reference used singular feature group (t2, t3, t5) and other used singular feature
  • FIG. 44 is a diagram illustrating a state in which a different marker is attached to each object.
  • FIG. 45 is a chart showing the structure of the object-marker correspondence table.
  • FIG. 46 is a flowchart showing an operation procedure (marker generation method) of the marker generation device according to the second embodiment of the present invention.
  • FIG. 47 is a flowchart showing a procedure for assigning a marker to an object.
  • FIG. 48 is a block diagram showing the configuration of the marker generation device according to the third embodiment of the present invention.
  • FIG. 49 is a block diagram showing a detailed configuration of the marker generation device according to the third embodiment of the present invention.
  • FIG. 50 shows an example of a background video.
  • 51 is a diagram showing a feature space in which feature points extracted from the background video shown in FIG. 50 are arranged.
  • FIG. 52 is a diagram illustrating a state in which the feature points arranged in the feature space are numbered.
  • FIG. 53 is a chart showing the structure of the feature point information table.
  • FIG. 54 is a diagram showing a feature space to which lane marks are attached.
  • FIG. 55 is a diagram showing names for each section.
  • FIG. 56 is a chart showing the configuration of the section coordinate table.
  • FIG. 57 is a diagram showing the structure of the feature point number distribution chart.
  • FIG. 58 is a chart showing a configuration of a feature point information table including section coordinates.
  • FIG. 59 is a diagram showing a configuration of a unique feature layout diagram.
  • FIG. 60 is a diagram showing another configuration of the unique feature arrangement diagram.
  • FIG. 61 is a flowchart showing an operation procedure (marker generation method) of the marker generation device according to the third embodiment of the present invention.
  • FIG. 62 is a block diagram showing a configuration of a marker generation device according to the fourth embodiment of the present invention.
  • FIG. 63 is a diagram showing a state in which each feature point is mapped to the invariant feature space with the feature point No. 5 as a base.
  • FIG. 64 is a diagram illustrating a state in which each feature point is mapped to the invariant feature space with the feature point 15 as a base.
  • FIG. 65 is a diagram showing how each feature point is mapped to the invariant feature space with the feature point 89 as a base.
  • FIG. 66 is a diagram showing a state in which each feature point is mapped to the invariant feature space with the feature point 91 as a base.
  • FIG. 67 is a diagram showing a state in which all the feature points shown in FIG. 5 are mapped to the invariant feature space.
  • FIG. 68 is a diagram showing a lane marking in the invariant feature space.
  • FIG. 69 is a diagram showing an invariant feature space in which gray shades are added to sections where one or more feature points are arranged.
  • FIG. 70 is a diagram showing a marker pattern generation range in the invariant feature space.
  • FIG. 71 is a diagram showing a state in which a marker pattern generation range is extracted from the invariant feature space in FIG. FIG.
  • FIG. 72 is a flowchart showing an operation procedure (marker generation method) of the marker generation device according to the fourth embodiment of the present invention.
  • FIG. 73 is a block diagram showing the configuration of the marker detection device.
  • FIG. 74 is a block diagram showing a detailed configuration of the marker detection device.
  • FIG. 75 is a diagram showing an example of the detection target video.
  • FIG. 76 is a diagram illustrating an example of feature points extracted from the detection target video.
  • FIG. 77 is a flowchart showing the procedure of the marker detection method.
  • FIG. 78 is a block diagram showing the configuration of the marker generation detection device.
  • FIG. 79 is a block diagram showing a detailed configuration of the marker generation detection device.
  • FIG. 80 is a block diagram showing the configuration of the marker generation detection system.
  • FIG. 2 is a block diagram showing the configuration of the marker generation device of this embodiment.
  • the marker generation device 1a includes a unique feature selection unit 10 and a marker pattern generation unit 20a.
  • the unique feature selection means 10 has a unique feature storage unit 11 and a unique feature selection unit 12 as shown in FIG.
  • the unique feature storage unit 11 stores a “feature point detection table” and a “singular feature table”.
  • the “feature point detection table” is a table indicating the coordinates of each section in the feature space and the number of feature points arranged in each section. As shown in FIG. 3, the “feature point detection table” includes a “compartment number” (a), an “compartment x coordinate” (b), a “compartment y coordinate” (c), and a “feature point number”. "(D)" can be configured as an item.
  • “Division number” is a serial number assigned to each division when the feature space is divided into a plurality of divisions.
  • the x-coordinate of the section is the x-coordinate where the section is located.
  • the y-coordinate of the section is the y-coordinate where the section is located.
  • the number of feature points is the number of feature points located in the section.
  • the “feature point detection table” can be further provided with “z coordinate of section” as an item.
  • “Singular feature table” is a table composed of information on unique features. As shown in FIG. 4, the “singular feature table” includes a “singular feature number” (A), a “compartment number” (B), an “x coordinate of the compartment” (C), and a “y coordinate of the compartment”. “(D)” and “number of feature points” (e) can be configured as items.
  • the unique feature number is a serial number assigned to each unique feature.
  • “Division number” is the division number of the division selected as a unique feature.
  • the x-coordinate of the section is the x-coordinate at which the section selected as the unique feature is located.
  • the y-coordinate of the section is the y-coordinate at which the section selected as the unique feature is located.
  • the number of feature points is the number of feature points located in the unique feature.
  • partition number “partition number”, “x coordinate of section”, “y coordinate of section”, “number of feature points” of “singular feature table” are “partition number”, “x coordinate of section” of “feature point detection table”. ”,“ Y coordinate of section ”, and“ number of feature points ”. Further, when the feature space is represented in three dimensions, the “single feature table” can be further provided with “z coordinate of section” as an item.
  • the singular feature selection unit 12 stores this in the singular feature storage unit 11.
  • the singular feature selection unit 12 selects a section having a predetermined number or less of feature points as a singular feature in the feature space. That is, the singular feature selection unit 12 extracts the “feature point detection table” from the singular feature storage unit 11 at a predetermined timing. Then, the singular feature selection unit 12 refers to the “feature point number” in the extracted “feature point detection table”, and extracts the feature point number that is equal to or less than a predetermined number from the feature point number indicated in the “feature point number”. Then, the section having the section number associated with the extracted number of feature points is selected as a unique feature.
  • the predetermined number is “1”
  • the section numbers k51, k85, and k96 are selected as unique features in the “feature point detection table” shown in FIG.
  • the predetermined number is “1” in the present embodiment, but is not limited to “1”, and may be “0” or “2” or more.
  • the singular feature selection unit 12 extracts data related to the selected singular feature from the “feature point detection table” and summarizes it as a “singular feature table”. At this time, each unique feature is given a serial number (single feature number) and added to the “single feature table”. Then, the unique feature selection unit 12 stores the “single feature table” in the unique feature storage unit 11.
  • the singular feature selection unit 12 selects, as a singular feature, a section having a predetermined number or less (including 0) of feature points in the feature space.
  • the unique feature selection unit 12 selects, as a unique feature, a part of the feature space that has a predetermined number or less of feature points extracted from the background video. Accordingly, the unique feature selection unit 12 can extract features that do not match the background pattern, and the marker pattern generation unit 20a can generate a marker pattern that does not match the background pattern using the unique features.
  • the singular feature resembles the background pattern due to feature point extraction error, etc.
  • the singular feature from a larger area where the feature of the background pattern does not exist in the feature space. May be selected.
  • This singular feature selection process can be identified with the problem of finding a large blank from the distribution of feature points in the feature space. For example, “An algorithm for Finding Maximal” published in the 2003 Proceedings of the International Conference on Document Analysis and Recognition An algorithm such as “Whitespace Rectangles at Arbitrary Orientations for Document Layout Analysis” may be used to extract a large blank area, or the center of a rectangular area that does not include the obtained feature points may be used as a unique feature.
  • the feature space is quantized with a mesh of a specific size, a one-dimensional or multi-dimensional histogram is generated, and the center of the mesh where the occurrence frequency of feature points is 0 or a predetermined number or less is defined as a unique feature. You may do it. If there is no mesh with a frequency of 0 or less than a predetermined number, reduce the size of the mesh, take a histogram, and if a mesh with a frequency of 0 or less than a predetermined number appears, a unique feature from the mesh May be selected. If a mesh with a frequency of 0 or less than a predetermined number is not found, the histogram may be thresholded with a default value, and a unique feature may be selected from the mesh with the default value or less.
  • the sections designated as unique features are represented in white, and the sections not designated as unique features are represented by gray shading.
  • FIG. 6 is a diagram in which each unique feature is represented by a black circle “ ⁇ ” based on the unique feature arrangement diagram shown in FIG. 5.
  • the singular feature can be composed of sections having a predetermined number of feature points or less, and together with these sections, a singular feature can be formed by adding a center point of a feature space (single feature layout diagram).
  • the marker pattern generation means 20a has a marker pattern generation unit 21 and a marker storage unit 22 as shown in FIG.
  • the marker pattern generation unit 21 extracts the “singular feature table” from the unique feature storage unit 11. Then, the marker pattern generation unit 21 generates a marker pattern using the unique features shown in the “unique feature table”.
  • the marker pattern generation unit 21 selects one or two or more unique features from a plurality of unique features, and designates them as use unique features. And the marker pattern production
  • Use-specific features are composed of a combination of one or more unique features.
  • the number of unique feature combinations depends on the number of unique features. That is, when the number of unique features is plural (tn), there are ⁇ (2tn) ⁇ 1 ⁇ combinations of unique features. Specifically, for example, when there are five unique features (t1 to t5) as shown in FIG. 6, there are 31 combinations of unique features as shown in FIG. That is, when there are five unique features, a maximum of 31 types of marker patterns can be generated.
  • “combination” here refers to a combination targeting all numbers between 1 and tn. For this reason, for example, the number of numbers extracted from n numbers such as “a combination without duplication” represented by nCm and “overlapping combinations” represented by nHr is m or r. It is not limited to one. However, the “combination” here may be a combination targeting one of 1 to tn.
  • the marker pattern generation unit 21 thus selects one or two or more combinations from a plurality of combinations of unique features. This selection can be performed randomly, but can also be performed with a certain regularity. The method for selecting the combination of unique features will be described in detail later in “Method for Selecting Specific Features Used”.
  • the marker pattern generation unit 21 generates a marker pattern using the use-specific feature.
  • the method of generating a marker pattern there are a variety of ways. For example, a case where vertices, intersections, and end points in an image are used as feature points will be described as an example.
  • the feature point group detection required for generating the marker pattern is the feature point detection used by the feature extraction means 40.
  • the feature point detection used by the feature extraction means 40.
  • the following marker pattern generation method is given as an example.
  • FIGS. 8 (i) to (iv) are cases where all of the five unique features shown in FIG. 6 are selected as the use unique features.
  • the device that attaches the marker to the object uses the paint corresponding to the lightness value and the color difference value corresponding to the unique feature. You may print.
  • the marker pattern generation unit 21 may generate a marker corresponding to the brightness, color, and shape corresponding to the selected unique feature.
  • the marker storage unit 22 stores data related to the marker generated by the marker pattern generation unit 21.
  • the coordinates of unique features are stored. Further, in the case shown in FIG. 8 (ii), the coordinates constituting the convex hull are stored in addition to the coordinates of the unique features.
  • the marker pattern generation unit 21 generates a marker pattern using the unique features shown in the “unique feature table”.
  • the marker pattern generation unit 21 selects one or more specific features used for generating the marker pattern from a plurality of specific features, and uses them as the use specific features.
  • the method of selecting the use unique feature the following four.
  • the marker pattern generation unit 21 selects one of the plurality of unique features.
  • two or more unique features can be selected as use specific features.
  • the number of unique features selected as the use unique features is one, two, three, four, or five.
  • Marker robustness refers to the certainty of marker detection that is not influenced by the environment.
  • the marker pattern generation unit 21 it is preferable to cause the marker pattern generation unit 21 to select a large number of unique features as use unique features.
  • all of the unique features are selected as the use unique features.
  • all five unique features are selected as the first used unique features, and a combination of four unique features (eg, t1, t2, t3, t4) is selected as the second It can be selected as a use specific feature.
  • all five unique features are selected as the first used unique features, and a combination of four unique features (eg, t1, t2, t3, t4) is selected as the second.
  • a combination of four unique features (eg t2, t3, t4, t5) other than the combination of the four unique features selected as the second use specific feature is selected as the use specific feature. Can be selected.
  • the marker pattern generation unit 21 when a use specific feature group in which all five unique features (t1, t2, t3, t4, t5) are selected is referred to as an all-specified specific feature group, the marker pattern generation unit 21 generates two or more markers to be generated.
  • the use specific feature group of one marker pattern among the patterns can be set as all designated specific feature groups.
  • the marker pattern generation unit 21 does not use all the specified unique feature groups (only by the use unique feature group including four, three, or two unique features), and uses the use specific features of two or more marker patterns. You can also select all.
  • the distance between each of the unique features is “t1-2”, “t1-3”, “t1-4”, “t1-5”, “t2-3”, “t2”. -4 ",” t2-5 “,” t3-4 “,” t3-5 “,” t4-5 ".
  • “t1-2” represents the distance between the unique feature t1 and the unique feature t2.
  • ⁇ t12345 (t1-2) + (t1-3) + (t1-4) + (t1-5) + (t2-3) + (t2-4) + (t2-5) + (t3-4) + (t3-5) + (t4-5) (Formula 1)
  • the distance between each unique feature is calculated.
  • the distance between each unique feature can be calculated as follows.
  • the distance between singular features can be expressed as an n-dimensional Euclidean distance in a predetermined space.
  • Euclidean distance L1 can be calculated by the following equation.
  • the sum ⁇ t1234 of the distance between the singular features can be calculated by the following equation.
  • Equation 14 When the distance between singular features represented by Equation 3, Equation 4, Equation 5, Equation 7, Equation 8, and Equation 10 is substituted into Equation 14, the sum ⁇ t1234 of the distance between singular features becomes the following value.
  • FIG. 11 shows the calculated sum of the distances between the unique features.
  • the left column of the figure is a combination of used unique features
  • the middle column is a calculation formula for calculating the sum of distances between unique features
  • the right column is the calculated sum of distances between unique features. Note that when there is a single use-specific feature, there is no distance between unique features, so the sum is zero.
  • the used singular features are selected in descending order of the sum.
  • the largest sum of the distances between singular features is the used singular features (t1, t2, t3, t4, t5) composed of five singular features.
  • the use total feature (t1, t2, t4, t5) composed of four unique features has the largest sum of the distances between the unique features.
  • the sum of the distances between singular features is the used singular features (t2, t3, t4, t5) composed of four singular features.
  • use-specific features (t1, t2, t3, t4, t5) and (t1, t2, t4, t5) are selected.
  • use-specific features (t1, t2, t3, t4, t5), (t1, t2, t4, t5), and (t2, t3, t4, t5) are selected.
  • the robustness of the marker can be enhanced by using the use unique feature so that the sum of the distances between the unique features becomes large.
  • the two use-specific feature groups are (t1, t2, t3) and (t4, t5, t6)
  • the feature points or invariant features extracted from the detection target video at the time of marker detection are (t1, t In the case of t2, t3), it is possible to determine which marker is detected by all of t1, t2, and t3. That is, if these two use-specific feature groups are located far from each other, the robustness is increased and misunderstanding is less likely to occur.
  • the sum of the distances between each singular feature of one used singular feature group and each singular feature of the other used feature feature group is calculated. There is something to calculate.
  • one unique feature group is composed of three unique features.
  • unique feature selection means 10a There are five unique features selected by the unique feature selection means 10a as shown in FIG. 6, and there are ten combinations as shown in FIG. 7 when one used unique feature group is composed of three unique features. is there. Further, when two use specific feature groups are selected from the ten use specific feature groups, there are 45 combinations of the two use specific feature groups selected as shown in FIG.
  • the sum of the distances between each unique feature of one used feature group and each unique feature of the other used feature feature group is calculated.
  • these use-specific feature groups ⁇ and ⁇ are each composed of three unique features. Further, t3 of the use specific feature group ⁇ and t3 of the use specific feature group ⁇ are the same specific feature t3 and are shared with each other.
  • the sum Dt1 of the distance between the unique feature t1 of the use unique feature group ⁇ and each unique feature (t3, t4, t5) of the use unique feature group ⁇ can be calculated by the following equation.
  • Dt1 (t1-3) + (t1-4) + (t1-5) (Expression 16) Further, the sum Dt2 of the distance between the unique feature t2 of the use unique feature group ⁇ and each unique feature (t3, t4, t5) of the use unique feature group ⁇ can be calculated by the following equation.
  • the sum Dt3 of the distances between the unique feature t3 of the use unique feature group ⁇ and each unique feature (t3, t4, t5) of the use unique feature group ⁇ can be calculated by the following equation.
  • the total distance Dtotal between each singular feature (t1, t2, t3) of the used singular feature group ⁇ and each singular feature (t3, t4, t5) of the used feature feature group ⁇ is calculated by the following equation: it can.
  • Equation 19 Dt1 + Dt2 + Dt3
  • the total sum Dtotal thus calculated is shown in FIG.
  • the calculation results shown in the figure are arranged in accordance with the arrangement of the combination of use-specific feature groups shown in FIG. Further, the calculation result shown in FIG. 14 is obtained by using “total” in the “unique feature distance calculation table” in FIG. 11 as the distance between the unique features.
  • the marker pattern generation unit 21 selects the combination having the largest total sum Dtotal of the distances between the unique features from the two combinations of unique features used.
  • the combination of the use specific feature group (t1, t4, t5) and the use specific feature (t2, t3, t4) is the combination having the largest sum of the distances between the specific features. Yes.
  • one of the unique features in one use specific feature group ⁇ (eg, t1) is superimposed on one of the unique features in the other use specific feature group ⁇ (eg, t3), and each unique feature at this time Calculate the sum of the distances between them.
  • one of the unique features in the use specific feature group ⁇ (for example, t1) is superimposed on the other one of the specific features in the use specific feature group ⁇ (for example, t4). Calculate the sum of distances.
  • each of the unique features in one used unique feature group is sequentially overlaid with one of the unique features in the other used unique feature group, and each time the superposition is performed, the distance between each unique feature Calculate the sum of.
  • the superposition method when the sum of distances is the smallest is approximated
  • This processing is performed for each combination of two use-specific feature groups, and an approximate state in each combination is obtained. Then, when the approximate states are obtained for all combinations, a predetermined number is selected from the sum of the distances between the singular features in these approximate states, and the two used singular feature groups in the selected approximate states are selected as markers. Use-specific features used for generation.
  • one of the plurality of unique features of the use-specific feature group ⁇ and one of the plurality of unique features of the use-specific feature group ⁇ are overlapped. For example, as shown in FIG. 16 (i), t3 ′ of the use specific feature group ⁇ is superimposed on the specific feature t1 of the use specific feature group ⁇ .
  • the unique features t2 and t3 of the use unique feature group ⁇ and the unique features t4 and t5 of the use unique feature group ⁇ are unique features that do not overlap. For this reason, as shown in FIG. 17 (i), the distance between each of the unique features t2, t3 and the unique features t4, t5 is calculated.
  • T2-t4 indicates the distance between the singular feature t2 and the singular feature t4.
  • the coordinates of each unique feature is the following value.
  • the coordinates of each unique feature is the following value.
  • ⁇ t1 (t4) 46.4699
  • the value of ⁇ t1 (t4) and the numerical values calculated by Expression 26 to Expression 29 are shown in FIG. 18 (ii).
  • ⁇ t1 (t5) 16.2715
  • ⁇ t1 (t5) and the distance between singular features that do not overlap are shown in FIG. 18 (iii).
  • the peculiar feature t3 of the use peculiar feature group ⁇ is overlaid with the t3 ′, t4, and t5 of the use peculiar feature group ⁇ , respectively, the distance between each non-overlapping peculiar feature is calculated, and the sum of them is obtained.
  • FIG. 19 shows the sum of the distances between the non-overlapping unique features in the superimposed state.
  • the marker pattern generation unit 21 selects the one with the smallest value from the sum shown in FIG.
  • the value when the singular feature t5 of the used singular feature group ⁇ is superimposed on the singular feature t1 of the used singular feature group ⁇ is the smallest value (shaded portion in the figure).
  • This numerical value is used as a shape approximation value of the use specific feature group ⁇ and the use specific feature group ⁇ .
  • the shape approximation value it is possible to know how close the respective shapes of the marker based on the use specific feature group ⁇ and the marker based on the use specific feature group ⁇ are. This, if completely same shape of the marker based on the shape of the marker based on the use-specific features ⁇ using unique feature group beta, matched when overlapped them, misalignment does not occur. On the other hand, if the shape of the marker based on the shape of the marker based on the use-specific features ⁇ using unique feature group ⁇ are different, when superimposed them, shift occurs by the amount that is the difference.
  • the marker based on the use-specific feature ⁇ and the marker based on the use-specific feature ⁇ are in the most overlapping state. That, which marker based on the marker based on the use-specific features ⁇ using unique feature ⁇ calculates a shape approximate to find the most overlapped condition, in which can be seen the degree of deviation of each shape at the same time. This is because when a state in which the arrangement of use specific features ⁇ and use unique feature ⁇ is shown in FIG.
  • the largest one is selected from the shape approximation values shown in FIG. In the figure, 29.5316 is the largest value (the numerical value shown in gray).
  • the aforementioned 29.5316 is a value when the use-specific feature group ⁇ is (t1, t3, t4) and ⁇ is (t2, t3, t5).
  • the two use-specific feature groups are (t1, t3, t4) and (t2, t3, t5) as described above, then the shape approximation in the comparison with (t1, t3, t4)
  • a combination (t2, t4, t5) having a large value can be selected.
  • the combination (t1, t4, t5) having the next largest shape approximation value in comparison with (t2, t3, t5) can be selected.
  • each method can be prioritized.
  • the methods (2) to (4) are methods for selecting singular features so that the distances related to the used singular features become large.
  • this distance has been described assuming a two-dimensional space.
  • the distance is not limited to a two-dimensional space, and can be calculated by a similar method in a multidimensional space such as a three-dimensional space.
  • FIG. 21 is a flowchart illustrating a processing procedure of the marker generation method.
  • the unique feature selection unit 12 refers to the “feature point detection table”, selects 0 or a predetermined number or less from the number of feature points for each section, and sets this as a unique feature (step 10). ).
  • the unique feature selection unit 12 collects data related to the selected unique features into a “singular feature table” (step 11). Then, the unique feature selection unit 12 stores the “single feature table” in the unique feature storage unit 11.
  • the marker pattern generation unit 21 of the marker pattern generation unit 20 extracts the “singular feature table” from the unique feature storage unit 11. Then, the marker pattern generation unit 21 selects one or more specific features used for generating the marker pattern from a plurality of specific features shown in the “singular feature table”, and sets these as use specific features ( Step 12).
  • This use-specific feature selection process can use one or more of the four methods in the “use-specific feature selection method” described above. The procedure of these methods will be described in detail in (a) to (e) below.
  • the marker pattern generation unit 21 generates one or more marker patterns using the use-specific features (step 13).
  • the marker storage unit 22 stores data related to the marker pattern generated by the marker pattern generation unit 21.
  • the marker pattern generation unit 21 specifies the number of markers (step 20).
  • the marker pattern generation unit 21 refers to the “singular feature table” and confirms the number of unique features (step 21). Here, it is assumed that there are five unique features as shown in FIG.
  • the marker pattern generation unit 21 creates a list of unique feature combinations as a “used unique feature combination table” (step 22).
  • a “use-specific feature combination table” in which a list of 31 combinations of use-specific features composed of one to five unique features is displayed is created.
  • the marker pattern generation unit 21 selects the same number of unique features as the number of specified markers from among the combinations of the unique features used (step 23).
  • the marker pattern generation unit 21 combines a use specific feature composed of five unique features and a use specific feature composed of four unique features. Select two of them.
  • the marker pattern generation unit 21 refers to the “singular feature table” and confirms the number of unique features (step 31). Here, it is assumed that there are five unique features as shown in FIG.
  • the marker pattern generation unit 21 creates a list of unique feature combinations as a “used unique feature combination table” (step 32).
  • the “use-specific feature combination table” shown in FIG. 7 has been created.
  • the marker pattern generation unit 21 calculates the sum of the distances between the unique features for each combination of the used specific features shown in the “use specific feature combination table” (step 33). The calculation results are summarized as a “singular feature distance calculation table” (see FIG. 11).
  • the marker pattern generation unit 21 selects the same number of markers as the number of identified markers from among the combinations of the used unique features that have a large sum of the distances between the unique features (step 34).
  • the marker pattern generation unit 21 refers to the “unique feature distance calculation table” (FIG. 11), and uses the combination of use unique features having the largest sum ( Use unique features composed of five unique features) and combination of use unique features with the next largest sum (of the combination of use unique features composed of four unique features, the sum is "49.5870") , A combination of use-specific features having the second largest sum (of the combination of use-specific features composed of four unique features, the sum of which is “48.7152”) is selected.
  • the marker pattern generation unit 21 refers to the “singular feature table” and confirms the number of unique features (step 41). Here, it is assumed that there are five unique features as shown in FIG.
  • the marker pattern generation unit 21 creates a list of unique feature combinations as a “used unique feature combination table” (step 42).
  • the “use-specific feature combination table” shown in FIG. 7 has been created.
  • the marker pattern generation unit 21 sets each use specific feature combination shown in the “use specific feature combination table” as a use specific feature group. Then, the marker pattern generation unit 21 selects two or more use-specific feature groups from among the plurality of use-specific feature groups (step 43), and selects between the specific features in the selected two or more use-specific feature groups. The sum of distances is calculated (step 44). The sum of the distances between the specific features is calculated for all combinations of two or more use specific feature groups that can be selected from among the plurality of use specific feature groups shown in the “use specific feature combination table” ( Step 45).
  • the number of unique features constituting the use-specific feature group can be limited.
  • the number of unique features constituting the use-specific feature group can be limited to two. In this case, there are 80 combinations of the two use-specific feature groups selected as shown in the figure. Then, the sum of the distances between the unique features in the two selected use unique feature groups is obtained as shown in FIG.
  • the marker pattern generation unit 21 selects, from the combinations of the use specific feature groups, the same total number of distances between the specific features in the plurality of use specific feature groups as the number of the specified markers. (Step 46).
  • the marker pattern generation unit 21 sets the sum of “67.7824” as a combination of use-specific feature groups having the largest sum.
  • Certain use-specific feature groups (t1, t4, t5) and (t2, t3, t4) are selected.
  • the marker pattern generation unit 21 specifies the number of markers (step 50).
  • the marker pattern generation unit 21 refers to the “singular feature table” and confirms the number of unique features (step 51). Here, it is assumed that there are five unique features as shown in FIG.
  • the marker pattern generation unit 21 creates a list of unique feature combinations as a “used unique feature combination table” (step 52).
  • the “use-specific feature combination table” shown in FIG. 7 has been created.
  • the marker pattern generation unit 21 sets each use specific feature combination shown in the “use specific feature combination table” as a use specific feature group. Then, the marker pattern generation unit 21 selects two or more use-specific feature groups from among the plurality of use-specific feature groups (step 53), and calculates shape approximation values in the selected two or more use-specific feature groups. (Step 54). The calculation of the approximate shape value is performed for all combinations of two or more use-specific feature groups that can be selected from the plurality of use-specific feature groups shown in the “use-specific feature combination table” (step 55).
  • the number of unique features constituting the use-specific feature group can be limited.
  • the number of unique features constituting the use-specific feature group can be limited to two. In this case, there are 80 combinations of the two use-specific feature groups selected as shown in the figure. Then, the approximate shape values in the two selected use-specific feature groups are obtained as shown in FIG.
  • the marker pattern generation unit 21 from among the combinations thereof using specific feature groups, those large shape approximation at a plurality of use-specific feature groups, selecting the same number as the number of specified marker (Step 56) .
  • the marker pattern generation unit 21 when selecting the two use a unique feature group to be used for marker generation, marker pattern generation unit 21, as a combination of shape approximation largest use specific features described, the sum is "29.5316 Use specific feature groups (t1, t3, t4) and (t2, t3, t5).
  • the number of use-specific features selected by the marker pattern generation unit 21 the combination of use-specific features, and the type and number of marker patterns to be generated can be arbitrarily set.
  • a plurality of types of marker patterns can be generated using some or all of a plurality of unique features.
  • FIG. 1 is a block diagram showing the configuration of the marker pattern generating means in the marker generating apparatus of the present embodiment.
  • the marker pattern generation unit has a marker pattern generation unit and a marker storage unit, whereas in this embodiment, it further has a marker ID setting unit.
  • Other components are the same as those in the first embodiment. Therefore, in FIG. 26, the same components as those in FIG. 1 are denoted by the same reference numerals, and detailed description thereof is omitted.
  • the marker generation device 1b includes a unique feature selection unit 10 and a marker pattern generation unit 20b.
  • the marker pattern generation unit 20 b includes a marker pattern generation unit 21, a marker storage unit 22, and a marker ID setting unit 23.
  • the marker ID setting unit (marker setting means) 23 determines which marker is attached to which object when using the plurality of marker patterns generated by the marker pattern generation unit 21 as IDs.
  • the marker ID setting unit 23 specifies the type of the object to be distinguished by the marker, that is, the type of the object to be identified by the marker detection device.
  • the type of the object can be “aluminum can”, “steel can”, “pet bottle”, and the like.
  • the object is “a product to be wholesaled to a retailer”, “A store”, “B store”, “C store”,.
  • objects a, b, c, d, e, f, g, h there are eight types of objects (objects a, b, c, d, e, f, g, h) as shown in FIG.
  • the number of types of objects is not limited to eight and can be any number.
  • the marker ID setting unit 23 specifies the same number of usage-specific feature groups as the types of objects.
  • the marker ID setting unit 23 first determines the number of unique features constituting the use unique feature group.
  • the number of unique features constituting the used unique feature group is determined by the number of unique features selected by the unique feature selection means 10. For example, when there are five unique features selected by the unique feature selection means 10 as shown in FIG. 6, the number of unique features constituting the used unique feature group is “single feature” as shown in FIG. The number of “1”, “1”, “2”, “3”, “4”, “5”.
  • the number of unique feature combinations is 5 for “1”, 10 for “2”, 10 for “3”, 5 for “4”, and 1 for “6”.
  • the number of combinations is “8” or more.
  • “2” and “3” of the number of unique features correspond to this.
  • it is better that the number of unique features is large. For this reason, it is desirable to select “3” instead of “2” as the number of unique features.
  • a combination of specific features is selected so that the number of specific features is the same.
  • the used specific feature group has the same number of specific features. It need not be, and may be different. For example, one use specific feature group with the number of unique features “5”, five use specific feature groups with “4”, and two use specific feature groups with “3” may be selected. .
  • the marker ID setting unit 23 arranges them arbitrarily or according to a certain rule (distance calculated by a predetermined distance calculation process), and assigns numbers according to this arrangement.
  • the marker attached to the object can be selected according to this number.
  • the Levenshtein distance, the distance between the singular features of the two used singular feature groups, and the shape approximation value of the two used singular feature groups correspond to the “distance calculated by the predetermined distance calculating process”.
  • this Euclidean distance is expressed as “predetermined distance calculation process”.
  • a process for calculating the Levenshtein distance a process for calculating the distance between each singular feature of the two used singular feature groups, a process for calculating a shape approximation value of the two used singular feature groups, and a process for calculating the Euclidean distance , Corresponding to “predetermined distance calculation processing”.
  • the marker ID setting unit 23 arranges a plurality (ten in the figure) of unique feature combinations, for example, as shown in FIG. 27 (ii), and assigns numbers to them.
  • the arrangement of a plurality of unique feature combinations can be arbitrary (random).
  • the unique feature numbers are regarded as three-digit numbers and are arranged in ascending order.
  • t1, t2, t3 is “123”
  • t1, t2, t4 is “124”
  • t3, t4, t5 is “345”, and these are arranged in ascending order.
  • Levenshtein distance refers to a numerical value indicating how different two character strings are in information processing theory. For example, it is given as the minimum number of steps necessary to transform one character string into another character string by inserting, deleting, or replacing characters.
  • the Levenshtein distance of (t1, t2, t4) which is the number “2” of the use specific feature group and (t1, t3, t4) which is the number “4” is “1”.
  • the Levenshtein distance of (t1, t4, t5) which is the number “6” of the use-specific feature group and (t2, t3, t4) which is the number “7” is “3”.
  • a plurality of use-specific feature groups are arranged based on the Levenshtein distance.
  • t1, t2, t3 of the number “1” is set as a use specific feature group.
  • the reference use specific feature group is arranged at the beginning of the plurality of use specific feature groups.
  • use-specific feature groups other than the reference use-specific feature group are arranged in order from the lowest Levenshtein distance to the second and subsequent.
  • the smallest value of the Levenshtein distance is “1”.
  • the use-specific feature groups whose Levenshtein distance from the reference use-specific feature group “t1, t2, t3” is “1” are the numbers “2” and “3”. Therefore, these numbers “2” and “3” are arranged second and third. Note that the numbers “2” and “3” both have a Levenshtein distance of “1”, so whichever may be the second and which may be the third.
  • the use specific feature groups whose Levenshtein distance from the reference use specific feature group “t1, t2, t3” is “2” are the numbers “4”, “5”, and “6”. Therefore, these numbers “4”, “5”, and “6” are arranged in the fourth, fifth, and sixth positions. Note that the numbers “4”, “5”, and “6” all have a Levenshtein distance of “2”, so they may be arranged in any of the fourth, fifth, and sixth.
  • the plurality of use-specific feature groups are as shown in FIG. 29 (i) based on the Levenshtein distance. Be placed.
  • the distance between each unique feature of a plurality of use-specific feature groups is the sum of the distances between each specific feature in “(3) Two use-specific feature groups” in “(Use-specific feature selection method)” in the first embodiment. “Use-specific features are selected so that becomes larger”.
  • the use specific feature group “t1, t2, t3” with the number “1” is a reference use specific feature group
  • the distance between the reference use specific feature group and another use specific feature group is As shown in FIG.
  • the sums shown in FIG. 14 are extracted for the use-specific feature group “t1, t2, t3” and arranged in the order of the use-specific feature group numbers.
  • use-specific feature groups other than the reference use-specific feature group are arranged in order from the smallest sum (those with the shortest distance).
  • the arranged results are shown in FIG. In this way, when a plurality of use-specific feature groups are arranged using the distance between the two use-specific feature groups, as shown in the figure, “1”, “7”, “2”, “4”, “4”, “ The order is “8”, “3”, “5”, “9”, “10”, “6”.
  • the use-specific feature groups are rearranged based on the sum of the distances between the specific features of the use-specific feature groups, the result is as shown in FIG. That is, the plurality of use-specific feature groups are “2”, “1”, “7”, “4”, “3”, “8”, “5”, “9”, “6”, “10”. Arranged in order.
  • the use-specific feature groups are rearranged based on the distance between the specific features of the use-specific feature groups, the result is as shown in FIG. That is, the plurality of use-specific feature groups are “8”, “1”, “7”, “5”, “3”, “4”, “2”, “10”, “9”, “6”. Arranged in order.
  • the shape approximation values of the two use-specific feature groups are used so that the degree of difference between the shapes of “(4) Two markers is large” in “(Use-specific feature selection method)” of the first embodiment. “Selecting unique features”. According to this explanation, when the unique feature is selected as shown in FIG. 6, when generating a marker with three unique features, the shape approximation values of the two used unique feature groups are as shown in FIG. Calculated.
  • FIG. 37 shows the result of the arrangement.
  • a plurality of use-specific feature groups are arranged using the shape approximation values of the two use-specific feature groups, as shown in the figure, “1”, “10”, “7”, “2”, The order is “6”, “9”, “8”, “4”, “3”, “5”.
  • the use-specific feature groups are rearranged based on the shape approximation values of the use-specific feature groups, the result is as shown in FIG. That is, the plurality of use-specific feature groups are “2”, “1”, “4”, “7”, “6”, “9”, “3”, “10”, “8”, “5”. Arranged in order.
  • each use-specific feature group is rearranged based on the shape approximation value of the use-specific feature group, it is as shown in FIG. That is, the plurality of use-specific feature groups are “8”, “9”, “10”, “3”, “5”, “1”, “7”, “2”, “6”, “4”. Arranged in order.
  • the marker ID setting unit 23 next selects a use-specific feature group used for generating a marker from the plurality of use-specific feature groups.
  • This selection method includes “select by number”, “select according to object type”, and “select according to marker robustness”.
  • FIGS. 27 (i) to (iii) when there are eight types of objects ((i) in FIG. 27), “1” is set for each of the plurality of use-specific feature groups. Are numbered in order (Fig. 2 (ii)), use-specific feature groups from “1” to "8” are selected in the order of the numbers, and these are used-specific feature groups used for generating a marker. These are associated with each type of object ((iii) in the figure).
  • eight are selected from “1” in ascending order, such as “1” to “8”.
  • eight consecutive numbers starting from numbers other than “1” such as “3” to “10” may be selected, and “1” to “4” and “7” to “10” may be selected.
  • a predetermined number of consecutive numbers may be selected to select a total of eight numbers.
  • the shape approximation value with another use-specific feature group based on the use-specific feature group with the number “1” is as shown in FIG.
  • the largest use of the shape approximation value as seen from the reference use specific feature group “1” is the use specific feature group with the number “5”.
  • the shape approximation value is the use specific feature group with the number “3”.
  • FIG. 37 shows a state in which other use-specific feature groups are arranged so that the shape approximation values are in ascending order based on the use-specific feature group of number “1” in this way.
  • “5” to “2” are more robust than “1”, but between “5” and “3”, between “9” and “6”, etc. It is not known from FIG. 37 whether the robustness is high. In this case, a marker approximate value of “3” when “5” is used as a reference or a shape approximate value of “6” when “9” is used as a reference is used. Use specific feature groups can be selected.
  • the object when the object is a beverage container and the type of the object is an aluminum can, a steel can, a plastic bottle, etc., there is no vertical relationship (hierarchy) between these types.
  • Identification can be made by attaching different markers.
  • the object is a retort food
  • the type of the object is curry, stew, Chinese rice bowl, etc.
  • curry, stew, and Chinese potato are the upper level layers
  • sweet, dry, and medium hot are the lower level layers for the curry.
  • the former should eliminate misrecognition more. In other words, it is desirable that the robustness between each type be higher in the upper hierarchy than in the lower hierarchy.
  • the use-specific feature group is selected so as to increase or decrease the robustness according to the hierarchical level of the object type. This is done using shape approximation values between markers.
  • the marker ID setting unit 23 arranges other use-specific feature groups side by side with the use-specific feature group having the number “4” as a reference. The result of this arrangement is shown in FIG.
  • the use-specific feature groups are “4”, “2”, “7”, “1”, “5”, “10”. ”,“ 6 ”,“ 3 ”,“ 9 ”,“ 8 ”.
  • the marker ID setting unit 23 selects a use specific feature group for generating a marker based on the arrangement of the use specific feature group.
  • a use specific feature group for generating a marker based on the arrangement of the use specific feature group.
  • three curry, stew, Chinese rice bowl
  • three sweet, dry, medium hot
  • the type of the lower level of the curry is selected from the numbers in the vicinity of this “4”. Specifically, “2” and “7” next to “4” are selected.
  • the marker-specific setting group 23 selects a use-specific feature group for generating a marker from among a plurality of use-specific feature groups, the marker ID setting unit 23 determines to which object type each of the selected use-specific feature groups is attached.
  • “4”, “2”, and “7” are assigned to lower-level types because the shape approximation value between them is small. Specifically, “4”, “2”, and “7” are assigned to curry sweet, dry, and medium hot, respectively.
  • “6” and “8” have a large shape approximation value between “4”, they are assigned to higher-level types. Specifically, “6” and “8” are assigned to stew and Chinese bowl, respectively.
  • FIG. 44 shows a state in which a marker is attached to the object according to this assignment.
  • the marker ID setting unit 23 summarizes the allocation results as an “object-marker correspondence table”.
  • FIG. 45 shows a configuration example of this “object-marker correspondence table”.
  • the “object-marker correspondence table” can be configured with “object type” and “marker pattern number” as items.
  • object-marker correspondence table By referring to this “object-marker correspondence table”, it can be understood which object type the detected marker corresponds to.
  • This “object-marker correspondence table” is stored in the marker storage unit 23.
  • two or more use-specific feature groups are selected from a plurality of use-specific feature groups, and these are associated with each type of object, and the corresponding object is selected.
  • a marker By attaching a marker, a different marker can be attached for each type of object, and at the marker detection stage, the type of each object can be distinguished and detected.
  • FIG. 45 is a flowchart showing the processing procedure of the marker generation method.
  • the singular feature selection unit 12 of the singular feature selection unit 10 extracts the “feature point detection table” from the singular feature storage unit 11.
  • the unique feature selection unit 12 refers to the “feature point detection table”, selects 0 or a predetermined number or less from the number of feature points for each section, and sets this as a unique feature (step 60). ).
  • the unique feature selection unit 12 collects data related to the selected unique features into a “singular feature table” (step 61). Then, the unique feature selection unit 12 stores the “single feature table” in the unique feature storage unit 11.
  • the marker pattern generation unit 21 of the marker pattern generation unit 20 extracts the “singular feature table” from the unique feature storage unit 11. Then, the marker pattern generation unit 21 selects one or more specific features used for generating the marker pattern from a plurality of specific features shown in the “singular feature table”, and sets these as use specific features ( Step 62).
  • This selection of use-specific features can use one or more of the four methods in the above-mentioned [Use-specific feature selection method].
  • the marker pattern generation unit 21 generates a plurality of marker patterns using the use-specific features (step 63).
  • the marker storage unit 22 stores data related to the marker pattern generated by the marker pattern generation unit 21.
  • the marker ID setting unit 23 of the marker pattern generation unit 20 assigns a plurality of marker patterns generated by the marker pattern generation unit 21 to a plurality of types of objects, respectively (step 64). Then, the assigned results are collected in an “object-marker correspondence table” and stored in the marker storage unit 22.
  • the marker ID setting unit 23 determines which marker is attached to which object when using a plurality of marker patterns generated by the marker pattern generation unit 21 as an ID (marker assignment process to an object).
  • the marker ID setting unit 23 specifies the type of the object to be distinguished by the marker, that is, the type of the object to be identified by the marker detection device (step 70).
  • the marker ID setting unit 23 identifies the same number of use-specific feature groups as the types of objects (step 71).
  • the marker ID setting unit 23 arranges the plurality of specified use-specific feature groups arbitrarily or in accordance with a certain rule, assigns a number according to the arrangement, and attaches a marker to the object according to the number. Select (step 72).
  • the marker ID setting unit 23 determines to which object type each of the selected use-specific feature groups is attached (object The type and the use-specific feature group, step 73).
  • the marker ID setting unit 23 summarizes the allocation results as an “object-marker correspondence table”. This “object-marker correspondence table” is stored in the marker storage unit 23.
  • the generated multiple markers can be used as object IDs.
  • an ID with an order (for example, 4, 2, 7...) Can be created by arranging in order from the shortest to the longest.
  • This figure is a block diagram showing the configuration of the marker generation device of the present embodiment.
  • the marker generation device 1c includes a unique feature selection means 10, a marker pattern generation means 20, a video input means 30, and a feature extraction means 40 that is an arrangement means.
  • the video input means 30 includes a video input unit 31 and a video storage unit 32 as shown in FIG.
  • the video input unit 31 inputs a background video.
  • the background video is an image of the environment before using the marker generated by the marker generating device 1c (environment where no marker exists).
  • a belt conveyor that conveys an object with a marker
  • a belt conveyor in a state in which the object is not conveyed and an image of the periphery of the belt conveyor are applicable.
  • the background video may be a moving image (video), or may be a plurality of still images taken at predetermined time intervals.
  • the background video can include live video, recorded video, distribution video, and the like.
  • the video input unit 31 itself can have an imaging device. In this case, the video input unit 31 can shoot a state around the place where the marker generating device 1c is installed as a background video.
  • the video input unit 31 can also input a background video captured by a device other than the marker generation device 1c via a communication network or a communication cable.
  • FIG. 50 shows an example of a background image photographed or input by the image input unit 31.
  • the video storage unit 32 stores the still image frames constituting the background video as digitized frame images.
  • the video storage unit 32 stores a number (for example, a serial number) given to each of the plurality of frame images. This number uniquely identifies one frame image. In FIG. 50, (i-11) corresponds.
  • the video storage unit 32 can also store the time at which the frame image was captured, information for specifying the device that captured the frame image (when the frame image is externally input), and the like.
  • the feature extraction means 40 has a feature extraction unit 41 and a feature storage unit 42 as shown in FIG.
  • the feature extraction unit 41 extracts a frame image from the video storage unit 32. Then, the feature extraction unit 41 extracts image features including a characteristic pattern in the extracted frame image.
  • the feature extraction unit 41 can use, for example, a numerical characteristic of a graphically characteristic characteristic as an image feature.
  • the method described in “Making good features track better” by Tommasini et al. Published in the 1998 IEEE Computer Vision and Pattern Recognition Conference Proceedings can be used.
  • This method can extract vertices, intersections, end points and the like of object shapes in an image.
  • a series of position coordinate information on the image of these points can be used as a graphic feature.
  • feature points are extracted by this method for the frame image in FIG. 50 (i-11), a plurality of feature points are arranged as shown in FIG. Each feature point can be managed by coordinates.
  • a space in which feature points are arranged is called a feature space.
  • This feature space may be a two-dimensional space or a three-dimensional space.
  • the feature space of this embodiment is a two-dimensional space.
  • the feature extraction unit 41 gives a serial number to each feature point.
  • This serial number can be given as 1, 2, 3, 4,... In order from the one located at the top.
  • the feature extraction unit 41 obtains the coordinates of each feature point.
  • the X-axis and the Y-axis can be set in the feature space, and the distance from the Y-axis can be set as the X-coordinate and the distance from the X-axis can be set as the Y-coordinate, as shown in FIG.
  • the feature extraction unit 41 stores the serial numbers and coordinates of these feature points in the feature storage unit 42.
  • the feature storage unit 42 can store these serial numbers and the like as a “feature point information table” as shown in FIG.
  • the “feature point information table” includes a “frame image serial number” (a), a “feature point serial number” (b), a “feature point x coordinate” (c), “Y-coordinates of feature points” (d), “coordinates of sections where feature points are located” (e), and “information about feature points” (f) can be configured as items.
  • the serial number of the frame image indicates the number assigned to the frame image from which the feature points are extracted.
  • Information about feature points can include, for example, elements recognized as features (edges, intersections, etc.), hue, brightness, saturation, and the like of pixels where the feature points are located.
  • the feature extraction unit 41 adds a lattice mesh to the feature space and divides it into a plurality of sections.
  • the feature extraction unit 41 calculates the coordinates of each section.
  • the coordinates of each section can be expressed by the coordinates of a line (partition line) that partitions each section.
  • the coordinates of the partition lines are x1, x2, x3,..., Y1, y2, y3,.
  • each section is the section (1,1), section (1,2), section (1,3), ..., section (2,1), section (2,2), section (2 , 3), and so on.
  • the partition (1,1) is a range surrounded by coordinates (0,0)-(x1,0)-(x1, y1)-(0, y1)-(0,0).
  • x1 is the x coordinate of the first lane marking in the X direction.
  • Y1 is the y coordinate of the first partition line in the Y direction.
  • the coordinates of the section (1,1) can be expressed as (x1, y1) as shown in FIG.
  • the coordinates of the partition (2,1) are (x2, y1)
  • the coordinates of the partition (3,1) are (x3, y1)
  • the coordinates of the partition (1,2) are (x1, y2)
  • the coordinates of the partition (2,2) can be expressed as (x2, y2).
  • FIG. 56 shows the relationship between the names and coordinates of these sections.
  • the names and coordinates of these sections can be stored in the feature storage unit 42 as a section coordinate table.
  • the size of one section can be set arbitrarily. However, the size of one section is preferably determined so that there are at least two to three sections in the feature space where no feature points exist.
  • the feature extraction unit 41 obtains the number of feature points for each section.
  • the calculation of the number of feature points for each section can be performed using the coordinates of each section and the coordinates of each feature point.
  • the calculated number of feature points for each section can be expressed as a “feature point number distribution diagram” as shown in FIG.
  • This “feature point number distribution diagram” is stored in the feature storage unit 42.
  • FIG. 57 for easy understanding, a section where one or more feature points exist is displayed with gray shading.
  • the feature extraction unit 41 associates the feature point with the coordinates of the section where the feature point is located for each feature point.
  • the coordinates of the section where the feature point 1 is located are (x7, y1) as shown in FIG. Therefore, as shown in FIG. 58, the feature extraction unit 41 associates the feature point 1 with the coordinates (x7, y1) of the section in the “coordinates of the section where the feature points are located” in the “feature point information table”. This is stored in the feature storage unit 42.
  • the feature storage unit 42 holds a predetermined memory area.
  • the feature storage unit 42 stores various data related to the process executed by the feature extraction unit 41.
  • the feature storage unit 42 can store a “feature point information table”, “frame image-feature space correspondence table”, “section coordinate table”, and “feature point number distribution diagram”.
  • the feature extraction means 40 has a function as “placement means” because it extracts feature points and places them in a predetermined space (feature space).
  • the unique feature selection means 10 includes a unique feature storage unit 11 and a unique feature selection unit 12 as shown in FIG.
  • the unique feature storage unit 11 stores “feature point information table”, “frame image-feature space correspondence table”, “section coordinate table”, “feature point number distribution diagram”, and coordinates of unique features.
  • the unique feature selection unit 12 takes out the “feature point number distribution diagram” from the feature storage unit 42 and stores it in the unique feature storage unit 11.
  • the singular feature selection unit 12 refers to the extracted “feature point number distribution diagram” and selects, as a singular feature, a section in which feature points of 0 or a predetermined value or less are arranged among the number of feature points for each section.
  • the unique feature selection unit 12 can select an image feature that does not appear in the background video input by the video input unit 30 as a unique feature.
  • the unique feature selection unit 12 can select a feature that does not match the background pattern, that is, a part of the feature space where the feature group extracted from the background video does not appear as the unique feature. After the fact, in order to avoid that the singular feature resembles the background pattern due to feature point extraction error, etc., the singular feature is selected from a larger area in the feature space where the feature of the background pattern does not exist You may make it do.
  • This singular feature selection process can be identified with the problem of finding a large blank from the distribution of feature points in the feature space.
  • An algorithm for Finding Maximal published in the 2003 Proceedings of the International Conference on Document Analysis and Recognition
  • An algorithm such as Whitespace Rectangles at Arbitrary Orientations for Document Layout Analysis may be used to extract a large blank area, or the center of a rectangular area that does not include the obtained feature point may be a unique feature.
  • the feature space is quantized with a mesh of a specific size, a one-dimensional or multi-dimensional histogram is generated, and the center of the mesh where the occurrence frequency of feature points is 0 is set as a unique feature. Also good. If there is no mesh with a frequency of 0, the size of the mesh is reduced and a histogram is taken. If a mesh with a frequency of 0 appears, a unique feature may be selected from the mesh at this time. . If a mesh with a frequency of 0 is not found, the histogram may be thresholded with a default value, and singular features may be selected from meshes with a default value or less.
  • FIGS. Examples of unique features selected by the unique feature selection unit 12 are shown in FIGS.
  • the sections designated as unique features are represented in white, and the sections not designated as unique features are represented by gray shading.
  • FIG. 60 is a diagram in which the center of the singular feature and the center point of the singular feature layout diagram are represented by black circles “ ⁇ ” based on the singular feature layout diagram shown in FIG.
  • FIG. 57 there are 82 unique features (sections where the cumulative number of feature points is 0). In order to facilitate the description of the marker pattern generation process, the unique features are shown in FIGS. It shall be selected as shown.
  • the unique feature selection unit 12 obtains the coordinates of the selected unique feature. For example, the unique feature selection unit 12 sets the coordinates of the unique features to (2,6), (5,2), (5,4), (5,5), (7 in the unique feature arrangement diagram shown in FIG. , 6). The coordinates of these unique features are stored in the unique feature storage unit 11.
  • the marker pattern generation means 20 has a marker pattern generation unit 21 and a marker storage unit 22 as shown in FIG.
  • the marker pattern generation unit 21 takes out the coordinates of the unique features from the unique feature storage unit 11 and generates a marker pattern based on the coordinates of the unique features.
  • the method of generating a marker pattern there are a variety of ways.
  • the feature point group detection required for generating the marker pattern is the feature point detection used by the feature extraction means 40.
  • the feature point detection used by the feature extraction means 40.
  • FIGS. 8 (i) to (iv) For example, a marker pattern generation method as shown in FIGS. 8 (i) to (iv) is given as an example.
  • the device that attaches the marker to the object prints the marker with a paint corresponding to the brightness value or the color difference value corresponding to the unique feature. May be.
  • the marker pattern generation unit 21 may generate a marker corresponding to the brightness, color, and shape corresponding to the selected unique feature.
  • the marker storage unit 22 stores data related to the marker generated by the marker pattern generation unit 21.
  • the coordinates of the unique features are stored.
  • the coordinates of the line segments constituting the convex hull are stored in addition to the coordinates of the unique features.
  • FIG. 61 is a flowchart showing the processing procedure of the marker generation method.
  • the video input unit 31 of the video input means 30 inputs a background video (step 40).
  • This background video is composed of a plurality of frame images.
  • the video storage unit 32 of the video input unit 30 stores the background video input by the video input unit 31 as a frame image.
  • the feature extraction unit 41 of the feature extraction unit 40 extracts a frame image from the video storage unit 32, extracts feature points from the frame image, and places these feature points in the feature space (step 41).
  • the feature extraction unit 41 calculates the coordinates of feature points in the feature space (step 42). The calculated coordinates are stored in the feature storage unit 42.
  • the feature extraction unit 41 adds a lattice mesh to the feature space and divides it into a plurality of sections (step 43).
  • the feature extraction unit 41 obtains the number of feature points for each section (step 44).
  • the feature extraction unit 41 extracts feature points, places them in the feature space, calculates the number of feature points for each section for each of the plurality of frame images, and accumulates the calculated number of feature points for each section ( Step 45).
  • the feature storage unit 42 stores the coordinates of the sections and section lines, and the number of feature points for each section.
  • the singular feature selection unit 12 of the singular feature selection unit 10 extracts the feature points for each section from the feature storage unit 42.
  • the unique feature selection unit 12 selects 0 or a predetermined number or less from the feature points for each section, and designates this as a unique feature (step 46).
  • the singular feature storage unit 11 stores the coordinates of the sections determined as the singular features by the singular feature selection unit 12.
  • the marker pattern generation unit 21 of the marker pattern generation unit 20 takes out the coordinates of the unique features from the unique feature storage unit 11. Then, the marker pattern generation unit 21 generates a plurality of marker patterns based on the coordinates of the unique features (step 47).
  • the marker storage unit 22 stores data related to the marker pattern generated by the marker pattern generation unit 21.
  • the feature space in the feature space has a predetermined number or less as a unique feature, and a marker pattern is generated based on this unique feature. Therefore, a highly robust marker pattern can be generated by a pattern that does not appear in any background pattern of the background video input by the video input means.
  • FIG. 62 is a block diagram showing the configuration of the marker generation device of this embodiment.
  • This embodiment is different from the first embodiment in the space for selecting a unique feature. That is, in the first embodiment, a singular feature is selected from the feature space, whereas in this embodiment, a singular feature is selected from the invariant feature space. Other components are the same as those in the first embodiment.
  • FIG. 62 the same components as those in FIG. 1 are denoted by the same reference numerals, and detailed description thereof is omitted.
  • the marker generation device 1d includes a unique feature selection unit 10, a marker pattern generation unit 20, a video input unit 30, a feature extraction unit 40, and an invariant feature conversion unit 50.
  • the feature extraction means 40 and the invariant feature conversion means 50 correspond to “placement means”.
  • the invariant feature converting means 50 includes an invariant feature converting unit 51 and an invariant feature storing unit 52 as shown in FIG.
  • the invariant feature converter 51 converts the feature points into invariant features.
  • the invariant feature conversion unit 51 extracts the “feature point information table” from the feature storage unit 42 of the feature extraction unit 40, converts the feature points into invariant features, and stores them in the invariant feature storage unit 52.
  • a characteristic part of an image and making a series of position coordinate information on the image a graphic feature for example, in the case of processing for extracting the feature point shown in FIG. 51 from the background video shown in FIG. 50
  • the conversion to the invariant features can be performed as follows, for example.
  • a series of position coordinate information is referred to as a feature point group here.
  • geometric invariant features when the background is far away will be described.
  • consideration is given so that the feature amount remains unchanged even when the image is subjected to shear deformation due to the influence of optical distortion. It is easy to expand to invariant features with a higher degree of freedom, such as when the background is not far away.
  • Geometrically invariant features i.e., when the camera and the scene to be photographed rotate and translate relative to each other and suffer from shear deformation, feature points that are invariant regardless of their relative positional changes
  • An example of a generation method based on the positional relationship will be described.
  • the invariant feature space is defined as a two-dimensional plane with two orthogonal axes.
  • One of the feature points selected from the feature point group is associated with the origin in the invariant feature space.
  • the other two points are associated with the position coordinates (1, 0) and (0, 1) in the invariant feature space, respectively.
  • These three points are called bases.
  • a one-to-one linear mapping from the original image space to the invariant feature space can be defined as an affine transformation.
  • base selection is performed from a permutation combination of all three points of the feature point group, and the non-basis feature points for each base are set in the invariant feature space. Need to map.
  • the entire base thus created and the mapping of all feature points to the invariant feature space are stored in the invariant feature storage unit 52 as invariant features.
  • the reason why these feature points are invariant with respect to geometric deformation is that invariant features obtained by a base selected from a marker always match in an image including other objects.
  • the method described so far is a case where the base is three points, but the base is not limited to three points, and can be one point, two points, or four points or more. Next, a case where the base is one point will be described.
  • the invariant feature conversion unit 51 determines one feature point as a base, moves so that the base is located at the coordinates (0, 0) of the invariant feature space, obtains the amount of movement, and all other features. The point also moves to the invariant feature space with the amount of movement.
  • all feature points are set such that the feature point of serial number 5 is the base and the feature point of number 5 is at the coordinate (0, 0) in the invariant feature space.
  • Translate As a result, feature points are arranged in the invariant feature space as shown on the right side of FIG. Note that feature points arranged in the invariant feature space are referred to as invariant features.
  • all feature points are set such that the feature point of serial number 15 is the base and the feature point of number 15 is at the coordinate (0, 0) in the invariant feature space.
  • invariant feature groups are arranged as shown in the invariant feature space on the right side of the figure.
  • all feature points are set such that the feature point of serial number 89 is the base and the feature point of 89 is located at the coordinate (0, 0) in the invariant feature space.
  • invariant feature groups are arranged as shown in the invariant feature space on the right side of the figure.
  • FIG. 51 The result of mapping the feature points shown in FIG. 51 to the invariant feature space is as shown in FIG. This is a state in which invariant features are arranged in the invariant feature space.
  • the method for mapping the feature points to the invariant feature space is the method shown in FIGS. 63 to 67, but the mapping method is not limited to this method, and various methods may be used. Can do.
  • one of a plurality of feature points is defined as a first basis, the other as a second basis, the first basis is moved to the coordinates (0,0) of the invariant feature space,
  • all feature points are moved according to the same conversion rule as this transfer rule, and the coordinates of each moved feature point (invariant feature) in the invariant feature space are stored.
  • the other two feature points are defined as the first basis and the second basis, and all feature points are moved according to the same transformation rule as the first and second basis move, and the invariant feature space is invariant.
  • Stores feature coordinates When all feature points are defined as the first and second bases and the accumulation of the invariant feature coordinates in the invariant feature space is completed, the mapping to the invariant feature space is completed.
  • the object color can be used as an invariant.
  • the color of the object is photographed with a different color depending on the light source color existing in the photographing environment even if it is the same object. If the influence of the light source color variation can be separated and removed from the image, the actual object color can be obtained.
  • the actual object color obtained may be used as the object color invariant.
  • the specular reflection location is dominated by the influence of the light source color, and the luminance value is likely to be saturated in the light source color component, so this is regarded as the light source color and the color component corresponding to the saturation location is not selected as an invariant feature. It may be.
  • texture can be used as an invariant.
  • a feature value is a numerical value or vector obtained by performing numerical computation on the luminance distribution of a partial region of an image. Similar to the graphical invariant, the texture invariant is easily influenced by the relative positional relationship between the camera and the object to be photographed. Therefore, a feature amount that is not easily influenced is calculated and set as the texture invariant. For example, a feature quantity that is invariant to the distance and zoom between the camera and the object can be implemented by converting the focused partial image into polar coordinates and taking the power spectrum in the radial direction. Further, when the power spectrum is obtained again in the azimuth direction with respect to the power spectrum, the feature amount is invariable with respect to the rotation around the optical axis of the camera. In addition, IEEE TRANSACTIONS ON PATTERN ANALYSIS AND MACHINE INTELLIGENCE, VOL. 25, NO. 5, MAY 2003 described in Chi-Man Pun and Moon-Chuen Lee, etc. A method may be used.
  • geometric invariants other geometric invariants as described in “Multiple View Geometry in Computer Vision” by Richard Hartley and Andrew Zisserman may be used.
  • the invariant feature space is three-dimensional
  • a three-dimensional geometric invariant can be created.
  • one of the four base points selected from the feature point group is the origin of the invariant space
  • the other base feature points are the position coordinates (1, 0, 0) and (0, 1) in the invariant space. , 0), (0, 0, 1), a transformation map is obtained, and other features are mapped to the invariant space using this transformation map.
  • the invariant feature conversion unit 51 that maps the feature points to the invariant feature space attaches a lattice mesh to the invariant feature space and divides it into a plurality of sections as shown in FIG.
  • the invariant feature conversion unit 51 obtains the number of invariant features for each section.
  • the calculation result is shown in FIG. FIG. 69 is a diagram in which gray is added to a section where the number of invariant features is 1 or more in the invariant feature space.
  • the invariant feature storage unit 52 holds a predetermined memory area.
  • the invariant feature storage unit 52 stores various data obtained by the invariant feature conversion unit 51.
  • the various data includes, for example, the coordinates of each invariant feature arranged in the invariant feature space, the coordinates (range) of each section, the number of invariant features for each section, and the like.
  • the unique feature selection means 10 includes a unique feature selection unit 11 and a unique feature storage unit 12 as shown in FIG.
  • the unique feature selection unit 11 determines a marker pattern generation range as a marker pattern generation range in the invariant feature space.
  • the marker pattern generation range can be the same size as the still image frame.
  • the unique feature selection unit 11 takes out the invariant feature number for each section in the marker pattern generation range from the invariant feature storage unit 52.
  • FIG. 71 shows the number of invariant features for each extracted section. Note that FIG. 71 is a diagram in which gray is added to sections where the number of invariant features is 1 or more in the marker pattern generation range.
  • the unique feature selection unit 11 selects 0 or a predetermined value or less as the unique feature among the invariant feature numbers for each section in the marker pattern generation range. Accordingly, the unique feature selection unit 11 can select an image feature that does not appear in the scene as a unique feature from the stored feature group.
  • the white section is a section whose invariant feature number is zero.
  • the unique feature storage unit 12 stores the coordinates of the unique feature selected by the unique feature selection unit 11.
  • the marker pattern generation means 20 has the same function as the marker pattern generation means 20 in the first embodiment.
  • the invariant feature converter 51 maps the feature points shown in FIG. 51 to the invariant feature space.
  • the invariant feature conversion unit 51 multiplies the invariant feature space with a mesh and calculates a feature point for each section.
  • the luminance value of the object color obtained by the above-described Tan et al. Method is used for the neighboring pixels of the feature point group extracted when obtaining the geometric invariant.
  • three points are selected from the feature point group as a basis and projected onto a geometric invariant space described by a two-dimensional plane.
  • An object color invariant corresponding to each feature position is obtained, and an axis orthogonal to the geometric invariant plane, that is, a three-dimensional space including object color invariant coordinates is assumed.
  • Each axis of the three-dimensional space is quantized and divided into rectangular parallelepiped meshes of a predetermined size, and a histogram for each rectangular parallelepiped is generated. The same calculation is performed for all combinations of bases, and the center value of the mesh having a histogram of 0 is set as a unique feature.
  • the marker may be generated with a position and color corresponding to each unique feature.
  • FIG. 6 is a flowchart showing a processing procedure of the marker generation method of the present embodiment.
  • the video input unit 31 of the video input means 30 inputs a background video (step 30).
  • This background video is composed of a plurality of frame images.
  • the video storage unit 32 of the video input unit 30 stores the background video input by the video input unit 31 as a frame image.
  • the feature extraction unit 41 of the feature extraction unit 40 extracts a frame image from the video storage unit 32 and extracts feature points from the frame image (step 31).
  • the feature extraction unit 41 calculates the coordinates of the extracted feature points (step 32). The calculated coordinates are stored in the feature storage unit 42.
  • the invariant feature conversion unit 51 of the invariant feature conversion unit 50 takes out the coordinates of the feature points from the feature storage unit 42. Then, invariant feature transform unit 51, based on the coordinates of the extracted feature points, mapping the feature points in the invariant feature space (step 33).
  • the invariant feature conversion unit 51 partitions the invariant feature space by applying a mesh (step 34).
  • the invariant feature conversion unit 51 calculates the number of invariant features for each section (step 35).
  • the invariant feature conversion unit 51 calculates the number of invariant features for each section for each of the plurality of frame images, and accumulates these (step 36).
  • the invariant feature storage unit 52 stores the total number of invariant features for each section calculated by the invariant feature conversion unit 51.
  • the singular feature selection unit 11 of the singular feature selection unit 10 extracts the invariant feature number for each section from the invariant feature storage unit 52. At this time, the invariant feature number for each section in the marker pattern generation range can be extracted.
  • the unique feature selecting section 11 from among the invariant feature number for each partition, select the following: 0 or a predetermined number, which is referred to as unique feature (step 37).
  • the unique feature storage unit 12 stores the coordinates of the sections determined as the unique features by the unique feature selection unit 11.
  • the marker pattern generation unit 21 of the marker pattern generation unit 20 takes out the coordinates of the unique features from the unique feature storage unit 12. Then, the marker pattern generation unit 21 generates a plurality of marker patterns based on the coordinates of the unique features (step 38).
  • the marker storage unit 22 stores data related to the marker pattern generated by the marker pattern generation unit 21.
  • the video input unit inputs a plurality of frame images, extracts feature points from all of these frame images, and makes these feature points unchanged. Since a feature is mapped to the invariant feature space as a feature, a singular feature is selected in this invariant feature space, and a marker pattern is generated based on this singular feature, a highly robust marker for any frame image A pattern can be generated.
  • FIG. 73 is a block diagram showing the configuration of the marker detection device.
  • FIG. 74 is a block diagram showing a detailed configuration of the marker detection device.
  • the marker detection device 100 includes a video input unit 30, a feature extraction unit 40, a marker storage unit 130, a collation unit 140, and a notification unit 150.
  • the video input unit 30 includes a video input unit 311 and a video storage unit 32 as shown in FIG.
  • the video input unit 311 captures (inputs) an environment in which a marker may exist as a detection target video.
  • the video input unit 311 can input a detection target video including a marker as shown in FIG.
  • the video storage unit 32 stores still image frames constituting the detection target video as digitized frame images.
  • the feature extraction means 40 has a feature extraction unit 41 and a feature storage unit 42 as shown in FIG.
  • the feature extraction unit 41 extracts a frame image from the video storage unit 32. Then, the feature extraction unit 41 extracts image features including a characteristic pattern in the extracted frame image.
  • the feature extraction unit 41 extracts feature points as shown in FIG. 76 from the detection target video.
  • the feature storage unit 42 stores the coordinates of the feature points extracted by the feature extraction unit 41.
  • the marker storage unit 130 stores data relating to each of a plurality of types of marker patterns generated by the marker generation device 1.
  • the marker storage unit 130 can store feature points based on a marker pattern, for example.
  • the collation means 140 has a collation unit 141 and a collation result storage unit 142.
  • the collation unit 141 takes out the coordinates of the feature points based on the detection target video from the feature storage unit 42 and takes out the coordinates of the feature points based on each of the plurality of types of marker patterns from the marker storage unit 130 and collates them. . Then, the matching unit 141 determines whether or not a feature point that matches a feature point based on any of the plurality of types of marker patterns is included in the feature point based on the detection target video.
  • the features of the marker pattern are compared with one of the features generated from the detection target video and the Euclidean distance in the feature space is less than or equal to the default value, the features match and are matched.
  • the number of features may be accumulated as a score, and when the score reaches a threshold, marker detection may be accepted.
  • a condition that the accumulated value of the Euclidean distance is equal to or less than a predetermined value may be added.
  • the marker storage unit 130 stores the coordinates of the unique feature.
  • the collation part 141 can confirm a detection as a contribution from a marker pattern, when the feature from a detection target image
  • the accepted projection frequency may be set to a default value of one or more times.
  • the quantized feature space can be generated from the marker pattern, this may be used.
  • the marker pattern detection may be accepted when the unique feature obtained from the detection target video matches the feature space mesh onto which the marker pattern is projected once or a predetermined number of times.
  • the collation unit 141 detects the coordinates of the feature point in the detection target video, This is stored in the verification result storage unit 142. In addition, the collation unit 141 sends a notification signal to the notification unit 150.
  • the collating unit 141 does not detect the feature point coordinates and send out the notification signal.
  • the collation unit 141 searches for a feature point that matches the feature point based on the marker pattern extracted from the marker storage unit 130 from the feature point group shown in FIG. At this time, the collation unit 141 enlarges or reduces the feature point group based on the marker pattern, and collates it with the feature point group in the feature space.
  • the matching unit 141 searches for the feature in the feature space shown in FIG. The coordinates of the point are detected and stored in the matching result storage unit 142.
  • the collation result storage unit 142 stores data related to the collation performed by the collation unit 141.
  • the collation result storage unit 142 sets the coordinates of the feature points that match the feature points based on the marker pattern (the feature points surrounded by the left ellipse in FIG. 76) among the feature points based on the detection target video.
  • the notification unit 150 When the notification unit 150 receives the notification signal from the collating unit 141, the notification unit 150 notifies the outside that the feature point that matches the feature point based on the marker pattern is in the feature point based on the detection target video. Examples of the notification method include voice output and screen display.
  • the marker storage unit 130 stores in advance data relating to each of a plurality of types of marker patterns generated by the marker generation device 1 (step 110).
  • the marker storage unit 130 can store feature points based on a marker pattern, for example.
  • the video input unit 311 of the video input unit 30 inputs an environment in which a marker may exist as a detection target video (step 111).
  • the video storage unit 32 stores still image frames constituting the detection target video as digitized frame images.
  • the feature extraction unit 41 of the feature extraction unit 40 extracts a frame image from the video storage unit 32. Then, the feature extraction unit 41 extracts image features including a characteristic pattern in the extracted frame image (step 112).
  • the feature extraction unit 41 calculates the coordinates of the extracted feature points (step 113).
  • the feature storage unit 42 stores the coordinates of the feature points calculated by the feature extraction unit 41.
  • the collation unit 141 of the collation unit 140 takes out the coordinates of the feature points based on the detection target image from the feature storage unit 42 and takes out the coordinates of the feature points based on each of the plurality of types of marker patterns from the marker storage unit 130. They are collated (step 114). Then, the matching unit 141 determines whether or not a feature point that matches a feature point based on any of the plurality of types of marker patterns is included in the feature point based on the detection target video.
  • the matching unit 141 determines the feature point in the detection target video.
  • the coordinates are detected and stored in the matching result storage unit 142 together with the marker pattern that matches the coordinates.
  • the collation unit 141 sends a notification signal to the notification unit 150.
  • the collating unit 141 detects the coordinates of the feature point and sends out a notification signal. Do not do.
  • the notification unit 150 When the notification unit 150 receives the notification signal from the collating unit 141, the notification unit 150 informs the outside that a feature point that matches a feature point based on any of a plurality of types of marker patterns was among the feature points based on the detection target video. Notification is made (step 115).
  • step 116 it is determined whether or not to end (step 116), and if not ended, the processing of step 111 to step 116 is repeated.
  • the marker displayed on the detection target video can be reliably detected using the marker pattern generated by the marker generation device. .
  • the marker detection is performed in the feature space.
  • the marker detection is not limited to the feature space, and can be performed, for example, in the invariant feature space.
  • the singular feature layout diagram in which the singular feature is selected is stored in the marker generation stage, the feature point is extracted from the detection target video in the marker detection stage, and the feature point is mapped to the invariant feature space.
  • this invariant feature space is superimposed on the above-mentioned singular feature layout diagram and the invariant feature shown in the invariant feature space appears in the singular feature shown in the singular feature layout diagram, this invariant feature The feature can be detected as an invariant feature based on the marker.
  • the marker detection is performed using the object color invariant or the texture invariant in the marker detection.
  • object color invariants and texture invariants are extracted from the background video, unique features based on these are selected and stored, and in the marker detection stage, the object color invariants are detected from the detection target video.
  • texture invariants are extracted, and when these object color invariants and texture invariants coincide with singular features, these object color invariants and texture invariants can be detected as markers.
  • FIG. 78 is a block diagram showing the configuration of the marker generation detection device.
  • the marker generation detection device 200 includes a marker generation device 1 and a marker detection device 100.
  • the marker generation device 1 can use the marker generation device 1 (1a to 1d) in any of the first to fourth embodiments described above.
  • the marker detection apparatus 100 can use the marker detection apparatus 100 shown in FIG. 73 described above.
  • the marker generation detection device 200 can be configured such that the marker generation device 1 and the marker detection device 100 are integrated.
  • the marker generation device 1 and the marker detection device 100 have a function that can be shared, a configuration as shown in FIG. 79 can be adopted.
  • the marker generation detection device 200 includes a unique feature selection unit 10, a marker pattern generation unit 20, a video input unit 30, a feature extraction unit 40, a collation unit 140, and a notification unit 150.
  • the marker pattern generation unit 20 includes a marker generation unit 21 and a marker storage unit 22.
  • the unique feature selection means 10 the marker pattern generation means 20, the video input means 30, and the feature extraction means 40 have a function as a marker generation device.
  • the video input means 30, the feature extraction means 40, the marker storage unit 22, the collation means 140, and the notification means 150 have a function as a marker detection device.
  • the video input unit 30, the feature extraction unit 40, and the marker storage unit 22 are portions common to the marker generation device and the marker detection device.
  • the marker generation method in the marker generation device is the same as the marker generation method in the first to fourth embodiments described above.
  • the marker detection method in the marker detection device is the same as the marker detection method in the above-described embodiment.
  • the marker generation detection system 300 includes a marker generation device 1 and a marker detection device 100.
  • the marker generation device 1 and the marker detection device 100 can be connected by a communication network or a communication cable 400 or the like.
  • the marker generation device 1 includes a unique feature selection unit 10, a marker pattern generation unit 20, a video input unit 30, a feature extraction unit 40, and a communication unit 60.
  • the communication unit 60 takes out the data related to the marker stored in the marker storage unit 22 and transmits it to the marker detection device 100.
  • the marker detection apparatus 100 includes a video input unit 110, a feature extraction unit 120, a marker storage unit 130, a collation unit 140, a notification unit 150, and a communication unit 160.
  • the communication means 160 receives the marker-related data transmitted from the marker generation device 1. In addition, the communication unit 160 stores the received data regarding the marker in the marker storage unit 130.
  • a plurality of types of marker patterns can be generated in the marker generation function of the marker generation detection device or the marker generation detection system.
  • the type of the marker pattern is associated with the type of the object, it is possible to detect not only the object to be detected but also the type of the object at the marker detection stage.
  • the type of object can be selected by a highly robust marker. It can be detected.
  • Marker generation function (function for executing marker generation method) and marker detection function (marker detection method) of the computer (marker generation device, marker detection device, marker generation detection device, marker generation detection system) in each of the above embodiments
  • the function for execution is realized by a marker generation program or a marker detection program stored in a storage means (for example, a ROM (Read Only Memory) or a hard disk).
  • the marker generation program and the marker detection program are read by a computer control means (CPU (Central Processing Unit), etc.), so that commands are sent to each component of the computer, and predetermined processing, for example, video input processing of the marker generation device , Feature extraction processing, unique feature selection processing, multiple types of marker pattern generation processing, object-use unique feature group association processing, invariant feature conversion processing, invariant feature accumulation processing, invariant feature synthesis processing, video input control processing, marker detection device Video input processing, feature extraction processing, collation processing, notification processing, and the like.
  • CPU Central Processing Unit
  • the marker generation function or the marker detection function includes a marker generation program that is software and a computer (marker generation device, marker detection device, marker generation detection device, marker generation detection system) that is a hardware resource. Is realized through collaboration.
  • the marker generation program for realizing the marker generation function or the marker detection function is stored in a computer ROM, hard disk or the like, or in a computer-readable recording medium such as an external storage device and a portable recording medium. Can be stored.
  • External storage device refers to a memory expansion device that contains a storage medium such as a CD-ROM (Compact disk-Read only memory) and is externally connected to the marker generation device.
  • the portable recording medium is a recording medium that can be mounted on a recording medium driving device (drive device) and is portable, and refers to, for example, a flexible disk, a memory card, a magneto-optical disk, and the like.
  • the program recorded on the recording medium is loaded into a RAM (Random Access Memory) of the computer and executed by the CPU (control means). By this execution, the function of the marker generation device of each embodiment described above is realized.
  • a RAM Random Access Memory
  • the marker generation program held by another computer can be downloaded to its own RAM or external storage device using a communication line.
  • the downloaded marker generation program is also executed by the CPU, and realizes the marker generation function of the marker generation device of each of the above embodiments.
  • the marker generation device As described above, the marker generation device, the marker generation detection system, the marker generation detection device, the marker, the marker generation method, and the marker generation program according to the preferred embodiments of the present invention have been described.
  • the marker generation device, the marker generation detection system according to the present invention, The marker generation detection device, the marker, the marker generation method, and the marker generation program are not limited to the above-described embodiments, and it goes without saying that various modifications can be made within the scope of the present invention.
  • a plurality of types of markers are generated in one marker generation process.
  • the marker generation process is not limited to one time, and a plurality of groups can be executed. . Then, after the second time, it is possible not to generate the marker generated so far.
  • the marker generation device, marker generation detection system, marker generation detection device, marker, marker generation method, and marker generation program of the present invention are the marker generation device and marker generation detection system in the first to fourth embodiments, respectively.
  • the marker generation detection device, the marker, the marker generation method, and the marker generation program may be arbitrarily combined.
  • Singular feature selection means for extracting feature points from an image, representing the feature points in a predetermined space, and selecting a plurality of portions having a predetermined number or less of the feature points in the space as unique features;
  • a marker generation device comprising marker pattern generation means for generating a plurality of types of marker patterns using all or a part of the plurality of unique features.
  • the marker pattern generation means is configured to select the specific characteristics in the predetermined space when selecting a plurality of use specific characteristics from a plurality of specific characteristics selected by the specific characteristics selection means.
  • the distance data relating to the singular features constituting the use singular feature group is calculated based on the coordinates, and the use singular feature group used to generate the marker is selected based on the distance data. Marker generator.
  • generation means selects the said specific characteristic so that the sum total of the distance between each of the specific characteristic which comprises one said use specific characteristic group may become large. Marker generator.
  • generation means has the large sum total of the distance between each of the some peculiar feature which comprises one said use peculiar feature group, and the some peculiar feature which comprises another use peculiar feature group.
  • the marker generating device according to appendix 2, wherein a plurality of unique features constituting one of the use-specific feature groups and a plurality of unique features constituting another use-specific feature group are selected.
  • generation means One specific feature included in one use specific feature group and one specific feature included in another use specific feature group are overlapped, and one or two or more non-overlapping in the one use specific feature group
  • a process of calculating the sum of the distances between each of the unique features and one or more unique features that do not overlap in the other use-specific feature group is a process of calculating a plurality of unique features constituting the one use-specific feature group. Each time a plurality of singular features constituting each of the other use singular features are overlapped, and the smallest sum among a plurality of sums calculated by this execution is used as a shape approximation value.
  • the marker generating device selects from among a plurality of unique features selected by the unique feature selection means.
  • Additional remark 1 to additional remark 5 which has a marker setting means which matches two or more use specific feature groups of a plurality of use specific feature groups selected by the marker pattern generation means with any of a plurality of objects
  • generation apparatus in any one.
  • the said marker setting means selects the use specific characteristic group corresponding to the said several object so that the distance regarding the said use specific characteristic group calculated according to predetermined
  • the distance calculated by the predetermined distance calculation process is a Levenshtein distance
  • the marker setting means calculates a Levenshtein distance between each of the plurality of use specific feature groups and selects a use specific feature group corresponding to the plurality of objects so that the calculated Levenstein distance is increased.
  • the marker generator according to appendix 7.
  • the distance calculated by the predetermined distance calculation process is a Euclidean distance in a predetermined space
  • the marker setting means calculates a Euclidean distance between each of the plurality of use-specific feature groups, and selects a use-specific feature group corresponding to the plurality of objects so that the calculated Euclidean distance is increased.
  • the marker generation device 7.
  • the distance calculated by the predetermined distance calculation process is the sum of the distances between the specific features of the two used specific feature groups
  • the marker setting means calculates the sum of the distances between the singular features of the two used singular feature groups for the plurality of used singular feature groups, and supports the plurality of objects so that the calculated sum is increased.
  • the marker generation device according to appendix 7, which selects use-specific feature groups to be used.
  • the distance calculated by the predetermined distance calculation process is a shape approximation value between two use-specific feature groups
  • the marker setting means calculates a shape approximate value between two use specific feature groups for the plurality of use specific feature groups, and corresponds to the plurality of objects so that the calculated shape approximate value becomes large.
  • the marker generation device according to appendix 7, which selects a use-specific feature group.
  • the plurality of objects can be classified into two or more types, At least one of the two or more types can be further classified into lower level types,
  • the marker generator is First video input means for inputting an image; First arrangement means for extracting feature points from the image input by the first video input means, and expressing these extracted feature points in a predetermined space; Singular feature selection means for selecting a portion having a predetermined number or less of the feature points in the space as a singular feature; Marker generating means for generating a plurality of types of marker patterns using the unique features;
  • the marker detection device is Marker storage means for storing a plurality of types of marker patterns;
  • the marker generation detection system which has a collation means which judges whether there exists any arrangement of the feature point based on the said marker pattern in arrangement
  • One or two or more unique features used for generating one marker pattern are used specific feature groups, and a plurality of used specific feature groups for generating a plurality of types of the marker patterns are different from each other.
  • the marker pattern generation means is configured to select the specific characteristics in the predetermined space when selecting a plurality of use specific characteristics from a plurality of specific characteristics selected by the specific characteristics selection means.
  • the distance data relating to the singular features constituting the use singular feature group is calculated based on the coordinates, and the use singular feature group used for generating the marker is selected based on the distance data. Marker generation detection system.
  • First video input means for inputting an image
  • First arrangement means for extracting feature points from the image input by the first video input means, and expressing these extracted feature points in a predetermined space
  • Singular feature selection means for selecting a portion having a predetermined number or less of the feature points in the space as a singular feature
  • Marker generating means for generating a plurality of types of marker patterns using the unique features
  • Marker storage means for storing the marker pattern
  • a second video input means for inputting an image
  • a marker generation detection apparatus comprising: a collating unit that determines whether or not there is an arrangement of feature points corresponding to the marker pattern in the arrangement of feature points represented in the predetermined space.
  • One or two or more unique features used to generate one marker are used specific feature groups, and a plurality of used specific feature groups for generating a plurality of types of marker patterns are different from each other.
  • the marker pattern generation unit is configured to display the specific features in the predetermined space.
  • Generation detection device is configured to display the specific features in the predetermined space.
  • Feature points are extracted for each image, the extracted feature points are represented in a predetermined space, and a portion having a predetermined number or less of the feature points in the predetermined space is selected as a unique feature. Markers generated using multiple unique features.
  • One or two or more unique features used to generate one marker are used specific feature groups, and a plurality of used specific feature groups for generating a plurality of types of the marker patterns are different from each other.
  • the use is based on the coordinates of the specific features in the predetermined space.
  • One or two or more specific features used to generate one marker are used specific feature groups, and a plurality of used specific feature groups for generating a plurality of types of the marker patterns are different from each other.
  • the use is based on the coordinates of the specific features in the predetermined space. Calculating distance data relating to unique features constituting the unique feature group;
  • One or two or more unique features used to generate one marker are used specific feature groups, and a plurality of used specific feature groups for generating a plurality of types of marker patterns are different from each other.
  • the use is based on the coordinates of the specific features in the predetermined space.
  • the present invention relates to the generation of a marker, it is an apparatus or device that generates a marker, and further uses such as article management, physical security and other video monitoring, robot vision, mixed reality UI, and content generation application. Is available.

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Multimedia (AREA)
  • Image Analysis (AREA)

Abstract

 本発明は、画像から特徴点が抽出され、前記特徴点が所定の空間に表わされ、前記空間のうち前記特徴点が所定数以下の部分を特異特徴として複数選択する特異特徴選択手段と、前記複数の特異特徴のうちの全部又は一部を用いてマーカパターンを複数種類生成するマーカパターン生成手段とを有するマーカ生成装置である。

Description

マーカ生成装置、マーカ生成検出システム、マーカ生成検出装置、マーカ、マーカ生成方法及びプログラム
 本発明は、マーカを生成するマーカ生成装置、このマーカ生成装置を備えたマーカ生成検出システム、マーカ生成機能と検出機能を備えたマーカ生成検出装置、そのマーカ、そのマーカを生成するマーカ生成方法、及び、このマーカ生成を実行させるためのマーカ生成プログラムに関する。
 ある空間内に所望の物体が存在するか否かを判別する手法には、次のようなものがある。
 例えば、マーカ生成段階で、マーカが存在しない空間の画像を背景映像として映像入力手段により撮影し、その背景映像から特徴点を抽出し、この特徴点を不変量特徴空間に写像して不変特徴とし、この不変特徴が表れなかった部分を特異特徴とし、この特異特徴にもとづいてマーカパターンを生成し、マーカ検出段階で、マーカが付された物体を含む空間の画像を検出対象映像として撮影し、この検出対象映像から特徴点を抽出し、この特徴点の配置の中にマーカパターンから抽出された特徴点の配置と一致するものがあるか否かを判断し、一致するものがあるときは、これをマーカとして検出する技術がある(例えば、特許文献1参照。)。
 この技術によれば、マーカ生成段階において、背景映像に表れていないパターンをマーカパターンとして生成することができる。このため、マーカ検出段階においては、検出対象映像のうちマーカが存在しないところからマーカが誤って検出されることがなくなり、物体に付されたマーカを確実に検出することができる。
国際公開第2008/090908号パンフレット
 しかしながら、上述した特許文献1に記載の技術(以下、「文献技術」と称する)においては、次のような状況があった。
 この文献技術において生成されるマーカパターンは、一種類のみであった。
 このため、検出対象である物体が複数の種類で分けられる場合でも、その種類に関係なく、どの物体にも同じマーカが付されていた。よって、物体は検出できても、その種類まで検出することができなかった。
 本発明は、上記課題に鑑みて発明されたものであり、複数種類のマーカパターンを生成するとともに、物体を種類ごとに検出可能とするマーカ生成装置、マーカ生成検出システム、マーカ生成検出装置、マーカ、マーカ生成方法及びマーカ生成プログラムの提供を目的とする。
 本発明は、画像から特徴点が抽出され、前記特徴点が所定の空間に表わされ、前記空間のうち前記特徴点が所定数以下の部分を特異特徴として複数選択する特異特徴選択手段と、前記複数の特異特徴のうちの全部又は一部を用いてマーカパターンを複数種類生成するマーカパターン生成手段とを有するマーカ生成装置である。
 本発明は、マーカ生成装置とマーカ検出装置とを備え、前記マーカ生成装置は、画像を入力する第一映像入力手段と、この第一映像入力手段で入力された前記画像から特徴点を抽出し、これらの抽出した特徴点を所定の空間に表す第一配置手段と、前記空間における前記特徴点が所定数以下の部分を特異特徴として選択する特異特徴選択手段と、前記特異特徴を用いてマーカパターンを複数種類生成するマーカ生成手段とを有し、前記マーカ検出装置は、複数種類の前記マーカパターンを記憶するマーカ記憶手段と、画像を入力する第二映像入力手段と、この第二映像入力手段で入力された前記画像にもとづいて特徴点を抽出し、この抽出した特徴点を所定の空間に表す第二配置手段と、前記所定の空間に表された特徴点群の配置の中に、前記マーカパターンにもとづく特徴点の配置があるか否かを判断する照合手段とを有するマーカ生成検出システムである。
 本発明は、画像を入力する第一映像入力手段と、この第一映像入力手段で入力された前記画像から特徴点を抽出し、これらの抽出した特徴点を所定の空間に表す第一配置手段と、前記空間における前記特徴点が所定数以下の部分を特異特徴として選択する特異特徴選択手段と、前記特異特徴を用いてマーカパターンを複数種類生成するマーカ生成手段と、前記マーカパターンを記憶するマーカ記憶手段と、画像を入力する第二映像入力手段と、この第二映像入力手段で入力された前記画像にもとづいて特徴点を抽出し、この抽出した特徴点を所定の空間に表す第二配置手段と、前記所定の空間に表された特徴点群の配置の中に、前記マーカパターンに対応する特徴点の配置があるか否かを判断する照合手段とを有するマーカ生成検出装置である。
 本発明は、画像ごとに特徴点を抽出し、これらの抽出した特徴点を所定の空間に表し、この所定の空間において前記特徴点が所定数以下の部分を特異特徴として選択し、この選択された特異特徴を用いて複数種類生成されたマーカである。
 本発明は、画像を入力する工程と、前記画像から特徴点を抽出する工程と、前記特徴点を所定の空間に表す工程と、前記空間のうち前記特徴点が所定数以下の部分を特異特徴として複数選択する工程と、前記複数の特異特徴のうちの全部又は一部を用いてマーカパターンを複数種類生成する工程とを有するマーカ生成方法である。
 本発明は、画像を入力する処理と、前記画像から特徴点を抽出する処理と、前記特徴点を所定の空間に表す処理と、前記空間のうち前記特徴点が所定数以下の部分を特異特徴として複数選択する処理と、前記複数の特異特徴のうちの全部又は一部を用いてマーカパターンを複数種類生成する処理とを情報処理装置に実行させるマーカ生成プログラムである。
 本発明のマーカ生成装置、マーカ生成検出システム、マーカ生成検出装置、マーカ、マーカ生成方法及びマーカ生成プログラムによれば、特異特徴群からマーカを設計する際に、選択する特異特徴の組み合わせを変えることで、複数種類のマーカパターンを生成することができる。そして、マーカパターンの種類と物体の種類とを対応付け、それら物体の種類ごとに対応する種類のマーカを付すことにより、物体の検出だけでなく、物体の種類を検出することもできる。
図1は本発明の第一実施形態におけるマーカ生成装置の構成を示すブロック図である。 図2は本発明の第一実施形態におけるマーカ生成装置の詳細な構成を示すブロック図である。 図3は特徴点検出テーブルの構成を示す図表である。 図4は特異特徴テーブルの構成を示す図表である。 図5は特異特徴配置図の構成を示す図である。 図6は特異特徴の配置を示す図である。 図7は使用特異特徴組合せテーブルの構成を示す図表である。 図8はマーカパターンの生成例を示す図である。 図9はマーカパターンの他の生成例を示す図である。 図10は特徴点間の距離を示す図である。 図11は特異特徴間距離算出テーブルの構成を示す図表である。 図12は三つの特異特徴で構成された使用特異特徴群を二つ選択する場合の組み合わせを示す図である。 図13は二つの使用特異特徴群における各特異特徴間の距離を示す図である。 図14は二つの使用特異特徴群の各特異特徴間の距離の総和を示す図である。 図15は選択した二つの使用特異特徴群を示す図である。 図16は一の使用特異特徴群における特異特徴の一つと他の使用特異特徴群における特異特徴の一つとを重ね合わせたときの各使用特異特徴群の位置を示す図である。 図17は一の使用特異特徴群における特異特徴の一つと他の使用特異特徴群における特異特徴の一つとを重ね合わせたときの重なっていない特異特徴間の距離を示す図である。 図18は一の使用特異特徴群における特異特徴の一つと他の使用特異特徴群における特異特徴の一つとを重ね合わせたときの重なっていない特異特徴間の距離の総和を示す図表である。 図19は一の使用特異特徴群における特異特徴の一つと他の使用特異特徴群における特異特徴の一つとを順次重ね合わせていったときの重なっていない特異特徴間の距離の総和の一覧を示す図表である。 図20は形状近似値を示す図である。 図21は本発明の第一実施形態におけるマーカ生成装置の動作手順(マーカ生成方法)を示すフローチャートである。 図22は使用特異特徴の選択処理(i)の動作手順を示すフローチャートである。 図23は使用特異特徴の選択処理(ii)の動作手順を示すフローチャートである。 図24は使用特異特徴の選択処理(iii)の動作手順を示すフローチャートである。 図25は使用特異特徴の選択処理(iv)の動作手順を示すフローチャートである。 図26は本発明の第二実施形態におけるマーカ生成装置の構成を示すブロック図である。 図27は使用特異特徴群の物体への割り振りを示す図である。 図28は二つの使用特異特徴群の間のレーベンシュタイン距離を示す図である。 図29はレーベンシュタイン距離にもとづいて複数の使用特異特徴群を並べた状態を示す図であって、(i)は、番号「2」である使用特異特徴群(t1,t2,t4)を基準とした場合、(ii)は、番号「8」である使用特異特徴群(t2,t3,t5)を基準とした場合を示す。 図30は基準となる使用特異特徴群(t1,t2,t3)と他の使用特異特徴群との所定空間上の距離を示す図表である。 図31は基準となる使用特異特徴群(t1,t2,t3)と他の使用特異特徴群との所定空間上の距離にもとづいて、各使用特異特徴群を昇順で並べた状態を示す図表である。 図32は基準となる使用特異特徴群(t1,t2,t4)と他の使用特異特徴群との所定空間上の距離を示す図表である。 図33は基準となる使用特異特徴群(t1,t2,t4)と他の使用特異特徴群との所定空間上の距離にもとづいて、各使用特異特徴群を昇順で並べた状態を示す図表である。 図34は基準となる使用特異特徴群(t2,t3,t5)と他の使用特異特徴群との所定空間上の距離を示す図表である。 図35は基準となる使用特異特徴群(t2,t3,t5)と他の使用特異特徴群との所定空間上の距離にもとづいて、各使用特異特徴群を昇順で並べた状態を示す図表である。 図36は基準となる使用特異特徴群(t1,t2,t3)と他の使用特異特徴群との形状近似値を示す図表である。 図37は基準となる使用特異特徴群(t1,t2,t3)と他の使用特異特徴群との形状近似値にもとづいて、各使用特異特徴群を形状近似値の小さい順で並べた状態を示す図表である。 図38は基準となる使用特異特徴群(t1,t2,t4)と他の使用特異特徴群との形状近似値を示す図表である。 図39は基準となる使用特異特徴群(t1,t2,t4)と他の使用特異特徴群との形状近似値にもとづいて、各使用特異特徴群を形状近似値の小さい順で並べた状態を示す図表である。 図40は基準となる使用特異特徴群(t2,t3,t5)と他の使用特異特徴群との形状近似値を示す図表である。 図41は基準となる使用特異特徴群(t2,t3,t5)と他の使用特異特徴群との形状近似値にもとづいて、各使用特異特徴群を形状近似値の小さい順で並べた状態を示す図表である。 図42は図20に示した形状近似値のうち値の大きいものをグレーの網掛けで示した図である。 図43は基準となる使用特異特徴群(t1,t3,t4)と他の使用特異特徴群との形状近似値にもとづいて、各使用特異特徴群を形状近似値の小さい順で並べた状態を示す図表である。 図44は物体ごとに異なるマーカが付された様子を示す図である。 図45は物体-マーカ対応テーブルの構成を示す図表である。 図46は本発明の第二実施形態におけるマーカ生成装置の動作手順(マーカ生成方法)を示すフローチャートである。 図47は物体へのマーカの割り当て処理の手順を示すフローチャートである。 図48は本発明の第三実施形態におけるマーカ生成装置の構成を示すブロック図である。 図49は本発明の第三実施形態におけるマーカ生成装置の詳細な構成を示すブロック図である。 図50は背景映像の例を示す図である。 図51は図50に示す背景映像から抽出された特徴点が配置された特徴空間を示す図である。 図52は特徴空間に配置された特徴点に番号が付された様子を示す図である。 図53は特徴点情報テーブルの構成を示す図表である。 図54は区画線が付された特徴空間を示す図である。 図55は各区画ごとの名称を示す図である。 図56は区画座標テーブルの構成を示す図表である。 図57は特徴点数分布図の構成を示す図である。 図58は区画座標を含む特徴点情報テーブルの構成を示す図表である。 図59は特異特徴配置図の構成を示す図である。 図60は特異特徴配置図の他の構成を示す図である。 図61は本発明の第三実施形態におけるマーカ生成装置の動作手順(マーカ生成方法)を示すフローチャートである。 図62は本発明の第四実施形態におけるマーカ生成装置の構成を示すブロック図である。 図63は特徴点5番を基底として、各特徴点を不変量特徴空間に写像する様子を示す図である。 図64は特徴点15番を基底として、各特徴点を不変量特徴空間に写像する様子を示す図である。 図65は特徴点89番を基底として、各特徴点を不変量特徴空間に写像する様子を示す図である。 図66は特徴点91番を基底として、各特徴点を不変量特徴空間に写像する様子を示す図である。 図67は図5に示す特徴点のすべてを不変量特徴空間に写像した様子を示す図である。 図68は不変量特徴空間に区画線を付したところを示す図である。 図69は1以上の特徴点が配置された区画にグレーの網掛けが付された不変量特徴空間を示す図である。 図70は不変量特徴空間におけるマーカパターン生成範囲を示す図である。 図71は図69における不変量特徴空間のうちマーカパターン生成範囲を取り出した様子を示す図である。 図72は本発明の第四実施形態におけるマーカ生成装置の動作手順(マーカ生成方法)を示すフローチャートである。 図73はマーカ検出装置の構成を示すブロック図である。 図74はマーカ検出装置の詳細な構成を示すブロック図である。 図75は検出対象映像の例を示す図である。 図76は検出対象映像から抽出された特徴点の例を示す図である。 図77はマーカ検出方法の手順を示すフローチャートである。 図78はマーカ生成検出装置の構成を示すブロック図である。 図79はマーカ生成検出装置の詳細な構成を示すブロック図である。 図80はマーカ生成検出システムの構成を示すブロック図である。
 以下、本発明に係るマーカ生成装置、マーカ生成検出システム、マーカ生成検出装置、マーカ、マーカ生成方法及びマーカ生成プログラムの好ましい実施形態について、図面を参照して説明する。
[マーカ生成装置及びマーカ生成方法の第一実施形態]
 まず、本発明のマーカ生成装置及びマーカ生成方法の第一実施形態について、図1を参照して説明する。同図は、本実施形態のマーカ生成装置の構成を示すブロック図である。
(マーカ生成装置)
 図1に示すように、マーカ生成装置1aは、特異特徴選択手段10と、マーカパターン生成手段20aとを備えている。
 ここで、特異特徴選択手段10は、図2に示すように、特異特徴記憶部11と、特異特徴選択部12とを有している。
 特異特徴記憶部11は、「特徴点検出テーブル」と「特異特徴テーブル」とを記憶する。
 「特徴点検出テーブル」は、特徴空間における各区画の座標と、各区画に配置された特徴点の数を示すテーブルである。この「特徴点検出テーブル」は、図3に示すように、「区画番号」(ア)と、「区画のx座標」(イ)と、「区画のy座標」(ウ)と、「特徴点数」(エ)とを項目として構成することができる。
 「区画番号」は、特徴空間を複数の区画に区切ったときに、各区画ごとに付されたシリアル番号である。
 「区画のx座標」は、その区画が位置するx座標である。
 「区画のy座標」は、その区画が位置するy座標である。
 「特徴点数」は、その区画に位置する特徴点の数である。
 なお、特徴空間が三次元で表わされるときは、「特徴点検出テーブル」には、さらに「区画のz座標」を項目として設けることができる。
 「特異特徴テーブル」は、特異特徴に関する情報で構成されたテーブルである。この「特異特徴テーブル」は、図4に示すように、「特異特徴番号」(ア)と、「区画番号」(イ)と、「区画のx座標」(ウ)と、「区画のy座標」(エ)と、「特徴点数」(オ)とを項目として構成することができる。
 「特異特徴番号」は、各特異特徴ごとに付されたシリアル番号である。
 「区画番号」は、特異特徴として選択された区画の区画番号である。
 「区画のx座標」は、その特異特徴として選択された区画の位置するx座標である。
 「区画のy座標」は、その特異特徴として選択された区画の位置するy座標である。
 「特徴点数」は、その特異特徴に位置する特徴点の数である。
 なお、「特異特徴テーブル」の「区画番号」、「区画のx座標」、「区画のy座標」、「特徴点数」は、「特徴点検出テーブル」の「区画番号」、「区画のx座標」、「区画のy座標」、「特徴点数」に対応している。また、特徴空間が三次元で表わされるときは、「特異特徴テーブル」には、さらに「区画のz座標」を項目として設けることができる。
 特異特徴選択部12は、外部から「特徴点検出テーブル」を入力すると、これを特異特徴記憶部11に記憶させる。
 また、特異特徴選択部12は、特徴空間において特徴点の数が所定数以下の区画を特異特徴として選択する。すなわち、特異特徴選択部12は、所定のタイミングで、特異特徴記憶部11から「特徴点検出テーブル」を取り出す。そして、特異特徴選択部12は、この取り出した「特徴点検出テーブル」の「特徴点数」を参照し、この「特徴点数」に示された特徴点数のうち、所定数以下である特徴点数を抽出し、この抽出した特徴点数に関連付けられた区画番号の区画を特異特徴として選択する。
 具体的には、例えば、所定数を「1」とした場合、図3に示す「特徴点検出テーブル」においては、区画番号k51、k85、k96が特異特徴として選択される。なお、所定数は、本実施形態においては、所定数を「1」としたが、「1」に限るものではなく、「0」や「2」以上であってもよい。
 続いて、特異特徴選択部12は、選択した特異特徴に関連するデータを「特徴点検出テーブル」から抽出し、「特異特徴テーブル」としてまとめる。このとき、各特異特徴にシリアル番号(特異特徴番号)を付して、「特異特徴テーブル」に追加する。そして、特異特徴選択部12は、その「特異特徴テーブル」を特異特徴記憶部11に記憶させる。
 このように、特異特徴選択部12は、特徴空間において特徴点が所定数以下(0を含む)の区画を特異特徴として選択する。つまり、特異特徴選択部12は、第三実施形態でも説明するように、背景映像から抽出した特徴点が所定数以下の特徴空間の部位を特異特徴として選択する。これにより、特異特徴選択部12は、背景パターンと一致しない特徴を抽出でき、マーカパターン生成手段20aは、その特異特徴を用いて、背景パターンと一致しないマーカパターンを生成することができる。
 ただし、事後に、意に反して特徴点の抽出誤差などにより、特異特徴が背景パターンと類似してしまうことを避けるために、特徴空間内で背景パターンの特徴が存在しないより大きな領域から特異特徴を選択するようにしてもよい。
 この特異特徴の選択処理は、特徴空間中の特徴点の分布から大きな空白を見つける問題と同一視できるから、例えば、2003年文書解析認識国際会議予稿集に掲載されている「An algorithm for Finding Maximal Whitespace Rectangles at Arbitrary Orientations for Document Layout Analysis」などのアルゴリズムを使用して、大きな空白領域を抽出しても良いし、得られた特徴点を含まない矩形領域の中心を特異特徴としても良い。
 その他の方法としては、特徴空間を特定の大きさのメッシュで量子化し、1次元もしくは多次元のヒストグラムを生成し、特徴点の発生頻度が0又は所定数以下となるメッシュの中心を特異特徴とするなどしても良い。頻度が0又は所定数以下となるメッシュが存在しない場合、メッシュの大きさを小さくして、ヒストグラムをとり、頻度が0又は所定数以下となるメッシュが現れた場合、このときのメッシュから特異特徴を選択するようにしても良い。頻度が0又は所定数以下となるメッシュが見つからない場合は、ヒストグラムを既定値で閾値処理し、既定値以下のメッシュから特異特徴を選択しても良い。
 特異特徴選択部12が選択した特異特徴の例を、図5、図6に示す。図5に示す特徴空間(特異特徴配置図)においては、特異特徴とされた区画を白色で表し、特異特徴とされなかった区画をグレーの網掛けで表している。図6は、図5に示す特異特徴配置図にもとづき、特異特徴のそれぞれを黒丸「●」で表した図である。なお、特異特徴は、特徴点が所定数以下の区画で構成することもでき、また、これら区画とともに、特徴空間(特異特徴配置図)の中心点を加えて特異特徴とすることもできる。
 マーカパターン生成手段20aは、図2に示すように、マーカパターン生成部21と、マーカ記憶部22とを有している。
 マーカパターン生成部21は、特異特徴記憶部11から「特異特徴テーブル」を取り出す。そして、マーカパターン生成部21は、その「特異特徴テーブル」に示された特異特徴を用いてマーカパターンを生成する。
 ここで、マーカパターン生成部21は、複数の特異特徴の中から一又は二以上の特異特徴を選択し、これを使用特異特徴とする。そして、マーカパターン生成部21は、この使用特異特徴を用いてマーカパターンを生成する。
 使用特異特徴は、一又は二以上の特異特徴の組み合わせによって構成される。この特異特徴の組み合わせの数は、特異特徴の数に応じて決まる。つまり、特異特徴の数が複数個(tn個)の場合、特異特徴の組み合わせは、{(2tn)-1}通りとなる。具体的には、例えば、特異特徴が、図6に示すように、五個(t1~t5)の場合、特異特徴の組み合わせは、図7に示すように、31通りとなる。すなわち、特異特徴が五つあるときは、最大で31種類マーカパターンを生成できることになる。
 なお、ここでいう「組み合わせ」は、1からtnまでの間のすべての数を対象とした組み合わせをいう。このため、例えば、nCmで表される「重複を持たない組み合わせ」や、nHrで表される「重複組み合わせ」のように、n個の数字の中から取り出される数字の数がmやrのように一つに限定されるものではない。ただし、ここでいう「組み合わせ」は、1~tnのうちの一つの数を対象とした組み合わせとすることもできる。
 マーカパターン生成部21は、このように、複数通りある特異特徴の組み合わせの中から、一又は二以上の組み合わせを選択する。この選択は、ランダムに行なうこともできるが、ある規則性をもって行なうこともできる。この特異特徴の組み合わせの選択方法については、後記の「使用特異特徴の選択方法」で詳述する。
 続いて、マーカパターン生成部21は、使用特異特徴を用いてマーカパターンを生成する。
 マーカパターンの生成方法には、種々の方法がある。例えば、画像中の頂点、交差点、端点を特徴点として使用する場合を例に説明する。
 前述した「On the option detection of curves in noisy pictures」に記載の方法などにもとづく場合、マーカパターンの生成に必要になる、特徴点群の検出は、特徴抽出手段40で使用している特徴点検出アルゴリズムに依存する。
 例えば、下記のようなマーカパターンの生成方法が例として挙げられる。
 (1)特異特徴位置に交差点(十字マーク)を配置したパターン(図8(i))
 (2)特異特徴の凸包を求め、内部を特定の色で塗り潰す。さらに、凸包に使用されなかった特異特徴を用いて再度凸包を求め、内部を別の色で塗り潰す。このような処理を、すべての特徴が使用されるまで反復して生成されるパターン(図8(ii))
 (3)特異特徴位置を頂点にもつ、水平垂直の辺を有する、塗り潰した矩形の集合からなるパターン(図8(iii))
 (4)特異特徴点の最近傍点間を線分で結んだパターン(図8(iv))
 なお、図8(i)~(iv)に示したパターンは、図6に示す五つの特異特徴のすべてを使用特異特徴として選択した場合である。
 これに対し、図6に示す五つの特異特徴のうち四つの特異特徴を使用特異特徴として選択した場合は、図9(i)~(iv)に示すようなパターンを生成できる。
 また、特徴抽出手段(後述)が明度値又は色差値を使用して特徴を抽出した場合、マーカを物体に付する装置は、特異特徴に対応する明度値、色差値に対応する塗料でマーカを印刷してもよい。
 また、頂点、交差点、端点を図形的な特徴として利用する方法と、明度値や色差値を特徴として利用する方法とを併用することも可能である。この場合、マーカパターン生成部21は、選定された特異特徴に対応する明度、色、形状に対応するマーカを生成すればよい。
 マーカ記憶部22は、マーカパターン生成部21で生成されたマーカに関するデータを記憶する。
 例えば、マーカパターンが図8(i)に示すような場合は、特異特徴の座標が記憶される。また、図8(ii)に示すような場合は、特異特徴の座標の他に、凸包を構成する座標が記憶される。
(使用特異特徴の選択方法)
 次に、マーカパターン生成部21で実行される使用特異特徴の選択方法について、説明する。
 マーカパターン生成部21は、「特異特徴テーブル」に示された特異特徴を用いてマーカパターンを生成する。
 ここで、マーカパターン生成部21は、複数の特異特徴の中から、マーカパターンの生成に用いる特異特徴を一又は二以上選択し、これを使用特異特徴とする。
 使用特異特徴を選択する手法には、次の四つがある。
 (1)特異特徴の数が多くなるように、使用特異特徴を選択する
 (2)各特異特徴間の距離の総和が大きくなるように、使用特異特徴を選択する
 (3)二つの使用特異特徴群における各特異特徴間の距離の総和が大きくなるように、使用特異特徴を選択する
 (4)二つのマーカについてそれらの形状の相違の程度が大きくなるように、使用特異特徴を選択する
 以下、(1)~(4)の順に説明する。
 (1)特異特徴の数が多くなるように、使用特異特徴を選択する
 特異特徴選択手段10で特異特徴が複数選択された場合、マーカパターン生成部21は、それら複数の特異特徴の中から一又は二以上の特異特徴を使用特異特徴として選択することができる。
 例えば、図6に示すように、特異特徴が五つある場合、選択可能な特異特徴の組み合わせは、図7に示すように、31通りとなる。このとき、使用特異特徴として選択される特異特徴の数は、一つ、二つ、三つ、四つ、五つのうちのどれかである。
 ここで、マーカの頑健性に着目すると、使用特異特徴として選択される特異特徴の数は、多い方がよい。
 マーカの頑健性とは、環境に左右されないマーカ検出の確実さをいう。
 例えば、マーカ検出時において、そのマーカの一部が何らかの理由で遮られた場合を想定する。ここで、マーカ全体から抽出される特徴点が3個のとき、うち2個が遮られると、このマーカの検出は、残り1個で判断することになる。一方、マーカ全体の特徴点が10個のとき、うち2個が遮られても、他の8個で判断できる。つまり、特徴点の数が異なるマーカが同様の環境下に置かれた場合、特徴点が多い方が、判断要素が多くなるので、マーカを確実に検出できる。このことから、特徴点の数が多いマーカは、少ないマーカに比べて頑健性が高いと言える。
 そこで、頑健性の高いマーカを生成するためには、マーカパターン生成部21に、使用特異特徴として特異特徴の数を多く選択させることがよい。
 例えば、マーカパターンを一つだけ生成する場合は、特異特徴のすべて(図6においては、特異特徴t1,t2,t3,t4,t5のすべて)を使用特異特徴として選択する。
 また、マーカパターンを二つ生成する場合は、五つの特異特徴のすべてを第一の使用特異特徴として選択し、四つの特異特徴の組み合わせ(例えば、t1,t2,t3,t4)を第二の使用特異特徴として選択することができる。
 さらに、マーカパターンを三つ生成する場合は、五つの特異特徴のすべてを第一の使用特異特徴として選択し、四つの特異特徴の組み合わせ(例えば、t1,t2,t3,t4)を第二の使用特異特徴として選択し、この第二の使用特異特徴として選択された四つの特異特徴の組み合わせ以外の四つの特異特徴の組み合わせ(例えば、t2,t3,t4,t5)を第三の使用特異特徴として選択することができる。
 ここで、五つの特異特徴(t1,t2,t3,t4,t5)のすべてを選択した使用特異特徴群を全指定特異特徴群と称する場合、マーカパターン生成部21は、生成する二以上のマーカパターンのうちの一つのマーカパターンの使用特異特徴群を全指定特異特徴群とすることができる。また、マーカパターン生成部21は、全指定特異特徴群を用いずに(四つ、三つ又は二つの特異特徴で構成される使用特異特徴群のみによって)、二以上のマーカパターンの使用特異特徴のすべてを選択することもできる。
 これは、全指定特異特徴群と、これ以外の使用特異特徴群とを比べたときに、これら二つのマーカの形状が非常に近似しているために混同を生じやすいときは、この混同を回避する必要があるからである。例えば、いずれの使用特異特徴群も四つの特異特徴で構成した方が混同が避けられるときは、全指定特異特徴群を選択しないようにすることが望ましい。
 なお、四つの特異特徴で構成された使用特異特徴群を用いる場合と、三つの特異特徴で構成された使用特異特徴群を用いる場合とを比較したときに、混同の程度がそれほど変わらないときは、頑健性を優先して、四つの特異特徴で構成された使用特異特徴群を用いることができる。
 (2)各特異特徴間の距離の総和が大きくなるように、使用特異特徴を選択する
 一つのマーカパターンから抽出される二つの特徴点間の距離が近い場合と遠い場合とでは、遠い方が頑健性が高いといえる。
 これは、マーカが付された物体が映像入力手段(後述)から離れた位置に配置されている場合において、マーカから抽出される特徴点群のうちの二つの特徴点(t1、t2)の間の距離が非常に近いときは、これら二つの特徴点(t1、t2)の区別がつかなくなることがあり、これにより、それら二つの特徴点が一つの特徴点として処理されるか、あるいは、それら二つの特徴点が特徴空間で同じ区画内に現れてしまい検出される特異特徴の数が減少してマーカとして検出されなくなることが想定され、頑健性が低くなるためである。これに対し、一つのマーカパターンから抽出される二つの特徴点の間の距離が遠いときは、これら二つの特徴点を十分に区別できるため頑健性が高くなる。
 そこで、マーカの頑健性を高めるためには、各特異特徴間の距離の総和が大きくなるように使用特異特徴を選択することがよい。
 ここで、特異特徴は、図6に示すように、五つ(t1,t2,t3,t4,t5)が選択されたとする。また、特異特徴の各間の距離は、図10に示すように、「t1-2」,「t1-3」,「t1-4」,「t1-5」,「t2-3」,「t2-4」,「t2-5」,「t3-4」,「t3-5」,「t4-5」として表すものとする。これらのうち、例えば、「t1-2」は、特異特徴t1と特異特徴t2との間の距離を表す。
 特異特徴の組み合わせは、図7に示すように31通りである。このため、各組み合わせにおける特異特徴間の距離の総和は、次のように算出することができる。
 例えば、五つの特異特徴で使用特異特徴を構成する場合、特異特徴間の距離の総和Σt12345は、次式で算出することができる。
Σt12345=(t1-2)+(t1-3)+(t1-4)+(t1-5)+(t2-3)+(t2-4)+(t2-5)+(t3-4)+(t3-5)+(t4-5)    ・・・(式1)
 次いで、各特異特徴の座標は、次の値であるとする。
  t1の座標:(6,9)
  t2の座標:(0,7)
  t3の座標:(1,3)
  t4の座標:(5,0)
  t5の座標:(11,7)
 続いて、各特異特徴間の距離を算出する。各特異特徴間の距離は、次のようにして算出することができる。
 例えば、特異特徴の距離は、所定の空間におけるn次元ユークリッド距離で表すことができる。具体的には、例えば、特異特徴が二つある場合に、第一の特異特徴の座標が(x1,y1)であり、第二の特異特徴の座標が(x2,y2)であるときは、それらのユークリッド距離L1は、次式で算出できる。
 L1={(x2-x1)2+(y2-y1)2}1/2          ・・・(式2)
 この式2と、各特異特徴の座標とを用いて各特異特徴間の距離を算出すると、次のような値が得られる。
  (t1-2)=6.3246               ・・・(式3)
  (t1-3)=7.8102               ・・・(式4)
  (t1-4)=9.0554               ・・・(式5)
  (t1-5)=5.3852               ・・・(式6)
  (t2-3)=4.1231               ・・・(式7)
  (t2-4)=8.6023               ・・・(式8)
  (t2-5)=11.0000               ・・・(式9)
  (t3-4)=5.0000               ・・・(式10)
  (t3-5)=10.7703              ・・・(式11)
  (t4-5)=9.2195              ・・・(式12)
 これら各特異特徴間の距離を式1に代入すると、特異特徴間の距離の総和Σt12345は、次の値となる。
 Σt12345=77.2906              ・・・(式13)
 同様に、例えば、四つの特異特徴(t1,t2,t3,t4)で使用特異特徴を構成する場合、特異特徴間の距離の総和Σt1234は、次式で算出することができる。
 Σt1234=(t1-2)+(t1-3)+(t1-4)+(t2-3)+(t2-4)+(t3-4) ・・・(式14)
 この式14に、式3、式4、式5、式7、式8、式10で表した特異特徴間の距離を代入すると、特異特徴間の距離の総和Σt1234は、次の値となる。
 Σt1234=40.9156               ・・・(式15)
 このような順序で、図7に示す使用特異特徴の組み合わせごとに、特異特徴間の距離の総和を算出することができる。この算出された、特異特徴間の距離の総和を図11に示す。同図の左欄は、使用特異特徴の組み合わせ、中欄は、特異特徴間の距離の総和を算出するための計算式、右欄は、算出された特異特徴間の距離の総和である。なお、使用特異特徴が一つの場合は、特異特徴間の距離が存在しないため、総和は0となる。
 特異特徴間の距離の総和の算出が終わると、これら総和のうち値の大きいものから順番に使用特異特徴を選択する。
 図11において、特異特徴間の距離の総和が最も大きいのは、五つの特異特徴で構成された使用特異特徴(t1,t2,t3,t4,t5)である。次に、特異特徴間の距離の総和が大きいのは、四つの特異特徴で構成された使用特異特徴(t1,t2,t4,t5)である。その次に、特異特徴間の距離の総和が大きいのは、四つの特異特徴で構成された使用特異特徴(t2,t3,t4,t5)である。
 そして、使用特異特徴を二つ選択する場合は、使用特異特徴(t1,t2,t3,t4,t5)と(t1,t2,t4,t5)が選択される。また、使用特異特徴を三つ選択する場合は、使用特異特徴(t1,t2,t3,t4,t5)と(t1,t2,t4,t5)と(t2,t3,t4,t5)が選択される。
 このように、特異特徴間の距離の総和が大きくなるように使用特異特徴とすることで、そのマーカの頑健性を高めることができる。
 なお、特異特徴間の距離の総和は、特異特徴の数が多くなれば、必然的に大きくなる。このため、この手法では、特異特徴の数が最も多い使用特異特徴群が最終的に選択される。ただし、前もって「特異特徴の数は、四つとする」などの条件を設けておくことで、特異特徴の数が最も多い使用特異特徴群が選択されないようにすることもできる。
 (3)二つの使用特異特徴群における各特異特徴間の距離の総和が大きくなるように、使用特異特徴を選択する
 複数の特異特徴から二つの使用特異特徴群を選択する場合、これら二つの使用特異特徴群が特徴空間で互いに近い位置にあると、これらマーカパターンの間で誤認混同が生じやすい。
 これは、二つの使用特異特徴群が(t1,t2,t3)と(t1,t2,t4)である場合において、マーカ検出時に検出対象映像から抽出された特徴点又は不変特徴が(t1,t2,t3)であると、t3のみによって、いずれのマーカを検出したかを判断しなければならない。
 これに対し、二つの使用特異特徴群が(t1,t2,t3)と(t4,t5,t6)である場合において、マーカ検出時に検出対象映像から抽出された特徴点又は不変特徴が(t1,t2,t3)であると、これらt1,t2,t3のすべてによって、いずれのマーカを検出したかを判断できる。つまり、それら二つの使用特異特徴群が互いに遠い位置にあると、頑健性が高くなり、誤認混同が生じにくくなる。
 そこで、二つのマーカの形状がどの程度異なっているかを数値化する手法として、一方の使用特異特徴群の各特異特徴と他方の使用特徴特徴群の各特異特徴との各間の距離の総和を算出するものがある。
 説明をわかりやすくするために、三つの特異特徴で一の使用特異特徴群を構成する場合について説明する。
 特異特徴選択手段10aで選択された特異特徴が図6に示すように五つあり、一の使用特異特徴群を三つの特異特徴で構成する場合の組み合わせは、図7に示すように、十通りある。また、十通りの使用特異特徴群の中から二つの使用特異特徴群を選択するときに、選択される二つの使用特異特徴群の組み合わせは、図12に示すように、45通りある。
 これら45通りの組み合わせのそれぞれについて、一方の使用特異特徴群の各特異特徴と他方の使用特徴特徴群の各特異特徴との各間の距離の総和を算出する。
 例えば、図6に示すように、特異特徴が五つある場合において、図13に示すように、二つの使用特異特徴群α(t1,t2,t3)とβ(t3,t4,t5)が選択されたものとする。
 ここで、それら使用特異特徴群αとβは、いずれも三つの特異特徴で構成されている。また、使用特異特徴群αのt3と使用特異特徴群βのt3は、同じ特異特徴t3であって互いに共有している。
 それら使用特異特徴群αとβについて、各特異特徴間の距離の総和を算出する。
 例えば、使用特異特徴群αの特異特徴t1と、使用特異特徴群βの各特異特徴(t3、t4、t5)との距離の和Dt1は、次式で算出できる。
 Dt1=(t1-3)+(t1-4)+(t1-5)          ・・・(式16)
 また、使用特異特徴群αの特異特徴t2と、使用特異特徴群βの各特異特徴(t3、t4、t5)との距離の和Dt2は、次式で算出できる。
 Dt2=(t2-3)+(t2-4)+(t2-5)          ・・・(式17)
 さらに、使用特異特徴群αの特異特徴t3と、使用特異特徴群βの各特異特徴(t3、t4、t5)との距離の和Dt3は、次式で算出できる。
 Dt3=(t3-3)+(t3-4)+(t3-5)          ・・・(式18)
 なお、式18において、使用特異特徴群αの特異特徴t3と、使用特異特徴群βの特異特徴t3との距離(t3-3)は、0である。
 そして、使用特異特徴群αの各特異特徴(t1,t2,t3)と使用特徴特徴群βの各特異特徴(t3,t4,t5)との各間の距離の総和Dtotalは、次式で算出できる。
 Dtotal=Dt1+Dt2+Dt3             ・・・(式19)
 このような手順にしたがって、具体的に式3~式12の数値を式16~式18に代入し、式19を用いてDtotalを算出すると、61.7466という値が得られる。
 二つの使用特異特徴群α(t1,t2,t3)とβ(t3,t4,t5)の組み合わせ以外の組み合わせ(図12で示した二つの使用特異特徴群の組み合わせのそれぞれ)についても、同様な手順で、各特異特徴間の距離の総和Dtotalを算出することができる。
 こうして算出された総和Dtotalを図14に示す。同図に示す算出結果は、図12に示す使用特異特徴群の組み合わせの配置に合わせて配置したものである。また、図14に示す算出結果は、図11の「特異特徴間距離算出テーブル」の「総和」を各特異特徴間の距離として用いたものである。
 次いで、マーカパターン生成部21は、二つの使用特異特徴の組み合わせのうち、各特異特徴間の距離の総和Dtotalが最も大きい組み合わせを選ぶ。
 図14に示す算出結果においては、使用特異特徴群(t1,t4,t5)と使用特異特徴(t2,t3,t4)の組み合わせが、各特異特徴間の距離の総和の最も大きい組み合わせとなっている。
 この手法を用いることで、最も誤認の生じにくい使用特異特徴群の組み合わせを選択できる。
 (4)二つのマーカについてそれらの形状の相違の程度が大きくなるように、使用特異特徴を選択する
 二つのマーカを生成する場合、それらの形状が近似していると、頑健性が低くなり、誤認混合が生じやすくなる。これは、(3)の場合と同様である。
 そこで、二つのマーカについて、それらの形状の相違の程度が大きくなるように、使用特異特徴を選択するのが望ましい。
 二つのマーカの各形状がどれだけ相違しているかについては、次の手法で算出できる。
 例えば、一方の使用特異特徴群αにおける特異特徴の一つ(例えば、t1)に、他方の使用特異特徴群βにおける特異特徴の一つ(例えば、t3)を重ね合わせ、このときの各特異特徴間の距離の総和を算出する。次いで、使用特異特徴群αにおける特異特徴の一つ(例えば、t1)に、使用特異特徴群βにおける特異特徴の他の一つ(例えば、t4)を重ね合わせ、このときの各特異特徴間の距離の総和を算出する。このように、一方の使用特異特徴群における特異特徴のそれぞれに、他方の使用特異特徴群における特異特徴の一つを順次重ね合わせていき、その重ね合わせを行なうたびに、各特異特徴間の距離の総和を算出していく。そして、一方の使用特異特徴群における特異特徴のすべてに対して、他方の使用特異特徴群における特異特徴のすべての重ね合わせが終わると、距離の総和が最も小さくなるときの重ね合わせ方を近似状態として記憶する。
 この処理を、二つの使用特異特徴群の組み合わせごとに行なって、各組み合わせにおける近似状態を求める。そして、すべての組み合わせについて、近似状態を求めると、これら近似状態における各特異特徴間の距離の総和のうち大きいものから所定数を選択し、この選択した近似状態における二つの使用特異特徴群をマーカ生成に用いる使用特異特徴とする。
 具体的には、次の手法で算出することができる。
 図15に示すように、複数の特異特徴(同図においては、t1,t2,t3,t4,t5)のうち、三つの特異特徴(t1,t2,t3)を使用特異特徴群αとして選び、三つの特異特徴(t3,t4,t5)を使用特異特徴群βとして選ぶ。なお、特異特徴t3は、共通しているため、使用特異特徴群βの特異特徴t3をt3'とする。
 次いで、使用特異特徴群αの有する複数の特異特徴のうちの一つと、使用特異特徴群βの有する複数の特異特徴のうちの一つとを重ね合わせる。例えば、図16(i)に示すように、使用特異特徴群αの特異特徴t1に、使用特異特徴群βのt3'を重ね合わせる。
 そして、その重ね合わせた状態において、重なっていない特異特徴の各間の距離を算出し、それらの総和を求める。
 例えば、図16(i)に示す状態においては、使用特異特徴群αの特異特徴t2とt3、使用特異特徴群βの特異特徴t4とt5が重なっていない特異特徴である。このため、図17(i)に示すように、それら特異特徴t2、t3と特異特徴t4、t5の各間の距離を算出する。
 この算出は、次の式を用いて行なうことができる。
  Σt1(t3')=(t2-t4)+(t2-t5)+(t3-t4)+(t3-t5)    ・・・(式20)
 なお、「t2-t4」は、特異特徴t2と特異特徴t4との間の距離を示す。
 ここで、各特異特徴の座標は、次の値とする。
  t2=(0,4)
  t3=(1,0)
  t4=(10,3)
  t5=(16,10)
 これら特異特徴の座標を式2に代入すると、各特異特徴間の距離は、次のように算出される。
  (t2-t4)=10.0499            ・・・(式21)
  (t2-t5)=17.0880            ・・・(式22)
  (t3-t4)=9.4868            ・・・(式23)
  (t3-t5)=18.0278            ・・・(式24)
 それら各特異特徴間の距離を式20に代入すると、使用特異特徴群αの特異特徴t2、t3と使用特異特徴群βの特異特徴t4、t5の各間の距離との総和は、次の値となる。
  Σt1(t3')=54.6525
 このΣt1(t3')の値と、式21~式24で算出された数値は、図18(i)に示す。
 次いで、図16(ii)に示すように、使用特異特徴群αの特異特徴t1に、使用特異特徴群βのt4を重ね合わせる。
 そして、図17(ii)に示すように、重なっていない使用特異特徴群αの特異特徴t2、t3と使用特異特徴群βの特異特徴t4、t5の各間の距離を算出する。
 この算出は、次の式を用いて行なうことができる。
  Σt1(t4)=(t2-t3')+(t2-t5)+(t3-t3')+(t3-t5)    ・・・(式25)
 ここで、各特異特徴の座標は、次の値とする。
  t2=(0,4)
  t3=(1,0)
  t3'=(2,6)
  t5=(12,13)
 これら特異特徴の座標を式2に代入すると、各特異特徴間の距離は、次のように算出される。
  (t2-t3')=5.3852            ・・・(式26)
  (t2-t5)=15.0000            ・・・(式27)
  (t3-t3')=9.0554            ・・・(式28)
  (t3-t5)=17.0294            ・・・(式29)
 これら各特異特徴間の距離を式25に代入すると、使用特異特徴群αの特異特徴t2、t3と使用特異特徴群βの特異特徴t4、t5の各間の距離との総和は、次の値となる。
  Σt1(t4)=46.4699
 このΣt1(t4)の値と、式26~式29で算出された数値は、図18(ii)に示す。
 同様にして、図16(iii)に示すように、使用特異特徴群αの特異特徴t1に、使用特異特徴群βのt5を重ね合わせた場合、使用特異特徴群αの特異特徴t2、t3と使用特異特徴群βの特異特徴t3'、t4の各間の距離との総和は、次の値となる。
  Σt1(t5)=16.2715
 このΣt1(t5)の値と、重なっていない特異特徴間の距離は、図18(iii)に示す。
 続いて、使用特異特徴群αの特異特徴t2に、使用特異特徴群βのt3'、t4、t5をそれぞれ重ね合わせ、重なっていない特異特徴の各間の距離を算出し、それらの総和を求める。
 さらに、使用特異特徴群αの特異特徴t3に、使用特異特徴群βのt3'、t4、t5をそれぞれ重ね合わせ、重なっていない特異特徴の各間の距離を算出し、それらの総和を求める。
 これら重ね合わせた状態における重なっていない特異特徴の各間の距離の総和を図19に示す。
 同図において、使用特異特徴群αの特異特徴t1と使用特異特徴群βの特異特徴t3'が交差する欄に示された「54.6525」は、使用特異特徴群αの特異特徴t1に使用特異特徴群βの特異特徴t3'を重ねたときの重なっていない特異特徴(t1,t2,t4,t5)の各間の距離の総和を示したものである。
 そして、マーカパターン生成部21は、同図に示された総和の中から、最も値の小さいものを選択する。ここでは、使用特異特徴群αの特異特徴t1に使用特異特徴群βの特異特徴t5を重ねたときの値が最も小さい値である(同図の網掛け部分)。この数値を、使用特異特徴群αと使用特異特徴群βの形状近似値とする。
 このように、形状近似値を選ぶことによって、使用特異特徴群αにもとづくマーカと使用特異特徴群βにもとづくマーカの各形状がどの程度近似しているかがわかる。これは、使用特異特徴αにもとづくマーカの形状と使用特異特徴群βにもとづくマーカの形状が完全に同一であれば、これらを重ね合わせたときに一致し、ズレが生じない。一方、使用特異特徴αにもとづくマーカの形状と使用特異特徴群βにもとづくマーカの形状が相違していれば、これらを重ね合わせたときに、その相違している分だけズレが生じる。使用特異特徴αの特異特徴の一つと使用特異特徴βの特異特徴の一つとを重ね合わせたときの重なっていない特異特徴の各間の距離の総和が最も小さい場合とは、そのズレが最も小さい場合であり、言い換えれば、使用特異特徴αにもとづくマーカと使用特異特徴βにもとづくマーカが最も重なった状態である。つまり、使用特異特徴αにもとづくマーカと使用特異特徴βにもとづくマーカが最も重なった状態を探すために形状近似値を算出するものであり、同時に各形状のズレの程度もわかるものである。これは、使用特異特徴αと使用特異特徴βの各配置が図15(i)~(iii)に示した状態である場合、同図(iii)のときが最も重なった状態となっており、この場合に、特異特徴の各間の距離の総和が最も小さく、形状近似値として選択されていることからも明らかである(図19参照)。
 次いで、この形状近似値を、二つのマーカの組み合わせごとに算出する。
 特異特徴が図6に示すように五つ選択された場合において、三つの特異特徴により一つの使用特異特徴群を構成するときの二つの使用特異特徴群の組み合わせは、図12に示すようになる。
 そして、これら二つの使用特異特徴群の組み合わせごとに、形状近似値を算出すると、この算出結果は、図20に示すようになる。同図において、形状近似値が小さいほど、二つの使用特異特徴群にもとづく二つのマーカの各形状が近似していると言える。一方、形状近似値が大きいほど、二つの使用特異特徴群にもとづく二つのマーカの各形状が相違していると言える。
 そして、二つのマーカの各形状が相違している方が、それらマーカ間の誤認混同は生じにくいといえるので、図20に示す形状近似値の中から最も大きいものを選ぶ。同図においては、29.5316が最も大きい値である(グレーで示した数値)。
 そして、この値が示された使用特異特徴群の組み合わせを選択する。前述の29.5316は、使用特異特徴群αが(t1,t3,t4)、βが(t2,t3,t5)のときの値である。
 このように、二つの使用特異特徴群の組み合わせごとに形状近似値を算出し、この形状近似値が最も大きい使用特異特徴群の組み合わせを選択することで、誤認混同の少ない複数のマーカを生成できる。
 なお、使用特異特徴群を三つ以上選択するときは、図20を参照して、形状近似値が大きい使用特異特徴群の組み合わせを選択するようにすればよい。
 例えば、二つの使用特異特徴群は、上述したように、(t1,t3,t4)と(t2,t3,t5)であるとすると、(t1,t3,t4)との比較で次に形状近似値が大きい組み合わせの(t2,t4,t5)を選択することができる。あるいは、(t2,t3,t5)との比較で次に形状近似値が大きい組み合わせの(t1,t4,t5)を選択することができる。
 ここまで、四つの手法(1)~(4)について説明したが、使用特異特徴を選択する場合は、それらの手法のうちの一つだけ用いるようにしてもよく、又は、複数の手法を組み合わせて用いるようにしてもよい。
 また、複数の手法を組み合わせる場合は、各手法に優先順位を付けて行なうこともできる。
 さらに、ここまで説明した手法のうち(2)~(4)の手法は、使用特異特徴に関する距離が大きくなるように特異特徴を選択する手法である。この距離は、本実施形態においては、二次元空間を想定して説明したが、二次元空間に限るものではなく、三次元空間など多次元空間においても同様の手法で算出することができる。
(マーカ生成方法)
 次に、マーカ生成装置の動作手順(マーカ生成方法)について、図21~図25を参照して説明する。
 図21は、マーカ生成方法の処理手順を示すフローチャートである。図22は、
(ア)マーカ生成の手順
 マーカ生成装置1aにおいて、特異特徴選択手段10の特異特徴選択部12は、特異特徴記憶部11から「特徴点検出テーブル」を取り出す。
 そして、特異特徴選択部12は、「特徴点検出テーブル」を参照して、各区画ごとの特徴点数の中から、0又は所定数以下のものを選択し、これを特異特徴とする(ステップ10)。
 次いで、特異特徴選択部12は、選択した特異特徴に関するデータを「特異特徴テーブル」にまとめる(ステップ11)。そして、特異特徴選択部12は、その「特異特徴テーブル」を特異特徴記憶部11に記憶させる。
 マーカパターン生成手段20のマーカパターン生成部21は、特異特徴記憶部11から、「特異特徴テーブル」を取り出す。そして、マーカパターン生成部21は、「特異特徴テーブル」に示された複数の特異特徴の中から、マーカパターンの生成に用いる特異特徴を一又は二以上選択し、これらを使用特異特徴とする(ステップ12)。
 この使用特異特徴の選択処理は、前述した[使用特異特徴の選択方法]における四つの手法のうちの一又は二以上の手法を用いることができる。これら手法の手順については、後記の(イ)~(オ)で詳述する。
 次いで、マーカパターン生成部21は、使用特異特徴を用いてマーカパターンを一又は二以上生成する(ステップ13)。マーカ記憶部22は、マーカパターン生成部21で生成されたマーカパターンに関するデータを記憶する。
(イ)特異特徴の選択処理(i)
  (特異特徴の数が多くなるように、使用特異特徴を選択する)
 マーカパターン生成部21は、マーカの数を特定する(ステップ20)。
 次いで、マーカパターン生成部21は、「特異特徴テーブル」を参照して、特異特徴の数を確認する(ステップ21)。ここでは、図6に示すように、五つの特異特徴があるものとする。
 続いて、マーカパターン生成部21は、特異特徴の組み合わせの一覧を「使用特異特徴組合せテーブル」として作成する(ステップ22)。ここでは、図7に示すように、一つ~五つの特異特徴により構成される31通りの使用特異特徴の組み合わせが一覧表示された「使用特異特徴組合せテーブル」が作成されたものとする。
 そして、マーカパターン生成部21は、それら使用特異特徴の組み合わせの中から、特異特徴の数が多いものを、特定したマーカの数と同じ数だけ選択する(ステップ23)。ここで、特定されたマーカの数が三つであるとすると、マーカパターン生成部21は、五つの特異特徴により構成された使用特異特徴と、四つの特異特徴で構成された使用特異特徴の組み合わせのうちの二つを選択する。
(ウ)特異特徴の選択処理(ii)
  (各特異特徴間の距離の総和が大きくなるように、使用特異特徴を選択する)
 マーカパターン生成部21は、マーカの数を特定する(ステップ30)。
 次いで、マーカパターン生成部21は、「特異特徴テーブル」を参照して、特異特徴の数を確認する(ステップ31)。ここでは、図6に示すように、五つの特異特徴があるものとする。
 続いて、マーカパターン生成部21は、特異特徴の組み合わせの一覧を「使用特異特徴組合せテーブル」として作成する(ステップ32)。ここでは、図7に示した「使用特異特徴組合せテーブル」が作成されたものとする。
 さらに、マーカパターン生成部21は、「使用特異特徴組合せテーブル」に示された使用特異特徴の各組み合わせについて、特異特徴間の距離の総和を算出する(ステップ33)。この算出の結果は、「特異特徴間距離算出テーブル」としてまとめられる(図11参照)。
 そして、マーカパターン生成部21は、それら使用特異特徴の組み合わせの中から、特異特徴間の距離の総和が大きいものを、特定したマーカの数と同じ数だけ選択する(ステップ34)。ここで、特定されたマーカの数が三つであるとすると、マーカパターン生成部21は、「特異特徴間距離算出テーブル」(図11)を参照し、総和が最も大きい使用特異特徴の組み合わせ(五つの特異特徴により構成された使用特異特徴)と、総和が次に大きい使用特異特徴の組み合わせ(四つの特異特徴で構成された使用特異特徴の組み合わせのうち、総和が「49.5870」のもの)と、総和がその次に大きい使用特異特徴の組み合わせ(四つの特異特徴で構成された使用特異特徴の組み合わせのうち、総和が「48.7152」のもの)を選択する。
(エ)特異特徴の選択処理(iii)
  (二つの使用特異特徴群における各特異特徴間の距離の総和が大きくなるように、使用特異特徴を選択する)
 マーカパターン生成部21は、マーカの数を特定する(ステップ40)。
 次いで、マーカパターン生成部21は、「特異特徴テーブル」を参照して、特異特徴の数を確認する(ステップ41)。ここでは、図6に示すように、五つの特異特徴があるものとする。
 続いて、マーカパターン生成部21は、特異特徴の組み合わせの一覧を「使用特異特徴組合せテーブル」として作成する(ステップ42)。ここでは、図7に示した「使用特異特徴組合せテーブル」が作成されたものとする。
 さらに、マーカパターン生成部21は、「使用特異特徴組合せテーブル」に示された使用特異特徴の組み合わせの一つ一つを使用特異特徴群とする。そして、マーカパターン生成部21は、それら複数の使用特異特徴群のうちの二以上の使用特異特徴群を選出し(ステップ43)、この選出した二以上の使用特異特徴群における各特異特徴間の距離の総和を算出する(ステップ44)。この各特異特徴間の距離の総和の算出は、「使用特異特徴組合せテーブル」に示された複数の使用特異特徴群のうち、選出可能な二以上の使用特異特徴群の組み合わせのすべてについて行なう(ステップ45)。
 なお、使用特異特徴群を構成する特異特徴の数は、限定することができる。例えば、図14に示すように、使用特異特徴群を構成する特異特徴の数は、二つに限定することができる。この場合、選出される二つの使用特異特徴群の組み合わせは、同図に示すように、80通りとなる。そして、これら選出される二つの使用特異特徴群における各特異特徴間の距離の総和は、図14に示すように求められる。
 さらに、マーカパターン生成部21は、それら使用特異特徴群の組み合わせの中から、複数の使用特異特徴群における各特異特徴間の距離の総和が大きいものを、特定したマーカの数と同じ数だけ選択する(ステップ46)。ここで、図14を参照して、マーカ生成に用いる二つの使用特異特徴群を選択する場合、マーカパターン生成部21は、総和が最も大きい使用特異特徴群の組み合わせとして、総和が「67.7824」である使用特異特徴群(t1,t4,t5)と(t2,t3,t4)を選択する。
(オ)特異特徴の選択処理(iv)
  (二つのマーカについてそれらの形状の相違の程度が大きくなるように、使用特異特徴を選択する)
 マーカパターン生成部21は、マーカの数を特定する(ステップ50)。
 次いで、マーカパターン生成部21は、「特異特徴テーブル」を参照して、特異特徴の数を確認する(ステップ51)。ここでは、図6に示すように、五つの特異特徴があるものとする。
 続いて、マーカパターン生成部21は、特異特徴の組み合わせの一覧を「使用特異特徴組合せテーブル」として作成する(ステップ52)。ここでは、図7に示した「使用特異特徴組合せテーブル」が作成されたものとする。
 さらに、マーカパターン生成部21は、「使用特異特徴組合せテーブル」に示された使用特異特徴の組み合わせの一つ一つを使用特異特徴群とする。そして、マーカパターン生成部21は、それら複数の使用特異特徴群のうちの二以上の使用特異特徴群を選出し(ステップ53)、この選出した二以上の使用特異特徴群における形状近似値を算出する(ステップ54)。この形状近似値の算出は、「使用特異特徴組合せテーブル」に示された複数の使用特異特徴群のうち、選出可能な二以上の使用特異特徴群の組み合わせのすべてについて行なう(ステップ55)。
 なお、使用特異特徴群を構成する特異特徴の数は、限定することができる。例えば、図20に示すように、使用特異特徴群を構成する特異特徴の数は、二つに限定することができる。この場合、選出される二つの使用特異特徴群の組み合わせは、同図に示すように、80通りとなる。そして、これら選出される二つの使用特異特徴群における形状近似値は、図20に示すように求められる。
 さらに、マーカパターン生成部21は、それら使用特異特徴群の組み合わせの中から、複数の使用特異特徴群における形状近似値が大きいものを、特定したマーカの数と同じ数だけ選択する(ステップ56)。ここで、図20を参照して、マーカ生成に用いる二つの使用特異特徴群を選択する場合、マーカパターン生成部21は、形状近似値が最も大きい使用特異特徴群の組み合わせとして、総和が「29.5316」である使用特異特徴群(t1,t3,t4)と(t2,t3,t5)を選択する。
 なお、マーカパターン生成部21で選択される使用特異特徴の数、使用特異特徴の組合せ方、生成されるマーカパターンの種類及び数は、それぞれ任意とすることができる。
 以上説明したように、本実施形態のマーカ生成装置及びマーカ生成方法によれば、複数の特異特徴のうちの一部又は全部を用いて、マーカパターンを複数種類生成することができる。
 また、生成されるマーカパターンについて、その特異特徴の数を多くしたり、特異特徴間の距離を長くしたりすることで、頑健性が高く誤認の生じにくいマーカパターンを複数生成できる。
[マーカ生成装置及びマーカ生成方法の第二実施形態]
 次に、本発明のマーカ生成装置及びマーカ生成方法の第二の実施形態について、図26を参照して説明する。同図は、本実施形態のマーカ生成装置におけるマーカパターン生成手段の構成を示すブロック図である。
 本実施形態は、第一実施形態と比較して、マーカパターン生成手段の構成が相違する。すなわち、第一実施形態では、マーカパターン生成手段がマーカパターン生成部とマーカ記憶部とを有していたのに対し、本実施形態では、さらにマーカID設定部を有している。他の構成要素は第一実施形態と同様である。したがって、図26において、図1と同様の構成部分については同一の符号を付して、その詳細な説明を省略する。
(マーカ生成装置)
 図26に示すように、マーカ生成装置1bは、特異特徴選択手段10と、マーカパターン生成手段20bとを有している。ここで、マーカパターン生成手段20bは、マーカパターン生成部21と、マーカ記憶部22と、マーカID設定部23とを有している。
 マーカID設定部(マーカ設定手段)23は、マーカパターン生成部21で生成された複数のマーカパターンをIDとして使用するにあたり、どのマーカをどの物体に付すかを決める。
 この決める手順は、例えば、(1)「物体の種類の特定」、(2)「使用特異特徴群の特定」、(3)「使用特異特徴群を並べる」、(4)「使用特異特徴群の絞り込み」、(5)「物体に付す順番の設定」の手順とすることができる。
(1)「物体の種類の特定」
 マーカID設定部23は、マーカによって区別する物体の種類、つまり、マーカ検出装置に識別させる物体の種類を特定する。
 例えば、物体が「飲料容器」である場合、「アルミ缶」、「スチール缶」、「ペットボトル」などを物体の種類とすることができる。また、物体が「小売業者に卸す商品」の場合、卸す先の「A店」、「B店」、「C店」、・・・を物体の種類とすることができる。
 なお、本実施形態においては、図27(i)に示すように、物体の種類が八種類(物体a,b,c,d,e,f,g,h)あるものとする。ただし、物体の種類は、八つに限るものではなく、任意の数とすることができる。
(2)「使用特異特徴群の特定」
 次に、マーカID設定部23は、物体の種類と同数の使用特異特徴群を特定する。
 ここで、マーカID設定部23は、まず、使用特異特徴群を構成する特異特徴の数を決める。
 使用特異特徴群を構成する特異特徴の数は、特異特徴選択手段10で選択された特異特徴の数によって決まる。例えば、特異特徴選択手段10で選択された特異特徴の数が図6に示すように五つある場合、使用特異特徴群を構成する特異特徴の数は、図7に示すように、「特異特徴の数」として、「1」、「2」、「3」、「4」、「5」のいずれかとなる。
 また、特異特徴の組み合わせの数は、同図に示すように、「1」が5、「2」が10、「3」が10、「4」が5、「6」が1である。
 ここで、物体の種類は八種類であるため、マーカも八つ必要になる。そこで、組み合わせの数が「8」以上のものを選ぶ。図7に示す場合では、特異特徴の数の「2」と「3」が、それに該当する。そして、マーカの頑健性から言えば、特異特徴の数は多い方がよい。このため、特異特徴の数は、「2」ではなく「3」を選ぶのが望ましい。
 なお、本実施形態においては、特異特徴の数がいずれも同じになるように特異特徴の組み合わせ(使用特異特徴群)を選択するが、使用特異特徴群は、特異特徴の数がいずれも同じである必要はなく、異なっていてもよい。例えば、特異特徴の数が「5」の使用特異特徴群を一つ、「4」の使用特異特徴群を五つ、「3」の使用特異特徴群を二つ選択するようにすることもできる。
(3)「使用特異特徴群を並べる」
 複数の使用特異特徴群を選択すると、マーカID設定部23は、それらを、任意にあるいはある一定の法則(所定の距離算出処理により算出される距離)にしたがって並べ、この並びに応じて番号を付し、この番号に応じて物体に付すマーカを選択することができる。
 その複数の使用特異特徴群の並べ方として、(i)任意に並べる、(ii)レーベンシュタイン距離を用いて並べる、(iii)二つの使用特異特徴群の各特異特徴間の距離を用いて並べる、(iv)二つの使用特異特徴群の形状近似値にもとづいて並べるがある。
 これらのうち、レーベンシュタイン距離、二つの使用特異特徴群の各特異特徴間の距離、二つの使用特異特徴群の形状近似値が、「所定の距離算出処理により算出される距離」に相当する。また、二つの使用特異特徴群の各特異特徴間の距離と、二つの使用特異特徴群の形状近似値が、ユークリッド距離を用いて算出されるとき、このユークリッド距離が、「所定の距離算出処理により算出される距離」に相当する。
 さらに、レーベンシュタイン距離を算出する処理、二つの使用特異特徴群の各特異特徴間の距離を算出する処理、二つの使用特異特徴群の形状近似値を算出する処理、ユークリッド距離を算出する処理が、「所定の距離算出処理」に相当する。
 (i)任意に並べる
 マーカID設定部23は、例えば、図27(ii)に示すように、複数(同図においては十通り)の特異特徴の組み合わせを並べ、それらに番号を付す。
 複数の特異特徴の組み合わせの並べ方は、任意(ランダム)とすることができる。
 なお、図27(ii)においては、特異特徴の番号を三桁の数と捉え、これらを昇順に並べてある。例えば、「t1,t2,t3」は「123」、「t1,t2,t4」は「124」、「t3,t4,t5」は「345」として、これらを昇順に並べたものである。
 (ii)レーベンシュタイン距離を用いて並べる
 レーベンシュタイン距離とは、情報処理理論において、二つの文字列がどの程度異なっているかを示す数値をいう。例えば、文字の挿入や削除、置換によって、一つの文字列を別の文字列に変形するのに必要な手順の最小回数として与えられる。
 具体例をもって説明する。
 三つの特異特徴の組み合わせは、図7に示すように十通りある。具体的には、(t1,t2,t3),(t1,t2,t4),(t1,t2,t5),・・・(t3,t4,t5)が、それらの組み合わせである。
 ここで、各特異特徴に付された特異特徴番号に着目する。例えば、(t1,t2,t3)と(t1,t2,t4)とを比較した場合、前者の「t3」を「t4」に置換することで後者と同じになる。つまり、一回の置換で前者から後者に変換できることから、それらのレーベンシュタイン距離は、「1」となる。
 また、(t1,t2,t3)と(t1,t4,t5)とを比較した場合、前者の「t2」を「t4」に置換し、さらに前者の「t3」を「t5」に置換することで後者と同じになる。つまり、二回の置換で前者から後者に変換できることから、それらのレーベンシュタイン距離は、「2」となる。
 このように複数の使用特異特徴群の各間のレーベンシュタイン距離を算出すると、図28に示すような結果が得られる。
 同図において、例えば、使用特異特徴群の番号「2」である(t1,t2,t4)と番号「4」である(t1,t3,t4)のレーベンシュタイン距離は、「1」であり、使用特異特徴群の番号「6」である(t1,t4,t5)と番号「7」である(t2,t3,t4)のレーベンシュタイン距離は、「3」である。
 そして、複数の使用特異特徴群を、そのレーベンシュタイン距離にもとづいて並べる。
 まず、基準となる使用特異特徴群を一つ決める。ここでは、番号「1」の「t1,t2,t3」を基準となる使用特異特徴群とする。この基準となる使用特異特徴群を、複数の使用特異特徴群の最初に配置する。
 次いで、基準となる使用特異特徴群以外の使用特異特徴群を、レーベンシュタイン距離の小さいものから順に、二番目以降に並べる。
 例えば、レーベンシュタイン距離の最も小さい値が「1」である。そして、基準となる使用特異特徴群「t1,t2,t3」とのレーベンシュタイン距離が「1」である使用特異特徴群は、番号「2」と「3」である。そこで、これら番号「2」と「3」を、二番目と三番目に配置する。なお、番号「2」と「3」は、いずれもレーベンシュタイン距離が「1」であるため、どちらを二番目にしてもよく、どちらを三番目にしてもよい。
 続いて、「1」の次にレーベンシュタイン距離の小さい値は、「2」である。この場合に、基準となる使用特異特徴群「t1,t2,t3」とのレーベンシュタイン距離が「2」である使用特異特徴群は、番号「4」と「5」と「6」である。そこで、これら番号「4」と「5」と「6」を、四番目と五番目と六番目に配置する。なお、番号「4」と「5」と「6」は、いずれもレーベンシュタイン距離が「2」であるため、それらは、四番目、五番目、六番目のいずれに配置してもよい。
 さらに、レーベンシュタイン距離が「3」についても同様に行なう。
 その結果、複数の使用特異特徴群は、図27(ii)の左欄と同様に配置される。
 また、基準となる使用特異特徴群を番号「2」である「t1,t2,t4」にした場合、複数の使用特異特徴群は、レーベンシュタイン距離にもとづいて、図29(i)のように配置される。
 さらに、基準となる使用特異特徴群を番号「8」である「t2,t3,t5」にした場合、複数の使用特異特徴群は、図29(ii)のように配置される。
 なお、番号「3」~「7」、「9」、「10」の使用特異特徴群についても、これらを基準とした場合に、レーベンシュタイン距離にもとづいて配置をすることができる。
 (iii)二つの使用特異特徴群の各特異特徴間の距離を用いて並べる
 複数の使用特異特徴群を並べる場合に、それら使用特異特徴群の各特異特徴間の距離を用いることができる。
 複数の使用特異特徴群の各特異特徴間の距離は、第一実施形態の「(使用特異特徴の選択方法)」の「(3)二つの使用特異特徴群における各特異特徴間の距離の総和が大きくなるように、使用特異特徴を選択する」で説明した。
 この説明にしたがい、例えば、特異特徴が図6に示すように五つ選択された場合において、うち三つの特異特徴でマーカを生成するときに、二つの使用特異特徴群の各特異特徴間の距離の総和は、図14に示すように算出される。
 ここで、番号「1」である使用特異特徴群「t1,t2,t3」を基準となる使用特異特徴群とすると、この基準となる使用特異特徴群と他の使用特異特徴群との距離は、図30に示すようになる。同図は、図14に示す総和のうち、使用特異特徴群「t1,t2,t3」に関するものを抽出して、使用特異特徴群の番号順に並べたものである。
 次いで、基準となる使用特異特徴群以外の使用特異特徴群を、総和の小さいもの(距離の近いもの)から順に並べる。この並べた結果を、図31に示す。このように、二つの使用特異特徴群間の距離を用いて複数の使用特異特徴群を並べると、同図に示すように、「1」、「7」、「2」、「4」、「8」、「3」、「5」、「9」、「10」、「6」の順になる。
 同様に、番号「2」の使用特異特徴群を基準とした場合、これと他の使用特異特徴群との距離は、図32に示すようになる。
 そして、それら使用特異特徴群の各特異特徴間の距離の総和にもとづいて各使用特異特徴群を並べ替えると、図33に示すようになる。すなわち、複数の使用特異特徴群は、「2」、「1」、「7」、「4」、「3」、「8」、「5」、「9」、「6」、「10」の順に並べられる。
 さらに、番号「8」の使用特異特徴群を基準とした場合、これと他の使用特異特徴群との距離は、図34に示すようになる。
 そして、それら使用特異特徴群の各特異特徴間の距離にもとづいて各使用特異特徴群を並べ替えると、図35に示すようになる。すなわち、複数の使用特異特徴群は、「8」、「1」、「7」、「5」、「3」、「4」、「2」、「10」、「9」、「6」の順に並べられる。
 (iv)二つの使用特異特徴群の形状近似値にもとづいて並べる 複数の使用特異特徴群を並べる場合に、それら使用特異特徴群の各間の形状近似値を用いることができる。
 二つの使用特異特徴群の形状近似値は、第一実施形態の「(使用特異特徴の選択方法)」の「(4)二つのマーカについてそれらの形状の相違の程度が大きくなるように、使用特異特徴を選択する」で説明した。この説明にしたがい、特異特徴が図6に示すように選択された場合において、三つの特異特徴でマーカを生成するときに、二つの使用特異特徴群の形状近似値は、図20に示すように算出される。
 ここで、番号「1」である使用特異特徴群「t1,t2,t3」を基準となる使用特異特徴群とすると、この基準となる使用特異特徴群と他の使用特異特徴群との形状近似値は、図36に示すようになる。
 そして、この形状近似値の小さいものから順に使用特異特徴群を並べることができる。この並べた結果を、図37に示す。このように、二つの使用特異特徴群の形状近似値を用いて複数の使用特異特徴群を並べると、同図に示すように、「1」、「10」、「7」、「2」、「6」、「9」、「8」、「4」、「3」、「5」の順になる。
 同様に、番号「2」の使用特異特徴群を基準とした場合、これと他の使用特異特徴群との形状近似値は、図38に示すようになる。
 そして、それら使用特異特徴群の形状近似値にもとづいて各使用特異特徴群を並べ替えると、図39に示すようになる。すなわち、複数の使用特異特徴群は、「2」、「1」、「4」、「7」、「6」、「9」、「3」、「10」、「8」、「5」の順に並べられる。
 さらに、番号「8」の使用特異特徴群を基準とした場合、これと他の使用特異特徴群との形状近似値は、図40に示すようになる。
 そして、それら使用特異特徴群の形状近似値にもとづいて各使用特異特徴群を並べ替えると、図41に示すようになる。すなわち、複数の使用特異特徴群は、「8」、「9」、「10」、「3」、「5」、「1」、「7」、「2」、「6」、「4」の順に並べられる。
(4)「使用特異特徴群の絞り込み」
 複数の使用特異特徴群が並べられると、マーカID設定部23は、次に、それら複数の使用特異特徴群の中から、マーカの生成に用いる使用特異特徴群を選ぶ。
 例えば、使用特異特徴群が十通りあり、物体の種類が八つあるときは、十の使用特異特徴群の中から八つを選ぶ。
 この選び方には、「番号で選ぶ」ものと、「物体の種類に応じて選ぶ」ものと、「マーカの頑健性に応じて選ぶ」ものとがある。
 (i)「番号で選ぶ」
 複数の使用特異特徴群のそれぞれに番号を付し、物体の種類と同数の使用特異特徴群を番号の順に選び出し、これらをマーカの生成に用いる使用特異特徴群とするものである。
 具体的には、例えば、図27(i)~(iii)に示すように、物体の種類が八つある場合において(同図(i))、複数の使用特異特徴群のそれぞれに「1」から順番に番号が付されていたとすると(同図(ii))、この番号の順に「1」から「8」までの使用特異特徴群を選び出し、これらをマーカの生成に用いる使用特異特徴群として、物体の種類ごとに対応付けるものである(同図(iii))。
 なお、番号の順に使用特異特徴群を選ぶ場合として、本実施形態においては、「1」から「8」までのように、「1」から昇順で八つ選ぶこととしているが、これに限るものではなく、例えば、「3」~「10」のように「1」以外の番号から開始した連続した八つの番号で選んでもよく、「1」~「4」と「7」~「10」のように連続した所定数個の番号を複数選んで全体で八つの番号が選ばれるようにしてもよい。
 また、物体の種類が四種類の場合、使用特異特徴群は、例えば、「1」と「3」と「5」と「7」とを選ぶようにしてもよい。
 (ii)「マーカの頑健性に応じて選ぶ」
 二つの使用特異特徴群がある場合、これらの間の形状近似値が大きい方が、互いの頑健性が高いといえる。そこで、使用特異特徴群の選択に際しては、形状近似値が高くなるように選ぶとよい。
 ここで、番号「1」の使用特異特徴群を基準とした場合の他の使用特異特徴群との間の形状近似値は、図36に示すようになる。
 そして、同図の中から、形状近似値が高いものを選び出す。
 例えば、基準となる使用特異特徴群「1」から見て形状近似値の最も大きいのは、番号「5」の使用特異特徴群である。
 次に形状近似値が大きいのは、番号「3」の使用特異特徴群である。
 このようにして、番号「1」の使用特異特徴群を基準とし、形状近似値が昇順となるように他の使用特異特徴群を並べた状態を、図37に示す。
 そして、同図を用いて、基準となる使用特異特徴群に対し形状近似値が大きくなるように、マーカ生成用の使用特異特徴群を選ぶことができる。具体的に、図37の場合、選ばれるのは、「1」の他に、「5」、「3」、「4」、「8」、「9」、「6」、「2」である。
 なお、ここで、「5」~「2」は、「1」に対して頑健性が高いものの、「5」と「3」との間や「9」と「6」との間などは、頑健性が高いかどうか、図37からはわからない。この場合は、「5」を基準としたときの「3」の形状近似値を用いたり、「9」を基準としたときの「6」の形状近似値を用いたりするなどして、マーカ生成用の使用特異特徴群を選ぶことができる。
 (iii)「物体の種類に応じて選ぶ」
 物体の種類は、マーカ生成装置やマーカ検出装置の使用者などにより任意に決めることができる。
 例えば、前述したように、物体が飲料容器であり、物体の種類がアルミ缶、スチール缶、ペットボトルなどの場合、これら種類の間に上下関係(階層)はなく対等であるため、種類ごとに異なるマーカを付すようにすれば識別可能となる。
 これに対し、物体の種類に上下関係(階層)がある場合には、マーカの選択も、それに合わせることが望ましい。
 例えば、物体がレトルト食品であり、物体の種類がカレー、シチュー、中華丼などであり、カレーの中に、甘口、辛口、中辛などの種類を設けることが考えられる。この場合、カレー、シチュー、中華丼がそれぞれ上位レベルの階層であり、甘口、辛口、中辛などは、カレーに対して下位レベルの階層である。このとき、カレーとシチューで誤認識が生じるのと、甘口と辛口で誤認識が生じるのとを比べると、前者の方がより誤認識を無くすべきである。つまり、下位の階層よりも、上位の階層の方で、各種類間の頑健性を高くしておくことが望ましい。
 そこで、物体の種類の階層レベルに応じて頑健性の高低をつけるように、使用特異特徴群を選択する。これは、マーカ間の形状近似値を用いて行なう。
 マーカ間の形状近似値については、図20に示した。同図において、形状近似値が最も高いのは、番号「4」と番号「8」の使用特異特徴群間である。
 次いで、マーカID設定部23は、番号「4」の使用特異特徴群を基準として、他の使用特異特徴群を並べて配置する。この配置した結果を図43に示す。
 同図に示すように、番号「4」の使用特異特徴群を基準とした場合、使用特異特徴群は、「4」、「2」、「7」、「1」、「5」、「10」、「6」、「3」、「9」、「8」のように並べて配置される。
 続いて、マーカID設定部23は、使用特異特徴群の配置にもとづいて、マーカ生成用の使用特異特徴群を選択する。ここでは、上位レベルの種類として三つ(カレー、シチュー、中華丼)、カレーの下位レベルの種類として三つ(甘口、辛口、中辛)を選択するものとする。
 まず、「4」と「8」は、最も頑健性が高いので、これらは選択するようにする。
 次いで、「4」をカレーとしたときに、カレーの下位レベルの種類は、この「4」の近傍の番号から選択する。具体的には、「4」の次の「2」と「7」を選択する。
 さらに、「7」と「8」との中程にある番号を選択する。図43に示す配置では、例えば、「6」を選択する。これは、上位レベルの種類の一つが、他の上位レベルの種類との間でできる限り頑健性が高くなるようにするためである。
 これらにより、「4」、「2」、「7」、「6」、「8」を選択することができる。
(5)「物体に付す順番の設定」
 マーカID設定部23は、複数の使用特異特徴群の中からマーカ生成用の使用特異特徴群を選択すると、それら選択した使用特異特徴群をそれぞれどの物体の種類に付すかを決める。
 前述の例では、マーカ生成用の使用特異特徴群として、「4」、「2」、「7」、「6」、「8」を選択した。
 これらのうち、「4」、「2」、「7」は、各間の形状近似値が小さいため、下位レベルの種類に割り当てる。具体的には、「4」、「2」、「7」を、それぞれカレーの甘口、辛口、中辛に割り当てる。
 また、「6」と「8」は、「4」との間の形状近似値が大きいため、上位レベルの種類に割り当てる。具体的には、「6」、「8」を、それぞれシチューと中華丼に割り当てる。
 この割り当てにしたがって、物体にマーカを付した様子を図44に示す。
 次いで、マーカID設定部23は、割り当ての結果を、「物体-マーカ対応テーブル」としてまとめる。
 この「物体-マーカ対応テーブル」の構成例を図45に示す。
 同図に示すように、「物体-マーカ対応テーブル」は、「物体の種類」と、「マーカパターンの番号」とを項目として構成することができる。
 この「物体-マーカ対応テーブル」を参照することで、検出されたマーカがどの物体の種類に対応しているかがわかる。
 この「物体-マーカ対応テーブル」は、マーカ記憶部23に記憶される。
 これら(1)~(5)の手順を実行することで、複数の使用特異特徴群の中から二以上の使用特異特徴群を選び出し、これらを物体の各種類に対応付け、その対応した物体にマーカを付すことで、物体の種類ごとに異なるマーカを付すことができ、マーカ検出段階で、各物体の種類を区別して検出することができる。
(マーカ生成方法)
 次に、マーカ生成装置の動作手順(マーカ生成方法)について、図45を参照して説明する。
 図45は、マーカ生成方法の処理手順を示すフローチャートである。
 マーカ生成装置1aにおいて、特異特徴選択手段10の特異特徴選択部12は、特異特徴記憶部11から「特徴点検出テーブル」を取り出す。
 そして、特異特徴選択部12は、「特徴点検出テーブル」を参照して、各区画ごとの特徴点数の中から、0又は所定数以下のものを選択し、これを特異特徴とする(ステップ60)。
 次いで、特異特徴選択部12は、選択した特異特徴に関するデータを「特異特徴テーブル」にまとめる(ステップ61)。そして、特異特徴選択部12は、その「特異特徴テーブル」を特異特徴記憶部11に記憶させる。
 マーカパターン生成手段20のマーカパターン生成部21は、特異特徴記憶部11から、「特異特徴テーブル」を取り出す。そして、マーカパターン生成部21は、「特異特徴テーブル」に示された複数の特異特徴の中から、マーカパターンの生成に用いる特異特徴を一又は二以上選択し、これらを使用特異特徴とする(ステップ62)。
 この使用特異特徴の選択は、前述した[使用特異特徴の選択方法]における四つの手法のうちの一又は二以上の手法を用いることができる。
 次いで、マーカパターン生成部21は、使用特異特徴を用いてマーカパターンを複数生成する(ステップ63)。
 マーカ記憶部22は、マーカパターン生成部21で生成されたマーカパターンに関するデータを記憶する。
 続いて、マーカパターン生成手段20のマーカID設定部23は、マーカパターン生成部21で生成された複数のマーカパターンを複数ある物体の種類にそれぞれ割り当てる(ステップ64)。そして、この割り当てた結果を、「物体-マーカ対応テーブル」にまとめ、これをマーカ記憶部22に記憶させる。
 次に、物体へのマーカの割り当て処理について、図47を参照して説明する。
 マーカID設定部23は、マーカパターン生成部21で生成された複数のマーカパターンをIDとして使用するにあたり、どのマーカをどの物体に付すかを決める(物体へのマーカの割り当て処理)。
 まず、マーカID設定部23は、マーカによって区別する物体の種類、つまり、マーカ検出装置に識別させる物体の種類を特定する(ステップ70)。
 次いで、マーカID設定部23は、物体の種類と同数の使用特異特徴群を特定する(ステップ71)。
 続いて、マーカID設定部23は、特定した複数の使用特異特徴群を、任意にあるいはある一定の法則にしたがって並べ、この並びに応じて番号を付し、この番号に応じて物体に付すマーカを選択する(ステップ72)。
 複数の使用特異特徴群の並べ方としては、例えば、(i)任意に並べる、(ii)レーベンシュタイン距離を用いて並べる、(iii)二つの使用特異特徴群の各特異特徴間の距離を用いて並べる、(iv)二つの使用特異特徴群の形状近似値にもとづいて並べるなどがある。
 また、物体に付すマーカの選択の仕方には、例えば、「番号で選ぶ」ものと、「物体の種類に応じて選ぶ」ものと、「マーカの頑健性に応じて選ぶ」ものとがある。
 そして、マーカID設定部23は、複数の使用特異特徴群の中からマーカ生成用の使用特異特徴群を選択すると、それら選択した使用特異特徴群をそれぞれどの物体の種類に付すかを決める(物体の種類と使用特異特徴群との対応付け、ステップ73)。
 次いで、マーカID設定部23は、割り当ての結果を、「物体-マーカ対応テーブル」としてまとめる。この「物体-マーカ対応テーブル」は、マーカ記憶部23に記憶される。
 このような手順を実行することにより、物体の種類ごとに異なるマーカを付すことができる。このため、マーカ検出段階で、各物体の種類を識別して検出することができる。
 また、生成した複数のマーカは、オブジェクトIDとして使用できる。この場合、距離が近いものから遠い順に並べると、順序付きのID(例えば、4、2、7・・・)を作ることができる。
 さらに、物体の種類が階層構造の場合、上位レベルに対しては、距離の遠い使用特異特徴群を用いるようにし、一方、下位レベルに対しては、距離の近い使用特異特徴群を用いるようにすることで、検出時に仮に誤認が生じても、下位レベルで誤りやすく、上位レベルで誤りにくくすることができる。これにより、誤認への耐久性を高めることができ、順序情報をほぼ正しく検出できる。
[マーカ生成装置及びマーカ生成方法の第三実施形態]
 次に、本発明のマーカ生成装置及びマーカ生成方法の第三実施形態について、図48を参照して説明する。
 同図は、本実施形態のマーカ生成装置の構成を示すブロック図である。
 図48に示すように、マーカ生成装置1cは、特異特徴選択手段10と、マーカパターン生成手段20と、映像入力手段30と、配置手段である特徴抽出手段40とを備えている。
 ここで、映像入力手段30は、図49に示すように、映像入力部31と、映像記憶部32とを有している。
 映像入力部31は、背景映像を入力する。
 背景映像は、マーカ生成装置1cにより生成されるマーカを使用する前の環境(マーカが存在しない環境)を撮影したものである。例えば、マーカが付された物体を搬送するベルトコンベアがある場合に、その物体を搬送していない状態のベルトコンベア及びその周辺を撮影した映像などが該当する。
 この背景映像は、動画像(映像)であってもよく、また、所定時間間隔で撮影した複数枚の静止画像であってもよい。
 さらに、背景映像には、ライブ映像、録画映像、配信映像などを含むことができる。
 また、映像入力部31は、自身が撮像デバイスを有することができる。この場合、映像入力部31は、当該マーカ生成装置1cが設置された場所の周囲の様子を背景映像として撮影することができる。
 さらに、映像入力部31は、当該マーカ生成装置1c以外の装置で取り込まれた背景映像を、通信ネットワークや通信ケーブルなどを介して入力することもできる。
 この映像入力部31が撮影又は入力した背景映像の例を、図50に示す。
 映像記憶部32は、背景映像を構成する静止画フレームを、ディジタイズされたフレーム画像として記憶する。
 また、映像記憶部32は、複数のフレーム画像のそれぞれに付された番号(例えば、シリアル番号)を記憶する。この番号は、一枚のフレーム画像を一意に特定する。図50においては、(i-11)が該当する。
 さらに、映像記憶部32は、フレーム画像が撮影された時刻、フレーム画像を撮影した装置を特定する情報(フレーム画像が外部入力されたものである場合)などを記憶することもできる。
 特徴抽出手段40は、図49に示すように、特徴抽出部41と、特徴記憶部42とを有している。
 特徴抽出部41は、映像記憶部32からフレーム画像を取り出す。そして、特徴抽出部41は、取り出したフレーム画像中の特徴的なパターンを含む画像特徴を抽出する。
 特徴抽出部41は、画像特徴として、例えば、図形的に特徴的な特性を数値化したものを用いることができる。
 これには、例えば、1998年IEEEコンピュータビジョン・パターン認識会議予稿集に掲載されているTommasiniらによる「Making good features track better」に記載されている方法を使用することができる。この方法は、画像中の物体形状に頂点、線状の物体の交差点、端点などを抽出することができる。そして、それらの点の画像上での位置座標情報の系列を図形的特徴とすることができる。例えば、図50(i-11)のフレーム画像に対して、この方法で特徴点を抽出すると、図51に示すように、特徴点が複数配置される。特徴点の一つ一つは、座標により管理することができる。
 なお、特徴点が配置された空間を特徴空間という。この特徴空間は、二次元空間であってもよく、また、三次元空間であってもよい。本実施形態の特徴空間は、二次元空間とする。
 また、他の方法としては、例えば、Montanariによる1971年Communications of ACM、14巻に掲載されている「On the option detection of curves in noisy pictures」に記載の方法がある。これは、基準点からの距離、相対角度を記憶するRテーブルの内容を特徴として使用することができる。この際、基準点をすべての特徴位置に対して設定し、網羅的に特徴を抽出しておくことで、部分的な特徴の欠損に対してマーカの検出が頑健となる。
 さらに、他の特徴抽出方法としては、例えば、画像上の各画素の輝度値、あるいは色差値を特徴とする方法がある。
 次いで、特徴抽出部41は、図52に示すように、特徴点のそれぞれにシリアル番号を付与する。このシリアル番号は、例えば、最も上に位置するものから順番に1、2、3、4、・・・のように付与することができる。
 続いて、特徴抽出部41は、特徴点のそれぞれの座標を求める。座標は、図52に示すように、特徴空間にX軸とY軸を設定し、Y軸からの距離をX座標、X軸からの距離をY座標とすることができる。
 そして、特徴抽出部41は、それら特徴点のシリアル番号や座標を特徴記憶部42に記憶させる。特徴記憶部42は、それらシリアル番号等を、図53に示すように、「特徴点情報テーブル」として記憶することができる。
 「特徴点情報テーブル」は、同図に示すように、「フレーム画像のシリアル番号」(ア)と、「特徴点のシリアル番号」(イ)と、「特徴点のx座標」(ウ)と、「特徴点のy座標」(エ)と、「特徴点を位置する区画の座標」(オ)と、「特徴点に関する情報」(カ)を項目として構成することができる。
 「フレーム画像のシリアル番号」は、特徴点を抽出したフレーム画像に付された番号を示す。
 「特徴点に関する情報」は、例えば、特徴として認識された要素(エッジ、交差など)、特徴点が位置する画素の色相、明度、彩度などを含むことができる。
 なお、「特徴点を位置する区画の座標」については、後述する。
 次いで、特徴抽出部41は、図54に示すように、特徴空間に格子状のメッシュを付して、複数の区画に分ける。
 このとき、特徴抽出部41は、各区画の座標を算出する。この各区画の座標は、各区画を仕切る線(区画線)の座標で表すことができる。
 例えば、図55に示すように、仕切り線の座標を、x1,x2,x3,・・・、y1,y2,y3,・・・とする。
 また、各区画の名称を、区画(1,1)、区画(1,2)、区画(1,3)、・・・、区画(2,1)、区画(2,2)、区画(2,3)、・・・とする。このうち、区画(1,1)は、座標(0,0)-(x1,0)-(x1,y1)-(0,y1)-(0,0)で囲まれた範囲となる。
 ここで、x1は、X方向の第一本目の区画線のx座標である。また、y1は、Y方向の第一本目の区画線のy座標である。これにより、区画(1,1)の座標は、図56に示すように、(x1,y1)として表すことができる。
 同様に、区画(2,1)の座標は、(x2,y1)、区画(3,1)の座標は、(x3,y1)、区画(1,2)の座標は、(x1,y2)、区画(2,2)の座標は、(x2,y2)として表すことができる。
 これら各区画の名称と座標との関係を、図56に示す。それら各区画の名称と座標は、区画座標テーブルとして、特徴記憶部42に記憶させることができる。
 また、一つの区画の大きさは、任意に設定できる。ただし、一つの区画の大きさは、特徴点が存在しない区画が特徴空間の中で少なくとも2~3個以上存在するように定めるのが望ましい。
 続いて、特徴抽出部41は、各区画ごとに特徴点の数を求める。
 この各区画ごとの特徴点の数の算出は、各区画の座標と、各特徴点の座標とを用いて行うことができる。
 算出された各区画ごとの特徴点の数は、図57に示すように、「特徴点数分布図」として表すことができる。この「特徴点数分布図」は、特徴記憶部42に記憶される。
 なお、図57においては、わかりやすいように、特徴点が1つ以上存在した区画にグレーの網掛けを付して表示してある。
 また、特徴抽出部41は、特徴点ごとに、当該特徴点と、当該特徴点が位置する区画の座標を関連付ける。例えば、特徴点1が位置する区画の座標は、図54に示すように、(x7,y1)である。そこで、特徴抽出部41は、図58に示すように、「特徴点情報テーブル」の「特徴点が位置する区画の座標」において、特徴点1と、区画の座標(x7,y1)とを関連付け、これを特徴記憶部42に記憶させる。
 特徴記憶部42は、所定のメモリ領域を保持している。この特徴記憶部42は、特徴抽出部41で実行された処理に関する各種データを記憶する。特に、特徴記憶部42は、「特徴点情報テーブル」、「フレーム画像-特徴空間対応テーブル」、「区画座標テーブル」、「特徴点数分布図」を記憶することができる。
 なお、特徴抽出手段40は、特徴点を抽出して所定の空間(特徴空間)に配置することから、「配置手段」としての機能を有している。
 特異特徴選択手段10は、図49に示すように、特異特徴記憶部11と、特異特徴選択部12とを有している。
 特異特徴記憶部11は、「特徴点情報テーブル」、「フレーム画像-特徴空間対応テーブル」、「区画座標テーブル」、「特徴点数分布図」、特異特徴の座標を記憶する。
 特異特徴選択部12は、特徴記憶部42から、「特徴点数分布図」を取り出して、特異特徴記憶部11に記憶させる。
 また、特異特徴選択部12は、取り出した「特徴点数分布図」を参照し、各区画ごとの特徴点数のうち、0又は所定値以下の特徴点が配置された区画を特異特徴として選択する。
 具体的には、図57の特徴点累計数分布図においては、「0」が記載された区画が選択される。これにより、特異特徴選択部12は、映像入力手段30で入力された背景映像に現れていない画像特徴を特異特徴として選択することができる。
 このように、特異特徴選択部12は、背景パターンと一致しない特徴、すなわち背景映像から抽出した特徴群が現れていない特徴空間の部位を特異特徴として選択することができる。事後に、意に反して特徴点の抽出誤差などにより、特異特徴が背景パターンと類似してしまうことを避けるために、特徴空間内で背景パターンの特徴が存在しないより大きな領域から特異特徴を選択するようにしてもよい。
 この特異特徴の選択処理は、特徴空間中の特徴点の分布から大きな空白を見つける問題と同一視できるから、例えば、2003年文書解析認識国際会議予稿集に掲載されている「An algorithm for Finding Maximal Whitespace Rectangles at Arbitrary Orientations for Document Layout Analysis」などのアルゴリズムを使用して、大きな空白領域を抽出しても良いし、得られた特徴点を含まない矩形領域の中心を特異特徴としても良い。
 その他の方法としては、特徴空間を特定の大きさのメッシュで量子化し、1次元もしくは多次元のヒストグラムを生成し、特徴点の発生頻度が0となるメッシュの中心を特異特徴とするなどしても良い。頻度が0となるメッシュが存在しない場合、メッシュの大きさを小さくして、ヒストグラムをとり、頻度が0となるメッシュが現れた場合、このときのメッシュから特異特徴を選択するようにしても良い。頻度が0となるメッシュが見つからない場合は、ヒストグラムを既定値で閾値処理し、既定値以下のメッシュから特異特徴を選択しても良い。
 特異特徴選択部12が選択した特異特徴の例を、図59、図60に示す。図59に示す特異特徴配置図においては、特異特徴とされた区画を白色で表し、特異特徴とされなかった区画をグレーの網掛けで表している。図60は、図59に示す特異特徴配置図にもとづき、特異特徴の中心と特異特徴配置図の中心点とを黒丸「●」で表した図である。
 なお、図57においては、特異特徴(特徴点数の累計数が0の区画)が82個存在するが、マーカパターンの生成処理の説明を容易にするため、特異特徴は、図59、図60に示すように選択されたものとする。
 特異特徴選択部12は、選択した特異特徴の座標を求める。例えば、特異特徴選択部12は、図59に示す特異特徴配置図において、特異特徴の座標を(2,6)、(5,2)、(5,4)、(5,5)、(7,6)とする。これら特異特徴の座標は、特異特徴記憶部11に記憶される。
 マーカパターン生成手段20は、図49に示すように、マーカパターン生成部21と、マーカ記憶部22とを有している。
 マーカパターン生成部21は、特異特徴記憶部11から特異特徴の座標を取り出し、この特異特徴の座標にもとづいてマーカパターンを生成する。
 マーカパターンの生成方法には、種々の方法がある。
 例えば、画像中の頂点、交差点、端点を特徴点として使用する場合を例に説明する。前述した「On the option detection of curves in noisy pictures」に記載の方法などにもとづく場合、マーカパターンの生成に必要になる、特徴点群の検出は、特徴抽出手段40で使用している特徴点検出アルゴリズムに依存する。
 例えば、図8(i)~(iv)に示すようなマーカパターンの生成方法が例として挙げられる。
 なお、特徴抽出手段40が明度値又は色差値を使用して特徴を抽出した場合、マーカを物体に付する装置は、特異特徴に対応する明度値、色差値に対応する塗料でマーカを印刷してもよい。
 また、頂点、交差点、端点を図形的な特徴として利用する方法と、明度値や色差値を特徴として利用する方法とを併用することも可能である。この場合、マーカパターン生成部21は、選定された特異特徴に対応する明度、色、形状に対応するマーカを生成すればよい。
 マーカ記憶部22は、マーカパターン生成部21で生成されたマーカに関するデータを記憶する。
 例えば、マーカパターンが図18(1)に示すような場合は、特異特徴の座標が記憶される。また、図18(2)に示すような場合は、特異特徴の座標の他に、凸包を構成する線分の座標が記憶される。
 次に、マーカ生成装置の動作手順(マーカ生成方法)について、図61を参照して説明する。
 図61は、マーカ生成方法の処理手順を示すフローチャートである。
 マーカ生成装置1cにおいて、映像入力手段30の映像入力部31は、背景映像を入力する(ステップ40)。この背景映像は、複数枚のフレーム画像で構成される。映像入力手段30の映像記憶部32は、映像入力部31で入力された背景映像をフレーム画像として記憶する。
 特徴抽出手段40の特徴抽出部41は、映像記憶部32からフレーム画像を取り出し、このフレーム画像から特徴点を抽出し、これら特徴点を特徴空間に配置する(ステップ41)。
 また、特徴抽出部41は、特徴空間における特徴点の座標を算出する(ステップ42)。この算出した座標は、特徴記憶部42に記憶される。
 次いで、特徴抽出部41は、特徴空間に格子状のメッシュを付して、複数の区画に分ける(ステップ43)。
 続いて、特徴抽出部41は、各区画ごとに特徴点の数を求める(ステップ44)。
 さらに、特徴抽出部41は、複数のフレーム画像のそれぞれについて、特徴点の抽出、特徴空間への配置、区画ごとの特徴点数の算出を行い、これら算出した特徴点数を各区画ごとに累計する(ステップ45)。
 特徴記憶部42は、それら区画及び区画線の座標、各区画毎の特徴点の数を記憶する。
 続いて、特異特徴選択手段10の特異特徴選択部12は、特徴記憶部42から各区画ごとの特徴点を取り出す。
 そして、特異特徴選択部12は、各区画ごとの特徴点の中から、0又は所定数以下のものを選択し、これを特異特徴とする(ステップ46)。
 特異特徴記憶部11は、特異特徴選択部12で特異特徴とされた区画の座標を記憶する。
 マーカパターン生成手段20のマーカパターン生成部21は、特異特徴記憶部11から、特異特徴の座標を取り出す。そして、マーカパターン生成部21は、その特異特徴の座標にもとづいてマーカパターンを複数生成する(ステップ47)。
 マーカ記憶部22は、マーカパターン生成部21で生成されたマーカパターンに関するデータを記憶する。
 以上説明したように、本実施形態のマーカ生成装置及びマーカ生成方法によれば、特徴空間における特徴点が所定数以下の箇所を特異特徴とし、この特異特徴にもとづいてマーカパターンが生成されることから、映像入力手段で入力された背景映像のいずれの背景パターンにも現れていないパターンによって、頑健性の高いマーカパターンを生成できる。
[マーカ生成装置及びマーカ生成方法の第四実施形態]
 次に、本発明のマーカ生成装置及びマーカ生成方法の第四の実施形態について、図62を参照して説明する。
 図62は、本実施形態のマーカ生成装置の構成を示すブロック図である。
 本実施形態は、第一実施形態と比較して、特異特徴を選択する空間が相違する。すなわち、第一実施形態では、特徴空間から特異特徴を選択していたのに対し、本実施形態では、不変量特徴空間から特異特徴を選択する。他の構成要素は第一実施形態と同様である。
 したがって、図62において、図1と同様の構成部分については同一の符号を付して、その詳細な説明を省略する。
 図62に示すように、マーカ生成装置1dは、特異特徴選択手段10と、マーカパターン生成手段20と、映像入力手段30と、特徴抽出手段40と、不変特徴変換手段50とを備えている。
 なお、本実施形態においては、特徴抽出手段40と不変特徴変換手段50が、「配置手段」に相当する。
 ここで、不変特徴変換手段50は、図62に示すように、不変特徴変換部51と、不変特徴記憶部52とを有している。
 不変特徴変換部51は、特徴点を不変特徴に変換する。この不変特徴変換部51は、特徴抽出手段40の特徴記憶部42から「特徴点情報テーブル」を取り出し、その特徴点を不変特徴に変換し、不変特徴記憶部52に記憶させる。
 画像の特徴的な部位を抽出しその画像上での位置座標情報の系列を図形的特徴とする場合(例えば、図50に示す背景映像から図51に示す特徴点を抽出する処理の場合)、それらの不変特徴への変換は、例えば、次のように行なうことができる。便宜的に、ここでは、位置座標情報の系列を特徴点群と呼ぶこととする。ここで、簡単のため、背景が遠方にある場合の幾何学的な不変特徴について説明する。ただし、光学歪みの影響で、画像が剪断変形歪みを被る場合も特徴量が不変となるように配慮する。なお、背景が遠方にない場合などより自由度の高い不変特徴に拡張することは容易である。幾何学的不変特徴すなわちカメラと撮影対象のシーンが相対的に回転、平行移動し、剪断変形歪みを被る場合に、その相対的な位置関係変化によらず、不変な特徴量を、特徴点群の位置関係から、生成する方法の一例を説明する。
 特徴点群から任意の3点の特徴点を選択する。他方で不変量特徴空間を直交する2軸の張る2次元平面として定義する。特徴点群から選択した特徴点のうちの一点を不変量特徴空間での原点に対応付ける。その他の2点を不変量特徴空間での、位置座標(1,0)及び(0,1)にそれぞれ対応付ける。これら3点を基底と呼ぶことにする。このとき、原画像空間から、不変量特徴空間への1対1線形写像がアフィン変換として定義できる。基底を除くすべての特徴点群を、基底により特徴付けられた同一のアフィン変換を用いて不変特徴空間へ写像すると、これら特徴点群はカメラとシーンの相対的位置関係によらず不変となる。ただし、実際には、シーンから常に同じ基底を選択できるとは限らないため、特徴点群のすべての3点の順列組み合わせから基底選択を行い、各基底に対する非基底特徴点を不変量特徴空間に写像する必要がある。
 こうして作られた全基底と、不変量特徴空間への全特徴点の写像は、不変特徴として、不変特徴記憶部52に記憶される。これら特徴点群が幾何変形に対して不変である理由は、他の物体を含む映像中で、マーカから選択される基底により、得られる不変特徴は、常に一致するためである。
 ここまで説明した手法は、基底を3点とした場合であるが、基底は3点に限るものではなく、1点、2点あるいは4点以上とすることができる。次に、基底を1点にした場合について説明する。
 あるフレーム画像から抽出した特徴点は、図51に示すように、特徴空間に配置されているものとする。また、各特徴点には、図52に示すように、シリアル番号が付されているものとする。
 不変特徴変換部51は、一つの特徴点を基底として定め、この基底が不変量特徴空間の座標(0,0)のところにくるように移動し、この移動量を求め、他のすべての特徴点についても、その移動量で不変量特徴空間に移動する。
 例えば、図63に示すように、シリアル番号5番の特徴点を基底とし、この5番の特徴点が不変量特徴空間で座標(0,0)のところにくるように、すべての特徴点を平行移動する。これにより、不変量特徴空間には、同図右に示すように特徴点が配置される。なお、不変量特徴空間に配置された特徴点を不変特徴という。
 また、図64に示すように、シリアル番号15番の特徴点を基底とし、この15番の特徴点が不変量特徴空間で座標(0,0)のところにくるように、すべての特徴点を平行移動すると、同図右の不変量特徴空間に示すように、不変特徴群が配置される。
 さらに、図65に示すように、シリアル番号89番の特徴点を基底とし、この89番の特徴点が不変量特徴空間で座標(0,0)のところにくるように、すべての特徴点を平行移動すると、同図右の不変量特徴空間に示すように、不変特徴群が配置される。
 そして、図66に示すように、シリアル番号91番の特徴点を基底とし、この91番の特徴点が不変量特徴空間で座標(0,0)のところにくるように、すべての特徴点を平行移動すると、同図右の不変量特徴空間に示すように、不変特徴群が配置される。
 このように、一つの特徴点を基底として定め、この基底を不変量特徴空間の原点に移動するのに伴って、その移動量と同じ移動量ですべての特徴点を移動させる処理を、各特徴点を順次基底として定めるごとに行い、これら移動後の特徴点を重ね合わせることで、特徴点を不変量特徴空間に写像する。
 図51に示す特徴点を不変量特徴空間に写像した結果は、図67に示すようになる。これが、不変量特徴空間における不変特徴の配置された状態である。
 なお、本実施形態において、特徴点を不変量特徴空間へ写像する方法は、図63~図67に示す方法とするが、写像方法は、この方法に限るものではなく、種々の方法を用いることができる。
 例えば、複数の特徴点のうちの一つを第一基底、他の一つを第二基底として定め、第一基底を不変量特徴空間の座標(0,0)に移動し、第二基底を(0,1)に移動することにともない、この移動規則と同一の変換規則にしたがって、すべての特徴点を移動させ、不変量特徴空間における移動後の各特徴点(不変特徴)の座標を記憶する。続いて、他の二つの特徴点を第一基底及び第二基底として定め、これら第一及び第二基底の移動にともない同一変換規則にしたがってすべての特徴点を移動させ、不変量特徴空間における不変特徴の座標を記憶する。そして、すべての特徴点が第一及び第二基底として定められ、不変量特徴空間における不変特徴の座標の蓄積が完了すると、不変量特徴空間への写像が終了する。
 また、上述の説明は、幾何学的不変量に関するものであるが、幾何学的不変量のほかに種々の不変量を使用してもよい。
 例えば、物体色を不変量として用いることができる。
 物体の色は、同一物体であっても撮影環境に存在する光源色に依存して、異なった色で撮影されてしまう。画像上から光源色変動の影響を分離して取り除くことができれば、実際の物体色を得ることができる。得られる実際の物体色を物体色不変量として使用してもよい。鏡面反射している箇所は光源色の影響が支配的で、輝度値が光源色成分において飽和しやすいため、これを光源色とみなして、飽和箇所に対応する色成分を不変特徴として選択しないようにしてもよい。
 他にも、画像から物体色を推定する方法には、Robby T. Tan and Katsushi Ikeuchiによる、IEEE TRANSACTIONS ON PATTERN ANALYSIS AND MACHINE INTELLIGENCE、VOL. 27、NO. 2、FEBRUARY 2005、pp.178-193に記載の「Separating Reflection Components of Textured Surfaces Using a Single Image」や、Graham D. Finlayson、Steven D. Hordley、Cheng Lu、and Mark S. Drewによる、IEEE TRANSACTIONS ON PATTERN ANALYSIS AND MACHINE INTELLIGENT、 VOL.28、NO.1、JANUARY 2006、pp.59-68、に記載の「On the Removal of Shadows from Images」などを使用してもよい。
 さらに、テクスチャを不変量として用いることができる。
 画像の部分領域の輝度分布に対して数値演算を施し得られた数値またはベクトルを特徴量とする。図形的不変量と同様にテクスチャ不変量はカメラと撮影対象との相対位置関係に影響を受けやすいため、この影響を受けにくい特徴量を算出し、テクスチャ不変量とする。例えば、カメラと対象の距離やズームに不変な特徴量は、注目している部分画像を極座標変換し、動径方向にパワースペクトルをとることで実装可能である。さらに、上記パワースペクトルに対して方位角方向に再度パワースペクトルを求めるとカメラの光軸周りの回転に対して不変な特徴量となる。その他、Chi-Man Pun and Moon-Chuen LeeによるIEEE TRANSACTIONS ON PATTERN ANALYSIS AND MACHINE INTELLIGENCE、VOL. 25、NO. 5、MAY 2003記載の「Log-Polar Wavelet Energy Signatures for Rotation and Scale Invariant Texture Classification」などの方法を用いてもよい。
 また、幾何学的不変量についても、Richard Hartley and Andrew Zissermanによる「Multiple View Geometry in Computer Vision」などに記載されているような他の幾何学的不変量を使用してもよい。同一シーンを複数のカメラで観測する場合には、同文献に記載の方法により、距離もしくは深さ方向の相対位置関係の情報を得ることが可能となるが、この場合、同一平面にない4点を基底に選択し、不変量特徴空間を3次元とすると、3次元の幾何学的不変量を作ることができる。この際には、特徴点群から選択した基底4点のうち1点を不変量空間の原点、その他の基底の特徴点を不変量空間における位置座標(1,0,0)および(0,1,0)、(0,0,1)に対応付ける変換写像を求め、その他特徴をこの変換写像を使用して不変量空間に写像するようにする。
 特徴点を不変量特徴空間に写像した不変特徴変換部51は、図68に示すように、不変量特徴空間に格子状のメッシュを付して、複数の区画に分ける。
 続いて、不変特徴変換部51は、各区画ごとに不変特徴の数を求める。この算出結果を、図69に示す。図69は、不変量特徴空間において、不変特徴の数が1以上の区画にグレーを付した図である。
 不変特徴記憶部52は、所定のメモリ領域を保持している。この不変特徴記憶部52は、不変特徴変換部51で求められた各種データを記憶する。各種データには、例えば、不変量特徴空間に配置された各不変特徴の座標、各区画の座標(範囲)、各区画ごとの不変特徴数などが含まれる。
 特異特徴選択手段10は、図62に示すように、特異特徴選択部11と、特異特徴記憶部12とを有している。
 特異特徴選択部11は、図70に示すように、不変量特徴空間の中で、マーカパターンの生成を行う範囲を、マーカパターン生成範囲として決定する。このマーカパターン生成範囲は、静止画フレームの大きさと同じ大きさとすることができる。
 次いで、特異特徴選択部11は、そのマーカパターン生成範囲における各区画ごとの不変特徴数を、不変特徴記憶部52から取り出す。この取り出した各区画ごとの不変特徴数を図71に示す。なお、図71は、マーカパターン生成範囲において、不変特徴の数が1以上の区画にグレーを付した図である。
 続いて、特異特徴選択部11は、マーカパターン生成範囲における各区画ごとの不変特徴数のうち、0又は所定値以下のものを特異特徴として選択する。これにより、特異特徴選択部11は、記憶された特徴群から、シーンには現れていない画像特徴を特異特徴として選択することができる。
 なお、図71においては、白色の区画が、不変特徴数が0の区画である。
 特異特徴記憶部12は、特異特徴選択部11で選択された特異特徴の座標を記憶する。
 マーカパターン生成手段20は、第一実施形態におけるマーカパターン生成手段20と同様の機能を有している。
 不変特徴変換部51は、図51に示された特徴点を、不変量特徴空間に写像する。
 次いで、不変特徴変換部51は、その不変量特徴空間にメッシュを掛け、各区画ごとに特徴点を算出する。
 さらに、図69における不変量特徴空間のうち、マーカパターン生成範囲を取り出すと、図71に示すようになる。
 なお、2種類以上の不変量を組み合わせた場合における不変特徴への変換から特異特徴の選択までの処理は、概略つぎのように動作することができる。
 ここでは、幾何学的不変量と物体色不変量を併用する場合について説明する。
 物体色不変量には、幾何学的不変量を求める際に抽出された特徴点群の近傍画素について、前述したTanらの方法により得た物体色の輝度値を使用するものとする。まず、前述した幾何学的不変量を求める手順と同様に、特徴点群から3点を基底として選択し、2次元平面で記述される幾何学的不変量空間に射影する。各特徴位置に対応する物体色不変量を求め、幾何学的不変量平面に直交する軸、すなわち物体色不変量座標を含めた3次元空間を想定する。3次元空間の各軸を量子化して既定の大きさの直方体メッシュに分割し、直方体ごとのヒストグラムを生成する。あらゆる基底の組み合わせに対して同様の計算を行ない、ヒストグラムが0となったメッシュの中心値を特異特徴とする。マーカの生成は、各特異特徴に対応する位置および色でマーカを生成すればよい。
 次に、本実施形態のマーカ生成装置の動作(マーカ生成方法)について、図72を参照して説明する。
 同図は、本実施形態のマーカ生成方法の処理手順を示すフローチャートである。
 マーカ生成装置1cにおいて、映像入力手段30の映像入力部31は、背景映像を入力する(ステップ30)。この背景映像は、複数枚のフレーム画像で構成される。映像入力手段30の映像記憶部32は、映像入力部31で入力された背景映像をフレーム画像として記憶する。
 特徴抽出手段40の特徴抽出部41は、映像記憶部32からフレーム画像を取り出し、このフレーム画像から特徴点を抽出する(ステップ31)。
 また、特徴抽出部41は、抽出した特徴点の座標を算出する(ステップ32)。この算出した座標は、特徴記憶部42に記憶される。
 不変特徴変換手段50の不変特徴変換部51は、特徴記憶部42から特徴点の座標を取り出す。次いで、不変特徴変換部51は、取り出した特徴点の座標にもとづいて、各特徴点を不変量特徴空間に写像する(ステップ33)。
 続いて、不変特徴変換部51は、不変量特徴空間にメッシュを掛けて区画化する(ステップ34)。
 さらに、不変特徴変換部51は、各区画ごとに不変特徴数を算出する(ステップ35)。
 また、不変特徴変換部51は、複数のフレーム画像のそれぞれについて各区画ごとの不変特徴数を算出し、これらを累計する(ステップ36)。
 不変特徴記憶部52は、不変特徴変換部51で算出された各区画ごとの不変特徴数の累計を記憶する。
 特異特徴選択手段10の特異特徴選択部11は、不変特徴記憶部52から各区画ごとの不変特徴数を取り出す。このとき、マーカパターン生成範囲における各区画ごとの不変特徴数を取り出すこともできる。
 そして、特異特徴選択部11は、各区画ごとの不変特徴数の中から、0又は所定数以下のものを選択し、これを特異特徴とする(ステップ37)。
 特異特徴記憶部12は、特異特徴選択部11で特異特徴とされた区画の座標を記憶する。
 マーカパターン生成手段20のマーカパターン生成部21は、特異特徴記憶部12から、特異特徴の座標を取り出す。そして、マーカパターン生成部21は、その特異特徴の座標にもとづいてマーカパターンを複数生成する(ステップ38)。
 マーカ記憶部22は、マーカパターン生成部21で生成されたマーカパターンに関するデータを記憶する。
 以上説明したように、本実施形態のマーカ生成装置及びマーカ生成方法によれば、映像入力手段が複数のフレーム画像を入力し、これらフレーム画像のすべてから特徴点を抽出し、この特徴点を不変特徴として不変量特徴空間に写像し、この不変量特徴空間において特異特徴を選択し、この特異特徴にもとづいてマーカパターンを生成することとしたので、どのフレーム画像に対しての頑健性の高いマーカパターンを生成できる。
[マーカ検出装置及びマーカ検出方法]
(マーカ検出装置)
 次に、マーカ検出装置について、図73、図74を参照して説明する。
 図73は、マーカ検出装置の構成を示すブロック図である。図74は、マーカ検出装置の詳細構成を示すブロック図である。
 図73に示すように、マーカ検出装置100は、映像入力手段30と、特徴抽出手段40と、マーカ記憶手段130と、照合手段140と、報知手段150とを備えている。
 ここで、映像入力手段30は、図74に示すように、映像入力部311と、映像記憶部32とを有している。
 映像入力部311は、マーカが存在する可能性のある環境を検出対象映像として撮影(入力)する。例えば、映像入力部311は、図75に示すように、マーカを含む検出対象映像を入力することができる。
 映像記憶部32は、検出対象映像を構成する静止画フレームを、ディジタイズされたフレーム画像として記憶する。
 特徴抽出手段40は、図74に示すように、特徴抽出部41と、特徴記憶部42とを有している。
 特徴抽出部41は、映像記憶部32からフレーム画像を取り出す。そして、特徴抽出部41は、取り出したフレーム画像中の特徴的なパターンを含む画像特徴を抽出する。
 例えば、検出対象映像が図75に示すような画像の場合、特徴抽出部41は、その検出対象映像から図76に示すような特徴点を抽出する。
 特徴記憶部42は、特徴抽出部41で抽出された特徴点の各座標を記憶する。
 マーカ記憶手段130は、マーカ生成装置1で生成された複数種類のマーカパターンのそれぞれに関するデータを記憶する。このマーカ記憶手段130は、例えば、マーカパターンにもとづく特徴点を記憶することができる。
 照合手段140は、図74に示すように、照合部141と、照合結果記憶部142とを有している。
 照合部141は、検出対象映像にもとづく特徴点の各座標を特徴記憶部42から取り出すとともに、複数種類のマーカパターンのそれぞれにもとづく特徴点の各座標をマーカ記憶手段130から取り出し、それらを照合する。そして、照合部141は、複数種類のマーカパターンのいずれかにもとづく特徴点と一致する特徴点が、検出対象映像にもとづく特徴点の中にあるか否かを判断する。
 例えば、マーカパターンの特徴の一つと検出対象映像から生成された特徴の一つとを比較して、特徴空間でのユークリッド距離が既定値以下である場合には、それら特徴が一致したとして、一致した特徴の数をスコアとして累積し、スコアが閾値に達すると、マーカの検出を受諾するようにしても良い。また、前述のユークリッド距離の累積値が既定値以下である条件を付加しても良い。
 また、例えば、マーカ生成装置1cの特徴抽出部41が、特異特徴の決定を量子化した特徴空間で実行した場合、マーカ記憶手段130は、その特異特徴の座標を記憶しておく。そして、照合部141は、マーカ設計時に頻度が0であったメッシュに、検出対象映像からの特徴が1回でも投影されたときには、マーカパターンからの寄与であるとして検出を確定することができる。これによれば、マーカ検出は、高速に行える。
 ノイズや特徴抽出計算の誤差による誤対応を避けるために、受諾する投影の頻度を1回以上の既定値に設定してもよい。または、量子化した特徴空間をマーカパターンから生成可能である場合には、これを利用しても良い。この場合、検出対象映像から得た特異特徴が、マーカパターンの投影される特徴空間メッシュに1回、又は既定回数一致した場合に、マーカパターン検出を受諾するようにしても良い。
 これら照合の結果、マーカパターンにもとづく特徴点と一致する特徴点が、検出対象映像にもとづく特徴点の中にあるときは、照合部141は、検出対象映像における当該特徴点の座標を検出し、これを照合結果記憶部142に記憶させる。また、照合部141は、報知手段150へ報知信号を送る。
 一方、マーカパターンにもとづく特徴点と一致する特徴点が、検出対象映像にもとづく特徴点の中にないときは、照合部141は、特徴点の座標の検出及び報知信号の送出を行わない。
 具体的には、照合部141は、図76に示す特徴点群の中から、マーカ記憶手段130から取り出したマーカパターンにもとづく特徴点と一致する特徴点を探し出す。このとき、照合部141は、マーカパターンにもとづく特徴点群を拡大又は縮小して、特徴空間における特徴点群と照合する。
 その結果、図76に示す特徴点群の中から、マーカ記憶手段130から取り出したマーカパターンにもとづく特徴点と一致する特徴点が見つかると、照合部141は、図76に示す特徴空間における当該特徴点の座標を検出し、これを照合結果記憶部142に記憶させる。
 照合結果記憶部142は、照合部141で行われた照合に関するデータを記憶する。
 例えば、照合結果記憶部142は、検出対象映像にもとづく特徴点のうち、マーカパターンにもとづく特徴点と一致する特徴点(図76においては、左方の楕円で囲まれた特徴点)の各座標を記憶する。
 報知手段150は、照合部141から報知信号を受けると、マーカパターンにもとづく特徴点と一致する特徴点が、検出対象映像にもとづく特徴点の中にあったことを外部に報知する。この報知の方法には、例えば、音声出力や、画面表示などがある。
(マーカ検出方法)
 次に、本実施形態のマーカ検出方法について、図77を参照して説明する。
 マーカ記憶手段130は、マーカ生成装置1で生成された複数種類のマーカパターンのそれぞれに関するデータを予め記憶している(ステップ110)。このマーカ記憶手段130は、例えば、マーカパターンにもとづく特徴点を記憶することができる。
 映像入力手段30の映像入力部311は、マーカが存在する可能性のある環境を検出対象映像として入力する(ステップ111)。
 映像記憶部32は、検出対象映像を構成する静止画フレームを、ディジタイズされたフレーム画像として記憶する。
 特徴抽出手段40の特徴抽出部41は、映像記憶部32からフレーム画像を取り出す。そして、特徴抽出部41は、取り出したフレーム画像中の特徴的なパターンを含む画像特徴を抽出する(ステップ112)。
 また、特徴抽出部41は、抽出した特徴点の座標を算出する(ステップ113)。
 特徴記憶部42は、特徴抽出部41で算出された特徴点の各座標を記憶する。
 照合手段140の照合部141は、検出対象映像にもとづく特徴点の各座標を特徴記憶部42から取り出すとともに、複数種類のマーカパターンのそれぞれにもとづく特徴点の各座標をマーカ記憶手段130から取り出し、それらを照合する(ステップ114)。そして、照合部141は、複数種類のマーカパターンのいずれかにもとづく特徴点と一致する特徴点が、検出対象映像にもとづく特徴点の中にあるか否かを判断する。
 判断の結果、複数種類のマーカパターンのいずれかにもとづく特徴点と一致する特徴点が、検出対象映像にもとづく特徴点の中にあるときは、照合部141は、検出対象映像における当該特徴点の座標を検出し、これと一致したマーカパターンとともに、照合結果記憶部142に記憶させる。また、照合部141は、報知手段150へ報知信号を送る。
 一方、複数種類のマーカパターンのそれぞれにもとづく特徴点と一致する特徴点が、検出対象映像にもとづく特徴点の中にないときは、照合部141は、特徴点の座標の検出及び報知信号の送出を行わない。
 報知手段150は、照合部141から報知信号を受けると、複数種類のマーカパターンのいずれかにもとづく特徴点と一致する特徴点が、検出対象映像にもとづく特徴点の中にあったことを外部に報知する(ステップ115)。
 その後は、終了するか否かが判断され(ステップ116)、終了しないときは、ステップ111~ステップ116の処理が繰り返される。
 以上説明したように、本実施形態のマーカ検出装置及びマーカ検出方法によれば、マーカ生成装置で生成されたマーカパターンを用いて、検出対象映像に映し出されたマーカを確実に検出することができる。
 また、本実施形態においては、マーカの検出を特徴空間において行なうこととしたが、マーカの検出は、特徴空間に限るものではなく、例えば、不変量特徴空間において行なうこともできる。この場合、マーカ生成段階で、特異特徴を選択した特異特徴配置図を記憶しておき、マーカ検出段階で、検出対象映像から特徴点を抽出し、この特徴点を不変量特徴空間に写像して不変特徴し、この不変量特徴空間と前述の特異特徴配置図とを重ね合わせ、特異特徴配置図に示された特異特徴に不変量特徴空間に示された不変特徴が現れたときは、この不変特徴をマーカにもとづく不変特徴として検出することができる。
 さらに、マーカパターンの生成において、物体色不変量やテクスチャ不変量を用いた場合には、マーカ検出において、それら物体色不変量やテクスチャ不変量を用いてマーカ検出を行なう。この場合、マーカ生成段階で、背景映像から物体色不変量やテクスチャ不変量を抽出し、これらにもとづく特異特徴を選択して記憶しておき、マーカ検出段階において、検出対象映像から物体色不変量やテクスチャ不変量を抽出し、これら物体色不変量やテクスチャ不変量が特異特徴と一致したときは、それら物体色不変量やテクスチャ不変量をマーカとして検出することができる。
[マーカ生成検出装置及びマーカ生成検出システム]
(マーカ生成検出装置)
 次に、マーカ生成検出装置について、図78を参照して説明する。
 図78は、マーカ生成検出装置の構成を示すブロック図である。
 図78に示すように、マーカ生成検出装置200は、マーカ生成装置1と、マーカ検出装置100とを備えている。
 ここで、マーカ生成装置1は、前述した第一実施形態~第四実施形態のいずれかにおけるマーカ生成装置1(1a~1d)を用いることができる。
 マーカ検出装置100は、前述した図73に示すマーカ検出装置100を用いることができる。
 このように、マーカ生成検出装置200は、マーカ生成装置1とマーカ検出装置100とを一体化した構成とすることができる。
 また、マーカ生成装置1とマーカ検出装置100とは、共有化できる機能があるため、図79に示すような構成とすることもできる。
 例えば、マーカ生成検出装置200は、特異特徴選択手段10と、マーカパターン生成手段20と、映像入力手段30と、特徴抽出手段40と、照合手段140と、報知手段150とを有している。また、マーカパターン生成手段20は、マーカ生成部21と、マーカ記憶部22とを有している。
 これらのうち、特異特徴選択手段10と、マーカパターン生成手段20と、映像入力手段30と、特徴抽出手段40が、マーカ生成装置としての機能を有している。
 一方、映像入力手段30と、特徴抽出手段40と、マーカ記憶部22と、照合手段140と、報知手段150が、マーカ検出装置としての機能を有している。
 そして、映像入力手段30と、特徴抽出手段40と、マーカ記憶部22が、マーカ生成装置とマーカ検出装置に共通している部分である。
 マーカ生成装置におけるマーカ生成方法は、前述した第一~第四実施形態におけるマーカ生成方法と同様である。
 また、マーカ検出装置におけるマーカ検出方法は、前述した実施形態におけるマーカ検出方法と同様である。
(マーカ生成検出システム)
 次に、本実施形態のマーカ生成検出システムについて、図80を参照して説明する。
 同図に示すように、マーカ生成検出システム300は、マーカ生成装置1と、マーカ検出装置100とを備えている。これらマーカ生成装置1とマーカ検出装置100は、通信ネットワーク又は通信ケーブル400などで接続することができる。
 マーカ生成装置1は、特異特徴選択手段10と、マーカパターン生成手段20と、映像入力手段30と、特徴抽出手段40と、通信手段60とを有している。
 通信手段60は、マーカ記憶部22に記憶されているマーカに関するデータを取り出し、これをマーカ検出装置100へ送信する。
 マーカ検出装置100は、映像入力手段110と、特徴抽出手段120と、マーカ記憶部130と、照合手段140と、報知手段150と、通信手段160とを有している。
 通信手段160は、マーカ生成装置1から送信されてきたマーカに関するデータを受信する。また、通信手段160は、その受信したマーカに関するデータをマーカ記憶部130に記憶させる。
 以上説明したように、マーカ生成検出装置及びマーカ生成検出システムによれば、マーカ生成検出装置又はマーカ生成検出システムのマーカ生成機能において、マーカパターンを複数種類生成することができる。これにより、例えば、マーカパターンの種類と物体の種類を対応付けておけば、マーカ検出段階において、検出対象である物体だけでなく、その物体の種類についても検出できる。
 また、複数の使用特異特徴群を距離にもとづいて並べておき、その距離が遠くなるように二以上の使用特異特徴群を選択して物体に付すことにより、頑健性の高いマーカによって物体の種類を検出できる。
[マーカ生成プログラム及びマーカ検出プログラム]
 次に、マーカ生成プログラム及びマーカ検出プログラムについて説明する。
 上記の各実施形態におけるコンピュータ(マーカ生成装置、マーカ検出装置、マーカ生成検出装置、マーカ生成検出システム)のマーカ生成機能(マーカ生成方法を実行するための機能)やマーカ検出機能(マーカ検出方法を実行するための機能)は、記憶手段(例えば、ROM(Read only memory)やハードディスクなど)に記憶されたマーカ生成プログラム又はマーカ検出プログラムにより実現される。
 マーカ生成プログラム及びマーカ検出プログラムは、コンピュータの制御手段(CPU(Central Processing Unit)など)に読み込まれることにより、コンピュータの構成各部に指令を送り、所定の処理、たとえば、マーカ生成装置の映像入力処理、特徴抽出処理、特異特徴選択処理、マーカパターン複数種類生成処理、物体-使用特異特徴群対応付け処理、不変特徴変換処理、不変特徴累計処理、不変特徴合成処理、映像入力制御処理、マーカ検出装置の映像入力処理、特徴抽出処理、照合処理、報知処理などを行わせる。
 これによって、マーカ生成機能又はマーカ検出機能は、ソフトウエアであるマーカ生成プログラムとハードウエア資源であるコンピュータ(マーカ生成装置、マーカ検出装置、マーカ生成検出装置、マーカ生成検出システム)の各構成手段とが協働することにより実現される。
 なお、マーカ生成機能又はマーカ検出機能を実現するためのマーカ生成プログラムは、コンピュータのROMやハードディスクなどに記憶される他、コンピュータ読み取り可能な記録媒体、たとえば、外部記憶装置及び可搬記録媒体等に格納することができる。
 外部記憶装置とは、CD-ROM(Compact disk-Read only memory)等の記憶媒体を内蔵し、マーカ生成装置に外部接続されるメモリ増設装置をいう。一方、可搬記録媒体とは、記録媒体駆動装置(ドライブ装置)に装着でき、かつ、持ち運び可能な記録媒体であって、たとえば、フレキシブルディスク,メモリカード,光磁気ディスク等をいう。
 そして、記録媒体に記録されたプログラムは、コンピュータのRAM(Random access memory)等にロードされて、CPU(制御手段)により実行される。この実行により、上述した各実施形態のマーカ生成装置の機能が実現される。
 さらに、コンピュータでマーカ生成プログラムをロードする場合、他のコンピュータで保有されたマーカ生成プログラムを、通信回線を利用して自己の有するRAMや外部記憶装置にダウンロードすることもできる。このダウンロードされたマーカ生成プログラムも、CPUにより実行され、上記各実施形態のマーカ生成装置のマーカ生成機能を実現する。
 以上、本発明のマーカ生成装置、マーカ生成検出システム、マーカ生成検出装置、マーカ、マーカ生成方法及びマーカ生成プログラムの好ましい実施形態について説明したが、本発明に係るマーカ生成装置、マーカ生成検出システム、マーカ生成検出装置、マーカ、マーカ生成方法及びマーカ生成プログラムは上述した実施形態にのみ限定されるものではなく、本発明の範囲で種々の変更実施が可能であることは言うまでもない。
 例えば、上述した実施形態では、一回のマーカ生成処理において、複数種類のマーカを生成することを示したが、マーカ生成処理は一回に限定されるものではなく、複数会実行することができる。そして、二回目以降は、それまでに生成されたマーカを生成しないようにすることもできる。
 なお、本発明のマーカ生成装置、マーカ生成検出システム、マーカ生成検出装置、マーカ、マーカ生成方法及びマーカ生成プログラムは、第一実施形態~第四実施形態のそれぞれにおけるマーカ生成装置、マーカ生成検出システム、マーカ生成検出装置、マーカ、マーカ生成方法及びマーカ生成プログラムを任意に組み合わせたものであってもよい。
 また、上記の実施の形態の内容は、以下のようにも表現されうる。
 (付記1) 画像から特徴点が抽出され、前記特徴点が所定の空間に表わされ、前記空間のうち前記特徴点が所定数以下の部分を特異特徴として複数選択する特異特徴選択手段と、
 前記複数の特異特徴のうちの全部又は一部を用いてマーカパターンを複数種類生成するマーカパターン生成手段と
を有するマーカ生成装置。
 (付記2) 前記マーカパターンを一つ生成するのに用いる一又は二以上の特異特徴を使用特異特徴群とし、前記マーカパターンを複数種類生成するための複数の使用特異特徴群がそれぞれ異なる特異特徴の組み合わせで構成されており、前記特異特徴選択手段で選択された複数の特異特徴の中から前記使用特異特徴群を複数選ぶときに、前記マーカパターン生成手段は、前記所定の空間における前記特異特徴の座標にもとづいて、前記使用特異特徴群を構成する特異特徴に関する距離のデータを算出し、この距離のデータにもとづいて、前記マーカの生成に用いる使用特異特徴群を選択する
付記1に記載のマーカ生成装置。
 (付記3) 前記マーカパターン生成手段は、一の前記使用特異特徴群を構成する複数の特異特徴の各間の距離の総和が大きくなるように、当該複数の特異特徴を選択する
付記2記載のマーカ生成装置。
 (付記4) 前記マーカパターン生成手段は、一の前記使用特異特徴群を構成する複数の特異特徴と、他の使用特異特徴群を構成する複数の特異特徴との各間の距離の総和が大きくなるように、一の前記使用特異特徴群を構成する複数の特異特徴と、他の使用特異特徴群を構成する複数の特異特徴を選択する
付記2に記載のマーカ生成装置。
 (付記5) 前記マーカパターン生成手段は、
 一の前記使用特異特徴群に含まれる一の特異特徴と、他の使用特異特徴群に含まれる一の特異特徴とを重ね合わせ、前記一の使用特異特徴群において重なっていない一又は二以上の特異特徴と前記他の使用特異特徴群において重なっていない一又は二以上の特異特徴との各間の距離の総和を算出する処理を、前記一の使用特異特徴群を構成する複数の特異特徴のそれぞれに前記他の使用特異特徴群を構成する複数の特異特徴のそれぞれを重ね合わせるたびに実行し、この実行により算出した複数の総和のうち最も小さい総和を形状近似値とし、
 この形状近似値が大きい値となるように、前記一の使用特異特徴群を構成する一又は二以上の特異特徴と前記他の使用特異特徴群を構成する一又は二以上の特異特徴を、前記特異特徴選択手段で選択された複数の特異特徴の中から選択する
付記2に記載のマーカ生成装置。
 (付記6) 前記マーカパターン生成手段で選択された複数の使用特異特徴群のうちの二以上の使用特異特徴群を、複数の物体のいずれかに対応付けるマーカ設定手段を有する付記1から付記5のいずれかに記載のマーカ生成装置。
 (付記7) 前記マーカ設定手段は、所定の距離算出処理にしたがって算出された前記使用特異特徴群に関する距離が遠くなるように、前記複数の物体に対応する使用特異特徴群を選択する
付記6に記載のマーカ生成装置。
 (付記8) 前記所定の距離算出処理により算出される距離が、レーベンシュタイン距離であり、
 前記マーカ設定手段は、前記複数の使用特異特徴群の各間のレーベンシュタイン距離を算出するとともに、この算出したレーベンシュタイン距離が遠くなるように、前記複数の物体に対応する使用特異特徴群を選択する
付記7に記載のマーカ生成装置。
 (付記9) 前記所定の距離算出処理により算出される距離が、所定の空間におけるユークリッド距離であり、
 前記マーカ設定手段は、前記複数の使用特異特徴群の各間のユークリッド距離を算出するとともに、この算出したユークリッド距離が遠くなるように、前記複数の物体に対応する使用特異特徴群を選択する
付記7に記載のマーカ生成装置。
 (付記10) 前記所定の距離算出処理により算出される距離が、二つの使用特異特徴群の各特異特徴間の距離の総和であり、
 前記マーカ設定手段は、前記複数の使用特異特徴群について二つの使用特異特徴群の各特異特徴間の距離の総和を算出するとともに、この算出した総和が大きくなるように、前記複数の物体に対応する使用特異特徴群を選択する
付記7に記載のマーカ生成装置。
 (付記11) 前記所定の距離算出処理により算出される距離が、二つの使用特異特徴群の間の形状近似値であり、
 前記マーカ設定手段は、前記複数の使用特異特徴群について二つの使用特異特徴群の間の形状近似値を算出するとともに、この算出した形状近似値が大きくなるように、前記複数の物体に対応する使用特異特徴群を選択する
付記7に記載のマーカ生成装置。
 (付記12) 前記複数の物体が、二以上の種類で分類でき、
 前記二以上の種類のうちの少なくとも一つの種類が、さらに下位レベルの種類で分類でき、
 前記マーカ設定手段は、上位レベルの種類ごとに距離の遠い使用特異特徴群を対応付け、下位レベルの種類ごとに距離の近い使用特異特徴群を対応付ける
付記6から付記11のいずれかに記載のマーカ生成装置。
 (付記13) マーカ生成装置とマーカ検出装置とを備え、
 前記マーカ生成装置は、
 画像を入力する第一映像入力手段と、
 この第一映像入力手段で入力された前記画像から特徴点を抽出し、これらの抽出した特徴点を所定の空間に表す第一配置手段と、
 前記空間における前記特徴点が所定数以下の部分を特異特徴として選択する特異特徴選択手段と、
 前記特異特徴を用いてマーカパターンを複数種類生成するマーカ生成手段と
を有し、
 前記マーカ検出装置は、
 複数種類の前記マーカパターンを記憶するマーカ記憶手段と、
 画像を入力する第二映像入力手段と、
 この第二映像入力手段で入力された前記画像にもとづいて特徴点を抽出し、この抽出した特徴点を所定の空間に表す第二配置手段と、
 前記所定の空間に表された特徴点群の配置の中に、前記マーカパターンにもとづく特徴点の配置があるか否かを判断する照合手段と
を有する
マーカ生成検出システム。
 (付記14) 前記マーカパターンを一つ生成するのに用いる一又は二以上の特異特徴を使用特異特徴群とし、前記マーカパターンを複数種類生成するための複数の使用特異特徴群がそれぞれ異なる特異特徴の組み合わせで構成されており、前記特異特徴選択手段で選択された複数の特異特徴の中から前記使用特異特徴群を複数選ぶときに、前記マーカパターン生成手段は、前記所定の空間における前記特異特徴の座標にもとづいて、前記使用特異特徴群を構成する特異特徴に関する距離のデータを算出し、この距離のデータにもとづいて、前記マーカの生成に用いる使用特異特徴群を選択する
付記13に記載のマーカ生成検出システム。
 (付記15) 画像を入力する第一映像入力手段と、
 この第一映像入力手段で入力された前記画像から特徴点を抽出し、これらの抽出した特徴点を所定の空間に表す第一配置手段と、
 前記空間における前記特徴点が所定数以下の部分を特異特徴として選択する特異特徴選択手段と、
 前記特異特徴を用いてマーカパターンを複数種類生成するマーカ生成手段と、
 前記マーカパターンを記憶するマーカ記憶手段と、
 画像を入力する第二映像入力手段と、
 この第二映像入力手段で入力された前記画像にもとづいて特徴点を抽出し、この抽出した特徴点を所定の空間に表す第二配置手段と、
 前記所定の空間に表された特徴点群の配置の中に、前記マーカパターンに対応する特徴点の配置があるか否かを判断する照合手段と
を有するマーカ生成検出装置。
 (付記16) 前記マーカを一つ生成するのに用いる一又は二以上の特異特徴を使用特異特徴群とし、前記マーカパターンを複数種類生成するための複数の使用特異特徴群がそれぞれ異なる特異特徴の組み合わせで構成されており、前記特異特徴選択手段で選択された複数の特異特徴の中から前記使用特異特徴群を複数選ぶときに、前記マーカパターン生成手段は、前記所定の空間における前記特異特徴の座標にもとづいて、前記使用特異特徴群を構成する特異特徴に関する距離のデータを算出し、この距離のデータにもとづいて、前記マーカの生成に用いる使用特異特徴群を選択する
付記15に記載のマーカ生成検出装置。
 (付記17) 画像ごとに特徴点を抽出し、これらの抽出した特徴点を所定の空間に表し、この所定の空間において前記特徴点が所定数以下の部分を特異特徴として選択し、この選択された特異特徴を用いて複数種類生成された
マーカ。
 (付記18) 前記マーカを一つ生成するのに用いる一又は二以上の特異特徴を使用特異特徴群とし、前記マーカパターンを複数種類生成するための複数の使用特異特徴群がそれぞれ異なる特異特徴の組み合わせで構成されており、前記特異特徴選択手段で選択された複数の特異特徴の中から前記使用特異特徴群を複数選ぶときに、前記所定の空間における前記特異特徴の座標にもとづいて、前記使用特異特徴群を構成する特異特徴に関する距離のデータを算出し、この距離のデータにもとづいて、前記マーカの生成に用いる使用特異特徴群が選択された
付記17に記載のマーカ。
 (付記19) 画像を入力する工程と、
 前記画像から特徴点を抽出する工程と、
 前記特徴点を所定の空間に表す工程と、
 前記空間のうち前記特徴点が所定数以下の部分を特異特徴として複数選択する工程と、
 前記複数の特異特徴のうちの全部又は一部を用いてマーカパターンを複数種類生成する工程と
を有するマーカ生成方法。
 (付記20) 前記マーカを一つ生成するのに用いる一又は二以上の特異特徴を使用特異特徴群とし、前記マーカパターンを複数種類生成するための複数の使用特異特徴群がそれぞれ異なる特異特徴の組み合わせで構成されており、前記特異特徴選択手段で選択された複数の特異特徴の中から前記使用特異特徴群を複数選ぶときに、前記所定の空間における前記特異特徴の座標にもとづいて、前記使用特異特徴群を構成する特異特徴に関する距離のデータを算出する工程と、
 この距離のデータにもとづいて、前記マーカの生成に用いる使用特異特徴群を選択する工程と
を有する付記19に記載のマーカ生成方法。
 (付記21) 画像を入力する処理と、
 前記画像から特徴点を抽出する処理と、
 前記特徴点を所定の空間に表す処理と、
 前記空間のうち前記特徴点が所定数以下の部分を特異特徴として複数選択する処理と、
 前記複数の特異特徴のうちの全部又は一部を用いてマーカパターンを複数種類生成する処理と
を情報処理装置に実行させるマーカ生成プログラム。
 (付記22) 前記マーカを一つ生成するのに用いる一又は二以上の特異特徴を使用特異特徴群とし、前記マーカパターンを複数種類生成するための複数の使用特異特徴群がそれぞれ異なる特異特徴の組み合わせで構成されており、前記特異特徴選択手段で選択された複数の特異特徴の中から前記使用特異特徴群を複数選ぶときに、前記所定の空間における前記特異特徴の座標にもとづいて、前記使用特異特徴群を構成する特異特徴に関する距離のデータを算出する処理と、
 この距離のデータにもとづいて、前記マーカの生成に用いる使用特異特徴群を選択する処理と
を情報処理装置に実行させる付記21に記載のマーカ生成プログラム。
 本出願は、2009年7月23日に出願された日本出願特願2009-171838号を基礎とする優先権を主張し、その開示の全てをここに取り込む。
 本発明は、マーカの生成に関する発明であるため、マーカの生成を行なう装置や機器、さらには、物品管理、フィジカルセキュリティをはじめとする映像モニタリング、ロボットビジョン、複合現実感UI、コンテンツ生成応用といった用途に利用可能である。
 1a~1d マーカ生成装置
 10 特異特徴選択手段
 20 マーカパターン生成手段
 21 マーカパターン生成部
 22 マーカ記憶部
 23 マーカID設定部
 30 映像入力手段
 40 特徴抽出手段
 50 不変特徴変換手段
 
 

Claims (22)

  1.  画像から特徴点が抽出され、前記特徴点が所定の空間に表わされ、前記空間のうち前記特徴点が所定数以下の部分を特異特徴として複数選択する特異特徴選択手段と、
     前記複数の特異特徴のうちの全部又は一部を用いてマーカパターンを複数種類生成するマーカパターン生成手段と
    を有するマーカ生成装置。
  2.  前記マーカパターンを一つ生成するのに用いる一又は二以上の特異特徴を使用特異特徴群とし、前記マーカパターンを複数種類生成するための複数の使用特異特徴群がそれぞれ異なる特異特徴の組み合わせで構成されており、前記特異特徴選択手段で選択された複数の特異特徴の中から前記使用特異特徴群を複数選ぶときに、前記マーカパターン生成手段は、前記所定の空間における前記特異特徴の座標にもとづいて、前記使用特異特徴群を構成する特異特徴に関する距離のデータを算出し、この距離のデータにもとづいて、前記マーカの生成に用いる使用特異特徴群を選択する
    請求項1に記載のマーカ生成装置。
  3.  前記マーカパターン生成手段は、一の前記使用特異特徴群を構成する複数の特異特徴の各間の距離の総和が大きくなるように、当該複数の特異特徴を選択する
    請求項2記載のマーカ生成装置。
  4.  前記マーカパターン生成手段は、一の前記使用特異特徴群を構成する複数の特異特徴と、他の使用特異特徴群を構成する複数の特異特徴との各間の距離の総和が大きくなるように、一の前記使用特異特徴群を構成する複数の特異特徴と、他の使用特異特徴群を構成する複数の特異特徴を選択する
    請求項2に記載のマーカ生成装置。
  5.  前記マーカパターン生成手段は、
     一の前記使用特異特徴群に含まれる一の特異特徴と、他の使用特異特徴群に含まれる一の特異特徴とを重ね合わせ、前記一の使用特異特徴群において重なっていない一又は二以上の特異特徴と前記他の使用特異特徴群において重なっていない一又は二以上の特異特徴との各間の距離の総和を算出する処理を、前記一の使用特異特徴群を構成する複数の特異特徴のそれぞれに前記他の使用特異特徴群を構成する複数の特異特徴のそれぞれを重ね合わせるたびに実行し、この実行により算出した複数の総和のうち最も小さい総和を形状近似値とし、
     この形状近似値が大きい値となるように、前記一の使用特異特徴群を構成する一又は二以上の特異特徴と前記他の使用特異特徴群を構成する一又は二以上の特異特徴を、前記特異特徴選択手段で選択された複数の特異特徴の中から選択する
    請求項2に記載のマーカ生成装置。
  6.  前記マーカパターン生成手段で選択された複数の使用特異特徴群のうちの二以上の使用特異特徴群を、複数の物体のいずれかに対応付けるマーカ設定手段を有する請求項1から請求項5のいずれかに記載のマーカ生成装置。
  7.  前記マーカ設定手段は、所定の距離算出処理にしたがって算出された前記使用特異特徴群に関する距離が遠くなるように、前記複数の物体に対応する使用特異特徴群を選択する
    請求項6に記載のマーカ生成装置。
  8.  前記所定の距離算出処理により算出される距離が、レーベンシュタイン距離であり、
     前記マーカ設定手段は、前記複数の使用特異特徴群の各間のレーベンシュタイン距離を算出するとともに、この算出したレーベンシュタイン距離が遠くなるように、前記複数の物体に対応する使用特異特徴群を選択する
    請求項7に記載のマーカ生成装置。
  9.  前記所定の距離算出処理により算出される距離が、所定の空間におけるユークリッド距離であり、
     前記マーカ設定手段は、前記複数の使用特異特徴群の各間のユークリッド距離を算出するとともに、この算出したユークリッド距離が遠くなるように、前記複数の物体に対応する使用特異特徴群を選択する
    請求項7に記載のマーカ生成装置。
  10.  前記所定の距離算出処理により算出される距離が、二つの使用特異特徴群の各特異特徴間の距離の総和であり、
     前記マーカ設定手段は、前記複数の使用特異特徴群について二つの使用特異特徴群の各特異特徴間の距離の総和を算出するとともに、この算出した総和が大きくなるように、前記複数の物体に対応する使用特異特徴群を選択する
    請求項7に記載のマーカ生成装置。
  11.  前記所定の距離算出処理により算出される距離が、二つの使用特異特徴群の間の形状近似値であり、
     前記マーカ設定手段は、前記複数の使用特異特徴群について二つの使用特異特徴群の間の形状近似値を算出するとともに、この算出した形状近似値が大きくなるように、前記複数の物体に対応する使用特異特徴群を選択する
    請求項7に記載のマーカ生成装置。
  12.  前記複数の物体が、二以上の種類で分類でき、
     前記二以上の種類のうちの少なくとも一つの種類が、さらに下位レベルの種類で分類でき、
     前記マーカ設定手段は、上位レベルの種類ごとに距離の遠い使用特異特徴群を対応付け、下位レベルの種類ごとに距離の近い使用特異特徴群を対応付ける
    請求項6から請求項11のいずれかに記載のマーカ生成装置。
  13.  マーカ生成装置とマーカ検出装置とを備え、
     前記マーカ生成装置は、
     画像を入力する第一映像入力手段と、
     この第一映像入力手段で入力された前記画像から特徴点を抽出し、これらの抽出した特徴点を所定の空間に表す第一配置手段と、
     前記空間における前記特徴点が所定数以下の部分を特異特徴として選択する特異特徴選択手段と、
     前記特異特徴を用いてマーカパターンを複数種類生成するマーカ生成手段と
    を有し、
     前記マーカ検出装置は、
     複数種類の前記マーカパターンを記憶するマーカ記憶手段と、
     画像を入力する第二映像入力手段と、
     この第二映像入力手段で入力された前記画像にもとづいて特徴点を抽出し、この抽出した特徴点を所定の空間に表す第二配置手段と、
     前記所定の空間に表された特徴点群の配置の中に、前記マーカパターンにもとづく特徴点の配置があるか否かを判断する照合手段と
    を有する
    マーカ生成検出システム。
  14.  前記マーカパターンを一つ生成するのに用いる一又は二以上の特異特徴を使用特異特徴群とし、前記マーカパターンを複数種類生成するための複数の使用特異特徴群がそれぞれ異なる特異特徴の組み合わせで構成されており、前記特異特徴選択手段で選択された複数の特異特徴の中から前記使用特異特徴群を複数選ぶときに、前記マーカパターン生成手段は、前記所定の空間における前記特異特徴の座標にもとづいて、前記使用特異特徴群を構成する特異特徴に関する距離のデータを算出し、この距離のデータにもとづいて、前記マーカの生成に用いる使用特異特徴群を選択する
    請求項13に記載のマーカ生成検出システム。
  15.  画像を入力する第一映像入力手段と、
     この第一映像入力手段で入力された前記画像から特徴点を抽出し、これらの抽出した特徴点を所定の空間に表す第一配置手段と、
     前記空間における前記特徴点が所定数以下の部分を特異特徴として選択する特異特徴選択手段と、
     前記特異特徴を用いてマーカパターンを複数種類生成するマーカ生成手段と、
     前記マーカパターンを記憶するマーカ記憶手段と、
     画像を入力する第二映像入力手段と、
     この第二映像入力手段で入力された前記画像にもとづいて特徴点を抽出し、この抽出した特徴点を所定の空間に表す第二配置手段と、
     前記所定の空間に表された特徴点群の配置の中に、前記マーカパターンに対応する特徴点の配置があるか否かを判断する照合手段と
    を有するマーカ生成検出装置。
  16.  前記マーカを一つ生成するのに用いる一又は二以上の特異特徴を使用特異特徴群とし、前記マーカパターンを複数種類生成するための複数の使用特異特徴群がそれぞれ異なる特異特徴の組み合わせで構成されており、前記特異特徴選択手段で選択された複数の特異特徴の中から前記使用特異特徴群を複数選ぶときに、前記マーカパターン生成手段は、前記所定の空間における前記特異特徴の座標にもとづいて、前記使用特異特徴群を構成する特異特徴に関する距離のデータを算出し、この距離のデータにもとづいて、前記マーカの生成に用いる使用特異特徴群を選択する
    請求項15に記載のマーカ生成検出装置。
  17.  画像ごとに特徴点を抽出し、これらの抽出した特徴点を所定の空間に表し、この所定の空間において前記特徴点が所定数以下の部分を特異特徴として選択し、この選択された特異特徴を用いて複数種類生成された
    マーカ。
  18.  前記マーカを一つ生成するのに用いる一又は二以上の特異特徴を使用特異特徴群とし、前記マーカパターンを複数種類生成するための複数の使用特異特徴群がそれぞれ異なる特異特徴の組み合わせで構成されており、前記特異特徴選択手段で選択された複数の特異特徴の中から前記使用特異特徴群を複数選ぶときに、前記所定の空間における前記特異特徴の座標にもとづいて、前記使用特異特徴群を構成する特異特徴に関する距離のデータを算出し、この距離のデータにもとづいて、前記マーカの生成に用いる使用特異特徴群が選択された
    請求項17に記載のマーカ。
  19.  画像を入力する工程と、
     前記画像から特徴点を抽出する工程と、
     前記特徴点を所定の空間に表す工程と、
     前記空間のうち前記特徴点が所定数以下の部分を特異特徴として複数選択する工程と、
     前記複数の特異特徴のうちの全部又は一部を用いてマーカパターンを複数種類生成する工程と
    を有するマーカ生成方法。
  20.  前記マーカを一つ生成するのに用いる一又は二以上の特異特徴を使用特異特徴群とし、前記マーカパターンを複数種類生成するための複数の使用特異特徴群がそれぞれ異なる特異特徴の組み合わせで構成されており、前記特異特徴選択手段で選択された複数の特異特徴の中から前記使用特異特徴群を複数選ぶときに、前記所定の空間における前記特異特徴の座標にもとづいて、前記使用特異特徴群を構成する特異特徴に関する距離のデータを算出する工程と、
     この距離のデータにもとづいて、前記マーカの生成に用いる使用特異特徴群を選択する工程と
    を有する請求項19に記載のマーカ生成方法。
  21.  画像を入力する処理と、
     前記画像から特徴点を抽出する処理と、
     前記特徴点を所定の空間に表す処理と、
     前記空間のうち前記特徴点が所定数以下の部分を特異特徴として複数選択する処理と、
     前記複数の特異特徴のうちの全部又は一部を用いてマーカパターンを複数種類生成する処理と
    を情報処理装置に実行させるマーカ生成プログラム。
  22.  前記マーカを一つ生成するのに用いる一又は二以上の特異特徴を使用特異特徴群とし、前記マーカパターンを複数種類生成するための複数の使用特異特徴群がそれぞれ異なる特異特徴の組み合わせで構成されており、前記特異特徴選択手段で選択された複数の特異特徴の中から前記使用特異特徴群を複数選ぶときに、前記所定の空間における前記特異特徴の座標にもとづいて、前記使用特異特徴群を構成する特異特徴に関する距離のデータを算出する処理と、
     この距離のデータにもとづいて、前記マーカの生成に用いる使用特異特徴群を選択する処理と
    を情報処理装置に実行させる請求項21に記載のマーカ生成プログラム。
     
     
PCT/JP2010/062378 2009-07-23 2010-07-22 マーカ生成装置、マーカ生成検出システム、マーカ生成検出装置、マーカ、マーカ生成方法及びプログラム WO2011010703A1 (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
EP10802323.5A EP2458557A4 (en) 2009-07-23 2010-07-22 Marker generation device, marker generation detection system, marker generation detection device, marker, marker generation method, and program
US13/386,294 US8705864B2 (en) 2009-07-23 2010-07-22 Marker generation device, marker generation detection system, marker generation detection device, marker, marker generation method, and program
CN201080032774.2A CN102473313B (zh) 2009-07-23 2010-07-22 标记生成装置、标记生成检测系统、标记生成检测装置、标记生成方法
JP2011523692A JP5700219B2 (ja) 2009-07-23 2010-07-22 マーカ生成装置、マーカ生成検出システム、マーカ生成検出装置、マーカ、マーカ生成方法及びプログラム

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2009-171838 2009-07-23
JP2009171838 2009-07-23

Publications (1)

Publication Number Publication Date
WO2011010703A1 true WO2011010703A1 (ja) 2011-01-27

Family

ID=43499175

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2010/062378 WO2011010703A1 (ja) 2009-07-23 2010-07-22 マーカ生成装置、マーカ生成検出システム、マーカ生成検出装置、マーカ、マーカ生成方法及びプログラム

Country Status (5)

Country Link
US (1) US8705864B2 (ja)
EP (1) EP2458557A4 (ja)
JP (1) JP5700219B2 (ja)
CN (1) CN102473313B (ja)
WO (1) WO2011010703A1 (ja)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012234258A (ja) * 2011-04-28 2012-11-29 Sony Corp 画像処理装置と画像処理方法およびプログラム
US20130324857A1 (en) * 2012-05-31 2013-12-05 The Regents Of The University Of California Automated system for workspace, range of motion and functional analysis
TWI512642B (zh) * 2013-01-25 2015-12-11 Delta Electronics Inc 快速圖形比對方法
KR20150049535A (ko) * 2013-10-30 2015-05-08 삼성전자주식회사 전자장치 및 그 이용방법
JP6090292B2 (ja) * 2014-12-02 2017-03-08 トヨタ自動車株式会社 マーカ生成装置、マーカ認識装置、及びプログラム
CN106570551B (zh) * 2016-11-11 2020-01-03 努比亚技术有限公司 一种物品打标和管理系统、装置及方法
EP3729239A1 (en) * 2017-12-22 2020-10-28 SR Labs S.R.L. Mapping method and system for mapping a real environment
US10847048B2 (en) * 2018-02-23 2020-11-24 Frontis Corp. Server, method and wearable device for supporting maintenance of military apparatus based on augmented reality using correlation rule mining

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2008090908A1 (ja) 2007-01-23 2008-07-31 Nec Corporation マーカ生成及びマーカ検出のシステム、方法とプログラム
JP2009171838A (ja) 2008-01-18 2009-07-30 Power Integrations Inc Pfcコンバータの制御方法およびpfcコンバータ用制御装置

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5412487A (en) * 1991-11-27 1995-05-02 Hitachi, Ltd. Video camera and apparatus for extracting an object
CN100375108C (zh) * 2006-03-02 2008-03-12 复旦大学 一种人脸特征点自动定位方法

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2008090908A1 (ja) 2007-01-23 2008-07-31 Nec Corporation マーカ生成及びマーカ検出のシステム、方法とプログラム
JP2009171838A (ja) 2008-01-18 2009-07-30 Power Integrations Inc Pfcコンバータの制御方法およびpfcコンバータ用制御装置

Non-Patent Citations (7)

* Cited by examiner, † Cited by third party
Title
"An Algorithm for Finding Maximal Whitespace Rectangles at Arbitrary Orientations for Document Layout Analysis", PROCEEDINGS OF THE INTERNATIONAL CONFERENCE ON DOCUMENT ANALYSIS AND RECOGNITION, 2003
CHI-MAN PUN; MOON-CHUEN LEE: "Log-Polar Wavelet Energy Signatures for Rotation and Scale Invariant Texture Classification", IEEE TRANSACTIONS ON PATTERN ANALYSIS AND MACHINE INTELLIGENCE, vol. 25, no. 5, May 2003 (2003-05-01), XP001185034, DOI: doi:10.1109/TPAMI.2003.1195993
GRAHAM D. FINLAYSON; STEVEN D. HORDLEY; CHENG LU; MARK S. DREW: "On the Removal of Shadows from Images", IEEE TRANSACTIONS ON PATTERN ANALYSIS AND MACHINE INTELLIGENCE, vol. 28, no. 1, January 2006 (2006-01-01), pages 59 - 68
MONTANARI, COMMUNICATIONS OF ACM, 1971, pages 14
ROBBY T. TAN; KATSUSHI IKEUCHI: "Separating Reflection Components of Textured Surfaces Using a Single Image", IEEE TRANSACTIONS ON PATTERN ANALYSIS AND MACHINE INTELLIGENCE, vol. 27, no. 2, February 2005 (2005-02-01), pages 178 - 193
See also references of EP2458557A4
T. TOMMASINI ET AL.: "Making good features track better", PROCEEDINGS OF IEEE INTERNATIONAL CONFERENCE ON COMPUTER VISION AND PATTERN RECOGNITION, 1998

Also Published As

Publication number Publication date
CN102473313A (zh) 2012-05-23
JP5700219B2 (ja) 2015-04-15
JPWO2011010703A1 (ja) 2013-01-07
EP2458557A4 (en) 2018-05-23
US20120269446A1 (en) 2012-10-25
EP2458557A1 (en) 2012-05-30
US8705864B2 (en) 2014-04-22
CN102473313B (zh) 2014-08-13

Similar Documents

Publication Publication Date Title
JP5700219B2 (ja) マーカ生成装置、マーカ生成検出システム、マーカ生成検出装置、マーカ、マーカ生成方法及びプログラム
JP4868186B2 (ja) マーカ生成及びマーカ検出のシステム、方法とプログラム
JP6143111B2 (ja) 物体識別装置、物体識別方法、及びプログラム
JP6278276B2 (ja) 物体識別装置、物体識別方法、及びプログラム
JP2002081922A (ja) 画像処理装置および画像処理方法、並びにプログラム
JP2006252162A (ja) パターン認識装置及びその方法
JP5700221B2 (ja) マーカ判定装置、マーカ判定検出システム、マーカ判定検出装置、マーカ、マーカ判定方法及びそのプログラム
JP5700220B2 (ja) マーカ生成装置、マーカ生成検出システム、マーカ生成検出装置、マーカ、マーカ生成方法及びそのプログラム
JP5794427B2 (ja) マーカ生成装置、マーカ生成検出システム、マーカ生成検出装置、マーカ、マーカ生成方法及びそのプログラム
JP2011237296A (ja) 3次元形状計測方法、3次元形状計測装置、及びプログラム
JP2018048890A (ja) 姿勢推定システム、姿勢推定装置、及び距離画像カメラ
JP5347798B2 (ja) 物体検出装置、物体検出方法及び物体検出プログラム
JP5272944B2 (ja) マーカ検出装置、マーカ生成検出システム、マーカ生成検出装置、マーカ検出方法及びマーカ検出プログラム
JP2009540434A (ja) 自己相似性のある画像取込システム
JP2011028420A (ja) マーカ生成装置、マーカ生成検出システム、マーカ生成検出装置、マーカ、マーカ生成方法及びプログラム
CN112955903A (zh) 代码读取系统以及代码读取装置

Legal Events

Date Code Title Description
WWE Wipo information: entry into national phase

Ref document number: 201080032774.2

Country of ref document: CN

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

Ref document number: 10802323

Country of ref document: EP

Kind code of ref document: A1

WWE Wipo information: entry into national phase

Ref document number: 2011523692

Country of ref document: JP

WWE Wipo information: entry into national phase

Ref document number: 13386294

Country of ref document: US

NENP Non-entry into the national phase

Ref country code: DE

WWE Wipo information: entry into national phase

Ref document number: 2010802323

Country of ref document: EP