WO2017108074A1 - An identification method and apparatus of the most probable poses of an object - Google Patents

An identification method and apparatus of the most probable poses of an object Download PDF

Info

Publication number
WO2017108074A1
WO2017108074A1 PCT/EP2015/080766 EP2015080766W WO2017108074A1 WO 2017108074 A1 WO2017108074 A1 WO 2017108074A1 EP 2015080766 W EP2015080766 W EP 2015080766W WO 2017108074 A1 WO2017108074 A1 WO 2017108074A1
Authority
WO
WIPO (PCT)
Prior art keywords
images
orientation
image
pose
presentation surface
Prior art date
Application number
PCT/EP2015/080766
Other languages
French (fr)
Inventor
Daniel Sirkett
Jeremy POUECH
Original Assignee
Abb Schweiz Ag
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 Abb Schweiz Ag filed Critical Abb Schweiz Ag
Priority to PCT/EP2015/080766 priority Critical patent/WO2017108074A1/en
Publication of WO2017108074A1 publication Critical patent/WO2017108074A1/en

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T1/00General purpose image data processing
    • G06T1/0014Image feed-back for automatic industrial control, e.g. robot with camera
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/70Determining position or orientation of objects or cameras
    • G06T7/73Determining position or orientation of objects or cameras using feature-based methods
    • G06T7/74Determining position or orientation of objects or cameras using feature-based methods involving reference images or patches
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/10Terrestrial scenes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/30Subject of image; Context of image processing
    • G06T2207/30108Industrial image inspection
    • G06T2207/30164Workpiece; Machine component

