JP7373700B2 - Image processing device, bin picking system, image processing method, image processing program, control method and control program - Google Patents

Image processing device, bin picking system, image processing method, image processing program, control method and control program Download PDF

Info

Publication number
JP7373700B2
JP7373700B2 JP2019039831A JP2019039831A JP7373700B2 JP 7373700 B2 JP7373700 B2 JP 7373700B2 JP 2019039831 A JP2019039831 A JP 2019039831A JP 2019039831 A JP2019039831 A JP 2019039831A JP 7373700 B2 JP7373700 B2 JP 7373700B2
Authority
JP
Japan
Prior art keywords
point cloud
nodes
cloud data
clustering
image generation
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2019039831A
Other languages
Japanese (ja)
Other versions
JP2019153309A (en
Inventor
翔大 平間
隆一 上田
友紀子 中川
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
RT CORPORATION
Original Assignee
RT CORPORATION
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 RT CORPORATION filed Critical RT CORPORATION
Publication of JP2019153309A publication Critical patent/JP2019153309A/en
Application granted granted Critical
Publication of JP7373700B2 publication Critical patent/JP7373700B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Length Measuring Devices By Optical Means (AREA)
  • Manipulator (AREA)
  • Image Analysis (AREA)

Description

本発明は、画像処理装置、ビンピッキングシステム、画像処理方法、画像処理プログラムに関する。 The present invention relates to an image processing device, a bin picking system, an image processing method, and an image processing program.

例えば、工場でライン生産される弁当に盛り付けられる食品は、ばら積みにされて供給されることが多い。ここで、規格化された工業製品の場合は、製品の立体モデル等と比較して1つの操作対象を認識することもできるが、食品は一般的に不定形であるため比較対象となる基準を設定することが難しい。 For example, food that is packed into lunch boxes that are produced on a line at a factory is often supplied in bulk. Here, in the case of standardized industrial products, it is possible to recognize a single operation target by comparing it with a three-dimensional model of the product, etc., but since food products are generally amorphous, there is no standard for comparison. Difficult to configure.

従来、不定形な食品の一例である唐揚げを検出する手法が提案されている(例えば、非特許文献1)。本技術では、VCCS(Voxel Cloud Connectivity Segmentation)とグ
ラフカットを用いて、ばら積みされた唐揚げから一個体の領域のセグメンテーションを行っている。
Conventionally, a method for detecting fried chicken, which is an example of an irregularly shaped food, has been proposed (for example, Non-Patent Document 1). This technology uses VCCS (Voxel Cloud Connectivity Segmentation) and graph cuts to segment the area of a single individual from a bulk pile of fried chicken.

特開2016-045088号公報Japanese Patent Application Publication No. 2016-045088

福地伸晃, 橋本浩一, "形状モデルを用いないばら積みシーンの物体検出," 第18 回システムインテグレーション部門講演会, pp. 632-637, 2017.Nobuaki Fukuchi, Koichi Hashimoto, "Object detection in bulk loading scene without using shape model," 18th System Integration Division Conference, pp. 632-637, 2017. J. Papon, A. Abramov, M. Schoeler and F. Wrgtter, "Voxel Cloud Connectivity Segmentation - Supervoxels for Point Clouds," IEEE Conference on Computer Vision and Pattern Recognition, pp. 2027-2034, 2013.J. Papon, A. Abramov, M. Schoeler and F. Wrgtter, "Voxel Cloud Connectivity Segmentation - Supervoxels for Point Clouds," IEEE Conference on Computer Vision and Pattern Recognition, pp. 2027-2034, 2013. Y. Y. Boykov and M. P. Jolly, "Interactive graph cuts for optimal boundary & region segmentation of objects in N-D images," Proc. of IEEE International Conference on Computer Vision, Vol. 1, pp. 105-112, 2001.Y. Y. Boykov and M. P. Jolly, "Interactive graph cuts for optimal boundary & region segmentation of objects in N-D images," Proc. of IEEE International Conference on Computer Vision, Vol. 1, pp. 105-112, 2001. E.J. Newman, Mark and Girvan, Michelle, "Finding and Evaluating Community Structure in Networks," Physical review. E, Statistical, nonlinear, and soft matter physics, Vol. 69, pp. 026113, 2004.E.J. Newman, Mark and Girvan, Michelle, "Finding and Evaluating Community Structure in Networks," Physical review. E, Statistical, nonlinear, and soft matter physics, Vol. 69, pp. 026113, 2004. Vincent D. Blondel, Jean-Loup Guillaume, Renaud Lambiotte and Etienne Lefebvre, "Fast unfolding of communities in large networks," Journal of Statistical Mechanics: Theory and Experiment, Vol. 2008, No. 10, P. 10008, 2008.Vincent D. Blondel, Jean-Loup Guillaume, Renaud Lambiotte and Etienne Lefebvre, "Fast unfolding of communities in large networks," Journal of Statistical Mechanics: Theory and Experiment, Vol. 2008, No. 10, P. 10008, 2008. 平間翔大, 中川友紀子, 中川範晃, 上田隆一, "力制御マニピュレータによる食品の操作―深層学習による不定形な揚げ物の検出," 第17回計測自動制御学会システムインテグレーション部門講演会, pp. 2478-2481, 2016.Shota Hirama, Yukiko Nakagawa, Noriaki Nakagawa, Ryuichi Ueda, "Manipulation of food using force-controlled manipulators - Detection of irregularly shaped fried foods using deep learning," 17th Society of Instrument and Control Engineers System Integration Division Conference, pp. 2478 -2481, 2016.

例えばVCCS及びグラフカットを用いる手法は、検出対象である唐揚げの表面積や閾値など、多くのパラメータを必要とする。ここで、例えば工場で利用する場合は、パラメータが多いと異なる環境に対応できないおそれがある。 For example, the method using VCCS and graph cuts requires many parameters such as the surface area of fried chicken to be detected and a threshold value. Here, for example, when used in a factory, if there are many parameters, there is a risk that it will not be able to cope with different environments.

本発明は、ばら積みされた対象物から一個体を検出する手法に関して汎用性を向上させ
ることを目的とする。
An object of the present invention is to improve the versatility of a method for detecting an individual from a pile of objects.

画像処理装置は、ばら積みされた複数の対象物までの距離に基づいて生成される点を複数含む点群データを出力する距離画像生成装置から点群データを取得する点群情報取得部と、点群データをモデル化して生成されるノード群に対してクラスタリングを行い、1つの対象物が存在する領域を特定する対象検出部とを有する。 The image processing device includes a point cloud information acquisition unit that acquires point cloud data from a distance image generation device that outputs point cloud data including a plurality of points generated based on distances to a plurality of objects stacked in bulk; The object detection unit performs clustering on a node group generated by modeling the group data, and specifies a region where one object exists.

クラスタリングを用いる手法によれば、不定型なワークであっても1つの対象物が存在する領域を識別することができる。また、例えばグラフカットを用いるような手法と比べ、ワークの種別に応じた多くのパラメータを必要とせず、汎用性を向上させることができる。 According to a method using clustering, it is possible to identify a region where one object exists even in an irregularly shaped work. Furthermore, compared to a method using graph cuts, for example, this method does not require many parameters depending on the type of work, and can improve versatility.

また、クラスタリングは、ノード間の距離に基づいて所定の評価関数であるモジュラリティを最大化するようにノードを分類するコミュニティ検出手法を用いて実行されるものであってもよい。具体的には、いわゆるネットワークにおけるコミュニティ検出手法により、クラスタリングできる。 Further, clustering may be performed using a community detection method that classifies nodes so as to maximize modularity, which is a predetermined evaluation function, based on distances between nodes. Specifically, clustering can be performed using a so-called community detection method in a network.

また、クラスタリングは、Louvain法により行われるものであってもよい。このようにすれば、局所的な最適化と集約を繰り返すことで処理に要する時間を短縮することができる。 Further, the clustering may be performed using the Louvain method. In this way, the time required for processing can be shortened by repeating local optimization and aggregation.

また、他の側面に係るビンピッキングシステムは、上述した画像処理装置と、距離画像生成装置と、対象検出部が特定した領域に存在する対象物を移動させるマニピュレータとを備える。 Further, a bin picking system according to another aspect includes the above-described image processing device, a distance image generation device, and a manipulator that moves a target object present in the area specified by the target detection unit.

このようにすれば、ばら積みされた不定型なワークを識別し、マニピュレータで移動させるシステムを実現することができる。 In this way, it is possible to realize a system that identifies irregularly shaped workpieces stacked in bulk and moves them using a manipulator.

また、1つの対象物は、マニピュレータを基準として他の対象物に隠れていない、ばら積みされた複数の対象物の表層に位置する対象物であってもよい。このようにすれば、ばら積みされた山をできるだけ崩さずに移動させることができる1つの対象物を特定することができる。 Furthermore, one object may be an object located on the surface of a plurality of objects stacked in bulk and not hidden behind other objects with the manipulator as a reference. In this way, it is possible to specify one object that can be moved without causing the pile of bulk materials to collapse as much as possible.

なお、課題を解決するための手段に記載の内容は、本発明の課題や技術的思想を逸脱しない範囲で可能な限り組み合わせることができる。また、課題を解決するための手段の内容は、コンピュータ等の装置若しくは複数の装置を含むシステム、コンピュータが実行する方法、又はコンピュータに実行させるプログラムとして提供することができる。なお、プログラムを保持する記録媒体を提供するようにしてもよい。 Note that the contents described in the means for solving the problems can be combined as much as possible without departing from the problems and technical idea of the present invention. Further, the content of the means for solving the problem can be provided as a device such as a computer, a system including a plurality of devices, a method executed by a computer, or a program executed by a computer. Note that a recording medium holding the program may be provided.

ばら積みされた対象物から一個体を検出する手法に関して汎用性を向上させることができる。 It is possible to improve the versatility of the method of detecting an individual from a pile of objects.

ビンピッキングシステムの一例を示す模式的な側面図である。FIG. 1 is a schematic side view showing an example of a bin picking system. ビンピッキングシステムの構成の一例を示す機能ブロック図である。FIG. 1 is a functional block diagram showing an example of the configuration of a bin picking system. 位置情報表示処理の一例を示す処理フロー図である。FIG. 3 is a processing flow diagram showing an example of position information display processing. ノード群の一例を示す図である。FIG. 3 is a diagram showing an example of a node group. エッジが設定されたノード群の一例を示す図である。FIG. 3 is a diagram showing an example of a node group in which edges are set. クラスタに分類されたノード群の一例を示す図である。FIG. 3 is a diagram showing an example of a group of nodes classified into clusters. 操作対象のノード群の一例を示す図である。FIG. 3 is a diagram illustrating an example of a group of nodes to be operated. 操作対象のワーク5に属するノード群と、これらが内接する三次元立体及び重心の一例を示す斜視図である。5 is a perspective view showing an example of a group of nodes belonging to a workpiece 5 to be operated, a three-dimensional solid inscribed therein, and a center of gravity. FIG. ソフトクラスタリングにより分類されたノード群の一例を示す図である。FIG. 3 is a diagram showing an example of a node group classified by soft clustering.

以下、図面を参照して本発明を実施するための形態について説明する。 Hereinafter, embodiments for carrying out the present invention will be described with reference to the drawings.

<装置構成>
図1は、本実施形態に係るビンピッキングシステムの一例を示す模式的な側面図である。図1のビンピッキングシステム1は、RGB-Dカメラ2と、マニピュレータ3と、制御装置4とを含む。また、ビンピッキングシステム1は、唐揚げ等のような不定形のワーク5がばら積みされて形成された山から1つのワーク5を取り出し、例えば弁当箱のような容器(図示せず)に移動させて盛りつける。
<Device configuration>
FIG. 1 is a schematic side view showing an example of a bin picking system according to this embodiment. The bin picking system 1 in FIG. 1 includes an RGB-D camera 2, a manipulator 3, and a control device 4. Moreover, the bin picking system 1 picks up one workpiece 5 from a pile formed by bulk workpieces 5 such as fried chicken, and moves it to a container (not shown) such as a lunch box, for example. Serve.

RGB-Dカメラ2は、CMOS等を用いた固体撮像素子と、赤外線プロジェクタ及びセンサ等を用いた深度センサとを備える距離画像生成装置であり、カラー(RGB)画像と点群データ(ポイントクラウド)とを出力する。カラー画像は、画像内の位置に対して色を示す情報を有するピクセルを複数含むラスタデータである。点群データは、カメラから撮像対象の表面までの距離(奥行)と撮像対象の色を示す情報を有する点を複数含む。 The RGB-D camera 2 is a distance image generation device that includes a solid-state image sensor using CMOS or the like, and a depth sensor using an infrared projector, sensor, etc., and generates color (RGB) images and point cloud data. Outputs . A color image is raster data that includes a plurality of pixels that have information indicating a color relative to a position within the image. The point cloud data includes a plurality of points having information indicating the distance (depth) from the camera to the surface of the object to be imaged and the color of the object to be imaged.

マニピュレータ3は、複数軸の自由度を持ったロボットアームである。マニピュレータ3は、制御装置4から受ける信号によって制御される。また、マニピュレータ3は、アームの先端にグリッパ(2指グリッパ)31を備えており、対象物を把持して移動させることができる。また、マニピュレータ3は、対象物を把持しているか否か検知するセンサをさらに備えるものであってもよい。 The manipulator 3 is a robot arm with degrees of freedom in multiple axes. Manipulator 3 is controlled by signals received from control device 4 . Further, the manipulator 3 includes a gripper (two-finger gripper) 31 at the tip of the arm, and can grip and move an object. Moreover, the manipulator 3 may further include a sensor that detects whether or not it is gripping an object.

制御装置4は、RGB-Dカメラ2から取得する情報に基づいてマニピュレータ3の動作を制御するコンピュータである。制御装置4は、一般的なPC(Personal Computer)
やサーバ装置であってもよいし、RGB-Dカメラ2及びマニピュレータ3とのインターフェースを備えるマイクロコントローラであってもよい。また、制御装置4は、図示していないネットワークを介してRGB-Dカメラ2やマニピュレータ3と通信可能に接続される構成であってもよい。
The control device 4 is a computer that controls the operation of the manipulator 3 based on information obtained from the RGB-D camera 2. The control device 4 is a general PC (Personal Computer).
It may be a server device, or it may be a microcontroller having an interface with the RGB-D camera 2 and the manipulator 3. Further, the control device 4 may be configured to be communicably connected to the RGB-D camera 2 and the manipulator 3 via a network (not shown).

<機能構成>
図2は、ビンピッキングシステムの構成の一例を示す機能ブロック図である。制御装置4はコンピュータであり、入出力I/F(Interface)41と、記憶装置42と、プロセ
ッサ43と、バス又は信号線44とを備えている。
<Functional configuration>
FIG. 2 is a functional block diagram showing an example of the configuration of the bin picking system. The control device 4 is a computer and includes an input/output I/F (Interface) 41, a storage device 42, a processor 43, and a bus or signal line 44.

入出力I/F41は、所定の規格に従って通信可能にRGB-Dカメラ2と接続するためのインターフェース、及び所定の規格に従って通信可能にマニピュレータ3と接続するためのインターフェースを含む。 The input/output I/F 41 includes an interface for communicably connecting to the RGB-D camera 2 according to a predetermined standard, and an interface for communicably connecting to the manipulator 3 according to a predetermined standard.

記憶装置42は、RAM(Random Access Memory)やROM(Read Only Memory)等の主記憶装置及びHDD(Hard-disk Drive)やSSD(Solid State Drive)、フラッシュメモリ等の補助記憶装置(二次記憶装置)である。主記憶装置は、プロセッサが読み出したプログラムや他の装置との間で送受信される画像データ等を一時的に記憶したり、プロセッサの作業領域を確保したりする。補助記憶装置は、プロセッサが実行するプログラム等を記憶する。 The storage device 42 includes main storage devices such as RAM (Random Access Memory) and ROM (Read Only Memory), and auxiliary storage devices (secondary storage devices) such as HDD (Hard-disk Drive), SSD (Solid State Drive), and flash memory. equipment). The main storage device temporarily stores programs read by the processor, image data exchanged with other devices, and secures a work area for the processor. The auxiliary storage device stores programs and the like executed by the processor.

