WO2019107164A1 - 画像処理装置、移動ロボットの制御システム、移動ロボットの制御方法 - Google Patents

画像処理装置、移動ロボットの制御システム、移動ロボットの制御方法 Download PDF

Info

Publication number
WO2019107164A1
WO2019107164A1 PCT/JP2018/042224 JP2018042224W WO2019107164A1 WO 2019107164 A1 WO2019107164 A1 WO 2019107164A1 JP 2018042224 W JP2018042224 W JP 2018042224W WO 2019107164 A1 WO2019107164 A1 WO 2019107164A1
Authority
WO
WIPO (PCT)
Prior art keywords
unit
detection
marker
mobile robot
detected
Prior art date
Application number
PCT/JP2018/042224
Other languages
English (en)
French (fr)
Inventor
北野 斉
翼 臼井
Original Assignee
Thk株式会社
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Priority claimed from JP2018074860A external-priority patent/JP2019102047A/ja
Application filed by Thk株式会社 filed Critical Thk株式会社
Priority to DE112018006048.9T priority Critical patent/DE112018006048T5/de
Priority to CN201880077035.1A priority patent/CN111417911B/zh
Priority to US16/767,441 priority patent/US20200401158A1/en
Publication of WO2019107164A1 publication Critical patent/WO2019107164A1/ja

Links

Images

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course or altitude of land, water, air, or space vehicles, e.g. automatic pilot
    • G05D1/02Control of position or course in two dimensions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K7/00Methods or arrangements for sensing record carriers, e.g. for reading patterns
    • G06K7/10Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K7/00Methods or arrangements for sensing record carriers, e.g. for reading patterns
    • G06K7/10Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation
    • G06K7/14Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation using light without selection of wavelength, e.g. sensing reflected white light
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/70Determining position or orientation of objects or cameras