Definitions

  • the present invention relates to a method for identification of a preferred orientation pose for an object.
  • the invention further relates to a component feeder implementing the method.
  • the method may be applied in robot applications for identifying a preferred orientation pose for an object in order to be pickable by an industrial robot when the object is presented to the robot by a component feeder.
  • feeders In automated industrial systems, such as production lines where for example industrial robots are used, components stored in a disordered bulk storage are required to be fed as individual components, correctly oriented, in order for various operations to be performed.
  • One type of feeder is the type in which randomly oriented components are fed onto and displayed on a presentation surface.
  • An imaging system is typically used in order to determine which components on the presentation surface that are correctly oriented in order to be pickable by for example a robot tool.
  • the presentation surface is often also referred to as a pick surface or picking surface.
  • These types of feeders are flexible since they are not limited to a certain type of component or part, and are therefore often referred to as flexible parts feeders or flex feeders.
  • Flexible parts feeders are commonly used in robotized small-parts assembly operations. When the parts have been dispersed on the presentation surface, pictures are taken of the parts by some sort of imaging system, usually mounted overhead, and the pictures are used in a robot-vision software to direct the robot gripper to the pickable parts.
  • pickable parts is for example meant parts that have the correct orientation and which can therefore be picked.
  • An example of such a flex feeder is described in WO2013/1 13535.
  • Another alternative is to have a transparent presentation surface and an imaging system with a camera that is installed underneath the presentation surface of the flexible feeder.
  • a preparation step it must be determined what the preferred orientation pose of a part is in order to make it pickable.
  • An image of this part in its preferred orientation pose is then stored in the imaging system, and this image is used to identify pickable parts on the presentation surface and to direct a picking tool to these pickable parts.
  • An object of the invention is to provide an identification method of a preferred orientation pose that is improved in such a way that it does not need the participation of a particularly skilled operator, and further to provide more information to the operator that can be useful when setting up and integrating a robot in a production line.
  • the invention is based on the realization that by producing images of the object in different orientation poses there is provided a basis for automation of at least parts of the process of training a robot to recognise a pickable object.
  • a method for identification of a preferred orientation pose for an object comprising the following steps: producing a plurality of images of the object positioned in different orientation poses on a presentation surface; forming groups of images that are considered similar to each other, such that each formed group of images represents one orientation pose for the object; evaluating the frequency of the images in each group, and thereby obtaining the frequency of each orientation pose; and identifying a preferred orientation pose based on the frequency of each orientation pose.
  • the defined method provides an alternative way, as compared to prior art, in that images of the object are produced and these images then form the basis for determining the different orientation poses of the object.
  • images of the object are produced and these images then form the basis for determining the different orientation poses of the object.
  • the method is suitable for automation, at least to some extent.
  • steps of forming groups of images that are considered similar to each other, such that each formed group of images represents one orientation pose for the object; and evaluating the frequency of the images in each group, and thereby obtaining the frequency of each orientation pose can advantageously be implemented in a computer unit.
  • the method will provide indication to the operator how the object to pick usually falls on the picking surface, i.e. which orientation pose it will usually end up in having when coming to rest on the picking surface. Knowing this information, the operator can choose the most frequent orientation pose in which the robot will be able to pick the object while at the same time taking into consideration that the grasping configuration of the robot tool actually allows the robot to grip the object and perform a subsequent task.
  • This chosen orientation pose(s) will be the preferred orientation pose(s) or optimal orientation pose(s) for the intended purpose.
  • the training will then be optimal because for each refeeding of objects on the presentation surface, which operation takes time in the robot cycle, there will be the highest chance of having at least one part in a correct orientation pose for picking.
  • the robot tool can be controlled to pick the objects being positioned in the most frequent pickable orientation pose. Since there will be more objects on the presentation surface that are present in the most frequent orientation pose than objects present in a less frequent orientation pose, the robot will have more objects to choose from and will probably also manage to pick a higher number of objects. The result is increased efficiency. Furthermore, by providing the possibility to have a more automated process there will be less requirement for skilled operators.
  • image shall be considered to cover not only a visible illustration of a thing, but also any information on the basis of which such visible illustration can be generated, e.g. numerical information. However, it may not be necessary to generate the visible illustration for the purposes of the present invention but processing of the numerical information may suffice.
  • the method may comprise establishing an orientation pose ranking list based on the frequency of each orientation pose.
  • a ranking list may for example be used to automatically select the most frequent orientation pose as a preferred orientation pose. Or more than one of the most frequent orientation poses may be automatically selected.
  • the ranking list can be based on relative frequencies or absolute frequencies.
  • the method may comprise presenting the orientation pose ranking list to an operator and having the operator choose a preferred orientation pose from the ranking list.
  • not all orientation poses are suitable for the intended purpose.
  • the method when used for identifying a preferred orientation pose of an object to be pickable by a robot tool, it may occur that not all of the orientation poses allows for the object to be pickable by the tool. In such a case there is offered the possibility to only select those orientation poses that actually allows for a robot tool to pick the object, by having an operator choosing the preferred orientation pose or poses.
  • the method may comprise comparing each produced image with one or more images stored in an image library, and for each comparison assigning a score value to the compared pair of images comprising the produced image and the concerned image from the image library, which score value reflects a degree of similarity between the compared pair of images, and forming said groups of images that are considered similar to each other, based on the score value.
  • the method may further comprise using cluster analysis to form groups of images that are considered similar.
  • Such an analysis may be implemented in a computer.
  • the method comprises using a cluster analysis algorithm based on a density- based clustering model.
  • a density-based clustering model are suitable in the present context of grouping images in order to perceive and distinguish between different orientation poses. Examples of such density-based clustering models are OPTICS and DBSCAN.
  • An image library is initially set up comprising at least one image.
  • the image library may be initially set up by producing one image of the object and storing the produced image in the image library. Thereby is obtained an initial image library containing one image of the object.
  • each new produced image is then compared with previously stored images in the image library. Generally this would also involve that each new produced image is stored in the image library, when the comparison has been made.
  • An image library will thus be built up from images corresponding to the appearances of the object in its different orientation poses.
  • the image library may be initially set up by storing, in advance, previously obtained reference images of the object in its orientation poses in the image library, thereby obtaining an initial image library.
  • the image as such is produced by means of an imaging system.
  • the imaging system comprises a vision system that takes the initial picture of the object, and an image processor module that includes software for image processing, including e.g. a vision algorithm.
  • a vision algorithm When producing an image of the object, for example a vision algorithm will be applied that can locate the object in the taken picture and then subtract the background in order to produce an image that only contains the object in question. In order to do this a previous picture of the background has been taken. Thus is produced an image of the object that is, so to speak, a clean image.
  • the method may comprise producing the image of the object by means of an imaging system comprising a flatbed scanner, and in particular a contact image sensor scanner (CIS scanner).
  • a flatbed scanner such as a contact image sensor scanner it is possible to obtain distortion-free images, and images free of perspective errors, and the object will appear identical regardless of its position in the image frame.
  • the method comprises automatically recirculating the object in a component feeder comprising said presentation surface, and producing an image of the object each time the object is positioned on the presentation surface.
  • a component feeder By using a component feeder, it is possible to automate the entire handling of the object when performing the method. This in combination with an automation of the imaging system will make it possible to have an automated method for identifying a preferred orientation pose based on the frequency of each orientation pose. If the final identification of a preferred orientation pose is not automated, but performed by an operator, then at least the process up to this stage can be automated. The final stage of selecting a preferred orientation pose does not require any particular skill of the operator. Thus the entire process can be performed by an operator not having any particular skills, and the process can simply be started by putting an object on the presentation surface or in the component feeder and then pressing on a start button.
  • a component feeder comprising a presentation surface on which objects are presented, and further comprising an imaging system for producing images of the object when placed on the presentation surface, and a computer unit arranged to form groups of images that are considered similar to each other, such that each group of images represents one orientation pose for the object, and to evaluate the frequency of the images in each group in order to provide information about the frequency of the respective orientation poses.
  • This component feeder provides the possibility to increase the automation in a process of identifying one or more preferred orientation poses. The manual process that required a skilled operator can be eliminated. In a robot application, it has the advantage that the component feeder that is already installed can be used for the purpose in a very convenient way.
  • the component feeder according to the second aspect of the invention provides the same advantages as those described above in connection with the corresponding method, and variants of the component feeder that corresponds to the described variants of the method can be foreseen.
  • the computer unit can be arranged to establish an orientation pose ranking list based on the frequency of each orientation pose.
  • a ranking list may for example be used to automatically select the most frequent orientation pose as a preferred orientation pose.
  • the component feeder may comprise a device for presenting the orientation pose ranking list to an operator and for enabling the operator to choose a preferred orientation pose.
  • This device can e.g. be an independent device such as a tablet computer.
  • the computer unit can be arranged to compare each produced image with one or more images stored in an image library, and for each comparison assigning a score value to the compared pair of images, which score value reflects a degree of similarity between the compared pair of images, and to form said groups of images that are considered similar to each other based on the score value.
  • the computer unit may comprise a cluster analysis module performing the formation of groups of images that are considered similar.
  • a cluster analysis module preferably comprises a density-based clustering model, e.g. OPTICS or DBSCAN.
  • the imaging system of the component feeder comprises a vision system that takes the initial picture of the object, and an image processor module that includes software for image processing.
  • the presentation surface of the component feeder is transparent and the imaging system comprises an image scanner such as a contact image sensor scanner, which is located underneath the transparent presentation surface.
  • a transparent presentation surface may be configured as a part of the image scanner module.
  • the imaging system may be integrated with the component feeder.
  • the component feeder may comprise an arrangement for automatically recirculating the object in the component feeder. This in combination with an automation of the imaging system will make it possible to have an automated process for identifying a preferred orientation pose based on the frequency of each orientation pose.
  • presentation surface in the present context is meant a surface upon which at least one object can be displayed such that a picture can be taken of the object by some sort of vision system, e.g. a CIS scanner.
  • orientation pose should be interpreted to mean, in the present context, a pose or position that an object will adopt when it will come to rest after having been randomly thrown onto a plane surface.
  • the word orientation is used since a certain object often can come to rest in different geometrical orientations, such as e.g. in a first orientation pose the object may have face A facing upwards, and in another orientation pose it may have face A facing downwards.
  • the orientation poses are stable poses, but the expression orientation pose should also be interpreted to include poses of an object having some type of rounded shape that will make it roll on the presentation surface, as long as a pickable pose can be identified. Further features and advantages of the invention will also become apparent from the following detailed description of embodiments.
  • Fig. 1 is a diagram illustrating the main steps of an embodiment of the method according to the present invention
  • Fig. 2a-2b show simplified illustrations of the result from some of the method steps of an embodiment of the method
  • Fig. 3 illustrates an embodiment of a presentation device
  • Figs. 4a-4c show an embodiment of a component feeder according to the invention, in a lateral view in cross section
  • Fig. 5 shows an embodiment of an imaging system of the component feeder according to the invention, comprising a contact image sensor (CIS) scanner system, and
  • CIS contact image sensor
  • Fig. 6 illustrates the main components of an embodiment of a computer unit.
  • Fig. 1 is illustrated the main steps of an embodiment of a method for identification of a preferred orientation pose for an object, comprising the following steps:
  • formed group of images represents one orientation pose for the object, 200,
  • the method will be described in more detail as being implemented in a component feeder 1 of the type illustrated in Figs. 4a-4c. However, this is simply done for ease of understanding and no limitations whatsoever, implicit or explicit, should be interpreted as forming part of the method if based on any detail related to the illustrated component feeder.
  • the component feeder 1 is only an example of an apparatus that may provide the concerned presentation surface 3. Any type of presentation surface that is found suitable may be used.
  • the method step (100) of producing a plurality of images of the object 5 positioned in different positions on the presentation surface 3 may be done in different ways. According to one embodiment, the object is positioned on the presentation surface and an image of the object is produced, thus performing an image cycle.
  • the object is then removed from the presentation surface and positioned again on the presentation surface and a new image is produced. This image cycle is then repeated for as many times as desired. Alternatively, the object may be made to change its position on the presentation in another way, e.g. as will be described later.
  • the object 5 is randomly positioned on the presentation surface 3 and will come to rest in one of a number of orientation poses. Every time an image will be produced, and thus a number of images will be produced of the object 5 in different positions and at different angles. Generally, the object 5 will come to rest on the presentation surface 3 in a position that represents a stable orientation pose. But if the object has a rounded shape in some aspect, e.g.
  • the object has a cylindrical, partly spherical of conical surface
  • the position on the presentation surface 3 may not be stable, since the object may roll on the surface. However, a picture may still be taken of the object.
  • the position of the object on the presentation surface when the image is produced will be referred to as an orientation pose.
  • Fig. 2a is illustrated an example of an object, shown in an enlarged view in the bottom left corner, and what may be its different stable orientation poses 1 -5.
  • the image of the object 5 on the presentation surface 3 is produced by an imaging system 7.
  • the imaging system 7 comprises a vision system 9 that takes the initial picture of the object, and an image processor module 51 that includes software for image processing, including e.g. a vision algorithm.
  • the vision system comprises an image scanner such as a contact image sensor scanner (CIS scanner), e.g. as schematically illustrated in Fig. 5.
  • An image scanner module 19 can be installed immediately underneath a presentation surface 3, and the presentation surface should then be transparent.
  • a transparent presentation surface 3 may be configured as a part of the image scanner module 19.
  • a vision algorithm When producing an image of the object, a vision algorithm will be applied that can locate the object in the picture taken by the vision system and then subtract the background in order to produce an image that only contains the object in question. In order to do this a previous picture of the background has been taken. Thus is produced an image of the object that is, so to speak, a clean image.
  • Another possible alternative of producing a plurality of images of the object positioned in different positions on the presentation surface would be to scatter more than one object on the presentation surface and produce an image thus showing these objects in several different orientation poses.
  • the vision algorithm must also be capable of producing separate images of the object in its different orientation poses.
  • One complication that may occur is that two or more objects may be lumped together, and this should be handled at some stage in the process.
  • the positioning of an object 5 on a presentation surface 3 may be done in different ways. It may be performed by an operator placing an object 5 in a component feeder that automatically transfers the object, i.e. a component, from a storage container 32 to a presentation surface 3 by means of a transfer arrangement 35 of the component feeder.
  • the object 5 may be manually positioned initially by an operator throwing it onto the presentation surface 3.
  • the object may be automatically recirculated and the component feeder may thus be of the type that is capable of automatically recirculating the object. See e.g. the example of the component feeder illustrated in Figs. 4a-4c.
  • Another way of positioning the object 5 on a presentation surface 3 in order to produce a plurality of images of the object can be to place an object on the presentation surface and then shake the presentation surface between each image such that the object changes its position.
  • the positioning of an object on a presentation surface may be done entirely manually, by repeatedly having an operator throwing the object onto the presentation surface.
  • a manual implementation of the method is used on a simple presentation surface that is not part of any component feeder.
  • the object 5 is randomly positioned on the presentation surface 3.
  • the method comprises forming groups of images that can be considered similar to each other, such that each group of images represents one orientation pose for the object. This is done after a number of image cycles having been performed that can be considered sufficient for the purpose.
  • the forming of groups of the images is done by using cluster analysis, and in particular using a cluster analysis algorithm based on a density-based clustering model. Examples of such density-based clustering models are OPTICS and DBSCAN with algorithms that can be used. The details of such density-base clustering models are not described here since they are previously known and easily accessible.
  • each produced image is compared with one or more images stored in an image library, comprising at least one image of the object.
  • the comparison will result in a distance between the images in each pair of images, which distance represents the degree of similarity. If the distance is long, the similarity is less, and vice versa.
  • a distance is assigned to the compared pair of images comprising the produced image and the concerned image from the image library, which distance reflects a degree of similarity between the compared pair of images. If using a broader term, this distance can be said to constitute a score value that reflects the degree of similarity between the compared pair of images.
  • An image library is initially set up comprising at least one image.
  • the image library is initially set up by performing the image cycle once and storing the produced image in the image library. Thereby is obtained an initial image library containing one image of the object.
  • Each new produced image is then compared with previously stored images in the image library. Generally this would also involve that each new produced image is stored in the image library, when the comparison has been made.
  • a library will thus be built up from images corresponding to the appearances of the object in its different orientation poses. However, there may be some exceptions in terms of images that are not to be stored in the image library, as will be explained later.
  • the comparison between two images may be made in many different ways and using different methods and algorithms.
  • the goal is to obtain the best fit between the two compared images.
  • One method may e.g. be to centre one image on top of the other and measure the extent of overlapping areas between the two images. In order to do so, the images may have to be rotated in relation to each other, since they may in fact be two images of the object in one and the same orientation pose but rotated in relation to each other. If the overlap is total, and the images are identical, they represent one and the same orientation pose.
  • Another method may be to use the ratio between the overlap area and the union area of the two images.
  • the so called score values may be based on concrete features or on abstract features and there will exist many ways and methods to obtain score values. Naturally, combinations of different methods and algorithms may also be used. However, in the present context and the described embodiment, the comparison between images will be made in such a way that the degree of similarity is represented by a distance between the two compared images of the pair.
  • Each new produced image is stored in the image library such that the image library will also contain information about all allocated distances for the produced image that have been obtained in the image pair comparison process with other images. As part of the image library, it will then be compared with every new produced image.
  • a cluster analysis algorithm based on a density-based clustering model is used, for example OPTICS.
  • the distance between the pairs of images are stored in a matrix N * N, where N is the number of images.
  • the value (i,j) in the matrix corresponds to the distance from image i to image j in the image library.
  • the matrix is thus symmetrical and has only zeros on the diagonal.
  • the algorithm OPTICS uses this distance matrix and extracts a graph of which an example is shown in Fig. 2b.
  • the example of the cluster analysis comprises three orientation poses 1 -3.
  • Each image is given an order (x axis) and a "reachability distance" (y axis) which corresponds to the proximity to previous images with a lower order.
  • the cavities in the graph of Fig. 2b correspond to groups of similar images.
  • the areas in the graph marked as “Other” represent images that cannot be allocated to one of the groups since the value for "reachability distance" is too high.
  • the next method step comprises evaluating the frequency of the images in each group, and thereby obtaining the frequency of each orientation pose (300).
  • the evaluation would usually be done by determining, e.g. counting, the number of images in each group and thus obtaining the frequency.
  • frequency is meant how often a certain orientation pose occurs in terms of how many images there are in each group, where each group represents one orientation pose.
  • Method steps (200) and (300) and the related measures described above are preferably performed by a computer unit.
  • the next step comprises identifying a preferred orientation pose based on the frequency of each orientation pose (400).
  • the final identification of a preferred orientation pose may for example be made automatically by simply choosing the orientation pose that is the most frequent.
  • an embodiment of the method may comprise establishing an orientation pose ranking list based on the frequency of each orientation pose.
  • to have an automated identification and selection requires that the particular orientation pose is such that the object can really be picked by a robot tool. Since it is not always the case that all orientation poses will make the object pickable, e.g. by a robot tool, another alternative is to involve an operator in identifying the preferred orientation pose.
  • the frequency for each orientation pose of the object is then presented to the operator in some way. The operator can then disregard any orientation pose that for one reason or the other is not suitable for picking, and select the orientation pose that has the highest frequency among the possible pickable orientation poses as the preferred orientation pose. Sometimes it may be feasible to select more than one orientation poses.
  • an embodiment of the method may comprise presenting the orientation pose ranking list to an operator and having the operator choose a preferred orientation pose from the ranking list. This may for example be done as illustrated in Fig. 3.
  • the shown ranking list comprises bars reflecting the frequency of each orientation pose and underneath each bar is shown an image of the object in the concerned orientation pose. This information may e.g. be presented on a tablet computer 40.
  • the operator can then select one or more preferred orientation poses, or pick poses as may be a more descriptive term for the operator, and the image of that pose or poses will be used by e.g. the robot control system such that the robot tool will primarily be directed to pick objects having the preferred orientation pose or poses.
  • the image library may be initially set up by storing, in advance, previously obtained reference images of the object in its orientation poses in the image library, thereby obtaining an initial image library.
  • the procedure of forming groups of images is in principle the same but instead of a clustering algorithm a simpler algorithm can be used and only the distances of the produced images to the reference images are needed. If there are M reference images of predefined orientation poses, the new produced images are directly sorted into M+1 groups. If there is at least one distance to one of the reference images that is low enough, the produced image is allocated to the group of the reference image to which it is closest. Otherwise the image is put in a group "unknown".
  • Information about the frequencies of the predefined orientation poses can then be displayed to the operator who can then choose the one he wants to teach the robot as the grasping position. In such a case there is no need for a cluster analysis to distinguish groups, even though it may be used in addition, if e.g. it is desirable to find out about additional orientation poses that are not represented in the reference images. It should be mentioned that, generally, it will be possible to set up limitations of different kinds such that images that are not sufficiently similar to the images in the image library, based on the set up limitations, can be discarded as noise. These will not be part of any group representing an orientation pose.
  • the method according to the present invention may be implemented in a component feeder comprising a presentation surface on which objects are presented, an imaging system for producing images of the object when placed on the presentation surface, and a computer unit arranged to form groups of images that are considered similar to each other, such that each group of images represents one orientation pose for the object, and to evaluate the frequency of the images in each group in order to provide information about the frequency of the respective orientation poses.
  • the component feeder 1 comprises a container 32 for bulk storage of objects 5, for example fairly small components that are suitable to be picked by a robot tool.
  • the feeder may for example be placed in a production line where robots are used to pick up components that are to be assembled with other components or mounted on apparatuses.
  • a transfer arrangement 35 is provided for transferring objects from the container 32 to the presentation surface 3 where the objects are presented in order for a robot tool to be able to pick an object that is pickable.
  • the transfer arrangement comprises e.g. a lift 36 arranged in the container 32, by means of which objects placed inside the container may be vertically elevated up from the container.
  • the lift 36 has a lift platform 38, which is essentially horizontal. When the lift platform is at its bottom level, at the bottom of the container, objects fall onto the lift platform 38 and will then be transported by the lift up to an upper level of the lift.
  • the container 32 has an opening 40 which is at least partly covered by a plate 42.
  • the plate 42 is rigid and is capable of being moved, e.g.
  • the upper surface of the plate is configured to form a presentation surface 3.
  • the lift platform 38 will be adjacent to the plate 42 and approximately level with the presentation surface.
  • Objects are transferred from the lift platform 38 to the plate 42 and the presentation surface 3 by means of some type of transfer device 46.
  • At least a part of the plate 42 comprises a transparent presentation surface 3.
  • the plate 42 is retractable from at least part of the opening 40 as illustrated in Figs. 4a- 4c.
  • the plate is moveable by means of an actuator device 48, which can give the plate a back and forth movement in its longitudinal direction.
  • an actuator device 48 can give the plate a back and forth movement in its longitudinal direction.
  • the component feeder 1 comprises an imaging system 7, of which at least the vision system 9 is arranged underneath the plate 42, such that the transparent presentation surface 3 of the imaging system forms at least a part of the plate 42.
  • the imaging system comprises a vision system 9, which in this case is a contact image scanner system (CIS), as shown in Fig. 5.
  • CIS image scanner module 19 i.e. a module comprising the vision system, is connected to the actuator device 48 and movable by means of the actuator device, in the longitudinal direction of the plate and can thus scan objects 5 lying on the presentation surface 3 forming part of the plate 42.
  • the image scanner module 19 can be moved by the actuator independently of the plate, as shown in Fig. 4b. In fig.
  • FIG. 4a is shown how an object 5 is being transferred from the lift 36 to the plate 42 and the presentation surface 3.
  • Fig. 4b illustrates how the image scanner module 19 now is moved independently underneath the plate 42, by means of the actuator 48, along its longitudinal direction, such that the object 5 that is placed on the presentation surface 3 forming part of the plate 42, is scanned by the image scanner of the imaging system. After scanning, the image scanner module 19 is returned to its rest position at the end of the plate 42 close to the lift 36.
  • the plate 42 is then retracted from the opening 40 into the container, as shown in Fig. 4c, and the object 5 lying on the plate will fall back into the container.
  • the object can then again be lifted up by the transfer arrangement 35 and the image cycle can be repeated as many times as desired.
  • the images obtained through the scanning are processed by the image processor module 51 , in order to form groups of images that are considered similar to each other, such that each group of images represents one orientation pose for the object, and to evaluate the frequency of the images in each group in order to provide information about the frequency of the respective orientation poses.
  • Fig. 6 is schematically illustrated an embodiment of a computer unit 50.
  • the computer unit comprises an image processor module 51 that processes each taken image in order to produce a clean image of the objects, as described above.
  • the computer unit 50 further comprises a comparing processor module 52 arranged to compare each produced image with one or more images stored in an image library, and for each comparison assigning a distance value to the compared pair of images, which reflects a degree of similarity between the compared pair of images.
  • the computer unit further comprises a cluster analysis module 53 performing the formation of groups of images that are considered similar.
  • the cluster analysis module may be of density-based clustering model type, e.g. OPTICS or DBSCAN.
  • the computer unit further comprises a frequency evaluation module 54 that evaluates the frequency of the images in each group, thereby obtaining the frequency of each orientation pose.
  • the computer unit may optionally comprise a ranking list module 55 that establishes an orientation pose ranking list based on the frequency of each orientation pose.
  • a ranking list module 55 that establishes an orientation pose ranking list based on the frequency of each orientation pose.
  • the ranking list module may also include a predetermined selection of the most frequent orientation pose or poses as the preferred orientation pose or poses.
  • the computer unit may further comprise a presentation interface module 56 for presenting the orientation pose ranking list to an operator and for enabling the operator to choose a preferred orientation pose. According to one embodiment, this may be implemented in a separate device 40. This device may e.g. be a tablet computer as previously described.
  • the computer unit may further include different modules for setting up an initial image library.
  • the computer unit includes at least one memory module 58 e.g. for storing images in the image library.
  • the term "image" shall be considered to cover not only a visible illustration of a thing, but also any information on the basis of which such visible illustration can be generated.
  • the imaging system 7 provides numerical information on the basis of which a visible illustration of an object 5 can be generated.
  • the provision of the images may be based on other physical phenomena than visible light.
  • the plate 42 can thereby be replaced by any suitable planar plate that can either be transparent or opaque.
  • object shall be considered to cover not only a given object but also other objects identical to the given object.
  • An expression “a plurality of images of the object” may thereby refer to images of a same object, to images of different but identical objects, or to a combination of the two.