プロセッサ43は、CPU(Central Processing Unit)等の演算処理装置であり、プ
ログラムを実行することにより本実施の形態に係る各処理を行う。図2の例では、プロセッサ43内に機能ブロックを示している。プロセッサ43は、点群情報取得部431と、グラフ生成部432と、対象検出部433と、ロボット制御部434とを含む。なお、点群情報取得部431、グラフ生成部432、及び対象検出部433により、制御装置4は、RGB-Dカメラ2が取得する点群データを処理する画像処理装置として機能する。
The processor 43 is an arithmetic processing device such as a CPU (Central Processing Unit), and performs each process according to the present embodiment by executing a program. In the example of FIG. 2, functional blocks are shown within the processor 43. The processor 43 includes a point cloud information acquisition section 431, a graph generation section 432, an object detection section 433, and a robot control section 434. Note that the control device 4 functions as an image processing device that processes point cloud data acquired by the RGB-D camera 2 using the point cloud information acquisition unit 431, graph generation unit 432, and object detection unit 433.

点群情報取得部431は、入出力I/F41を介してRGB-Dカメラ2が出力する点群データを取得し、記憶装置42に格納する。 The point cloud information acquisition unit 431 acquires point cloud data output by the RGB-D camera 2 via the input/output I/F 41 and stores it in the storage device 42.