Definitions

  • the present invention relates to an image processing apparatus, a control system of a mobile robot, and a control method of a mobile robot.
  • a transmitter such as a beacon is used to guide a mobile robot that moves autonomously.
  • a cleaning robot as a mobile robot moves toward a charger and receives power supply from the charger based on a signal emitted from a beacon provided in the charger.
  • a mobile work robot described in Patent Document 1 below detects a reference position based on a signal emitted from a beacon and controls movement.
  • Such mobile robots have recently expanded their application range.
  • unmanned transport vehicles used in factories and distribution warehouses and service robots in public facilities such as facilities, halls, and airports are examples of mobile robot utilization.
  • the beacons used in this type of mobile robot are broadly classified into those identified by a characteristic shape or pattern called a marker, in addition to those emitting signals as described above.
  • a characteristic shape or pattern a marker
  • a barcode, a QR code (registered trademark) and the like can be mentioned.
  • the present invention has been made in view of the problems existing in the above-described prior art, and its object is to identify even a relatively compact marker which does not require a wide installation place. It is an object of the present invention to provide an image processing apparatus, a control system of a mobile robot, and a control method of a mobile robot, which can accurately measure distance and can realize a system at low cost. Further, a further object of the present invention is an image processing apparatus, a control system of a mobile robot, and a control method of a mobile robot, which can realize a system inexpensively even when a beacon transmitting a signal is used. It is to provide.
  • the image processing apparatus is a cell having a square or a rectangle on a two-dimensional plane, and a first cell capable of reflecting the irradiated light and a second cell not capable of reflecting the irradiated light.
  • a detection unit including: a calculation unit configured to acquire information set to the detected object based on the imaged image data.
  • a control system for a mobile robot comprises a drive unit for changing the moving speed and the traveling direction of the mobile robot, and a detection unit for detecting a plurality of objects to be detected arranged along the movement route to the target point.
  • the distance and direction to the detected body detected by the detection unit are acquired, and the direction of movement satisfying the predetermined relationship between the distance and the direction to the detected body is calculated, and the calculated traveling direction
  • a control unit that drives and controls the drive unit based on the target unit, and the detection target is a cell having a square or a rectangle on a two-dimensional plane, and a first cell capable of reflecting the irradiated light.
  • the detection unit is an irradiation unit that emits light, and the irradiation unit Light emitted from the light source is emitted to the first cell and the second cell that constitute the marker, and then the imaging unit captures an image of the light reflected from the first cell with a camera; And a calculation unit that calculates a distance and a direction to the marker based on the imaging data.
  • a control method of a mobile robot includes a drive unit that changes the moving speed and the traveling direction of the mobile robot, a detection unit that detects a plurality of objects to be detected arranged along a movement route to a target point
  • a detection unit configured to emit light to the first cell and the second cell that constitute the marker.
  • the light reflected from the first cell with a camera A control method of a mobile robot, comprising: an image unit; and a calculation unit that calculates a distance and a direction to the marker based on imaging data imaged by the imaging unit, wherein the control unit A traveling direction in which a distance to a body and a direction satisfy a predetermined relationship is calculated, and drive control of the drive unit is performed based on the calculated traveling direction.
  • a processing device, a control system of a mobile robot, and a control method of a mobile robot can be provided. Also, according to the present invention, the system can be realized at low cost even when using a beacon that transmits a signal.
  • FIG. 1 is a block diagram showing an example of a system configuration of an image processing apparatus according to the present embodiment.
  • FIG. 2 shows a binarized image obtained by binarizing imaging data of a marker captured by the image processing apparatus according to the present embodiment, and scanning the binarized image to set the marker as a marker It is a figure for demonstrating the scanning method for obtaining the acquired ID information.
  • FIG. 3 is a flowchart showing an image processing process for explaining the operation of the image processing apparatus according to the present embodiment.
  • FIG. 4 is a view showing an example of various forms which the marker according to the present invention can take.
  • FIG. 5 is a view showing an example of movement of the mobile robot according to the present embodiment.
  • FIG. 1 is a block diagram showing an example of a system configuration of an image processing apparatus according to the present embodiment.
  • FIG. 2 shows a binarized image obtained by binarizing imaging data of a marker captured by the image processing apparatus according to the present embodiment, and scanning the binarized image to set the marker as
  • FIG. 6 is a block diagram showing a configuration example of a mobile robot according to the present embodiment.
  • FIG. 7 is a block diagram showing a configuration example of a control unit according to the present embodiment.
  • FIG. 8 is a diagram showing an example of a table stored in the movement path storage unit according to the present embodiment.
  • FIG. 9 is a block diagram showing a configuration example related to control based on marker information in the drive control unit according to the present embodiment.
  • FIG. 10 is a diagram showing the correction angle ⁇ calculated by the drive control unit according to the present embodiment.
  • FIG. 11 is a flowchart showing the contents of control processing by the control unit according to the present embodiment.
  • FIG. 12 is a view showing an example of the arrangement of markers in the case where an intersection exists in the passage where the mobile robot moves.
  • FIG. 12 is a view showing an example of the arrangement of markers in the case where an intersection exists in the passage where the mobile robot moves.
  • FIG. 13 is a view showing an example of the arrangement of markers in the case where an intersection exists in the passage where the mobile robot moves.
  • FIG. 14 is a view showing a configuration example of a control system of a mobile robot according to the present invention when all pieces of command information are given to a marker.
  • FIG. 15 is a view showing a specific example of the marker used in the modified embodiment.
  • FIG. 16 is a diagram showing an example of a table stored in the movement path storage unit according to the modification.
  • FIG. 17 is a view showing an example in which a marker used in the modified embodiment is arranged in a path in which the mobile robot moves, and an operation example of a control system of the mobile robot according to the modified embodiment.
  • FIG. 18 is a diagram illustrating an example of imaging data captured by an imaging unit according to a modification.
  • FIG. 1 is a block diagram showing an example of the system configuration of the image processing apparatus according to the present embodiment.
  • FIG. 2 shows a binarized image obtained by binarizing the imaging data of the marker captured by the image processing apparatus according to the present embodiment, and scanning the binarized image to generate a marker. It is a figure for demonstrating the scanning method for acquiring the set ID information.
  • the image processing apparatus 10 acquires a desired information by reading a marker 11 as an object to be detected and the marker 11, and executes an image processing apparatus main body 21 that executes processing. And are configured.
  • the marker 11 is configured by arranging a plurality of square cells 12 on a two-dimensional plane.
  • the plurality of cells 12 are constituted of, for example, a white cell 12a as a first cell capable of reflecting infrared LED light, and a black cell 12b as a second cell not capable of reflecting infrared LED light.
  • 14 white cells 12a and 26 black cells 12b are arranged in a two-dimensional plane in a matrix arrangement of 5 columns and 8 rows.
  • the 22 black cells 12b arranged so as to surround the outer peripheral portion of the marker 11 do not contain information, and the marker 11 and space are divided to prevent false recognition of reading.
  • the portion functioning as the detection target is constituted by the matrix arrangement of 18 cells 12 of 3 columns and 6 rows consisting of 3 columns shown by the code A and 6 rows shown the code B Part of the
  • Portion configured as a matrix arrangement of 3 rows 6 rows that functions as the detection object for example portions indicated by symbol B 1 located in the first line of the uppermost stage is configured as a "detection start position" in the marker 11, the outermost portion indicated by reference numeral B 3 located line 6 in the lower part is configured as a “detection end position", 4 from these detection start position B 1 and the second row which is sandwiched by the detection end position B 3 to line 5 portion indicated by configured code B 2 in the line is configured as "ID information assigning position".
  • the cells 12 are arranged in the order of “white, black, white” from the left side to the right side of FIG.
  • black is represented by a binary code that "0 (zero)"
  • it can be represented as "1, 0, 1”.
  • the image processing apparatus main body 21 recognizes the information of “1, 0, 1”, it can be recognized that the first line and the last line of the marker 11 are successfully read. That is, by recognizing the detection start position B 1 and the detection end position B 3 indicated by “ 1, 0 , 1 ”, it is possible to accurately recognize the ID information provision position B 2 of four lines that may exist between them. It becomes.
  • the ID information assigned position B 2 of the four rows towards the line below the top row “white, black, white”, “white, white, white”, “white, black, white”, “white
  • the cells 12 are arranged in the order of "white, white”, and these can be expressed as binary codes "1, 0, 1", “1, 1, 1", “1, 0, 1", “1,” It can be shown as "1, 1".
  • the reading of the detection start position B 1 and the detection end position B 3 succeeds, and the ID information addition position B 2 existing between them is read to obtain ID information without erroneous recognition. Is possible.
  • the white cell 12a reflects infrared LED light irradiated from the irradiation part 23 mentioned later among several cells 12, and the material which can make the image pickup parts 24 and 25 which are mentioned later image the reflected light It is composed of As a material that reflects infrared LED light, a thin film of aluminum foil, titanium oxide, or the like is used.
  • the black cell 12b does not reflect the infrared LED light emitted from the irradiation unit 23, which will be described later, so that the black cell 12b becomes a dark portion in the image captured by the imaging units 24, 25 described later.
  • the material is made of As a material which does not reflect infrared LED light, an infrared cut film, a polarizing film, an infrared absorber, a black felt, etc. are used. That is, in the present embodiment, the infrared LED light emitted from the irradiation unit 23 as the light projection unit is reflected by the white cell 12 a of the marker 11 and received by the imaging unit 24 or 25 as the light receiving unit to capture an image. Do. At this time, in the black cell 12b of the marker 11 which is a detection object, the reflected light to the imaging units 24 and 25 which are light receiving portions is reduced, so a so-called regressive reflection image acquisition that catches and detects the decrease The configuration is adopted.
  • the image processing apparatus main body 21 is configured to include a marker detection unit 22 and a control unit 27. Furthermore, the marker detection unit 22 includes an irradiation unit 23, two imaging units 24 and 25, and a calculation unit 26.
  • the irradiation unit 23 can irradiate infrared LED light to the marker 11, and is used to cause the two imaging units 24 and 25 to read the reflected light reflected from the marker 11 side.
  • the infrared LED light emitted from the irradiation unit 23 can capture the marker 11 even in a dark place such as in a factory or a place where visible light is strong.
  • the two imaging units 24 and 25 are configured by two cameras disposed on the left and right of the marker detection unit 22. After the infrared LED light emitted from the irradiation unit 23 is irradiated to the white cell 12 a and the black cell 12 b that constitute the marker 11, these two imaging units 24 and 25 receive the light reflected from the white cell 12 a as 2 Capture with one camera. In each of the two imaging units 24 and 25, a single image is captured, and imaging data acquired using the two imaging units 24 and 25 is transmitted to the calculation unit 26.
  • the calculation unit 26 performs calculation by triangulation based on the imaging data transmitted from the two imaging units 24 and 25 so that the distance (relative distance) and direction of the marker 11 with respect to the image processing apparatus main body 21 It is possible to calculate whether it is located at (relative angle).
  • the calculation unit 26 acquires the imaging data imaged by the two imaging units 24 and 25 from the two imaging units 24 and 25, and then binarizes the acquired imaging data to obtain the image 2 shown in FIG. Get a valued image.
  • the reflected light of the infrared LED light reflected from the white cell 12a and the portion not reflected from the black cell 12b are clarified by the black and white binarization process. .
  • the calculation unit 26 scans the binarized image obtained by the binarization processing in the horizontal direction from the upper left side to the right side in FIG. State of the scan to be executed first is shown as a code Y 1.
  • the Y 1 is the first scan
  • only the black cells 12b is detected
  • the recognition result is the detection result of only "0" represented by "black”
  • the binary code since it can be recognized that the detection start position B 1 could not be detected in the first scan, a position indicated as a code Y 2 subsequently moved downward in the binarized image by a preset dimension And the second scan is performed.
  • the scanning is continued according to the above-described procedure, and when the nth scanning Y n is performed, the white cell 12a is detected for the first time, and the recognition result becomes “white, black, white”. Information "1, 0, 1" expressed in binary code is obtained.
  • the calculation unit 26 and thus was able to recognize the detection of the detection start position B 1.
  • the calculation unit 26 can calculate the dimension on the binarized image in the cell 12 recognized as “white, black, white”. For example, as shown in FIG. 2, it can be confirmed that all the dimensions on the binarized image of the cell 12 that can be recognized as “white, black, white” are L.
  • the dimensions of the white cells 12 a and the black cells 12 b constituting the marker 11 according to this embodiment are squares of L ⁇ L. It can be recognized that
  • the detection start position B 1 calculation unit 26 recognizes the detection of the by performing a Y n is the n-th scan, when performing Y n + 1 is the (n + 1) th scanning is first the n times The scan Y n + 1 is executed at the position of Y n + L which is moved downward by the size L from the scan position of the binarized image.
  • calculation unit 26 recognizes the detection start position B 1 in the n-th scan, then the position of the first line of the ID information assigned position B 2 in four rows a portion to be scanned, binarization can be recognized by calculating the coordinates on the image, by performing a scan of once it moves the scanning position to the position, the scanning of the first row of the ID information assigned position B 2 in four rows Y It is possible to execute n + 1 .
  • the lower side of the binarized image is a dimension (L + s) obtained by adding a slight dimension s to the dimension L from the n-th scan position in order to provide an allowance for the scan position.
  • the scan Y n + 1 may be executed at the position of Y n + (L + s) moved to. Adopting such control makes it possible to improve the scanning accuracy.
  • n + 4 th Y n + 4 is a scanning of the scanning at the position of the n-th Y n + L ⁇ 4 that has moved to the lower side of the size 4L only binarized image from the scanning position of Y n + 4 Run.
  • the cells 12 are arranged in the order of “white,” and these can be expressed as binary codes “1, 0, 1”, “1, 1, 1”, “1, 0, 1”, “1, 1, It can be shown as “1”.
  • the calculation unit 26, a fifth scanning from the scanning Y n + 5 detects the detection start position B 1, it is known in advance that position is detected end position B 3.
  • the information detected in this scan Y n + 5 is “1, 0, 1”, and this information matches the information indicating the detection end position B 3 , so the scan from Y 1 to Y n + 5 is normal It can be recognized that it was executed and finished.
  • the calculation unit 26 can accurately acquire the ID information set in the marker 11.
  • the operation procedure described above for example, when the detection start position B 1 and the detection end position B 3 could not be acquired, or lacked imaging data transmitted from the two imaging units 24 and 25 partially unsaturated Since there is a possibility of completeness, an operation procedure for acquiring imaging data from the two imaging units 24 and 25 again is executed again.
  • the calculation unit 26 is to execute processing such as selecting the marker 11 to be adopted at this time based on the acquired ID information. Good.
  • the n th time for each scan in order to provide a margin for the scanning position.
  • Execute scan Y n + 2 at the position of Y n + L x 2 + s moved downward from the scan position to the binarized image execute scan Y n + 3 at the position of Y n + L x 3 + s, position Y n + L x 4 + s in run scan Y n + 4, may be executed scanning Y n + 5 at the position of Y n + L ⁇ 5 + s .
  • the scanning procedure after recognizing the detected start position B 1, scans up to 5 lines 2 of ID information assigned position B 2 in four rows, finally scanning the detection end position B 3
  • the order of scanning performed by the calculation unit 26 is not limited to the above.
  • the detection start position B 1 and in terms of reliably detected detection end position B 3 it may be from the second line of the ID information assigned position B 2 in four rows ID information is added to scan up to the fifth line.
  • 22 black cells 12 b containing no information are arranged so as to surround the outer peripheral portion of the marker 11.
  • the 22 black cells 12b arranged at the outer periphery function not only as a boundary with the 18 cells 12 but also with 3 columns and 6 rows of information arranged therein and absorb light from the outside. It also exerts a function of improving the detection accuracy of 18 cells 12 in 3 columns and 6 rows including information arranged inside.
  • the 22 black cells 12b arranged at the outer periphery absorb extra light, and three columns including information arranged inside It is possible to suppress extra light reflection and ingress to the six rows and eighteen cells 12. With this configuration, the detection and stabilization effect of the marker 11 by the image processing apparatus main body 21 can be obtained.
  • the calculation unit 26 that has acquired the ID information can transmit the information to the control unit 27.
  • the control unit 27 which has received the information transmitted from the calculation unit 26 operates various mechanisms added to the image processing apparatus main body 21 and executes operation commands to the outside, etc.
  • Various control using ID information It is possible to As an example of the operation, for example, it can be assumed to control the operation of a drive unit that changes the moving speed and the traveling direction of a mobile robot used in a factory or a distribution warehouse.
  • FIG. 3 is a flowchart showing an image processing process for explaining the operation of the image processing apparatus according to the present embodiment.
  • the irradiating unit 23 irradiates the infrared LED light to the marker 11 (step S101).
  • the infrared LED light irradiated to the marker 11 from the irradiation part 23 does not reflect the light irradiated to the black cell 12b among the cells 12 constituting the marker 11, and only the light irradiated to the white cell 12a.
  • the light reflected from the white cell 12 a is imaged by two imaging units 24 and 25 configured by two cameras (step S 102). At this time, each of the imaging units 24 and 25 images one piece of imaging data.
  • the two imaging data captured by the two imaging units 24 and 25 are transmitted to the calculation unit 26.
  • the calculation unit 26 acquires the imaging data imaged by the two imaging units 24 and 25 from the two imaging units 24 and 25, and then binarizes the acquired imaging data to obtain the image 2 shown in FIG. A valued image is obtained (step S103).
  • the calculation unit 26 executes the scan described using FIG. 2 on the binarized image obtained by the binarization processing (step S104).
  • the efficient scanning procedure performed by the calculation part 26 was mentioned above, description is abbreviate
  • step S105 When all of the detection start position B 1 , the ID information provision position B 2 having four lines, and the detection end position B 3 are normally recognized by the calculation unit 26 by scanning the binarized image by the calculation unit 26, the marker 11 is detected. The process proceeds to YES in step S105 because it has been detected. On the other hand, when the calculation unit 26 can not recognize even one of the detection start position B 1 , the ID information provision position B 2 having four lines, and the detection end position B 3 , the process proceeds to NO in step S105. That is, when the marker 11 can not be detected, the process returns to step S101 again to re-execute the process.
  • step S105 When the process proceeds to YES in step S105 was successful detection of the marker 11, then calculating unit 26 acquires the ID information based on the information from the ID information assigned position B 2 in four rows (step S106).
  • the calculation unit 26 that has acquired the ID information selects the marker 11 linked to the ID information by collating with the set ID, and determines one piece of ID information (step S107). At this time, when there are a plurality of pieces of acquired ID information, one of the plurality of pieces of ID information is selected by selecting the marker 11 linked to the ID information to be adopted at the time of proceeding the process of step S107.
  • the ID information is to be determined (step S107). As a method of selecting one of the ID information from the ID information there are a plurality of, for example, it is set to the ID information assigned position B 2 of the marker 11 with the smallest number of the identification number assigned to each marker 11 There is a conceivable method of selecting the ID information.
  • step S107 When the ID 11 is collated in the process of step S107 and the marker 11 linked to the ID information is selected, the left and right two imaging data obtained by imaging the marker 11 by the two imaging units 24 and 25 are used. The central coordinates of the marker 11 are calculated (step S108).
  • step S108 Using the center coordinates of the marker 11 calculated for each of the two left and right imaging data in the process of step S108, the calculation unit 26 executes a calculation based on triangulation to obtain the ID information and the distance to the marker 11 The angle is calculated (step S109). Furthermore, the calculation unit 26 transmits the calculation result of the distance and angle between the acquired ID information and the marker 11 calculated based on the ID information to the control unit 27 (step S110). The processing from step S101 to step S110 is performed to complete the image processing step (Process ⁇ ) according to the present embodiment.
  • the calculation unit 26 can accurately acquire the ID information set in the marker 11.
  • the markers 11 are arranged on a two-dimensional plane in a matrix arrangement of 14 white cells 12 a and 26 black cells 12 b in 5 rows and 8 rows. It was Further, although 22 black cells 12 b arranged to surround the outer peripheral portion of the marker 11 are provided in the marker 11, the 22 black cells 12 b do not include information, and the marker 11 and the space are not provided. It is a part that functions as a boundary for dividing and preventing false recognition of readings. That is, in the marker 11 shown in FIG.
  • the portion functioning as the detection target is constituted by the matrix arrangement of 18 cells 12 of 3 columns and 6 rows consisting of 3 columns shown by the code A and 6 rows shown the code B Part of the
  • the form of the marker according to the present invention is not limited to that shown in FIG. 1, and any change can be made.
  • the 22 black cells 12 b arranged to surround the outer periphery of the marker 11 can be omitted.
  • any form is adopted, for example, a matrix arrangement of three columns and three rows and nine cells 12 as illustrated in FIG. can do. Incidentally, FIG.
  • ID information applying position B 2 is a single line, 3 bits It is possible to provide the configuration information to the marker 11 '.
  • the cell 12 configuring the marker 11 is configured as a square, but for the cell of the present invention, a rectangular shape such as a rectangle is adopted. It is possible. If the cell shape is known in advance, the processes such as scanning and calculation described in the above-described embodiment can be similarly implemented.
  • the marker as the detection target according to the present invention is a cell 12 having a square or a rectangle on a two-dimensional plane, and can not reflect the white cell 12a capable of reflecting the infrared LED light and the infrared LED light.
  • the case where infrared LED light is used as the light emitted from the irradiation unit 23 is illustrated.
  • the light used in the present invention is not limited to the infrared LED light, and the same effect as the above-described embodiment can be obtained by using light of other wavelengths such as ultraviolet light or light from light sources other than LED. can get.
  • the imaging unit according to the present invention is configured by the imaging units 24 and 25 including two cameras, and arithmetic processing by triangulation based on two imaging data Was running.
  • the imaging unit according to the present invention only needs to perform the same imaging data processing as the above-described embodiment.
  • the imaging unit according to the present invention is configured by a camera including one lens in one camera.
  • the imaging unit according to the present invention may be configured by a radio camera provided with two lenses in one camera.
  • the imaging units 24 and 25 including two cameras and the irradiation unit 23 that irradiates infrared LED light are separately configured.
  • the irradiation unit and the imaging unit may be an integrated device.
  • each of the two imaging units 24 and 25 has an image processing function that is the same function as the calculation unit 26 described above, and the imaging units 24 and 25 After imaging the infrared LED light reflected from the marker 11 side, the imaging units 24 and 25 immediately perform binarization processing, and the image data of the binarized image subjected to the binarization processing is output to the calculation unit 26. It is also possible to adopt an apparatus configuration and processing procedure to transmit.
  • the marker detection unit 22 is provided with the calculation unit 26, and the calculation unit 26 acquires ID information, and the distance and angle with the marker 11 based on the ID information. Calculation is performed, and the calculation result is transmitted to the control unit 27.
  • the calculation unit 26 and the control unit 27 are separate members, and these members may be separate members, or may be configured by one microprocessor, and further,
  • the image processing apparatus main body 21 may be disposed outside the image processing apparatus main body 21, and the calculation unit 26 or the control section 27 may be connected to the image processing apparatus main body 21 via a wireless or internet connection.
  • the calculation unit 26 horizontally moves the binarized image obtained by the binarization processing from the upper left side to the right side in FIG. It was to scan.
  • the direction of scanning performed by the calculation unit 26 on the binarized image is not limited to the horizontal direction, and processing for scanning in the vertical direction may be employed.
  • FIG. 5 is a view showing an example of movement of the mobile robot according to the present embodiment.
  • the mobile robot 30 detects a marker 11 '(11'-1) as an object to be detected disposed along the boundary 40 (40-1, 40-2) defining the passage, and the position of the detected marker 11' , Move toward the destination while maintaining a constant distance from the boundary 40.
  • Markers 11 ′ used in the present embodiment are disposed to face the mobile robot 30, and are assumed to be configured by the matrix arrangement of nine columns of three rows and three rows illustrated in FIG. 4. cage, the marker 11 'for, ID information assigned position B 2 has become only one row, the information of 3 bits constituting the marker 11' it is possible to have the.
  • the ID information set in the marker 11 ' is assigned a marker ID for uniquely identifying each of the markers 11'.
  • the boundary 40 defining the passage is, for example, a wall, a partition, a white line, or the like.
  • the mobile robot 30 moves while maintaining a fixed distance from the boundary 40-1 on the left side with respect to the traveling direction of the mobile robot 30.
  • the mobile robot 30 acquires the distance Z to the detected marker 11′-1 and the direction ⁇ in order to maintain a constant distance Xref from the boundary 40-1, and a condition in which the distance Z and the direction ⁇ are predetermined.
  • Calculate the traveling direction that satisfies The mobile robot 30 moves in the calculated traveling direction.
  • the direction ⁇ is an angle formed by the traveling direction of the mobile robot 30 and the direction of the detected marker 11′-1.
  • the traveling direction satisfying the predetermined condition is a traveling direction in which the direction ⁇ is arcsin (Xref / Z).
  • the mobile robot 30 switches the target to the marker 11'-2 and moves when the distance Z to the marker 11'-1 becomes closer than a predetermined switching threshold.
  • a range in which the distance from the mobile robot 30 is closer than the switching threshold is referred to as a switching range.
  • FIG. 6 is a block diagram showing a configuration example of the mobile robot according to the present embodiment.
  • the mobile robot 30 according to the present embodiment includes a drive unit 31, a marker detection unit 22, and a control unit 27.
  • the drive unit 31 includes drive wheels 32 and 33, motors 34 and 35, and a motor control unit 36.
  • the drive wheel 32 is provided on the left side of the traveling direction of the mobile robot 30.
  • the driving wheel 33 is provided on the right side of the traveling direction of the mobile robot 30.
  • the motor 34 rotates the drive wheel 32 according to the control of the motor control unit 36.
  • the motor 35 rotates the drive wheel 33 according to the control of the motor control unit 36.
  • the motor control unit 36 supplies power to the motors 34 and 35 based on angular velocity command values for the motors 34 and 35 input from the control unit 27.
  • the mobile robot 30 moves forward or backward. Also, by causing a difference in angular velocity of the motors 34 and 35, the traveling direction of the mobile robot 30 is changed. For example, by setting the angular velocity of the left drive wheel 32 to be larger than the angular velocity of the right drive wheel 33 when moving forward, the mobile robot 30 moves while turning right. In addition, by rotating the drive wheels 32 and 33 in the opposite direction, the mobile robot 30 turns without changing its position.
  • the mobile robot 30 may have wheels other than the drive wheels 32 and 33 in order to stabilize the posture of the mobile robot 30.
  • the marker detection unit 22 includes an irradiation unit 23, two imaging units 24 and 25, and a calculation unit 26.
  • the irradiation unit 23 is attached to, for example, a central position on the front surface of the mobile robot 30, and can emit infrared LED light to the marker 11 ′, and two imagings of the reflected light reflected from the marker 11 ′ side It is used for reading by the units 24 and 25.
  • the infrared LED light emitted from the irradiation unit 23 is preferable because the imaging of the marker 11 is possible even in a dark place such as in a factory or a place where visible light is strong.
  • the two imaging units 24 and 25 are configured by two cameras disposed on the left and right of the marker detection unit 22.
  • the imaging unit 24 is attached to the left of the front surface of the mobile robot 30, and detects and captures infrared LED light reflected from a marker 11 'located on the front side of the mobile robot 30.
  • the imaging unit 25 is attached to the right of the front surface of the mobile robot 30, and detects and captures infrared LED light reflected from a marker 11 'located on the front side of the mobile robot 30.
  • the imaging units 24 and 25 are attached to the housing of the mobile robot 30 symmetrically with respect to a straight line in the front direction passing through the center of the mobile robot 30.
  • a camera combined with an infrared filter is used for the imaging units 24 and 25, for example.
  • these two imaging units 24 and 25 reflect the light reflected from the white cell 12 a It is a component part which can acquire imaging data by imaging with two cameras.
  • the imaging data obtained by using the two imaging units 24 and 25 is transmitted to the calculation unit 26.
  • the calculation unit 26 performs binarization processing based on the imaging data transmitted from the two imaging units 24 and 25 to form binarized image data composed of black and white, and further binarized image data It is possible to calculate what kind of distance (distance Z) and direction (angle ⁇ ) the marker 11 ′ is positioned with respect to the mobile robot 30 by performing calculation using triangulation using it.
  • the calculation unit 26 detects marker IDs, selects a marker 11 ′ to be targeted, and selects a marker 11 ′ to be targeted. The distance Z and the angle ⁇ are calculated.
  • Detection of the marker ID is performed by acquiring the information set in the ID information assigning positions B 2 provided one line to a marker 11 '.
  • the calculation unit 26 outputs marker information including the calculated distance Z and direction ⁇ and the marker ID to the control unit 27.
  • the calculated distance Z is the distance from the center on the line segment connecting the imaging unit 24 and the imaging unit 25. If the imaging units 24 and 25 are attached so that the line segment connecting the imaging unit 24 and the imaging unit 25 is orthogonal to the traveling direction of the mobile robot 30, the calculation load in the calculating unit 26 can be reduced.
  • the control unit 27 controls the drive unit 31 based on the marker information acquired from the marker detection unit 22.
  • FIG. 7 is a block diagram showing a configuration example of a control unit according to the present embodiment.
  • the control unit 27 according to the present embodiment includes a movement path storage unit 27a, a marker selection unit 27b, and a drive control unit 27c.
  • a table including attribute information on a plurality of markers 11 'arranged along the movement path of the mobile robot 30 is stored in advance.
  • the marker selection unit 27 b outputs the marker ID of the target marker 11 ′ to the marker detection unit 22 based on the table stored in the movement path storage unit 27 a.
  • the marker selection unit 27 b determines whether to switch the target marker 11 ′ based on the marker information input from the marker detection unit 22. When switching the target marker 11 ', the marker selection unit 27b selects a marker 11' next to the current target marker 11 'from the table.
  • the drive control unit 27 c reads attribute information and control information from the table stored in the movement path storage unit 27 a based on the marker information output from the marker detection unit 22.
  • the attribute information is information on the target marker 11 '.
  • the control information is information indicating the control associated with the target marker 11 '.
  • the control linked to the marker 11 ′ is, for example, a control that pivots in the vicinity of the marker 11 ′ indicating a change in the traveling direction.
  • the drive control unit 27 c drives and controls the drive unit 31 based on the marker information, the attribute information, and the control information.
  • FIG. 8 is a diagram showing an example of a table stored in the movement path storage unit according to the present embodiment.
  • the table is provided with a row of items of "marker ID”, “passage distance”, “installation side”, “turning direction”, and "final marker”. Each row is attribute information present for each marker 11 '.
  • Each row in the table is arranged in the order of markers 11 'which are passed as the mobile robot 30 moves along the movement path.
  • the “marker ID” column includes the marker ID of the marker 11 ′ corresponding to the row.
  • the “passage distance” column includes markers 11 ′ corresponding to the rows and distance information indicating how far the moving path of the mobile robot 30 is.
  • the passage distance is a value set as a positive value, and is a value indicating the distance from the target marker 11 ′ to the movement path of the mobile robot 30. Further, in this embodiment, the passage distance indicates the distance from the marker 11 ′ to the target point located in the direction substantially orthogonal to the moving direction in the moving path of the mobile robot 30.
  • the “Installation side” column includes information indicating whether the marker 11 ′ corresponding to the row is disposed on the right side or the left side of the mobile robot 30 when the mobile robot 30 moves along the movement path.
  • the “turning direction” column includes rotation information indicating a change in the traveling direction of the mobile robot 30 when the mobile robot 30 approaches a predetermined distance or a switching threshold with respect to the markers 11 ′ corresponding to the rows. Be If the rotation information is 0 (zero) degrees, it indicates that there is no change in the traveling direction of the mobile robot 30. When the rotation information is other than 0 degree, the traveling direction of the mobile robot 30 is changed clockwise or counterclockwise by an angle indicated by the rotation information.
  • the “final marker” column includes information indicating whether the marker 11 ′ corresponding to the row is the marker 11 ′ indicating a target point in the movement path.
  • the marker 11 'having the marker ID "M" is a marker of the target point.
  • the marker 11 'indicating the target point is one.
  • FIG. 9 is a block diagram showing a configuration example related to control based on marker information in the drive control unit according to the present embodiment.
  • Drive control section 27c is provided with a passing position calculation unit 27c 1, and the correction angle calculation unit 27c 2, and a command value calculating unit 27c 3.
  • Passing position calculating unit 27c 1 inputs the distance Z and the direction ⁇ until the marker 11 'included in the marker information.
  • the passing position calculation unit 27c 1 moves in the current traveling direction of the mobile robot 30 based on the distance Z and the direction ⁇ , and moves the distance x to the marker 11 ′ when it approaches the marker 11 ′ most, and the marker 11 ′.
  • the movement distance y until it approaches the most is calculated.
  • the position when the mobile robot 30 comes closest to the marker 11 ′ is a straight line orthogonal to the moving straight line extended in the traveling direction from the position of the mobile robot 30, and a straight line passing the position of the marker 11 ′, It is an intersection with a straight line.
  • the distance x is obtained as (Z ⁇ sin ⁇ ).
  • the movement distance y is obtained as (Z ⁇ cos ⁇ ).
  • the distance x is also referred to as a marker passing distance.
  • the moving distance y is also referred to as the distance to the side of the marker.
  • Correcting angle calculation section 27c 2 inputs the difference ⁇ X obtained by subtracting the distance x from the distance Xref from the boundary of the passage to the movement path, and a moving distance y. Correcting angle calculation section 27c 2, based on the difference ⁇ X and movement distance y, and calculates the correction angle ⁇ with respect to the traveling direction of the mobile robot 30. Specifically, the correction angle calculation unit 27c 2 is a correction angle ⁇ a value obtained by arctan ( ⁇ X / y).
  • Command value calculating unit 27c 3 includes a translation velocity command value Vref, the angular velocity command value .omega.ref, measured value of the angular velocity ⁇ l ', ⁇ r' and inputs the correction angle [Delta] [theta].
  • the translational velocity command value Vref is a command value (target value) for the translational velocity of the mobile robot 30.
  • the angular velocity command value ⁇ ref is an angular velocity when changing the traveling direction in the clockwise direction or the counterclockwise direction with reference to the traveling direction.
  • the angular velocity command value ⁇ ref may set the amount of change in the clockwise direction as a positive value, or may set the amount of change in the counterclockwise direction as a positive value.
  • the measured values of angular velocity ⁇ l ′ and ⁇ r ′ are angular velocities measured by encoders provided for the motors 34 and 35 respectively.
  • Command value calculating unit 27c 3 is measured ⁇ l the translation velocity command value Vref and the angular velocity command value ⁇ ref and the angular velocity ', .omega.r' on the basis of the correction angle ⁇ and the translational speed mobile robot 30 command value Vref and the angular velocity command value While moving at ⁇ ref, angular velocity command values ⁇ l and ⁇ r for changing the traveling direction by the correction angle ⁇ are calculated.
  • Command value calculating unit 27c 3 the calculated angular speed command value Omegaeru, outputs a ⁇ r to the drive unit 31.
  • FIG. 10 is a diagram showing the correction angle ⁇ calculated by the drive control unit according to the present embodiment.
  • the marker detection unit 22 detects the marker 11 ′ disposed on the boundary 40-1 to position the marker 11 ′ with reference to the distance Z from the mobile robot 30 to the marker 11 ′ and the traveling direction of the mobile robot 30. And the direction ⁇ to be obtained.
  • Passing position calculating unit 27c 1 calculates the distance x and distance y from the distance Z and the direction theta.
  • the mobile robot 30 needs to change the traveling direction in order to pass a position Ppass separated by a fixed distance Xref from the markers 11 'arranged along the movement path.
  • the position Ppass is determined based on the information indicating “installation side” in the attribute information of the marker 11 ′.
  • FIG. 10 shows the case where the marker 11 'is set on the left side of the movement path.
  • the correction angle calculation unit 27c 2 based on the difference ⁇ X and movement distance y, and calculates the correction angle ⁇ with respect to the traveling direction.
  • Command value calculating unit 27c 3 is calculated while the mobile robot 30 is moved at a translation velocity command value Vref and the angular velocity command value .omega.ref, angular velocity command value ⁇ l for changing correction angle ⁇ min the traveling direction counterclockwise, the ⁇ r
  • the drive unit 31 is controlled.
  • the drive control unit 27 c controls the drive unit 31
  • the mobile robot 30 can move on a movement path defined at a position separated by a constant distance Xref from the passage boundary 40-1. .
  • the correction angle calculation unit 27c 2 when calculating the correction angle [Delta] [theta], to correct any distance Xref or difference ⁇ X with a passage distance.
  • FIG. 11 is a flowchart showing the contents of control processing by the control unit according to the present embodiment.
  • the image processing step (Process ⁇ ) described with reference to FIG. 3 in the above-described embodiment is performed.
  • the calculation unit 26 acquires the ID information set in the marker 11 ′ and transmits the ID information to the control unit 27.
  • the ID information in the present embodiment is a marker ID for uniquely identifying each marker 11 ′.
  • the control unit 27 that has received the marker ID determines whether or not the marker ID set in the initial state has been detected (step S201). In the initial state, the marker selection unit 27b selects the marker ID stored in the first row of the table as the marker ID of the target marker 11 '.
  • the control unit 27 If the marker 11 ′ can not be detected (NO in step S 201), the control unit 27 outputs an error signal indicating that the marker 11 ′ can not be detected.
  • the drive control unit 27c causes the drive unit 31 to stop the drive wheels 32, 33 according to the error signal (step S221).
  • the marker selection unit 27 b outputs error information indicating that the marker 11 ′ can not be detected to the outside according to the error signal (step S 222), and ends the movement control process.
  • the output of the error information is performed using an output device provided in the mobile robot 30, for example, a speaker or a display.
  • step S201 when the marker 11 'is detected (YES in step S201), the marker selection unit 27b and the drive control unit 27c acquire marker information from the calculation unit 26 of the marker detection unit 22 (step S202). ). The marker selection unit 27 b determines whether or not the marker 11 ′ indicated by the marker information is the final marker based on the table (step S 203).
  • step S203 when the marker 11 'is the final marker (YES in step S203), the drive control unit 27c determines whether the distance Z to the marker 11' indicated by the marker information is within the switching range. (Step S231). If the distance Z to the marker 11 'is within the switching range (YES in step S231), the drive control unit 27c causes the drive unit 31 to stop the drive wheels 32, 33 (step S232), and ends the movement control process. .
  • step S231 when the distance Z to the marker 11 'is not within the switching range (NO in step S231), the drive control unit 27c advances the process to step S208.
  • step S203 when the marker 11 'is not the final marker (NO in step S203), the drive control unit 27c determines whether the distance Z to the marker 11' indicated by the marker information is within the switching range (step S203). Step S204). If the distance Z to the marker 11 'is not within the switching range (NO in step S104), the drive control unit 27c advances the process to step S208.
  • step S204 when the distance Z to the marker 11 'is within the switching range (YES in step S204), the drive control unit 27c causes the table to determine whether there is an instruction to change direction in the attribute information of the marker 11'. It determines based on (step S205). If there is no instruction to change the direction (NO in step S205), the drive control unit 27c advances the process to step S207.
  • the drive control unit 27c acquires rotation information of the marker 11 'from the table, and performs control to change the angle indicated by the rotation information.
  • the drive unit 31 is performed (step S206).
  • the marker selection unit 27 b acquires from the table the marker ID of the marker 11 ′ to be targeted next to the marker 11 ′ currently targeted.
  • the marker selection unit 27 b outputs the marker 11 ′ of the acquired marker ID to the marker detection unit 22 to select the marker 11 ′ of the acquired marker ID as a new target (step S 207), and the process is performed in the image processing step. Return to (Process ⁇ ).
  • step S208 the correction angle calculation unit 27c 2 determines whether the difference ⁇ X calculated based on the obtained marker information from the marker detector 22 is within the allowable range (step S208).
  • the allowable range for the difference ⁇ X is determined in advance based on the accuracy of movement required of the mobile robot 30, the accuracy of detection of the marker 11 ′ by the marker detection unit 22, the accuracy of control of the motors 34 and 35, and the like. If the difference [Delta] X is not within the allowable range (NO in step S208), the correction angle calculation unit 27c 2 calculates the correction angle ⁇ based on the difference [Delta] X (step S209). When the difference ⁇ X is within the allowable range (YES in step S208), the correction angle calculation unit 27c 2 is a correction angle ⁇ to zero (step S210).
  • Command value calculating unit 27c 3 is measured ⁇ l motors 34, 35 of each angular velocity of driving the drive wheels 32, 33 ', .omega.r' acquires (step S211).
  • Command value calculating unit 27c 3 includes a translation velocity command value Vref, the angular velocity command value .omega.ref, measured value of the angular velocity ⁇ l ', ⁇ r' and, on the basis of the correction angle [Delta] [theta], angular velocity command value Omegaeru for motor 34, ⁇ r is calculated (step S212).
  • Command value calculating unit 27c 3 outputs angular speed command value Omegaeru, the ⁇ r to the drive unit 31 (step S213), and returns to the processing of the image processing step (Process alpha).
  • the control process including the processes from the image processing process (Process ⁇ ) to the step S232 described above is performed by the control unit 27 to sequentially acquire the distance Z to the marker 11 ′ and the direction ⁇ , and correct the traveling direction. it can.
  • the mobile robot 30 can move on the movement path separated by a constant distance Xref from the boundary 40, and when moving based on the plurality of markers 11 '. Travel distance can be reduced.
  • control system of the mobile robot 30 according to the present embodiment described above even in the case where a relatively compact marker 11 'which does not require a large installation place is adopted, its identification and distance measurement are accurately performed. It is possible. Furthermore, according to the control system of the mobile robot 30 according to the present embodiment described above, since the system configuration can be made inexpensive, it is possible to provide a mobile robot control system with high versatility.
  • FIG. 12 and FIG. 13 are diagrams showing an example of arrangement of markers in the case where an intersection exists in the passage in which the mobile robot moves.
  • FIG. 12 shows an example in which markers 11'-m and 11 '-(m + 1) are installed at two corners on the far side of the intersection when viewed from the mobile robot 30.
  • the mobile robot 30 measures the distances to the two markers 11'-m and 11'-(m + 1).
  • Each of Z and Z ′ may move to a position where it is within the switching range, and the traveling direction may be changed by turning of the angle indicated by the rotation information.
  • FIG. 12 shows an example in which markers 11'-m and 11 '-(m + 1) are installed at two corners on the far side of the intersection when viewed from the mobile robot 30.
  • the mobile robot 30 measures the distances to the two markers 11'-m and 11'-(m + 1).
  • Each of Z and Z ′ may move to a position where it is within the switching range, and the traveling direction may be changed by turning of the angle
  • FIG. 13 shows an example in which a marker 11'-m is installed at one corner on the change destination side of the traveling direction out of the two corners on the far side of the intersection when viewed from the mobile robot 30.
  • the mobile robot 30 moves to a position where the distance Z to one marker falls within the switching range, and turns at an angle indicated by the rotation information.
  • the direction of travel may be changed by
  • FIG. 14 is a view showing a configuration example of a control system of a mobile robot according to the present invention when all pieces of command information are given to a marker. In the case of the configuration example shown in FIG.
  • the marker 11 ′ ′ in addition to the marker ID for uniquely identifying each marker 11 ′ ′, the marker 11 ′ ′ includes the “passage distance”, “installation side”, and “turning direction” shown in FIG. Command information such as “final marker” can be included.
  • Command information such as “final marker” can be included.
  • FIG. 15 is a view showing a specific example of the marker used in the modified embodiment.
  • FIG. 16 is a figure which shows an example of the table memorize
  • FIG. 17 is a view showing an example in which a marker used in the modified embodiment is arranged in a path in which the mobile robot moves, and an operation example of a control system of the mobile robot according to the modified embodiment.
  • FIG. 18 is a diagram illustrating an example of imaging data captured by an imaging unit according to a modification.
  • the cell arrangement of the markers 111 is determined in advance for each marker ID. That is, as in the example shown in FIG. 15, for example, for the marker 111-0 where the marker ID is set to “0 (zero)”, the ID information addition position B 2 set in one row at the center position is
  • the cells 12 are arranged in the order of "black, black, black", and these can be represented as "0, 0, 0" when expressed in binary code.
  • the cells 12 are arranged in the order of "black, black, white” in the ID information application position B 2 When expressed in binary code, it can be shown as “0, 0, 1", and for marker 111-2 set with marker ID "2", ID information addition position B 2 is "black, white, black”
  • the cells 12 are arranged in the following order, and can be represented as “0, 1, 0” in binary code, and the ID information addition position for the marker 111-3 for which the marker ID is set to "3”
  • the cells 12 are arranged in the order of “black, white, white” in B 2, and can be represented as “0, 1, 1” in binary code, and the marker ID is set to “4”
  • D information adding position B 2 is "white, black, black” and the cell 12 are arranged in the order of, can be shown is expressed in binary code "1, 0, 0".
  • an operation command for each marker ID is set.
  • the contents of this command are set as a table shown in FIG.
  • the table according to the modification includes a row of items of “marker ID”, “action”, “marker distance”, “rotation”, and “translational distance”.
  • Each row is attribute information that exists for each marker ID set in the marker 111.
  • Each row in the table is arranged in the numerical order of the marker ID, but in this variation, the order is not significant.
  • the “marker ID” column includes the marker ID of the marker 111 corresponding to the row.
  • the "action” column includes the marker 111 corresponding to the row and the action content of the mobile robot 30.
  • the “marker distance” column includes markers 111 corresponding to the rows and distance information indicating how far the mobile robot 30 is moved with respect to the markers 111.
  • the marker distance is a value set as a positive value, and is a value indicating the distance from the target marker 111 to the movement path of the mobile robot 30.
  • the marker distance in this modified example indicates that the marker 111 is placed on the left side of the passage, and at what distance the mobile robot 30 should move to the right from the marker 111 on the left side of this passage. .
  • the “rotation” column includes information indicating how much angle the mobile robot 30 should rotate during the rotation operation or how much angle the mobile robot 30 should turn when the robot stops.
  • the “rotation” column also includes information as to whether the direction of rotation is left or right.
  • the “translation distance” column includes distance information in which the mobile robot 30 continues to further translate when the mobile robot 30 approaches a predetermined distance or switching threshold with respect to the markers 111 corresponding to the rows. In this modification, for example, as shown in FIG. 17, when the mobile robot 30 approaches a predetermined distance which is predetermined with respect to the marker 111-2 selected first, the marker 111- for the mobile robot 30 is selected. A switch is made to the marker 111-3 located next to 2.
  • FIG. 17 A specific arrangement example of the markers 111 described above is shown in FIG.
  • the markers 111-0 to 4 used in this modification are installed to face the mobile robot 30, but in FIG. 17, the upper side of the sheet is the marker 111-for the convenience of description. It is displayed to be on the upper side of 0-4.
  • a marker ID is set for each of the plurality of markers 111-0 to 4, and operation command information is set in advance by a table for each of the marker IDs. Therefore, the user of this system may arrange the plurality of markers 111-0 to 4 so as to correspond to the movement path of the mobile robot 30. Specifically, in the example shown in FIG. 17, the mobile robot 30 is made to go straight from the start position located on the left side of the paper to the right on the paper, made a right turn after making a right turn at the first intersection, and make a left turn It is assumed that an operation is made such as to turn straight after turning left and turn right by 180 degrees at the final stop position to change the direction of the mobile robot 30 and to stop it.
  • the marker 111-2 whose “marker ID” is “2” is placed on the left side of the first straight path.
  • the control content for realizing the movement of the mobile robot 30 along the assumed movement path after disposing the marker 111 as described above will be described.
  • a plurality of markers 111 installed on the route are installed so that the ground height is the same.
  • the two imaging units 24 and 25 included in the mobile robot 30 are configured to be lower than the ground height at which the marker 111 is installed.
  • the imaging data imaged by the two imaging units 24 and 25 is shown on the imaging data as reflected light occupying a wider range while the marker 111 located at the upper side of the imaging data is closer to the mobile robot 30 Will be On the other hand, the marker 111 which is far from the mobile robot 30 is located on the lower side of the imaging data and shown on the imaging data as reflected light occupying a narrower range.
  • the two imaging units 24 and 25 included in the mobile robot 30 are markers 111 on the front side. -2, and the marker 111-3 on the back side is to be imaged.
  • the imaging data in this case is shown in FIG.
  • the light pattern shown in the lower left corner of the imaging data shows the marker 111-2 on the near side, and is shown in a narrow range on the lower right side.
  • the light pattern shows the marker 111-3 on the back side.
  • the example at the time of operating the mobile robot 30 in the building of a factory is shown for this imaging data, and what is reflected in the imaging data as a long and thin rectangular light is installed in the ceiling in the factory Fluorescent light.
  • the drive unit 31 receives the operation command based on the operation command of "translation distance" 1 m, and moves to a position slightly beyond the marker 111-2.
  • the marker 111-3 located next to the mobile robot 30 is next to the marker 111-2.
  • a switch is made.
  • the translation operation is performed on the marker 111-2 before switching, and then switching is performed.
  • the action based on the action command of the table set to the later marker 111-3 is executed.
  • the movement operation of the mobile robot 30 along the movement path shown in FIG. 17 is performed.
  • a plurality of markers 111 installed on the route are installed so that the ground height is the same, while the two imaging units 24 and 25 provided in the mobile robot 30 have markers 111. It was configured to be lower than the installed ground height.
  • the calculation unit is in the imaging data imaged by the imaging unit that images the light reflected from the white cell 12a as the first cell with two cameras.
  • the object to be detected that is located closest to the detection unit is selected, and the ID set in the ID information provision position of the selected object to be detected Information may be detected.
  • the selection of the marker which is the detection target closest to the detection unit by the calculation unit may be determined by the distance between the detection unit and the selected marker. Therefore, a plurality of markers 111 installed on the route are installed at the same ground height, and the two imaging units 24 and 25 included in the mobile robot 30 are positioned higher than the ground height at which the markers 111 are installed.
  • the marker 111 located at a lower side of the imaging data and as a reflected light occupying a wider range while being at a lower distance from the mobile robot 30 It will be shown on the imaging data.
  • the marker 111 which is far from the mobile robot 30 is located on the upper side of the imaging data and is shown on the imaging data as reflected light occupying a narrower range. That is, according to the positional relationship between the ground height of the marker 111 and the two imaging units 24 and 25, based on the position or size of the light indicated on the imaging data, it is located closest to the detection unit by the calculation unit It is possible to select a marker which is a detection subject. By adopting such a configuration, according to the present invention, a control system of a mobile robot can be realized inexpensively.
  • the control system of the mobile robot 30 according to the modification has been described above with reference to FIGS.
  • the beacon which emits the signal based on a predetermined rule as a to-be-detected body to this modification.
  • the beacon since the beacon turns on / off the light emission signal in units of several msec, the two imaging units 24 and 25 pick up a plurality of pieces of imaging data corresponding to the light emission signal of the beacon, and the plurality of pieces of imaging data By checking the on / off state of the light emission signal in time series by this, it is possible to detect ID information for each beacon as in the case of the marker 111 described above.
  • the image processing apparatus receives a to-be-detected body formed of a beacon that transmits a signal based on a predetermined rule, and a signal transmitted from the to-be-detected body, and based on the received signal
  • An image processing apparatus comprising: a detection unit configured to acquire signal information set in a detection object, wherein the detection unit is obtained from a plurality of detection objects when a plurality of the detection objects are installed.
  • the detection target may be selected based on the signal information, and the detection target may be selected to detect the ID information set for the selected detection target.
  • the control system for a mobile robot is a detection unit for detecting a plurality of objects to be detected arranged along a movement route to a target point, and a drive unit that changes the moving speed and the traveling direction of the mobile robot.
  • a control unit configured to drive and control the drive unit based on the ID information set to the detection target detected by the detection unit, the detection target includes a signal based on a predetermined rule
  • the detection unit is configured as a beacon to be transmitted, and the detection unit is a detection unit closest to the detection unit based on signal information obtained from the plurality of detection units when the plurality of detection units are installed. , And may be configured to detect the ID information set for the selected subject to be detected.
  • a drive unit that changes a moving speed and a traveling direction of the mobile robot, and a detection that detects a plurality of objects to be detected arranged along a moving path to a target point.
  • a control method of a mobile robot configured to detect ID information set to the detection target, wherein the control unit controls the driving based on ID information of the detection target closest to the detection unit. Drive control It can be.
  • the calculation unit 26 of the marker detection unit 22 calculates marker information of all the detected markers 11 ′ and outputs the calculated marker information to the control unit 27.
  • the marker selection unit 27 b of the control unit 27 selects marker information of the marker 11 ′ to be a target from a plurality of marker information based on the instruction output from the marker selection unit 27 b.
  • various configurations and variations of the operation procedure are adopted within a range where the same effects as those achieved in the above-described embodiment and the example can be obtained. be able to.
  • the above-mentioned mobile robot 30 may have a computer system inside.
  • the process of the process performed by the control unit 27 included in the mobile robot 30 is stored in a computer readable recording medium in the form of a program, and the computer reads and executes the program to obtain each function unit. Processing will be performed.
  • the computer-readable recording medium refers to a magnetic disk, a magneto-optical disk, a CD-ROM, a DVD-ROM, a semiconductor memory and the like.
  • the computer program may be distributed to a computer through a communication line, and the computer that has received the distribution may execute the program.
  • the arrangement configuration of the white cells 12a and the black cells 12b in the markers 11, 11 ′ and 11 ′ ′ shown in the embodiments and examples described above is merely an example.
  • Markers applicable to the present invention the combination of the arrangement of the white cell 12a and the black cell 12b can employ any pattern configuration.
  • the combination of the arrangement of the white cell 12a and the black cell 12b at the detection starting position B 1 and the detection end position B 3 are both It is not necessary to be the same, and it may be possible to adopt a pattern configuration which has been previously decided for each in advance.
  • Example is shown as an example and it is not intending limiting the range of invention.
  • novel embodiments can be implemented in other various forms, and various omissions, replacements and changes can be made without departing from the scope of the invention.
  • embodiments and modifications thereof are included in the scope and the gist of the invention, and are included in the invention described in the claims and the equivalents thereof.