Landscapes

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

Abstract

A method for identification of a preferred orientation pose for an object comprises the following steps: producing a plurality of images of the object positioned in different orientation poses on a presentation surface (100); forming groups of images that are considered similar to each other, such that each formed group of images represents one orientation pose for the object (200); evaluating the frequency of the images in each group, and thereby obtaining the frequency of each orientation pose(300); and identifying a preferred orientation pose based on the frequency of each orientation pose(400). A component feeder (1) comprises a presentation surface (3) on which objects (5) are presented, and further it comprises an imaging system (7) for producing images of the object when placed on the presentation surface, and a computer unit (50) arranged to form groups of images and to evaluate the frequency of the images in each group.

Description

AN IDENTIFICATION METHOD AND APPARATUS OF THE MOST PROBABLE
POSES OF AN OBJECT
Technical field of the invention
The present invention relates to a method for identification of a preferred orientation pose for an object. The invention further relates to a component feeder implementing the method. In particular, the method may be applied in robot applications for identifying a preferred orientation pose for an object in order to be pickable by an industrial robot when the object is presented to the robot by a component feeder. Background
In automated industrial systems, such as production lines where for example industrial robots are used, components stored in a disordered bulk storage are required to be fed as individual components, correctly oriented, in order for various operations to be performed. There exist many feeding devices using different principles and which are suitable for different specific tasks. One type of feeder is the type in which randomly oriented components are fed onto and displayed on a presentation surface. An imaging system is typically used in order to determine which components on the presentation surface that are correctly oriented in order to be pickable by for example a robot tool. Thus the presentation surface is often also referred to as a pick surface or picking surface. These types of feeders are flexible since they are not limited to a certain type of component or part, and are therefore often referred to as flexible parts feeders or flex feeders.
Flexible parts feeders are commonly used in robotized small-parts assembly operations. When the parts have been dispersed on the presentation surface, pictures are taken of the parts by some sort of imaging system, usually mounted overhead, and the pictures are used in a robot-vision software to direct the robot gripper to the pickable parts. By pickable parts is for example meant parts that have the correct orientation and which can therefore be picked. An example of such a flex feeder is described in WO2013/1 13535.
Another alternative is to have a transparent presentation surface and an imaging system with a camera that is installed underneath the presentation surface of the flexible feeder.
In a preparation step, it must be determined what the preferred orientation pose of a part is in order to make it pickable. An image of this part in its preferred orientation pose is then stored in the imaging system, and this image is used to identify pickable parts on the presentation surface and to direct a picking tool to these pickable parts.
When parts are randomly distributed on the presentation surface, they will come to rest in a stable orientation pose. Generally, one part will have more than one stable orientation poses. It is often desirable to select the most frequently-occurring of these stable orientation poses as the preferred orientation pose for picking in order to ensure that the feeder can provide a good supply of pickable parts. Determining the most stable orientation poses can usually be done intuitively by an operator, but to determine the most frequently-occurring stable orientation pose is more complicated and requires some skill as it is done in a manual process. An experienced operator often performs a short experiment in which the most frequent stable orientation pose is found by scattering some parts repeatedly onto a surface and counting the numbers coming to rest in each pose. It would, however, be desirable to be able to perform this operation in an alternative way, and preferably without requiring the particular skills of an experienced operator, by having a simplified procedure that also an unskilled operator could perform.
Summary of the invention
An object of the invention is to provide an identification method of a preferred orientation pose that is improved in such a way that it does not need the participation of a particularly skilled operator, and further to provide more information to the operator that can be useful when setting up and integrating a robot in a production line.
These objects are achieved by the method according to appended claim 1 and the component feeder according to appended claim 9.
The invention is based on the realization that by producing images of the object in different orientation poses there is provided a basis for automation of at least parts of the process of training a robot to recognise a pickable object.
According to a first aspect of the invention, there is provided a method for identification of a preferred orientation pose for an object, comprising the following steps: producing a plurality of images of the object positioned in different orientation poses on a presentation surface; forming groups of images that are considered similar to each other, such that each formed group of images represents one orientation pose for the object; evaluating the frequency of the images in each group, and thereby obtaining the frequency of each orientation pose; and identifying a preferred orientation pose based on the frequency of each orientation pose.
The defined method provides an alternative way, as compared to prior art, in that images of the object are produced and these images then form the basis for determining the different orientation poses of the object. By producing images is obtained the advantage that the method is suitable for automation, at least to some extent. For example the steps of forming groups of images that are considered similar to each other, such that each formed group of images represents one orientation pose for the object; and evaluating the frequency of the images in each group, and thereby obtaining the frequency of each orientation pose, can advantageously be implemented in a computer unit.
When using the method in a robot application it will provide an advantage of giving more information to the operator when he is training the robot system to pick an object. The operator knows what will be happening after the picking, and this is most of the time an assembly operation. The operator knows how to make the grasping configuration of the robot tool that is programmed to pick the object such that it will be possible, convenient and robust to make the assembly after the picking of the object.
The method will provide indication to the operator how the object to pick usually falls on the picking surface, i.e. which orientation pose it will usually end up in having when coming to rest on the picking surface. Knowing this information, the operator can choose the most frequent orientation pose in which the robot will be able to pick the object while at the same time taking into consideration that the grasping configuration of the robot tool actually allows the robot to grip the object and perform a subsequent task. This chosen orientation pose(s) will be the preferred orientation pose(s) or optimal orientation pose(s) for the intended purpose. The training will then be optimal because for each refeeding of objects on the presentation surface, which operation takes time in the robot cycle, there will be the highest chance of having at least one part in a correct orientation pose for picking.
From a more general point of view, the robot tool can be controlled to pick the objects being positioned in the most frequent pickable orientation pose. Since there will be more objects on the presentation surface that are present in the most frequent orientation pose than objects present in a less frequent orientation pose, the robot will have more objects to choose from and will probably also manage to pick a higher number of objects. The result is increased efficiency. Furthermore, by providing the possibility to have a more automated process there will be less requirement for skilled operators.
It should be understood that the term "image" shall be considered to cover not only a visible illustration of a thing, but also any information on the basis of which such visible illustration can be generated, e.g. numerical information. However, it may not be necessary to generate the visible illustration for the purposes of the present invention but processing of the numerical information may suffice.
According to one feature, the method may comprise establishing an orientation pose ranking list based on the frequency of each orientation pose. Such a ranking list may for example be used to automatically select the most frequent orientation pose as a preferred orientation pose. Or more than one of the most frequent orientation poses may be automatically selected. The ranking list can be based on relative frequencies or absolute frequencies.
Alternatively, the method may comprise presenting the orientation pose ranking list to an operator and having the operator choose a preferred orientation pose from the ranking list. In some applications it is conceivable that not all orientation poses are suitable for the intended purpose. For example, and as has already been discussed above, when the method is used for identifying a preferred orientation pose of an object to be pickable by a robot tool, it may occur that not all of the orientation poses allows for the object to be pickable by the tool. In such a case there is offered the possibility to only select those orientation poses that actually allows for a robot tool to pick the object, by having an operator choosing the preferred orientation pose or poses.
According to one embodiment, the method may comprise comparing each produced image with one or more images stored in an image library, and for each comparison assigning a score value to the compared pair of images comprising the produced image and the concerned image from the image library, which score value reflects a degree of similarity between the compared pair of images, and forming said groups of images that are considered similar to each other, based on the score value. These features of the method provide a way of forming groups of images that are considered similar, which is suitable to implement by means of a computer program in a computer unit and will thus provide the advantage of an automated process. The comparison of the images can be made in different ways as will be explained in the detailed description. One way of grading the similarity between two compared images is to indicate the similarity in terms of a distance between the two images. Such a distance is an example of what can be considered as comprised in the term score value in the present context.
The method may further comprise using cluster analysis to form groups of images that are considered similar. Such an analysis may be implemented in a computer. According to one embodiment, the method comprises using a cluster analysis algorithm based on a density- based clustering model. Such models are suitable in the present context of grouping images in order to perceive and distinguish between different orientation poses. Examples of such density-based clustering models are OPTICS and DBSCAN.
An image library is initially set up comprising at least one image. According to one embodiment, the image library may be initially set up by producing one image of the object and storing the produced image in the image library. Thereby is obtained an initial image library containing one image of the object. As described above, each new produced image is then compared with previously stored images in the image library. Generally this would also involve that each new produced image is stored in the image library, when the comparison has been made. An image library will thus be built up from images corresponding to the appearances of the object in its different orientation poses. According to an alternative embodiment, the image library may be initially set up by storing, in advance, previously obtained reference images of the object in its orientation poses in the image library, thereby obtaining an initial image library.
The image as such is produced by means of an imaging system. The imaging system comprises a vision system that takes the initial picture of the object, and an image processor module that includes software for image processing, including e.g. a vision algorithm. When producing an image of the object, for example a vision algorithm will be applied that can locate the object in the taken picture and then subtract the background in order to produce an image that only contains the object in question. In order to do this a previous picture of the background has been taken. Thus is produced an image of the object that is, so to speak, a clean image.
According to one embodiment, the method may comprise producing the image of the object by means of an imaging system comprising a flatbed scanner, and in particular a contact image sensor scanner (CIS scanner). By using a flatbed scanner such as a contact image sensor scanner it is possible to obtain distortion-free images, and images free of perspective errors, and the object will appear identical regardless of its position in the image frame.
According to one embodiment, the method comprises automatically recirculating the object in a component feeder comprising said presentation surface, and producing an image of the object each time the object is positioned on the presentation surface. By using a component feeder, it is possible to automate the entire handling of the object when performing the method. This in combination with an automation of the imaging system will make it possible to have an automated method for identifying a preferred orientation pose based on the frequency of each orientation pose. If the final identification of a preferred orientation pose is not automated, but performed by an operator, then at least the process up to this stage can be automated. The final stage of selecting a preferred orientation pose does not require any particular skill of the operator. Thus the entire process can be performed by an operator not having any particular skills, and the process can simply be started by putting an object on the presentation surface or in the component feeder and then pressing on a start button.
According to a second aspect of the invention, there is provided a component feeder comprising a presentation surface on which objects are presented, and further comprising an imaging system for producing images of the object when placed on the presentation surface, and a computer unit arranged to form groups of images that are considered similar to each other, such that each group of images represents one orientation pose for the object, and to evaluate the frequency of the images in each group in order to provide information about the frequency of the respective orientation poses. This component feeder provides the possibility to increase the automation in a process of identifying one or more preferred orientation poses. The manual process that required a skilled operator can be eliminated. In a robot application, it has the advantage that the component feeder that is already installed can be used for the purpose in a very convenient way.
In general terms, the component feeder according to the second aspect of the invention, provides the same advantages as those described above in connection with the corresponding method, and variants of the component feeder that corresponds to the described variants of the method can be foreseen.
According to one feature, the computer unit can be arranged to establish an orientation pose ranking list based on the frequency of each orientation pose. Such a ranking list may for example be used to automatically select the most frequent orientation pose as a preferred orientation pose.
According to another feature, the component feeder may comprise a device for presenting the orientation pose ranking list to an operator and for enabling the operator to choose a preferred orientation pose. This device can e.g. be an independent device such as a tablet computer.
According to a further feature, the computer unit can be arranged to compare each produced image with one or more images stored in an image library, and for each comparison assigning a score value to the compared pair of images, which score value reflects a degree of similarity between the compared pair of images, and to form said groups of images that are considered similar to each other based on the score value.
To this end, the computer unit may comprise a cluster analysis module performing the formation of groups of images that are considered similar. Such a cluster analysis module preferably comprises a density-based clustering model, e.g. OPTICS or DBSCAN.
The imaging system of the component feeder comprises a vision system that takes the initial picture of the object, and an image processor module that includes software for image processing. According to one embodiment, the presentation surface of the component feeder is transparent and the imaging system comprises an image scanner such as a contact image sensor scanner, which is located underneath the transparent presentation surface. Alternatively, a transparent presentation surface may be configured as a part of the image scanner module. The imaging system may be integrated with the component feeder.
Finally, the component feeder may comprise an arrangement for automatically recirculating the object in the component feeder. This in combination with an automation of the imaging system will make it possible to have an automated process for identifying a preferred orientation pose based on the frequency of each orientation pose.
By presentation surface in the present context is meant a surface upon which at least one object can be displayed such that a picture can be taken of the object by some sort of vision system, e.g. a CIS scanner.
The expression orientation pose should be interpreted to mean, in the present context, a pose or position that an object will adopt when it will come to rest after having been randomly thrown onto a plane surface. The word orientation is used since a certain object often can come to rest in different geometrical orientations, such as e.g. in a first orientation pose the object may have face A facing upwards, and in another orientation pose it may have face A facing downwards. Generally, the orientation poses are stable poses, but the expression orientation pose should also be interpreted to include poses of an object having some type of rounded shape that will make it roll on the presentation surface, as long as a pickable pose can be identified. Further features and advantages of the invention will also become apparent from the following detailed description of embodiments.
Brief description of the drawings
The invention will now be described in more detail, with reference being made to the enclosed schematic drawings illustrating different aspects and embodiments of the invention, given as examples only, and in which:
Fig. 1 is a diagram illustrating the main steps of an embodiment of the method according to the present invention,
Fig. 2a-2b show simplified illustrations of the result from some of the method steps of an embodiment of the method,
Fig. 3 illustrates an embodiment of a presentation device,
Figs. 4a-4c show an embodiment of a component feeder according to the invention, in a lateral view in cross section,
Fig. 5 shows an embodiment of an imaging system of the component feeder according to the invention, comprising a contact image sensor (CIS) scanner system, and
Fig. 6 illustrates the main components of an embodiment of a computer unit.
Elements that are the same or represent corresponding or equivalent elements have been given the same reference numbers in the different figures.
Detailed description
In Fig. 1 is illustrated the main steps of an embodiment of a method for identification of a preferred orientation pose for an object, comprising the following steps:
i. producing a plurality of images of the object positioned in different orientation poses on a presentation surface, 100,
ii. forming groups of images that are considered similar to each other, such that each
formed group of images represents one orientation pose for the object, 200,
iii. evaluating the frequency of the images in each group, and thereby obtaining the
frequency of each orientation pose, 300, and
iv. identifying a preferred orientation pose based on the frequency of each orientation pose, 400.
The method will be described in more detail as being implemented in a component feeder 1 of the type illustrated in Figs. 4a-4c. However, this is simply done for ease of understanding and no limitations whatsoever, implicit or explicit, should be interpreted as forming part of the method if based on any detail related to the illustrated component feeder. The component feeder 1 is only an example of an apparatus that may provide the concerned presentation surface 3. Any type of presentation surface that is found suitable may be used. The method step (100) of producing a plurality of images of the object 5 positioned in different positions on the presentation surface 3 may be done in different ways. According to one embodiment, the object is positioned on the presentation surface and an image of the object is produced, thus performing an image cycle. The object is then removed from the presentation surface and positioned again on the presentation surface and a new image is produced. This image cycle is then repeated for as many times as desired. Alternatively, the object may be made to change its position on the presentation in another way, e.g. as will be described later. For every image cycle the object 5 is randomly positioned on the presentation surface 3 and will come to rest in one of a number of orientation poses. Every time an image will be produced, and thus a number of images will be produced of the object 5 in different positions and at different angles. Generally, the object 5 will come to rest on the presentation surface 3 in a position that represents a stable orientation pose. But if the object has a rounded shape in some aspect, e.g. the object has a cylindrical, partly spherical of conical surface, the position on the presentation surface 3 may not be stable, since the object may roll on the surface. However, a picture may still be taken of the object. In any case, the position of the object on the presentation surface when the image is produced will be referred to as an orientation pose. In Fig. 2a is illustrated an example of an object, shown in an enlarged view in the bottom left corner, and what may be its different stable orientation poses 1 -5.
The image of the object 5 on the presentation surface 3 is produced by an imaging system 7. The imaging system 7 comprises a vision system 9 that takes the initial picture of the object, and an image processor module 51 that includes software for image processing, including e.g. a vision algorithm. According to one embodiment, the vision system comprises an image scanner such as a contact image sensor scanner (CIS scanner), e.g. as schematically illustrated in Fig. 5. An image scanner module 19 can be installed immediately underneath a presentation surface 3, and the presentation surface should then be transparent. Alternatively, a transparent presentation surface 3 may be configured as a part of the image scanner module 19.
When producing an image of the object, a vision algorithm will be applied that can locate the object in the picture taken by the vision system and then subtract the background in order to produce an image that only contains the object in question. In order to do this a previous picture of the background has been taken. Thus is produced an image of the object that is, so to speak, a clean image.
Another possible alternative of producing a plurality of images of the object positioned in different positions on the presentation surface, would be to scatter more than one object on the presentation surface and produce an image thus showing these objects in several different orientation poses. In such a case, the vision algorithm must also be capable of producing separate images of the object in its different orientation poses. One complication that may occur is that two or more objects may be lumped together, and this should be handled at some stage in the process.
Both these alternative ways of producing an image may be used in connection with the present invention, alone or in combination.
The positioning of an object 5 on a presentation surface 3 may be done in different ways. It may be performed by an operator placing an object 5 in a component feeder that automatically transfers the object, i.e. a component, from a storage container 32 to a presentation surface 3 by means of a transfer arrangement 35 of the component feeder.
Alternatively, the object 5 may be manually positioned initially by an operator throwing it onto the presentation surface 3. For both these cases, the object may be automatically recirculated and the component feeder may thus be of the type that is capable of automatically recirculating the object. See e.g. the example of the component feeder illustrated in Figs. 4a-4c.
Another way of positioning the object 5 on a presentation surface 3 in order to produce a plurality of images of the object, can be to place an object on the presentation surface and then shake the presentation surface between each image such that the object changes its position.
Alternatively, the positioning of an object on a presentation surface may be done entirely manually, by repeatedly having an operator throwing the object onto the presentation surface. E.g. a manual implementation of the method is used on a simple presentation surface that is not part of any component feeder. In all variants, the object 5 is randomly positioned on the presentation surface 3.
In the next step (200), the method comprises forming groups of images that can be considered similar to each other, such that each group of images represents one orientation pose for the object. This is done after a number of image cycles having been performed that can be considered sufficient for the purpose. According to one embodiment, the forming of groups of the images is done by using cluster analysis, and in particular using a cluster analysis algorithm based on a density-based clustering model. Examples of such density-based clustering models are OPTICS and DBSCAN with algorithms that can be used. The details of such density-base clustering models are not described here since they are previously known and easily accessible.
In order to use such a density-based clustering model, each produced image is compared with one or more images stored in an image library, comprising at least one image of the object. The comparison will result in a distance between the images in each pair of images, which distance represents the degree of similarity. If the distance is long, the similarity is less, and vice versa. Thus, for each comparison a distance is assigned to the compared pair of images comprising the produced image and the concerned image from the image library, which distance reflects a degree of similarity between the compared pair of images. If using a broader term, this distance can be said to constitute a score value that reflects the degree of similarity between the compared pair of images.
An image library is initially set up comprising at least one image. According to one embodiment, the image library is initially set up by performing the image cycle once and storing the produced image in the image library. Thereby is obtained an initial image library containing one image of the object. Each new produced image is then compared with previously stored images in the image library. Generally this would also involve that each new produced image is stored in the image library, when the comparison has been made. A library will thus be built up from images corresponding to the appearances of the object in its different orientation poses. However, there may be some exceptions in terms of images that are not to be stored in the image library, as will be explained later.
The comparison between two images may be made in many different ways and using different methods and algorithms. The goal is to obtain the best fit between the two compared images. One method may e.g. be to centre one image on top of the other and measure the extent of overlapping areas between the two images. In order to do so, the images may have to be rotated in relation to each other, since they may in fact be two images of the object in one and the same orientation pose but rotated in relation to each other. If the overlap is total, and the images are identical, they represent one and the same orientation pose. Another method may be to use the ratio between the overlap area and the union area of the two images. The so called score values may be based on concrete features or on abstract features and there will exist many ways and methods to obtain score values. Naturally, combinations of different methods and algorithms may also be used. However, in the present context and the described embodiment, the comparison between images will be made in such a way that the degree of similarity is represented by a distance between the two compared images of the pair.
Each new produced image is stored in the image library such that the image library will also contain information about all allocated distances for the produced image that have been obtained in the image pair comparison process with other images. As part of the image library, it will then be compared with every new produced image.
The forming of groups of images that can be considered similar to each other is then based on the distances between the images. According to the described embodiment, a cluster analysis algorithm based on a density-based clustering model is used, for example OPTICS. The distance between the pairs of images are stored in a matrix N*N, where N is the number of images. The value (i,j) in the matrix corresponds to the distance from image i to image j in the image library. The matrix is thus symmetrical and has only zeros on the diagonal. The algorithm OPTICS uses this distance matrix and extracts a graph of which an example is shown in Fig. 2b. The example of the cluster analysis comprises three orientation poses 1 -3. Each image is given an order (x axis) and a "reachability distance" (y axis) which corresponds to the proximity to previous images with a lower order. Thus, the cavities in the graph of Fig. 2b correspond to groups of similar images. The areas in the graph marked as "Other" represent images that cannot be allocated to one of the groups since the value for "reachability distance" is too high.
The next method step comprises evaluating the frequency of the images in each group, and thereby obtaining the frequency of each orientation pose (300). The evaluation would usually be done by determining, e.g. counting, the number of images in each group and thus obtaining the frequency. By frequency is meant how often a certain orientation pose occurs in terms of how many images there are in each group, where each group represents one orientation pose.
Method steps (200) and (300) and the related measures described above are preferably performed by a computer unit.
The next step comprises identifying a preferred orientation pose based on the frequency of each orientation pose (400). The final identification of a preferred orientation pose may for example be made automatically by simply choosing the orientation pose that is the most frequent. To this end, an embodiment of the method may comprise establishing an orientation pose ranking list based on the frequency of each orientation pose. However, in the example of a robot application, to have an automated identification and selection requires that the particular orientation pose is such that the object can really be picked by a robot tool. Since it is not always the case that all orientation poses will make the object pickable, e.g. by a robot tool, another alternative is to involve an operator in identifying the preferred orientation pose. The frequency for each orientation pose of the object is then presented to the operator in some way. The operator can then disregard any orientation pose that for one reason or the other is not suitable for picking, and select the orientation pose that has the highest frequency among the possible pickable orientation poses as the preferred orientation pose. Sometimes it may be feasible to select more than one orientation poses.
In order to assist an operator in identifying and selecting the preferred orientation pose or poses, an embodiment of the method may comprise presenting the orientation pose ranking list to an operator and having the operator choose a preferred orientation pose from the ranking list. This may for example be done as illustrated in Fig. 3. The shown ranking list comprises bars reflecting the frequency of each orientation pose and underneath each bar is shown an image of the object in the concerned orientation pose. This information may e.g. be presented on a tablet computer 40. The operator can then select one or more preferred orientation poses, or pick poses as may be a more descriptive term for the operator, and the image of that pose or poses will be used by e.g. the robot control system such that the robot tool will primarily be directed to pick objects having the preferred orientation pose or poses. According to an alternative embodiment, the image library may be initially set up by storing, in advance, previously obtained reference images of the object in its orientation poses in the image library, thereby obtaining an initial image library. The procedure of forming groups of images is in principle the same but instead of a clustering algorithm a simpler algorithm can be used and only the distances of the produced images to the reference images are needed. If there are M reference images of predefined orientation poses, the new produced images are directly sorted into M+1 groups. If there is at least one distance to one of the reference images that is low enough, the produced image is allocated to the group of the reference image to which it is closest. Otherwise the image is put in a group "unknown". Information about the frequencies of the predefined orientation poses can then be displayed to the operator who can then choose the one he wants to teach the robot as the grasping position. In such a case there is no need for a cluster analysis to distinguish groups, even though it may be used in addition, if e.g. it is desirable to find out about additional orientation poses that are not represented in the reference images. It should be mentioned that, generally, it will be possible to set up limitations of different kinds such that images that are not sufficiently similar to the images in the image library, based on the set up limitations, can be discarded as noise. These will not be part of any group representing an orientation pose.
The method according to the present invention may be implemented in a component feeder comprising a presentation surface on which objects are presented, an imaging system for producing images of the object when placed on the presentation surface, and a computer unit arranged to form groups of images that are considered similar to each other, such that each group of images represents one orientation pose for the object, and to evaluate the frequency of the images in each group in order to provide information about the frequency of the respective orientation poses.
An example of an embodiment of a component feeder is illustrated in Figs. 4a-4c, in a lateral view in cross section. The component feeder 1 comprises a container 32 for bulk storage of objects 5, for example fairly small components that are suitable to be picked by a robot tool. The feeder may for example be placed in a production line where robots are used to pick up components that are to be assembled with other components or mounted on apparatuses. In the figures is only shown one object 5, since the figures illustrate the component feeder when used in accordance with the present invention. However, in its normal use, a bulk of objects will be stored in the container. A transfer arrangement 35 is provided for transferring objects from the container 32 to the presentation surface 3 where the objects are presented in order for a robot tool to be able to pick an object that is pickable. By pickable is generally meant that the object in question is suitably oriented to be pickable by the robot tool. Such a presentation surface is also often referred to as a component pick surface. The transfer arrangement comprises e.g. a lift 36 arranged in the container 32, by means of which objects placed inside the container may be vertically elevated up from the container. The lift 36 has a lift platform 38, which is essentially horizontal. When the lift platform is at its bottom level, at the bottom of the container, objects fall onto the lift platform 38 and will then be transported by the lift up to an upper level of the lift. The container 32 has an opening 40 which is at least partly covered by a plate 42. The plate 42 is rigid and is capable of being moved, e.g. back and forth, in some type of guide arrangement of a conventional design, not shown in detail. The upper surface of the plate is configured to form a presentation surface 3. When the lift 36 is at its upper level, the lift platform 38 will be adjacent to the plate 42 and approximately level with the presentation surface. Objects are transferred from the lift platform 38 to the plate 42 and the presentation surface 3 by means of some type of transfer device 46. At least a part of the plate 42 comprises a transparent presentation surface 3.
The plate 42 is retractable from at least part of the opening 40 as illustrated in Figs. 4a- 4c. The plate is moveable by means of an actuator device 48, which can give the plate a back and forth movement in its longitudinal direction. By movement of the plate in different modes, the objects lying on the plate can be made to move in the longitudinal directions of the plate and they can also be reoriented. Furthermore, when the plate 42 is retracted, objects lying on the plate will fall back into the container, and consequently the objects can be recirculated.
The component feeder 1 comprises an imaging system 7, of which at least the vision system 9 is arranged underneath the plate 42, such that the transparent presentation surface 3 of the imaging system forms at least a part of the plate 42. In the illustrated embodiment, the imaging system comprises a vision system 9, which in this case is a contact image scanner system (CIS), as shown in Fig. 5. A CIS image scanner module 19, i.e. a module comprising the vision system, is connected to the actuator device 48 and movable by means of the actuator device, in the longitudinal direction of the plate and can thus scan objects 5 lying on the presentation surface 3 forming part of the plate 42. The image scanner module 19 can be moved by the actuator independently of the plate, as shown in Fig. 4b. In fig. 4a is shown how an object 5 is being transferred from the lift 36 to the plate 42 and the presentation surface 3. Fig. 4b illustrates how the image scanner module 19 now is moved independently underneath the plate 42, by means of the actuator 48, along its longitudinal direction, such that the object 5 that is placed on the presentation surface 3 forming part of the plate 42, is scanned by the image scanner of the imaging system. After scanning, the image scanner module 19 is returned to its rest position at the end of the plate 42 close to the lift 36. In order to return the object 5 lying on the presentation surface to the container, the plate 42 is then retracted from the opening 40 into the container, as shown in Fig. 4c, and the object 5 lying on the plate will fall back into the container. The object can then again be lifted up by the transfer arrangement 35 and the image cycle can be repeated as many times as desired.
The images obtained through the scanning are processed by the image processor module 51 , in order to form groups of images that are considered similar to each other, such that each group of images represents one orientation pose for the object, and to evaluate the frequency of the images in each group in order to provide information about the frequency of the respective orientation poses. In Fig. 6 is schematically illustrated an embodiment of a computer unit 50. The computer unit comprises an image processor module 51 that processes each taken image in order to produce a clean image of the objects, as described above. According to an embodiment, the computer unit 50 further comprises a comparing processor module 52 arranged to compare each produced image with one or more images stored in an image library, and for each comparison assigning a distance value to the compared pair of images, which reflects a degree of similarity between the compared pair of images. According to the embodiment, the computer unit further comprises a cluster analysis module 53 performing the formation of groups of images that are considered similar. As mentioned, the cluster analysis module may be of density-based clustering model type, e.g. OPTICS or DBSCAN. The computer unit further comprises a frequency evaluation module 54 that evaluates the frequency of the images in each group, thereby obtaining the frequency of each orientation pose.
The computer unit may optionally comprise a ranking list module 55 that establishes an orientation pose ranking list based on the frequency of each orientation pose. In one
embodiment, the ranking list module may also include a predetermined selection of the most frequent orientation pose or poses as the preferred orientation pose or poses. The computer unit may further comprise a presentation interface module 56 for presenting the orientation pose ranking list to an operator and for enabling the operator to choose a preferred orientation pose. According to one embodiment, this may be implemented in a separate device 40. This device may e.g. be a tablet computer as previously described. The computer unit may further include different modules for setting up an initial image library. Finally, the computer unit includes at least one memory module 58 e.g. for storing images in the image library.
It should be noted that in the context of the present disclosure the term "image" shall be considered to cover not only a visible illustration of a thing, but also any information on the basis of which such visible illustration can be generated. For example, the imaging system 7 provides numerical information on the basis of which a visible illustration of an object 5 can be generated. However, it may not be necessary to generate the visible illustration for the purposes of the present invention but processing of the numerical information may suffice. Moreover, the provision of the images may be based on other physical phenomena than visible light. The plate 42 can thereby be replaced by any suitable planar plate that can either be transparent or opaque.
Moreover, in the context of the present disclosure the term "object" shall be considered to cover not only a given object but also other objects identical to the given object. An expression "a plurality of images of the object" may thereby refer to images of a same object, to images of different but identical objects, or to a combination of the two.
The invention shall not be considered limited to the illustrated embodiments, but can be modified and altered in many ways, as realised by a person skilled in the art, without departing from the scope defined in the appended claims.

