(57)【要約】【課題】対象物によっては、撮像した画像の中で背景と区別することが難しい場合がある。【解決手段】取得したカラー画像データのカラー画像から対象物の画像領域を抽出する画像領域抽出方法であって、カラー画像データの各ピクセルのＲＧＢ値をＨＳＶ値に変換する第１変換ステップと、各ピクセルの変換されたＳ値とＶ値の少なくともいずれかに対して２値化する閾値処理を施してＨＳ’Ｖ’値に変換する第２変換ステップと、各ピクセルが、Ｒ値Ｇ値Ｂ値のいずれかとＨ値Ｓ’値Ｖ’値のいずれかを予め定められた一対一の組み合わせによりそれぞれ加算したＸ値Ｙ値Ｚ値を有する合成画像データを生成する画像生成ステップと、合成画像データを用いて画像領域を抽出する抽出ステップとを有する画像領域抽出方法を提供する。【選択図】図８
2018128904.tif 000002
【特許請求の範囲】
【請求項１】
取得したカラー画像データのカラー画像から対象物の画像領域を抽出する画像領域抽出方法であって、
前記カラー画像データの各ピクセルのＲＧＢ値をＨＳＶ値に変換する第１変換ステップと、
各ピクセルの変換されたＳ値とＶ値の少なくともいずれかに対して２値化する閾値処理を施してＨＳ’Ｖ’値に変換する第２変換ステップと、
各ピクセルが、Ｒ値Ｇ値Ｂ値のいずれかとＨ値Ｓ’値Ｖ’値のいずれかを予め定められた一対一の組み合わせによりそれぞれ加算したＸ値Ｙ値Ｚ値を有する合成画像データを生成する画像生成ステップと、
前記合成画像データを用いて前記画像領域を抽出する抽出ステップと
を有する画像領域抽出方法。
【請求項２】
前記画像生成ステップは、重み付け係数を掛けてＲＧＢ値とＨＳ’Ｖ’値を加算する請求項１に記載の画像領域抽出方法。
【請求項３】
前記画像生成ステップは、ＲＧＢ値のヒストグラムに基づいて前記重み付け係数を変更する請求項２に記載の画像領域抽出方法。
【請求項４】
前記抽出ステップは、グラフカット法により前記画像領域を抽出する請求項１から３のいずれか１項に記載の画像領域抽出方法。
【請求項５】
取得したカラー画像データのカラー画像から対象物の画像領域を抽出する画像領域抽出プログラムであって、
前記カラー画像データの各ピクセルのＲＧＢ値をＨＳＶ値に変換する第１変換ステップと、
各ピクセルの変換されたＳ値とＶ値の少なくともいずれかに対して２値化する閾値処理を施してＨＳ’Ｖ’値に変換する第２変換ステップと、
各ピクセルが、Ｒ値Ｇ値Ｂ値のいずれかとＨ値Ｓ’値Ｖ’値のいずれかを一対一に組み合わせてそれぞれ加算したＸ値Ｙ値Ｚ値を有する合成画像データを生成する画像生成ステップと、
前記合成画像データを用いて前記画像領域を抽出する抽出ステップと
をコンピュータに実行させる画像領域抽出プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像領域抽出方法および画像領域抽出プログラムに関する。
【背景技術】
【０００２】
三次元環境下に配置された対象物の姿勢等を検出する技術が知られている。例えば、ロボットハンドが把持対象物を把持しようとする場合には、当該対象物がどのような姿勢で置かれているか、といった情報が事前に必要となる。そのような情報を取得するために、対象物を撮像した画像データを利用して当該情報を取得しようとする試みが成されている。例えば、対象物の三次元モデルを平面化しておき、撮像した画像と照合することにより対象物を特定する技術が知られている（例えば、特許文献１を参照）。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１０−０７９４５２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
対象物によっては、撮像した画像の中で背景と区別することが難しい場合がある。例えば、カップの円環状の取っ手は、その内側に背景が存在するので、外周の輪郭を切り出すのみでは対象物を正確に把握できない。
【０００５】
本発明は、このような問題を解決するためになされたものであり、撮像した画像から対象物の領域を正確に抽出する画像領域抽出方法および画像領域抽出プログラムを提供するものである。
【課題を解決するための手段】
【０００６】
本発明の第１の態様における画像領域抽出方法は、取得したカラー画像データのカラー画像から対象物の画像領域を抽出する画像領域抽出方法であって、カラー画像データの各ピクセルのＲＧＢ値をＨＳＶ値に変換する第１変換ステップと、各ピクセルの変換されたＳ値とＶ値の少なくともいずれかに対して２値化する閾値処理を施してＨＳ’Ｖ’値に変換する第２変換ステップと、各ピクセルが、Ｒ値Ｇ値Ｂ値のいずれかとＨ値Ｓ’値Ｖ’値のいずれかを予め定められた一対一の組み合わせによりそれぞれ加算したＸ値Ｙ値Ｚ値を有する合成画像データを生成する画像生成ステップと、合成画像データを用いて画像領域を抽出する抽出ステップとを有する。
【０００７】
このように、ＲＧＢによる赤緑青を成分とする色情報と、ＨＳＶによる色相、彩度、明度を成分とする色情報の両者を組み合わせるので、それぞれ単独では難しい領域抽出も、精度良く行うことができる。特に、Ｓ値とＶ値の少なくともいずれかに対して２値化する閾値処理を施すので、彩度または明度の少なくともいずれかの情報が強調され、領域区分の精度が大きく向上する。
【０００８】
また、上記の画像領域抽出方法において、画像生成ステップは、重み付け係数を掛けてＲＧＢ値とＨＳ’Ｖ’値を加算しても良い。重み付け係数を掛けることにより、ＲＧＢとＨＳ’Ｖ’のいずれを重要な情報として扱うかを、例えば対象物の種類や撮像環境に応じて変更することができる。また、ＲＧＢ値のヒストグラムに基づいて重み付け係数を変更しても良い。例えば、ＲＧＢ値のそれぞれの分布に基づいて重み付け係数を変更すれば、対象物の色味に応じて更に抽出精度を向上させることができる。
【０００９】
また、上記の抽出ステップは、グラフカット法により画像領域を抽出しても良い。このような処理を経て生成された合成画像データは、グラフカット法により精度良く領域の抽出ができることがわかった。
【００１０】
本発明の第２の態様における画画像領域抽出プログラムは、取得したカラー画像データのカラー画像から対象物の画像領域を抽出する画像領域抽出プログラムであって、カラー画像データの各ピクセルのＲＧＢ値をＨＳＶ値に変換する第１変換ステップと、各ピクセルの変換されたＳ値とＶ値の少なくともいずれかに対して２値化する閾値処理を施してＨＳ’Ｖ’値に変換する第２変換ステップと、各ピクセルが、Ｒ値Ｇ値Ｂ値のいずれかとＨ値Ｓ’値Ｖ’値のいずれかを一対一に組み合わせてそれぞれ加算したＸ値Ｙ値Ｚ値を有する合成画像データを生成する画像生成ステップと、合成画像データを用いて画像領域を抽出する抽出ステップとをコンピュータに実行させる。
【００１１】
このように、ＲＧＢによる赤緑青を成分とする色情報と、ＨＳＶによる色相、彩度、明度を成分とする色情報の両者を組み合わせるので、それぞれ単独では難しい領域抽出も、精度良く行うことができる。特に、Ｓ値とＶ値の少なくともいずれかに対して２値化する閾値処理を施すので、彩度または明度の少なくともいずれかの情報が強調され、領域区分の精度が大きく向上する。
【発明の効果】
【００１２】
本発明により、撮像した画像から対象物の領域を正確に抽出する画像領域抽出方法および画像領域抽出プログラムを提供することができる。
【図面の簡単な説明】
【００１３】
【図１】撮像部から取得されたＲＧＢ画像の例を模式的に示す図である。
【図２】ＲＧＢ画像から領域抽出を行った場合の例を模式的に示す図である。
【図３】ＲＧＢ画像から変換したＨＳＶ画像の例を模式的に示す図である。
【図４】閾値処理を施したＨＳ’Ｖ’画像の例を模式的に示す図である。
【図５】合成画像の生成の例を模式的に示す図である。
【図６】抽出処理の前処理を模式的に示す図である。
【図７】合成画像から領域抽出を行った例を模式的に示す図である。
【図８】画像領域抽出の全体の手順を示すフロー図である。
【発明を実施するための形態】
【００１４】
以下、発明の実施の形態を通じて本発明を説明するが、特許請求の範囲に係る発明を以下の実施形態に限定するものではない。また、実施形態で説明する構成の全てが課題を解決するための手段として必須であるとは限らない。
【００１５】
本実施形態にかかる画像領域抽出方法は、例えば、ロボットハンドを備える生産ロボットによって実行され、ロボットハンドが対象物を把持する場合に、適切な把持行動を立案し遂行するための前処理として実行される。具体的には、生産ロボットは、当該抽出方法を実行することにより、把持しようとする対象物の姿勢等を把握する。生産ロボットは、このような前処理を実行することにより、ロボットハンドの構造等に対して適した箇所で適した角度により対象物を把持することができる。
【００１６】
生産ロボットは、ロボットハンドの他に、把持しようとする対象物が存在する空間を視野として捉える撮像部と、ロボット全体の制御を実行すると共に様々な計算を実行する演算部を備える。演算部は、ロボットが備える記憶装置に格納されたプログラム、あるいはネットワークを介して供給されるプログラムを実行することにより、ロボット全体の制御や各種演算を実行する。また、演算部は、必要に応じて、ロボットが備える記憶装置に格納されたデータベースやパラメータ、あるいはネットワークを介して供給されるデータベースやパラメータを利用して、ロボット全体の制御や各種演算を実行する。本実施形態に係る画像領域抽出方法も、演算部によって実行される。演算部は、例えば１つのまたは複数のＣＰＵによって構成される。なお、撮像部は、生産ロボットが備えていなくても良く、対象物を捉えられるのであれば天井などに固定されていても良い。この場合、撮像された画像データは、ネットワークを介して生産ロボットに取り込まれる。
【００１７】
もちろん、画像から対象物の領域を抽出して応用する例は、生産ロボットに限らない。本実施形態にかかる画像領域抽出方法は、さまざまな状況において活用し得る技術であるが、以下の実施例においては、上述の生産ロボットがカップを把持するための前処理として実行する例を説明する。
【００１８】
図１は、撮像部から取得されたＲＧＢ画像の例を模式的に示す図である。ＲＧＢ画像は、ピクセルごとに色情報として赤色の画素値であるＲ値、緑色の画素値であるＧ値、青色の画素値であるＢ値を有するカラー画像である。撮像部が備えるイメージセンサは、例えば、二次元的に配置された各画素上にＲＧＢのいずれかのカラーフィルタがベイヤ配列により配置されたカラーイメージセンサであり、光学系により結像された対象物の光学像を光電変換してカラー画像信号を出力する。撮像部の画像処理部は、周辺画素信号の出力を用いた補間処理により、各ピクセルがＲ値Ｇ値Ｂ値のそれぞれを持つように調整してＲＧＢ画像データとして演算部に引き渡す。
【００１９】
ＲＧＢ画像１００は、被写体として、対象物としてのカップ１０を含み、カップ１０の他に、カップ１０が載置されているテーブル２０と、テーブル２０の後方の壁面３０とを含む。カップ１０は、本体部１１と、本体部１１の表面に描かれた模様１２と、取っ手１３から構成される。本実施形態の各図においてにおいては、画像データを画像として可視化したした場合の色味や輝度などの違いを、図面の制約上、細線やドットの違い、それぞれの密度の違い等によって模式的に表す。図１の例では、カップ１０の本体部１１および取っ手１３の色が、テーブル２０の色と似ており、壁面３０の色は、これらと大きく異なる様子を示す。
【００２０】
図２は、ＲＧＢ画像１００から、Ｒ値Ｇ値Ｂ値を直接的に用いて領域抽出を行った場合の結果を表す区分画像９００である。区分画像９００は、対象物であるカップの領域として抽出された、太線で囲まれた抽出領域９０１と、それ以外の背景領域９０２とに区分されている。ここでは、後述するグラフカット法により抽出領域を確定している。
【００２１】
図示するように、抽出領域９０１は、カップ１０の領域の他に、テーブル２０の一部の領域も取り込んでしまっている。すなわち、Ｒ値Ｇ値Ｂ値を直接的に特徴量として用いると、互いに似た色を有する近接画素同士は同一の対象領域に含まれると判断されやすいことを示している。このような結果から、対象物とその周辺の非対象物とが互いに似た色を有する状況においては、従来のＲ値Ｇ値Ｂ値を直接的に用いた領域抽出は、誤差を生じやすいと言える。
【００２２】
そこで、本実施形態においては、ＨＳＶ変換した各画素の値を併用して、領域抽出の精度向上を図る。その処理の流れを概念図と共に順に説明する。
【００２３】
図３は、ＲＧＢ画像１００から変換したＨＳＶ画像２００の例を模式的に示す図である。ＨＳＶ画像は、被写体を色相（Ｈｕｅ：Ｈ値）、彩度（Ｓａｔｕｒａｔｉｏｎ：Ｓ値）、明度（Ｖａｌｕｅ：Ｖ値）のＨＳＶ色空間で表現した画像である。可視化されたＨＳＶ画像とＲＧＢ画像とは、本来同一被写体を表している限りほぼ同様に視認される。しかし、本実施形態においては、画素ごとに変換されたＨ値Ｓ値Ｖ値のそれぞれを単なる数値として扱う。図示するＨＳＶ画像２００は、変換されたＨ値Ｓ値Ｖ値のそれぞれをあたかもＲ値Ｇ値Ｂ値であるものとして可視化した場合の様子を示している。
【００２４】
Ｈ値Ｓ値Ｖ値をこのように扱うと、例えば、本体部１１および取っ手１３と、テーブル２０の間に、ＲＧＢ画像における色味の差異とは異なった差異を生じさせることができる。ここで、Ｒ値Ｇ値Ｂ値からＨ値Ｓ値Ｖ値に変換する演算について説明する。
【００２５】
Ｒ値Ｇ値Ｂ値のそれぞれは、正規化されて０以上１以下の範囲で表されているとする。Ｒ値Ｇ値Ｂ値のうち、最大のものをＮＭＡＸ、最小のものをＮＭＩＮとすると、円錐モデルにおいては、
【数１】
2018128904.tif 000003
によって、Ｈ値Ｓ値Ｖ値が定まる。ここで、Ｈ値は、０から３６０まで変化し、色相が示された色環に沿った角度で表現される。３６０を超える場合は、３６０で割った剰余とする。Ｓ値およびＶ値は０から１までの範囲で変化する彩度および明度である。
【００２６】
ここで、Ｈ値を単純な数値として扱うために、Ｓ値Ｖ値と同じく０から１の範囲で表されるように、
【数２】
2018128904.tif 000004
と変換する。各ピクセルを、例えばあたかも８ｂｉｔのＲ値Ｂ値Ｇ値と扱って可視化するのであれば、
【数３】
2018128904.tif 000005
のように、階調を揃えれば良い。このように表現し直して可視化したものの例が、模式的に示す図３である。このように表現し直すと、色相、彩度、明度として有する特徴を端的に顕在化させることができる。
【００２７】
なお、本実施形態においてはＨ値をＲ値に対応させ、Ｓ値をＧ値に対応させ、Ｖ値をＢ値に対応させるが、組み合わせ方を変えても良い。Ｈ値Ｓ値Ｖ値のいずれかが、Ｒ値Ｇ値Ｂ値のいずれかと、予め定められた一対一の組み合わせとなるように組み合わされれば良い。換言すれば、Ｒ値にＳ値やＶ値を組み合わせても良く、Ｇ値にＨ値やＶ値を組み合わせても良く、Ｂ値にＨ値やＳ値を組み合わせても良い。
【００２８】
本実施形態においては、彩度と明度における特徴をさらに強調させるために閾値処理を用いて、Ｓ値をＳ’値に、Ｖ値をＶ’値に変換する。図４は、閾値処理を施したＨＳ’Ｖ’画像３００の例を模式的に示す図である。
【００２９】
閾値処理は、例えば、ピクセルごとに、
【数４】
2018128904.tif 000006
として実行する。すなわち、Ｓ値とＶ値を最小値０または最大値２５５とする二値化処理を実行する。なお、ここでは、彩度と明度の特徴を最も強調するために、二値化する値を最小値０と最大値２５５としたが、目標とする強調度合に応じて他の値に調整しても良い。また、例えば、Ｓ値が６４未満の場合にＳ’値を２５５とするなど、反転して二値化しても良い。また、ここでは、閾値として６４を用いたが、他の値に調整しても良い。
【００３０】
このように、閾値を適切に設定して二値化処理を施せば、領域間の明度と彩度のそれぞれの差異を強調することができる。Ｈ値Ｓ’値Ｖ’値に対して、図３を用いて説明した可視化処理と同様の処理を施したものの例が、模式的に示す図４である。この例においては、本体部１１および取っ手１３と、テーブル２０の違いが明確になっていることがわかる。
【００３１】
なお、本実施形態においては、Ｓ値をＶ値の両方に対して閾値処理を施すが、いずれか一方であっても良い。明度において領域間の差異が強調されないのであれば、Ｓ値のみをＳ’値に変換しても良く、彩度において領域間の差異が強調されないのであれば、Ｖ値のみをＶ’値に変換しても良い。
【００３２】
次に、ＲＧＢ画像１００における各ピクセルのＲ値Ｇ値Ｂ値と、ＨＳ’Ｖ’画像３００における各ピクセルのＨ値Ｓ’値Ｖ’値を合成して合成画像４００を生成する。図５は、合成画像４００の生成の例を模式的に示す図である。合成処理は、例えば、ピクセルごとに、
【数５】
2018128904.tif 000007
として、実行する。Ｘ値Ｙ値Ｚ値が、合成された各ピクセルの合成色情報である。なお、上述の通り、本実施形態においてはＨ値をＲ値に対応させ、Ｓ’値をＧ値に対応させ、Ｖ’値をＢ値に対応させるが、組み合わせ方はこれに限らない。
【００３３】
Ｘ値Ｙ値Ｚ値に対して、図３を用いて説明した可視化処理と同様の処理を施したものの例が、模式的に示す図５の合成画像４００である。この例においては、ＲＧＢの色情報の特徴に、彩度、明度の特徴が重ね合わされた様子がわかる。
【００３４】
この合成画像４００に対して、対象物の画像領域を抽出する抽出処理を施す。図６は、抽出処理の前処理を模式的に示す図である。演算部は、まず、マッチング手法等を用いて、対象物（ここではカップ１０）を包含する領域として初期領域８０１を設定する。さらに、初期領域８０１を取り囲む外周領域８０２を設定する。ここでは、外周領域８０２を、初期領域８０１の１．３倍とする。
【００３５】
演算部は、このように設定した初期領域８０１と外周領域８０２を用いて、Ｇｒａｂｃｕｔ（グラフカット法）による対象物領域の抽出演算を実行する。Ｇｒａｂｃｕｔは、文献「２００４  Ｃｏｎｆｅｒｅｎｃｅ  ｏｎ  Ｃｏｍｐｕｔｅｒ  Ｇｒａｐｈｉｃｓ  ａｎｄ  Ｉｎｔｅｒａｃｔｉｖｅ  Ｔｅｃｈｎｉｑｕｅｓ  （ＳＩＧＧＲＡＰＨ）．」の「Ｉｎｔｅｒａｃｔｉｖｅ  Ｆｏｒｅｇｒｏｕｎｄ  Ｅｘｔｒａｃｔｉｏｎ  ｕｓｉｎｇ  ｉｔｅｒａｔｅｄ  ｇｒａｐｈ  ｃｕｔｓ．」等に提案されている手法である。
【００３６】
図７は、合成画像４００から対象物の領域抽出を行った例を模式的に示す図である。出力結果は、区分画像５００として示すように、対象物として抽出された抽出領域５０１と、それ以外の領域である背景領域５０２とに区分される。本実施形態のように、合成画像４００を用いて明度と彩度の特徴を強調して加味すれば、図示するように対象物の領域部分のみを精度良く切り取ることができる。なお、合成画像を用いた領域抽出法方法は、グラフカット法に限らず、他の方法も採用し得る。しかし、実証実験を重ねた結果、本実施形態に係る合成画像を用いてグラフカット法を用いた場合に、比較的良好に対象物領域を抽出できることがわかった。
【００３７】
以上、模式図を用いて各処理を説明したが、演算部が実行する全体の処理手順として再度説明する。図８は、画像領域抽出の全体の手順を示すフロー図である。
【００３８】
演算部は、ステップＳ１０１で、ＲＧＢ画像データを取得する。演算部は、撮像部を制御して撮像を行っても良いし、既に撮影された画像データを外部機器からネットワークを介して取得しても良い。
【００３９】
次に演算部は、ステップＳ１０２で、ＲＧＢ画像の各ピクセルのＲ値Ｇ値Ｂ値をＨ値Ｓ値Ｖ値に変換するＨＳＶ変換処理を実行する。具体的には図３を用いて説明した処理を実行する。続いて、ステップＳ１０３で、Ｓ値Ｖ値に対して閾値変換処理を施し、Ｓ’値Ｖ’値に変換する。具体的には、図４と用いて説明した処理を実行する。
【００４０】
さらに、演算部は、ステップＳ１０１で取得したＲＧＢ画像データとステップＳ１０３で生成したＨＳ’Ｖ’画像データを合成する（ステップＳ１０４）。具体的には、図５を用いて説明したように、ピクセルごとに、Ｒ値とＨ値、Ｇ値とＳ’値、Ｂ値とＶ’値を加算して、Ｘ値Ｙ値Ｚ値とする。
【００４１】
演算部は、ステップＳ１０４で生成した合成画像に対して、抽出処理を行う（ステップＳ１０５）。抽出処理においては、上述したように、グラフカット法を用いると精度良く対象物が抽出される。演算部は、抽出領域を出力して一連の処理を終了する。その後生産ロボットは、抽出領域の出力を用いてカップの姿勢を判断し、カップを把持する動作の実行に移行する。
【００４２】
以上説明した実施形態においては、Ｒ値Ｇ値Ｂ値とＨ値Ｓ’値Ｖ’値とを、それぞれ重み付けすることなく互いに加算したが、重み付け係数を掛けてＲ値Ｇ値Ｂ値とＨ値Ｓ’値Ｖ’値を加算しても良い。例えば、上記式（５）は、重み付け係数α、β（ただし、α＋β＝１）を用いて、
【数６】
2018128904.tif 000008
としても良い。このように重み付け係数を設定することにより、ＲＧＢの色情報を重視するのか、ＨＳ’Ｖ’の彩度、明度情報を重視するかの調整を行うことができる。また、それぞれに定数項を加算して、レベル調整を行っても良い。
【００４３】
このような重み付け係数の調整は、例えば、Ｒ値Ｇ値Ｂ値のヒストグラムに基づいて行うことができる。例えば、Ｒ値のヒストグラムの分布も、Ｇ値のヒストグラムの分布も、Ｂ値のヒストグラムの分布も、比較的均一であるような場合には、色情報として領域間の差異が出にくいので、彩度、明度情報を重視してβを大きくすると良い。
【符号の説明】
【００４４】
１０  カップ、１１  本体部、１２  取っ手、２０  テーブル、３０  壁面、１００  ＲＧＢ画像、２００  ＨＳＶ画像、３００  ＨＳ’Ｖ’画像、４００  合成画像、５００  区分画像、５０１  抽出領域、５０２  背景領域、８０１  初期領域、８０２  外周領域、９００  区分画像、９０１  抽出領域、９０２  背景領域
【図１】
2018128904.tif 000009
【図２】
2018128904.tif 000010
【図３】
2018128904.tif 000011
【図４】
2018128904.tif 000012
【図５】
2018128904.tif 000013
【図６】
2018128904.tif 000014
【図７】
2018128904.tif 000015
【図８】
2018128904.tif 000016