Abstract

この画像処理装置10は、二次元平面上に、正方形又は長方形からなるセル12であって、照射された光を反射可能な第一セル12aと照射された光を反射不能な第二セル12bとを、a×a、又はa×b(ただし、a、b=3,4,5,6,…)の行列配置して構成される被検出体11と、光を照射する照射部23と、照射部23から照射された光が被検出体11を構成する第一セル12aと第二セル12bに照射された後、第一セル12aから反射された光をカメラで撮像する撮像部24,25と、撮像部24,25によって撮像された撮像データに基づいて、被検出体11に設定された情報を取得する算出部26と、を備える検出部22と、を備えている。かかる構成によって、コンパクトなマーカーの識別および距離計測が精度よく可能であり、かつ、安価にシステムを実現できる。

Description

画像処理装置、移動ロボットの制御システム、移動ロボットの制御方法
 本発明は、画像処理装置、移動ロボットの制御システム、および移動ロボットの制御方法に関するものである。
 従来から、自律移動する移動ロボットを誘導するために、ビーコンなどの発信器が用いられている。例えば、移動ロボットとしての掃除ロボットは、充電器に設けられたビーコンから発せられる信号に基づいて、充電器に向けて移動して充電器から電力の供給を受ける動作を行っている。また、下記特許文献1に記載の移動作業ロボットは、ビーコンから発せられる信号に基づいて、基準となる位置を検出し、移動を制御している。
 このような移動ロボットは、近年その活用範囲を拡大している。例えば、工場内や物流倉庫などで使用される無人搬送車や、施設、ホール、空港などの公共施設内でのサービスロボットは、移動ロボット活用の一例である。
 そして、この種の移動ロボットに用いられるビーコンには、上述したような信号を発するものの他に、マーカーと呼ばれる特徴的な形状又は模様により識別されるものに大別される。ここで、特徴的な形状又は模様により識別されるマーカーの具体例としては、バーコードやQRコード(登録商標)などが挙げられる。