Claims

Patent Claims
1. A method for identification of a preferred orientation pose for an object, comprising the following steps:
i. producing a plurality of images of the object positioned in different orientation poses on a presentation surface (100),
ii. forming groups of images that are considered similar to each other, such that each
formed group of images represents one orientation pose for the object (200), iii. evaluating the frequency of the images in each group, and thereby obtaining the
frequency of each orientation pose (300), and
iv. identifying a preferred orientation pose based on the frequency of each orientation pose (400).
2. The method according to claim 1 , comprising establishing an orientation pose ranking list based on the frequency of each orientation pose.
3. The method according to claim 2, comprising presenting the orientation pose ranking list to an operator and having the operator choose a preferred orientation pose from the ranking list.
4. The method according to any one of the preceding claims, comprising comparing each produced image with one or more images stored in an image library, and for each comparison assigning a score value to the compared pair of images comprising the produced image and the concerned image from the image library, which score value reflects a degree of similarity between the compared pair of images, and forming said groups of images that are considered similar to each other, based on the score value.
5. The method according to any one of the preceding claims, comprising using cluster analysis to form groups of images that are considered similar.
6. The method according to claim 5, comprising using a cluster analysis algorithm based on a density-based clustering model.
7. The method according to any one of the preceding claims, comprising producing the image of the object by means of an imaging system comprising a contact image sensor scanner.
8. The method according to any one of the preceding claims, comprising automatically recirculating one object in a component feeder comprising said presentation surface, and producing an image of the object each time the object is positioned on the presentation surface.
9. A component feeder (1 ) comprising a presentation surface (3) on which objects (5) are presented,
and further comprising
- an imaging system (7) for producing images of the object when placed on the presentation surface,
- a computer unit (50) arranged to
- form groups of images that are considered similar to each other, such that each group of images represents one orientation pose for the object, and
- evaluate the frequency of the images in each group in order to provide information about the frequency of the respective orientation poses.
10. The component feeder according to claim 9, wherein the computer unit (50) is arranged to establish an orientation pose ranking list based on the frequency of each orientation pose.
1 1. The component feeder according to claim 10, wherein it comprises a device (40) for presenting the orientation pose ranking list to an operator and for enabling the operator to choose a preferred orientation pose.
12. The component feeder according to any one of claims 9-1 1 , wherein the computer unit (50) is arranged to compare each produced image with one or more images stored in an image library, and for each comparison assigning a score value to the compared pair of images, which score value reflects a degree of similarity between the compared pair of images, and to form said groups of images that are considered similar to each other based on the score value.
13. The component feeder according to any one of claims 9-12, wherein the computer unit (50) comprises a cluster analysis module (53) performing the formation of groups of images that are considered similar.
14. The component feeder according to any one of claims 9-13, wherein the presentation surface (3) is transparent and the imaging system (7) comprises a contact image sensor scanner (19) located underneath the transparent presentation surface (3).
15. The component feeder according to any one of claims 9-14, wherein it comprises an arrangement (35, 36, 38) for automatically recirculating the object in the component feeder.
PCT/EP2015/080766 2015-12-21 2015-12-21 An identification method and apparatus of the most probable poses of an object WO2017108074A1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
PCT/EP2015/080766 WO2017108074A1 (en) 2015-12-21 2015-12-21 An identification method and apparatus of the most probable poses of an object

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/EP2015/080766 WO2017108074A1 (en) 2015-12-21 2015-12-21 An identification method and apparatus of the most probable poses of an object

