以下、本発明の一実施形態を図面に基づいて説明する。図1は、本実施形態による原木木口の外周エッジ検出装置を適用したエッジ検出システム全体の構成例を示す図である。図2は、図1に示したエッジ検出システムの一部構成例を示す斜視図である。図3は、本実施形態による原木木口の外周エッジ検出装置が備えるコンピュータの機能構成例を示す図である。
図1および図2に示すように、本実施形態によるエッジ検出システムは、カメラ1A,1B、照明装置2A,2B、支持台3A,3B、左右移動装置4A,4B、上下移動装置5A,5B、インタフェースボード6およびコンピュータ7を備えて構成されている。このうち、コンピュータ7が原木木口の外周エッジ検出装置に相当する。
カメラ1A,1Bは、原木100の両端側に設置された撮像装置であり、原木100の木口101A,101Bを撮像する。カメラ1A,1Bにより撮像される画像には、原木100の木口101A,101Bだけでなく、周辺の背景も写り込んでいる。カメラ1A,1Bは、インタフェースボード6を通じてコンピュータ7に接続されており、カメラ1A,1Bにより撮像された画像は、コンピュータ7の画像メモリに格納されるようになっている。なお、説明の都合上、撮像面上の横軸をX軸、縦軸をY軸、カメラ1A,1Bの光軸をZ軸とする。
照明装置2A,2Bは、原木100の両木口101A,101Bに向けて設置されており、カメラ1A,1Bによる撮像時に原木100の木口101A,101Bを十分な明るさで照明する。照明装置2A,2Bは、エレクトロニックフラッシュのような発光装置であっても良い。
支持台3A,3Bは、原木100を長手方向(Z軸方向)の2箇所で支持する支持部材である。この支持台3A,3Bは、断面がV形状の支持部を有しており、原木100の自重により原木100の略円形をした断面の中心がV形状の折れ点のほぼ真上に位置するようになっている。
左右移動装置4A,4Bは、2つの支持台3A,3Bにそれぞれ備えられ、コンピュータ7からの移動命令信号により作動し、カメラ1A,1Bの光軸方向(Z軸方向)と直交する方向に支持台3A,3Bを移動させる。本実施形態では、左右移動装置4A,4Bは、支持台3A,3BをX軸方向に、第1位置から第2位置へ移動させるように構成されている。これにより、支持台3A,3Bの移動と共に原木100も第1位置から第2位置へ移動する。
上述したカメラ1A,1Bは、第1位置および第2位置のそれぞれにおいて、原木100の木口101A,101Bを撮像する。図4は、第1位置および第2位置で撮像された画像(それぞれ第1画像、第2画像という)を示す図である。なお、図4は、一方の木口101A側の撮像画像を示すものであり、支持台3A、左右移動装置4Aおよび原木100以外の背景は図示を省略している。
本実施形態において、第1位置とは、原木100の両木口101A,101Bが撮像面の略中心に位置する仮心位置である。第2位置とは、第1位置からX軸方向へ任意の距離s(mm)移動した位置である。本実施形態では、左右移動装置4A,4Bをエアーシリンダにより構成し、X軸方向に距離sだけ支持台3A,3Bを移動させる。
上下移動機構5A,5Bは、カメラ1A,1Bによって第1画像および第2画像を撮像するときに、木口101A,101Bが撮像面の略中心となる位置(仮心位置)へ原木100を位置出しするために、支持台3A,3BをY軸方向に移動させる。本実施形態では、前工程においてレーザ距離計等を用いてあらかじめ粗い精度で測定された原木100の仮直径に従って、上下移動機構5A,5Bにより支持台3A,3Bを仮心位置まで上昇させる。
図3に示すように、コンピュータ7は、画像処理プロセッサ10、マイコン等の制御部20、画像メモリ30およびROM40を備えている。制御部20は、左右移動装置4A,4Bおよび上下移動機構5A,5Bに移動命令信号を出力し、支持台3A,3Bを移動させる。また、制御部20は、カメラ1A,1Bに撮像命令信号を出力し、第1画像および第2画像を撮像させる。すなわち、制御部20は、支持台3A,3Bが第1位置にあるときにカメラ1A,1Bにより第1画像を撮像するように制御し、支持台3A,3Bを第1位置から第2位置へ移動させた後、カメラ1A,1Bにより第2画像を撮像するように制御する。
画像メモリ30は、カメラ1A,1Bにより撮像されインタフェースボード6によりコンピュータ7内に取り込まれた画像や、画像処理プロセッサ10による画像処理中の画像を格納する。画像処理プロセッサ10は、画像メモリ30に格納された画像に対して、ROM40に格納された木口エッジ検出プログラムに従って以下に述べるような画像処理を行う。なお、木口エッジ検出プログラムは、ROM40の代わりに、RAM、CD−ROM、ハードディスク、光ディスク、光磁気ディスク、DVD、半導体メモリ等の他の記録媒体に格納しても良い。
画像処理プロセッサ10は、その機能構成として、画像取得部11、移動物体エリア抽出部12、視差マップ作成部13、木口領域特定部14、木口外周エッジ特定部15および木口距離算出部16を備えている。画像取得部11は、カメラ1A,1Bに対する原木100の相対的な位置がX軸方向に異なる状態で(すなわち、原木100の木口101A,101Bが第1位置および第2位置にある状態で)カメラ1A,1Bにより木口101A,101Bについて撮像された2つの画像(第1画像および第2画像)をそれぞれ取得する。
移動物体エリア抽出部12は、図5に示すように、第1画像と第2画像との差分をとることにより、左右移動装置4A,4Bにより移動された物体(被撮像物)が移動前後に存在する画像上のエリアを移動物体エリア50として抽出する。本実施形態において、撮像画像の中で移動している物体は、支持台3A,3B、左右移動装置4A,4Bのシリンダ部分および原木100の木口101A,101Bであり、それ以外の部分は移動していない。
具体的には、移動物体エリア抽出部12は、第1画像の各画素値から第2画像の各画素値を減じることにより、差分処理画像を生成する。この差分処理画像においては、木口101A,101Bの周辺に写り込んだ背景などのように、物体が移動していない領域では全て差分値がゼロとなる。一方、移動物体の輪郭部分では差分値がゼロ以外の値となる。これにより、移動物体エリア抽出部12は、移動物体が第1画像上で存在している領域と、第2画像上で存在している領域とを合わせた領域を移動物体エリア50として抽出することができる。
視差マップ作成部13は、第1画像の各画素について、第1画像と第2画像との間で対応する画素の変位量(画素数)を表す視差を算出し、当該視差を各画素の画素値として表した視差マップを作成する。視差は、カメラ1A,1Bと被撮像物との距離に応じて異なる値をとる。すなわち、カメラ1A,1Bとの距離が大きい被撮像物ほど視差は小さくなり、カメラ1A,1Bとの距離が小さい被撮像物ほど視差は大きくなる。したがって、第1画像および第2画像に含まれる被撮像物のうち、カメラ1A,1Bとの距離が同じ被撮像物については視差(視差マップ上の画素値)が同じ値となり、カメラ1A,1Bとの距離が異なる被撮像物については視差が異なる値となる。
ここで、視差マップ作成部13による視差の求め方について、図6〜図8を用いて具体的に説明する。図6は、視差の算出方法を説明するための図である。図7は、視差を求める際の類似度の算出方法を説明するための図である。図8は、視差と類似度との関係を示す図である。
まず、視差マップ作成部13は、図6に示すように、基準とする第1画像の注目画素(座標を(m,n)とする)およびこれに隣接する近傍画素に、3×3画素のウィンドウ51を設定する。同様に、比較する第2画像の同じ座標(m,n)にも3×3画素のウィンドウ52を設定する。そして、2つのウィンドウ51,52の類似度Rを算出する。
類似度Rとは、比較した2点の一致の度合いを表した指標である。図7に示すように、基準とする第1画像のウィンドウ51の注目画素値をa、近傍の画素値をa1〜a8とする。また、比較する第2画像のウィンドウ52の比較画素値をb、近傍の画素値をb1〜b8とする。この場合に視差マップ作成部13は、例えば、類似度RをR=Σ(ak−a)(bk−b)の式により求める。
次いで、視差マップ作成部13は、図6に示すように、比較する第2画像のウィンドウ52をX軸方向(原木100を第1位置から第2位置へと移動する方向)へ1画素ずらし、類似度Rを算出する。以降も同様に、第2画像のウィンドウ52を順次1画素ずらして類似度Rを算出していき、これを比較画素の座標が(m+dmax,n)となるまで繰り返す。その結果をグラフに表すと、図8のようになる。
図8に示すように、基準とする第1画像のウィンドウ51と、比較する第2画像のウィンドウ52とが類似し、ウィンドウ51の注目画素(m,n)とウィンドウ52の比較画素(m+d,n)とが互いに対応する点と言えるとき、類似度Rは最大値を示す。その場合におけるX軸方向の変位量を示す画素数dが、第1画像の座標(m,n)における注目画素の視差となる。なお、dmaxは視差の上限設定値のことであり、カメラ1A,1Bの解像度とシステム構成と投入する原木100の許容長さとによって、あらかじめ適宜設定する。例えば、dmax=40画素とする。
ここで、図8について詳述すると、実線53は、原木100の木口101A,101Bの中心区域内における画素を注目画素とした場合の類似度Rを表したものである。破線54は、支持台3A,3Bの領域内における画素を注目画素とした場合の類似度Rを表したものである。類似度Rの最大値を示した点における画素の変位量が視差になるので、木口101A,101Bの中心区域内における画素は視差dが35画素、支持台3A,3Bの領域内における画素は視差dが25画素となる。
視差dの大きさはカメラ1A,1Bから被撮像物までの距離に応じて変わり、視差dが大きいと被撮像物はカメラ1A,1Bに近く、視差dが小さくなるに従い被撮像物は遠方に位置するものと言える。よって、図8の例は、支持台3A,3Bが原木100の木口101A,101Bより遠方に位置することを示している。
視差マップ作成部13は、上述した方法を用いて、注目画素の座標(m,n)を順次移動させて、基準とする第1画像の全領域について視差dを求める。そして、第1画像の各画素について求めた視差dを各画素の画素値とすることにより、視差マップを作成する。
図9は、視差マップ作成部13により作成される視差マップの一例を示す図である。図9において、画像内の数値は視差dの値を示している。図9に示すように、視差マップは、同じ視差dの値を示す画素群が画像上でマップ化された(区分けされた)状態となっている。すなわち、視差マップは、カメラ1A,1Bとの距離が同じ被撮像物の領域はほぼ同じ画素値を示すという特徴がある。なお、図9では画素値を示していない空白の領域があるが、これは説明の便宜上省略しただけであって、実際には視差に応じた画素値(ほぼゼロに近い値)が存在する。
木口領域特定部14は、カメラ1A,1Bとの距離が同じ被撮像物の領域はほぼ同じ画素値を示すという視差マップの特徴を利用し、木口101A,101Bの領域を特定する。具体的には、木口領域特定部14は、視差マップ作成部13により作成された視差マップにおいて、所定の中心区域の画素値(視差dの値)またはその平均値と画素値の差が所定の範囲内となる画素の領域を木口領域として特定する。
例えば、木口領域特定部14は、図9に示すように、木口101A,101Bの中心辺りである撮像面の中心部に任意の大きさの中心区域60(破線で示す区域)を設定し、その中心区域60内の画素の平均画素値Avを求める。そして、木口領域特定部14は、視差マップにおいて、各画素値と平均画素値Avとの差が所定の許容範囲α内である画素の領域を木口領域61(太い実線で示す領域)として特定する。
なお、中心区域60の大きさは、エッジ検出システムに投入する最小原木径より小さい区域であればよい。具体的には、最小原木径、カメラ1A,1Bの解像度、カメラ1A,1Bと原木100の木口101A,101Bとのおおよその距離によってあらかじめ中心区域60を設定しておく。本実施形態では、撮像面の中心部分に直径100画素の円を設定し、これを中心区域60とする。
続いて許容範囲αについて説明する。原木100の木口面は、原木100の外周面に対して必ずしも直角ではなく、ほとんどの原木100は傾斜して切断されている。そのため、支持台3A,3Bに支持された原木100の木口面とカメラ1A,1Bとの距離は必ずしも一定の距離になっておらず、木口101A,101Bとして形状を捉えるためには、許容誤差の範囲を設定する必要がある。具体的には、原木100の状態、カメラ1A,1Bの解像度、カメラ1A,1Bと原木100の木口101A,101Bとのおおよその距離によって許容範囲αをあらかじめ設定する。本実施形態では、許容範囲α=2画素とした。
図9に示すように、視差マップの中心区域60内における画素値の平均値Avは“35”であるとする。この場合、木口領域61を特定する画素値の範囲(Av−α〜Av+α)は“33”〜“37”となり、木口領域特定部14はこの範囲の画素値を示す領域を木口領域61として特定する。なお、支持台3A,3Bの領域62は画素値が“25”となっているので、許容範囲αの範囲を超えており、木口領域61としては特定されない。
木口外周エッジ特定部15は、木口領域特定部14により特定された木口領域61のうち、移動物体エリア抽出部12により抽出された移動物体エリア50内で特定された木口領域61の外周エッジを木口101A,101Bの外周エッジとして特定する。図10は、木口外周エッジ特定部15により特定される木口外周エッジの例を示す図である。図10に示すように、移動物体エリア50内に絞って木口領域61の外周エッジを特定することにより、移動物体エリア50外における周辺背景の映り込みのノイズ領域64を除去し、木口外周エッジ63だけを精度よく特定することができる。
木口距離算出部16は、視差マップの特徴を利用して、カメラ1A,1Bと原木100の木口101A,101Bとの距離を算出する。すなわち、木口距離算出部16は、視差マップにおける木口領域の視差と、支持台領域の視差と、カメラ1A,1Bと支持台3A,3Bとの機械上の実際の距離とに基づいて、カメラ1A,1Bと原木100の木口101A,101Bとの距離を算出する。
以下に、カメラ1A,1Bと木口101A,101Bとの距離の具体的な求め方について、図11および図12を用いて説明する。図11は、支持台3A,3Bの移動前後の第1画像と第2画像との位置関係を示す図である。図12は、支持台3A,3Bの移動前後の原木100と支持台3Aとカメラ1Aとの位置関係を示す図である。
図11では、第1画像を実線で表し、第2画像を破線で表している。また、d1は木口領域61内の中央区域60の視差を示し(d1=35)、d2は支持台領域の視差を示している(d2=25)。図12に示すように、カメラ1Aのレンズ70を通して撮像面71に写し出される第1画像および第2画像では、カメラ1Aに近い位置にある原木木口101Aの視差d1が大きく、カメラ1Aから遠い位置にある支持台3Aの視差d2が小さいことが分かる。
図12に示すように、支持台3AのX軸方向の移動距離をs、カメラ1Aのレンズ70から原木木口101Aまでの距離をL1、カメラ1Aのレンズ70から支持台3Aまでの距離をL2、カメラ1Aの焦点距離をf、撮像面71における原木木口101Aの視差をd1、支持台3Aの視差をd2とすると、三角測量の原理より次式が成立つ。
s/L1=d1/f、s/L2=d2/f
上記の2式より、L1=L2×d2/d1となる。ここで、カメラ1Aのレンズ70から支持台3Aまでの距離L2は、機械構成で決定するためあらかじめ測定しておく。そうすれば、木口領域の視差d1と支持台領域の視差d2とを求めることにより、カメラ1Aのレンズ70から原木木口101Aまでの距離L1を算出することができる。つまり、原木木口101AのZ軸方向の位置を算出することができる。具体的には、木口距離算出部16は、図9に示す視差マップにおいて、あらかじめ設定した支持台領域62内の画素の平均画素値を算出してd2とし、中央区域60内の画素の平均画素値を算出してd1とし、上記式によりL1を算出する。
次に、上記のように構成した本実施形態による外周エッジシステムの動作を説明する。図13は、本実施形態による外周エッジシステムの動作例を示すフローチャートである。図13に示すフローチャートは、左右移動装置4A,4Bおよび上下移動機構5A,5Bにより支持台3A,3Bを第1位置に移動させたときに開始する。
図13において、まず、原木100の木口101A,101Bをカメラ1A,1Bにより撮像する。画像取得部11は、カメラ1A,1Bにより撮像された画像をインタフェースボード6を介して取得し、第1画像として画像メモリ30に保存する(ステップS1)。なお、カメラ1A,1Bは、照明装置2A,2Bの互いの写り込みを防ぐため、時間差をおいて交互に撮像するのが好ましい。
続いて、左右移動装置4A,4Bは、制御部20からの移動命令信号に従い支持台3A,3Bを原木100と共に第1位置から第2位置まで距離s(30mm)だけ移動させる。その移動完了後、カメラ1A,1Bは再び原木の木口101A,101Bを撮像する。そして、画像取得部11は、カメラ1A,1Bにより撮像された画像をインタフェースボード6を介して取得し、第2画像として画像メモリ30に保存する(ステップS2)。
次に、移動物体エリア抽出部12は、画像メモリ30に格納された第1画像と第2画像との差分をとることにより、移動物体エリア50を抽出する(ステップS3)。抽出した移動物体エリア50の情報は、画像メモリ30に格納される。次いで、視差マップ作成部13は、画像メモリ30に格納された第1画像と第2画像とを比較し、第1画像の各画素における視差を求め、その視差を各画素の画素値とすることによって視差マップを作成する(ステップS4)。
図14は、視差マップ作成処理の詳細を示すフローチャートである。図14において、視差マップ作成部13は、まず、第1画像における注目画素のY座標nの値を“1”に設定するとともに(ステップS11)、X座標mの値を“1”に設定する(ステップS12)。また、視差マップ作成部13は、第2画像における比較画素の変位量を表すパラメータkの値を“0”に設定する(ステップS13)。ここまでは初期設定である。なお、m=1,2,・・・,mmax、n=1,2,・・・,nmaxである。mmaxは撮像面のX軸方向の画素数であり、nmaxは撮像面のY軸方向の画素数である。また、k=0,1,2,・・・,dmaxであり、dmaxはあらかじめ設定した視差の上限値である。
初期設定が完了した後、視差マップ作成部13は、第1画像における座標(m,n)の注目画素と、第2画像における座標(m+k,n)の比較画素との類似度Rを算出する(ステップS14)。そして、移動量パラメータkの値がdmaxを超えたか否かを判定し(ステップS15)、超えていなければ移動量パラメータkの値をインクリメントして(ステップS16)、ステップS14の処理に戻る。このように、第2画像における比較画素について移動量パラメータkの値をdmaxまで1つずつ増やしながら、類似度Rを繰り返し算出する。
そして、移動量パラメータkの値がdmaxを超えた場合は、それまで算出した類似度Rが最大値を示したときの移動量パラメータkの値を、第1画像における注目画素の視差dとして決定する(ステップS17)。視差マップ作成部13は、座標(m,n)の注目画素について求めた視差dの値を、視差マップの画素値D(m,n)として、画像メモリ30に格納する(ステップS18)。
その後、視差マップ作成部13は、注目画素のX座標mの値がmmaxを超えたか否かを判定し(ステップS19)、超えていなければX座標mの値をインクリメントして(ステップS20)、ステップS13の処理に戻る。一方、注目画素のX座標mの値がmmaxを超えた場合は、注目画素のY座標nの値がnmaxを超えたか否かを判定し(ステップS21)、超えていなければY座標nの値をインクリメントして(ステップS22)、ステップS12の処理に戻る。
一方、注目画素のY座標nの値がnmaxを超えた場合は、視差マップ作成部13は、画像メモリ30に格納された各画素の画素値D(m,n)を用いて、視差マップを作成する(ステップS23)。すなわち、ステップS14〜S18の処理を第1画像の全領域に対して行うことにより、全領域の画素値D(m,n)が求まり、画像メモリ30に格納される。視差マップ作成部13は、このようにして格納された各画素の画素値D(m,n)により視差マップを作成する。
図13に戻り、次に木口領域特定部14は、視差マップ作成部13により作成された視差マップ上で、原木100の木口101A,101Bが存在する中心区域60の平均画素値とほぼ同じ画素値を示す画素の領域である木口領域61を特定する(ステップS5)。
次に、木口外周エッジ特定部15は、移動物体エリア50の情報を画像メモリ30から読み出し、当該移動物体エリア50内に存在する木口領域61の外周エッジを木口外周エッジ63として特定する(ステップS6)。最後に、木口距離算出部16は、視差マップ作成部13により作成された視差マップを利用して、カメラ1A,1Bと被撮像物である原木100の木口101A,101Bとの距離を算出する(ステップS7)。
以上詳しく説明したように、本実施形態では、画像内で原木100の写る位置が異なるようにして原木100の木口101A,101Bについて撮像された2つの画像をそれぞれ第1画像および第2画像として取得する。そして、第1画像と第2画像との間で対応する画素の変位量を表す視差を各画素の画素値として表した視差マップを作成する。さらに、視差マップにおいて所定の中心区域60の平均画素値と画素値の差が所定の範囲内となる画素の領域を木口領域61として特定し、当該木口領域61の外周エッジを木口外周エッジ63として特定するようにしている。
このように構成した本実施形態によれば、図9に示したように、第1画像および第2画像に含まれる被撮像物のうち、原木100の木口101A,101Bの領域については視差の値(視差マップ上の画素値)がほぼ同じとなり、木口101A,101Bの周りの背景部分については視差の値が異なるようになる。よって、視差の値がほぼ同じ領域を木口領域61として特定することができ、その木口領域61の外周エッジを木口外周エッジ63として特定することができる。
しかも、本実施形態では、移動物体エリア50内に絞って木口領域61の外周エッジを特定することにより、移動物体エリア50外における周辺背景の映り込みのノイズ領域64を除去し、木口外周エッジ63だけを精度よく特定することができる。これにより、従来は原木木口の色の状態によって外周エッジを検出することができなかった原木100に対しても、視差に基づいて精度よく木口外周エッジ63を検出することができるようになる。その結果、原木100の心出し操作の精度が良くなり、製品の歩留まりおよび作業効率を上げることができる。
また、本実施形態によれば、木口外周エッジ63を検出するために作成した視差マップを利用して、カメラ1A,1Bと原木100の木口101A,101Bとの距離を算出することもできる。カメラ1A,1Bから両木口101A,101Bまでの距離がそれぞれ算出できれば、原木100の長さや位置が分かる。これにより、その後のベニヤレースに対する原木100の位置決め等に距離の計算結果を利用することが可能である。従来は、木口101A,101Bに機械的に接触して位置を測定する接触型の位置測定機構や、非接触型のレーザ変位センサ等を別途設けて木口101A,101Bの位置を測定していた。本実施形態によれば、これら別途の位置測定機構やレーザ変位センサ等を設けることなく、木口101A,101Bの位置を測定することができる。
なお、上記実施形態では、左右移動装置4A,4Bとしてストローク30mmのエアーシリンダを用いたが、本発明はこれに限らない。例えば、モータを使ったクランク方式、位置検出機能付モータ駆動によるネジ送り方式による移動装置などを用いてもよい。要は、作動信号により任意の距離sだけ支持台3A,3Bを移動させることができればよい。
また、上記実施形態では、支持台3A,3BのX軸方向の移動距離sを30mmとしたが、本発明はこれに限定されない。すなわち、移動前後の木口101A,101Bの画像が撮像面の範囲内にあり、かつ、視差マップ上で木口領域61を特定するのに十分な2画像間の変位量に有意な差があればよく、距離sは特に30mmに限定されるものではない。
また、上記実施形態では、原木100を支持する支持台3A,3Bとして、断面がV形状の支持部を有する支持部材を用いているが、本発明はこれに限定されない。すなわち、原木100を支持できる構成であればよく、例えば原木100の外周を爪の付いたアームで挟持する構成であっても良い。
また、上記実施形態では、視差マップ作成部13において視差を特定する指標として類似度Rを用いたが、本発明はこれに限定されない。例えば、2乗残差法、残差逐次検定法、正規化相互相関法などの公知の方法により得られる値を指標として用いてもよい。
また、上記実施形態では、視差マップ作成部13により第1画像の全領域の画素について視差dを求め、当該全領域の画素の視差dから視差マップを作成する例について説明したが、本発明はこれに限定されない。例えば、視差マップ作成部13が、第1画像の移動物体エリア50内の各画素についてのみ視差dを算出し、当該移動物体エリア50内の視差dを各画素の画素値として表した視差マップを作成するようにしてもよい。この場合は、図13のステップS3で抽出した移動物体エリア50内の画素のみに対して、図14のステップS14〜S18の処理を繰り返し行うことによって視差マップを作成する。
このようにすれば、図13のステップS5〜S7の処理は、移動物体エリア50内の画素に対してのみ行えばよい。また、木口領域特定部14により特定される木口領域61は1つのみとなるから、ステップ6の処理では、木口領域61の外周エッジをそのまま木口外周エッジ63として特定すればよい。この方法により、視差を求める領域が移動物体エリア50内のみでよく、処理時間を格段に短縮することができ、木口外周エッジの検出処理の作動効率を上げることができる。
また、視差マップの視差dは第1画像の全領域の画素について求め、その後で木口領域特定部14が、視差マップのうち移動物体エリア50内に絞って木口領域61を特定するようにしてもよい。この場合も、木口領域特定部14により特定される木口領域61は1つのみとなるから、ステップ6の処理では、木口領域61の外周エッジをそのまま木口外周エッジ63として特定すればよい。
また、移動物体エリア抽出部12の処理は省いてもよい。例えば、木口101A,101Bの周囲からの映り込みがないように木口101A,101Bの周辺を幕などで囲むことにより、木口101A,101Bの背景におけるノイズ領域64がほとんど生じない場合は、移動物体エリア抽出部12の処理を省いても、木口外周エッジ63を特定することが可能である。
また、上記実施形態では、支持台3A,3Bは左右移動装置4A,4BによりX軸方向に往復移動自在に設置されていたが、Y軸方向に往復移動自在に設置してもよい。すなわち、上記実施形態ではX軸方向に原木100を移動させ、X軸方向の視差を求める例を示したが、Y軸方向に原木100を移動させてY軸方向の視差を求めるようにしてもよい。このようにしても、原木100の木口外周エッジ63を同様に検出することができる。
図15は、支持台3A,3BをY軸方向に往復移動自在に設置する場合の構成例を示す図である。図15において、支持台3A,3Bは、その両側面を摺動部材75A,75Bでガイドされ、Y軸方向に往復移動自在に設置されている。上下移動装置76A,76Bは、支持台3A,3Bに一端を回転自在に固定された移動用ネジ77A,77Bと、それを駆動するモータ78A,78Bと、支持台3A,3Bの位置を検出する支持台位置検出装置であるエンコーダ79A,79Bとで構成されている。
モータ78A,78Bおよびエンコーダ79A,79Bは、コンピュータ7内の制御部20に電気的に接続されている。制御部20は、エンコーダ79A,79Bから出力される支持台3A,3Bの位置情報に基づいて、モータ78A,78Bをそれぞれ駆動制御する。また、上下移動装置76A,76Bは、上下移動機構5A,5Bの働きも担っている。
このように構成した場合、原木100を仮心位置へ移動させるために上下移動装置76A,76Bを備えていれば、それを視差マップを作成するための支持台3A,3Bの移動機構としても用いることができる。これにより、新たに左右移動装置4A,4Bを追加して設備しなくても、木口外周エッジ63を検出することができる。
なお、ここでは上下移動機構76A,76Bをネジ方式の構成としたが、本発明はこれに限定されない。例えば、油圧サーボシリンダ、クランク方式の機構と駆動サーボモータとを用いた方法などでも良い。要は、支持台3A,3Bをその位置を検出しながらY軸方向に移動させることができる機構であればよい。
また、支持台位置検出装置としてエンコーダ79A,79Bを用い、支持台3A,3Bの位置を常置把握できる構成を示したが、本発明はこれに限らない。例えば、エンコーダ79A,79Bの代わりに、リミットスイッチ等の機械的スイッチを支持台3A,3Bに接触するように設置し、この機械的スイッチの信号によって第1位置と第2位置とに支持台3A,3Bを停止させる方法であってもよい。
また、上記実施形態では、原木100の片側1台ずつのカメラ1A,1Bで、支持台3A,3Bの移動前後の木口101A,101Bを2度撮像する構成としたが、本発明はこれに限定されない。例えば、木口101A,101Bに向けて原木100の両木口側にカメラを2台ずつ並べて設置し、2台のカメラを同時に撮像した第1画像と第2画像とを処理する方法であってもよい。
2台のカメラは、その光軸を平行に設置し、2つの光軸間の距離が上記実施形態における移動距離sと同じとなるようにする。この場合、視差マップ作成部13において類似度Rを算出するための対応点を探索する方向は、一方のカメラの光軸から他方のカメラの光軸に向けた方向とする。なお、カメラの光軸は必ずしも平行でなくてもよい。すなわち、光軸同士の角度がわかっていれば、視差を求めることが可能である。
このように構成した場合、第1画像と第2画像とを同時に撮像するため、左右移動装置4A,4Bにより原木100を移動させて2度停止する必要がなく、作業効率を上げることができる。
また、上記実施形態では、支持台3A,3Bと共に原木100を移動させる例について説明したが、これとは逆に、カメラ1A,1Bを移動させるようにしてもよい。要は、原木100とカメラ1A,1Bとが相対的に任意の距離sだけ移動する移動装置を備えた構成とすればよい。
また、上記実施形態では、原木100を第1位置から第2位置まで任意の距離sだけ移動し、移動前後の2枚の画像を画像処理することにより視差dを算出する方法を示したが、本発明はこれに限定されない。すなわち、視差dを求めるのに有意な差が出る距離だけ原木100を移動させて2枚の画像を撮像すればよく、撮像のために必ずしも原木100を移動距離sだけ移動させて停止する必要はない。
すなわち、木口外周エッジ63を検出する過程と、カメラ1A,1Bから木口101A,101Bまでの距離を算出する過程とで移動距離sの値は不必要なため、移動距離sの値を把握する必要はない。そこで、例えば、Y軸方向へ移動中の原木100の木口101A,101Bを、そのまま停止することなく移動した状態のまま、ある時間間隔で2度撮像し、その撮像した2枚の画像について画像処理をすることによって木口外周エッジ63を検出するようにしてもよい。
例えば、図15のように上下移動機構76A,76Bを構成する。上下移動機構76A,76Bは、コンピュータ7内の制御部20からの移動命令信号に従って、モータ78A,78Bにより支持台3A,3Bを所定の速度v(mm/秒)でY軸方向へ移動させる。
制御部20は、この移動中にエンコーダ79A,79Bから出力される信号に基づいて、支持台3A,3Bの位置が第1位置(原木100の木口101A,101Bが撮像面の中心に位置した仮心位置)に到達したことを検知したときに、カメラ1A,1Bを制御して木口101A,101Bを撮像させる。
その1回目の撮像後、制御部20は、所定時間t(秒)が経過したことを検知して、カメラ1A,1Bを制御して木口101A,101Bを再び撮像させる。第1位置で撮像した画像を第1画像とし、第1画像の撮像後に所定時間t(秒)を経過したときに撮像した画像を第2画像とする。
ここで、支持台3A,3B(原木100)の移動速度v(mm/秒)および所定時間t(秒)について説明する。第1画像と第2画像との撮像間に支持台3A,3Bが移動する距離v×t(mm)は、上記実施形態で説明した移動距離sと同様に、2枚の画像間で視差を求めるのに有意な差が生じる距離であればよく、木口101A,101Bの画像が撮像面の範囲内であれば、特に制限はない。
例えば、速度30mm/秒で移動する原木100の木口101A,101Bを1秒間隔で撮像すると、2回の撮像間における原木100の移動距離は30mmとなる。所望の速度vは、速くすれば作業効率は上がるが、画像の鮮明度が劣り、求める視差の精度に問題がでる可能性がある。照明装置2A,2Bによる照明の明るさ、カメラ1A,1Bの解像度、露光時間、撮像処理時間などを考慮して所望の速度v(mm/秒)と所定時間t(秒)とを設定する必要がある。
なお、原木100を移動させながら2回のタイミングで第1画像と第2画像とを撮像する場合、カメラ1A,1Bにより2枚の静止画を撮像する代わりに、ビデオカメラなどにより撮像した動画像から2枚のフレームを抜き出して、それぞれを第1画像および第2画像として処理する方法でもよい。具体的には、支持台3A,3Bが第1位置(仮心位置)に到達したときに動画像からフレームを抜き出し第1画像とし、そこから所定時間t(秒)後のフレームを抜き出して第2画像とするようにしてもよい。
その他、上記実施形態は、何れも本発明を実施するにあたっての具体化の一例を示したものに過ぎず、これによって本発明の技術的範囲が限定的に解釈されてはならないものである。すなわち、本発明はその精神、またはその主要な特徴から逸脱することなく、様々な形で実施することができる。