グラフ生成部432は、点群データの色や距離、明暗等に基づき、ボクセル(Voxel)によって三次元空間上のノードを生成する。また、グラフ生成部432は、所定のノード・エッジ探索手法を用いて、例えばノード間の距離が所定の範囲にある場合にエッジで接続する。 The graph generation unit 432 generates nodes in a three-dimensional space using voxels based on the color, distance, brightness, etc. of point cloud data. Further, the graph generation unit 432 uses a predetermined node/edge search method to connect nodes by edges, for example, when the distance between nodes is within a predetermined range.

対象検出部433は、各ノードに対しクラスタリングを行う。クラスタリングは、例えばLouvain法を用いて行うことができる。すなわち、対象検出部は、隣接するノード間でモジュラリティ(Modularity)の差分が最も大きくなるノード対を選択し、モジュラリティが変化しなくなるまで、選択されたノード対を同一のクラスタに統合して1つのノードに集約する処理を繰り返す。また、対象検出部433は、複数のクラスタのうちマニピュレータ3を基準として他の対象物に隠れていない、ばら積みされた頂上に位置するクラスタを、操作対象のワークとして特定する。 The target detection unit 433 performs clustering on each node. Clustering can be performed using, for example, the Louvain method. That is, the target detection unit selects the node pair with the largest difference in modularity between adjacent nodes, and integrates the selected node pair into the same cluster until the modularity no longer changes. Repeat the process of consolidating into one node. Furthermore, the object detection unit 433 identifies, among the plurality of clusters, a cluster located at the top of the bulk pile, which is not hidden by other objects with the manipulator 3 as a reference, as a work to be operated.

ロボット制御部434は、例えば、特定されたクラスタを構成する点群の重心を求め、マニピュレータ3のグリッパ31が把持する目標の位置を決定するとともに、点群が収まるようにグリッパ31を開く大きさを決定する。また、ロボット制御部434は、入出力I/F41を介して、マニピュレータ3に対し、対象のワークを把持して所定の場所へ移動させるよう操作するための信号を出力する。 For example, the robot control unit 434 determines the center of gravity of the point group forming the identified cluster, determines the position of the target to be gripped by the gripper 31 of the manipulator 3, and adjusts the size at which the gripper 31 is opened so that the point group is accommodated. Determine. Further, the robot control unit 434 outputs a signal to the manipulator 3 via the input/output I/F 41 to operate the manipulator 3 to grasp the target workpiece and move it to a predetermined location.

以上のような構成要素が、バス又は信号線44を介して接続されている。 The above components are connected via a bus or signal line 44.

<ピッキング処理>
図3は、本実施形態に係るピッキング処理方法の一例を示す処理フロー図である。なお、後述するS1~S4は、RGB-Dカメラ2が取得する点群データを処理する画像処理方法といえる。
<Picking process>
FIG. 3 is a processing flow diagram showing an example of the picking processing method according to the present embodiment. Note that S1 to S4, which will be described later, can be said to be an image processing method for processing point cloud data acquired by the RGB-D camera 2.

点群情報取得部431は、入出力I/F41を介して、RGB-Dカメラ2が生成する点群データを継続的に取得する(図3:S1)。本ステップでは、複数のワーク5やこれらが載置されるバット等の容器を含む撮像対象の点群データが取得される。 The point cloud information acquisition unit 431 continuously acquires point cloud data generated by the RGB-D camera 2 via the input/output I/F 41 (FIG. 3: S1). In this step, point cloud data of an imaging target including a plurality of works 5 and containers such as bats in which these are placed is acquired.