Publications (1)

Publication Number Publication Date
WO2017108074A1 true WO2017108074A1 (en) 2017-06-29

Family

ID=55024137

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/EP2015/080766 WO2017108074A1 (en) 2015-12-21 2015-12-21 An identification method and apparatus of the most probable poses of an object

Country Status (1)

Country Link
WO (1) WO2017108074A1 (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109670513A (en) * 2018-11-27 2019-04-23 西安交通大学 A kind of piston attitude detecting method based on bag of words and support vector machines
WO2020142496A1 (en) * 2018-12-31 2020-07-09 Abb Schweiz Ag Application-case driven robot object learning

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
IN KYU PARK ET AL: "Fast and automatic object pose estimation for range images on the GPU", MACHINE VISION AND APPLICATIONS, SPRINGER, BERLIN, DE, vol. 21, no. 5, 5 August 2009 (2009-08-05), pages 749 - 766, XP019836940, ISSN: 1432-1769 *

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109670513A (en) * 2018-11-27 2019-04-23 西安交通大学 A kind of piston attitude detecting method based on bag of words and support vector machines
WO2020142496A1 (en) * 2018-12-31 2020-07-09 Abb Schweiz Ag Application-case driven robot object learning

Similar Documents

Publication Publication Date Title
Nerakae et al. Using machine vision for flexible automatic assembly system
CN108290286A (en) Method for instructing industrial robot to pick up part
EP2045772A2 (en) Apparatus for picking up objects
JP6727228B2 (en) Lead tip position image recognition method and lead tip position image recognition system
JPS641832B2 (en)
EP2693218B1 (en) Process und Apparatus for determining and testing an arrangement of laboratory articles on a work bench of a laboratory work station
DE112017007392T5 (en) Control device, gripping system, distribution system, program, control process and manufacturing process
DE102017108327B4 (en) Item allocation device
CN114758236A (en) Non-specific shape object identification, positioning and manipulator grabbing system and method
DE112021001419T5 (en) Admission system and procedures
KR20210091189A (en) Optimization of setup steps in automated visual inspection processes
WO2017108074A1 (en) An identification method and apparatus of the most probable poses of an object
EP1089229A2 (en) Image processing apparatus, image processing method and visual inspection system
DE202011004401U1 (en) Control and monitoring of a storage and picking system by movement and language
CN110298877A (en) A kind of the determination method, apparatus and electronic equipment of object dimensional pose
CN116030449A (en) Automatic sorting method and automatic sorting system for laser cutting pieces
DE102021114192A1 (en) Product assembly machine with visual inspection station
DE102021108645A1 (en) Visual inspection system and procedure for inspecting parts
US11557027B2 (en) Vision inspection system and method of inspecting parts
CN110517208A (en) Coordinate system correlations method and system
US20230191634A1 (en) Multistep Visual Assistance for Automated Inspection
CN110270516A (en) Detection system, detection method and storage equipment
JP2020062707A (en) Information processing device
CN114928691A (en) Image processing apparatus and method, production system, product manufacturing method, and medium
Cheng Design of Visual Search and Positioning System Based on Labview+ PLC

Legal Events

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

Ref document number: 15816468

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 15816468

Country of ref document: EP

Kind code of ref document: A1