EP3106312A1 - Printing device and printing method - Google Patents

Printing device and printing method Download PDF

Info

Publication number
EP3106312A1
EP3106312A1 EP15172896.1A EP15172896A EP3106312A1 EP 3106312 A1 EP3106312 A1 EP 3106312A1 EP 15172896 A EP15172896 A EP 15172896A EP 3106312 A1 EP3106312 A1 EP 3106312A1
Authority
EP
European Patent Office
Prior art keywords
printing
image
point group
group data
distance image
Prior art date
Legal status (The legal status 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 status listed.)
Granted
Application number
EP15172896.1A
Other languages
German (de)
French (fr)
Other versions
EP3106312B1 (en
Inventor
Yasutoshi Nakamura
Jun Ueda
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Roland DG Corp
Original Assignee
Roland DG Corp
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 Roland DG Corp filed Critical Roland DG Corp
Priority to EP15172896.1A priority Critical patent/EP3106312B1/en
Priority to ES15172896.1T priority patent/ES2669603T3/en
Publication of EP3106312A1 publication Critical patent/EP3106312A1/en
Application granted granted Critical
Publication of EP3106312B1 publication Critical patent/EP3106312B1/en
Not-in-force legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B41PRINTING; LINING MACHINES; TYPEWRITERS; STAMPS
    • B41JTYPEWRITERS; SELECTIVE PRINTING MECHANISMS, i.e. MECHANISMS PRINTING OTHERWISE THAN FROM A FORME; CORRECTION OF TYPOGRAPHICAL ERRORS
    • B41J3/00Typewriters or selective printing or marking mechanisms characterised by the purpose for which they are constructed
    • B41J3/28Typewriters or selective printing or marking mechanisms characterised by the purpose for which they are constructed for printing downwardly on flat surfaces, e.g. of books, drawings, boxes, envelopes, e.g. flat-bed ink-jet printers
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B41PRINTING; LINING MACHINES; TYPEWRITERS; STAMPS
    • B41JTYPEWRITERS; SELECTIVE PRINTING MECHANISMS, i.e. MECHANISMS PRINTING OTHERWISE THAN FROM A FORME; CORRECTION OF TYPOGRAPHICAL ERRORS
    • B41J11/00Devices or arrangements  of selective printing mechanisms, e.g. ink-jet printers or thermal printers, for supporting or handling copy material in sheet or web form
    • B41J11/008Controlling printhead for accurately positioning print image on printing material, e.g. with the intention to control the width of margins
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B41PRINTING; LINING MACHINES; TYPEWRITERS; STAMPS
    • B41JTYPEWRITERS; SELECTIVE PRINTING MECHANISMS, i.e. MECHANISMS PRINTING OTHERWISE THAN FROM A FORME; CORRECTION OF TYPOGRAPHICAL ERRORS
    • B41J11/00Devices or arrangements  of selective printing mechanisms, e.g. ink-jet printers or thermal printers, for supporting or handling copy material in sheet or web form
    • B41J11/20Platen adjustments for varying the strength of impression, for a varying number of papers, for wear or for alignment, or for print gap adjustment
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B41PRINTING; LINING MACHINES; TYPEWRITERS; STAMPS
    • B41JTYPEWRITERS; SELECTIVE PRINTING MECHANISMS, i.e. MECHANISMS PRINTING OTHERWISE THAN FROM A FORME; CORRECTION OF TYPOGRAPHICAL ERRORS
    • B41J3/00Typewriters or selective printing or marking mechanisms characterised by the purpose for which they are constructed
    • B41J3/407Typewriters or selective printing or marking mechanisms characterised by the purpose for which they are constructed for marking on special material
    • B41J3/4073Printing on three-dimensional objects not being in sheet or web form, e.g. spherical or cubic objects

Definitions

  • the present invention relates to a printing device and a printing method.
  • a printing head is moved, for example, in two directions perpendicular to each other in a plane with respect to a printing subject placed on a table.
  • Such a flatbed-type printing device is used for performing printing on, for example, a printing subject such as a substantially rectangular business card, greeting card or the like.
  • a printing subject such as a substantially rectangular business card, greeting card or the like.
  • the term "printing subject” is a "substantially rectangular sheet-type or plate-type printing subject such as a substantially rectangular business card, greeting card or the like", unless otherwise specified.
  • the printing subject For performing printing on a printing subject by use of a flatbed-type printing device, the printing subject is placed on a table and then printing is performed. For accurate printing, the printing subject needs to be placed accurately at a predetermined position. This requires, for example, measuring the size of the printing subject beforehand, so that the position at which the printing subject is to be placed is determined accurately.
  • Japanese Laid-Open Patent Publication No. 2007-136764 A technology for solving these problems is proposed by, for example, Japanese Laid-Open Patent Publication No. 2007-136764 .
  • a jig that can be secured to a table and accommodate a plurality of printing subjects is produced.
  • the jig is secured to the table and a plurality of printing subjects are accommodated in the jig, and each of the plurality of printing subjects is accommodated at a predetermined position in the jig. This allows the printing to be performed at predetermined positions of the printing subjects.
  • the above-described technology requires producing a jig in accordance with the shape or the size of a printing subject. This causes a problem that the production of a jig is time-consuming, which imposes a heavy load on the operator. In addition, even in the case where printing is to be performed on a small number of printing subjects, a jig needs to be produced. This increases the cost.
  • Preferred embodiments of the present invention provide a printing device and a printing method capable of performing printing easily at a desired position of a printing subject at low cost with no use of a jig, without imposing a heavy load on an operator.
  • a printing device is a printing device that acquires three-dimensional information on at least one printing subject having a three-dimensional shape and prints a predetermined printing image as a two-dimensional image on the at least one printing subject.
  • the printing device includes a table that allows at least one printing subject to be placed thereon; a projection device that projects a predetermined pattern to the at least one printing subject placed on the table; an image capturing device that captures an image of the at least one printing subject having the predetermined pattern projected thereon; three-dimensional information acquirer that acquires a spatial code image from the image captured by the image capturing device and acquires the three-dimensional information on the at least one printing subject from the acquired spatial code image; a recognizer that recognizes a position and a posture of each of the at least one printing subject from the acquired three-dimensional information; a disposer that disposes the printing image on each of the at least one printing subject by use of the position and the posture thereof; and a printing data generator that generates printing data representing the printing image disposed by the
  • a printing method is a method by which three-dimensional information on at least one printing subject having a three-dimensional shape that is placed on a table is acquired, and a predetermined printing image as a two-dimensional image is printed on the at least one printing subject.
  • the printing method includes projecting a predetermined pattern to the at least one printing subject placed on the table; capturing an image of the at least one printing subject having the predetermined pattern projected thereon; acquiring a spatial code image from the captured image, and acquiring the three-dimensional information on the at least one printing subject from the acquired spatial code image; recognizing a position and a posture of each of the at least one printing subject from the acquired three-dimensional information; disposing the printing image on each of the at least one printing subject by use of the position and the posture thereof; and generating printing data on the printing image disposed on the at least one printing subject.
  • the printing device 10 is a so-called flatbed-type inkjet printer.
  • the printing device 10 includes a base member 12, a table 14 including a top surface 14a, a movable member 18 including a rod-shaped member 16, a printing head 20, a standing member 22 standing on a rear portion of the base member 12, a projector 24, a camera 26, and a microcomputer 300.
  • An overall operation of the printing device 10 is controlled by the microcomputer 300.
  • a structure of the microcomputer 300 will be described later.
  • the table 14 is located on the base member 12.
  • the top surface 14a of the table 14 is flat.
  • a printing subject 200 is to be placed on the top surface 14a of the table.
  • the table 14 is movable in a Z-axis direction by a moving mechanism (not shown). This allows the printing subject 200 placed on the top surface 14a of the table 14 to be moved in the Z-axis direction.
  • the range in which the table 14 is movable up and down matches, for example, a range of thickness of the printing subject 200 on which printing can be performed by the printing device 10.
  • the moving mechanism that moves the table 14 in the Z-axis direction may be a known mechanism, for example, a combination of a gear and a motor. An operation of the moving mechanism is controlled by the microcomputer 300.
  • the printing subject 200 is placed on the top surface 14a of the table 14.
  • the printing subject 200 may have any shape with which the printing subject 200 can be placed on the table 14 with a predetermined gap from the printing head 20.
  • a printing surface of the printing subject 200 may have any of various shapes, for example, may be flat, curved to be protruded upward, curved to be protruded downward, concaved and convexed with piercing edges, or concaved and convexed without piercing edges.
  • a difference between top and bottom levels of the printing surface is within a maximum difference with which ink may be applied normally to the printing surface by the printing head 20.
  • the base member 12 is provided with guide grooves 28a and 28b extending in a Y-axis direction.
  • the movable member 18 is driven by a driving mechanism (not shown) to move in the Y-axis direction along the guide grooves 28a and 28b.
  • the driving mechanism may be a known mechanism such as, for example, a combination of a gear and a motor.
  • the rod-shaped member 16 extends in an X-axis direction above the table 14.
  • a Z axis is a vertical axis
  • an X axis is perpendicular to the Z axis
  • a Y axis is perpendicular to the X axis and the Z axis.
  • the printing head 20 is an ink head that injects ink by an inkjet system.
  • the "inkjet system” refers to a printing system of any of various types of conventionally known inkjet technologies.
  • the “inkjet system” encompasses various types of continuous printing systems such as a binary deflection system, a continuous deflection system and the like, and various types of on-demand systems such as a thermal system, a piezoelectric element system and the like.
  • the printing head 20 is structured to perform printing on the printing subject 200 placed on the table 14.
  • the printing head 20 is provided on the rod-shaped member 16.
  • the printing head 20 is provided so as to be movable in the X-axis direction. This will be described in more detail.
  • the printing head 20 is engaged with guide rails (not shown) provided on a front surface of the rod-shaped member 16 and is slidable with respect to the guide rails.
  • the printing head 20 is provided with a belt (not shown) movable in the X-axis direction.
  • the belt is rolled up by a driving mechanism (not shown) and thus is moved.
  • the driving mechanism may be a known mechanism such as, for example, a combination of a gear and a motor.
  • the projector 24 projects a predetermined pattern to the entirety of the top surface 14a of the table 14.
  • the projector 24 is secured to the standing member 22.
  • An operation of the projector 24 is controlled by the microcomputer 300.
  • the projector 24 projects a gray code pattern extending in a vertical direction and a gray code pattern extending in a horizontal direction to the top surface 14a of the table 14, and also projects a binary pattern when a phase shift spatial coding method (described later) is used.
  • the "binary pattern” is a projection pattern including a slit-shaped light-transmissive area and a slit-shaped light-non-transmissive area, each having a certain width and extending in a direction perpendicular to a width direction, located alternately and repeatedly.
  • the camera 26 is secured to the standing member 22.
  • the camera 26 is located so as to capture an image of the entirety of the top surface 14a of the table 14 in a direction different from a direction in which the projector 24 projects the patterns.
  • An operation of the camera 26 is controlled by the microcomputer 300.
  • the microcomputer 300 controls the overall operation of the printing device 10 as described above, and also recognizes the position or posture of each of a plurality of printing subjects 200 placed on the table 14 to generate printing data usable to print a printing image, input by an operator, at a predetermined position of each printing subject 200.
  • the posture of the printing subject 200 is a three-dimensional inclination.
  • the microcomputer 300 a known microcomputer including, for example, a CPU, a ROM and a RAM is usable.
  • Software is either stored or read into the microcomputer 300, and the microcomputer 300 executes the software to define and operate as each of the functional elements described below.
  • the microcomputer 300 includes a controller 302 that controls the overall operation of the printing device 10, a recognizer 304 that recognizes the position or posture of each of the plurality of printing subjects 200 placed on the table 14, a printing data generator 306 that generates printing data usable to perform printing on the plurality of printing subjects 200, a storage 308 that stores the generated printing data and various other types of information, and a display 310 that causes images of the plurality of printing subjects 200 placed on the table 14 and various other images to be displayed on a display screen (not shown).
  • the controller 302 drives the moving mechanism (not shown) to control various operations, for example, to control the printing head 20 to move in the X-axis direction, to control the movable member 18 to move in the Y-axis direction, and to move the table 14 in the Z-axis direction.
  • the movement of the table 14 in the Z-axis direction is controlled by a Z-axis direction movement controller (adjustment unit) 312 of the controller 302.
  • the Z-axis direction movement controller 312 acquires height information (Z coordinate value) on the greatest height of the printing subjects 200 from three-dimensional information on the printing subjects 200 acquired by the recognizer 304, and controls the table 14 to move up and down based on the height information.
  • the recognizer 304 includes a three-dimensional information acquirer 314, a point group data generator 316, a cluster generator 318, a source point group data generator 320, a distance image generator 322, a first transformation matrix calculator 324, and a second transformation matrix calculator 326.
  • the three-dimensional information acquirer 314 acquires three-dimensional information on the printing subjects 200 placed on the table 14.
  • the point group data generator 316 generates point group data on the printing subjects 200 from the acquired three-dimensional information.
  • the cluster generator 318 generates a plurality of clusters representing the printing subjects 200 from the point group data.
  • the source point group data generator 320 sets each of the generated clusters as target point group data, and generates source point group data from one piece of data among the target point group data.
  • the distance image generator 322 generates a source distance image, which is a two-dimensional image, from the source point group data, and generates a target distance image, which is a two-dimensional image, from the target point group data. This will be described in detail later.
  • the first transformation matrix calculator 324 calculates a first transformation matrix usable to rotate the source distance image by an angle such that the source distance image is closest to the target distance image.
  • the second transformation matrix calculator 326 calculates, from the calculated first transformation matrix, a second transformation matrix usable to make the source point group data and the target point group data to be close to each other more accurately.
  • Images of a plurality of gray code patterns, projected by the projector 24 to the top surface 14a of the table 14 having the plurality of printing subjects 200 placed thereon, are captured by the camera 26.
  • the three-dimensional information acquirer 314 acquires a spatial code image from each of the captured gray code patterns by a known spatial coding method, and synthesizes the acquired spatial code images to acquire the three-dimensional information (point group) on the printing subjects 200.
  • the three-dimensional information acquirer 314 may acquire the three-dimensional information by a known phase shift spatial coding method instead of the spatial coding method.
  • the phase shift spatial coding method is performed as follows. A binary pattern is projected by the projector 24 while being shifted by a predetermined moving distance, and an image of the binary pattern is captured by the camera 26 each time the binary pattern is shifted.
  • the three-dimensional information acquirer 314 synthesizes the captured images to acquire phase shift code images.
  • images of a plurality of binary patterns projected by the projector 24 to the top surface 14a of the table 14 having the plurality of printing subjects 200 placed thereon are captured by the camera 26.
  • the three-dimensional information acquirer 314 acquires a spatial code image from each of the captured binary patterns.
  • the three-dimensional information acquirer 314 acquires three-dimensional information on the printing subjects 200 from the acquired phase shift code images and the acquired spatial code images, in other words, by synthesizing phase shift code values and spatial code values.
  • the three-dimensional information acquired by the phase shift spatial coding method has a higher resolution than that of the three-dimensional information acquired by the spatial coding method. More specifically, the phase shift code values acquired by the phase shift spatial coding method is a value obtained as a result of the spatial code value acquired by the spatial coding method being divided more finely. As a result, the posture of the printing subjects 200 is recognized with higher precision. Acquisition of the three-dimensional information by the spatial coding method is known and will not be described herein. Acquisition of the three-dimensional information by the phase shift spatial coding method may be performed by a technology disclosed in, for example, Japanese Patents Nos. 4944435 and 4874657 , and will not be described herein.
  • the point group data generator 316 transforms the three-dimensional information in a camera coordinate system that is acquired by the three-dimensional information acquirer 314 into values in a printing coordinate system.
  • the point group data representing only the printing subjects 200 is calculated by the following expression by use of a 4 x 4 transformation matrix H R2P (described later) calculated by a calibration performed on the camera 26 and the table 14.
  • s M ⁇ P H R 2 P ⁇ M ⁇ R
  • the cluster generator (divider) 318 divides the point group data representing the plurality of printing subjects 200 placed on the table 14 into a plurality of pieces of point group data each representing one printing subject 200 by use of the Euclidean Cluster Extraction algorithm to generate clusters each representing each printing subject 200.
  • the Euclidean Cluster Extraction algorithm is a conventionally known technology ( R. B. Rusu and S. Cousins, 3D is here: Point Cloud Library (PCL), In IEEE International Conference on Robotics and Automation (ICRA), Shanghai, China, May 9-13 2011 ), and will not described herein.
  • the source point group data generator (setter) 320 copies one cluster among the plurality of clusters representing the plurality of printing subjects 200, and sets the copied cluster as source point group data. All the plurality of clusters are each set as target point group data. This will be described more specifically, with respect to FIG. 4A . As shown in FIG. 4A , for example, the point group data in an upper left area is copied to generate source point group data, and the four pieces of point group data are each set as target point group data. At this point, the coordinate values of the source point group data are transformed into relative coordinate values from a start point of the display area. In this manner, all the pieces of point group data including the point group data from which the copying was performed are each set as target point group data. Thus, each cluster is made a target at which the printing image is to be disposed.
  • the source point group data may be selected arbitrarily from the plurality of pieces of target point group data.
  • the distance image generator 322 generates a source distance image and a target distance image, each of which is two-dimensional data, respectively from the source point group data and the target point group data generated by the source point group data generator 320.
  • a source distance image and a target distance image each of which is two-dimensional data, respectively from the source point group data and the target point group data generated by the source point group data generator 320.
  • an X coordinate and a Y coordinate of source point group coordinates which are three-dimensional coordinates of the source point group data
  • are transformed into an X coordinate and a Y coordinate which are two-dimensional coordinates of the source distance image to be generated.
  • the Z coordinate of the source point group coordinates is represented as a gray value.
  • the (x, y) coordinates are transformed into values with which an average inter-point distance of the point group data is 1 pixel.
  • the range of gray values i.e., the range from the minimum value to the maximum value among the Z values of the point group data in all the clusters is the range of 0 to 255. In other words, among the gray values, i.e., the Z coordinate values Zs, corresponding to the XY coordinate values of the source point group data, the minimum value is 0, and the maximum value is 255.
  • an X coordinate and a Y coordinate of target point group coordinates which are three-dimensional coordinates of the target point group data
  • an X coordinate and a Y coordinate which are two-dimensional coordinates of the target distance image to be generated.
  • the Z coordinate of the target point group coordinates is represented as a gray value.
  • the (x, y) coordinates are transformed into values with which an average inter-point distance of the point group data is 1 pixel.
  • the target distance image is generated by transforming the three-dimensional coordinates of the target point group data into two-dimensional coordinates by the following expression.
  • the range of gray values i.e., the range from the minimum value to the maximum value among the Z values of the point group data in all the clusters is the range of 0 to 255.
  • the minimum value is 0, and the maximum value is 255.
  • the first transformation matrix calculator (first calculator) 324 moves the source distance image generated from the source point group data, such that the center of gravity of the source distance image overlaps the center of gravity of the each of target distance images generated from each piece of the target point group data.
  • the first transformation matrix calculator 324 rotates each of the post-movement source distance images one degree by one degree to acquire a normalized cross correlation for each target distance image. An angle at which the normalized cross correlation is highest is set as the rotation angle of the source distance image.
  • the first transformation matrix calculator 324 calculates a first transformation matrix usable to rotate the source distance image at the above rotation angle on each target distance image.
  • an affine transformation matrix Ts usable to move the center of gravity (ugs, vgs) of the source distance image to the origin is represented by the following expression.
  • the first transformation matrix calculator 324 rotates the source distance image one degree by one degree in this example, but the present invention is not limited to this.
  • the first transformation matrix calculator 324 may rotate the source distance image in units of a predetermined degree, for example, two degrees by two degrees, or three degrees by three degrees.
  • T s 1 0 - ugs 0 1 - vgs 0 0 1
  • Tt 1 0 ugt 0 1 vgt 0 0 1
  • R( ⁇ ) usable to rotate the source distance image by angle ⁇ is represented by the following expression.
  • R ⁇ cos ⁇ - sin ⁇ 0 sin ⁇ cos ⁇ 0 0 0 1
  • the coordinate values of the source distance image are transformed by the following expression by use of the calculated A(0) to acquire the source distance image in a state of being rotated by angle 0.
  • u S ⁇ v S ⁇ 1 T A ⁇ ⁇ u S v S 1 T
  • the degree of closeness between the post-coordinate-transformation source distance image (i.e., the source distance image in a state of being rotated by angle ⁇ ) and the target distance image is evaluated with a robust normalized cross-correlation coefficient RNCC.
  • the robust normalized cross-correlation coefficient RNCC is represented by the following expression.
  • the first transformation matrix A 33 is represented by the following expression.
  • the position at which each printing subject is to be disposed is acquired by acquiring angle ⁇ .
  • a 33 a 11 a 12 a 13 a 21 a 22 a 23 0 0 1
  • the second transformation matrix calculator (second calculator) 326 calculates, from the first transformation matrix A 33 , a second transformation matrix usable to make the source point group data close to the target point group data with higher precision.
  • the second transformation matrix is calculated for each piece of target point group data. This will be described specifically.
  • the first transformation matrix A 33 calculated by the first transformation matrix calculator 324 is expanded to a 4 x 4 matrix usable to perform transformation into three-dimensional coordinates to acquire a transformation matrix A 44 .
  • the transformation matrix A 44 is represented by the following expression.
  • a 44 a 11 a 12 0 a 13 / S a 21 a 22 0 a 23 / S 0 0 1 0 0 0 0 1
  • translation components a 13 and a 23 are transformed by an extent corresponding to the transformation scale s (i.e., scale factor s) usable to perform transformation from the three-dimensional coordinate system to the two-dimensional coordinate system.
  • the transformation matrix A 44 usable to make the source point group data close to the target point group data as shown in FIG. 5B .
  • a transformation matrix A ICP usable to make the source point group data close to the target point group data more accurately is calculated by use of the ICP (Interactive Closest Point) algorithm.
  • the ICP algorithm is a conventionally known technology ( Paul J. Besl and Neil D. McKay, A method for registration of 3-d shapes, IEEE Transactions on Pattern Analysis and Machine Intelligence, Vol. 14, No. 2, pp. 239-256, February 1992 ), and will not be described herein.
  • the transformation matrix A 44 is an optimal solution among solutions obtained by rotating the source distance image discretely one degree by one degree. Therefore, it is difficult to accurately match the source point group data transformed by use of the transformation matrix to each target point group data.
  • the posture of the entire three-dimensional component which is diverted due to the actual disposing method or the dispersion of the shape, is optimized by the ICP algorithm. As a result, as shown in FIG. 6 , more accurate position matching suitable to the actual shape is performed.
  • the result of transformation of the two-dimensional component of the source point group data performed by use of the transformation matrix A 44 is set as an initial value.
  • the rough transformation matrix A 44 and the transformation matrix A ICP calculated by use of the ICP algorithm are multiplied to calculate a second transformation matrix A 3D usable to accurately match the source point group data to each target point group data.
  • the second transformation matrix A 3D is represented by the following expression.
  • a 3 D A ICP ⁇ A 44
  • the printing data generator 306 includes a third transformation matrix calculator (third calculator) 328, a printing image disposer (disposer) 330, and a printing data generator 332.
  • the third transformation matrix calculator 328 calculates a third transformation matrix usable to dispose a printing image, input onto the source distance image, on each target distance image.
  • the printing image disposer 330 disposes the printing image, input onto the source distance image, on each target distance image by use of the third transformation matrix.
  • the printing data generator 332 generates printing data based on the printing image disposed on the target distance image. This will be described in more detail.
  • the third transformation matrix calculator 328 calculates the third transformation matrix usable to dispose the printing image, input onto the source distance image by the operator, on each target distance image in accordance with the position or posture of the printing subject 200, by use of the transformation matrix calculated by the second transformation matrix calculator 326.
  • the source distance image which is a two-dimensional image
  • the target distance image which is also a two-dimensional image, as follows. As shown in FIG. 7 , the source distance image is transformed into the source point group data, and then the source point group data is transformed into the target point group data. Then, the target point group data is transformed into the target distance image.
  • each of pixels in the two-dimensional image is disposed in a three-dimensional space.
  • the three-dimensional coordinates of each pixel is acquired by the following expression.
  • X s Y s Z s 1 1 / s 0 0 0 0 1 / s 0 0 0 0 0 0 0 0 0 1 u s v s 0 1
  • the transformation matrix A ICP includes slight movement or rotation in the Z axis direction (three-dimensional coordinate transformation) due to a slight error in the shape or position of each actual printing subject 200.
  • the two-dimensional image is generated from the three-dimensional coordinates of the target point group data by the following expression.
  • u t v t 0 1 s 0 0 0 0 s 0 0 0 0 0 0 0 0 0 1 A 3 D 1 / s 0 0 0 0 1 / s 0 0 0 0 0 0 0 0 0 1 u s v s 0 1
  • the three 4 x 4 transformation matrices may be summarized into one 4 x 4 matrix as follows.
  • H 44 h 21 h 12 0 h 14 h 21 h 22 0 h 24 0 0 0 0 0 0 0 1
  • the above expression represents an affine transformation matrix of the two-dimensional coordinates, and therefore may be represented by a 2 x 3 matrix as follows. This is set as the third transformation matrix.
  • u t v t h 11 h 12 h 14 h 21 h 22 h 24 u S v S
  • the printing image disposer 330 transforms the printing image, disposed on the source distance image displayed on the display screen by the operator, by use of the third transformation matrix to dispose the printing image on each target distance image in accordance with the position or posture of the target distance image. More specifically, the printing image is disposed on each target distance image by use of the third transformation matrix, such that the position and posture of the printing image disposed on the source distance image match those of each target distance image.
  • the printing data generator 332 generates printing data based on the printing image disposed on each target distance images by the printing image disposer 330.
  • the storage 308 stores the printing data generated by the printing data generator 306 and also stores, for example, various types of information necessary to perform the printing on the printing subjects 200.
  • the display 310 causes the display screen to display the images acquired by the recognizer 304 as well as various types of images and information.
  • the display 310 also changes the content to be displayed based on information input by the operator pressing an operation button (not shown).
  • desired printing is performed on the printing subjects 200 having a three-dimensional shape as follows.
  • camera calibration and calibration on the camera 26 and the top surface 14a (printing coordinate system) of the table 14 are performed on the printing device 10 at a predetermined timing, for example, at the time of shipping of the printing device 10 from the plant or at the time of exchange of the camera 26.
  • the camera calibration is performed independently from the printing device 10 by use of a separate LCD (liquid crystal display).
  • the camera 26 is installed in the printing device 10, and the installation calibration is performed to find the position relationship and the posture relationship between the camera 26 and the top surface 14a of the table 14. This will be described more specifically.
  • an image of a checkered pattern is captured in the entirety of the angle of view of the camera 26, and a camera parameter is calculated by use of the Zhang technique.
  • Used as the checkered pattern is not the checkered pattern drawn on the top surface 14a of the table 14, but is a checkered pattern displayed on the LCD.
  • a method for calculating the camera parameter by use of the Zhang technique is disclosed in, for example, Japanese Patent No. 4917351 and will not be described herein.
  • Calculated by the camera calibration are a camera inside parameter (Ac), a camera outside parameter ([Rc, Tc]), a projector inside parameter (Ap), and a projector outside parameter ([Rp, Tp]).
  • an affine transformation matrix H R2P usable to transform the three-dimensional coordinate system of the camera 26 into the printing coordinate system of the printing device 10 is calculated.
  • a sheet is bonded to the top surface 14a of the table 14 , and a checker pattern showing an actual printing range is printed on the sheet by the printing device 10.
  • each of squares in the checker pattern is gray or white and preferably has a size of 20 x 20 mm.
  • the checker pattern preferably has an overall size of, for example, 300 x 280 mm.
  • a gray code pattern extending in a u direction (vertical direction) and a gray code pattern extending in a v direction (horizontal direction) are projected to the sheet having the checker pattern printed thereon.
  • a u-direction spatial code image and a v-direction spatial code image are acquired from captured images of the gray code patterns.
  • Checker intersection coordinates are determined at a sub pixel precision on the camera-captured images, and projector image coordinates (u-direction spatial code value and v-direction spatial code value) corresponding to the checker intersection coordinates are determined.
  • three-dimensional coordinates M of checker intersections are determined. More specifically, a simultaneous equation of an expression showing the relationship between the camera coordinate system and the three-dimensional coordinate system, and an expression showing the relationship between the projector coordinate system and the three-dimensional coordinate system, is set.
  • the three-dimensional coordinates are determined from the checker intersection coordinates (uc, vc) and the projector image coordinates u p .
  • the affine transformation matrix H R2P usable to transform the determined three-dimensional coordinate values of the checker intersections into known coordinate values on the checker pattern is determined by a least square method. More specifically, the affine transformation matrix H R2P , which is a 4 x 4 transformation matrix usable to transform three-dimensional coordinates M R in a measurement coordinate system of the camera 26 into three-dimensional coordinates M P in the printing coordinate system of the printing device 10, is determined.
  • n groups of M R and M P are applied to the following expression to find, by a nonlinear least square method (Levenberg-Marquardt method), the affine transformation matrix H R2P with which the value obtained by the following expression is minimized.
  • "R" and "T” in the affine transformation matrix H R2P are determined.
  • R is a 3 x 3 rotation matrix, and the number of element is "9".
  • the elements that are actual targets of optimization are three elements of rx, ry, and rz.
  • T is a three-dimensional translation vector, and the degree of freedom is "3".
  • R cos ⁇ I + 1 - cos ⁇ rr T + sin ⁇ 0 - r z r y r z 0 - r x - r y r x 0
  • FIG. 10 is a flowchart showing the printing data generation process in detail.
  • a three-dimensional information acquisition process is performed (step S1002).
  • the three-dimensional information acquisition process is performed as shown in FIG. 11 .
  • three-dimensional information on each printing subject 200 is acquired by the phase shift spatial coding method (step S1102).
  • step S1102 the three-dimensional information on each of the plurality of printing subjects 200 placed on the table 14 is acquired by the three-dimensional information acquirer 314.
  • step S1104 the acquired three-dimensional coordinates are transformed into values in the printing coordinate system.
  • step S1104 the three-dimensional coordinates in the camera coordinate system acquired by the process of step S1102 are transformed into values in the printing coordinate system by the point group data generator 316.
  • step S1106 three-dimensional information on the height of elements other than the top surface 14a of the table 14, in other words, three-dimensional information representing only the printing surfaces of the printing subjects 200, is acquired (step S1106).
  • step S1004 described later.
  • FIG. 12 is a flowchart showing the posture recognition process in detail.
  • the posture recognition process is performed as follows. First, the point group data acquired by the process of step S1002 is divided into a plurality of pieces of point group data each representing one printing subject 200 (step S1202). A reason for performing this is that the point group data acquired by the process of step S1002, which is three-dimensional information, does not show the printing subject 200 to which each point belongs.
  • the point group data which is three-dimensional information representing the plurality of printing subjects 200 placed on the table 14, is divided to generate clusters each representing the printing subject 200 by the cluster generator 318. In this case, each cluster represents one printing subject 200.
  • source point group data and target point group data are set (step S1204).
  • one of the plurality of clusters is copied to be set as the source point group data, and all the clusters are each set as the target point group data, by the source point group data generator 320.
  • distance images each of which is two-dimensional information
  • step S1206 distance images, each of which is a two-dimensional image in which the Z coordinate is represented by a gray value, are generated from the source point group data and the target point group data by the distance image generator 322.
  • a source distance image is generated from the source point group data
  • target distance images are each generated from the target point group data.
  • the source distance image and the target distance images thus generated may be displayed on the display screen at this point.
  • step S1208 the source distance image and the target distance images are matched to each other.
  • the source distance image is moved such that the center of gravity of the source distance image overlaps the center of gravity of each target distance image by the first transformation matrix calculator 324.
  • the source distance image is rotated one degree by one degree to acquire a normalized cross correlation for each target distance image. An angle at which the normalized cross correlation is highest is acquired as a rotation angle of the source distance image.
  • the first transformation matrix A33 usable to rotate the source distance image by the above rotation angle on each target distance image is calculated by the first transformation matrix calculator 324.
  • the three-dimensional coordinates of the source point group data are transformed (step S1210).
  • the first transformation matrix A33 is expanded to a 4 x 4 matrix for transformation of three-dimensional coordinates to acquire the transformation matrix A44 by the second transformation matrix calculator 326.
  • the transformation matrix A44 is used to transform only a two-dimensional component of the three-dimensional coordinates of the source point group data, and thus the source point group data is made close to the target point group data.
  • step S1212 the transformation matrix usable to transform the three-dimensional coordinates of the source point group data is optimized (step S1212).
  • the transformation matrix AICP is calculated by use of the ICP algorithm, and the transformation matrix A44 and the transformation matrix AICP are multiplied to acquire the second transformation matrix A3D, by the second transformation matrix calculator 326.
  • the second transformation matrix A3D acquired by the process of step S1212 is used to calculate a transformation matrix usable to transform the source distance image (two-dimensional image) into the target distance image (two-dimensional image) (step S1214).
  • step S106 the transformation matrix usable to transform the three-dimensional coordinates of the source point group data is optimized.
  • the second transformation matrix A3D acquired by the process of step S1212 is used by the third transformation matrix calculator 328 to calculate the third transformation matrix usable to dispose the printing image, which is a two-dimensional image input onto the source distance image by the operator, on each target distance image in accordance with the position or posture of the corresponding printing subject 200.
  • step S1006 an image that allows the printing image to be input by the operator is displayed on the display screen (step S1006).
  • the source distance image generated by the process of step S1206 is displayed on the display screen by the distance image generator 322 in a state where the printing image can be input by the operator.
  • the source distance image is displayed in a state where the printing image can be disposed or edited by the operator.
  • the operator disposes a desired printing image at a desired position or a desired angle on the source distance image displayed on the display screen.
  • Such a printing image may be generated by the operator by use of predetermined software, or image data input beforehand may be used as such a printing image.
  • step S1008 When the source distance image is displayed on the display screen, it is determined whether or not the printing image has been disposed on the source distance image by the operator (step S1008). Any of various techniques is usable to determine whether or not the printing image has been disposed on the source distance image by the operator. For example, a complete button usable to input information that the disposing of the printing image has been completed may be provided, and it may be determined that the disposing of the printing image has been finished by the complete button being clicked. When it is determined in the process of step S1008 that the printing image has not been disposed on the source distance image by the operator, the process of step S1008 is repeated.
  • step S1008 when it is determined in the process of step S1008 that the printing image has been disposed on the source distance image by the operator, the printing image disposed on the source distance image is disposed on each target distance image by use of the third transformation matrix calculated by the process of step S1214 (step S1010).
  • the target distance image is set to be displayed on the display screen, a state where the printing image is disposed on the target distance image may be displayed by the process of step S1010.
  • step S1012 printing data is generated based on a plurality of the printing images disposed on each target distance image.
  • step S1012 the printing data is generated by the printing data generator 332 based on the plurality of printing images disposed on each target distance image.
  • the operator issues an instruction to start the printing by, for example, pressing the operation button.
  • the coordinate value representing a greatest height in the three-dimensional information acquired by the process of step S1104 i.e., the highest Z coordinate value
  • the table 14 is moved in the Z-axis direction based on the coordinate value, by the Z-axis direction movement controller 312. More specifically, the table 14 is moved in the Z-axis direction such that the acquired Z coordinate value representing the greatest height and the Z coordinate value of the position of the printing head 20 (since the printing head 20 does not move in the Z-axis direction, the Z coordinate value of the print head 20 is kept the same) have a predetermined gap therebetween that allows the printing head 20 to perform the printing properly.
  • the printing head 20 is moved in the X-axis direction and the Y-axis direction to perform the printing on the printing surface of each printing subject 200 based on the printing data, under the control of the controller 302.
  • the printing device 10 in this preferred embodiment acquires three-dimensional information on the plurality of printing subjects 200 placed on the table 14, and recognizes the position and posture of each printing subject 200 from the acquired three-dimensional information.
  • the third transformation matrix is acquired that is usable to dispose the printing image, which is a two-dimensional image input onto the source distance image by the operator, on each printing subject 200 in accordance with the position and posture of the printing subject 200.
  • the third transformation matrix is used to dispose the printing image on each target distance image.
  • the printing image is disposed on each printing subject 200 for printing, regardless of the position or posture of the printing subject 200 placed on the table 14.
  • the work of determining the position of each printing subject 200 is made unnecessary, and thus the printing is performed easily. Since it is not necessary to produce a jig in accordance with the shape or size of the printing subject unlike with the conventional technology, the load on the operator is not increased. Since there is no cost of designing or producing the jig, the printing is performed at lower cost than with the conventional technology.
  • the printing device 10 preferably is an inkjet printer.
  • the present invention is not limited to this.
  • the printing device 10 may be any of various types of printers, such as a dot impact printer, a laser printer or the like.
  • the printing head 20 preferably is movable in the X-axis direction along the rod-shaped member 16 included in the movable member 18 and is movable in the Y-axis direction by the movable member 18, whereas the table 14 preferably is movable in the Z-axis direction.
  • the present invention is not limited to this.
  • the table 14 movable up and down in the Z-axis direction may be also movable in the Y-axis direction, whereas the printing head 20 may be movable in the X-axis direction. This will be described specifically.
  • a printing device 60 shown in FIG. 13 is structured as follows.
  • the table 14 is provided so as to be slidable with respect to guide rails 62 located on the base member 12, and the printing head 20 is provided so as to be slidable with respect to a secured member 66, which is secured to the base member 12.
  • the guide rails 62 include a pair of guide rails 62a and 62b extending in the Y-axis direction on the base member 12.
  • the table 14 is provided with a driver (not shown) controllable by the microcomputer 300 such that the table 14 is movable in the Y-axis direction on the guide rails 62.
  • the table 14 movable in the Z-axis direction is also movable in the Y-axis direction on the base member 12.
  • the secured member 66 includes standing members 68a and 68b secured to the base member 12 and a rod-shaped member 64 extending in the X-axis direction so as to couple the standing members 68a and 68b to each other.
  • the printing head 20 is located on the rod-shaped member 64 so as to be slidable with respect thereto in the X-axis direction. Because of this structure, the printing head 20 is movable in the X-axis direction along the secured member 66.
  • printing subjects 200 preferably are placed on the table 14, and the printing is performed on the printing surface of each printing subject 200.
  • the present invention is not limited to this.
  • One, two, three, or five or more printing subjects 200 may be placed on the table 14 for printing.
  • the source point group data and the target point group data to be set are the same.
  • height information on the greatest height preferably is acquired from the three-dimensional information that is acquired by the three-dimensional information acquirer 314, and the table 14 is moved up and down by the Z-axis direction movement controller 312 based on the height information.
  • the present invention is not limited to this.
  • the height of the printing subjects 200 may be measured, so that the operator can move the table 14 up and down based on the result of the measurement.
  • height information may be acquired from the three-dimensional information that is acquired by the three-dimensional information acquirer 314 , and the amount by which the table 14 is to be moved up and down may be displayed on the display screen based on the height information, so that the operator can move the table 14 up and down by the amount displayed on the display screen.
  • the flatbed-type printing device 10 preferably includes the camera 26, the projector 24 and the microcomputer 300.
  • the present invention is not limited to this.
  • the camera 26, the projector 24 and the microcomputer 300 may be included in a printing device of a type different from the flatbed type.
  • the present invention encompasses any embodiments including equivalent elements, modifications, deletions, combinations, improvements and/or alterations which can be recognized by a person of ordinary skill in the art based on the disclosure.
  • the elements of each claim should be interpreted broadly based on the terms used in the claim, and should not be limited to any of the preferred embodiments described in this specification or referred to during the prosecution of the present application.

Landscapes

  • Engineering & Computer Science (AREA)
  • Manufacturing & Machinery (AREA)
  • Length Measuring Devices By Optical Means (AREA)

Abstract

A printing device (10) includes a table (14) that allows a plurality of printing subjects (200) to be placed thereon, a projection device (24) that projects a binary pattern to the printing subjects placed on the table, an image capturing device (26) that captures an image of the printing subjects having the binary pattern projected thereon, a three-dimensional information acquirer (314) that acquires a spatial code image from the image captured by the image capturing device and acquires three-dimensional information on the printing subjects from the acquired spatial code image, a recognizer (304) that recognizes a position and a posture of each of the printing subjects from the acquired three-dimensional information, a disposer (330) that disposes a printing image on each of the printing subjects in accordance with the position and posture thereof, and a printing data generator (332) that generates printing data on the printing image disposed on each of the printing subjects.

Description

    BACKGROUND OF THE INVENTION 1. Field of the Invention
  • The present invention relates to a printing device and a printing method.
  • 2. Description of the Related Art
  • Conventionally, so-called flatbed-type printing devices are known. In a flatbed-type printing device, a printing head is moved, for example, in two directions perpendicular to each other in a plane with respect to a printing subject placed on a table. Such a flatbed-type printing device is used for performing printing on, for example, a printing subject such as a substantially rectangular business card, greeting card or the like. In the following description, the term "printing subject" is a "substantially rectangular sheet-type or plate-type printing subject such as a substantially rectangular business card, greeting card or the like", unless otherwise specified.
  • For performing printing on a printing subject by use of a flatbed-type printing device, the printing subject is placed on a table and then printing is performed. For accurate printing, the printing subject needs to be placed accurately at a predetermined position. This requires, for example, measuring the size of the printing subject beforehand, so that the position at which the printing subject is to be placed is determined accurately.
  • Such a work needs to be performed accurately. For an unexperienced operator, the work is time-consuming. This causes a problem that the printing requires a long time and the production cost is raised. There is also a problem that the work requires a great number of steps to be performed by an operator, which imposes a heavy load on the operator.
  • A technology for solving these problems is proposed by, for example, Japanese Laid-Open Patent Publication No. 2007-136764 . According to the technology disclosed in Japanese Laid-Open Patent Publication No. 2007-136764 , a jig that can be secured to a table and accommodate a plurality of printing subjects is produced. For performing printing, the jig is secured to the table and a plurality of printing subjects are accommodated in the jig, and each of the plurality of printing subjects is accommodated at a predetermined position in the jig. This allows the printing to be performed at predetermined positions of the printing subjects.
  • However, the above-described technology requires producing a jig in accordance with the shape or the size of a printing subject. This causes a problem that the production of a jig is time-consuming, which imposes a heavy load on the operator. In addition, even in the case where printing is to be performed on a small number of printing subjects, a jig needs to be produced. This increases the cost.
  • SUMMARY OF THE INVENTION
  • Preferred embodiments of the present invention provide a printing device and a printing method capable of performing printing easily at a desired position of a printing subject at low cost with no use of a jig, without imposing a heavy load on an operator.
  • A printing device according to a preferred embodiment of the present invention is a printing device that acquires three-dimensional information on at least one printing subject having a three-dimensional shape and prints a predetermined printing image as a two-dimensional image on the at least one printing subject. The printing device includes a table that allows at least one printing subject to be placed thereon; a projection device that projects a predetermined pattern to the at least one printing subject placed on the table; an image capturing device that captures an image of the at least one printing subject having the predetermined pattern projected thereon; three-dimensional information acquirer that acquires a spatial code image from the image captured by the image capturing device and acquires the three-dimensional information on the at least one printing subject from the acquired spatial code image; a recognizer that recognizes a position and a posture of each of the at least one printing subject from the acquired three-dimensional information; a disposer that disposes the printing image on each of the at least one printing subject by use of the position and the posture thereof; and a printing data generator that generates printing data representing the printing image disposed by the disposer.
  • A printing method according to another preferred embodiment of the present invention is a method by which three-dimensional information on at least one printing subject having a three-dimensional shape that is placed on a table is acquired, and a predetermined printing image as a two-dimensional image is printed on the at least one printing subject. The printing method includes projecting a predetermined pattern to the at least one printing subject placed on the table; capturing an image of the at least one printing subject having the predetermined pattern projected thereon; acquiring a spatial code image from the captured image, and acquiring the three-dimensional information on the at least one printing subject from the acquired spatial code image; recognizing a position and a posture of each of the at least one printing subject from the acquired three-dimensional information; disposing the printing image on each of the at least one printing subject by use of the position and the posture thereof; and generating printing data on the printing image disposed on the at least one printing subject.
  • The above and other elements, features, steps, characteristics and advantages of the present invention will become more apparent from the following detailed description of the preferred embodiments with reference to the attached drawings.
  • BRIEF DESCRIPTION OF THE DRAWINGS
    • FIG. 1 shows a schematic structure of a printing device according to a preferred embodiment of the present invention.
    • FIG. 2 is a block diagram showing a functional structure of a microcomputer.
    • FIG. 3A shows point group data on a plurality of printing subjects, and FIG. 3B shows a state where the point group is divided to generate clusters.
    • FIG. 4A shows a state where source point group data is generated and target point group data is set, and FIG. 4B shows that a distance image is generated from the point group data.
    • FIG. 5A shows that a source distance image is overlapped on each of target distance images, and FIG. 5B shows a state where a two-dimensional component of the source point group data is made close to the target point group data.
    • FIG. 6 provides an image showing a state where the two-dimensional component of the source point group data is made close to the target point group data by use of a transformation matrix A44, and an image showing that three-dimensional position matching is optimized by use of a transformation matrix AICP.
    • FIG. 7 shows that a source distance image is transformed into a target distance image.
    • FIG. 8 shows a state where a printing image is disposed on the source distance image and shows a state where the printing image is disposed on each of the target distance images.
    • FIG. 9A shows a checker pattern printed on a sheet attached to a table, and FIG. 9B shows that gray code patterns are projected to the checker pattern to acquire spatial code images.
    • FIG. 10 is a flowchart showing a routine of a printing data generation process performed by the printing device according to a preferred embodiment of the present invention.
    • FIG. 11 is a flowchart showing a routine of a three-dimensional information acquisition process.
    • FIG. 12 is a flowchart showing a routine of a posture recognition process.
    • FIG. 13 shows a printing device according to a modification of a preferred embodiment of the present invention.
    DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS
  • Hereinafter, examples of preferred embodiments of a printing device and a printing method according to the present invention will be described in detail with reference to the attached drawings. In the figures, letters F, Re, L, R, U and D respectively represent front, rear, left, right, up and down. In the following description, the directions "front", "rear", "left", "right", "up" and "down" are provided for the sake of convenience, and do not limit the manner in which the printing device is installed in any way.
  • First, a structure of a printing device 10 will be described. As shown in FIG. 1, the printing device 10 is a so-called flatbed-type inkjet printer. The printing device 10 includes a base member 12, a table 14 including a top surface 14a, a movable member 18 including a rod-shaped member 16, a printing head 20, a standing member 22 standing on a rear portion of the base member 12, a projector 24, a camera 26, and a microcomputer 300. An overall operation of the printing device 10 is controlled by the microcomputer 300. A structure of the microcomputer 300 will be described later.
  • The table 14 is located on the base member 12. The top surface 14a of the table 14 is flat. A printing subject 200 is to be placed on the top surface 14a of the table. The table 14 is movable in a Z-axis direction by a moving mechanism (not shown). This allows the printing subject 200 placed on the top surface 14a of the table 14 to be moved in the Z-axis direction. The range in which the table 14 is movable up and down matches, for example, a range of thickness of the printing subject 200 on which printing can be performed by the printing device 10. The moving mechanism that moves the table 14 in the Z-axis direction may be a known mechanism, for example, a combination of a gear and a motor. An operation of the moving mechanism is controlled by the microcomputer 300.
  • The printing subject 200 is placed on the top surface 14a of the table 14. The printing subject 200 may have any shape with which the printing subject 200 can be placed on the table 14 with a predetermined gap from the printing head 20. A printing surface of the printing subject 200 may have any of various shapes, for example, may be flat, curved to be protruded upward, curved to be protruded downward, concaved and convexed with piercing edges, or concaved and convexed without piercing edges. A difference between top and bottom levels of the printing surface is within a maximum difference with which ink may be applied normally to the printing surface by the printing head 20.
  • The base member 12 is provided with guide grooves 28a and 28b extending in a Y-axis direction. The movable member 18 is driven by a driving mechanism (not shown) to move in the Y-axis direction along the guide grooves 28a and 28b. There is no limitation on the driving mechanism that moves the movable member 18 in the Y-axis direction. The driving mechanism may be a known mechanism such as, for example, a combination of a gear and a motor. The rod-shaped member 16 extends in an X-axis direction above the table 14. A Z axis is a vertical axis, an X axis is perpendicular to the Z axis, and a Y axis is perpendicular to the X axis and the Z axis.
  • The printing head 20 is an ink head that injects ink by an inkjet system. In this specification, the "inkjet system" refers to a printing system of any of various types of conventionally known inkjet technologies. The "inkjet system" encompasses various types of continuous printing systems such as a binary deflection system, a continuous deflection system and the like, and various types of on-demand systems such as a thermal system, a piezoelectric element system and the like. The printing head 20 is structured to perform printing on the printing subject 200 placed on the table 14. The printing head 20 is provided on the rod-shaped member 16. The printing head 20 is provided so as to be movable in the X-axis direction. This will be described in more detail. The printing head 20 is engaged with guide rails (not shown) provided on a front surface of the rod-shaped member 16 and is slidable with respect to the guide rails. The printing head 20 is provided with a belt (not shown) movable in the X-axis direction. The belt is rolled up by a driving mechanism (not shown) and thus is moved. Along with the movement of the belt, the printing head 20 moves in the X-axis direction from left to right or from right to left. There is no limitation on the driving mechanism. The driving mechanism may be a known mechanism such as, for example, a combination of a gear and a motor.
  • The projector 24 projects a predetermined pattern to the entirety of the top surface 14a of the table 14. The projector 24 is secured to the standing member 22. An operation of the projector 24 is controlled by the microcomputer 300. In this preferred embodiment, the projector 24 projects a gray code pattern extending in a vertical direction and a gray code pattern extending in a horizontal direction to the top surface 14a of the table 14, and also projects a binary pattern when a phase shift spatial coding method (described later) is used. The "binary pattern" is a projection pattern including a slit-shaped light-transmissive area and a slit-shaped light-non-transmissive area, each having a certain width and extending in a direction perpendicular to a width direction, located alternately and repeatedly.
  • The camera 26 is secured to the standing member 22. The camera 26 is located so as to capture an image of the entirety of the top surface 14a of the table 14 in a direction different from a direction in which the projector 24 projects the patterns. An operation of the camera 26 is controlled by the microcomputer 300.
  • The microcomputer 300 controls the overall operation of the printing device 10 as described above, and also recognizes the position or posture of each of a plurality of printing subjects 200 placed on the table 14 to generate printing data usable to print a printing image, input by an operator, at a predetermined position of each printing subject 200. In this preferred embodiment, the posture of the printing subject 200 is a three-dimensional inclination. As the microcomputer 300, a known microcomputer including, for example, a CPU, a ROM and a RAM is usable. There is no specific limitation on the hardware structure of the microcomputer 300. Software is either stored or read into the microcomputer 300, and the microcomputer 300 executes the software to define and operate as each of the functional elements described below.
  • The microcomputer 300 includes a controller 302 that controls the overall operation of the printing device 10, a recognizer 304 that recognizes the position or posture of each of the plurality of printing subjects 200 placed on the table 14, a printing data generator 306 that generates printing data usable to perform printing on the plurality of printing subjects 200, a storage 308 that stores the generated printing data and various other types of information, and a display 310 that causes images of the plurality of printing subjects 200 placed on the table 14 and various other images to be displayed on a display screen (not shown).
  • The controller 302 drives the moving mechanism (not shown) to control various operations, for example, to control the printing head 20 to move in the X-axis direction, to control the movable member 18 to move in the Y-axis direction, and to move the table 14 in the Z-axis direction. The movement of the table 14 in the Z-axis direction is controlled by a Z-axis direction movement controller (adjustment unit) 312 of the controller 302. The Z-axis direction movement controller 312 acquires height information (Z coordinate value) on the greatest height of the printing subjects 200 from three-dimensional information on the printing subjects 200 acquired by the recognizer 304, and controls the table 14 to move up and down based on the height information.
  • The recognizer 304 includes a three-dimensional information acquirer 314, a point group data generator 316, a cluster generator 318, a source point group data generator 320, a distance image generator 322, a first transformation matrix calculator 324, and a second transformation matrix calculator 326.
  • The three-dimensional information acquirer 314 acquires three-dimensional information on the printing subjects 200 placed on the table 14. The point group data generator 316 generates point group data on the printing subjects 200 from the acquired three-dimensional information. The cluster generator 318 generates a plurality of clusters representing the printing subjects 200 from the point group data. The source point group data generator 320 sets each of the generated clusters as target point group data, and generates source point group data from one piece of data among the target point group data. The distance image generator 322 generates a source distance image, which is a two-dimensional image, from the source point group data, and generates a target distance image, which is a two-dimensional image, from the target point group data. This will be described in detail later. The first transformation matrix calculator 324 calculates a first transformation matrix usable to rotate the source distance image by an angle such that the source distance image is closest to the target distance image. The second transformation matrix calculator 326 calculates, from the calculated first transformation matrix, a second transformation matrix usable to make the source point group data and the target point group data to be close to each other more accurately.
  • Images of a plurality of gray code patterns, projected by the projector 24 to the top surface 14a of the table 14 having the plurality of printing subjects 200 placed thereon, are captured by the camera 26. The three-dimensional information acquirer 314 acquires a spatial code image from each of the captured gray code patterns by a known spatial coding method, and synthesizes the acquired spatial code images to acquire the three-dimensional information (point group) on the printing subjects 200.
  • The three-dimensional information acquirer 314 may acquire the three-dimensional information by a known phase shift spatial coding method instead of the spatial coding method. The phase shift spatial coding method is performed as follows. A binary pattern is projected by the projector 24 while being shifted by a predetermined moving distance, and an image of the binary pattern is captured by the camera 26 each time the binary pattern is shifted. The three-dimensional information acquirer 314 synthesizes the captured images to acquire phase shift code images. In the meantime, images of a plurality of binary patterns projected by the projector 24 to the top surface 14a of the table 14 having the plurality of printing subjects 200 placed thereon are captured by the camera 26. The three-dimensional information acquirer 314 acquires a spatial code image from each of the captured binary patterns. The three-dimensional information acquirer 314 acquires three-dimensional information on the printing subjects 200 from the acquired phase shift code images and the acquired spatial code images, in other words, by synthesizing phase shift code values and spatial code values. The three-dimensional information acquired by the phase shift spatial coding method has a higher resolution than that of the three-dimensional information acquired by the spatial coding method. More specifically, the phase shift code values acquired by the phase shift spatial coding method is a value obtained as a result of the spatial code value acquired by the spatial coding method being divided more finely. As a result, the posture of the printing subjects 200 is recognized with higher precision. Acquisition of the three-dimensional information by the spatial coding method is known and will not be described herein. Acquisition of the three-dimensional information by the phase shift spatial coding method may be performed by a technology disclosed in, for example, Japanese Patents Nos. 4944435 and 4874657 , and will not be described herein.
  • The point group data generator 316 transforms the three-dimensional information in a camera coordinate system that is acquired by the three-dimensional information acquirer 314 into values in a printing coordinate system. The point group data generator 316 also deletes the point group in the vicinity of (Z = 0) on the top surface 14a of the table 14 to generate point group data representing only the printing subjects 200 as shown in FIG. 3A. Specifically, the point group data representing only the printing subjects 200 is calculated by the following expression by use of a 4 x 4 transformation matrix HR2P (described later) calculated by a calibration performed on the camera 26 and the table 14. s M ˜ P = H R 2 P M ˜ R
    Figure imgb0001
  • As shown in FIG. 3B, the cluster generator (divider) 318 divides the point group data representing the plurality of printing subjects 200 placed on the table 14 into a plurality of pieces of point group data each representing one printing subject 200 by use of the Euclidean Cluster Extraction algorithm to generate clusters each representing each printing subject 200. The Euclidean Cluster Extraction algorithm is a conventionally known technology (R. B. Rusu and S. Cousins, 3D is here: Point Cloud Library (PCL), In IEEE International Conference on Robotics and Automation (ICRA), Shanghai, China, May 9-13 2011), and will not described herein.
  • The source point group data generator (setter) 320 copies one cluster among the plurality of clusters representing the plurality of printing subjects 200, and sets the copied cluster as source point group data. All the plurality of clusters are each set as target point group data. This will be described more specifically, with respect to FIG. 4A. As shown in FIG. 4A, for example, the point group data in an upper left area is copied to generate source point group data, and the four pieces of point group data are each set as target point group data. At this point, the coordinate values of the source point group data are transformed into relative coordinate values from a start point of the display area. In this manner, all the pieces of point group data including the point group data from which the copying was performed are each set as target point group data. Thus, each cluster is made a target at which the printing image is to be disposed. The source point group data may be selected arbitrarily from the plurality of pieces of target point group data.
  • As shown in FIG. 4B, the distance image generator 322 generates a source distance image and a target distance image, each of which is two-dimensional data, respectively from the source point group data and the target point group data generated by the source point group data generator 320. This will be described specifically. In order to generate the source distance image from the source point group data, an X coordinate and a Y coordinate of source point group coordinates, which are three-dimensional coordinates of the source point group data, are transformed into an X coordinate and a Y coordinate, which are two-dimensional coordinates of the source distance image to be generated. In addition, the Z coordinate of the source point group coordinates is represented as a gray value. At this point, the (x, y) coordinates are transformed into values with which an average inter-point distance of the point group data is 1 pixel. In other words, the source distance image is generated by transforming the three-dimensional coordinates of the source point group data into two-dimensional coordinates by the following expression. u s v s = s 0 0 s X s Y s
    Figure imgb0002
    • (Xs, Ys): source point group coordinates
    • (us, vs): source distance image coordinates
    • s : transformation scale from the three-dimensional point group image coordinate system (mm) into the distance image coordinate system
  • The scale factor s usable to transform the coordinate values of the point group data into coordinate values of the distance image is represented as s = reso/25.4 in the case where the resolution of the printer is reso (dpi) and the unit of the coordinate values of the point group data is mm. The range of gray values, i.e., the range from the minimum value to the maximum value among the Z values of the point group data in all the clusters is the range of 0 to 255. In other words, among the gray values, i.e., the Z coordinate values Zs, corresponding to the XY coordinate values of the source point group data, the minimum value is 0, and the maximum value is 255.
  • In order to generate the target distance image from the target point group data, an X coordinate and a Y coordinate of target point group coordinates, which are three-dimensional coordinates of the target point group data, are transformed into an X coordinate and a Y coordinate, which are two-dimensional coordinates of the target distance image to be generated. In addition, the Z coordinate of the target point group coordinates is represented as a gray value. At this point, the (x, y) coordinates are transformed into values with which an average inter-point distance of the point group data is 1 pixel. In other words, the target distance image is generated by transforming the three-dimensional coordinates of the target point group data into two-dimensional coordinates by the following expression. u t v t = s 0 0 s X t Y t
    Figure imgb0003
    • (Xt, Yt): target point group coordinates
    • (ut, vt): target distance image coordinates
    • s: transformation scale from the three-dimensional point group image coordinate system (mm) into the distance image coordinate system
  • As described above, the scale factor s usable to transform coordinate values of the point group data into coordinate values in the distance image is represented as s = reso/25.4 in the case where the resolution of the printer is reso (dpi) and the unit of the coordinate values of the point group data is mm. The range of gray values, i.e., the range from the minimum value to the maximum value among the Z values of the point group data in all the clusters is the range of 0 to 255. In other words, among the gray values, i.e., the Z coordinate values Zs, corresponding to the XY coordinate values of the target point group data, the minimum value is 0, and the maximum value is 255.
  • As shown in FIG. 5A, the first transformation matrix calculator (first calculator) 324 moves the source distance image generated from the source point group data, such that the center of gravity of the source distance image overlaps the center of gravity of the each of target distance images generated from each piece of the target point group data. The first transformation matrix calculator 324 rotates each of the post-movement source distance images one degree by one degree to acquire a normalized cross correlation for each target distance image. An angle at which the normalized cross correlation is highest is set as the rotation angle of the source distance image. Then, the first transformation matrix calculator 324 calculates a first transformation matrix usable to rotate the source distance image at the above rotation angle on each target distance image. Specifically, an affine transformation matrix Ts usable to move the center of gravity (ugs, vgs) of the source distance image to the origin is represented by the following expression. The first transformation matrix calculator 324 rotates the source distance image one degree by one degree in this example, but the present invention is not limited to this. For example, the first transformation matrix calculator 324 may rotate the source distance image in units of a predetermined degree, for example, two degrees by two degrees, or three degrees by three degrees. T s = 1 0 - ugs 0 1 - vgs 0 0 1
    Figure imgb0004
  • An affine transformation matrix Tt usable to move the source distance image from the origin to the center of gravity (ugtn, vgtn) of each target distance image is represented by the following expression. T t = 1 0 ugt 0 1 vgt 0 0 1
    Figure imgb0005
  • An affine transformation matrix R(θ) usable to rotate the source distance image by angle θ is represented by the following expression. R θ = cosθ - sinθ 0 sinθ cosθ 0 0 0 1
    Figure imgb0006
  • The above-mentioned affine transformation matrices Ts, Tt and R(θ) are multiplied to generate a transformation matrix A(θ) (see the following expression). The source distance image is rotated while angle θ is increased one degree by one degree to calculate the transformation matrix A(θ). A θ = T t R θ T S
    Figure imgb0007
  • Then, the coordinate values of the source distance image are transformed by the following expression by use of the calculated A(0) to acquire the source distance image in a state of being rotated by angle 0. u S ʹ v S ʹ 1 T = A θ u S v S 1 T
    Figure imgb0008
  • The degree of closeness between the post-coordinate-transformation source distance image (i.e., the source distance image in a state of being rotated by angle θ) and the target distance image is evaluated with a robust normalized cross-correlation coefficient RNCC. The robust normalized cross-correlation coefficient RNCC is represented by the following expression. R NNC = j = 0 N - 1 i = 0 M - 1 S i j T i j j = 0 N - 1 i = 0 M - 1 S i j 2 × j = 0 N - 1 i = 0 M - 1 T i j 2
    Figure imgb0009
    • S(i, j): pixel value in the source distance image
    • T(i. j): pixel value in the target distance image
    • M: number of pixels in the horizontal direction in the distance image
    • N: number of pixels in the vertical direction in the distance image
  • A(θ) at angle θ, among angles θ of 0 to 359, at which the robust normalized cross-correlation coefficient RNCC is greatest is acquired as the first transformation matrix A33. The first transformation matrix A33 is represented by the following expression. The position at which each printing subject is to be disposed is acquired by acquiring angle θ. A 33 = a 11 a 12 a 13 a 21 a 22 a 23 0 0 1
    Figure imgb0010
  • The second transformation matrix calculator (second calculator) 326 calculates, from the first transformation matrix A33, a second transformation matrix usable to make the source point group data close to the target point group data with higher precision. The second transformation matrix is calculated for each piece of target point group data. This will be described specifically. The first transformation matrix A33 calculated by the first transformation matrix calculator 324 is expanded to a 4 x 4 matrix usable to perform transformation into three-dimensional coordinates to acquire a transformation matrix A44. The transformation matrix A44 is represented by the following expression. A 44 = a 11 a 12 0 a 13 / S a 21 a 22 0 a 23 / S 0 0 1 0 0 0 0 1
    Figure imgb0011
  • At this point, translation components a13 and a23 are transformed by an extent corresponding to the transformation scale s (i.e., scale factor s) usable to perform transformation from the three-dimensional coordinate system to the two-dimensional coordinate system. As represented by the following expression, only the two-dimensional component of the source point group data is transformed by use of the transformation matrix A44 to make the source point group data close to the target point group data as shown in FIG. 5B. X t Y t Z t 1 = A 44 X s Y s Z s 1
    Figure imgb0012
  • Then, a transformation matrix AICP usable to make the source point group data close to the target point group data more accurately is calculated by use of the ICP (Interactive Closest Point) algorithm. The ICP algorithm is a conventionally known technology (Paul J. Besl and Neil D. McKay, A method for registration of 3-d shapes, IEEE Transactions on Pattern Analysis and Machine Intelligence, Vol. 14, No. 2, pp. 239-256, February 1992), and will not be described herein.
  • The transformation matrix A44 is an optimal solution among solutions obtained by rotating the source distance image discretely one degree by one degree. Therefore, it is difficult to accurately match the source point group data transformed by use of the transformation matrix to each target point group data. However, the posture of the entire three-dimensional component, which is diverted due to the actual disposing method or the dispersion of the shape, is optimized by the ICP algorithm. As a result, as shown in FIG. 6, more accurate position matching suitable to the actual shape is performed. For performing the optimization by use of the ICP algorithm, the result of transformation of the two-dimensional component of the source point group data performed by use of the transformation matrix A44 is set as an initial value. The rough transformation matrix A44 and the transformation matrix AICP calculated by use of the ICP algorithm are multiplied to calculate a second transformation matrix A3D usable to accurately match the source point group data to each target point group data. The second transformation matrix A3D is represented by the following expression. A 3 D = A ICP A 44
    Figure imgb0013
  • The printing data generator 306 includes a third transformation matrix calculator (third calculator) 328, a printing image disposer (disposer) 330, and a printing data generator 332. The third transformation matrix calculator 328 calculates a third transformation matrix usable to dispose a printing image, input onto the source distance image, on each target distance image. The printing image disposer 330 disposes the printing image, input onto the source distance image, on each target distance image by use of the third transformation matrix. The printing data generator 332 generates printing data based on the printing image disposed on the target distance image. This will be described in more detail. The third transformation matrix calculator 328 calculates the third transformation matrix usable to dispose the printing image, input onto the source distance image by the operator, on each target distance image in accordance with the position or posture of the printing subject 200, by use of the transformation matrix calculated by the second transformation matrix calculator 326. The source distance image, which is a two-dimensional image, is transformed into the target distance image, which is also a two-dimensional image, as follows. As shown in FIG. 7, the source distance image is transformed into the source point group data, and then the source point group data is transformed into the target point group data. Then, the target point group data is transformed into the target distance image. In other words, in a process of transforming the source distance image into the source point group data, each of pixels in the two-dimensional image is disposed in a three-dimensional space. The three-dimensional coordinates of each pixel are provided by adding Z coordinate = 0 to the X coordinate and the Y coordinate of the pixel. At this point, the three-dimensional coordinates of each pixel is acquired by the following expression.
    Expression 14 X s Y s Z s 1 = 1 / s 0 0 0 0 1 / s 0 0 0 0 0 0 0 0 0 1 u s v s 0 1
    Figure imgb0014
  • In a process of transforming the source point group data into the target point group data, the three-dimensional coordinates of the source point group data are transformed into three-dimensional coordinates of the target point group data by the following expression.
    Expression 15 X t Y t Z t 1 = A 3 D X s Y s Z s 1
    Figure imgb0015
  • This transformation is to be performed on the same table plane (two-dimensional transformation). However, the transformation matrix AICP includes slight movement or rotation in the Z axis direction (three-dimensional coordinate transformation) due to a slight error in the shape or position of each actual printing subject 200. In a process of transforming the target point group data into the target distance image, the two-dimensional image is generated from the three-dimensional coordinates of the target point group data by the following expression.
    Expression 16 u t v t 0 1 = s 0 0 0 0 s 0 0 0 0 0 0 0 0 0 1 X t Y t Z t 1
    Figure imgb0016
  • As described above, the movement or rotation in the Z axis direction is performed in the process of transforming the source point group data into the target point group data. Therefore, there occurs a case where the post-transformation Z coordinate is not "0". In this case, the Z coordinate is forcibly made "0", so that the shape is projected to the Z = 0 plane. The above-described three-stage transformation (transformations by expressions 14 through 16) may be summarized as follows. u t v t 0 1 = s 0 0 0 0 s 0 0 0 0 0 0 0 0 0 1 A 3 D 1 / s 0 0 0 0 1 / s 0 0 0 0 0 0 0 0 0 1 u s v s 0 1
    Figure imgb0017
  • The three 4 x 4 transformation matrices may be summarized into one 4 x 4 matrix as follows. H 44 = h 21 h 12 0 h 14 h 21 h 22 0 h 24 0 0 0 0 0 0 0 1
    Figure imgb0018
  • The above expression represents an affine transformation matrix of the two-dimensional coordinates, and therefore may be represented by a 2 x 3 matrix as follows. This is set as the third transformation matrix. u t v t = h 11 h 12 h 14 h 21 h 22 h 24 u S v S
    Figure imgb0019
  • As shown in FIG. 8, the printing image disposer 330 transforms the printing image, disposed on the source distance image displayed on the display screen by the operator, by use of the third transformation matrix to dispose the printing image on each target distance image in accordance with the position or posture of the target distance image. More specifically, the printing image is disposed on each target distance image by use of the third transformation matrix, such that the position and posture of the printing image disposed on the source distance image match those of each target distance image. The printing data generator 332 generates printing data based on the printing image disposed on each target distance images by the printing image disposer 330.
  • The storage 308 stores the printing data generated by the printing data generator 306 and also stores, for example, various types of information necessary to perform the printing on the printing subjects 200. The display 310 causes the display screen to display the images acquired by the recognizer 304 as well as various types of images and information. The display 310 also changes the content to be displayed based on information input by the operator pressing an operation button (not shown).
  • With the printing device 10 having the above-described structure, desired printing is performed on the printing subjects 200 having a three-dimensional shape as follows. First, camera calibration and calibration on the camera 26 and the top surface 14a (printing coordinate system) of the table 14 (hereinafter, referred to as "installation calibration") are performed on the printing device 10 at a predetermined timing, for example, at the time of shipping of the printing device 10 from the plant or at the time of exchange of the camera 26. The camera calibration is performed independently from the printing device 10 by use of a separate LCD (liquid crystal display). After the camera calibration is performed, the camera 26 is installed in the printing device 10, and the installation calibration is performed to find the position relationship and the posture relationship between the camera 26 and the top surface 14a of the table 14. This will be described more specifically. In the camera calibration, an image of a checkered pattern is captured in the entirety of the angle of view of the camera 26, and a camera parameter is calculated by use of the Zhang technique. Used as the checkered pattern is not the checkered pattern drawn on the top surface 14a of the table 14, but is a checkered pattern displayed on the LCD. A method for calculating the camera parameter by use of the Zhang technique is disclosed in, for example, Japanese Patent No. 4917351 and will not be described herein. Calculated by the camera calibration are a camera inside parameter (Ac), a camera outside parameter ([Rc, Tc]), a projector inside parameter (Ap), and a projector outside parameter ([Rp, Tp]).
  • In the installation calibration, an affine transformation matrix HR2P usable to transform the three-dimensional coordinate system of the camera 26 into the printing coordinate system of the printing device 10 is calculated. First, as shown in FIG. 9A, a sheet is bonded to the top surface 14a of the table 14 , and a checker pattern showing an actual printing range is printed on the sheet by the printing device 10. For example, each of squares in the checker pattern is gray or white and preferably has a size of 20 x 20 mm. The checker pattern preferably has an overall size of, for example, 300 x 280 mm. Next, a gray code pattern extending in a u direction (vertical direction) and a gray code pattern extending in a v direction (horizontal direction) are projected to the sheet having the checker pattern printed thereon. As shown in FIG. 9B, a u-direction spatial code image and a v-direction spatial code image are acquired from captured images of the gray code patterns. Checker intersection coordinates are determined at a sub pixel precision on the camera-captured images, and projector image coordinates (u-direction spatial code value and v-direction spatial code value) corresponding to the checker intersection coordinates are determined.
    • Checker intersection coordinates: mc = (uc, vc)
    • Projector image coordinates: mp = (up, vp)
  • From the checker intersection coordinates and the projector image coordinates thus determined, three-dimensional coordinates M of checker intersections are determined. More specifically, a simultaneous equation of an expression showing the relationship between the camera coordinate system and the three-dimensional coordinate system, and an expression showing the relationship between the projector coordinate system and the three-dimensional coordinate system, is set. The three-dimensional coordinates are determined from the checker intersection coordinates (uc, vc) and the projector image coordinates up. { s c m ˜ c = A c R c t c M ˜ s p m ˜ p = A p R p t p M ˜
    Figure imgb0020
    { s c u c v c 1 = c 11 c 12 c 13 c 14 c 21 c 22 c 23 c 24 c 31 c 32 c 33 c 34 X Y Z 1 s p u p v p 1 = p 11 p 12 p 13 p 14 p 21 p 22 p 23 p 24 p 31 p 32 p 33 p 34 X Y Z 1
    Figure imgb0021
    { c 11 - c 31 u c X + c 12 - c 32 u c Y + c 13 - c 33 u c Z = c 34 u c - c 14 c 21 - c 31 v c X + c 22 - c 32 u c Y + c 23 - c 33 v c Z = c 34 u c - c 24 p 11 - p 31 u p X + p 12 - p 32 u p Y + p 13 - p 33 u p Z = p 34 u p - p 14
    Figure imgb0022
    c 11 - c 31 u c c 12 - c 32 u c c 13 - c 33 u c c 21 - c 31 v c c 22 - c 32 u c c 23 - c 33 v c p 11 - p 31 u p p 12 - p 32 u p p 13 - p 33 u p X Y Z = c 34 u c - c 14 c 34 u c - c 24 p 34 u p - p 14
    Figure imgb0023
  • Where the above is represented as Q·V = F, when Q-1 is present, the three-dimensional coordinates (X, Y, Z) are determined from V = Q-1·F. The affine transformation matrix HR2P usable to transform the determined three-dimensional coordinate values of the checker intersections into known coordinate values on the checker pattern is determined by a least square method. More specifically, the affine transformation matrix HR2P, which is a 4 x 4 transformation matrix usable to transform three-dimensional coordinates MR in a measurement coordinate system of the camera 26 into three-dimensional coordinates MP in the printing coordinate system of the printing device 10, is determined. M ˜ P = H R 2 P M ˜ R M ˜ R = X R Y R Z R 1 T H R 2 P = M ˜ P = X P Y P Z P 1 T R T 0 0 0 1
    Figure imgb0024
  • Specifically, n groups of MR and MP are applied to the following expression to find, by a nonlinear least square method (Levenberg-Marquardt method), the affine transformation matrix HR2P with which the value obtained by the following expression is minimized. In other words, "R" and "T" in the affine transformation matrix HR2P are determined. i = 0 n M ˜ P - H R 2 P M ˜ R 2
    Figure imgb0025
  • Herein, "R" is a 3 x 3 rotation matrix, and the number of element is "9". This is represented by three-dimensional vector r = [rx, ry, rz] T, and the degree of freedom is "3". In other words, the elements that are actual targets of optimization are three elements of rx, ry, and rz. During an optimization calculation performed by the nonlinear least square method, rx, ry, and rz are transformed into "R" by the following Rodrigues' formula. In the following formula, T is a three-dimensional translation vector, and the degree of freedom is "3". R = cos θ I + 1 - cos θ rr T + sin θ 0 - r z r y r z 0 - r x - r y r x 0
    Figure imgb0026
  • When the calibrations are finished, first, the operator places the plurality of printing subjects 200 on the top surface 14a of the table 14 such that the printing surface of each printing subject 200 faces an ink injection surface of the printing head 20. When the operator issues an instruction to generate printing data by, for example, pressing the operation button in this state, the microcomputer 300 starts a printing data generation process. FIG. 10 is a flowchart showing the printing data generation process in detail. In the printing data generation process, first, a three-dimensional information acquisition process is performed (step S1002).
  • The three-dimensional information acquisition process is performed as shown in FIG. 11. First, three-dimensional information on each printing subject 200 is acquired by the phase shift spatial coding method (step S1102). By the process of step S1102, the three-dimensional information on each of the plurality of printing subjects 200 placed on the table 14 is acquired by the three-dimensional information acquirer 314.
  • Next, the acquired three-dimensional coordinates are transformed into values in the printing coordinate system (step S1104). By the process of step S1104, the three-dimensional coordinates in the camera coordinate system acquired by the process of step S1102 are transformed into values in the printing coordinate system by the point group data generator 316. Then, three-dimensional information on the height of elements other than the top surface 14a of the table 14, in other words, three-dimensional information representing only the printing surfaces of the printing subjects 200, is acquired (step S1106). Then, the process advances to step S1004 (described later). By the process of step S1106, point groups in the vicinity of (Z = 0) on the top surface 14a of the table 14 are deleted to generate point group data representing only the printing subjects 200 by the point group data generator 316.
  • When the acquisition of the three-dimensional information on the printing subjects 200 is finished, a posture recognition process (step S1004) is performed to recognize the posture of each printing subject 200. FIG. 12 is a flowchart showing the posture recognition process in detail. The posture recognition process is performed as follows. First, the point group data acquired by the process of step S1002 is divided into a plurality of pieces of point group data each representing one printing subject 200 (step S1202). A reason for performing this is that the point group data acquired by the process of step S1002, which is three-dimensional information, does not show the printing subject 200 to which each point belongs. By the process of step S1202, the point group data, which is three-dimensional information representing the plurality of printing subjects 200 placed on the table 14, is divided to generate clusters each representing the printing subject 200 by the cluster generator 318. In this case, each cluster represents one printing subject 200.
  • Next, source point group data and target point group data are set (step S1204). In this case, one of the plurality of clusters is copied to be set as the source point group data, and all the clusters are each set as the target point group data, by the source point group data generator 320. When the setting of the source point group data and the target point group data is finished, distance images, each of which is two-dimensional information, are generated from the corresponding point group data, which is three-dimensional information (step S1206). By the process of step S1206, distance images, each of which is a two-dimensional image in which the Z coordinate is represented by a gray value, are generated from the source point group data and the target point group data by the distance image generator 322. Specifically, a source distance image is generated from the source point group data, and target distance images are each generated from the target point group data. The source distance image and the target distance images thus generated may be displayed on the display screen at this point.
  • Then, the source distance image and the target distance images are matched to each other (step S1208). By the process of step S1208, the source distance image is moved such that the center of gravity of the source distance image overlaps the center of gravity of each target distance image by the first transformation matrix calculator 324. After being moved, the source distance image is rotated one degree by one degree to acquire a normalized cross correlation for each target distance image. An angle at which the normalized cross correlation is highest is acquired as a rotation angle of the source distance image.
  • The first transformation matrix A33 usable to rotate the source distance image by the above rotation angle on each target distance image is calculated by the first transformation matrix calculator 324. Next, the three-dimensional coordinates of the source point group data are transformed (step S1210). By the process of step S1210, the first transformation matrix A33 is expanded to a 4 x 4 matrix for transformation of three-dimensional coordinates to acquire the transformation matrix A44 by the second transformation matrix calculator 326. The transformation matrix A44 is used to transform only a two-dimensional component of the three-dimensional coordinates of the source point group data, and thus the source point group data is made close to the target point group data.
  • Next, the transformation matrix usable to transform the three-dimensional coordinates of the source point group data is optimized (step S1212). By the process of step S1212, the transformation matrix AICP is calculated by use of the ICP algorithm, and the transformation matrix A44 and the transformation matrix AICP are multiplied to acquire the second transformation matrix A3D, by the second transformation matrix calculator 326. Then, the second transformation matrix A3D acquired by the process of step S1212 is used to calculate a transformation matrix usable to transform the source distance image (two-dimensional image) into the target distance image (two-dimensional image) (step S1214). Then, the process advances to step S1006. By the process of step S1214, the second transformation matrix A3D acquired by the process of step S1212 is used by the third transformation matrix calculator 328 to calculate the third transformation matrix usable to dispose the printing image, which is a two-dimensional image input onto the source distance image by the operator, on each target distance image in accordance with the position or posture of the corresponding printing subject 200.
  • When the posture recognition process is finished, an image that allows the printing image to be input by the operator is displayed on the display screen (step S1006). By the process of step S1006, the source distance image generated by the process of step S1206 is displayed on the display screen by the distance image generator 322 in a state where the printing image can be input by the operator. In other words, the source distance image is displayed in a state where the printing image can be disposed or edited by the operator. The operator disposes a desired printing image at a desired position or a desired angle on the source distance image displayed on the display screen. Such a printing image may be generated by the operator by use of predetermined software, or image data input beforehand may be used as such a printing image.
  • When the source distance image is displayed on the display screen, it is determined whether or not the printing image has been disposed on the source distance image by the operator (step S1008). Any of various techniques is usable to determine whether or not the printing image has been disposed on the source distance image by the operator. For example, a complete button usable to input information that the disposing of the printing image has been completed may be provided, and it may be determined that the disposing of the printing image has been finished by the complete button being clicked. When it is determined in the process of step S1008 that the printing image has not been disposed on the source distance image by the operator, the process of step S1008 is repeated.
  • By contrast, when it is determined in the process of step S1008 that the printing image has been disposed on the source distance image by the operator, the printing image disposed on the source distance image is disposed on each target distance image by use of the third transformation matrix calculated by the process of step S1214 (step S1010). In the case where the target distance image is set to be displayed on the display screen, a state where the printing image is disposed on the target distance image may be displayed by the process of step S1010.
  • Then, printing data is generated based on a plurality of the printing images disposed on each target distance image (step S1012), and the printing data generation process is finished. By the process of step S1012, the printing data is generated by the printing data generator 332 based on the plurality of printing images disposed on each target distance image.
  • After the printing data is generated in this manner, the operator issues an instruction to start the printing by, for example, pressing the operation button. When this occurs, the coordinate value representing a greatest height in the three-dimensional information acquired by the process of step S1104 (i.e., the highest Z coordinate value) is acquired, and the table 14 is moved in the Z-axis direction based on the coordinate value, by the Z-axis direction movement controller 312. More specifically, the table 14 is moved in the Z-axis direction such that the acquired Z coordinate value representing the greatest height and the Z coordinate value of the position of the printing head 20 (since the printing head 20 does not move in the Z-axis direction, the Z coordinate value of the print head 20 is kept the same) have a predetermined gap therebetween that allows the printing head 20 to perform the printing properly. When the position of the table 14 in the Z-axis direction is determined, the printing head 20 is moved in the X-axis direction and the Y-axis direction to perform the printing on the printing surface of each printing subject 200 based on the printing data, under the control of the controller 302.
  • As described above, the printing device 10 in this preferred embodiment acquires three-dimensional information on the plurality of printing subjects 200 placed on the table 14, and recognizes the position and posture of each printing subject 200 from the acquired three-dimensional information. From the acquired position and posture of each printing subject 200, the third transformation matrix is acquired that is usable to dispose the printing image, which is a two-dimensional image input onto the source distance image by the operator, on each printing subject 200 in accordance with the position and posture of the printing subject 200. When the operator disposes the printing image on the source distance image, the third transformation matrix is used to dispose the printing image on each target distance image. As a result, the printing image is disposed on each printing subject 200 for printing, regardless of the position or posture of the printing subject 200 placed on the table 14. Therefore, the work of determining the position of each printing subject 200 is made unnecessary, and thus the printing is performed easily. Since it is not necessary to produce a jig in accordance with the shape or size of the printing subject unlike with the conventional technology, the load on the operator is not increased. Since there is no cost of designing or producing the jig, the printing is performed at lower cost than with the conventional technology.
  • The above-described preferred embodiment may be modified as described in (1) through (6) below.
  • (1) In the above-described preferred embodiment, the printing device 10 preferably is an inkjet printer. The present invention is not limited to this. The printing device 10 may be any of various types of printers, such as a dot impact printer, a laser printer or the like.
  • (2) In the printing device 10 in the above-described preferred embodiment, the printing head 20 preferably is movable in the X-axis direction along the rod-shaped member 16 included in the movable member 18 and is movable in the Y-axis direction by the movable member 18, whereas the table 14 preferably is movable in the Z-axis direction. The present invention is not limited to this. As shown in FIG. 13, the table 14 movable up and down in the Z-axis direction may be also movable in the Y-axis direction, whereas the printing head 20 may be movable in the X-axis direction. This will be described specifically. Unlike the printing device 10, a printing device 60 shown in FIG. 13 is structured as follows. The table 14 is provided so as to be slidable with respect to guide rails 62 located on the base member 12, and the printing head 20 is provided so as to be slidable with respect to a secured member 66, which is secured to the base member 12. The guide rails 62 include a pair of guide rails 62a and 62b extending in the Y-axis direction on the base member 12. The table 14 is provided with a driver (not shown) controllable by the microcomputer 300 such that the table 14 is movable in the Y-axis direction on the guide rails 62. As a result, the table 14 movable in the Z-axis direction is also movable in the Y-axis direction on the base member 12. The secured member 66 includes standing members 68a and 68b secured to the base member 12 and a rod-shaped member 64 extending in the X-axis direction so as to couple the standing members 68a and 68b to each other. The printing head 20 is located on the rod-shaped member 64 so as to be slidable with respect thereto in the X-axis direction. Because of this structure, the printing head 20 is movable in the X-axis direction along the secured member 66.
  • (3) In the above-described preferred embodiment, four printing subjects 200 preferably are placed on the table 14, and the printing is performed on the printing surface of each printing subject 200. The present invention is not limited to this. One, two, three, or five or more printing subjects 200 may be placed on the table 14 for printing. In the case where the printing is performed on one printing subject 200 placed on the table 14, the source point group data and the target point group data to be set are the same.
  • (4) In the above-described preferred embodiment, height information on the greatest height preferably is acquired from the three-dimensional information that is acquired by the three-dimensional information acquirer 314, and the table 14 is moved up and down by the Z-axis direction movement controller 312 based on the height information. The present invention is not limited to this. The height of the printing subjects 200 may be measured, so that the operator can move the table 14 up and down based on the result of the measurement. Alternatively, height information may be acquired from the three-dimensional information that is acquired by the three-dimensional information acquirer 314 , and the amount by which the table 14 is to be moved up and down may be displayed on the display screen based on the height information, so that the operator can move the table 14 up and down by the amount displayed on the display screen.
  • (5) In the above-described preferred embodiment, the flatbed-type printing device 10 preferably includes the camera 26, the projector 24 and the microcomputer 300. The present invention is not limited to this. The camera 26, the projector 24 and the microcomputer 300 may be included in a printing device of a type different from the flatbed type.
  • (6) The above-described preferred embodiment and modifications described in (1) through (5) may be optionally combined.
  • The terms and expressions used herein are for description only and are not to be interpreted in a limited sense. These terms and expressions should be recognized as not excluding any equivalents to the elements shown and described herein and as allowing any modification encompassed in the scope of the claims. The present invention may be embodied in many various forms. This disclosure should be regarded as providing preferred embodiments of the principle of the present invention. These preferred embodiments are provided with the understanding that they are not intended to limit the present invention to the preferred embodiments described in the specification and/or shown in the drawings. The present invention is not limited to the preferred embodiments described herein. The present invention encompasses any embodiments including equivalent elements, modifications, deletions, combinations, improvements and/or alterations which can be recognized by a person of ordinary skill in the art based on the disclosure. The elements of each claim should be interpreted broadly based on the terms used in the claim, and should not be limited to any of the preferred embodiments described in this specification or referred to during the prosecution of the present application.
  • While preferred embodiments of the present invention have been described above, it is to be understood that variations and modifications will be apparent to those skilled in the art without departing from the scope and spirit of the present invention. The scope of the present invention, therefore, is to be determined solely by the following claims.

Claims (12)

  1. A printing device that acquires three-dimensional information on at least one printing subject having a three-dimensional shape and prints a predetermined printing image as a two-dimensional image on the at least one printing subject, the printing device comprising:
    a table that allows the at least one printing subject to be placed thereon;
    a projector that projects a predetermined pattern to the at least one printing subject placed on the table;
    an image generator that captures an image of the at least one printing subject having the predetermined pattern projected thereon;
    a three-dimensional information acquirer that acquires a spatial code image from the image captured by the image capturing device and acquires the three-dimensional information on the at least one printing subject from the acquired spatial code image;
    a recognizer that recognizes a position and a posture of each of the at least one printing subject from the acquired three-dimensional information;
    a disposer that disposes the printing image on each of the at least one printing subject in accordance with the position and the posture thereof; and
    a printing data generator that generates printing data representing the printing image disposed by the disposer.
  2. A printing device according to claim 1, further comprising:
    a printing head that performs printing on the at least one printing subject; and
    an adjuster that acquires height information on a greatest height of the at least one printing subject from the three-dimensional information and adjusts a gap between the table and the printing head by use of the acquired height information.
  3. A printing device according to claim 1 or 2, wherein:
    the projector projects a binary pattern as the predetermined pattern to the at least one printing subject while shifting the binary pattern;
    the image generator captures an image of the projected binary pattern each time the binary pattern is shifted; and
    the three-dimensional information acquirer acquires a phase shift image formed by synthesis of the images of the binary pattern captured each time the binary pattern is shifted, and acquires the three-dimensional information from a synthesis image formed by synthesis of the acquired phase shift image and the spatial code image.
  4. A printing device according to any one of claims 1 through 3, wherein
    the at least one printing subject includes a plurality of printing subjects, and the recognizer includes:
    a divider that divides point group data as the three-dimensional information on the plurality of printing subjects placed on the table into a plurality of pieces of point group data, each of which represents one of the plurality of printing subjects;
    a setter that sets, as first point group data, point group data on one of the plurality of printing subjects onto which the printing image is allowed to be input by an operator, among the plurality of pieces of point group data, and sets each of all the plurality of pieces of point group data as second point group data;
    a distance image generator that generates a first distance image as two-dimensional information from the first point group data, and generates a second distance image as two-dimensional information from the second point group data;
    a first calculator that calculates a first transformation matrix usable to make the first distance image close to the second distance image;
    a second calculator that expands the first transformation matrix into a transformation matrix usable to perform transformation into three-dimensional coordinates, and calculates a second transformation matrix usable to transform the first point group data such that the first point group data is made close to the second point group data; and
    a third calculator that calculates, from the second transformation matrix, a third transformation matrix usable to dispose the printing image, input onto the first distance image, on the second distance image; and
    the disposer transforms the printing image on the first distance image by use of the third transformation matrix and disposes the printing image on the second distance image.
  5. A printing device according to any one of claims 2 though 4, wherein the printing head is an ink head that injects ink by an inkjet system.
  6. A printing device according to claim 4 or 5, wherein to calculate the first transformation matrix, the first calculator moves the first distance image such that a center of gravity of the first distance image overlaps a center of gravity of the second distance image, and rotates the first distance image in units of a predetermined angle such that the first distance image is close to the second distance image.
  7. A printing method by which three-dimensional information on at least one printing subject having a three-dimensional shape that is placed on a table is acquired, and a predetermined printing image as a two-dimensional image is printed on the at least one printing subject, the printing method comprising:
    projecting a predetermined pattern onto the at least one printing subject placed on the table;
    capturing an image of the at least one printing subject having the predetermined pattern projected thereon;
    acquiring a spatial code image from the captured image, and acquiring the three-dimensional information on the at least one printing subject from the acquired spatial code image;
    recognizing a position and a posture of each of the at least one printing subject from the acquired three-dimensional information;
    disposing the printing image on each of the at least one printing subject in accordance with the position and the posture thereof; and
    generating printing data on the printing image disposed on the at least one printing subject.
  8. A printing method according to claim 7, further comprising:
    acquiring height information on a greatest height of the at least one printing subject from the three-dimensional information; and
    adjusting, by use of the acquired height information, a gap between the table and a printing head that performs printing on the at least one printing subject.
  9. A printing method according to claim 7 or 8, wherein:
    a binary pattern as the predetermined pattern is projected onto the at least one printing subject while being shifted;
    an image of the projected binary pattern is captured each time the binary pattern is shifted; and
    a phase shift image formed by synthesis of the images of the binary pattern captured each time the binary pattern is shifted is acquired, and the three-dimensional information is acquired from a synthesis image formed by synthesis of the acquired phase shift image and the spatial code image.
  10. A printing method according to any one of claims 7 through 9, wherein:
    the at least one printing subject includes a plurality of printing subjects;
    point group data as the three-dimensional information on the plurality of printing subjects placed on the table is divided into a plurality of pieces of point group data, each of which represents one of the plurality of printing subjects;
    point group data on one of the plurality of printing subjects onto which the printing image is allowed to be input by an operator, among the plurality of pieces of point group data, is set as first point group data, and each of all the plurality of pieces of point group data is set as second point group data;
    a first distance image as two-dimensional information is generated from the first point group data, and a second distance image as two-dimensional information is generated from the second point group data;
    a first transformation matrix usable to make the first distance image close to the second distance image is calculated;
    the first transformation matrix is expanded into a transformation matrix usable to perform transformation into three-dimensional coordinates, and a second transformation matrix usable to transform the first point group data such that the first point group data is made close to the second point group data is calculated; and
    a third transformation matrix usable to dispose the printing image, input onto the first distance image, on the second distance image is calculated from the second transformation matrix; and
    the printing image on the first distance image is transformed by use of the third transformation matrix, and the printing image is disposed on the second distance image.
  11. A printing method according to any one of claims 8 through 10, wherein the printing head is an ink head that injects ink by an inkjet system.
  12. A printing method according to claim 10 or 11, wherein, to calculate the first transformation matrix, the first distance image is moved such that a center of gravity of the first distance image overlaps a center of gravity of the second distance image, and the first distance image is rotated in units of a predetermined angle such that the first distance image is close to the second distance image.
EP15172896.1A 2015-06-19 2015-06-19 Printing device and printing method Not-in-force EP3106312B1 (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
EP15172896.1A EP3106312B1 (en) 2015-06-19 2015-06-19 Printing device and printing method
ES15172896.1T ES2669603T3 (en) 2015-06-19 2015-06-19 Printing device and printing procedure

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
EP15172896.1A EP3106312B1 (en) 2015-06-19 2015-06-19 Printing device and printing method

Publications (2)

Publication Number Publication Date
EP3106312A1 true EP3106312A1 (en) 2016-12-21
EP3106312B1 EP3106312B1 (en) 2018-03-07

Family

ID=53716286

Family Applications (1)

Application Number Title Priority Date Filing Date
EP15172896.1A Not-in-force EP3106312B1 (en) 2015-06-19 2015-06-19 Printing device and printing method

Country Status (2)

Country Link
EP (1) EP3106312B1 (en)
ES (1) ES2669603T3 (en)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2019089777A1 (en) * 2017-10-31 2019-05-09 Nike Innovate C.V. Image registration for printing
CN115674920A (en) * 2021-07-31 2023-02-03 深圳市汉森软件有限公司 Intensive ink-jet printing method, device and equipment with randomly distributed printing stock positions
CN116394665A (en) * 2023-04-07 2023-07-07 珠海一微半导体股份有限公司 Mobile printer positioning method, printing method, mobile printer and chip
EP4254141A1 (en) * 2022-03-28 2023-10-04 Fujifilm Business Innovation Corp. Information processing device, information processing method, and program
CN117774537A (en) * 2023-12-25 2024-03-29 广州市森扬电子科技有限公司 A printing quality improvement method, equipment and storage medium using depth vision technology
CN119659195A (en) * 2023-09-19 2025-03-21 深圳市汉森软件股份有限公司 Inkjet printing method, device, equipment and storage medium based on machine vision

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007136764A (en) 2005-11-16 2007-06-07 Yoshida Industry Co Ltd Printing jig for three-dimensional shape printed article used for uv-curable inkjet printer, method for printing three-dimensional shape printed article and three-dimensional shape printed article
JP4874657B2 (en) 2006-01-18 2012-02-15 ローランドディー.ジー.株式会社 Three-dimensional shape measuring method and apparatus
JP4917351B2 (en) 2006-05-16 2012-04-18 ローランドディー.ジー.株式会社 Calibration method in three-dimensional shape measuring apparatus
JP4944435B2 (en) 2005-12-07 2012-05-30 ローランドディー.ジー.株式会社 Three-dimensional shape measuring method and apparatus
US20140026769A1 (en) * 2012-07-25 2014-01-30 Nike, Inc. Projection Assisted Printer Alignment Using Remote Device
US20140333946A1 (en) * 2013-05-13 2014-11-13 Roland Dg Corporation Printer and printing method
WO2014207007A1 (en) * 2013-06-26 2014-12-31 Oce-Technologies B.V. Method for generating prints on a flatbed printer, apparatus therefor and a computer program therefor

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007136764A (en) 2005-11-16 2007-06-07 Yoshida Industry Co Ltd Printing jig for three-dimensional shape printed article used for uv-curable inkjet printer, method for printing three-dimensional shape printed article and three-dimensional shape printed article
JP4944435B2 (en) 2005-12-07 2012-05-30 ローランドディー.ジー.株式会社 Three-dimensional shape measuring method and apparatus
JP4874657B2 (en) 2006-01-18 2012-02-15 ローランドディー.ジー.株式会社 Three-dimensional shape measuring method and apparatus
JP4917351B2 (en) 2006-05-16 2012-04-18 ローランドディー.ジー.株式会社 Calibration method in three-dimensional shape measuring apparatus
US20140026769A1 (en) * 2012-07-25 2014-01-30 Nike, Inc. Projection Assisted Printer Alignment Using Remote Device
US20140333946A1 (en) * 2013-05-13 2014-11-13 Roland Dg Corporation Printer and printing method
WO2014207007A1 (en) * 2013-06-26 2014-12-31 Oce-Technologies B.V. Method for generating prints on a flatbed printer, apparatus therefor and a computer program therefor

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
PAUL J. BESL; NEIL D. MCKAY: "A method for registration of 3-d shapes", IEEE TRANSACTIONS ON PATTERN ANALYSIS AND MACHINE INTELLIGENCE, vol. 14, no. 2, February 1992 (1992-02-01), pages 239 - 256
R. B. RUSU; S. COUSINS: "3D is here: Point Cloud Library (PCL", IEEE INTERNATIONAL CONFERENCE ON ROBOTICS AND AUTOMATION (ICRA, 9 May 2011 (2011-05-09)

Cited By (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US12207701B2 (en) 2017-10-31 2025-01-28 Nike, Inc. Image registration for printing
US10759190B2 (en) 2017-10-31 2020-09-01 Nike, Inc. Image registration for printing
US11247490B2 (en) 2017-10-31 2022-02-15 Nike, Inc. Image registration for printing
US11903446B2 (en) 2017-10-31 2024-02-20 Nike, Inc. Image registration for printing
WO2019089777A1 (en) * 2017-10-31 2019-05-09 Nike Innovate C.V. Image registration for printing
EP4567741A1 (en) * 2017-10-31 2025-06-11 Nike Innovate C.V. Image registration for printing
CN115674920A (en) * 2021-07-31 2023-02-03 深圳市汉森软件有限公司 Intensive ink-jet printing method, device and equipment with randomly distributed printing stock positions
CN115674920B (en) * 2021-07-31 2025-04-18 深圳市汉森软件股份有限公司 Intensive inkjet printing method, device and equipment with random distribution of substrate positions
EP4254141A1 (en) * 2022-03-28 2023-10-04 Fujifilm Business Innovation Corp. Information processing device, information processing method, and program
CN116394665A (en) * 2023-04-07 2023-07-07 珠海一微半导体股份有限公司 Mobile printer positioning method, printing method, mobile printer and chip
CN119659195A (en) * 2023-09-19 2025-03-21 深圳市汉森软件股份有限公司 Inkjet printing method, device, equipment and storage medium based on machine vision
CN117774537A (en) * 2023-12-25 2024-03-29 广州市森扬电子科技有限公司 A printing quality improvement method, equipment and storage medium using depth vision technology
CN117774537B (en) * 2023-12-25 2024-08-27 广州市森扬电子科技有限公司 Printing quality improvement method, device and storage medium for depth vision technology

Also Published As

Publication number Publication date
EP3106312B1 (en) 2018-03-07
ES2669603T3 (en) 2018-05-28

Similar Documents

Publication Publication Date Title
EP3106312B1 (en) Printing device and printing method
EP4188681B1 (en) Calibration for additive manufacturing
JP2015134410A (en) Printer and printing method
US9434181B1 (en) Printing device and printing method
JP6058465B2 (en) Printing apparatus and printing method
CN108898634B (en) Method for accurately positioning embroidery machine target needle eye based on binocular camera parallax
CN113306308B (en) Design method of portable printing and copying machine based on high-precision visual positioning
EP2905143B1 (en) Printer and printing method without jig
US9361687B2 (en) Apparatus and method for detecting posture of camera mounted on vehicle
EP3067861B1 (en) Determination of a coordinate conversion parameter
JP5250847B2 (en) Image processing apparatus, information processing system, image processing method, and program
JP4655242B2 (en) Image processing apparatus for vehicle
EP3756893B1 (en) System and method for analyzing the surface of a three-dimensional object to be printed by a printhead mounted to an articulating arm
JP2002084407A (en) Data generator and solid surface recording device
US12288355B2 (en) Imaging device for calculating three-dimensional position on the basis of image captured by visual sensor
JP2017010271A (en) Information processing apparatus, image forming system, image forming apparatus, and program
JP2005267257A (en) Handwritten information input system
US20210124969A1 (en) Planar and/or undistorted texture image corresponding to captured image of object
JP2011048415A (en) Position information mark creation device and method for producing position information mark
JP2021168750A (en) Information processing equipment, information processing methods, and programs
JP2006215743A (en) Image processing apparatus and image processing method
JP2747722B2 (en) Picture film distortion correction device
JP2021160059A (en) Robot trajectory generation method and robot trajectory generation program for discharge device
JP2021168751A (en) Information processing equipment, information processing methods, and programs
CN120816562A (en) A reverse cutting positioning method for intelligent cutting machines

Legal Events

Date Code Title Description
PUAI Public reference made under article 153(3) epc to a published international application that has entered the european phase

Free format text: ORIGINAL CODE: 0009012

AK Designated contracting states

Kind code of ref document: A1

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

AX Request for extension of the european patent

Extension state: BA ME

17P Request for examination filed

Effective date: 20170620

RBV Designated contracting states (corrected)

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

GRAP Despatch of communication of intention to grant a patent

Free format text: ORIGINAL CODE: EPIDOSNIGR1

INTG Intention to grant announced

Effective date: 20171102

GRAS Grant fee paid

Free format text: ORIGINAL CODE: EPIDOSNIGR3

GRAA (expected) grant

Free format text: ORIGINAL CODE: 0009210

AK Designated contracting states

Kind code of ref document: B1

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

REG Reference to a national code

Ref country code: GB

Ref legal event code: FG4D

REG Reference to a national code

Ref country code: CH

Ref legal event code: EP

Ref country code: AT

Ref legal event code: REF

Ref document number: 976132

Country of ref document: AT

Kind code of ref document: T

Effective date: 20180315

REG Reference to a national code

Ref country code: IE

Ref legal event code: FG4D

REG Reference to a national code

Ref country code: DE

Ref legal event code: R096

Ref document number: 602015008531

Country of ref document: DE

REG Reference to a national code

Ref country code: ES

Ref legal event code: FG2A

Ref document number: 2669603

Country of ref document: ES

Kind code of ref document: T3

Effective date: 20180528

REG Reference to a national code

Ref country code: NL

Ref legal event code: MP

Effective date: 20180307

REG Reference to a national code

Ref country code: LT

Ref legal event code: MG4D

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: FI

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20180307

Ref country code: NO

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20180607

Ref country code: HR

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20180307

Ref country code: CY

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20180307

Ref country code: LT

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20180307

REG Reference to a national code

Ref country code: AT

Ref legal event code: MK05

Ref document number: 976132

Country of ref document: AT

Kind code of ref document: T

Effective date: 20180307

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: BG

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20180607

Ref country code: LV

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20180307

Ref country code: SE

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20180307

Ref country code: RS

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20180307

Ref country code: GR

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20180608

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: RO

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20180307

Ref country code: EE

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20180307

Ref country code: NL

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20180307

Ref country code: PL

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20180307

Ref country code: AL

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20180307

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: AT

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20180307

Ref country code: SK

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20180307

Ref country code: CZ

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20180307

Ref country code: SM

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20180307

REG Reference to a national code

Ref country code: DE

Ref legal event code: R097

Ref document number: 602015008531

Country of ref document: DE

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: PT

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20180709

REG Reference to a national code

Ref country code: DE

Ref legal event code: R119

Ref document number: 602015008531

Country of ref document: DE

PLBE No opposition filed within time limit

Free format text: ORIGINAL CODE: 0009261

STAA Information on the status of an ep patent application or granted ep patent

Free format text: STATUS: NO OPPOSITION FILED WITHIN TIME LIMIT

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: DK

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20180307

REG Reference to a national code

Ref country code: CH

Ref legal event code: PL

26N No opposition filed

Effective date: 20181210

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: SI

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20180307

REG Reference to a national code

Ref country code: BE

Ref legal event code: MM

Effective date: 20180630

REG Reference to a national code

Ref country code: IE

Ref legal event code: MM4A

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: LU

Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES

Effective date: 20180619

Ref country code: MC

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20180307

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: FR

Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES

Effective date: 20180630

Ref country code: CH

Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES

Effective date: 20180630

Ref country code: IE

Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES

Effective date: 20180619

Ref country code: DE

Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES

Effective date: 20190101

Ref country code: LI

Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES

Effective date: 20180630

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: BE

Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES

Effective date: 20180630

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: MT

Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES

Effective date: 20180619

GBPC Gb: european patent ceased through non-payment of renewal fee

Effective date: 20190619

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: TR

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20180307

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: GB

Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES

Effective date: 20190619

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: MK

Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES

Effective date: 20180307

Ref country code: HU

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT; INVALID AB INITIO

Effective date: 20150619

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: IS

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20180707

PGFP Annual fee paid to national office [announced via postgrant information from national office to epo]

Ref country code: IT

Payment date: 20200512

Year of fee payment: 6

PGFP Annual fee paid to national office [announced via postgrant information from national office to epo]

Ref country code: ES

Payment date: 20200701

Year of fee payment: 6

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: IT

Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES

Effective date: 20210619

REG Reference to a national code

Ref country code: ES

Ref legal event code: FD2A

Effective date: 20220826

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: ES

Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES

Effective date: 20210620