グラフ生成部432は、S1で取得した点群データを用いて、三次元空間上に配置されるノードとノード間を接続するエッジを含むグラフを生成する(S2)。本ステップでは、グラフ生成部432は、例えば、点群データから十分な空間分解能でランダムに(偏りなく)複数の点を選択し、対応するボクセルを生成する。また、所定範囲内に他のボクセルが存在しないボクセルや、色(色相、彩度、明度)が基準から大きく外れるボクセルは、削除する。このようにして、ノイズを除去すると共に、撮像対象をモデル化したノード群を生成し、処理対象のデータ量を軽減することができる。 The graph generation unit 432 uses the point group data acquired in S1 to generate a graph including nodes arranged in a three-dimensional space and edges connecting the nodes (S2). In this step, the graph generation unit 432 randomly (without bias) selects a plurality of points from the point cloud data with sufficient spatial resolution, and generates corresponding voxels. Further, voxels for which no other voxels exist within a predetermined range or voxels whose color (hue, saturation, brightness) greatly deviates from the standard are deleted. In this way, it is possible to remove noise, generate a node group that models the imaging target, and reduce the amount of data to be processed.

図4は、生成されたノード群(ボクセル)の一例を示す図である。図4の例では、模式
的にボクセルの各々を正方形で表している。また、図4は撮像対象の上方に位置するRGB-Dカメラ2から見た平面図であり、各ボクセルは奥行き(高さ)の値を持っているものとする。
FIG. 4 is a diagram showing an example of a generated node group (voxel). In the example of FIG. 4, each voxel is schematically represented by a square. Further, FIG. 4 is a plan view as seen from the RGB-D camera 2 located above the object to be imaged, and each voxel is assumed to have a depth (height) value.

また、グラフ生成部432は、例えばKD-木のような、所定のノード・エッジ探索手法を利用し、ノード間にエッジを設定する。例えば、ノード間の距離が所定の範囲内である場合に、エッジが設定される。なお、探索手法は特に限定されない。 Further, the graph generation unit 432 uses a predetermined node/edge search method such as a KD-tree to set edges between nodes. For example, an edge is set when the distance between nodes is within a predetermined range. Note that the search method is not particularly limited.

図5は、エッジが設定されたノード群の一例を示す図である。図5も、撮像対象を上から見た平面図である。また、図5の例では、図4に示したノード群に対し、距離が所定の範囲内であるノード同士を結ぶ実線のエッジが追加されている。 FIG. 5 is a diagram showing an example of a node group to which edges are set. FIG. 5 is also a plan view of the imaging target viewed from above. Further, in the example of FIG. 5, solid line edges connecting nodes whose distances are within a predetermined range are added to the node group shown in FIG. 4.

その後、対象検出部433は、ノードのクラスタリングを行う(図3:S3)。クラスタリング手法は特に限定されないが、いわゆるネットワークにおけるコミュニティ検出を利用することができる。例えばNewman法やLouvain法のような、モジュラリティの差分が大きくなる位置に境界を定め、クラスタ(コミュニティ)内でのモジュラリティが高くなるようにノードをクラスタリングするようにしてもよい。すなわち、所定の評価式であるモジュラリティに基づいて、ノード間の結合が密であると判定される場合は2つのノードを同一のクラスタに分類し、結合が疎であると判定される場合は2つのノードを異なるクラスタに分類することができる。 After that, the target detection unit 433 performs clustering of nodes (FIG. 3: S3). Although the clustering method is not particularly limited, so-called community detection in a network can be used. For example, boundaries may be set at positions where the difference in modularity becomes large, such as the Newman method or the Louvain method, and nodes may be clustered such that the modularity within the cluster (community) is high. In other words, based on modularity, which is a predetermined evaluation formula, if the connection between nodes is determined to be dense, two nodes are classified into the same cluster, and if the connection is determined to be sparse, the two nodes are classified into the same cluster. Two nodes can be classified into different clusters.

一般的に、モジュラリティQは、以下の式(1)によって算出することができる。

Figure 0007373700000001

なお、mはグラフ内のすべてのエッジの重みの総和である。Aijは、ノードiとノードjとの間のエッジの重みである。重みは、例えばノード間の距離が近いほど高くなるように設定する。k、kは、それぞれのノードi、ノードjの次数である。δはクロネッカーのデルタであり、δ(c,c)は、ノードiが属するクラスタc及びノードjが属するクラスタcが同一である場合は1であり、同一でない場合は0である。 Generally, the modularity Q can be calculated using the following equation (1).
Figure 0007373700000001

Note that m is the sum of weights of all edges in the graph. A ij is the weight of the edge between node i and node j. For example, the weight is set such that the closer the distance between nodes, the higher the weight. k i and k j are the degrees of node i and node j, respectively. δ is Kronecker's delta, and δ(c i , c j ) is 1 if the cluster c i to which node i belongs and the cluster c j to which node j belongs are the same, and 0 otherwise. .

具体的には、対象検出部433は、モジュラリティが増大するように複数のノードをクラスタとして統合すると共に、モジュラリティが増大しなくなるまで統合を繰り返す貪欲法により、ノード群をクラスタリングする。すなわち、S3において、対象検出部433は、各ノードについて、隣接するノード間を結合した場合にモジュラリティの差分(増分)が最も大きくなるノードを特定し、統合する。モジュラリティの差分ΔQは、以下の式(2)によって算出することができる。

Figure 0007373700000002

なお、mは、グラフ内のすべてのエッジの重みの総和である。Σinは、クラスタ内のエッジの重みの総和である。重みは、例えばノード間の距離が近いほど高くなるように設定する。Σtotは、クラスタ内のノードに入るエッジの重みの総和である。kは、ノー
ドiの次数である。ki,inは、ノードiからクラスタ内のノードまでのエッジの重みの総和である。なお、重みは、ノード間の距離のほか、RGB-Dカメラ2が出力する色の類似する度合い等を用いて設定するようにしてもよい。 Specifically, the target detection unit 433 clusters a group of nodes using a greedy method that integrates a plurality of nodes into a cluster so that the modularity increases, and repeats the integration until the modularity no longer increases. That is, in S3, the target detection unit 433 identifies, for each node, a node that has the largest difference (increment) in modularity when adjacent nodes are combined, and integrates the nodes. The modularity difference ΔQ can be calculated using the following equation (2).
Figure 0007373700000002

Note that m is the sum of weights of all edges in the graph. Σ in is the sum of the weights of the edges within the cluster. For example, the weight is set such that the closer the distance between nodes, the higher the weight. Σ tot is the sum of the weights of the edges that fall into the nodes in the cluster. k i is the degree of node i. k i,in is the sum of edge weights from node i to nodes in the cluster. Note that the weight may be set using the degree of similarity of colors output by the RGB-D camera 2, etc., in addition to the distance between nodes.

モジュラリティの差分ΔQは、クラスタにノードを追加する際、又はクラスタからノードを削除する際のモジュラリティの変化を評価するために利用することができる。したがって、一旦いずれかのクラスタに統合したノードを、他のノードに付け替えた場合のモジュラリティの変化も容易に算出することができる。また、対象検出部433は、ノードの統合及び付け替えによってモジュラリティが変化(増大)しなくなったと判断した場合に、S3のクラスタリング処理を終了する。 Modularity difference ΔQ can be used to evaluate changes in modularity when adding a node to a cluster or deleting a node from a cluster. Therefore, it is also possible to easily calculate changes in modularity when a node once integrated into any cluster is replaced with another node. Further, when the target detection unit 433 determines that the modularity no longer changes (increases) due to node integration and replacement, it ends the clustering process in S3.