特開2002-073170号公報
 ところで、上掲した特許文献1に記載の移動作業ロボットに代表されるように、信号を発するビーコンを用いて移動制御を行うシステムでは、信号を発信するビーコンのために電源が必要となり、複数のビーコンを設置する場合には、多数の配線工事が必要となる。このようなシステムの場合、導入コストが増大するとともに維持・保守のためのランニングコストが増大するという課題が存在していた。
 一方、特徴的な形状又は模様により識別されるマーカーを用いたシステム構成の場合は、その識別および距離計測において読み取り精度の高い測定が必要となるが、そのような測定を安価かつ精度よく行うシステムは従来存在していなかった。例えば、バーコードやQRコード(登録商標)をマーカーとして用いた場合には、移動ロボットをマーカーに近接させてマーカー識別を行う必要があるため、工場内や物流倉庫などで使用される無人搬送車等の用途には不向きであった。また、バーコードやQRコード(登録商標)を無人搬送車等の用途に用いる場合に読み取り精度を高める対策として、バーコードやQRコード(登録商標)を記したマーカー自体を大きくすることが考えられるが、そのような対策では工場内や物流倉庫などといった現場で広い設置場所が必要となるため、現場作業に支障をきたしてしまうといった課題も考えられる。
 本発明は、上述した従来技術に存在する課題に鑑みて成されたものであって、その目的は、広い設置場所を必要としない比較的コンパクトなマーカーを用いた場合であっても、その識別および距離計測が精度よく可能であり、さらに安価にシステムを実現することができる画像処理装置、移動ロボットの制御システム、および移動ロボットの制御方法を提供することにある。また、本発明の更なる目的は、信号を発信するビーコンを用いた場合であっても、安価にシステムを実現することができる画像処理装置、移動ロボットの制御システム、および移動ロボットの制御方法を提供することにある。
 本発明に係る画像処理装置は、二次元平面上に、正方形又は長方形からなるセルであって、照射された光を反射可能な第一セルと照射された光を反射不能な第二セルとを、a×a、又はa×b(ただし、a、b=3,4,5,6,…)の行列配置して構成される被検出体と、光を照射する照射部と、前記照射部から照射された光が前記被検出体を構成する前記第一セルと前記第二セルに照射された後、前記第一セルから反射された光をカメラで撮像する撮像部と、前記撮像部によって撮像された撮像データに基づいて、前記被検出体に設定された情報を取得する算出部と、を備える検出部と、を備えることを特徴とするものである。
 本発明に係る移動ロボットの制御システムは、移動ロボットの移動速度と進行方向とを変更する駆動部と、目標地点までの移動経路に沿って配置された複数の被検出体を検出する検出部と、前記検出部により検出された前記被検出体までの距離と方向とを取得し、前記被検出体までの距離と方向とが予め定められた関係を満たす進行方向を算出し、算出した進行方向に基づいて前記駆動部を駆動制御する制御部と、を備え、前記被検出体は、二次元平面上に、正方形又は長方形からなるセルであって、照射された光を反射可能な第一セルと照射された光を反射不能な第二セルとを、a×a、又はa×b(ただし、a、b=3,4,5,6,…)の行列配置してなるマーカーとして構成され、前記検出部は、光を照射する照射部と、前記照射部から照射された光が前記マーカーを構成する前記第一セルと前記第二セルに照射された後、前記第一セルから反射された光をカメラで撮像する撮像部と、前記撮像部によって撮像された撮像データに基づいて、前記マーカーとの距離と方向を算出する算出部と、を備えることを特徴とするものである。
 本発明に係る移動ロボットの制御方法は、移動ロボットの移動速度と進行方向とを変更する駆動部と、目標地点までの移動経路に沿って配置された複数の被検出体を検出する検出部と、前記検出部により検出された前記被検出体までの距離と方向とを取得する制御部と、を備え、前記被検出体は、二次元平面上に、正方形又は長方形からなるセルであって、照射された光を反射可能な第一セルと照射された光を反射不能な第二セルとを、a×a、又はa×b(ただし、a、b=3,4,5,6,…)の行列配置してなるマーカーとして構成され、前記検出部は、光を照射する照射部と、前記照射部から照射された光が前記マーカーを構成する前記第一セルと前記第二セルに照射された後、前記第一セルから反射された光をカメラで撮像する撮像部と、前記撮像部によって撮像された撮像データに基づいて、前記マーカーとの距離と方向を算出する算出部と、を備える移動ロボットの制御方法であって、前記制御部に、前記被検出体までの距離と方向とが予め定められた関係を満たす進行方向を算出させ、算出した進行方向に基づいて前記駆動部を駆動制御させることを特徴とするものである。
 本発明によれば、広い設置場所を必要としない比較的コンパクトなマーカーを用いた場合であっても、その識別および距離計測が精度よく可能であり、さらに安価にシステムを実現することができる画像処理装置、移動ロボットの制御システム、および移動ロボットの制御方法を提供することができる。また、本発明は、信号を発信するビーコンを用いた場合であっても、安価にシステムを実現することができる。
