WO2012124140A1 - 画像処理装置および画像処理プログラム - Google Patents

画像処理装置および画像処理プログラム Download PDF

Info

Publication number
WO2012124140A1
WO2012124140A1 PCT/JP2011/056776 JP2011056776W WO2012124140A1 WO 2012124140 A1 WO2012124140 A1 WO 2012124140A1 JP 2011056776 W JP2011056776 W JP 2011056776W WO 2012124140 A1 WO2012124140 A1 WO 2012124140A1
Authority
WO
WIPO (PCT)
Prior art keywords
image
captured image
imaging
target
unit
Prior art date
Application number
PCT/JP2011/056776
Other languages
English (en)
French (fr)
Inventor
正寛 藤川
浩二 嶋田
角人 白根
豪 吉浦
池田 泰之
克弘 下田
理裕 守時
Original Assignee
オムロン株式会社
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by オムロン株式会社 filed Critical オムロン株式会社
Priority to CN201180066697.7A priority Critical patent/CN103348376B/zh
Priority to EP11861318.1A priority patent/EP2667350B1/en
Publication of WO2012124140A1 publication Critical patent/WO2012124140A1/ja
Priority to US13/975,435 priority patent/US9571795B2/en

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N7/00Television systems
    • H04N7/18Closed-circuit television [CCTV] systems, i.e. systems in which the video signal is not broadcast
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T3/00Geometric image transformations in the plane of the image
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01BMEASURING LENGTH, THICKNESS OR SIMILAR LINEAR DIMENSIONS; MEASURING ANGLES; MEASURING AREAS; MEASURING IRREGULARITIES OF SURFACES OR CONTOURS
    • G01B11/00Measuring arrangements characterised by the use of optical techniques
    • G01B11/26Measuring arrangements characterised by the use of optical techniques for measuring angles or tapers; for testing the alignment of axes
    • G01B11/27Measuring arrangements characterised by the use of optical techniques for measuring angles or tapers; for testing the alignment of axes for testing the alignment of axes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/70Determining position or orientation of objects or cameras
    • G06T7/73Determining position or orientation of objects or cameras using feature-based methods
    • G06T7/74Determining position or orientation of objects or cameras using feature-based methods involving reference images or patches
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N23/00Cameras or camera modules comprising electronic image sensors; Control thereof
    • H04N23/60Control of cameras or camera modules
    • H04N23/63Control of cameras or camera modules by using electronic viewfinders
    • H04N23/633Control of cameras or camera modules by using electronic viewfinders for displaying additional information relating to control or operation of the camera
    • H04N23/635Region indicators; Field of view indicators
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/30Subject of image; Context of image processing
    • G06T2207/30108Industrial image inspection
    • G06T2207/30164Workpiece; Machine component
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/30Subject of image; Context of image processing
    • G06T2207/30204Marker
    • G06T2207/30208Marker matrix
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/30Subject of image; Context of image processing
    • G06T2207/30244Camera pose
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N23/00Cameras or camera modules comprising electronic image sensors; Control thereof
    • H04N23/60Control of cameras or camera modules
    • H04N23/69Control of means for changing angle of the field of view, e.g. optical zoom objectives or electronic zooming