例えばLouvain法のように局所的な最適化と集約を繰り返すことで、処理に要する時間を短縮することができる。 For example, by repeating local optimization and aggregation like the Louvain method, the time required for processing can be shortened.

図6は、クラスタに分類されたノード群の一例を示す図である。図6も、撮像対象を上から見た平面図である。また、図6の例では、同一のクラスタに属するノードに、同一のハッチングを付している。 FIG. 6 is a diagram showing an example of a group of nodes classified into clusters. FIG. 6 is also a plan view of the imaging target viewed from above. Furthermore, in the example of FIG. 6, nodes belonging to the same cluster are marked with the same hatching.

また、対象検出部433は、複数のクラスタから、操作対象のクラスタを決定する(図3:S4)。本ステップでは、対象検出部433は、ばら積みして形成された山の表層に位置するワーク5を特定する。具体的には、まず、RGB-Dカメラ2を基準とするカメラ視点座標系で表されるボクセルを、マニピュレータ3に対して予め定められた原点を基準とするロボット視点座標系に変換する。そして、ロボット視点座標系において、マニピュレータ3から見てワーク5を構成するボクセルが、他のワーク5を構成するボクセルに隠れていないものを操作対象とする。したがって、例えば山の頂上など、山の表層に存在するワークが操作対象として選択される。 Further, the target detection unit 433 determines a cluster to be operated from among the plurality of clusters (FIG. 3: S4). In this step, the object detection unit 433 identifies the work 5 located on the surface layer of a pile formed by stacking in bulk. Specifically, first, voxels expressed in a camera viewpoint coordinate system with the RGB-D camera 2 as a reference are converted into a robot viewpoint coordinate system with a predetermined origin for the manipulator 3 as a reference. Then, in the robot viewpoint coordinate system, voxels constituting the workpiece 5 seen from the manipulator 3 that are not hidden by voxels constituting other workpieces 5 are to be operated. Therefore, a workpiece existing on the surface of a mountain, such as the top of a mountain, is selected as an operation target.

図7は、操作対象のノード群の一例を示す図である。図7も、操作対象を上から見た平面図である。また、図7の例では、操作対象のノード群として、中央付近に存在すると判断されたワークに属するノード及びエッジを太い実線で示し、その他のワークに属するノード及びエッジを破線で示している。 FIG. 7 is a diagram illustrating an example of a node group to be operated. FIG. 7 is also a plan view of the operation target viewed from above. Further, in the example of FIG. 7, as a group of nodes to be operated, nodes and edges belonging to a workpiece determined to exist near the center are shown by thick solid lines, and nodes and edges belonging to other works are shown by broken lines.

また、ロボット制御部434は、操作対象のワークを操作する(図3:S5)。本ステップでは、ロボット制御部434は、入出力I/F41を介してマニピュレータ3を操作し、操作対象のワークを把持して所定の場所へ移動させる。具体的には、ロボット制御部434は、まず、想定されるワーク5の重心とグリッパ31を開くべき大きさを決定する。すなわち、操作対象として特定されたワーク5を構成するノード群を用いて重心の位置を算出する。なお、RGB-Dカメラ2が出力する撮像対象の点群データは、撮像対象の表面までの距離に基づいて生成されるため、ワーク5の裏側の形状を例えば対称であると推定して重心を求めるようにしてもよい。そして、ロボット制御部434は、重心を目標としてグリッパ31を移動させる。このとき、ロボット制御部434は、ノード群をすべて挟めるようにグリッパ31を開く大きさを制御する。なお、操作対象のワーク5に属するノード群が内接する直方体や楕円体、球等の三次元立体を求め、当該三次元立体を掴むようにロボット制御部434がマニピュレータ3を動作させるようにしてもよい。 Further, the robot control unit 434 operates the workpiece to be operated (FIG. 3: S5). In this step, the robot control unit 434 operates the manipulator 3 via the input/output I/F 41, grips the workpiece to be operated, and moves it to a predetermined location. Specifically, the robot control unit 434 first determines the assumed center of gravity of the workpiece 5 and the size at which the gripper 31 should be opened. That is, the position of the center of gravity is calculated using a group of nodes forming the workpiece 5 specified as the operation target. Note that since the point cloud data of the imaging target output by the RGB-D camera 2 is generated based on the distance to the surface of the imaging target, the shape of the back side of the workpiece 5 is estimated to be symmetrical, for example, and the center of gravity is determined. You may ask for it. Then, the robot control unit 434 moves the gripper 31 with the center of gravity as a target. At this time, the robot control unit 434 controls the opening size of the gripper 31 so that all the node groups can be held. Note that even if the robot control unit 434 operates the manipulator 3 to obtain a three-dimensional solid such as a rectangular parallelepiped, an ellipsoid, or a sphere in which a group of nodes belonging to the workpiece 5 to be manipulated is inscribed, and grasp the three-dimensional solid. good.

図8は、操作対象のワーク5に属するノード群と、これらが内接する三次元立体及び重心の一例を示す斜視図である。図8の正方形はノードである。破線の直方体は、ノード群が内接する立体の一例である。また、黒い円はノード群又は立体の重心である。2つの矢印は、例えば二指グリッパであるグリッパ31がワーク5を把持する方向を示す。 FIG. 8 is a perspective view showing an example of a group of nodes belonging to the workpiece 5 to be operated, a three-dimensional solid inscribed therein, and a center of gravity. The squares in FIG. 8 are nodes. A rectangular parallelepiped indicated by a broken line is an example of a solid in which a group of nodes is inscribed. Furthermore, the black circle is the center of gravity of the node group or the solid. The two arrows indicate the direction in which the gripper 31, which is a two-finger gripper, grips the workpiece 5, for example.

ロボット制御部434は、グリッパ31を動作させるモータの電流値と把持のための指の角度が指定範囲になれば掴めたと判断でき、指の角度及び電流値のいずれかが指定範囲にない場合は失敗したと判断できる。また、ロボット制御部434は、把持したワーク5を、例えば弁当箱のような容器に移動させて盛りつけるよう、マニピュレータ3を動作させる。 The robot control unit 434 can determine that a grip has been achieved if the current value of the motor that operates the gripper 31 and the angle of the fingers for gripping are within the specified range, and if either the finger angle or the current value is not within the specified range. It can be determined that it has failed. Furthermore, the robot control unit 434 operates the manipulator 3 to move the gripped workpiece 5 to a container such as a lunch box and to serve the workpiece 5 therein.

<効果>
ばら積みされた複数のワーク全体に基づいて生成された点群データに対して、クラスタリングを行うことにより一個体のワークを識別することができる。なお、クラスタリングは、ネットワークにおけるコミュニティ検出手法を利用することができ、ノード間の距離に基づいてモジュラリティ算出してもよい。このようにすれば、例えばグラフカットを用いるような手法と比べ、ワークの種別に応じた多くのパラメータを必要とせず、汎用性を向上させることができる。
<Effect>
By performing clustering on point cloud data generated based on a plurality of bulk works, it is possible to identify an individual work. Note that for clustering, a community detection method in a network can be used, and modularity may be calculated based on the distance between nodes. In this way, compared to a method using a graph cut, for example, many parameters depending on the type of work are not required, and versatility can be improved.