図1は、本実施形態に係る画像処理装置のシステム構成例を示すブロック図である。 図2は、本実施形態に係る画像処理装置が撮像したマーカーの撮像データを2値化処理して得られた2値化画像を示すとともに、この2値化画像を走査してマーカーに設定されたID情報を得るための走査方法を説明するための図である。 図3は、本実施形態に係る画像処理装置の動作説明を行うための画像処理工程を示すフローチャートである。 図4は、本発明に係るマーカーが取り得る多様な形態の一例を示す図である。 図5は、本実施例に係る移動ロボットの移動例を示す図である。 図6は、本実施例に係る移動ロボットの構成例を示すブロック図である。 図7は、本実施例に係る制御部の構成例を示すブロック図である。 図8は、本実施例に係る移動経路記憶部に記憶されているテーブルの一例を示す図である。 図9は、本実施例に係る駆動制御部におけるマーカー情報に基づいた制御に係る構成例を示すブロック図である。 図10は、本実施例に係る駆動制御部において算出される補正角Δθを示す図である。 図11は、本実施例に係る制御部による制御処理内容を示すフローチャートである。 図12は、移動ロボットが移動する通路に交差点が存在する場合のマーカーの配置例を示す図である。 図13は、移動ロボットが移動する通路に交差点が存在する場合のマーカーの配置例を示す図である。 図14は、全ての指令情報をマーカーに対して付与した場合の本発明に係る移動ロボットの制御システムの構成例を示す図である。 図15は、変形形態に用いられるマーカーの具体例を示す図である。 図16は、変形形態に係る移動経路記憶部に記憶されているテーブルの一例を示す図である。 図17は、移動ロボットが移動する通路に変形形態で用いられるマーカーが配置された一例と、変形形態に係る移動ロボットの制御システムの動作例を示す図である。 図18は、変形形態に係る撮像部によって撮像された撮像データの一例を示す図である。
 以下、本発明を実施するための好適な実施形態について、図面を用いて説明する。なお、以下の実施形態は、各請求項に係る発明を限定するものではなく、また、実施形態の中で説明されている特徴の組み合わせの全てが発明の解決手段に必須であるとは限らない。
 まず、図1および図2を用いて、本実施形態に係る画像処理装置の基本構成を説明する。ここで、図1は、本実施形態に係る画像処理装置のシステム構成例を示すブロック図である。また、図2は、本実施形態に係る画像処理装置が撮像したマーカーの撮像データを2値化処理して得られた2値化画像を示すとともに、この2値化画像を走査してマーカーに設定されたID情報を得るための走査方法を説明するための図である。
 図1に示すように、本実施形態に係る画像処理装置10は、被検出体としてのマーカー11と、このマーカー11を読み取ることで所望の情報を取得し、処理を実行する画像処理装置本体21とを有して構成されている。
 マーカー11は、二次元平面上に、正方形からなる複数のセル12を配置して構成されるものである。複数のセル12は、例えば、赤外LED光を反射可能な第一セルとしての白色セル12aと、赤外LED光を反射不能な第二セルとしての黒色セル12bとから構成されている。図1で示した本実施形態の場合、14個の白色セル12aと、26個の黒色セル12bとが、5列8行の行列配置で二次元平面上に配置されている。また、このマーカー11では、マーカー11の外周部を取り囲むように配置された22個の黒色セル12bは情報を含むものではなく、マーカー11と空間とを区分けして読み取りの誤認識を防止するための単なる境界として機能する部分である。すなわち、図1で示すマーカー11において被検出体として機能する箇所は、符号Aで示す3列と、符号Bで示す6行とからなる3列6行、18個のセル12の行列配置によって構成される部分である。
 マーカー11において被検出体として機能する3列6行の行列配置として構成される箇所は、例えば最上段の1行目に位置する符号Bで示す箇所が「検出スタート位置」として構成され、最下段の6行目に位置する符号Bで示す箇所が「検出エンド位置」として構成され、これら検出スタート位置Bと検出エンド位置Bで挟まれた2行目から5行目までの4行で構成される符号Bで示す箇所が「ID情報付与位置」として構成されている。
 検出スタート位置Bと検出エンド位置Bについては、例えば、図1の紙面左側から右側に向けて、「白、黒、白」の順でセル12が配置されており、白を「1」、黒を「0(ゼロ)」とするバイナリーコードで表現すると「1、0、1」と示すことができる。この「1、0、1」の情報を画像処理装置本体21側に認識させることで、マーカー11の最初の行と最終の行を読み取ることに成功したことが認識できる。すなわち、「1、0、1」で示される検出スタート位置Bと検出エンド位置Bを認識することで、この間に存在するであろう4行のID情報付与位置Bが正確に認識できることとなる。
 また、4行のID情報付与位置Bについては、上の行から下の行に向けて「白、黒、白」、「白、白、白」、「白、黒、白」、「白、白、白」の順でセル12が配置されており、これらをバイナリーコードで表現すると「1、0、1」、「1、1、1」、「1、0、1」、「1、1、1」と示すことができる。このような3ビット×4行からなる構成の情報をマーカー11に持たせることにより、合計12ビットのID情報をID情報付与位置Bに対して付与することが可能となる。そして、この12ビットの情報を画像処理装置本体21側に認識させることで、様々な処理が実行可能となる。
 以上のように、検出スタート位置Bと検出エンド位置Bの読み取りが成功し、かつ、それらの間に存在するID情報付与位置Bを読み取ることで、ID情報を誤認識なく取得することが可能となる。
 なお、複数のセル12のうち、白色セル12aは、後述する照射部23から照射される赤外LED光を反射して、後述する撮像部24,25にその反射光を撮像させることのできる材料にて構成されている。赤外LED光を反射する材料としては、アルミニウム箔や酸化チタンの薄膜等が用いられる。一方、黒色セル12bは、後述する照射部23から照射される赤外LED光を反射せず、後述する撮像部24,25で撮像した画像において黒色セル12bの箇所が暗部となるようにすることのできる材料にて構成されている。赤外LED光を反射しない材料としては、赤外カットフィルムや偏光フィルム、赤外線吸収材、黒色フェルト等が用いられる。つまり、本実施形態では、投光部としての照射部23から出た赤外LED光をマーカー11の白色セル12aにて反射し、受光部としての撮像部24,25で受光して画像を撮像する。このとき、被検出体であるマーカー11の黒色セル12bでは、受光部である撮像部24,25に対する反射光を減少させるので、その反射量の減少をとらえて検出する所謂回帰反射形の画像取得構成が採用されている。
 本実施形態に係る画像処理装置本体21は、マーカー検出部22と、制御部27を備えて構成されている。さらに、マーカー検出部22は、照射部23と、2つの撮像部24,25と、算出部26を備える。
 照射部23は、赤外LED光をマーカー11に対して照射することができ、マーカー11側から反射された反射光を2つの撮像部24,25によって読み取らせるために用いられる。照射部23から照射される赤外LED光は、工場内などの暗所や可視光の強い場所等であってもマーカー11の撮像が可能である。
 2つの撮像部24,25は、マーカー検出部22の左右に配置された2つのカメラによって構成されている。これら2つの撮像部24,25は、照射部23から照射された赤外LED光がマーカー11を構成する白色セル12aと黒色セル12bに照射された後、白色セル12aから反射された光を2つのカメラで撮像する。なお、2つの撮像部24,25では、それぞれ単独の画像が撮影され、2つの撮像部24,25を用いて取得された撮像データは、算出部26に送信される。
 算出部26は、2つの撮像部24,25から送信された撮像データに基づき三角測量による演算を行うことで、画像処理装置本体21に対してマーカー11がどの様な距離(相対距離)と方向(相対角度)に位置するのかを算出することが可能である。
 ここで、算出部26の走査・演算方法について、図2を用いて説明する。算出部26は、2つの撮像部24,25によって撮像された撮像データを2つの撮像部24,25から取得した後、得られた撮像データを2値化処理することで、図2に示す2値化画像を得る。なお、この2値化処理の段階で、白色セル12aから反射された赤外LED光の反射光と、黒色セル12bから反射されなかった箇所とが、白黒の2値化処理によって明確化される。
 さらに、算出部26は、2値化処理によって得られた2値化画像に対して、図2における紙面左上側から右側に向けた水平方向に走査を行う。最初に実行される走査の様子が、符号Yとして示されている。ここで、第1回目の走査であるYについては、黒色セル12bのみが検出されるので、その認識結果は「黒」となり、バイナリーコードで表現される「0」のみの検出結果となる。この場合、第1回目の走査では検出スタート位置Bが検出できなかったことが認識できるので、続いて予め設定された寸法だけ2値化画像の下方側に移動した符号Yとして示される位置で、第2回目の走査が実行される。図2の例では、第2回目の走査であるYについても黒色セル12bのみが検出されるので、その認識結果は「黒」となり、バイナリーコードで表現される「0」のみの検出結果となる。つまり、第2回目の走査では検出スタート位置Bが検出できなかったことが認識できるので、さらに予め設定された寸法だけ2値化画像の下方側に移動して、走査が継続される。
 算出部26では、上述した手順で走査を継続し、第n回目の走査であるYを実行したときに、初めて白色セル12aが検出され、その認識結果は「白、黒、白」となり、バイナリーコードで表現される「1、0、1」なる情報が得られる。このとき、算出部26は、検出スタート位置Bを検出したことを認識することができたこととなる。さらにこのとき、算出部26では、「白、黒、白」と認識されたセル12における2値化画像上の寸法を算出することができる。例えば、図2で示すように、「白、黒、白」と認識できたセル12の2値化画像上の寸法は、いずれもLであることが確認できる。また、この実施形態では、セル12は正方形であることが予め明らかであるので、本実施形態に係るマーカー11を構成する白色セル12aと黒色セル12bの寸法は、L×Lの寸法からなる正方形であることが認識できる。
 第n回目の走査であるYを実行することで検出スタート位置Bを検出したことを認識した算出部26では、第n+1回目の走査であるYn+1を実行する際には、第n回目の走査位置から寸法Lだけ2値化画像の下方側に移動したY+Lの位置で走査Yn+1を実行する。つまり、算出部26は、第n回目の走査で検出スタート位置Bを認識し、次に走査すべき箇所である4行あるID情報付与位置Bの最初の行の位置を、2値化画像上の座標を算出することで認識することができるので、当該位置まで走査位置を移動させるとともに1度の走査を行うことによって、4行あるID情報付与位置Bの最初の行の走査Yn+1を実行することが可能となる。なお、走査Yn+1を実行するに際して、走査位置の余裕代を持たせるために、第n回目の走査位置から寸法Lに僅かな寸法sを加えた寸法(L+s)だけ2値化画像の下方側に移動したY+(L+s)の位置で走査Yn+1を実行するようにしてもよい。このような制御を採用することで、走査精度の向上を図ることが可能となる。
 そして、この後、4行あるID情報付与位置Bの2行目から5行目までを、上述した最初の行の走査Yn+1と同様に走査Yn+2、Yn+3、Yn+4と順次実行することで、4行あるID情報付与位置Bの全てに設定されたID情報を、各行に対して1回の走査を実行することで取得することができる。すなわち、第n+2回目の走査であるYn+2を実行する際には、第n回目の走査位置から寸法2Lだけ2値化画像の下方側に移動したY+L×2の位置で走査Yn+2を実行し、第n+3回目の走査であるYn+3を実行する際には、第n回目の走査位置から寸法3Lだけ2値化画像の下方側に移動したY+L×3の位置で走査Yn+3を実行し、第n+4回目の走査であるYn+4実行する際には、第n回目の走査位置から寸法4Lだけ2値化画像の下方側に移動したY+L×4の位置で走査Yn+4を実行する。なお、図2では、4行のID情報付与位置Bについては、上の行から「白、黒、白」、「白、白、白」、「白、黒、白」、「白、白、白」の順でセル12が配置されており、これらをバイナリーコードで表現すると「1、0、1」、「1、1、1」、「1、0、1」、「1、1、1」と示すことができる。算出部26では、かかる情報を4行あるID情報付与位置Bから得たことになる。
 さらに、走査Yn+4の後に実行される走査Yn+5によって、第n回目の走査位置から寸法5Lだけ2値化画像の下方側に移動したY+L×5の位置で走査Yn+5を実行することで、「白、黒、白」の認識結果が得られ、バイナリーコードで表現される「1、0、1」なる情報が得られる。このとき、算出部26では、この走査Yn+5が検出スタート位置Bを検出してから5回目の走査であり、当該位置が検出エンド位置Bであることが予め分かっている。そして、この走査Yn+5で検出された情報が「1、0、1」であり、この情報は検出エンド位置Bを示す情報と一致することから、このYからYn+5までの走査が正常に実行され、終了できたことが認識できる。
 以上説明した走査手順によって、算出部26は、マーカー11に設定されたID情報を正確に取得することが可能となる。なお、上述した操作手順において、例えば検出スタート位置Bや検出エンド位置Bが取得できなかった場合には、2つの撮像部24,25から送信された撮像データが一部欠けていたり、不完全であったりする可能性があるので、再度、2つの撮像部24,25からの撮像データを取得し直す操作手順を実行することとなる。また、2つの撮像部24,25によって撮像された撮像データが複数存在するときには、取得したID情報に基づいて、現時点で採用するマーカー11を選択するなどの処理を算出部26に実行させればよい。
 また、走査精度の向上を図るための手段として、走査Yn+2、Yn+3、Yn+4、Yn+5を実行するに際しては、走査位置の余裕代を持たせるために、それぞれの走査で第n回目の走査位置から2値化画像の下方側に移動したY+L×2+sの位置で走査Yn+2を実行し、Y+L×3+sの位置で走査Yn+3を実行し、Y+L×4+sの位置で走査Yn+4を実行し、Y+L×5+sの位置で走査Yn+5を実行するようにしてもよい。
 また、以上説明した走査手順では、検出スタート位置Bを認識した後に、4行あるID情報付与位置Bの2行目から5行目までを走査し、最後に検出エンド位置Bを走査する実施形態の例を説明した。しかしながら、算出部26によって行われる走査の順番については、上述したものには限られない。例えば、検出スタート位置Bを認識した後に、4行あるID情報付与位置Bの2行目から5行目までを飛ばして検出エンド位置Bを走査し、まず初めに検出スタート位置Bと検出エンド位置Bを確実に検出した上で、ID情報が付与されている4行あるID情報付与位置Bの2行目から5行目までを走査するようにしてもよい。かかる走査手順を実行することで、取得した画像データがマーカー11であることを確実に検出でき、さらに、マーカー11以外の画像などのノイズに対する処理時間の短縮を図ることが可能となる。
 なお、図1および図2で示したマーカー11では、マーカー11の外周部を取り囲むように、情報を含まない22個の黒色セル12bを配置した。この外周部に配置された22個の黒色セル12bは、その内部に配置された情報を含む3列6行、18個のセル12との境界として機能するだけでなく、外部からの光を吸収して内部に配置された情報を含む3列6行、18個のセル12の検出精度を向上させる機能も発揮する。特に、撮像部24,25から見てマーカー11が逆光となる環境の場合、外周部に配置された22個の黒色セル12bが余分な光を吸収し、内部に配置された情報を含む3列6行、18個のセル12に対する余分な光の反射や入り込みを抑制することができる。かかる構成によって、画像処理装置本体21によるマーカー11の検出安定効果が得られる。
 ID情報を取得した算出部26は、その情報を制御部27に送信することができる。算出部26から送信された情報を得た制御部27は、画像処理装置本体21に付加された機構を動作させたり、外部に対する動作指令を実行させたりするなど、ID情報を利用した様々な制御を実行することが可能である。その動作例としては、例えば、工場内や物流倉庫内などで利用される移動ロボットの移動速度と進行方向とを変更する駆動部を動作制御することなどが想定できる。
 以上、図1および図2を用いて、本実施形態に係る画像処理装置10の基本構成について説明を行った。次に、図3を参照図面に加えることで、本実施形態に係る画像処理装置10の動作説明を行うこととする。ここで、図3は、本実施形態に係る画像処理装置の動作説明を行うための画像処理工程を示すフローチャートである。
 本実施形態に係る画像処理装置10を動作させることで実行される画像処理工程(Process α)では、まず、照射部23が赤外LED光をマーカー11に対して照射する(ステップS101)。照射部23からマーカー11に対して照射された赤外LED光は、マーカー11を構成するセル12のうち、黒色セル12bに照射された光は反射せず、白色セル12aに照射された光のみが反射光として画像処理装置本体21側に反射してくることとなる。白色セル12aから反射された光は、2つのカメラによって構成される2つの撮像部24,25によって撮像される(ステップS102)。このとき、撮像部24,25では、それぞれが1つずつの撮像データを撮像することとなる。ステップS102の処理が実行された後、2つの撮像部24,25によって撮像された2つの撮像データは、算出部26に送信される。
 算出部26は、2つの撮像部24,25によって撮像された撮像データを2つの撮像部24,25から取得した後、得られた撮像データを2値化処理することで、図2に示す2値化画像を得る(ステップS103)。
 さらに、算出部26は、2値化処理によって得られた2値化画像に対して、図2を用いて説明した走査を実行する(ステップS104)。なお、算出部26によって行われる効率的な走査手順は上述したので、ここでは説明を省略する。
 算出部26による2値化画像に対する走査によって、検出スタート位置B、4行あるID情報付与位置B、検出エンド位置Bのすべてが正常に算出部26によって認識されると、マーカー11が検出できたとしてステップS105のYESに処理を進める。一方、算出部26によって、検出スタート位置B、4行あるID情報付与位置B、検出エンド位置Bの1つでも認識できなかった場合には、ステップS105のNOに処理を進める。すなわち、マーカー11の検出ができなかった場合には、再びステップS101に戻って処理を再実行することとなる。
 マーカー11の検出が成功してステップS105のYESに処理を進めると、続いて算出部26は、4行あるID情報付与位置Bからの情報に基づきID情報を取得する(ステップS106)。
 ID情報を取得した算出部26は、設定されたIDと照合することで、ID情報に紐付けられるマーカー11を選択し、1つのID情報を決定する(ステップS107)。このとき、取得したID情報が複数存在する場合には、ステップS107の処理を進める際に、複数あるID情報から現時点で採用すべきID情報に紐付けられるマーカー11を選択することで、1つのID情報を決定することとなる(ステップS107)。なお、複数存在するID情報の中から1つのID情報を選択する方法としては、例えば、マーカー11毎に付与された識別番号の最も若い番号を持つマーカー11のID情報付与位置Bに設定されたID情報を選択する、といった手法が考えられる。
 ステップS107の処理でIDを照合し、ID情報に紐付けられるマーカー11が選択されると、このマーカー11を左右2つの撮像部24,25によって撮像して得られた左右2つの撮像データそれぞれで、マーカー11の中心座標を算出する(ステップS108)。
 ステップS108の処理によって左右2つの撮像データそれぞれで算出されたマーカー11の中心座標を利用して、算出部26は、三角測量に基づく演算を実行し、ID情報を得たマーカー11との距離と角度とを算出する(ステップS109)。さらに、算出部26は、取得したID情報と、このID情報に基づき算出したマーカー11との距離と角度についての算出結果を、制御部27に送信する(ステップS110)。これらステップS101からステップS110までの処理を実行して、本実施形態に係る画像処理工程(Process α)が完了する。
 以上説明した本実施形態に係る画像処理工程(Process α)の実行によって、算出部26は、マーカー11に設定されたID情報を正確に取得することが可能となる。なお、本発明に係る画像処理装置の好適な実施形態について説明したが、本発明の技術的範囲は上記実施形態に記載の範囲には限定されない。上記実施形態には、多様な変更又は改良を加えることが可能である。
 例えば、上述した実施形態に係る画像処理装置10において、マーカー11は、14個の白色セル12aと、26個の黒色セル12bとが、5列8行の行列配置で二次元平面上に配置されていた。また、このマーカー11では、マーカー11の外周部を取り囲むように配置された22個の黒色セル12bを設けたが、この22個の黒色セル12bは情報を含むものではなく、マーカー11と空間とを区分けして読み取りの誤認識を防止するための境界として機能する部分であった。すなわち、図1で示すマーカー11において被検出体として機能する箇所は、符号Aで示す3列と、符号Bで示す6行とからなる3列6行、18個のセル12の行列配置によって構成される部分であった。しかしながら、本発明に係るマーカーの形態については、図1で示したものには限られず、あらゆる変更を加えることができる。例えば、マーカー11の外周部を取り囲むように配置された22個の黒色セル12bについては、省略することができる。また、本発明に係るマーカーを構成するセル12の配置数については、例えば図4で例示するような3列3行、9個のセル12の行列配置によって構成されるものなど、あらゆる形態を採用することができる。ちなみに、図4は、本発明に係るマーカーが取り得る多様な形態の一例を示す図であるが、図4で示すマーカー11’の場合、ID情報付与位置Bは1行であり、3ビット構成の情報をマーカー11’に持たせることが可能となっている。
 また例えば、上述した実施形態に係る画像処理装置10において、マーカー11を構成するセル12は、正方形で構成されるものであったが、本発明のセルについては、長方形などの矩形形状を採用することが可能である。セルの形状が予め分かっていれば、上述した実施形態で説明した走査や演算等の処理については、同様に実施することが可能である。
 つまり、本発明に係る被検出体としてのマーカーは、二次元平面上に、正方形又は長方形からなるセル12であって、赤外LED光を反射可能な白色セル12aと赤外LED光を反射不能な黒色セル12bとを、a×a、又はa×b(ただし、a、b=3,4,5,6,…)の行列配置して構成することで実現できる。
 また例えば、上述した実施形態に係る画像処理装置10では、照射部23から照射される光に赤外LED光を用いた場合を例示した。しかしながら、本発明に用いられる光は赤外LED光に限定されるものではなく、紫外線などの他の波長の光やLED以外の光源からの光を用いても上述した実施形態と同様の効果が得られる。
 また例えば、上述した実施形態に係る画像処理装置10では、本発明に係る撮像部が2つのカメラからなる撮像部24,25によって構成されることで、2つの撮像データに基づき三角測量による演算処理が実行されていた。しかしながら、本発明に係る撮像部については、上述した実施形態と同様の撮像データ処理を行うことができればよく、例えば、1つのカメラに1つのレンズを備えるカメラによって本発明に係る撮像部を構成してもよいし、又は、1つのカメラに2つのレンズを備えるラジオカメラによって本発明に係る撮像部を構成してもよい。
 また例えば、上述した実施形態に係る画像処理装置10では、2つのカメラからなる撮像部24,25と、赤外LED光を照射する照射部23が別体で構成されていたが、本発明に係る照射部と撮像部は一体的に構成された装置としてもよい。
 また例えば、上述した実施形態に係る画像処理装置10では、2つの撮像部24,25によって撮像された撮像データは、算出部26によって2値化処理されるものであった。しかしながら、本発明の範囲はこの例に限られず、例えば、2つの撮像部24,25のそれぞれが上述した算出部26と同様の機能である画像処理機能を備えており、撮像部24,25がマーカー11側から反射されてくる赤外LED光を撮像した後、直ちに撮像部24,25側で2値化処理を行い、2値化処理された2値化画像の画像データを算出部26に送信するような装置構成や処理手順を採用することも可能である。
 また例えば、上述した実施形態に係る画像処理装置10では、マーカー検出部22に算出部26を設け、この算出部26でID情報の取得や、このID情報に基づきマーカー11との距離と角度についての算出を行わせ、その算出結果を制御部27に送信するものであった。しかしながら、算出部26と制御部27とを別部材としたのは1つの例示であり、これらの部材は、別体としてもよいし、1つのマイクロプロセッサによって構成することとしてもよいし、さらには、画像処理装置本体21の外に配置し、算出部26や制御部27と画像処理装置本体21とを無線やインターネット回線を介して接続するように構成してもよい。
 また例えば、上述した実施形態に係る画像処理装置10において、算出部26は、2値化処理によって得られた2値化画像に対して、図2における紙面左上側から右側に向けた水平方向に走査を行うものであった。しかしながら、算出部26が2値化画像に対して行う走査の方向は、水平方向には限られず、垂直方向に走査を行う処理を採用してもよい。
 その様な変更又は改良を加えた形態も本発明の技術的範囲に含まれ得ることが、請求の範囲の記載から明らかである。
 以上、本実施形態に係る画像処理装置10の基本構成と動作説明を行った。次に、上述した実施形態に係る画像処理装置10を工場内や物流倉庫内などで利用される移動ロボットに適用した場合の実施例について、説明することとする。なお、以下に記す実施例において、上述した実施形態と同一又は類似する部材や工程については、同一符号を付して説明を省略する場合がある。
 図5は、本実施例に係る移動ロボットの移動例を示す図である。移動ロボット30は、通路を定める境界40(40-1,40-2)に沿って配置される被検出体としてのマーカー11’(11’-1)を検出し、検出したマーカー11’の位置に基づいて、境界40から一定の距離を保ちながら目的地点に向かって移動する。本実施例に使用されるマーカー11’は、移動ロボット30と正対するように設置され、図4で例示した3列3行、9個のセル12の行列配置によって構成されるものを想定しており、このマーカー11’については、ID情報付与位置Bが1行のみとなっており、3ビット構成の情報をマーカー11’に持たせることが可能となっている。そして、このマーカー11’に設定されたID情報は、マーカー11’のそれぞれを一意に識別するためのマーカーIDが割り当てられている。なお、通路を定める境界40は、例えば壁や間仕切りや白線ラインなどといったものである。
 図5に示す移動例では、移動ロボット30の進行方向に対して左側の境界40-1から一定の距離保って移動ロボット30が移動する。移動ロボット30は、境界40-1から一定の距離Xrefを保つために、検出したマーカー11’-1までの距離Zと方向θとを取得し、距離Zと方向θとが予め定められた条件を満たす進行方向を算出する。移動ロボット30は、算出した進行方向に移動する。方向θは、移動ロボット30の進行方向と、検出されたマーカー11’-1の方向とが成す角である。予め定められた条件を満たす進行方向は、方向θがarcsin(Xref/Z)となる進行方向である。移動ロボット30は、マーカー11’-1までの距離Zが予め定められた切替閾値より近くなると、目標をマーカー11’-2に切り替えて移動する。移動ロボット30からの距離が切替閾値より近い範囲を切替範囲という。
 次に、図6を参照して本実施例に係る移動ロボット30の具体的な構成例を説明する。ここで、図6は、本実施例に係る移動ロボットの構成例を示すブロック図である。本実施例に係る移動ロボット30は、駆動部31と、マーカー検出部22と、制御部27とを備える。
 駆動部31は、駆動輪32,33と、モータ34,35と、モータ制御部36とを備える。駆動輪32は、移動ロボット30の進行方向に対して左側に備えられる。駆動輪33は、移動ロボット30の進行方向に対して右側に備えられる。モータ34は、モータ制御部36の制御に応じて、駆動輪32を回転させる。モータ35は、モータ制御部36の制御に応じて、駆動輪33を回転させる。モータ制御部36は、制御部27から入力されるモータ34,35それぞれに対する角速度指令値に基づいて、モータ34,35に対して電力を供給する。
 モータ34,35がモータ制御部36から供給される電力に応じた角速度で回転することにより、移動ロボット30が前進又は後進する。また、モータ34,35の角速度に差を生じさせることにより、移動ロボット30の進行方向が変更される。例えば、前進の際に左側の駆動輪32の角速度を右側の駆動輪33の角速度より大きくすることにより、移動ロボット30は右旋回しながら移動する。また、駆動輪32,33それぞれを逆向きに回転させることにより、移動ロボット30は位置を変えずに旋回する。なお、移動ロボット30は、移動ロボット30の姿勢を安定させるために、駆動輪32,33以外の車輪を有していてもよい。
 マーカー検出部22は、照射部23と、2つの撮像部24,25と、算出部26を備える。
 照射部23は、例えば、移動ロボット30の前面の中央位置に取り付けられ、赤外LED光をマーカー11’に対して照射することができ、マーカー11’側から反射された反射光を2つの撮像部24,25によって読み取らせるために用いられる。照射部23から照射される赤外LED光は、工場内などの暗所や可視光の強い場所等であってもマーカー11の撮像が可能であるため、好ましい。
 2つの撮像部24,25は、マーカー検出部22の左右に配置された2つのカメラによって構成されている。撮像部24は、移動ロボット30の前面の左側に取り付けられ、移動ロボット30の前面側に位置するマーカー11’から反射される赤外LED光を検出し撮像する。撮像部25は、移動ロボット30の前面の右側に取り付けられ、移動ロボット30の前面側に位置するマーカー11’から反射される赤外LED光を検出し撮像する。撮像部24,25は、移動ロボット30の中心を通る正面方向の直線に対して対称に、移動ロボット30の筐体に取り付けられる。撮像部24,25には、例えば赤外線フィルタを組み合わせたカメラが用いられる。これら2つの撮像部24,25は、照射部23から照射された赤外LED光がマーカー11’を構成する白色セル12aと黒色セル12bに照射された後、白色セル12aから反射された光を2つのカメラで撮像することで撮像データを得ることのできる構成部位である。2つの撮像部24,25を用いて得られた撮像データは、算出部26に送信される。
 算出部26は、2つの撮像部24,25から送信された撮像データに基づき、2値化処理を行うことで白黒からなる2値化画像データを形成し、さらに2値化された画像データを用いて三角測量による演算を行うことで、移動ロボット30に対してマーカー11’がどの様な距離(距離Z)と方向(角度θ)に位置するのかを算出することが可能である。算出部26は、撮像部24,25により撮像される画像に複数のマーカー11’が含まれる場合、マーカーIDを検出して目標とするマーカー11’を選択し、目標とするマーカー11’までの距離Zと角度θとを算出する。マーカーIDの検出は、マーカー11’に対して1行設けられたID情報付与位置Bに設定された情報を取得することにより行われる。算出部26は、算出した距離Zおよび方向θとマーカーIDとを含むマーカー情報を制御部27へ出力する。算出される距離Zは、撮像部24と撮像部25とを結ぶ線分上の中心からの距離である。撮像部24と撮像部25とを結ぶ線分が移動ロボット30の進行方向に対して直交するように、撮像部24,25が取り付けられていると、算出部26における演算負荷を軽減できる。
 制御部27は、マーカー検出部22から取得するマーカー情報に基づいて、駆動部31を制御する。図7は、本実施例に係る制御部の構成例を示すブロック図である。本実施例に係る制御部27は、移動経路記憶部27aと、マーカー選択部27bと、駆動制御部27cとを備える。移動経路記憶部27aには、移動ロボット30の移動経路に沿って配置された複数のマーカー11’に関する属性情報を含むテーブルが予め記憶されている。マーカー選択部27bは、移動経路記憶部27aに記憶されているテーブルに基づいて、目標とするマーカー11’のマーカーIDをマーカー検出部22へ出力する。マーカー選択部27bは、マーカー検出部22から入力されるマーカー情報に基づいて、目標とするマーカー11’を切り替えるか否かを判定する。マーカー選択部27bは、目標とするマーカー11’を切り替える場合、現在の目標とするマーカー11’の次のマーカー11’をテーブルから選択する。
 駆動制御部27cは、マーカー検出部22から出力されるマーカー情報に基づいて、移動経路記憶部27aに記憶されているテーブルから属性情報および制御情報を読み出す。属性情報は、目標とするマーカー11’に関する情報である。制御情報は、目標とするマーカー11’に紐付けられた制御を示す情報である。マーカー11’に紐付けられた制御は、例えば進行方向の変更を示すマーカー11’の近傍において旋回する制御などである。駆動制御部27cは、マーカー情報、属性情報および制御情報に基づいて、駆動部31を駆動制御する。
 図8は、本実施例に係る移動経路記憶部に記憶されているテーブルの一例を示す図である。テーブルは、「マーカーID」と、「通路距離」と、「設置側」と、「方向転換」と、「最終マーカー」との項目の列を備える。各行は、マーカー11’ごとに存在する属性情報である。テーブルにおける各行は、移動ロボット30が移動経路に沿って移動する際に通過するマーカー11’の順序で並んでいる。「マーカーID」の列には、行に対応するマーカー11’のマーカーIDが含まれる。「通路距離」の列には、行に対応するマーカー11’と、移動ロボット30の移動経路がどれだけ離れた距離であるかを示す距離情報が含まれる。通路距離は、正の値として設定される値であり、対象となるマーカー11’から移動ロボット30の移動経路までの距離を示す値である。また、この実施例において通路距離は、マーカー11’から移動ロボット30の移動経路における移動方向に対して略直交する方向に位置する目標地点までの距離を示している。
 「設置側」の列は、移動ロボット30が移動経路に沿って移動する場合において、行に対応するマーカー11’が移動ロボット30の右側又は左側のいずれに配置されているかを示す情報が含まれる。「方向転換」の列は、行に対応するマーカー11’に対して移動ロボット30が予め定められた距離又は切替閾値まで近づいたときに、移動ロボット30の進行方向の変更を示す回転情報が含まれる。回転情報が0(ゼロ)度である場合、移動ロボット30の進行方向の変更がないことを示す。回転情報が0度以外である場合、回転情報が示す角度分、移動ロボット30の進行方向を時計回り又は反時計回りに変更する。「最終マーカー」の列は、行に対応するマーカー11’が、移動経路における目標地点を示すマーカー11’であるか否かを示す情報が含まれる。図8に示すテーブルでは、例えばマーカーID「M」を有するマーカー11’が目標地点のマーカーであることを示す。この例の場合、目標地点を示すマーカー11’は1つである。
 図9は、本実施例に係る駆動制御部におけるマーカー情報に基づいた制御に係る構成例を示すブロック図である。駆動制御部27cは、通過位置算出部27cと、補正角算出部27cと、指令値算出部27cとを備える。通過位置算出部27cは、マーカー情報に含まれるマーカー11’までの距離Zおよび方向θを入力する。通過位置算出部27cは、距離Zおよび方向θに基づいて、現在の移動ロボット30の進行方向で移動してマーカー11’に最接近したときのマーカー11’までの距離xと、マーカー11’に最接近するまでの移動距離yとを算出する。移動ロボット30がマーカー11’に最接近したときの位置は、移動ロボット30の位置から進行方向に伸ばした移動直線に対して直交する直線であってマーカー11’の位置を通過する直線と、移動直線との交点である。距離xは、(Z・sinθ)として得られる。移動距離yは、(Z・cosθ)として得られる。距離xは、マーカー通過距離ともいう。また、移動距離yは、マーカー横までの距離ともいう。
 補正角算出部27cは、通路の境界から移動経路までの距離Xrefから距離xを減算して得られる差分ΔXと、移動距離yとを入力する。補正角算出部27cは、差分ΔXと移動距離yとに基づいて、移動ロボット30の進行方向に対する補正角Δθを算出する。具体的には、補正角算出部27cは、arctan(ΔX/y)で得られる値を補正角Δθとする。
 指令値算出部27cは、並進速度指令値Vrefと、角速度指令値ωrefと、角速度の測定値ωl’,ωr’と、補正角Δθとを入力する。並進速度指令値Vrefは、移動ロボット30の並進速度に対する指令値(目標値)である。角速度指令値ωrefは、進行方向を基準として時計回り方向又は反時計回り方向へ進行方向を変更する際の角速度である。角速度指令値ωrefは、時計回り方向の変化量を正の値として定めてもよいし、反時計回り方向の変化量を正の値として定めてもよい。角速度の測定値ωl’,ωr’は、モータ34,35それぞれに設けられているエンコーダにより測定された角速度である。指令値算出部27cは、並進速度指令値Vrefと角速度指令値ωrefと角速度の測定値ωl’,ωr’と補正角Δθとに基づいて、移動ロボット30を並進速度指令値Vrefおよび角速度指令値ωrefで移動させつつ、進行方向を補正角Δθ変更させる角速度指令値ωl,ωrを算出する。指令値算出部27cは、算出した角速度指令値ωl,ωrを駆動部31へ出力する。
 図10は、本実施例に係る駆動制御部において算出される補正角Δθを示す図である。マーカー検出部22が境界40-1上に配置されたマーカー11’を検出することにより、移動ロボット30からマーカー11’までの距離Zと、移動ロボット30の進行方向を基準としてマーカー11’が位置する方向θとが得られる。通過位置算出部27cが距離Zおよび方向θから距離xおよび移動距離yを算出する。移動ロボット30は、移動経路に沿って配置されたマーカー11’から一定の距離Xref離れた位置Ppassを通過するために、進行方向を変更する必要がある。位置Ppassは、マーカー11’の属性情報のうち「設置側」を示す情報に基づいて定まる。図10は、マーカー11’が移動経路の左側に設定されている場合を示している。
 図10に示す例において、現在の進行方向を維持したまま移動ロボット30が移動すると、移動ロボット30は、位置Ppassより差分ΔX離れた位置を通過する。そこで、補正角算出部27cが、差分ΔXと移動距離yとに基づいて、進行方向に対する補正角Δθを算出する。指令値算出部27cは、移動ロボット30を並進速度指令値Vrefおよび角速度指令値ωrefで移動させつつ、進行方向を反時計回りに補正角Δθ分変更させるための角速度指令値ωl,ωrを算出して駆動部31を制御する。このように、駆動制御部27cが駆動部31を制御することにより、通路の境界40-1から一定の距離Xrefを隔てた位置に定められた移動経路上を移動ロボット30が移動することができる。
 なお、図10に示した例では、マーカー11’が境界40-1上に配置される場合を説明した。しかし、境界40上にマーカー11’を配置できない場合には、マーカー11’が配置された位置と境界40との差分が通路距離(D,D,・・・,D)としてテーブルに記憶される。この場合、補正角算出部27cは、補正角Δθを算出する際に、通路距離を用いて距離Xref又は差分ΔXのいずれかを補正する。
 以上説明した駆動制御方法によって移動ロボット30が移動経路に沿って移動していくと、最終的には、目標位置のマーカーID「M」を有するマーカー11’に移動ロボット30が近づいていき、停止制御が実行されることとなる。
 次に、図11を用いて、本実施例に係る移動ロボット30の制御システムにおける具体的な処理内容を説明する。図11は、本実施例に係る制御部による制御処理内容を示すフローチャートである。
 移動ロボット30の移動が開始されると、まず初めに上述した実施形態で図3を用いて説明した画像処理工程(Process α)が実行される。この画像処理工程(Process α)の実行によって、算出部26は、マーカー11’に設定されたID情報を取得し、制御部27に送信する。本実施例におけるID情報は、各マーカー11’を一意に識別するためのマーカーIDである。マーカーIDを受け取った制御部27では、初期状態で設定されているマーカーIDが検出できたか否かを判定する(ステップS201)。初期状態において、マーカー選択部27bは、テーブルの最初の行に記憶されているマーカーIDを、目標とするマーカー11’のマーカーIDに選択する。
 マーカー11’を検出できない場合(ステップS201のNO)、制御部27は、マーカー11’を検出できなかったことを示すエラー信号を出力する。駆動制御部27cは、エラー信号に応じて、駆動部31に駆動輪32,33を停止させる(ステップS221)。マーカー選択部27bは、エラー信号に応じて、マーカー11’が検出できないことを示すエラー情報を外部へ出力し(ステップS222)、移動制御処理を終了させる。なお、エラー情報の出力は、移動ロボット30に備えられる出力装置、例えばスピーカやディスプレイを用いて行われる。
 ステップS201において、マーカー11’を検出できた場合(ステップS201のYES)、マーカー選択部27bおよび駆動制御部27cは、マーカー検出部22の算出部26からマーカー情報を取得することとなる(ステップS202)。マーカー選択部27bは、マーカー情報により示されるマーカー11’が最終マーカーであるか否かをテーブルに基づいて判定する(ステップS203)。
 ステップS203において、マーカー11’が最終マーカーである場合(ステップS203のYES)、駆動制御部27cは、マーカー情報により示されるマーカー11’までの距離Zが切替範囲内であるか否かを判定する(ステップS231)。マーカー11’までの距離Zが切替範囲内である場合(ステップS231のYES)、駆動制御部27cは、駆動部31に駆動輪32,33を停止させ(ステップS232)、移動制御処理を終了させる。
 ステップS231において、マーカー11’までの距離Zが切替範囲内でない場合(ステップS231のNO)、駆動制御部27cは、処理をステップS208へ進める。
 ステップS203において、マーカー11’が最終マーカーでない場合(ステップS203のNO)、駆動制御部27cは、マーカー情報により示されるマーカー11’までの距離Zが切替範囲内であるか否かを判定する(ステップS204)。マーカー11’までの距離Zが切替範囲内でない場合(ステップS104のNO)、駆動制御部27cは、処理をステップS208へ進める。
 ステップS204において、マーカー11’までの距離Zが切替範囲内である場合(ステップS204のYES)、駆動制御部27cは、マーカー11’の属性情報に方向転換の指示があるか否かをテーブルに基づいて判定する(ステップS205)。方向転換の指示がない場合(ステップS205のNO)、駆動制御部27cは、処理をステップS207へ進める。
 方向転換の指示がある場合(ステップS205のYES)、駆動制御部27cは、マーカー11’の回転情報をテーブルから取得し、移動ロボット30の進行方向を回転情報の示す角度変更をする制御を、駆動部31に対して行う(ステップS206)。マーカー選択部27bは、現在目標としているマーカー11’の次に目標とするマーカー11’のマーカーIDをテーブルから取得する。マーカー選択部27bは、取得したマーカーIDのマーカー11’をマーカー検出部22へ出力することにより、取得したマーカーIDのマーカー11’を新たな目標に選択し(ステップS207)、処理を画像処理工程(Process α)へ戻す。
 ステップS208において、補正角算出部27cは、マーカー検出部22から取得したマーカー情報に基づいて算出された差分ΔXが許容範囲内であるか否かを判定する(ステップS208)。差分ΔXに対する許容範囲は、移動ロボット30に対して要求される移動の精度、マーカー検出部22におけるマーカー11’の検出の精度、モータ34,35の制御における精度などに基づいて予め定められる。差分ΔXが許容範囲内でない場合(ステップS208のNO)、補正角算出部27cは、差分ΔXに基づいて補正角Δθを算出する(ステップS209)。差分ΔXが許容範囲内である場合(ステップS208のYES)、補正角算出部27cは、補正角Δθを0とする(ステップS210)。
 指令値算出部27cは、駆動輪32,33を駆動するモータ34,35それぞれの角速度の測定値ωl’,ωr’を取得する(ステップS211)。指令値算出部27cは、並進速度指令値Vrefと、角速度指令値ωrefと、角速度の測定値ωl’,ωr’と、補正角Δθとに基づいて、モータ34,35に対する角速度指令値ωl,ωrを算出する(ステップS212)。指令値算出部27cは、角速度指令値ωl,ωrを駆動部31へ出力し(ステップS213)、処理を画像処理工程(Process α)へ戻す。
 以上説明した画像処理工程(Process α)からステップS232までの各処理を含む制御処理が制御部27によって行われることにより、マーカー11’までの距離Zおよび方向θを逐次取得し、進行方向を補正できる。このような制御処理で進行方向が補正されることにより、移動ロボット30は、境界40から一定の距離Xrefを隔てた移動経路を移動することができ、複数のマーカー11’に基づいて移動する際の移動距離を削減できる。
 また、上述した本実施例に係る移動ロボット30の制御システムによれば、広い設置場所を必要としない比較的コンパクトなマーカー11’を採用した場合であっても、その識別および距離計測が精度よく可能である。さらに、上述した本実施例に係る移動ロボット30の制御システムによれば、安価なシステム構成とすることができるので、汎用性が高い移動ロボットの制御システムを提供することが可能となる。
 以上、本発明の好適な実施例について説明したが、本発明の技術的範囲は上記実施例に記載の範囲には限定されない。上記実施例には、多様な変更又は改良を加えることが可能である。
 例えば、図12および図13は、移動ロボットが移動する通路に交差点が存在する場合のマーカーの配置例を示す図である。ここで、図12は、移動ロボット30から見て交差点の遠方側の2つの角にマーカー11’-m,11’-(m+1)を設置する例を示す。図12に示すように、2つのマーカー11’-m,11’-(m+1)が配置されている場合、移動ロボット30は、2つのマーカー11’-m,11’-(m+1)までの距離Z,Z’それぞれが切替範囲内になる位置まで移動し、回転情報で示される角度の旋回により進行方向の変更を行ってもよい。また、図13は、移動ロボット30から見て交差点の遠方側の2つの角のうち進行方向の変更先側の1つの角にマーカー11’-mを設置する例を示す。図13に示すように、マーカー11’-mが設置されている場合、移動ロボット30は、1つのマーカーまでの距離Zが切替範囲内になる位置まで移動し、回転情報で示される角度の旋回により進行方向の変更を行ってもよい。
 また例えば、上述した実施例では、マーカー11’に対して各マーカー11’を一意に識別するためのマーカーIDのみをID情報として付与しておき、移動ロボット30を動作させるためのその他の指令については、図8で示した移動経路記憶部27aに記憶されるテーブルとして構成した例を示した。しかしながら、移動ロボット30を動作させるための指令情報については、全ての指令情報をマーカーに対して持たせるようにしてもよい。例えば、図14は、全ての指令情報をマーカーに対して付与した場合の本発明に係る移動ロボットの制御システムの構成例を示す図である。図14で示す構成例の場合、マーカー11”には、各マーカー11”を一意に識別するためのマーカーIDの他に、図8で示した「通路距離」や「設置側」、「方向転換」、「最終マーカー」などの指令情報を含めることができる。なお、マーカー11”に対して付与するID情報の量を増加させることは、ID情報付与位置Bの行数を増やせばよいだけなので、マーカー自体の大きさの増大を極力抑えつつ情報量を増加させることができ、工場内や物流倉庫などといった現場での広い設置場所は不要となる。そのため、現場作業に支障をきたしてしまうといった課題も発生しない。また、マーカー11”毎に移動ロボット30に対する全ての動作指令情報を持たせることで、システム構成を簡易なものとすることができる。さらに、図14で示すマーカー11”の設置位置を変更すれば、移動ロボット30の移動経路を簡単に変更することができるので、従来技術に比べて汎用性の高い低コストのシステムを実現することが可能となる。
 また例えば、図14で示す構成例については、さらなる変形形態を例示することができる。そこで、図15~図18を用いて、変形形態に係る移動ロボット30の制御システムを説明する。図15は、変形形態に用いられるマーカーの具体例を示す図である。また、図16は、変形形態に係る移動経路記憶部に記憶されているテーブルの一例を示す図である。さらに、図17は、移動ロボットが移動する通路に変形形態で用いられるマーカーが配置された一例と、変形形態に係る移動ロボットの制御システムの動作例を示す図である。またさらに、図18は、変形形態に係る撮像部によって撮像された撮像データの一例を示す図である。
 本変形形態では、予めマーカーIDごとにマーカー111のセル配置が決められている。すなわち、図15に示す例のように、例えば、マーカーIDが「0(ゼロ)」で設定されたマーカー111-0については、中央位置に1行で設定されたID情報付与位置Bが、「黒、黒、黒」の順でセル12が配置されており、これらをバイナリーコードで表現すると「0、0、0」と示すことができる。このマーカー111-0と同様に、マーカーIDが「1」で設定されたマーカー111-1については、ID情報付与位置Bが「黒、黒、白」の順でセル12が配置されており、バイナリーコードで表現すると「0、0、1」と示すことができ、マーカーIDが「2」で設定されたマーカー111-2については、ID情報付与位置Bが「黒、白、黒」の順でセル12が配置されており、バイナリーコードで表現すると「0、1、0」と示すことができ、マーカーIDが「3」で設定されたマーカー111-3については、ID情報付与位置Bが「黒、白、白」の順でセル12が配置されており、バイナリーコードで表現すると「0、1、1」と示すことができ、マーカーIDが「4」で設定されたマーカー111-4については、ID情報付与位置Bが「白、黒、黒」の順でセル12が配置されており、バイナリーコードで表現すると「1、0、0」と示すことができる。
 図15で示したマーカー111には、マーカーIDごとの動作指令が設定されている。この指令内容が、図16で示すテーブルとして設定されている。変形形態に係るテーブルは、「マーカーID」と、「動作」と、「マーカー距離」と、「回転」と、「並進距離」との項目の列を備える。各行は、マーカー111に設定されたマーカーIDごとに存在する属性情報である。テーブルにおける各行は、マーカーIDの数字順に並んでいるが、本変形形態では、この並び順に意味は無い。「マーカーID」の列には、行に対応するマーカー111のマーカーIDが含まれる。「動作」の列には、行に対応するマーカー111と、移動ロボット30の動作内容が含まれる。「マーカー距離」の列には、行に対応するマーカー111と、このマーカー111に対して移動ロボット30をどれだけ離れた距離で移動させるかを示す距離情報が含まれる。マーカー距離は、正の値として設定される値であり、対象となるマーカー111から移動ロボット30の移動経路までの距離を示す値である。また、この変形形態例におけるマーカー距離は、マーカー111が通路の左側に設置され、この通路の左側にあるマーカー111から右側にどれだけの距離をとって移動ロボット30が移動すべきかを示している。
 「回転」の列は、移動ロボット30が回転動作時にどれだけの角度で回転すべきか、もしくは、移動ロボット30が停止時にどれだけの角度分旋回すべきかを示す情報が含まれる。また、「回転」の列は、回転の方向が左右どちらであるかといった情報も含まれる。「並進距離」の列は、行に対応するマーカー111に対して移動ロボット30が予め定められた距離又は切替閾値まで近づいたときに、移動ロボット30が更に並進を続ける距離情報が含まれる。本変形形態例では、例えば図17で示されるように、最初に選択されるマーカー111-2に対して移動ロボット30が予め定められた所定距離まで近づくと、移動ロボット30に対してマーカー111-2の次に近い位置にあるマーカー111-3に切り替えが行われる。ただし、この切り替えが行われる瞬間に、切り替え後のマーカー111-3に設定されたテーブルの動作指令に切り替わるのではなく、切り替え前のマーカー111-2に対して並進動作を行った上で、切り替え後のマーカー111-3に設定されたテーブルの動作指令に基づく動作が実行されるように設定されている。このようなマーカー111の切り替え制御と移動ロボット30の動作制御が行われることで、スムーズな動作制御が実現する。
 以上説明したマーカー111の具体的な配置例が、図17に示されている。なお、本変形形態に使用されるマーカー111-0~4は、移動ロボット30と正対するように設置されるものであるが、図17では、説明の便宜のために、紙面上側がマーカー111-0~4の上方側となるように表示されている。
 本変形形態の場合、複数のマーカー111-0~4ごとにマーカーIDが設定され、このマーカーIDごとに予め動作指令情報がテーブルによって設定されている。したがって、本システムの使用者は、移動ロボット30の移動経路に対応するように、複数のマーカー111-0~4を配置すればよい。具体的には、図17で示す例では、紙面の左側に位置するスタート位置から移動ロボット30を紙面右側に向けて直進させ、最初の交差点で右折させた後に直進させ、次にぶつかる左折路を左折させた後に直進させ、最終的な停止位置で180度右旋回させて移動ロボット30の向きを変更して停止させる、といった動作を設定することを想定している。この場合、移動ロボット30を最初のスタート位置から紙面右側に向けて直進させるために「マーカーID」が「2」であるマーカー111-2を最初の直線経路の通路左側に配置し、次に最初の交差点で右折させるために「マーカーID」が「3」であるマーカー111-3を交差点の手前左側に配置し、次に交差点の右折後に直進させるために「マーカーID」が「2」であるマーカー111-2を右折後の直線経路の通路左側に配置し、次にぶつかる左折路を左折させるために「マーカーID」が「4」であるマーカー111-4を左折路の手前左側に配置し、最後に左折路の左折後に直進させ、最終的な停止位置で180度右旋回させて移動ロボット30の向きを変更して停止させるために「マーカーID」が「1」であるマーカー111-1を最後の直線経路の通路左側であって停止位置近傍に配置する。
 以上のようにマーカー111を配置した上で、想定した移動経路での移動ロボット30の移動を実現するための制御内容について、説明する。本変形形態では、経路上に複数設置されたマーカー111は、地上高が同一となるように設置されている。一方、移動ロボット30が備える2つの撮像部24,25は、マーカー111が設置された地上高よりも低い位置となるように構成されている。したがって、2つの撮像部24,25で撮像した撮像データは、移動ロボット30との距離が近いマーカー111は、撮像データの上側に位置するとともに、より広い範囲を占める反射光として撮像データ上に示されることとなる。一方、移動ロボット30との距離が遠いマーカー111は、撮像データの下側に位置するとともに、より狭い範囲を占める反射光として撮像データ上に示されることとなる。具体的には、図17における紙面の左側に位置するスタート位置から移動ロボット30を紙面右側に向けて直進させた場合、移動ロボット30が備える2つの撮像部24,25は、手前側のマーカー111-2と、奥側のマーカー111-3を撮像することとなる。この場合の撮像データが、図18に示されており、撮像データの左下隅に示された光のパターンが手前側のマーカー111-2を示しており、その右下側に狭い範囲で示された光のパターンが奥側のマーカー111-3を示している。なお、この撮像データは、工場の建屋内で移動ロボット30を動作させた場合の例が示されており、撮像データ内に細長い長方形の光として複数映っているものは、工場内の天井に設置された蛍光灯である。
 図18で示した撮像データを用いて、図2および図3等で示した処理を実行すると、手前側のマーカー111-2のマーカーIDである「2」と、奥側のマーカー111-3のマーカーIDである「3」が、算出部26によって認識される。またこのとき、撮像データ上で最も上方位置に示されるマーカー111-2のマーカーIDである「2」が、移動ロボット30が動作するべき指令情報としてテーブルから選択される。したがって、図18で示された撮像データを得た移動ロボット30は、図16で示したテーブルのマーカーID「2」に従って、「動作」直進、「マーカー距離」右1m、「回転」0度、「並進距離」1mとの動作指令に基づき駆動部31が動作指令を受け、マーカー111-2を僅かに超えた位置まで移動することとなる。なお、現在選択されているマーカー111-2に対して移動ロボット30が予め定められた所定距離まで近づくと、移動ロボット30に対してマーカー111-2の次に近い位置にあるマーカー111-3に切り替えが行われる。ただし、この切り替えが行われる瞬間に、切り替え後のマーカー111-3に設定されたテーブルの動作指令に切り替わるのではなく、切り替え前のマーカー111-2に対して並進動作を行った上で、切り替え後のマーカー111-3に設定されたテーブルの動作指令に基づく動作が実行されることとなる。
 以上説明した動作制御が実行されることにより、図17で示された移動経路に沿った移動ロボット30の移動動作が実行される。なお、本変形形態では、経路上に複数設置されたマーカー111は、地上高が同一となるように設置されており、一方、移動ロボット30が備える2つの撮像部24,25は、マーカー111が設置された地上高よりも低い位置となるように構成されていた。しかし、本発明では、被検出体が複数設置された場合に、算出部は、第一セルとしての白色セル12aから反射された光を2つのカメラで撮像する撮像部によって撮像された撮像データ内に被検出体であるマーカーを示す光が複数確認されたときに、検出部から最も近い位置にある被検出体を選択し、選択された当該被検出体のID情報付与位置に設定されたID情報を検出するようにすればよい。また、算出部による検出部から最も近い位置にある被検出体であるマーカーの選択は、検出部と選択された当該マーカーとの距離によって判断されることとすればよい。したがって、経路上に複数設置されたマーカー111の地上高が同一となるように設置するとともに、移動ロボット30が備える2つの撮像部24,25が、マーカー111が設置された地上高よりも高い位置となる場合には、2つの撮像部24,25で撮像した撮像データは、移動ロボット30との距離が近いマーカー111は、撮像データの下側に位置するとともに、より広い範囲を占める反射光として撮像データ上に示されることとなる。一方、移動ロボット30との距離が遠いマーカー111は、撮像データの上側に位置するとともに、より狭い範囲を占める反射光として撮像データ上に示されることとなる。つまり、マーカー111の地上高と2つの撮像部24,25との位置関係に応じて、撮像データ上に示された光の位置又は大きさに基づき、算出部による検出部から最も近い位置にある被検出体であるマーカーの選択を行うことが可能となる。このような構成を採用することで、本発明によれば、安価に移動ロボットの制御システムを実現することができる。
 以上、図15~図18を用いて、変形形態に係る移動ロボット30の制御システムを説明した。上述した変形形態では、被検出体としてマーカー111を用いた場合を例示したが、この変形形態に対しては、所定の規則に基づく信号を発信するビーコンを被検出体として用いることも可能である。この場合、ビーコンは数msec単位で発光信号のオン・オフを行うので、2つの撮像部24,25は、ビーコンの発光信号に対応した複数枚の撮像データを撮像し、これら複数枚の撮像データによって発光信号のオン・オフ状態を時系列で確認することで、上述したマーカー111と同様に、ビーコンごとのID情報を検出することができる。
 すなわち、本発明に係る画像処理装置は、所定の規則に基づく信号を発信するビーコンからなる被検出体と、前記被検出体から発信される信号を受信し、受信された信号に基づいて前記被検出体に設定された信号情報を取得する検出部と、を備える画像処理装置であって、前記検出部は、前記被検出体が複数設置された場合に、複数の被検出体から得られた信号情報に基づき、前記検出部から最も近い位置にある被検出体を選択し、選択された当該被検出体に設定されたID情報を検出するように構成することができる。
 また、本発明に係る移動ロボットの制御システムは、移動ロボットの移動速度と進行方向とを変更する駆動部と、目標地点までの移動経路に沿って配置された複数の被検出体を検出する検出部と、前記検出部により検出された前記被検出体に設定されたID情報に基づいて前記駆動部を駆動制御する制御部と、を備え、前記被検出体は、所定の規則に基づく信号を発信するビーコンとして構成され、前記検出部は、前記被検出体が複数設置された場合に、複数の被検出体から得られた信号情報に基づき、前記検出部から最も近い位置にある被検出体を選択し、選択された当該被検出体に設定されたID情報を検出するように構成することができる。
 さらに、本発明に係る移動ロボットの制御方法は、移動ロボットの移動速度と進行方向とを変更する駆動部と、目標地点までの移動経路に沿って配置された複数の被検出体を検出する検出部と、前記検出部により検出された前記被検出体に設定されたID情報を取得する制御部と、を備え、前記被検出体は、所定の規則に基づく信号を発信するビーコンとして構成され、前記検出部は、前記被検出体が複数設置された場合に、複数の被検出体から得られた信号情報に基づき、前記検出部から最も近い位置にある被検出体を選択し、選択された当該被検出体に設定されたID情報を検出するようにした移動ロボットの制御方法であって、前記制御部に、前記検出部から最も近い位置にある被検出体のID情報に基づいて前記駆動部を駆動制御させることができる。
 以上、本発明の好適な実施例および変形形態例について説明したが、本発明の技術的範囲は上記実施例および変形形態例に記載の範囲には限定されない。上記実施例および変形形態例には、多様な変更又は改良を加えることが可能である。
 例えば、本実施例では、マーカー検出部22の算出部26が、検出した全てのマーカー11’のマーカー情報をそれぞれ算出し、算出した各マーカー情報を制御部27へ出力する動作を説明した。この場合、制御部27のマーカー選択部27bは、マーカー選択部27bから出力される指示に基づいて、複数のマーカー情報から目標とするマーカー11’のマーカー情報を選択するものであった。しかしながら、マーカー検出部22については、マーカー選択部27bから入力されるマーカーIDのマーカー11’を検出するように動作させる構成を採用することも可能である。本発明に係る画像処理装置および移動ロボットの制御システムでは、上述した実施形態と実施例で実現されたものと同様の作用効果を得られる範囲において、様々な構成と動作手順の変形形態を採用することができる。
 また例えば、上述の移動ロボット30は、内部にコンピュータシステムを有していてもよい。その場合、移動ロボット30に備えられる制御部27が行う処理の過程は、プログラムの形式でコンピュータ読み取り可能な記録媒体に記憶されており、このプログラムをコンピュータが読み出して実行することによって、各機能部の処理が行われることになる。ここでコンピュータ読み取り可能な記録媒体とは、磁気ディスク、光磁気ディスク、CD-ROM、DVD-ROM、半導体メモリ等をいう。また、このコンピュータプログラムを通信回線によってコンピュータに配信し、この配信を受けたコンピュータが当該プログラムを実行するようにしてもよい。
 また例えば、上述した実施形態および実施例で示したマーカー11,11’,11”における白色セル12aと黒色セル12bの配置構成については一例を示したに過ぎない。本発明に適用可能なマーカーにおける白色セル12aと黒色セル12bの配置の組み合わせは、あらゆるパターン構成を採用することができる。特に、検出スタート位置Bと検出エンド位置Bにおける白色セル12aと黒色セル12bの配置の組み合わせは両者で同じである必要はなく、予めそれぞれに対して事前に取り決めたパターン構成を採用するものであってよい。
 なお、上記の実施例は、例として提示したものであり、発明の範囲を限定することは意図していない。これら新規な実施例は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施例やその変形は、発明の範囲や要旨に含まれるとともに、請求の範囲に記載された発明とその均等の範囲に含まれる。
 その様な変更又は改良を加えた形態も本発明の技術的範囲に含まれ得ることが、請求の範囲の記載から明らかである。
 10 画像処理装置、11,11’,11”,111 マーカー(被検出体)、12 セル、12a 白色セル(第一セル)、12b 黒色セル(第二セル)、21 画像処理装置本体、22 マーカー検出部(検出部)、23 照射部、24,25 撮像部、26 算出部、27 制御部、27a 移動経路記憶部、27b マーカー選択部、27c 駆動制御部、27c 通過位置算出部、27c 補正角算出部、27c 指令値算出部、30 移動ロボット、31 駆動部、32,33 駆動輪、34,35 モータ、36 モータ制御部、40,40-1,40-2 境界、B 検出スタート位置、B ID情報付与位置、B 検出エンド位置。