Definitions

  • the present invention relates to an image processing apparatus and an image processing program, and more particularly, to an image processing apparatus and an image processing program for supporting adjustment work of an installation mode related to an imaging unit.
  • a so-called visual sensor is used as a device that optically detects defects that occur in semi-finished products in the manufacturing process and products before shipment, and optically measures their size. It has been put into practical use.
  • the workpiece is inspected and measured by performing various image processing on the input image obtained by imaging.
  • a typical example of such setting is setting the angle of view (or viewing angle) of the imaging unit.
  • the field of view of the imaging unit is determined by the installation posture such as the angle of the imaging unit.
  • the installation posture of the imaging unit is deviated and the field of view is deviated from the predetermined field of view, the work does not completely enter the field of view, and inspection and measurement using images become difficult. Therefore, in order to return the imaging unit to the original posture, the operator generally manually adjusts the installation posture by trial and error so that the work is reflected at a predetermined position in the visual field while checking the image on the monitor. It was.
  • Patent Document 1 In order to support the adjustment of the installation posture of the imaging unit, for example, a camera posture adjustment method according to Patent Document 1 has been proposed.
  • Patent Document 1 in order to facilitate the adjustment work for installing the camera so as to be level with the document table in the copy stand, the inclination information indicating the inclination of the imaging surface of the camera is provided. Is displayed.
  • an object of the present invention is to provide an image processing apparatus and an image processing program that enable easy adjustment of the posture of the imaging unit.
  • An image processing apparatus is an image processing apparatus that receives a captured image obtained by imaging from an imaging unit that is disposed so as to include at least a part of a conveyance path of a workpiece in an imaging visual field, Image receiving means for receiving a captured image acquired by the imaging unit imaging a target placed on the conveyance path, position acquiring means for acquiring the position of the target in the received captured image, and position acquisition Using the position in the captured image of the target acquired by the means, the inclination acquisition means for acquiring the inclination of the surface including the imaging field of view of the imaging unit with respect to the surface on which the target is placed, and the acquired inclination And output means for outputting support information for supporting posture adjustment of the imaging unit.
  • the support information includes information indicating a direction in which the posture of the imaging unit should be changed.
  • the inclination acquisition unit acquires the degree of inclination as an amount of deviation between the position of the acquired target in the captured image and a predetermined position in the captured image.
  • the inclination acquisition unit acquires the degree of inclination as a distance between the position of the acquired target in the captured image and a predetermined position in the captured image.
  • the target has a predetermined shape
  • the inclination acquisition unit acquires the degree of inclination as the degree of distortion of the shape in the captured image of the target from the predetermined shape.
  • the support information includes a received captured image
  • the output unit includes a storage unit that stores the support information in a memory.
  • the inclination acquisition unit includes the position of the target in the captured image included in the support information stored in the storage unit and the target acquired by the position acquisition unit in the captured image received from the imaging unit by the image receiving unit.
  • the degree of inclination is acquired as the amount of deviation from the position in the captured image.
  • the inclination acquisition unit is acquired by the position acquisition unit in the captured image of the target in the captured image included in the support information stored in the storage unit, and the captured image received by the image receiving unit from the imaging unit.
  • the degree of inclination is acquired as the distance from the position of the target.
  • the target has a predetermined shape
  • the inclination acquisition unit is included in the support information stored in the storage unit of the shape of the target in the captured image received by the image receiving unit from the imaging unit.
  • the degree of inclination is acquired as the degree of distortion from the shape of the target in the captured image.
  • an image processing program that is executed by a computer that accepts a captured image obtained by imaging from an imaging unit that is arranged so as to include at least a part of the conveyance path of the workpiece in the imaging visual field Is provided.
  • the image processing program obtains the position of the target in the received captured image, and the image receiving means for receiving the captured image acquired by the imaging unit imaging the target placed on the conveyance path. And a position acquisition means for acquiring a degree of inclination of the surface including the imaging field of view of the imaging unit with respect to the surface on which the target is placed, using the position in the captured image of the target acquired by the position acquisition means And an output means for outputting support information for supporting the posture adjustment of the imaging unit, using the acquired inclination degree.
  • the operator can adjust the posture of the imaging unit using the output support information.
  • FIG. 1 It is a figure which shows an example of the screen which displays the captured image which concerns on Embodiment 1 of this invention. It is a figure which expands and shows the captured image of FIG. It is a figure which shows the image showing the visual sensor of FIG. It is a figure which shows the example of a display of the captured image containing the sheet
  • FIG. 1 is a schematic diagram showing a configuration of a conveyor tracking system using a visual sensor according to Embodiment 1 of the present invention.
  • the conveyor tracking system shown in FIG. 1 includes two conveying devices (conveyors) 10 and 20.
  • the conveyors 10 and 20 are rotationally driven by drive rollers 12 and 22, respectively.
  • the conveyors 10 and 20 are also referred to as line 1 and line 2, respectively.
  • the line 1 moves to the right side of the page, and the line 2 moves to the left side of the page.
  • the work W is randomly provided on the line 1 from the left side of the drawing by the carry-out device 30 or the like.
  • the workpiece W on the line 1 moves from the left side to the right side.
  • As the work W typically, foods such as sweets and various tablets are assumed.
  • the visual sensor 100 is provided at a predetermined position on the line 1.
  • the visual sensor 100 is configured integrally with an imaging unit for imaging a subject such as a work and a captured image processing unit for processing an image captured by the imaging unit.
  • the imaging unit and the captured image processing unit may be configured separately.
  • the visual sensor 100 is set so that the imaging field of view includes the entire width direction of the line 1 (direction orthogonal to the transport direction).
  • the imaging field of view can be determined using the setting of the angle of view (or viewing angle) of the imaging unit (camera).
  • the imaging field of view corresponds to a range that can be imaged by the imaging unit, and may be referred to as an “imaging range”.
  • the visual sensor 100 installed so as to be in the above-described imaging range continuously captures images in a predetermined cycle, so that the workpiece W flowing randomly on the line 1 can be sequentially imaged.
  • the visual sensor 100 performs positioning processing and tracking processing of each workpiece by performing measurement processing such as pattern matching on the sequentially captured images.
  • the imaging unit imaging unit 110 shown in FIG. 2 described later
  • the image capturing unit 110 is connected to a captured image processing unit 120 (see FIG. 2 described later) for processing a captured image.
  • a robot 300 that holds the workpiece W and moves it to the line 2 is disposed on the downstream side of the visual sensor 100.
  • the robot 300 has an arm for gripping the workpiece W, and grips the workpiece on the line 1 by moving the arm to a target position. That is, the robot 300 corresponds to a mobile machine that is disposed on the downstream side of the imaging range of the imaging unit of the visual sensor 100 and handles the workpiece W in the conveyance path of the conveyor 10 (line 1) that is a conveyance device. More specifically, the robot 300 positions its arm on the target workpiece W, picks it up, and aligns it on the line 2.
  • the robot 300 is arranged on a moving mechanism (not shown) for moving along the line 1 and moves over a predetermined range.
  • This movement range of the robot 300 is also referred to as a tracking range.
  • the tracking process and positioning process of the robot 300 are controlled by using the detection result by the encoder 14 provided in the line 1.
  • the encoder 14 typically employs a rotary encoder, and generates a pulse signal as it rotates. By counting the number of pulses of the generated pulse signal, the number of rotations of the rollers connected to the conveyor 10 (line 1), that is, the pulse signal generated by the encoder 14 is obtained in the conveyance path of the conveyor 10 which is a conveyance device. It corresponds to a signal indicating the amount of movement, and the amount of movement of the conveyor 10 is calculated based on this pulse signal.
  • the robot 300 operates in accordance with instructions from the robot control device 200. That is, the robot control apparatus 200 is a control apparatus for controlling the robot 300 that is a mobile machine.
  • the robot control apparatus 200 is connected to the visual sensor 100 via the network NW, and based on the position of each workpiece W detected by the visual sensor 100, instructions necessary for the gripping operation of the workpiece W to the robot 300. give.
  • the operation display device 500 and a support device 600 having a function corresponding to a personal computer are connected to the network NW.
  • the operation display device 500 displays a processing result from the visual sensor 100, an operation state of the robot 300 from the robot control device 200, and the like, and in response to an operation from the user, the visual sensor 100 and / or the robot control device 200. Give various instructions to.
  • the conveyor tracking system employs a configuration in which the pulse signal generated by the encoder 14 is input not only to the robot controller 200 but also to the visual sensor 100.
  • the visual sensor 100 and the robot control device 200 synchronize with each other to acquire the position information of the target transfer device (conveyor), whereby communication between the robot control device 200 and the visual sensor 100 via the network NW. It is possible to operate in synchronization with Here, the details regarding the motion control synchronized with the robot controller 200 and the visual sensor 100 are omitted.
  • FIG. 2 is a schematic diagram showing a hardware configuration of the image processing apparatus according to Embodiment 1 of the present invention.
  • the image processing apparatus includes a visual sensor 100 and a support device 600 having a function of generating and presenting information that supports an installation mode of the visual sensor 100.
  • the function of the support device 600 can be replaced by the operation display device 500 connected to the network NW.
  • the support device 600 is typically composed of a general-purpose computer. From the viewpoint of maintainability, a notebook personal computer with excellent portability is preferable.
  • the support device 600 includes a communication interface (I / F) 60 for communicating with the visual sensor 100, a CPU 61 that executes various programs including an OS (operating system), a BIOS and various data.
  • ROM Read Only Memory
  • ROM Read Only Memory
  • memory RAM 63 for providing a work area for storing data necessary for execution of the program by the CPU 61
  • HDD nonvolatile manner
  • the support device 600 further includes an operation unit 70 (including a keyboard 65 and a mouse 66) that receives an operation from the user, and a monitor 67 that includes a liquid crystal display for presenting information to the user.
  • an operation unit 70 including a keyboard 65 and a mouse 66
  • a monitor 67 that includes a liquid crystal display for presenting information to the user.
  • various programs executed by the support device 600 are stored in the CD-ROM 690 and distributed.
  • the program stored in the CD-ROM 690 is read by a CD-ROM (Compact Disk-Read Only Memory) drive 68 and stored in a hard disk (HDD) 64 or the like.
  • the program may be downloaded from a host computer or the like via a network.
  • the support device 600 is realized using a general-purpose computer.
  • the operation unit 70 that receives the operation of the operator and the monitor 67 for displaying information are individually provided.
  • the operation unit 70 may be provided as an integrated touch panel.
  • the support device 600 is capable of data communication with both the visual sensor 100 and the robot control device 200, various data can be collected.
  • the visual sensor 100 includes an imaging unit 110 and a captured image processing unit 120.
  • the captured image processing unit 120 communicates with the support device 600.
  • illustration of the robot control device 200 and the operation display device 500 is omitted.
  • the image processing apparatus that receives and processes a captured image obtained by imaging from the imaging unit 110 includes the functions of the captured image processing unit 120 and the support device 600.
  • the imaging unit 110 is a device that images a subject existing in an imaging field.
  • an optical system such as a lens and a diaphragm, a CCD (Charge Coupled Device) image sensor, and a CMOS (Complementary Metal Oxide Semiconductor) image.
  • a light receiving element such as a sensor.
  • the imaging unit 110 captures an image in accordance with a command from the captured image processing unit 120 and outputs image data obtained by the imaging to the captured image processing unit 120.
  • the captured image processing unit 120 includes a CPU (Central Processing Unit) 122, a memory 124, an imaging control unit 126, a communication interface (I / F) 128, an input / output interface (I / F) 130, and an encoder counter 132. And a memory interface (I / F) 135 to which a CD-ROM (Compact Disk-Read Only Memory) 136, which is an example of a removable recording medium, is mounted. These components are connected to each other via a bus 134 so as to be able to perform data communication with each other.
  • the CPU 122 is a processor that performs main calculations in the captured image processing unit 120.
  • the memory 124 stores various programs executed by the CPU 122, image data captured by the imaging unit 110, various parameters, and the like.
  • the memory 124 includes a volatile storage device such as a DRAM (Dynamic Random Access Memory) and a non-volatile storage device such as a FLASH memory.
  • the imaging control unit 126 controls the imaging operation in the connected imaging unit 110 according to an internal command from the CPU 122 or the like.
  • the imaging control unit 126 has an interface that transmits various commands to the imaging unit 110 and an interface that receives image data from the imaging unit 110.
  • the communication interface 128 exchanges various data with the operation display device 500.
  • the visual sensor 100 and the operation display device 500 are connected via Ethernet (registered trademark), and the communication interface 128 is hardware conforming to such Ethernet (registered trademark).
  • the input / output interface 130 outputs various signals from the captured image processing unit 120 to the outside, or inputs various signals from the outside.
  • the input / output interface 130 receives a pulse signal generated by the encoder 14, converts the signal into a digital signal, and outputs the digital signal to the encoder counter 132.
  • Encoder counter 132 counts the number of pulses included in the pulse signal from encoder 14 and outputs a count value. Since the encoder counter 132 basically operates independently of the calculation cycle of the CPU 122, the number of pulses included in the pulse signal from the encoder 14 is not missed.
  • CPU61 receives the image data by the imaging output from the visual sensor 100 (imaging part 110) via the network NW.
  • the CPU 61 includes a measurement processing unit 611, an image processing unit 612, an inclination calculation unit 613, a center calculation unit 614, and a storage unit 615 as functions. Each of these units processes the image data received from the imaging unit 110 to create and output information to be presented to the operator.
  • the measurement processing unit 611 processes the received image data and performs measurement processing on the image data. More specifically, the captured image data is subjected to measurement processing, and the coordinate position in an image of four marks on a target sheet 700 described later is acquired.
  • the tilt calculation unit 613 acquires the tilt degree of the imaging unit 110 with respect to the target sheet 700 from the coordinate positions of the four marks.
  • the center calculation unit 614 acquires the center of gravity of the target sheet 700, the center of the captured image, and the like.
  • the storage unit 615 corresponds to one type of output means. The storage unit 615 stores the image data acquired by the imaging unit 110 and the measurement result of the measurement processing unit 611 of the image data in the adjustment file 631 of the RAM 63.
  • FIG. 4 is an overall process flowchart according to Embodiment 1 of the present invention.
  • the image processing procedure will be described with reference to FIG.
  • the operator installs the visual sensor 100 in association with the transport device. Then, the operator places the target sheet 700 at a predetermined position on the conveyance path surface.
  • the imaging field of view of the visual sensor 100 is assumed to be a range including the predetermined position.
  • the operator operates the operation unit 70 to input an imaging instruction.
  • the CPU 61 receives the imaging instruction and transmits the received imaging instruction to the visual sensor 100.
  • the imaging control unit 126 outputs the received imaging instruction to the imaging unit 110 to perform an imaging operation.
  • the imaging unit 110 images a subject within the imaging field and outputs image data acquired by the imaging operation (step S1).
  • the operator operates the operation unit 70 and inputs an imaging instruction at an appropriate timing such as when the target sheet 700 is moved or when the posture of the imaging unit 110 is changed.
  • the imaged image data is transmitted from the visual sensor 100 to the support device 600.
  • the CPU 61 displays the received image data on the monitor 67.
  • the operator confirms the displayed image and moves the target sheet 700.
  • the display image is confirmed, and it is determined whether or not the direction in which the target sheet 700 is moved matches the movement direction of the display image on the monitor 67 (step S2a). That is, when the target sheet 700 is moved in the direction in which the workpiece is conveyed by the conveyor 10, the moving direction does not match when the image moves in the vertical (vertical) direction on the screen of the monitor 67.
  • the determination is made (NO in step S2a), and the operator operates the operation unit 70 to rotate the displayed image (step S2b). Thereafter, the process proceeds to step S2a.
  • the operator determines that the directions match, the operator operates the operation unit 70 to instruct measurement start (YES in step S2a).
  • measurement processing is performed on the image data by the measurement processing unit 611, four marks on the target sheet 700 are measured, and the center of gravity of the target sheet 700 based on the measurement result is calculated.
  • Information for matching the center of the image on the monitor screen is displayed (step S3).
  • the image on the monitor screen corresponds to an image of the imaging field of the imaging unit 110, that is, a captured image. Since the target sheet 700 can be disposed within the imaging field of view, the captured image includes an image of the target sheet 700.
  • the measurement process typically includes a search process using pattern matching based on a model image for a previously registered mark.
  • the search process is a process in which a mark characteristic portion is registered in advance as an image pattern (model), and a portion of the input image that is most similar to the pre-registered model is searched for from the input image. At this time, the position / tilt / rotation angle of the portion most similar to the model, a correlation value indicating how similar to the model, and the like are calculated.
  • the mark may be detected by performing an edge extraction process on the image data.
  • the center calculation unit 614 acquires the positions of the center of the imaging field of view (captured image) and the center of gravity of the image of the target sheet 700.
  • An image representing the center and the center of gravity at the acquired position is displayed on the monitor 67. Thereby, the amount of positional deviation between the center and the center of gravity is displayed.
  • the operator confirms from the display image on the monitor 67 whether or not there is a positional deviation between the center and the center of gravity, that is, whether or not both positions match.
  • the operation unit 70 is operated according to the confirmation result. For example, in the case of mismatch, the operator operates the operation unit 70 to instruct the start of measurement after moving the target sheet 700 in order to match the center and the center of gravity.
  • the CPU 61 When the CPU 61 receives an operation from the operation unit 70 (NO in step S4), the CPU 61 inputs a measurement start instruction and shifts the process to step S3 accordingly. As a result, the image of the target sheet 700 after being moved is imaged, and the measurement processing by the measurement processing unit 611 is performed on the image data acquired by the imaging.
  • step S5 information for supporting the posture adjustment of the imaging unit 110 is output (step S5).
  • the inclination calculation unit 613 calculates an inclination degree from the coordinate positions of the four marks acquired by the measurement process.
  • the degree of inclination refers to the degree of inclination of the surface of the imaging field of the imaging unit 110 (hereinafter referred to as the imaging field of view) with respect to the surface on the conveyance path of the line 1 (hereinafter referred to as the conveyance surface).
  • the degree of inclination is acquired as a value converted as a value of 1 when both surfaces are parallel.
  • the transport surface is a flat surface.
  • the image processing unit 612 outputs support information for adjusting the posture of the imaging unit 110 based on the degree of inclination.
  • the operator When the operator confirms the output information and confirms that there is an inclination, the operator operates the operation unit 70 and adjusts the posture of the visual sensor 100.
  • step S6a the process proceeds to step S3.
  • the imaging operation is performed by the visual sensor 100 after the posture adjustment, and the processing after step S3 is similarly performed again on the image data acquired by imaging.
  • step S6a determines that no operation is accepted from the operation unit 70 (YES in step S6a), and causes the process to proceed to step S6b.
  • step S6b the CPU 61 determines whether or not an operation for inputting a storage instruction is performed via the operation unit 70.
  • the storage unit 615 associates the image data with the measurement result information and stores them in the adjustment file 631 of the RAM 63 based on the instruction (step S6b).
  • Step S6c the storage unit 615 does not perform storage processing in the adjustment file 631, and the series of processing ends. Details of these processes will be described later.
  • FIG. 5 is a diagram schematically showing a target sheet 700 according to Embodiment 1 of the present invention.
  • a target pattern used for adjusting the posture of the visual sensor 100 is drawn on a substantially square target sheet 700.
  • the target pattern includes five circles (hereinafter referred to as “marks”) in which the interior is divided by about 90 °.
  • posture adjustment it is basically sufficient to use three points of marks. However, as the number of marks increases, information for posture adjustment can be obtained more accurately.
  • the additionally arranged fifth point mark is used to unify the orientation of the target sheet 700 in a predetermined direction.
  • the shape of the mark is circular, but is not limited.
  • the operator places the target sheet 700 on which the target pattern is drawn in the imaging field of the visual sensor 100 (imaging unit 110) on the line 1. Then, the operator gives an imaging instruction to the visual sensor 100. Then, the visual sensor 100 transmits an image (image including a target pattern as a subject) obtained by imaging to the support device 600.
  • the measurement processing unit 611 performs measurement processing on the received image data.
  • the coordinate values of the center points are determined for the four marks arranged at the four corners included in the target pattern.
  • the coordinate value [pix] of the image coordinate system is acquired for each of the four marks included in the target pattern.
  • the obtained coordinate values of the four points correspond to (X1, Y1), (X2, Y2), (X3, Y3), (X4, Y4).
  • FIG. 6 is a diagram illustrating a display example of a captured image including the target sheet 700 according to Embodiment 1 of the present invention.
  • the imaging field of view and the conveyance surface on which the target sheet 700 is arranged are often not parallel. Therefore, as shown in FIG. 6, the image of the target sheet 700 is displayed in a distorted shape (trapezoidal shape) instead of a square.
  • FIG. 7 to 9 are diagrams showing examples of screens for displaying captured images according to Embodiment 1 of the present invention.
  • an area 701 for displaying a subject image an image including an image of target sheet 700
  • an area for displaying an image 800 schematically showing visual sensor 100 are displayed.
  • 702. In relation to the image 800 representing the visual sensor 100, three axes (X axis, Y axis, and Z axis) orthogonal to each other at the center of the image 800 are displayed. Thereby, the operator can easily grasp the installation mode of the visual sensor 100 from the image 800 as a mode installed in the space.
  • the X axis and Y axis of the visual sensor 100 correspond to the X axis and Y axis related to the coordinate system of the captured image output from the imaging unit 110.
  • a button 900 for rotating the image of the area 701 by 90 degrees clockwise / counterclockwise is displayed.
  • the CPU 61 receives the operation and outputs a rotation instruction to the image processing unit 612.
  • the image processing unit 612 rotates the image of the region 701 (the image of the target sheet 700) by 90 degrees in the clockwise / counterclockwise direction in accordance with the rotation instruction (see FIG. 8).
  • the image processing unit 612 also rotates the image 800 in the region 702 in the same direction (see FIG. 9).
  • the operator can rotate the image in the region 701 on the same screen and operate the image 800 in the region 702 in the same direction in conjunction with the rotation by operating the button 900.
  • the rotation direction is 90 degrees in the clockwise / counterclockwise direction, but the operator may change the rotation angle variably.
  • FIGS. 10 and 11 are diagrams showing display examples of captured images including the target sheet according to the first embodiment.
  • the image processing unit 612 displays the image of FIG. Referring to FIG. 10, coordinate values 801 (coordinate values (X1, Y1), (X2, Y2), (X3, Y3), (X4, Y4)) are displayed. Each mark in the area 701 is displayed with a “+” symbol superimposed on the measured center position. Here, the position of each mark is indicated using both the coordinate value 801 and the “+” symbol, but may be indicated using only one of them. A square formed by connecting four “+” symbols with a line is displayed.
  • the operator can grasp that both sides of the imaging field plane and the conveyance surface are parallel by confirming that the center of the four marks points to the apex of the square from the coordinate value 801.
  • the image processing unit 612 may display information indicating the degree of inclination as shown in FIG. 11 so that the operator can easily grasp that both the imaging visual field surface and the conveyance surface are parallel. That is, for the four marks in the area 701, a line connecting the measured center positions (corresponding to a broken line in the figure) is displayed. If both sides are not parallel, as shown in the figure, the shape formed by the line connecting the four points will be presented as a distorted figure (trapezoid) rather than a square, so the operator will confirm that both sides are not parallel. Can be easily grasped. Therefore, it can be said that the degree of inclination represents the degree of distortion of the shape of the target sheet 700 in the captured image from the original square.
  • the operator can grasp the degree of distortion (degree of inclination) by visually recognizing the difference between the lengths of the upper and lower sides of the trapezoid.
  • Information indicating the degree of inclination can also be displayed as shown in FIGS.
  • FIGS. Referring to FIG. 12, the coordinates of the center of gravity of the figure formed by connecting the centers of the four marks with straight lines are calculated. Then, an image 703 is displayed at the coordinate position in the area 701. In addition, the center of the region 701, that is, the center of the captured image is presented using the intersection of two orthogonal broken line axes 704.
  • the operator may adjust the posture of the visual sensor 100 so that the center of the region 701 matches the position of the image 703.
  • the image processing unit 612 may calculate the distance between the center of the captured image and the image 703 and display the calculated value as data 705 as the adjustment work support information.
  • four marks may be connected by a broken straight line (see FIG. 13).
  • FIG. 14 is a diagram for explaining a procedure for determining a direction for posture adjustment according to the first embodiment of the present invention.
  • FIG. 15 is a diagram illustrating a screen displaying a direction for posture adjustment according to the first embodiment of the present invention.
  • the inclination calculation unit 613 calculates inclinations in the X direction and the Y direction based on the coordinate values (X1, Y1), (X2, Y2), (X3, Y3), and (X4, Y4) of the four marks.
  • the X and Y directions coincide with the direction in which the X axis of the image coordinate system extends and the direction in which the Y axis extends.
  • and A2
  • the image processing unit 612 displays an upward arrow toward the screen, and the condition of (B1 / B2) ⁇ 1 is satisfied.
  • and B2
  • image processing unit 612 also displays corresponding arrows 806 and 807 in association with the display of arrows 706 and 707 for image 800 representing visual sensor 100. Thereby, the information regarding the direction in which the posture of the visual sensor 100 should be changed is presented.
  • the inclination degree data 816 and 817 of the visual sensor 100 may be calculated and displayed together with the data 705 or independently of the data 705.
  • Data 816 is calculated by (A1 / A2)
  • data 817 is calculated by (B1 / B2).
  • the images of the arrows 706 and 707 are used as directions in which the posture of the visual sensor 100 should be changed, but may be presented using characters such as “left, right, up, down”.
  • the image processing unit 612 displays a square formed by connecting the centers of the four marks of the target sheet 700 when the imaging visual field plane and the conveyance path surface are parallel. May be.
  • the image processing unit 612 calculates (A1 / A2) and (B1 / B2) values after the posture adjustment, and determines whether or not the calculated values fall within a predetermined range.
  • an image 716 is displayed as information representing the determination result (see FIG. 16). If it is determined that it is within the range, as shown in FIG. 16A, a frame image 716 surrounding the region 701 is displayed in, for example, green, and the arrows 706 and 707 are deleted. If it is determined that the image is out of the range, the image 716 is displayed, for example, in red (see FIG. 16B).
  • a guideline for completion of posture adjustment can be presented to the operator.
  • the information presented as an indication of completion of posture adjustment is not limited to the frame image 716, and the display mode is not limited to the method using colors.
  • FIG. 17 shows an example of an image displayed during posture adjustment according to Embodiment 1 of the present invention.
  • various information such as the degree of inclination displayed at the time of posture adjustment is stored in a predetermined area of RAM 63.
  • the storage unit 615 is instructed to store the captured image data displayed in the area 701 and various information displayed in the area 702. Is stored in the adjustment file 631 of the RAM 63.
  • the data of the adjustment file 631 can be used as support information for the subsequent posture adjustment of the visual sensor 100.
  • the posture adjustment of the visual sensor 100 using the data of the adjustment file 631 will be described.
  • the adjustment file 631 stores captured image data displayed in the region 701 at the time when the posture adjustment is completed, and data related to the measurement result and the inclination degree.
  • FIG. 18 is an overall process flowchart according to Embodiment 2 of the present invention.
  • the visual sensor 100 is attached in connection with the transport apparatus, first, the target sheet 700 is placed at a predetermined position on the transport path surface for posture adjustment, and the processing of steps S1 to S2b is performed. Done.
  • steps S1 to S2b are the same as those in the first embodiment described above, and details are omitted.
  • the image processing unit 612 reads data from the adjustment file 631 of the RAM 63, and displays an image based on the read data on the monitor 67 (step S2c). Further, the measurement processing unit 611 performs measurement processing on the captured image data acquired in step S1, and the measurement result is displayed (step S3).
  • FIG. 19 is a diagram showing a display example of a captured image including the target sheet according to Embodiment 2 of the present invention.
  • a captured image an image including target sheet 700
  • an image 703 is displayed in area 701, and an image 703 is displayed.
  • An image 703 represents the center of gravity calculated from the coordinates of the centers of the four marks obtained by measuring the captured image data.
  • inclination degrees 816 and 817 an image 800 representing the visual sensor 100, and data 705 indicating the amount of deviation between the center of gravity of the captured image and the center of the screen are displayed.
  • a button 819 operated by the operator for instructing display of information based on the data of the adjustment file 631 is also displayed.
  • FIG. 20 shows a display example of the screen in step S4. Referring to FIG. 20, information based on the data in adjustment file 631 and information obtained by the measurement process in step S3 are displayed on the screen at the same time.
  • a square based on the center position coordinates of the four marks in the adjustment file 631 and a dashed trapezoid based on the center coordinates of the four marks acquired by the current measurement process are simultaneously displayed.
  • the coordinate value 801N of the center position of the four marks acquired by the current measurement process is displayed.
  • data 705N, 816N and 817N regarding the degree of inclination acquired based on the coordinate value 801N are displayed.
  • support information for posture adjustment based on information obtained by comparing the result of the current measurement process and the measurement process result at the time of completion of posture adjustment in the adjustment file 631 is obtained. Can be presented. Further, the information displayed in the area 702 can present support information for posture adjustment based on the result of the current measurement process.
  • step S4 The operator checks the image of FIG. 20 and determines that the display positions of the center of gravity images 703 and 703N match, and performs an operation for instructing the center of gravity from the operation unit 70.
  • An operation for instructing the mismatch is performed (step S4).
  • the operator determines a mismatch, the operator moves the target sheet 700 so that the centers of gravity match.
  • a display example of the screen in step S4 is shown in FIG. In FIG. 21, the distance between the images 703 and 703N is calculated by the image processing unit 612 and displayed as data 705N.
  • CPU61 will transfer a process to step S3, if operation of mismatch is received (it is NO at step S4). Thereby, the imaging operation is performed on the image of the target sheet 700 after the movement, and the measurement processing by the measurement processing unit 611 is performed on the image data acquired by the imaging (step S3).
  • the inclination calculation unit 613 acquires the inclination degree using the measurement result in step S3 and the data in the adjustment file 631.
  • the image processing unit 612 displays support information for posture adjustment based on the acquired degree of inclination (step S5).
  • the acquisition of the degree of inclination and the display mode of information related thereto are the same as those described in the first embodiment, and a description thereof will be omitted.
  • the operator confirms the output information.
  • the operation unit 70 is operated and the posture of the visual sensor 100 is manually adjusted.
  • the CPU 61 determines that the operator has operated from the operation unit 70 (NO in step S6a), and shifts the processing to step S3. Thereby, the imaging operation is performed by the visual sensor 100 after the posture adjustment by the operator, and the processing after step S3 is similarly performed on the image data acquired by imaging.
  • step S6a determines that there is no operator operation by the operation unit 70 (YES in step S6a), and shifts the processing to step S6b.
  • step S6b it is determined whether or not a storage instruction has been operated via the operation unit 70. If the CPU 61 determines that a storage instruction operation has been performed (YES in step S6b), the storage unit 615 associates the displayed image data with the measurement result information and stores them in the adjustment file 631 of the RAM 63 (step S6c). . If it is determined that the storage instruction is not operated (NO in step S6b), the storage process by the storage unit 615 is not performed, and the CPU 61 ends the series of processes.
  • FIG. 22 is a diagram for explaining a procedure for determining a direction for posture adjustment according to the second embodiment of the present invention.
  • FIG. 23 is a diagram illustrating a screen that displays a direction for posture adjustment according to the second embodiment of the present invention.
  • the inclination calculation unit 613 performs coordinate values ((XN1, YN1), (XN2, YN2), (XN3, YN3), and (XN4, YN4)) of the four marks by the measurement processing of the captured image data, and the step On the basis of the coordinate values ((XP1, YP1), (XP2, YP2), (XP3, YP3) and (XP4, YP4)) of the four points read out from the adjustment file 631 in S2c, the conveyance path surface of the imaging field plane The degree of inclination in the X direction and the Y direction with respect to is calculated.
  • , AP2
  • , AN1
  • , AN2
  • , BP2
  • , BN1
  • , and BN2
  • image processing unit 612 also displays corresponding arrows 806 and 807 in association with the display of arrows 706 and 707 for image 800 representing visual sensor 100. Present the direction to adjust the posture.
  • the image processing unit 612 may calculate and display the inclination data 816 and 817 of the visual sensor 100 together with the data 705N for expressing the inclination degree quantitatively or independently of the data 705N.
  • Data 816 is calculated by (AN1 / AN2)
  • data 817 is calculated by (BN1 / BN2).
  • the image processing unit 612 displays a square formed by connecting the centers of the four marks of the target sheet 700 when the imaging visual field plane and the conveyance path surface are parallel. May be.
  • the posture adjustment it is determined that the posture of the visual sensor 100 falls within or does not fall within a range in which a predetermined accuracy (for example, the accuracy of measurement processing of a workpiece to be conveyed) can be guaranteed, and information indicating the determination is output Is done.
  • the image processing unit 612 calculates the values of (AN1 / AN2) and (BN1 / BN2) after the posture adjustment, and determines whether or not the calculated values fall within a predetermined range. Then, for example, an image 716 is displayed as information indicating the determination result (see FIG. 24). If it is determined that it is within the range, a frame image 716 surrounding the region 701 is displayed in green as shown in FIG. If it is determined that it is out of the range, the image 716 is displayed in red (see FIG. 24B). Thereby, an indication of completion of posture adjustment can be presented.
  • the arrow indicating the adjustment direction may be deleted from the image of FIG.
  • the information presented as a guide is not limited to the frame image 716, and the display mode of the image 716 is not limited to the method using colors.
  • the degree of inclination (or the degree of distortion of the shape) is acquired using the coordinates of the center position of each mark calculated by the center calculation unit 614, but the acquisition method is not limited to this.
  • the degree of distortion of the mark shape for example, ellipse
  • the inclination degree may be acquired as a distortion degree.
  • the various functions illustrated in FIG. 3 are included in the support device 600 (or the operation display device 500), but may be included in the captured image processing unit 120.
  • the adjustment file 631 is stored in the memory 124, and the output destination of the support information for posture adjustment of the visual sensor 100 is mainly the monitor 67 of the support device 600 or the display of the operation display device 500 (see FIG. (Not shown).
  • 70 operation unit 100 visual sensor, 110 imaging unit, 120 captured image processing unit, 124 memory, 126 imaging control unit, 500 operation display device, 600 support device, 611 measurement processing unit, 612 image processing unit, 613 tilt calculation unit, 614: Central calculation unit, 615 storage unit, 631 adjustment file, 700 target sheet, 701, 702 area.

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Length Measuring Devices By Optical Means (AREA)
  • Image Processing (AREA)
  • Studio Devices (AREA)

Abstract

 ワークの搬送路の少なくとも一部を撮像視野に含むように配置された撮像部(110)から、撮像によって得られた撮像画像を受理する画像処理装置であって、搬送路上に置かれた目標物を、撮像部(110)が撮像することによって取得された撮像画像を受理する画像受理手段と、受理された撮像画像における目標物の位置を取得する位置取得手段と、位置取得手段によって取得された目標物の撮像画像における位置を用いて、撮像部(110)の撮像視野を含む面の、目標物が置かれた面に対する傾き度を取得する傾き取得手段と、取得される傾き度を用いて、撮像部(110)の姿勢調整を支援するための支援情報を出力する出力手段と、を備える。

Description

画像処理装置および画像処理プログラム
 この発明は、画像処理装置および画像処理プログラムに関し、特に、撮像部に係る設置態様の調整作業を支援するための画像処理装置および画像処理プログラムに関する。
 FA(Factory Automation)分野などにおいては、製造過程の半製品や出荷前の製品などに生じる欠陥を光学的に検出したり、その大きさを光学的に計測したりする装置として、いわゆる視覚センサが実用化されている。
 このような視覚センサを用いて検出や計測を行なう場合には、ワーク(対象物)を適切に撮像する必要がある。撮像することで得られる入力画像に対して各種の画像処理を行なうことで、ワークを検査および計測をする。
 視覚センサを実際の製造現場などに設置する場合には、視覚センサが有するカメラなどの撮像部に対して適切な設定を行なう必要がある。このような設定の典型例としては、撮像部の画角(または視野角)の設定がある。
 撮像部の視野は、撮像部のアングルなど設置姿勢により決定される。製造現場においては、撮像部の設置姿勢がずれて、視野が所定視野からずれたときには、視野内にワークが入りきらず、画像を用いた検査および計測が困難となる。したがって、撮像部を元の姿勢に戻すために、オペレータは、モニタで画像を確認しながら、視野の所定位置にワークが写り込むように設置姿勢を試行錯誤で手動調整するのが一般的であった。
 撮像部の設置姿勢の調整をサポートするために、たとえば特許文献1によるカメラの姿勢調整方法が提案されている。特許文献1によれば、コピースタンド(複写台)にて、原稿台と水平になるようにカメラを設置するための調整作業を容易にするために、カメラの撮像面の傾きを指す傾斜情報が表示される。
特開2008-3394号公報
 特許文献1のカメラは、複写台における設置位置が固定であるから、調整作業のために提示される情報は、原稿台とカメラの平行度を表す傾斜情報を表示すれば足りるが、装置を組立てる場合には、当該傾斜情報のみでは、カメラの設置姿勢を一意に決めることは困難である。
 それゆえにこの発明の目的は、撮像部の姿勢の容易な調整を可能とする画像処理装置および画像処理プログラムを提供することである。
 この発明のある局面に従う画像処理装置は、ワークの搬送路の少なくとも一部を撮像視野に含むように配置された撮像部から、撮像によって得られた撮像画像を受理する画像処理装置であって、搬送路上に置かれた目標物を、撮像部が撮像することによって取得された撮像画像を受理する画像受理手段と、受理された撮像画像における目標物の位置を取得する位置取得手段と、位置取得手段によって取得された目標物の撮像画像における位置を用いて、撮像部の撮像視野を含む面の、目標物が置かれた面に対する傾き度を取得する傾き取得手段と、取得される傾き度を用いて、撮像部の姿勢調整を支援するための支援情報を出力する出力手段と、を備える。
 好ましくは、支援情報は、撮像部の姿勢を変更するべき方向を示す情報を含む。
 好ましくは、傾き取得手段は、取得された目標物の撮像画像における位置と、撮像画像における予め定められた位置とのずれ量として、傾き度を取得する。
 好ましくは、傾き取得手段は、取得された目標物の撮像画像における位置と、撮像画像における予め定められた位置との距離として、傾き度を取得する。
 好ましくは、目標物は、予め定められた形状を有し、傾き取得手段は、目標物の撮像画像における形状の、予め定められた形状からの歪みの程度として、傾き度を取得する。
 好ましくは、支援情報は、受理された撮像画像を含み、出力手段は、支援情報をメモリに格納する格納手段を、含む。
 好ましくは、傾き取得手段は、格納手段に格納された支援情報に含まれる撮像画像における目標物の位置と、画像受理手段が撮像部から受理した撮像画像における位置取得手段によって取得された目標物の撮像画像における位置とのずれ量として、傾き度を取得する。
 好ましくは、傾き取得手段は、格納手段に格納された支援情報に含まれる撮像画像における目標物の撮像画像における位置と、画像受理手段が撮像部から受理した撮像画像における位置取得手段によって取得された目標物の位置との距離として、傾き度を取得する。
 好ましくは、目標物は、予め定められた形状を有し、傾き取得手段は、画像受理手段が撮像部から受理した撮像画像における目標物の形状の、格納手段に格納された支援情報に含まれる撮像画像における目標物の形状からの歪みの程度として、傾き度を取得する。
 この発明の他の局面によれば、ワークの搬送路の少なくとも一部を撮像視野に含むように配置された撮像部から、撮像によって得られた撮像画像を受理するコンピュータで実行される画像処理プログラムが提供される。
 画像処理プログラムは、コンピュータを、搬送路上に置かれた目標物を、撮像部が撮像することによって取得された撮像画像を受理する画像受理手段と、受理された撮像画像における目標物の位置を取得する位置取得手段と、位置取得手段によって取得された目標物の撮像画像における位置を用いて、撮像部の撮像視野を含む面の、目標物が置かれた面に対する傾き度を取得する傾き取得手段と、取得される傾き度を用いて、撮像部の姿勢調整を支援するための支援情報を出力する出力手段、として機能させる。
 本発明によれば、オペレータは、出力される支援情報を用いて撮像部の姿勢を調整することができる。
本発明の実施の形態1に係る視覚センサを利用したコンベアトラッキングシステムの構成を示す模式図である。 本発明の実施の形態1に係る画像処理装置のハードウェア構成を示す模式図である。 本発明の実施の形態1に係る画像処理装置の機能構成を示す模式図である。 本発明の実施の形態1に係る全体処理フローチャートである。 本発明の実施の形態1に係るターゲット用シートを模式的に示す図である。 本発明の実施の形態1に係るターゲット用シートを含む撮像画像の表示例を示す図である。 本発明の実施の形態1に係る撮像画像を表示する画面の一例を示す図である。 図7の撮像画像を拡大して示す図である。 図7の視覚センサを表す画像を示す図である。 本発明の実施の形態1に係るターゲット用シートを含む撮像画像の表示例を示す図である。 本発明の実施の形態1に係るターゲット用シートを含む撮像画像の表示例を示す図である。 本発明の実施の形態1に係る計測処理を説明するための画面例を示す図である。 本発明の実施の形態1に係る計測処理を説明するための画面例を示す図である。 本発明の実施の形態1に係る姿勢調整のための方向を決定する手順を説明するための図である。 本発明の実施の形態1に係る姿勢調整のための方向を表示する画面を例示する図である。 本発明の実施の形態1に係る姿勢調整時の表示画面を例示する図である。 本発明の実施の形態1に係る姿勢調整時の表示画面を例示する図である。 本発明の実施の形態2に係る全体処理フローチャートである。 本発明の実施の形態2に係るターゲット用シートを含む撮像画像の表示例を示す図である。 本発明の実施の形態2に係るターゲット用シートを含む撮像画像の表示例を示す図である。 本発明の実施の形態2に係る計測処理を説明するための画面例を示す図である。 本発明の実施の形態2に係る姿勢調整のための方向を決定する手順を説明するための図である。 本発明の実施の形態2に係る姿勢調整のための方向を表示する画面を例示する図である。 本発明の実施の形態2に係る姿勢調整時の表示画面を例示する図である。
 本発明の実施の形態について、図面を参照しながら詳細に説明する。なお、図中の同一または相当部分については、同一符号を付してその説明は繰り返さない。
 [実施の形態1]
 図1は、本発明の実施の形態1に係る視覚センサを利用したコンベアトラッキングシステムの構成を示す模式図である。図1に示すコンベアトラッキングシステムは、2つの搬送装置(コンベア)10および20を含む。コンベア10および20は、それぞれ駆動ローラ12および22によって回転駆動される。以下では、コンベア10および20をそれぞれライン1およびライン2とも称す。図1に示す例では、ライン1は、紙面右側に移動し、ライン2は、紙面左側に移動する。ライン1には、搬出装置30等によって紙面左側からワークWがランダムに提供される。このライン1上のワークWは、紙面左側から紙面右側へ移動する。ワークWとしては、典型的には、お菓子等の食品や各種の錠剤等が想定される。
 本実施の形態に係る視覚センサ100は、ライン1上の予め定められた位置に設けられる。視覚センサ100は、ワークなどの被写体を撮像するための撮像部と当該撮像部によって撮像された画像を処理するための撮像画像処理部とを一体的に構成したものである。ただし、撮像部と撮像画像処理部とを別体として構成してもよい。
 視覚センサ100は、その撮像視野がライン1の幅方向(搬送方向とは直交する方向)の全体を含むように設定されている。撮像視野は、撮像部(カメラ)の画角(または視野角)の設定を用いて決定することができる。本明細書では、撮像視野は、撮像部で撮像され得る範囲に相当し『撮像範囲』と呼ぶこともある。
 図1に示すように、ワークWの搬送路上を撮像して取得した画像を用いて、搬送路上をモニタし、または搬送路上のワークを計測する際には、撮像画像が歪んでいないことが要求される。すなわち、撮像視野を含む面と、被写体である搬送路面とは平行であることが望ましい。この両面の平行に関する指標として、本実施の形態では傾き度を用いる。傾き度の詳細は、後述する。
 上述の撮像範囲となるように設置された視覚センサ100が、予め定められた周期で連続的に撮像を行うことで、ライン1上をランダムに流れてくるワークWを順次撮像できる。視覚センサ100は、この順次撮像される画像に対してパターンマッチング等の計測処理を行うことで、各ワークの位置決めおよびトラッキング処理を行う。このように、視覚センサ100の撮像部(後述の図2に示す撮像部110)は、搬送装置であるコンベア10上を搬送されるワークWを撮像するように配置されている。そして、この撮像部110には、撮像画像を処理するための撮像画像処理部120(後述の図2を参照)が接続される。
 ライン1の搬送方向には、視覚センサ100の下流側に、ワークWを把持してライン2へ移動させるロボット300が配置されている。このロボット300は、ワークWを把持するためのアームを有しており、このアームを目的位置に移動させることで、ライン1上のワークを把持する。すなわち、ロボット300は、搬送装置であるコンベア10(ライン1)の搬送経路において、視覚センサ100の撮像部の撮像範囲より下流側に配置されるとともにワークWを取り扱う移動機械に相当する。より具体的には、ロボット300は、そのアームを目的のワークWに位置決めして、ピックアップしてライン2上に整列する。
 さらに、ロボット300は、ライン1に沿って移動するための移動機構(図示せず)上に配置されており、所定の範囲に亘って移動する。このロボット300の移動範囲をトラッキング範囲とも称す。
 ロボット300のトラッキング処理および位置決め処理については、ライン1に設けられたエンコーダ14による検出結果を用いて制御される。このエンコーダ14は、典型的には、ロータリーエンコーダが採用され、回転に伴ってパルス信号を発生する。この発生するパルス信号のパルス数をカウントすることで、コンベア10(ライン1)と連結されたローラの回転数、すなわち、エンコーダ14が発生するパルス信号は、搬送装置であるコンベア10の搬送経路における移動量を示す信号に相当し、このパルス信号に基づいて、コンベア10の移動量が算出される。
 ロボット300は、ロボット制御装置200からの指示に従って動作する。すなわち、ロボット制御装置200は、移動機械であるロボット300を制御するための制御装置である。ロボット制御装置200は、視覚センサ100とネットワークNWを介して接続されており、視覚センサ100によって検出された各ワークWの位置に基づいて、ロボット300に対してワークWの把持動作に必要な指示を与える。
 ネットワークNWには、視覚センサ100およびロボット制御装置200に加えて、操作表示装置500、およびパーソナルコンピュータに相当する機能を有するサポート装置600が接続されている。操作表示装置500は、視覚センサ100からの処理結果やロボット制御装置200からのロボット300の動作状態などを表示するとともに、ユーザからの操作に応答して、視覚センサ100および/またはロボット制御装置200へ各種の指示を与える。
 図1に示すコンベアトラッキングシステムにおいては、生産性を向上するために、ライン速度(搬送速度)をより高めたいという潜在的なニーズが存在する。このようなニーズに対処するため、本実施の形態に係るコンベアトラッキングシステムにおいては、エンコーダ14が発生するパルス信号をロボット制御装置200だけではなく、視覚センサ100にも入力するという構成を採用する。このように、視覚センサ100およびロボット制御装置200が同期して対象の搬送装置(コンベア)の位置情報を取得することで、ロボット制御装置200と視覚センサ100との間のネットワークNWを介した通信による同期をとった動作が可能となる。ここでは、ロボット制御装置200と視覚センサ100との間での同期をとった動作制御に関する詳細は略す。
 <ハードウェア構成>
 図2は、本発明の実施の形態1に係る画像処理装置のハードウェア構成を示す模式図である。画像処理装置は、視覚センサ100と、視覚センサ100の設置態様をサポートする情報を生成し、提示する機能を有するサポート装置600とを含む。サポート装置600の機能は、ネットワークNWに接続された操作表示装置500によって代替することができる。
 サポート装置600は、典型的には、汎用のコンピュータで構成される。なお、メンテナンス性の観点からは、可搬性に優れたノート型のパーソナルコンピュータが好ましい。
 図2を参照して、サポート装置600は、視覚センサ100と通信するための通信インターフェイス(I/F)60と、OS(オペレーティングシステム)を含む各種プログラムを実行するCPU61と、BIOSや各種データを格納するROM(Read Only Memory)62と、CPU61でのプログラムの実行に必要なデータを格納するための作業領域を提供するメモリRAM63と、CPU61で実行されるプログラムなどを不揮発的に格納するハードディスク(HDD)64とを含む。
 サポート装置600は、さらに、ユーザからの操作を受付ける操作部70(キーボード65およびマウス66を含む)と、情報をユーザに提示するための液晶ディスプレイなどからなるモニタ67とを含む。
 後述するように、サポート装置600で実行される各種プログラムは、CD-ROM690に格納されて流通する。このCD-ROM690に格納されたプログラムは、CD-ROM(Compact Disk-Read Only Memory)ドライブ68によって読取られ、ハードディスク(HDD)64などへ格納される。あるいは、上位のホストコンピュータなどからネットワークを通じてプログラムをダウンロードするように構成してもよい。
 上述したように、サポート装置600は、汎用的なコンピュータを用いて実現される。ここでは、オペレータの操作を受付ける操作部70と、情報を表示するためのモニタ67とを個別に提供されるとしたが、一体的に構成されるタッチパネルとして提供されてもよい。
 サポート装置600は、視覚センサ100およびロボット制御装置200のいずれともデータ通信可能であるので、各種のデータを収集することができる。
 図2を参照して、視覚センサ100は、撮像部110と、撮像画像処理部120とを含む。撮像画像処理部120はサポート装置600と通信する。ここでは、ロボット制御装置200および操作表示装置500の図示を略している。
 図2では、撮像部110から、撮像によって得られた撮像画像を受理して処理する画像処理装置は、撮像画像処理部120とサポート装置600との機能を含んで構成される。
 撮像部110は、撮像視野に存在する被写体を撮像する装置であり、主体たる構成要素として、レンズや絞りなどの光学系と、CCD(Charge Coupled Device)イメージセンサやCMOS(Complementary Metal Oxide Semiconductor)イメージセンサなどの受光素子とを含む。撮像部110は、撮像画像処理部120からの指令に従って撮像するとともに、その撮像によって得られた画像データを撮像画像処理部120へ出力する。
 撮像画像処理部120は、CPU(Central Processing Unit)122と、メモリ124と、撮像制御部126と、通信インターフェイス(I/F)128と、入出力インターフェイス(I/F)130と、エンコーダカウンタ132と、着脱自在の記録媒体の一例であるCD-ROM(Compact Disk-Read Only Memory)136が装着されるメモリインターフェイス(I/F)135とを含む。これらのコンポーネントは、バス134を介して互いにデータ通信可能に接続されている。
 CPU122は、撮像画像処理部120において主たる演算を行うプロセッサである。メモリ124は、CPU122によって実行される各種プログラム、撮像部110によって撮像された画像データ、各種パラメータなどを格納する。典型的には、メモリ124は、DRAM(Dynamic Random Access Memory)などの揮発性記憶装置と、FLASHメモリなどの不揮発性記憶装置とからなる。
 撮像制御部126は、CPU122などからの内部コマンドに従って、接続されている撮像部110における撮像動作を制御する。撮像制御部126は、撮像部110に対して各種コマンドを送信するインターフェイスと、撮像部110からの画像データを受信するインターフェイスとを有している。
 通信インターフェイス128は、操作表示装置500との間で各種データをやり取りする。典型的には、視覚センサ100および操作表示装置500とはイーサネット(登録商標)を介して接続されており、通信インターフェイス128は、このようなイーサネット(登録商標)に準拠したハードウェアである。
 入出力インターフェイス130は、撮像画像処理部120から外部へ各種信号を出力し、あるいは、外部からの各種信号を入力する。特に、入出力インターフェイス130は、エンコーダ14で生成されるパルス信号を受け入れ、その信号をデジタル信号に変換してエンコーダカウンタ132へ出力する。
 エンコーダカウンタ132は、エンコーダ14からのパルス信号に含まれるパルス数をカウントし、カウント値を出力する。このエンコーダカウンタ132は、基本的には、CPU122の演算サイクルとは独立して動作するため、エンコーダ14からのパルス信号に含まれるパルス数を取り逃すことがない。
 <機能構成>
 図3を参照して画像処理に係る機能構成について説明する。CPU61は、ネットワークNWを介して、視覚センサ100(撮像部110)から出力される撮像による画像データを受信する。CPU61は機能として、計測処理部611、画像処理部612、傾き演算部613、中心演算部614および格納部615を含む。これらの各部は、撮像部110から受理した画像データを処理して、オペレータに提示するための情報を作成して、出力する。
 計測処理部611は、受信した画像データを処理して、画像データについて計測処理する。より具体的には、撮像画像データを計測処理し、後述のターゲット用シート700の4点のマークの画像における座標位置を取得する。傾き演算部613は、4点のマークの座標位置から、撮像部110のターゲット用シート700に対する傾き度を取得する。中心演算部614は、ターゲット用シート700の重心および撮像画像の中心などを取得する。格納部615は1種の出力手段に相当する。格納部615は、撮像部110が撮像して取得した画像データと、当該画像データの計測処理部611による計測結果などをRAM63の調整ファイル631に格納する。
 <フローチャート>
 図4は、本発明の実施の形態1に係る全体処理フローチャートである。
 図4を参照して、画像処理手順を説明する。オペレータは、視覚センサ100を搬送装置に関連して取付ける。そして、オペレータはターゲット用シート700を、搬送路面上の所定位置に載置する。視覚センサ100の撮像視野は当該所定位置を含む範囲であると想定する。この状態で、オペレータは、操作部70を操作して撮像指示を入力する。CPU61は、撮像指示を受理し、受理した撮像指示を視覚センサ100に送信する。これにより、撮像制御部126は、受信した撮像指示を撮像部110に出力し、撮像動作を行わせる。撮像部110は、撮像視野内の被写体を撮像し、撮像動作により取得した画像データを出力する(ステップS1)。
 なお、オペレータは、ターゲット用シート700を移動させたとき、または撮像部110の姿勢を変更したときなどの適宜のタイミングで、操作部70を操作して撮像指示を入力すると想定する。
 撮像された画像データは、視覚センサ100からサポート装置600に送信される。CPU61は、受信した画像データをモニタ67に表示する。オペレータは、表示された画像を確認し、ターゲット用シート700を移動させる。そして、表示画像を確認し、ターゲット用シート700を移動させた方向と、モニタ67の表示画像の移動方向が一致するか否かを判定する(ステップS2a)。つまり、ターゲット用シート700をコンベア10によりワークが搬送される方向に移動させたのに対して、モニタ67の画面では画像が上下(垂直)方向に移動した場合には、移動方向が一致しないと判定し(ステップS2aでNO)、オペレータは操作部70を操作して、表示された画像を回転操作する(ステップS2b)。その後、処理はステップS2aに移る。
 オペレータは方向が一致していると判定すると、操作部70を操作して計測開始を指示する(ステップS2aでYES)。計測開始の指示に応答して、計測処理部611により、画像データについて計測処理が行われて、ターゲット用シート700上の4点のマークが計測され、計測結果に基づくターゲット用シート700の重心と、モニタ画面の画像の中心とを一致させるための情報を表示する(ステップS3)。ここで、モニタ画面の画像は、撮像部110の撮像視野の画像すなわち撮像画像に対応する。ターゲット用シート700は撮像視野内に配置され得ることから、撮像画像はターゲット用シート700の画像を含む。
 計測処理には、典型的には、予め登録されたマークについてのモデル画像に基づくパターンマッチングを用いたサーチ処理がある。サーチ処理では、マークの特徴部分を画像パターン(モデル)として予め登録しておき、入力画像のうち、当該予め登録されているモデルと最も似ている部分を入力画像から探し出す処理である。このとき、モデルと最も似ている部分の位置・傾き・回転角度や、モデルに対してどの程度似ているかを示す相関値などが算出される。
 なお、計測処理には、画像データについてエッジ抽出処理を行うことによりマークを検出するとしてもよい。
 計測結果に基づき、中心演算部614は、撮像視野(撮像画像)の中心と、ターゲット用シート700の画像の重心との位置を取得する。取得された位置において中心と重心を表す画像がモニタ67に表示される。これにより、中心と重心の位置ずれ量が表示される。
 オペレータは、モニタ67の表示画像から、中心と重心の位置ずれがあるか否か、すなわち両位置が一致するか否かを確認する。確認結果に従って操作部70を操作する。たとえば、不一致の場合には、オペレータは中心と重心を一致させるために、ターゲット用シート700を動かした後に、計測開始を指示するために操作部70を操作する。
 CPU61は、操作部70から操作を受付けると(ステップS4でNO)、計測開始指示を入力し、応じて処理をステップS3に移行させる。これにより、移動後のターゲット用シート700の画像について撮像がされて、撮像により取得される画像データについて、計測処理部611による計測処理が行われる。
 一方、CPU61は、操作部70が操作されないと判定すると(ステップS4でYES)、撮像部110の姿勢調整を支援するための情報が出力される(ステップS5)。
 具体的には、傾き演算部613は、計測処理により取得された4点のマークの座標位置から、傾き度を算出する。ここで、傾き度は、撮像部110の撮像視野の面(以下、撮像視野面と称する)の、ライン1の搬送路上の面(以下、搬送面という)に対する傾きの程度を指す。傾き度は、両方の面が平行である場合を値1として換算した値として取得される。なお、ここでは、搬送面は平面であると想定している。画像処理部612は、傾き度に基づいて、撮像部110の姿勢を調整するための支援情報を出力する。
 オペレータは、出力される情報を確認し、傾きがあることを確認すると、操作部70を操作するとともに、視覚センサ100の姿勢を調整する。
 その後、CPU61は、操作部70を介したオペレータの操作を受付けたと判定すると(ステップS6aでNO)、処理をステップS3に移行させる。これにより、姿勢調整後の視覚センサ100により撮像動作が行われて、撮像により取得される画像データについて、再度、ステップS3以降の処理が同様に行われる。
 一方、オペレータは傾きがないと判定した場合には、操作部70を操作しない。したがって、CPU61は操作部70から操作を受付けないことを判定し(ステップS6aでYES)、処理をステップS6bに移行させる。
 ステップS6bにおいては、CPU61は、操作部70を介して格納の指示を入力する操作がされたか否かを判定する。CPU61は、受付けた操作に基づき格納の指示を入力すると(ステップS6bでYES)、格納部615は、指示に基づき、画像データと計測結果の情報とを関連付けてRAM63の調整ファイル631に格納する(ステップS6c)。一方、CPU61は、格納指示に係る操作を受付けないと判定すると(ステップS6bでNO)、格納部615による調整ファイル631への格納処理は行われずに、一連の処理は終了する。これら各処理の詳細は後述する。
 <ターゲット用シートについて>
 図5は、本発明の実施の形態1に係るターゲット用シート700を模式的に示す図である。図5を参照して、略正方形のターゲット用シート700には視覚センサ100の姿勢を調整するために用いるターゲットパターンが描画されている。ターゲットパターンは、その内部が約90°ずつに塗り分けられた5点の円(以下、マークという)を含む。
 なお、姿勢調整のためには、基本的には3点のマークを用いれば十分であるが、マークの数は多いほど、精度よく姿勢調整するための情報を取得できることから、ここではターゲット用シート700の正方形の4つの頂点に配置された4点のマークを用いる。追加的に配置された5点目のマークは、ターゲット用シート700の配置向きを所定方向に統一するために用いられる。なお、ここではマークの形状は円形としているが、限定されるものではない。
 図4のステップS1では、オペレータは、ターゲットパターンが描画されたターゲット用シート700を、ライン1上の視覚センサ100(撮像部110)の撮像視野内に配置する。そして、オペレータは、視覚センサ100に対して撮像指示を与える。すると、視覚センサ100は、撮像によって得られた画像(ターゲットパターンが被写体として含まれる画像)をサポート装置600に送信する。
 サポート装置600では、受信する画像データに対して計測処理部611によって計測処理が行われる。計測処理では、ターゲットパターンに含まれる四隅に配置された4点のマークについて各中心点の座標値が決定される。これによって、ターゲットパターンに含まれる4点の各マークについて画像座標系の座標値[pix]が取得される。この取得される4点の座標値は(X1,Y1)、(X2,Y2)、(X3,Y3)、(X4,Y4)に相当する。
 図6は、本発明の実施の形態1に係るターゲット用シート700を含む撮像画像の表示例を示す図である。オペレータが視覚センサ100をライン1に設置する際には、撮像視野面と、ターゲット用シート700が配置される搬送面とは平行ではない場合が多い。そのため、図6に示すように、ターゲット用シート700の画像は正方形ではなく歪んだ形状(台形状)で表示される。
 図7~図9は、本発明の実施の形態1に係る撮像画像を表示する画面の一例を示す図である。図7を参照して、モニタ67の画面には、撮像視野の被写体画像(ターゲット用シート700の画像を含む画像)を表示する領域701、視覚センサ100を模式的に表す画像800を表示する領域702を含む。視覚センサ100を表す画像800に関連して、画像800の中心で相互に直交する3本の軸(X軸,Y軸およびZ軸)が表示される。これにより、オペレータは、画像800から、視覚センサ100の設置態様を、空間に設置された態様として把握することが容易となる。なお、視覚センサ100のX軸およびY軸は、撮像部110から出力される撮像画像の座標系に係るX軸およびY軸に対応する。
 モニタ67の画面には、さらに領域701の画像を時計回り/反時計回りに90度回転させるためのボタン900が表示される。オペレータがボタン900を操作すると、CPU61は当該操作を受付けて、回転指示を画像処理部612に出力する。
 画像処理部612は、回転指示に従い、領域701の画像(ターゲット用シート700の画像)を時計回り/反時計回りの方向に90度回転させる(図8を参照)。また、画像処理部612は、領域702の画像800も同じ方向に回転させる(図9を参照)。これにより、オペレータはボタン900を操作することにより、同一画面において、領域701の画像を回転させるとともに、当該回転に連動して、領域702の画像800を同一の方向に回転させることができる。
 ここでは回転させる方向として、時計回り/反時計回りの方向に90度回転としているが、オペレータが回転角度を可変に変更できるとしてもよい。
 図10と図11は、本実施の形態1に係るターゲット用シートを含む撮像画像の表示例を示す図である。上述のステップS3の処理では、画像処理部612は、図10の画像を表示する。図10を参照して、画面の領域702に、領域701の画像の計測処理によって取得された4点のマークの座標値801(座標値(X1,Y1)、(X2,Y2)、(X3,Y3)、(X4,Y4))を表示する。また、領域701の各マークには、計測された中心位置に“+”記号を重畳して表示する。ここでは、各マークの位置を、座標値801および“+”記号の両方を用いて指示したが、一方のみを用いて指示してもよい。また、4個の“+”記号を線で結ぶことにより形成される方形が表示される。
 オペレータは、座標値801から4個のマークの中心が正方形の頂点を指していることを確認することにより、撮像視野面と搬送面の両面は平行であることを把握することができる。
 オペレータが撮像視野面と搬送面の両面は平行であることを容易に把握できるように、画像処理部612は、図11に示すように、傾き度を表す情報を表示してもよい。つまり、領域701の4点のマークについて、計測された各中心位置を結ぶ線(図中、破線に相当)を表示する。両面が平行でない場合には、図示されるように、4点を結ぶ線で形成される形は正方形ではなく歪んだ図形(台形)として提示されることから、オペレータは両面が平行ではないことを容易に把握ですることができる。したがって、傾き度は、撮像画像におけるターゲット用シート700の形状の、元の正方形からの歪みの程度を表すと、言える。
 またオペレータは、台形の上底と下底の辺の長さの差分を視認することで、歪みの程度(傾き度)を把握することができる。
 傾き度を表す情報は、図12と図13のように表示することもできる。図12を参照して、4点のマークの中心を直線で結んで形成される図形の重心の座標が算出される。そして、領域701の当該座標位置に画像703を表示する。また、領域701の中心を、すなわち撮像画像の中心を、直交する2本の破線軸704の交点を用いて提示する。
 これにより、撮像画像の中心位置と画像703の位置とがずれているか否かを示すことができる。また、傾き度を、このずれ量として提示することができる。したがって、オペレータは視覚センサ100の姿勢を、領域701の中心と画像703の位置とが一致するように調整すればよい。このとき、調整作業の支援情報として、画像処理部612は、撮像画像の中心と画像703との間の距離を算出し、算出した値をデータ705として表示してもよい。また、画像703は重心であることを明示するために、4点のマークを破線の直線で結ぶようにしてもよい(図13を参照)。
 <姿勢調整のための方向>
 図14は、本発明の実施の形態1に係る姿勢調整のための方向を決定する手順を説明するための図である。図15は、本発明の実施の形態1に係る姿勢調整のための方向を表示する画面を例示する図である。
 図14を参照して、傾き演算部613による傾き度の算出手順を説明する。傾き演算部613は、4点のマークの座標値(X1,Y1)、(X2,Y2)、(X3,Y3)および(X4,Y4)に基づき、X方向およびY方向の傾きを算出する。なお、X,Y方向は、画像座標系のX軸が延びる方向,Y軸が延びる方向に一致する。
 X方向の傾きに関しては、(A1/A2)>1の条件が成立すると判定すると、画像処理部612は画面に向かって左向きの矢印706を表示し(図15参照)、(A1/A2)<1の条件が成立すると判定すると、画像処理部612は画面に向かって右向きの矢印を表示する。なお、A1=|Y1-Y2|、A2=|Y4-Y3|として算出する。
 Y方向の傾きに関しては、(B1/B2)>1の条件が成立すると判定すると、画像処理部612は画面に向かって上向きの矢印を表示し、(B1/B2)<1の条件が成立すると判定すると、画像処理部612は画面に向かって下向きの矢印707(図15参照)を表示する。なお、B1=|X1-X4|、B2=|X2-X3|として算出する。これらの矢印は、領域701の画像に関連して表示される。
 また、図15を参照して、画像処理部612は、視覚センサ100を表す画像800についても、矢印706,707の表示に連動して、対応する矢印806,807を表示する。これにより、視覚センサ100の姿勢を変更するべき方向に関する情報が提示される。
 また、傾き度を定量的に表すために、データ705とともに、またはデータ705とは独立して、視覚センサ100の傾き度のデータ816と817を算出して表示するようにしてもよい。データ816は、(A1/A2)により算出されて、データ817は、(B1/B2)により算出される。
 ここでは、視覚センサ100の姿勢を変更するべき方向として矢印706,707の画像を用いたが、“左,右,上,下”など文字を用いて提示してもよい。
 上述した傾き度を含む情報を参考にして、オペレータは視覚センサ100の姿勢を調整する。このとき、姿勢調整のための目標として、画像処理部612は、撮像視野面と搬送路面が平行であるときのターゲット用シート700の4点のマークの中心を結んで形成される正方形を表示してもよい。
 姿勢調整の結果、視覚センサ100の姿勢が、所定の精度(たとえば、搬送されるワークの計測処理の精度)を保証できる範囲に該当する/該当しないことを判定し、その判定を示す情報を出力する。たとえば、画像処理部612は、姿勢調整後の(A1/A2)および(B1/B2)の値を算出し、算出した値が所定の範囲内に該当するか否かを判定する。判定結果を表す情報として、たとえば画像716を表示する(図16参照)。範囲内であると判定すると、図16の(A)に示すように領域701を囲む枠の画像716を、たとえば緑色で表示し、矢印706と707を消去する。範囲外であると判定すると画像716を、たとえば赤色で表示する(図16の(B)参照)。これにより、オペレータに対して姿勢調整完了の目安を提示することができる。
 なお、姿勢調整完了の目安として提示される情報は、枠の画像716に限定されず、また表示態様の区別も色を用いる方法に限定されない。
 図17には、本発明の実施の形態1による姿勢調整時に表示される画像の一例が示される。図17を参照して、姿勢調整時に表示される傾き度など各種情報は、RAM63の所定領域に格納される。具体的には、オペレータは画面のボタン818を操作すると、格納部615に格納指示が与えられ、格納部615は、領域701に表示される撮像画像のデータと、領域702に表示される各種情報をRAM63の調整ファイル631に格納する。このように、調整ファイル631に、調整完了時のデータを格納しておくことにより、その後の視覚センサ100の姿勢調整のための支援情報として、調整ファイル631のデータを利用することができる。
 [実施の形態2]
 本実施の形態2では、調整ファイル631のデータを利用した、視覚センサ100の姿勢調整を説明する。ここでは、調整ファイル631には、姿勢調整が完了した時点で領域701に表示された撮像画像データと、計測結果および傾き度に関するデータが格納されていると想定する。
 図18は、本発明の実施の形態2に係る全体処理フローチャートである。図18を参照して、搬送装置に関連して視覚センサ100を取付けるとき、まず、姿勢調整のためにターゲット用シート700が搬送路面上の所定位置に載置され、ステップS1~S2bの処理が行われる。これら処理は、前述した実施の形態1と同様であり詳細は略す。
 続いて、後述のボタン819が操作されると、画像処理部612は、RAM63の調整ファイル631からデータを読出して、読出されたデータに基づく画像をモニタ67に表示する(ステップS2c)。また、ステップS1で取得された撮像画像データについて計測処理部611により計測処理が行われて、計測結果が表示される(ステップS3)。
 図19は、本発明の実施の形態2に係るターゲット用シートを含む撮像画像の表示例を示す図である。図19を参照して、領域701には姿勢調整完了時の被写体の撮像画像(ターゲット用シート700を含む画像)が表示され、画像703が表示される。画像703は、当該撮像画像データを計測処理して取得した4点のマークの中心の座標から算出した重心を表す。また、領域702には、傾き度816,817、視覚センサ100を表わす画像800、および撮像画像の重心と画面の中心とのずれ量を指すデータ705が表示される。領域702には、調整ファイル631のデータに基づく情報の表示を指示するために、オペレータによって操作されるボタン819も表示される。
 図20には、ステップS4における画面の表示例が示される。図20を参照して、画面には調整ファイル631のデータに基づく情報と、今回のステップS3の計測処理による情報とが同時に表示される。
 図20を参照して、領域701には調整ファイル631に基づく重心の画像703と、今回の計測処理による取得された4点のマークの中心座標に基づき中心演算部614が算出した重心の位置座標を示す画像703Nとが同時に表示される。また、領域701には調整ファイル631の4点のマークの中心位置座標に基づく正方形と、今回の計測処理による取得された4点のマークの中心座標に基づく破線の台形とが同時に表示される。また、領域702には、今回の計測処理により取得された4点のマークの中心位置の座標値801Nが表示される。また、領域702には、座標値801Nに基づき取得された傾き度に関するデータ705N,816Nおよび817Nが表示される。
 図20の画像によれば、領域701の表示から、今回の計測処理の結果と、調整ファイル631の姿勢調整完了時の計測処理結果との比較による情報に基づいた姿勢調整のための支援情報を提示することができる。また、領域702に表示される情報によって、今回の計測処理の結果に基づいた姿勢調整のための支援情報を提示することができる。
 オペレータは、図20の画像を確認し、重心の画像703と703Nの表示位置が一致していると判断すると、操作部70から重心一致を指示するための操作をするが、不一致と判断すると重心不一致を指示するための操作をする(ステップS4)。オペレータは、不一致を判断した場合には、重心が一致するようにターゲット用シート700を動かす。ステップS4における画面の表示例が図21に示される。図21では画像処理部612により、画像703と703Nの座標から両者の距離が算出されてデータ705Nとして表示される。
 CPU61は、不一致の操作を受付けると(ステップS4でNO)、処理をステップS3に移行させる。これにより、移動後のターゲット用シート700の画像について撮像動作が行われて、撮像による取得された画像データについて、計測処理部611による計測処理が行われる(ステップS3)。
 一方、CPU61が一致の操作を受付けると(ステップS4でYES)、傾き演算部613により、ステップS3の計測結果と調整ファイル631のデータとを用いて傾き度が取得される。画像処理部612は、取得された傾き度に基づき、姿勢調整のための支援情報を表示する(ステップS5)。傾き度の取得と、それに係る情報の表示態様は実施の形態1に説明したものと同じであり、説明は略す。
 オペレータは、出力される情報を確認する。傾きがあると判定すると、操作部70を操作するとともに、視覚センサ100の姿勢を手動で調整する。
 その後、CPU61は、操作部70からオペレータの操作がされたことを判定し(ステップS6aでNO)、処理をステップS3に移行させる。これにより、オペレータによる姿勢調整後の視覚センサ100によって撮像動作が行われて、撮像により取得される画像データについて、ステップS3以降の処理が同様に行われる。
 一方、オペレータは傾きがないと判定した場合には、操作部70を操作しない。したがって、CPU61は操作部70によるオペレータ操作がないことを判定し(ステップS6aでYES)、処理をステップS6bに移行させる。
 ステップS6bにおいては、操作部70を介して格納の指示の操作がされたか否かが判定される。CPU61は、格納指示の操作がされたと判定すると(ステップS6bでYES)、格納部615は、表示中の画像データと計測結果の情報とを関連付けてRAM63の調整ファイル631に格納する(ステップS6c)。格納指示の操作がされないと判定すると(ステップS6bでNO)、格納部615による格納処理は行われずに、CPU61は、一連の処理を終了させる。
 <姿勢調整のための方向>
 図18のステップS5における傾き度の取得と、姿勢調整のための支援情報の提示について説明する。図22は、本発明の実施の形態2に係る姿勢調整のための方向を決定する手順を説明するための図である。図23は、本発明の実施の形態2に係る姿勢調整のための方向を表示する画面を例示する図である。
 図22を参照して、傾き演算部613による傾き度の算出手順を説明する。傾き演算部613は、撮像された画像データの計測処理による4点のマークの座標値((XN1,YN1)、(XN2,YN2)、(XN3,YN3)および(XN4,YN4))と、ステップS2cにおいて調整ファイル631から読出した4点のマークの座標値((XP1,YP1)、(XP2,YP2)、(XP3,YP3)および(XP4,YP4))とに基づき、撮像視野面の搬送路面に対するX方向およびY方向の傾き度を算出する。
 X方向の傾き度に関しては、(AP1/AP2)>(AN1/AN2)の条件が成立すると判定すると、画像処理部612は画面に向かって右向きの矢印を表示し、(AP1/AP2)<(AN1/AN2)の条件が成立すると判定すると、画像処理部612は画面に向かって左向きの矢印706を表示する(図23を参照)。なお、AP1=|YP1-YP2|、AP2=|YP4-YP3|、AN1=|YN1-YN2|、AN2=|YN4-YN3|として算出する。
 Y方向の傾きに関しては、(BP1/BP2)>(BN1/BN2)の条件が成立すると判定すると、画像処理部612は画面に向かって下向きの矢印707を表示し(図23を参照)、(BP1/BP2)<(BN1/BN2)の条件が成立すると判定すると、画像処理部612は画面に向かって上向きの矢印を表示する。なお、BP1=|XP1-XP4|、BP2=|XP2-XP3|、BN1=|XN1-XN4|、BN2=|XN2-XN3|として算出する。これらの矢印は、領域701の画像に関連して表示される。
 また、図23を参照して、画像処理部612は、視覚センサ100を表す画像800についても、矢印706,707の表示に連動して、対応する矢印806,807を表示し、視覚センサ100の姿勢を調整する方向を提示する。
 また、画像処理部612は、傾き度を定量的に表すためのデータ705Nとともに、またはデータ705Nとは独立して視覚センサ100の傾き度のデータ816と817を算出して表示するようにしてもよい。データ816は、(AN1/AN2)により算出されて、データ817は、(BN1/BN2)により算出される。
 上述した傾き度を含む支援情報を参考にして、オペレータは視覚センサ100の姿勢を調整する。このとき、姿勢調整のための目標として、画像処理部612は、撮像視野面と搬送路面が平行であるときのターゲット用シート700の4点のマークの中心を結んで形成される正方形を表示してもよい。
 姿勢調整の結果、視覚センサ100の姿勢が、所定の精度(たとえば、搬送されるワークの計測処理の精度)を保証できる範囲に該当する/該当しないことを判定し、その判定を示す情報が出力される。たとえば、画像処理部612は、姿勢調整後の(AN1/AN2)および(BN1/BN2)の値を算出し、算出した値が所定の範囲内に該当するか否かを判定する。そして、判定結果を示す情報として、たとえば画像716を表示する(図24を参照)。範囲内であると判定すると、図24の(A)に示すように領域701を囲む枠の画像716を緑色で表示する。範囲外であると判定すると画像716を赤色で表示する(図24の(B)を参照)。これにより、姿勢調整の完了の目安を提示することができる。
 なお、範囲内であると判定されるとき、図24の(A)の画像から、調整方向を指す矢印を消去してもよい。また、目安として提示される情報は、枠の画像716に限定されず、また画像716の表示態様の区別も色を用いる方法に限定されない。
 上述の実施の形態では傾き度(または形状の歪み度)は、中心演算部614が算出する各マークの中心位置の座標を用いて取得したが、取得方法は、これに限定されない。たとえば、4点のマークを正円とした場合に、撮像画像におけるマークの形(たとえば、楕円)の、正円からの歪みの程度を取得する。これにより、傾き度は、歪み度として取得してもよい。
 なお、図3に示す各種機能は、サポート装置600(または、操作表示装置500)が備えるとしているが、撮像画像処理部120が備えるとしてもよい。その場合には、メモリ124に調整ファイル631が格納されて、視覚センサ100の姿勢調整のための支援情報の出力先は、主に、サポート装置600のモニタ67または操作表示装置500のディスプレイ(図示せず)を用いることになる。
 今回開示された実施の形態はすべての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は上記した説明ではなくて請求の範囲によって示され、請求の範囲と均等の意味および範囲内でのすべての変更が含まれることが意図される。
 70 操作部、100 視覚センサ、110 撮像部、120 撮像画像処理部、124 メモリ、126 撮像制御部、500 操作表示装置、600 サポート装置、611 計測処理部、612 画像処理部、613 傾き演算部、614 中心演算部、615 格納部、631 調整ファイル、700 ターゲット用シート、701,702 領域。

Claims (10)

  1.  ワークの搬送路の少なくとも一部を撮像視野に含むように配置された撮像部から、撮像によって得られた撮像画像を受理する画像処理装置であって、
     前記搬送路上に置かれた目標物を、前記撮像部が撮像することによって取得された撮像画像を受理する画像受理手段と、
     受理された撮像画像における前記目標物の位置を取得する位置取得手段と、
     前記位置取得手段によって取得された前記目標物の前記撮像画像における位置を用いて、前記撮像部の撮像視野を含む面の、前記目標物が置かれた面に対する傾き度を取得する傾き取得手段と、
     取得される傾き度を用いて、前記撮像部の姿勢調整を支援するための支援情報を出力する出力手段と、を備える、画像処理装置。
  2.  前記支援情報は、前記撮像部の姿勢を変更するべき方向を示す情報を含む、請求項1に記載の画像処理装置。
  3.  前記傾き取得手段は、取得された前記目標物の前記撮像画像における位置と、前記撮像画像における予め定められた位置とのずれ量として、前記傾き度を取得する、請求項1または2に記載の画像処理装置。
  4.  前記傾き取得手段は、取得された前記目標物の前記撮像画像における位置と、前記撮像画像における予め定められた位置との距離として、前記傾き度を取得する、請求項1または2に記載の画像処理装置。
  5.  前記目標物は、予め定められた形状を有し、
     前記傾き取得手段は、前記目標物の前記撮像画像における形状の、前記予め定められた形状からの歪みの程度として、前記傾き度を取得する、請求項1または2に記載の画像処理装置。
  6.  前記支援情報は、前記受理された撮像画像を含み、
     前記出力手段は、前記支援情報をメモリに格納する格納手段を、含む、請求項1または2に記載の画像処理装置。
  7.  前記傾き取得手段は、
     前記格納手段に格納された前記支援情報に含まれる撮像画像における前記目標物の位置と、前記画像受理手段が前記撮像部から受理した撮像画像における前記位置取得手段によって取得された前記目標物の前記撮像画像における位置とのずれ量として、前記傾き度を取得する、請求項6に記載の画像処理装置。
  8.  前記傾き取得手段は、前記格納手段に格納された前記支援情報に含まれる撮像画像における前記目標物の前記撮像画像における位置と、前記画像受理手段が前記撮像部から受理した撮像画像における前記位置取得手段によって取得された前記目標物の位置との距離として、前記傾き度を取得する、請求項6に記載の画像処理装置。
  9.  前記目標物は、予め定められた形状を有し、
     前記傾き取得手段は、前記画像受理手段が前記撮像部から受理した撮像画像における前記目標物の形状の、前記格納手段に格納された前記支援情報に含まれる撮像画像における前記目標物の形状からの歪みの程度として、前記傾き度を取得する、請求項6に記載の画像処理装置。
  10.  ワークの搬送路の少なくとも一部を撮像視野に含むように配置された撮像部から、撮像によって得られた撮像画像を受理するコンピュータで実行される画像処理プログラムであって、
     前記画像処理プログラムは、前記コンピュータを、
     前記搬送路上に置かれた目標物を、前記撮像部が撮像することによって取得された撮像画像を受理する画像受理手段と、
     受理された撮像画像における前記目標物の位置を取得する位置取得手段と、
     前記位置取得手段によって取得された前記目標物の前記撮像画像における位置を用いて、前記撮像部の撮像視野を含む面の、前記目標物が置かれた面に対する傾き度を取得する傾き取得手段と、
     取得される傾き度を用いて、前記撮像部の姿勢調整を支援するための支援情報を出力する出力手段、として機能させる、画像処理プログラム。
PCT/JP2011/056776 2011-03-15 2011-03-22 画像処理装置および画像処理プログラム WO2012124140A1 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
CN201180066697.7A CN103348376B (zh) 2011-03-15 2011-03-22 图像处理装置
EP11861318.1A EP2667350B1 (en) 2011-03-15 2011-03-22 Image processing device, and image processing program
US13/975,435 US9571795B2 (en) 2011-03-15 2013-08-26 Image processing device and image processing program

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2011-056448 2011-03-15
JP2011056448A JP5370398B2 (ja) 2011-03-15 2011-03-15 画像処理装置および画像処理プログラム

Related Child Applications (1)

Application Number Title Priority Date Filing Date
US13/975,435 Continuation US9571795B2 (en) 2011-03-15 2013-08-26 Image processing device and image processing program

Publications (1)

Publication Number Publication Date
WO2012124140A1 true WO2012124140A1 (ja) 2012-09-20

Family

ID=46830256

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2011/056776 WO2012124140A1 (ja) 2011-03-15 2011-03-22 画像処理装置および画像処理プログラム

Country Status (5)

Country Link
US (1) US9571795B2 (ja)
EP (1) EP2667350B1 (ja)
JP (1) JP5370398B2 (ja)
CN (1) CN103348376B (ja)
WO (1) WO2012124140A1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2016099375A (ja) * 2014-11-18 2016-05-30 中村 正一 双眼ルーペの製作方法

Families Citing this family (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9675226B2 (en) * 2012-10-26 2017-06-13 Lg Electronics Inc. Robot cleaner system and control method of the same
JP6334278B2 (ja) * 2014-06-06 2018-05-30 株式会社ブリヂストン 計測装置
CN105208271A (zh) * 2015-09-21 2015-12-30 努比亚技术有限公司 拍摄角度提示方法和装置
WO2018025625A1 (ja) * 2016-08-01 2018-02-08 ソニー株式会社 光学装置および情報処理方法
JP6834232B2 (ja) 2016-08-09 2021-02-24 オムロン株式会社 情報処理システム、情報処理装置、ワークの位置特定方法、およびワークの位置特定プログラム
JP2018024044A (ja) * 2016-08-09 2018-02-15 オムロン株式会社 情報処理システム、情報処理装置、ワークの位置特定方法、およびワークの位置特定プログラム
JP6472472B2 (ja) * 2017-03-08 2019-02-20 本田技研工業株式会社 位置姿勢調整方法
US10998211B2 (en) * 2017-05-31 2021-05-04 Fujikin Inc. Management system, method, and computer program for semiconductor fabrication apparatus
JP7143099B2 (ja) * 2018-03-23 2022-09-28 ソニー・オリンパスメディカルソリューションズ株式会社 医療用観察システム
EP3868699B1 (en) * 2018-10-16 2023-12-20 Tadano Ltd. Crane device
JP7250489B2 (ja) * 2018-11-26 2023-04-03 キヤノン株式会社 画像処理装置およびその制御方法、プログラム
JP7378934B2 (ja) * 2019-01-29 2023-11-14 キヤノン株式会社 情報処理装置、情報処理方法及びシステム
JP7241611B2 (ja) * 2019-06-06 2023-03-17 東京エレクトロン株式会社 パターン測定装置、パターン測定装置における傾き算出方法およびパターン測定方法
DE102020126407A1 (de) 2020-10-08 2022-04-14 Leica Camera Aktiengesellschaft Bildaufnahmegerät
JPWO2023021668A1 (ja) * 2021-08-19 2023-02-23
CN115620337A (zh) * 2022-10-11 2023-01-17 深圳市谷奇创新科技有限公司 一种用于生命体征的光纤传感器监测方法和系统
CN115877808B (zh) * 2023-01-30 2023-05-16 成都秦川物联网科技股份有限公司 用于薄片工件加工的工业物联网及控制方法

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005049590A (ja) * 2003-07-28 2005-02-24 Toshiba Corp 撮像装置の調整方法およびこの調整方法に用いる検出治具
JP2006244363A (ja) * 2005-03-07 2006-09-14 Seiko Epson Corp 画像処理装置、画像処理装置を有する搬送装置、画像処理装置の制御方法
JP2007334423A (ja) * 2006-06-12 2007-12-27 Shimatec:Kk 自動撮影装置
JP2008003394A (ja) 2006-06-23 2008-01-10 Nikon Corp カメラ、カメラシステム、及び姿勢調整方法
JP2008072674A (ja) * 2006-09-15 2008-03-27 Ricoh Co Ltd 撮影補助装置及び撮影装置
JP2009036589A (ja) * 2007-07-31 2009-02-19 Omron Corp 校正用ターゲット、校正支援装置、校正支援方法、および校正支援プログラム

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6670991B1 (en) * 1997-09-26 2003-12-30 Canon Kabushiki Kaisha Image sensing system, control method, and recording medium for controlling a camera apparatus utilizing a client device connected thereto
US20040100563A1 (en) * 2002-11-27 2004-05-27 Sezai Sablak Video tracking system and method
JP2004320123A (ja) * 2003-04-11 2004-11-11 Nec Viewtechnology Ltd 資料提示装置
CN2777880Y (zh) * 2004-01-15 2006-05-03 英保达股份有限公司 影像角度自动调整系统
EP1713275A4 (en) * 2004-02-03 2013-12-11 Panasonic Corp MONITORING SYSTEM AND CAMERA TERMINAL
US7512260B2 (en) * 2004-09-06 2009-03-31 Omron Corporation Substrate inspection method and apparatus
US20080259289A1 (en) * 2004-09-21 2008-10-23 Nikon Corporation Projector Device, Portable Telephone and Camera
JP2007030087A (ja) 2005-07-26 2007-02-08 Fanuc Ltd 物流トラッキング装置
US7839431B2 (en) 2006-10-19 2010-11-23 Robert Bosch Gmbh Image processing system and method for improving repeatability
JP4960754B2 (ja) * 2007-04-25 2012-06-27 キヤノン株式会社 情報処理装置、情報処理方法
US8805585B2 (en) * 2008-06-05 2014-08-12 Toshiba Kikai Kabushiki Kaisha Handling apparatus, control device, control method, and program
JP5509645B2 (ja) * 2009-03-25 2014-06-04 富士ゼロックス株式会社 位置・姿勢認識方法、部品把持方法、部品配置方法、部品組立方法、位置・姿勢認識装置、部品把持装置、部品配置装置、および部品組立装置
WO2010125489A1 (en) * 2009-04-29 2010-11-04 Koninklijke Philips Electronics N.V. Method of selecting an optimal viewing angle position for a camera
JP5290864B2 (ja) * 2009-05-18 2013-09-18 キヤノン株式会社 位置姿勢推定装置及び方法

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005049590A (ja) * 2003-07-28 2005-02-24 Toshiba Corp 撮像装置の調整方法およびこの調整方法に用いる検出治具
JP2006244363A (ja) * 2005-03-07 2006-09-14 Seiko Epson Corp 画像処理装置、画像処理装置を有する搬送装置、画像処理装置の制御方法
JP2007334423A (ja) * 2006-06-12 2007-12-27 Shimatec:Kk 自動撮影装置
JP2008003394A (ja) 2006-06-23 2008-01-10 Nikon Corp カメラ、カメラシステム、及び姿勢調整方法
JP2008072674A (ja) * 2006-09-15 2008-03-27 Ricoh Co Ltd 撮影補助装置及び撮影装置
JP2009036589A (ja) * 2007-07-31 2009-02-19 Omron Corp 校正用ターゲット、校正支援装置、校正支援方法、および校正支援プログラム

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
See also references of EP2667350A4

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2016099375A (ja) * 2014-11-18 2016-05-30 中村 正一 双眼ルーペの製作方法

Also Published As

Publication number Publication date
US9571795B2 (en) 2017-02-14
CN103348376A (zh) 2013-10-09
US20140015957A1 (en) 2014-01-16
JP2012193980A (ja) 2012-10-11
JP5370398B2 (ja) 2013-12-18
EP2667350B1 (en) 2018-11-07
EP2667350A1 (en) 2013-11-27
CN103348376B (zh) 2016-11-09
EP2667350A4 (en) 2014-12-24

Similar Documents

Publication Publication Date Title
JP5370398B2 (ja) 画像処理装置および画像処理プログラム
JP6859967B2 (ja) コンベアトラッキングシステムおよびキャリブレーション方法
JP5810562B2 (ja) 画像処理システムに向けられたユーザ支援装置、そのプログラムおよび画像処理装置
JP5561214B2 (ja) 画像処理装置および画像処理プログラム
JP5316118B2 (ja) 3次元視覚センサ
JP5770486B2 (ja) 全周画像計測装置
JP5003840B1 (ja) 画像処理装置および画像処理プログラム
JP5815761B2 (ja) 視覚センサのデータ作成システム及び検出シミュレーションシステム
US10571254B2 (en) Three-dimensional shape data and texture information generating system, imaging control program, and three-dimensional shape data and texture information generating method
JP2008021092A (ja) ロボットシステムのシミュレーション装置
JP6881188B2 (ja) 位置検出装置およびプログラム
TW201233976A (en) Shape measuring device, shape measuring method, structure manufacturing method, and program
JP2010210585A (ja) 3次元視覚センサにおけるモデル表示方法および3次元視覚センサ
JP2017049152A (ja) クラック幅計測システム
JP6503278B2 (ja) 形状測定装置および形状測定方法
JP5573537B2 (ja) ロボットのティーチングシステム
JP2012066345A (ja) 投影面情報提示装置と方法
JP2016078142A (ja) ロボット装置の制御方法、およびロボット装置
JP2015169515A (ja) 姿勢推定システム、プログラムおよび姿勢推定方法
JP5175916B2 (ja) 部品検索システム
JP2021092588A (ja) 位置検出装置およびプログラム
JP2020149430A (ja) 画像処理装置、画像処理方法、及びプログラム
TW201510687A (zh) 影像誤差判斷與補償方法與系統
JP2012032173A (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: 11861318

Country of ref document: EP

Kind code of ref document: A1

WWE Wipo information: entry into national phase

Ref document number: 2011861318

Country of ref document: EP

NENP Non-entry into the national phase

Ref country code: DE