<変形例>
制御装置4は、インターネット等の通信網であるネットワークを介して、RGB-Dカメラ2及びマニピュレータ3と通信可能に接続される構成であってもよい。すなわち、RGB-Dカメラ2から取得した情報をクラウド上で処理する。また、マニピュレータ3は、いわゆるシンクライアントのように、ネットワークを介して送信される処理結果を出力する装置として機能する。このようにすれば、生産ラインに制御装置を設置する必要がなくなり、複数の生産ラインをそれぞれメンテナンスする手間も軽減される。
<Modified example>
The control device 4 may be configured to be communicably connected to the RGB-D camera 2 and the manipulator 3 via a network such as the Internet. That is, the information acquired from the RGB-D camera 2 is processed on the cloud. Further, the manipulator 3 functions as a device that outputs processing results transmitted via a network, like a so-called thin client. In this way, there is no need to install a control device on the production line, and the effort required to maintain each of the plurality of production lines is also reduced.

また、RGB-Dカメラ2が設置される場所は、ワーク5の直上には限られない。例えば、RGB-Dカメラ2は、マニピュレータ3を有するロボットと一体に設けられるものであってもよい。例えば人型のロボットの顔に相当する位置にRGB-Dカメラ2を設けるようにしてもよい。このような態様であれば、ワーク5を斜め上方から撮像する場合であっても、マニピュレータを基準として他の対象物に隠れていない位置に存在する一個体のワーク5を特定することができる。また、人間に混ざって生産ラインに導入し易い形状のロボットを実現できる。 Furthermore, the location where the RGB-D camera 2 is installed is not limited to directly above the workpiece 5. For example, the RGB-D camera 2 may be provided integrally with a robot having a manipulator 3. For example, the RGB-D camera 2 may be provided at a position corresponding to the face of a humanoid robot. With this aspect, even when the workpiece 5 is imaged from diagonally above, it is possible to specify a single workpiece 5 that is located at a position that is not hidden by other objects with the manipulator as a reference. Furthermore, it is possible to realize a robot with a shape that is easy to mix with humans and be introduced into a production line.

また、距離画像に含まれる点群データだけでなく、さらに触覚等のセンシングデータを取得してクラスタリングに利用してもよい。このようにすれば、マルチモーダルインターフェースを備えるロボットを実現することができる。 Furthermore, in addition to the point cloud data included in the distance image, sensing data such as tactile data may be acquired and used for clustering. In this way, a robot equipped with a multimodal interface can be realized.

<クラスタリングの変形例>
また、クラスタリングの手法は、Louvain法のようなハードクラスタリングには限定されない。ハードクラスタリングは、1つのノードに対して1つのクラスタを割り当てる手法である。例えば、1つのノードに対して複数のクラスタを割り当て得る手法であるソフトクラスタリングを用いるようにしてもよい。ソフトクラスタリングの例として、OCG(Overlapping Cluster Generator)やLink Communityが挙げられる。
<Variation of clustering>
Furthermore, the clustering method is not limited to hard clustering such as the Louvain method. Hard clustering is a method of assigning one cluster to one node. For example, soft clustering, which is a method of allocating multiple clusters to one node, may be used. Examples of soft clustering include OCG (Overlapping Cluster Generator) and Link Community.

図9は、ソフトクラスタリングにより分類されるノード群の一例を示す模式的な図である。図9は、山の頂上付近に複数のワークが存在する例を示している。また、各ノード内にハッチングで分類されたクラスタを示している。すなわち、複数のノードは、図中の上下左右に存在する4つのクラスタに分類されている。また、中央の1つのノードには4つのクラスタが割り当てられている。なお、ソフトクラスタリングにおいては、中央のノードは3以下のクラスタにも分類され得るものであり、また、中央の5つのノードが第5のクラスタにも分類され得る。 FIG. 9 is a schematic diagram showing an example of a node group classified by soft clustering. FIG. 9 shows an example where a plurality of works exist near the top of a mountain. Furthermore, clusters classified by hatching are shown within each node. That is, the plurality of nodes are classified into four clusters located on the top, bottom, left and right of the figure. Furthermore, four clusters are assigned to one central node. Note that in soft clustering, the central node can be classified into three or less clusters, and the five central nodes can also be classified into a fifth cluster.

ソフトクラスタリングは、例えば最も高い位置にあるノードを選択し、(1)選択され
ているノードが属するクラスタを抽出する処理、及び(2)抽出されたクラスタに属するノードを選択する処理を繰り返して行う。また、予め定められた規則に基づいて隣接するクラスタとの境界を検出する。境界付近のノードには2以上のクラスタを割り当てるようにしてもよい。また、点群データから求められる法線の向き等、幾何的な情報に基づいてクラスタ間の境界を検出してもよい。
Soft clustering, for example, selects the node at the highest position and repeats (1) the process of extracting the cluster to which the selected node belongs, and (2) the process of selecting the nodes that belong to the extracted cluster. . Furthermore, boundaries between adjacent clusters are detected based on predetermined rules. Two or more clusters may be assigned to nodes near the boundary. Alternatively, boundaries between clusters may be detected based on geometric information such as the direction of normal lines determined from point cloud data.

ソフトクラスタリングを利用することで、山の頂上付近に複数のワークが存在する場合など、様々な構造のグラフからコミュニティ検出を行う際の精度を向上させることができる。 By using soft clustering, it is possible to improve the accuracy when performing community detection from graphs with various structures, such as when multiple works exist near the top of a mountain.

<その他>
なお、上述した構成は一例であり、本発明は例示した構成に限定されない。上述した事項は、本発明の課題や技術的思想を逸脱しない範囲で適宜組み合わせて実施することができる。
<Others>
Note that the configuration described above is an example, and the present invention is not limited to the illustrated configuration. The above-mentioned matters can be implemented in appropriate combinations without departing from the problems and technical idea of the present invention.

また、本発明は上述の処理を実行するコンピュータプログラムを含む。さらに、当該プログラムを記録した、コンピュータ読み取り可能な記録媒体も、本発明の範疇に属する。当該プログラムが記録された記録媒体については、コンピュータに、この記録媒体のプログラムを読み込ませて実行させることにより、上述の処理が可能となる。 The present invention also includes a computer program that executes the above-described process. Furthermore, a computer-readable recording medium on which the program is recorded also belongs to the scope of the present invention. Regarding the recording medium on which the program is recorded, the above-mentioned processing becomes possible by causing a computer to read and execute the program on the recording medium.

ここで、コンピュータ読み取り可能な記録媒体とは、データやプログラム等の情報を電気的、磁気的、光学的、機械的、または化学的作用によって蓄積し、コンピュータから読み取ることができる記録媒体をいう。このような記録媒体のうちコンピュータから取り外し可能なものとしては、フレキシブルディスク、光磁気ディスク、光ディスク、磁気テープ、メモリカード等がある。また、コンピュータに固定された記録媒体としては、ハードディスクドライブやROM等がある。 Here, the computer-readable recording medium refers to a recording medium that stores information such as data and programs by electrical, magnetic, optical, mechanical, or chemical action and can be read by a computer. Among such recording media, those that can be removed from the computer include flexible disks, magneto-optical disks, optical disks, magnetic tapes, and memory cards. Furthermore, examples of recording media fixed to the computer include a hard disk drive, ROM, and the like.