Claims (12)

  1.  二次元平面上に、正方形又は長方形からなるセルであって、照射された光を反射可能な第一セルと照射された光を反射不能な第二セルとを、a×a、又はa×b(ただし、a、b=3,4,5,6,…)の行列配置して構成される被検出体と、
     光を照射する照射部と、前記照射部から照射された光が前記被検出体を構成する前記第一セルと前記第二セルに照射された後、前記第一セルから反射された光をカメラで撮像する撮像部と、前記撮像部によって撮像された撮像データに基づいて、前記被検出体に設定された情報を取得する算出部と、を備える検出部と、
     を備えることを特徴とする画像処理装置。
  2.  請求項1に記載の画像処理装置において、
     前記被検出体は、
     行列配置の1行目又は1列目を構成する複数の前記セルを検出スタート位置とし、
     行列配置の最終行目又は最終列目を構成する複数の前記セルを検出エンド位置とし、
     前記検出スタート位置と前記検出エンド位置の間にある1又は複数の行又は列を構成する複数の前記セルを1又は複数のID情報付与位置として構成され、
     前記検出部が備える前記撮像部又は前記算出部は、前記撮像部によって撮像された撮像データを2値化処理し、当該2値化処理によって得られた2値化画像に対して前記検出スタート位置を水平方向又は垂直方向で走査することで前記セルの2値化画像上の寸法を算出し、算出された寸法の倍数位置に存在する1又は複数の前記ID情報付与位置と前記検出エンド位置の2値化画像上の座標を算出し、当該座標に基づき1又は複数の前記ID情報付与位置と前記検出エンド位置に対してそれぞれ1度の走査を行うことによって、1又は複数の前記ID情報付与位置に設定されたID情報を取得するようにしたことを特徴とする画像処理装置。
  3.  請求項2に記載の画像処理装置において、
     前記検出部が備える前記撮像部又は前記算出部によって行われる前記検出スタート位置、1又は複数の前記ID情報付与位置、および前記検出エンド位置に対する走査が、前記検出スタート位置、前記検出エンド位置、1又は複数の前記ID情報付与位置の順で行われることを特徴とする画像処理装置。
  4.  請求項2又は3に記載の画像処理装置において、
     前記算出部は、前記第一セルから反射された光を2つのカメラで撮像する前記撮像部によって撮像された撮像データが複数存在するときに、取得したID情報に基づいて、現時点で採用する被検出体を選択することを特徴とする画像処理装置。
  5.  請求項2又は3に記載の画像処理装置において、
     前記算出部は、前記被検出体が複数設置された場合に、前記第一セルから反射された光を2つのカメラで撮像する前記撮像部によって撮像された撮像データ内に前記被検出体を示す光が複数確認されたときに、前記検出部から最も近い位置にある被検出体を選択し、選択された当該被検出体の前記ID情報付与位置に設定されたID情報を検出するようにしたことを特徴とする画像処理装置。
  6.  請求項5に記載の画像処理装置において、
     前記算出部による前記検出部から最も近い位置にある被検出体の選択は、前記検出部と選択された当該被検出体との距離によって判断されることを特徴とする画像処理装置。
  7.  請求項6に記載の画像処理装置において、
     複数設置された前記被検出体の地上高が同一に設定されており、前記算出部が前記検出部から最も近い位置にある被検出体の選択を行う判断が、前記撮像部によって撮像された撮像データ内に存在する前記被検出体を示す複数の光の位置又は大きさに基づいて行われることを特徴とする画像処理装置。
  8.  移動ロボットの移動速度と進行方向とを変更する駆動部と、
     目標地点までの移動経路に沿って配置された複数の被検出体を検出する検出部と、
     前記検出部により検出された前記被検出体までの距離と方向とを取得し、前記被検出体までの距離と方向とが予め定められた関係を満たす進行方向を算出し、算出した進行方向に基づいて前記駆動部を駆動制御する制御部と、
     を備え、
     前記被検出体は、二次元平面上に、正方形又は長方形からなるセルであって、照射された光を反射可能な第一セルと照射された光を反射不能な第二セルとを、a×a、又はa×b(ただし、a、b=3,4,5,6,…)の行列配置してなるマーカーとして構成され、
     前記検出部は、
     光を照射する照射部と、
     前記照射部から照射された光が前記マーカーを構成する前記第一セルと前記第二セルに照射された後、前記第一セルから反射された光をカメラで撮像する撮像部と、
     前記撮像部によって撮像された撮像データに基づいて、前記マーカーとの距離と方向を算出する算出部と、
     を備えることを特徴とする移動ロボットの制御システム。
  9.  移動ロボットの移動速度と進行方向とを変更する駆動部と、
     目標地点までの移動経路に沿って配置された複数の被検出体を検出する検出部と、
     前記検出部により検出された前記被検出体までの距離と方向とを取得する制御部と、
     を備え、
     前記被検出体は、二次元平面上に、正方形又は長方形からなるセルであって、照射された光を反射可能な第一セルと照射された光を反射不能な第二セルとを、a×a、又はa×b(ただし、a、b=3,4,5,6,…)の行列配置してなるマーカーとして構成され、
     前記検出部は、
     光を照射する照射部と、
     前記照射部から照射された光が前記マーカーを構成する前記第一セルと前記第二セルに照射された後、前記第一セルから反射された光をカメラで撮像する撮像部と、
     前記撮像部によって撮像された撮像データに基づいて、前記マーカーとの距離と方向を算出する算出部と、
     を備える移動ロボットの制御方法であって、
     前記制御部に、前記被検出体までの距離と方向とが予め定められた関係を満たす進行方向を算出させ、算出した進行方向に基づいて前記駆動部を駆動制御させることを特徴とする移動ロボットの制御方法。
  10.  所定の規則に基づく信号を発信するビーコンからなる被検出体と、
     前記被検出体から発信される信号を受信し、受信された信号に基づいて前記被検出体に設定された信号情報を取得する検出部と、
     を備える画像処理装置において、
     前記検出部は、前記被検出体が複数設置された場合に、複数の被検出体から得られた信号情報に基づき、前記検出部から最も近い位置にある被検出体を選択し、選択された当該被検出体に設定されたID情報を検出するようにしたことを特徴とする画像処理装置。
  11.  移動ロボットの移動速度と進行方向とを変更する駆動部と、
     目標地点までの移動経路に沿って配置された複数の被検出体を検出する検出部と、
     前記検出部により検出された前記被検出体に設定されたID情報に基づいて前記駆動部を駆動制御する制御部と、
     を備え、
     前記被検出体は、所定の規則に基づく信号を発信するビーコンとして構成され、
     前記検出部は、前記被検出体が複数設置された場合に、複数の被検出体から得られた信号情報に基づき、前記検出部から最も近い位置にある被検出体を選択し、選択された当該被検出体に設定されたID情報を検出するようにしたことを特徴とする移動ロボットの制御システム。
  12.  移動ロボットの移動速度と進行方向とを変更する駆動部と、
     目標地点までの移動経路に沿って配置された複数の被検出体を検出する検出部と、
     前記検出部により検出された前記被検出体に設定されたID情報を取得する制御部と、
     を備え、
     前記被検出体は、所定の規則に基づく信号を発信するビーコンとして構成され、
     前記検出部は、前記被検出体が複数設置された場合に、複数の被検出体から得られた信号情報に基づき、前記検出部から最も近い位置にある被検出体を選択し、選択された当該被検出体に設定されたID情報を検出するようにした移動ロボットの制御方法であって、
     前記制御部に、前記検出部から最も近い位置にある被検出体のID情報に基づいて前記駆動部を駆動制御させることを特徴とする移動ロボットの制御方法。
PCT/JP2018/042224 2017-11-28 2018-11-15 画像処理装置、移動ロボットの制御システム、移動ロボットの制御方法 WO2019107164A1 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
DE112018006048.9T DE112018006048T5 (de) 2017-11-28 2018-11-15 Bildverarbeitungsvorrichtung, steuersystem für einen mobilen roboter und steuerverfahren für einen mobilen roboter
CN201880077035.1A CN111417911B (zh) 2017-11-28 2018-11-15 图像处理装置、移动机器人的控制系统、移动机器人的控制方法
US16/767,441 US20200401158A1 (en) 2017-11-28 2018-11-15 Image processing device, mobile robot control system, and mobile robot control method

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
JP2017227765 2017-11-28
JP2017-227765 2017-11-28
JP2018-074860 2018-04-09
JP2018074860A JP2019102047A (ja) 2017-11-28 2018-04-09 画像処理装置、移動ロボットの制御システム、移動ロボットの制御方法

Publications (1)

Publication Number Publication Date
WO2019107164A1 true WO2019107164A1 (ja) 2019-06-06

Family

ID=66665681

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2018/042224 WO2019107164A1 (ja) 2017-11-28 2018-11-15 画像処理装置、移動ロボットの制御システム、移動ロボットの制御方法

Country Status (1)