1 :ビンピッキングシステム
2 :RGB-Dカメラ
3 :マニピュレータ
31 :グリッパ
4 :制御装置
41 :入出力I/F
42 :記憶装置
43 :プロセッサ
431 :点群情報取得部
432 :グラフ生成部
433 :対象検出部
434 :ロボット制御部
44 :信号線
5 :ワーク
1: Bin picking system 2: RGB-D camera 3: Manipulator 31: Gripper 4: Control device 41: Input/output I/F
42: Storage device 43: Processor 431: Point cloud information acquisition section 432: Graph generation section 433: Object detection section 434: Robot control section 44: Signal line 5: Work

Claims (13)

ばら積みされた複数の対象物までの距離に基づいて生成される点を複数含む点群データを出力する距離画像生成装置から前記点群データを取得する点群情報取得部と、
前記点群データをモデル化して生成されるノード群に対してクラスタリングを行い、1つの対象物が存在する領域を特定する対象検出部と、
を有し、
前記クラスタリングは、距離が所定の範囲内であるノード間をエッジで接続し、ノード間の距離に応じたエッジの重みを用いて所定の評価関数であるモジュラリティを算出し、当該モジュラリティを最大化するようにノードを分類するコミュニティ検出手法を用いて実行される
画像処理装置。
a point cloud information acquisition unit that acquires the point cloud data from a distance image generation device that outputs point cloud data including a plurality of points generated based on distances to a plurality of objects stacked in bulk;
an object detection unit that performs clustering on a node group generated by modeling the point cloud data to identify a region where one object exists;
has
The clustering involves connecting nodes whose distances are within a predetermined range with edges, calculating modularity, which is a predetermined evaluation function, using edge weights according to the distance between nodes, and maximizing the modularity. is performed using a community detection technique that classifies nodes as
Image processing device.
前記クラスタリングは、ハードクラスタリングによるコミュニティ検出手法を用いて実行される
請求項1に記載の画像処理装置。
The image processing device according to claim 1, wherein the clustering is performed using a community detection method using hard clustering .
請求項1又は2に記載の画像処理装置と、
前記距離画像生成装置と、
前記対象検出部が特定した領域に存在する対象物を移動させるマニピュレータと、
を備える
ビンピッキングシステム。
An image processing device according to claim 1 or 2 ;
The distance image generation device;
a manipulator that moves an object existing in the area specified by the object detection section;
Equipped with a bin picking system.
前記1つの対象物は、前記マニピュレータを基準として他の対象物に隠れていない、前記ばら積みされた複数の対象物の表層に位置する対象物である
請求項に記載のビンピッキングシステム。
The bin picking system according to claim 3 , wherein the one object is an object located on the surface of the plurality of objects stacked in bulk and not hidden by other objects with respect to the manipulator.
ばら積みされた複数の対象物までの距離に基づいて生成される点を複数含む点群データ
を出力する距離画像生成装置と接続されるコンピュータが実行する画像処理方法であって、
前記距離画像生成装置から前記点群データを取得し、
前記点群データをモデル化して生成されるノード群に対してクラスタリングを行い、1つの対象物が存在する領域を特定し、
前記クラスタリングは、距離が所定の範囲内であるノード間をエッジで接続し、ノード間の距離に応じたエッジの重みを用いて所定の評価関数であるモジュラリティを算出し、当該モジュラリティを最大化するようにノードを分類するコミュニティ検出手法を用いて実行される
画像処理方法。
An image processing method executed by a computer connected to a distance image generation device that outputs point cloud data including a plurality of points generated based on distances to a plurality of objects stacked in bulk, the method comprising:
acquiring the point cloud data from the distance image generation device;
Clustering is performed on a group of nodes generated by modeling the point cloud data to identify an area where one object exists ,
The clustering involves connecting nodes whose distances are within a predetermined range with edges, calculating modularity, which is a predetermined evaluation function, using edge weights according to the distance between nodes, and maximizing the modularity. is performed using a community detection technique that classifies nodes as
Image processing method.
ばら積みされた複数の対象物までの距離に基づいて生成される点を複数含む点群データを出力する距離画像生成装置と接続されるコンピュータに、
前記距離画像生成装置から前記点群データを取得し、
前記点群データをモデル化して生成されるノード群に対してクラスタリングを行い、1つの対象物が存在する領域を特定する
処理を実行させ
前記クラスタリングは、距離が所定の範囲内であるノード間をエッジで接続し、ノード間の距離に応じたエッジの重みを用いて所定の評価関数であるモジュラリティを算出し、当該モジュラリティを最大化するようにノードを分類するコミュニティ検出手法を用いて実行される
画像処理プログラム。
A computer connected to a distance image generation device that outputs point cloud data including a plurality of points generated based on distances to a plurality of objects stacked in bulk,
acquiring the point cloud data from the distance image generation device;
perform clustering on a group of nodes generated by modeling the point cloud data, and perform processing to identify an area where one object exists ;
The clustering involves connecting nodes whose distances are within a predetermined range with edges, calculating modularity, which is a predetermined evaluation function, using edge weights according to the distance between nodes, and maximizing the modularity. is performed using a community detection technique that classifies nodes as
Image processing program.
ばら積みされた複数の対象物までの距離に基づいて生成される点を複数含む点群データを出力する距離画像生成装置と、
対象物を移動させるマニピュレータと、
前記マニピュレータを制御する制御装置であって、
前記距離画像生成装置から前記点群データを取得する点群情報取得部と、
前記点群データをモデル化して生成されるノード群に対してクラスタリングを行い、1つの対象物が存在する領域を特定する対象検出部と、
前記対象検出部が特定した前記1つの対象物が存在する領域に含まれるノード群について、前記距離画像生成装置とは反対側の形状が対称であると推定して重心を求め、当該重心に応じて前記マニピュレータを制御する制御部と、
を有する制御装置と、
を備えるビンピッキングシステム
a distance image generation device that outputs point cloud data including a plurality of points generated based on distances to a plurality of objects stacked in bulk ;
a manipulator that moves the object;
A control device that controls the manipulator,
a point cloud information acquisition unit that acquires the point cloud data from the distance image generation device ;
an object detection unit that performs clustering on a node group generated by modeling the point cloud data to identify a region where one object exists;
For a group of nodes included in the area where the one target object identified by the target detection unit exists, the center of gravity is determined by estimating that the shape on the opposite side to the distance image generation device is symmetrical, and the center of gravity is calculated according to the center of gravity. a control unit that controls the manipulator;
a control device having ;
A bin picking system equipped with
前記クラスタリングは、ハードクラスタリング又はソフトクラスタリングによるコミュニティ検出手法を用いて実行される
請求項に記載のビンピッキングシステム
The bin picking system according to claim 7 , wherein the clustering is performed using a community detection method using hard clustering or soft clustering.
前記クラスタリングは、ノード間の距離に基づいて所定の評価関数であるモジュラリティを最大化するようにノードを分類するコミュニティ検出手法を用いて実行される
請求項7又は8に記載のビンピッキングシステム
The bin picking system according to claim 7 or 8, wherein the clustering is performed using a community detection method that classifies nodes so as to maximize modularity, which is a predetermined evaluation function, based on distances between nodes.
前記クラスタリングは、OCG(Overlapping Cluster Generator)又はLink Communityを用いて実行される
請求項7又は8に記載のビンピッキングシステム
The bin picking system according to claim 7 or 8 , wherein the clustering is performed using an OCG (Overlapping Cluster Generator) or a Link Community.
前記1つの対象物は、前記マニピュレータを基準として他の対象物に隠れていない、前記ばら積みされた複数の対象物の表層に位置する対象物である
請求項8から10の何れか一項に記載のビンピッキングシステム。
The one object is an object located on the surface of the plurality of objects stacked in bulk and not hidden by other objects with the manipulator as a reference. bin picking system.
ばら積みされた複数の対象物までの距離に基づいて生成される点を複数含む点群データを出力する距離画像生成装置、及び、対象物を移動させるマニピュレータと接続される制御装置によって実行され、 Executed by a distance image generation device that outputs point cloud data including a plurality of points generated based on distances to a plurality of objects stacked in bulk, and a control device connected to a manipulator that moves the objects,
前記距離画像生成装置から前記点群データを取得することと、 acquiring the point cloud data from the distance image generation device;
前記点群データをモデル化して生成されるノード群に対してクラスタリングを行い、1つの対象物が存在する領域を特定することと、 Performing clustering on a node group generated by modeling the point cloud data to identify an area where one target object exists;
特定された前記1つの対象物が存在する領域に含まれるノード群について、前記距離画像生成装置とは反対側の形状が対称であると推定して重心を求め、当該重心に応じて前記マニピュレータを制御することと、 For a group of nodes included in the area where the identified one target object exists, the center of gravity is determined by estimating that the shape on the opposite side to the distance image generation device is symmetrical, and the manipulator is operated according to the center of gravity. to control and
を含む制御方法。 control methods including.
ばら積みされた複数の対象物までの距離に基づいて生成される点を複数含む点群データを出力する距離画像生成装置、及び、対象物を移動させるマニピュレータと接続される制御装置に、 A distance image generation device that outputs point cloud data including a plurality of points generated based on distances to a plurality of objects stacked in bulk, and a control device connected to a manipulator that moves the objects,
前記距離画像生成装置から前記点群データを取得することと、 acquiring the point cloud data from the distance image generation device;
前記点群データをモデル化して生成されるノード群に対してクラスタリングを行い、1つの対象物が存在する領域を特定することと、 Performing clustering on a node group generated by modeling the point cloud data to identify an area where one target object exists;
特定された前記1つの対象物が存在する領域に含まれるノード群について、前記距離画像生成装置とは反対側の形状が対称であると推定して重心を求め、当該重心に応じて前記マニピュレータを制御することと、 For a group of nodes included in the area where the identified one target object exists, the center of gravity is determined by estimating that the shape on the opposite side to the distance image generation device is symmetrical, and the manipulator is operated according to the center of gravity. to control and
を実行させるための制御プログラム。 A control program to run.
JP2019039831A 2018-03-05 2019-03-05 Image processing device, bin picking system, image processing method, image processing program, control method and control program Active JP7373700B2 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2018038650 2018-03-05
JP2018038650 2018-03-05