Country Link
WO (1) WO2019107164A1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20210060795A1 (en) * 2019-08-26 2021-03-04 Seiko Epson Corporation Robot system and control method

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004303137A (ja) * 2003-04-01 2004-10-28 Mitsubishi Heavy Ind Ltd 自律走行型ロボットの特定位置誘導装置及び自律走行型ロボットの特定位置誘導制御方法
JP2006185240A (ja) * 2004-12-28 2006-07-13 Toshiba Corp 移動ロボット装置
JP2006346767A (ja) * 2005-06-13 2006-12-28 Toshiba Corp 移動ロボット、マーカ、移動ロボットの位置姿勢算出方法、移動ロボットの自律走行システム
JP2007010335A (ja) * 2005-06-28 2007-01-18 Fujitsu Ltd 車両位置検出装置及びシステム
JP2014021624A (ja) * 2012-07-13 2014-02-03 Sharp Corp 自律走行装置、及び自律走行システム

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004303137A (ja) * 2003-04-01 2004-10-28 Mitsubishi Heavy Ind Ltd 自律走行型ロボットの特定位置誘導装置及び自律走行型ロボットの特定位置誘導制御方法
JP2006185240A (ja) * 2004-12-28 2006-07-13 Toshiba Corp 移動ロボット装置
JP2006346767A (ja) * 2005-06-13 2006-12-28 Toshiba Corp 移動ロボット、マーカ、移動ロボットの位置姿勢算出方法、移動ロボットの自律走行システム
JP2007010335A (ja) * 2005-06-28 2007-01-18 Fujitsu Ltd 車両位置検出装置及びシステム
JP2014021624A (ja) * 2012-07-13 2014-02-03 Sharp Corp 自律走行装置、及び自律走行システム

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20210060795A1 (en) * 2019-08-26 2021-03-04 Seiko Epson Corporation Robot system and control method
US11554501B2 (en) * 2019-08-26 2023-01-17 Seiko Epson Corporation Robot system and control method

Similar Documents

Publication Publication Date Title
JP2019102047A (ja) 画像処理装置、移動ロボットの制御システム、移動ロボットの制御方法
CN111989544B (zh) 基于光学目标的室内车辆导航的系统和方法
US11003188B2 (en) Method, system and apparatus for obstacle handling in navigational path generation
US10921820B2 (en) Movable object and control method thereof
FI80803B (fi) Positionskaennande system foer ett roerligt foeremaol.
US20090118890A1 (en) Visual navigation system and method based on structured light
US20060293810A1 (en) Mobile robot and a method for calculating position and posture thereof
US20090312871A1 (en) System and method for calculating location using a combination of odometry and landmarks
US20110196563A1 (en) Autonomous navigation and ink recognition system
JP4224487B2 (ja) 位置検出システム
US11797011B2 (en) Traveling control system for transport vehicle and traveling control method for transport vehicle
JP2012084149A (ja) モバイル機器のナビゲーション
US11513525B2 (en) Server and method for controlling laser irradiation of movement path of robot, and robot that moves based thereon
US20230418295A1 (en) Mobile robot, mobile robot control system, and mobile robot control method
WO2019107164A1 (ja) 画像処理装置、移動ロボットの制御システム、移動ロボットの制御方法
JP6688475B2 (ja) 情報取得装置、情報取得システム、自律移動装置、自律移動装置システム及び移動体の位置測定方法
JP2009176031A (ja) 自律移動体,自律移動体制御システムおよび自律移動体の自己位置推定方法
CN115600118A (zh) 基于二维激光点云的托盘腿识别方法及系统
US11662739B2 (en) Method, system and apparatus for adaptive ceiling-based localization
TWI834828B (zh) 移動機器人、移動機器人之控制系統及移動機器人之控制方法
JP2012113765A (ja) 移動体システム
WO2020235004A1 (ja) 位置計測方法、運動制御方法、運動制御システム、及びマーカー
JP7439594B2 (ja) 識別部材、識別部材の検出装置、自律移動装置、検出方法およびプログラム
JP7158540B1 (ja) 搬送物検知システム
JP2023126668A (ja) 自律移動装置および自律移動装置の移動制御方法

Legal Events

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

Ref document number: 18884787

Country of ref document: EP

Kind code of ref document: A1

122 Ep: pct application non-entry in european phase

Ref document number: 18884787

Country of ref document: EP

Kind code of ref document: A1