Publications (2)

Publication Number Publication Date
JP2019153309A JP2019153309A (en) 2019-09-12
JP7373700B2 true JP7373700B2 (en) 2023-11-06

Family

ID=67946672

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2019039831A Active JP7373700B2 (en) 2018-03-05 2019-03-05 Image processing device, bin picking system, image processing method, image processing program, control method and control program

Country Status (1)

Country Link
JP (1) JP7373700B2 (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2022137509A1 (en) * 2020-12-25 2022-06-30 日本電気株式会社 Object recognition device, object recognition method, non-transitory computer-readable medium, and object recognition system
CN116484307B (en) * 2023-06-21 2023-09-19 深圳市魔样科技有限公司 Cloud computing-based intelligent ring remote control method

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2015108621A (en) 2013-12-04 2015-06-11 三菱電機株式会社 Method for extracting planes from 3d point cloud sensor data
JP2016224915A (en) 2015-06-03 2016-12-28 富士通株式会社 Data clustering method, information processor, and data clustering program
JP2017204161A (en) 2016-05-12 2017-11-16 日本電信電話株式会社 Clustering device, clustering method, and clustering program
JP2017202549A (en) 2016-05-11 2017-11-16 セイコーエプソン株式会社 Robot control device, robot, and robot system

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2015108621A (en) 2013-12-04 2015-06-11 三菱電機株式会社 Method for extracting planes from 3d point cloud sensor data
JP2016224915A (en) 2015-06-03 2016-12-28 富士通株式会社 Data clustering method, information processor, and data clustering program
JP2017202549A (en) 2016-05-11 2017-11-16 セイコーエプソン株式会社 Robot control device, robot, and robot system
JP2017204161A (en) 2016-05-12 2017-11-16 日本電信電話株式会社 Clustering device, clustering method, and clustering program

Also Published As

Publication number Publication date
JP2019153309A (en) 2019-09-12

Similar Documents

Publication Publication Date Title
Xiang et al. Learning rgb-d feature embeddings for unseen object instance segmentation
JP7433609B2 (en) Method and computational system for object identification
CN112836734A (en) Heterogeneous data fusion method and device and storage medium
US11794343B2 (en) System and method for height-map-based grasp execution
JP6554900B2 (en) Template creation apparatus and template creation method
US11475589B2 (en) 3D pose estimation by a 2D camera
EP3376433B1 (en) Image processing apparatus, image processing method, and image processing program
JP7373700B2 (en) Image processing device, bin picking system, image processing method, image processing program, control method and control program
CN114299150A (en) Depth 6D pose estimation network model and workpiece pose estimation method
CN109508707B (en) Monocular vision-based grabbing point acquisition method for stably grabbing object by robot
Yogeswaran et al. 3d surface analysis for automated detection of deformations on automotive body panels
US11554496B2 (en) Feature detection by deep learning and vector field estimation
Wu et al. Learning affordance space in physical world for vision-based robotic object manipulation
Zhang et al. Dex-Net AR: Distributed deep grasp planning using a commodity cellphone and augmented reality app
CN115082498A (en) Robot grabbing pose estimation method, device, equipment and storage medium
CN112288809B (en) Robot grabbing detection method for multi-object complex scene
US20230100238A1 (en) Methods and systems for determining the 3d-locations, the local reference frames and the grasping patterns of grasping points of an object
Favorskaya et al. Image inpainting based on self-organizing maps by using multi-agent implementation
CN116484585A (en) Simulation generation method of defect sample data set and computer readable storage medium
Bergström et al. Integration of visual cues for robotic grasping
Arbeiter et al. Efficient segmentation and surface classification of range images
Yamada et al. Pose estimation of a simple-shaped object based on poseclass using RGBD camera
CN113409392A (en) 6DoF pose estimation method of reflective workpiece
Zhang et al. Dex-Net AR: distributed deep grasp planning using an augmented reality application and a smartphone camera
Zhang et al. Robotic grasp detection using effective graspable feature selection and precise classification

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20190307

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20220207

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20230209

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20230221

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20230424

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20230622

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20230822

A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A711

Effective date: 20230914

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20230914

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20230914

R150 Certificate of patent or registration of utility model

Ref document number: 7373700

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150