JP2002251615A - 画像処理装置及び方法並びにロボット装置及びその制御方法 - Google Patents

画像処理装置及び方法並びにロボット装置及びその制御方法

Info

Publication number
JP2002251615A
JP2002251615A JP2001046788A JP2001046788A JP2002251615A JP 2002251615 A JP2002251615 A JP 2002251615A JP 2001046788 A JP2001046788 A JP 2001046788A JP 2001046788 A JP2001046788 A JP 2001046788A JP 2002251615 A JP2002251615 A JP 2002251615A
Authority
JP
Japan
Prior art keywords
image
detection
movement amount
image processing
detecting
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2001046788A
Other languages
English (en)
Other versions
JP4618470B2 (ja
Inventor
Kotaro Sabe
浩太郎 佐部
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.)
Sony Corp
Original Assignee
Sony Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Sony Corp filed Critical Sony Corp
Priority to JP2001046788A priority Critical patent/JP4618470B2/ja
Publication of JP2002251615A publication Critical patent/JP2002251615A/ja
Application granted granted Critical
Publication of JP4618470B2 publication Critical patent/JP4618470B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

  • Toys (AREA)
  • Manipulator (AREA)
  • Image Processing (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Image Analysis (AREA)

Abstract

(57)【要約】 【課題】画像内の動体を精度良く検出し得る画像処理装
置及び方法並びにエンターテイメント性を向上させ得る
ロボット及びその制御方法を実現し難かった。 【解決手段】画像処理装置及び方法において、画像情報
に基づく画像全体の移動量を検出し、当該検出結果を考
慮した所定の動き検出処理により、画像内の動きを検出
するようにした。またロボット装置及びその制御方法に
おいて、外部を撮像する撮像手段から出力される画像情
報に基づく画像全体の移動量を検出すると共に、当該検
出結果を考慮した所定の動き検出処理により画像内の動
きを検出し、この検出結果を行動に反映させるようにし
た。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は画像処理装置及び方
法並びにロボット装置及びその制御方法に関し、例えば
4足歩行型のロボット装置に適用して好適なものであ
る。
【0002】
【従来の技術】近年、ユーザからの指令や周囲の環境に
応じて行動を行う4足歩行型のペットロボットが本願特
許出願人によって開発されている。
【0003】かかるペットロボットは、CCD(Charge
Coupled Device )カメラやマイクロホンを搭載してお
り、当該CCDカメラによって撮像した周囲の状況や、
マイクロホンにより集音したユーザからの指令音及び周
囲音等に基づいて周囲の状況やユーザからの指令の有無
を判断し、この判断結果に基づいて自律的に行動を決定
してこれを発現するようになされたものである。
【0004】
【発明が解決しようとする課題】ところで画像処理によ
って画像内の動体を検出する方法としては、従来から種
々の方法が提案され、実用化されている。そしてこれら
の方法は、大きく分けて、画像フレーム間で画素の差分
をとる第1の方法と、時空間フィルタを用いて画像上の
任意の点におけるオプティカルフローを求める第2の方
法と、フレーム間で小領域のマッチングを行い、その領
域の動きを求める第3の方法の3つに分けることができ
る。この場合、これらのいずれの方法も画像を撮像する
ためのカメラが固定されており、検出された動きが外界
の動きであることが前提となっている。
【0005】しかしながら例えば上述のペットロボット
のように、それぞれ多自由度関節を有するロボットで
は、搭載されたCCDカメラが当該ロボットの動作に伴
って大きくかつ複雑に動いてしまう。
【0006】このためかかるペットロボットにおいて、
上述のような第1〜第3の方法によって画像内の動体を
検出しようとすると、フレーム間で画像全体が大きく動
くことから実際に動体を撮像していてもその動きを検出
することは困難であった。またこれとは逆に、周囲に動
きがなくとも自己の動作によって動体を誤検出する問題
もあった。
【0007】そしてペットロボットにおいて、上述のよ
うに動体を精度良く検出し得ないと、実際には周囲に動
体が存在しないにも係わらずあたかも動体があるかのよ
うな行動を発現したり、逆に周囲に動体が存在している
にも係わらず動体がないかのような行動を発現するな
ど、発現される行動が不自然となる問題があった。
【0008】従ってかかるペットロボットにおいて、自
己の動作の有無に係わりなく、周囲に存在する動体を精
度良く検出し得るようにすることができれば、不自然な
行動が発現されるのを未然に防止して、そのエンターテ
イメント性をより向上させ得るものと考えられる。
【0009】本発明は以上の点を考慮してなされたもの
で、画像内の動体を精度良く検出し得る画像処理装置及
び方法並びにエンターテイメント性を向上させ得るロボ
ット装置及びその制御方法を提案しようとするものであ
る。
【0010】
【課題を解決するための手段】かかる課題を解決するた
め本発明においては、画像処理装置において、画像情報
に基づく画像全体の移動量を検出する第1の検出手段
と、第1の検出手段の検出結果を考慮した所定の動き検
出処理により、画像内の動きを検出する第2の検出手段
とを設けるようにした。この結果この画像処理装置で
は、画像全体の動きの有無に係わりなく、画像内の動体
を精度良く検出することができる。
【0011】また本発明においては、画像処理方法にお
いて、画像情報に基づく画像全体の移動量を検出する第
1のステップと、検出した移動量を考慮した所定の動き
検出処理により、画像内の動きを検出する第2のステッ
プとを設けるようにした。この結果この画像処理方法に
よれば、画像全体の動きの有無に係わりなく、画像内の
動体を精度良く検出することができる。
【0012】さらに本発明においては、ロボット装置に
おいて、行動を自律的に決定して発現するロボット装置
において、外部を撮像する撮像手段から出力される画像
情報に基づく画像全体の移動量を検出する第1の検出手
段と、第1の検出手段の検出結果を考慮した所定の動き
検出処理により、画像内の動きを検出する第2の検出手
段とを設け、第2の検出手段の検出結果を行動に反映さ
せるようにした。この結果このロボット装置では、自己
の動作に伴う撮像手段の動きの有無に係わりなく、当該
撮像手段から出力される画像情報に基づく画像内の動体
を精度良く検出して、当該検出結果を反映した行動を行
うことができる。
【0013】さらに本発明においては、ロボット装置の
制御方法において、ロボットに搭載された撮像手段によ
り外部を撮像すると共に、当該撮像手段から出力される
画像情報に基づく画像全体の移動量を検出する第1のス
テップと、検出した移動量を考慮した所定の動き検出処
理により、画像内の動きを検出する第2のステップと、
第2のステップでの検出結果をロボット装置の行動に反
映させる第3のステップとを設けるようにした。この結
果このロボット装置の制御方法によれば、ロボット装置
の動作に伴う撮像手段の動きの有無に係わりなく、当該
撮像手段から出力される画像情報に基づく画像内の動体
を精度良く検出して、当該検出結果を反映した行動をロ
ボット装置に行わせることができる。
【0014】
【発明の実施の形態】以下図面について、本発明の一実
施の形態を詳述する。
【0015】(1)本実施の形態によるペットロボット
の構成 図1において、1は全体として本実施の形態によるペッ
トロボットを示し、胴体部ユニット2の前後左右にそれ
ぞれ脚部ユニット3A〜3Dが連結されると共に、胴体
部ユニット2の前端部及び後端部にそれぞれ頭部ユニッ
ト4及び尻尾部ユニット5が連結されることにより構成
されている。
【0016】胴体部ユニット2には、図2に示すよう
に、CPU(Central Processing Unit )10、DRA
M(Dynamic Random Access Memory)11、フラッシュ
ROM(Read Only Memory)12、PC(Personal Com
puter )カードインターフェース13及び信号処理回路
14が内部バス15を介して相互に接続されることによ
り形成されたコントロール部16と、このペットロボッ
ト1の動力源としてのバッテリ17とが収納されてい
る。また胴体部ユニット2には、ペットロボット1の向
きや動きの加速度を検出するための角加速度センサ18
及び加速度センサ19なども収納されている。
【0017】また頭部ユニット4には、外部の状況を撮
像するためのCCDカメラ20と、ユーザからの「撫で
る」や「叩く」といった物理的な働きかけにより受けた
圧力を検出するためのタッチセンサ21と、前方に位置
する物体までの距離を測定するための距離センサ22
と、外部音を集音するためのマイクロホン23と、鳴き
声等の音声を出力するためのスピーカ24と、ペットロ
ボット1の外見上の「目」に相当する図示しないLED
(Light Emitting Diode)となどがそれぞれ所定位置に
配設されている。
【0018】さらに各脚部ユニット3A〜3Dの関節部
分や、脚部ユニット3A〜3D及び胴体部ユニット2の
各連結部分、頭部ユニット4及び胴体部ユニット2の連
結部分、並びに尻尾部ユニット5の尻尾5A(図1)の
付け根部分などにはそれぞれ自由度数分のアクチュエー
タ25(251、252、253……)及びポテンショメ
ータ26(261、262、263……)が配設されてい
る。
【0019】そしてこれら角速度センサ18、加速度セ
ンサ19、タッチセンサ21、距離センサ22、マイク
ロホン23、スピーカ24、LED、各アクチュエータ
25及び各ポテンショメータ26は、それぞれハブ27
(271〜27n)を介してコントロール部16の信号処
理回路14にツリー状に接続されている。またCCDカ
メラ20及びバッテリ17は、それぞれ信号処理回路1
4と直接接続されている。
【0020】このとき信号処理回路14は、角速度セン
サ18、加速度センサ19、タッチセンサ21、距離セ
ンサ22及び各ポテンショメータ26等の各種センサか
らそれぞれハブ27を介して供給されるセンサデータ
や、CCDカメラ20から供給される画像データ及びマ
イクロホン23から与えられる音声データを順次取り込
み、これらをそれぞれ内部バス15を介してDRAM1
1内の所定位置に順次格納する。また信号処理回路14
は、バッテリ17から供給されるバッテリ残量を表すバ
ッテリ残量データを順次取り込み、これをDRAM11
内の所定位置に格納する。
【0021】そしてこのようにDRAM11に格納され
た各センサデータ、画像データ、音声データ及びバッテ
リ残量データは、この後CPU10がこのペットロボッ
ト1の動作制御を行う際に利用される。
【0022】実際上CPU10は、ペットロボット1の
電源が投入された初期時、胴体部ユニット2の図示しな
いPCカードスロットに装填されたメモリカード28又
はフラッシュROM12に格納された制御プログラムを
PCカードインターフェース13を介して又は直接読み
出し、これをDRAM11に展開する。
【0023】またCPU10は、この後上述のように信
号処理回路14よりDRAM11に順次格納される各種
センサデータ、画像データ、音声データ及びバッテリ残
量データに基づいて自己及び周囲の状況や、ユーザから
の指示及び働きかけの有無などを判断する。
【0024】さらにCPU10は、この判断結果及びD
RAM11に展開した制御プログラムに基づいて続く行
動を決定すると共に、当該決定結果に応じた第1の駆動
信号を生成してこれを必要なアクチュエータ25に送出
することにより、頭部ユニット4を上下左右に振らせた
り、尻尾部ユニット5の尻尾5Aを動かせたり、各脚部
ユニット3A〜3Dを駆動させて歩行させるなどの行動
を行わせる。
【0025】またこの際CPU10は、必要に応じて音
声信号や第2の駆動信号を生成し、これらを信号処理回
路14を介してスピーカ24や「目」のLEDに与える
ことにより、当該音声信号に基づく音声を外部に出力さ
せたり、第2の駆動信号に基づいて当該LEDを点灯、
消灯又は点滅させる。
【0026】このようにしてこのペットロボット1にお
いては、自己及び周囲の状況や、ユーザからの指示及び
働きかけ等に応じて自律的に行動し得るようになされて
いる。
【0027】なお信号処理回路14の具体構成を図3に
示す。この図3からも明らかなように、信号処理回路1
4は、DMA(Direct Memory Access)コントローラ3
0、DSP(Digital Signal Processor)31、ペリフ
ェラルインターフェース32、タイマ33、FBK/C
DT(Filter Bank/Color Detection )34、IPE
(Inner Product Engin )35、シリアルバスホストコ
ントローラ36、シリアルバス37がバス38及び当該
バス38の使用権の調停を行うバスアービタ39を順次
介してバス40に接続されると共に、当該バス40がそ
れぞれDRAMインターフェース41、ホストインター
フェース42及びROMインターフェース43を介して
DRAM11(図2)、CPU10(図2)及びフラッ
シュROM12(図2)と接続され、かつペリフェラル
インターフェース32にパラレルポート44、バッテリ
マネージャ45及びシリアルポート46が接続されるこ
とにより構成されている。
【0028】この場合図2について上述した角速度セン
サ18、加速度センサ19、タッチセンサ21、距離セ
ンサ22、マイクロホン23、スピーカ24、各アクチ
ュエータ25及び各ポテンショメータ26等のデバイス
は、それぞれハブ27(27 1〜27n)を介してシリア
ルホストコントローラ36と接続されると共に、CCD
カメラ20(図2)はFBK/CDT34と接続され、
かつバッテリ17(図2)はバッテリマネージャ45と
接続されている。
【0029】そしてシリアルホストコントローラ36
は、接続された各デバイスのうち、角速度センサ18、
加速度センサ19、タッチセンサ21、距離センサ22
及び各ポテンショメータ26等の各センサからそれぞれ
与えられるセンサデータを順次取り込み、データの転送
を司るバスマスタとして機能するDMAコントローラ3
0の制御のもとに、これらセンサデータをバス38、バ
スアービタ39、バス40及びDRAMインターフェー
ス41を順次介してDRAM11に与えて記憶させる。
【0030】またシリアルホストコントローラ36は、
マイクロホン23から与えられる音声データをDSP3
1に送出すると共に、当該DSP31は、供給されるホ
ストコントローラ36から与えられる音声データに対し
て所定のデータ処理を施し、その処理結果でなる音声デ
ータを、DMAコントローラ30の制御のもとに、バス
38、バスアービタ39、バス40及びDRAMインタ
ーフェース41を順次介してDRAM11に転送し、こ
れを当該DRAM11内の所定の記憶領域に格納する。
【0031】またFBK/CDT34は、CCDカメラ
20から供給される画像データを色認識を行いながら複
数の解像度に分けて取り込み、得られた画像データを、
DMAコントローラ30の制御のもとに、バス38、バ
スアービタ39、バス40及びDRAMインターフェー
ス41を順次介してDRAM11(図2)に転送し、こ
れを後述のように当該DRAM11内の指定された記憶
領域に格納する。
【0032】さらにバッテリマネージャ45は、バッテ
リ17から通知されるエネルギ残量を表すバッテリ残量
データを、DMAコントローラ30の制御のもとに、ペ
リフェラルインターフェース32、バス38、バスアー
ビタ39、バス40及びDRAMインターフェース41
を順次介してDRAM11に転送し、これを当該DRA
M11内の所定の記憶領域に格納する。
【0033】一方、信号処理回路14は、上述のように
CPU10(図2)からバス15を介して与えられる各
アクチュエータ25を駆動するための第1の駆動信号
や、音声信号及びLEDを駆動するための第2の駆動信
号をホストインターフェース42を介して入力する。
【0034】そして信号処理回路14は、これらをバス
40、バスアービタ39、バス38及びシリアルバスホ
ストコントローラ36並びに対応するハブ27(271
〜27n)(図2)を順次介して対応するアクチュエー
タ25(251、252、253……)(図2)や、スピ
ーカ24又はLEDに送出する。
【0035】このようにして信号処理回路14において
は、各センサ、CCDカメラ20、マイクロホン23、
スピーカ、各アクチュエータ25などの各デバイスと、
CPU10との間において、CPU10がペットロボッ
ト1の行動を制御するために必要な各種信号処理を行い
得るようになされている。
【0036】なおIPE35は、画像間のマッチング処
理を高速に行うことができる2次元ディジタルフィルタ
であり、後述のように2画像を1画素ずつずらしなが
ら、各ずらし位置におけるこれら2画像間の相関性を表
すマッチングスコアを所定の演算式に基づいて順次計算
し得るようになされている。
【0037】またシリアルバス37は、パーソナルコン
ピュータ(PC)などのリモートコンピュータに接続す
るためのインターフェースであり、パラレルポート44
及びシリアルポート46は、当該リモートコンピュータ
と接続するためのコネクタである。さらにタイマ33
は、ペットロボット1の内部の時計としての役割を果た
すものである。
【0038】(2)ペットロボット1における画像デー
タの転送方法 ここではCCDカメラ20(図2)から入力される画像
データをDRAM11(図2)に転送する転送方法につ
いて説明する。図4に示すように、CCDカメラ20か
ら出力された画像データは、信号処理回路14(図2)
のFBK/CDT34に入力され、当該FBK/CDT
34において所定の画像処理が施された後、DMAコン
トローラ30(図3)の制御のもとに、バスアービタ3
9(図3)及びDRAMインターフェース41(図3)
を順次介してDRAM11に転送される。
【0039】ところでDMAコントローラ30は、バス
アービタ39及びDRAMインターフェース41を順次
介してDRAM11からCPU10(図2)によって生
成されたDMAリストを読み出し、当該DMAリストに
記述された画像データの転送先や転送先に関する情報に
基づいて画像データの転送を行うようになされている。
【0040】従ってこのペットロボット1においては、
CPU10がDMAリストを書き換えることによって、
DMAコントローラ30がDBK/CDT34から出力
される画像データをDRAM11上の任意の位置に転送
することができる。このようにペットロボット1では、
画像データをDRAM11に転送して展開することによ
り、CPU10のキャッシュ機能を有効に利用して高速
なデータ処理を行い得るようになされている。
【0041】以下、ペットロボット1における画像デー
タの転送方法についてFBK/CDT34の構成を示す
図4を用いながら具体的に説明する。
【0042】CCDカメラ20から出力された画像デー
タは、8ビットのパラレルデータ、クロック信号及び同
期信号からなり、FBK/CDT34の入力画像インタ
ーフェース50に入力されて所定のフォーマットに変換
された後、フィルタ演算部51に供給される。
【0043】ところでCPU10は、DRAM11に記
憶されている制御プログラムに基づいて各種フィルタ係
数を決定し、当該決定したフィルタ係数をパラメータ記
憶部52に与えてこれを記憶させるようになされてい
る。
【0044】そしてフィルタ演算部51は、このパラメ
ータ記憶部52に記憶されているフィルタ係数を用いて
入力画像インターフェース50から与えられる画像デー
タにフィルタ演算を施すことにより、当該画像データの
色認識を行いながら複数の解像度の画像データを生成す
る。
【0045】フィルタ演算部51の後段には、それぞれ
1ライン分の画像データを記憶できる記憶容量を有する
2つのバッファ53A、53Bが設けられており、フィ
ルタ演算部51は、生成した画像データを1ライン毎に
交互にバッファ53A、53Bに送出してこれを記憶さ
せる。
【0046】その際DMAインターフェース54は、2
つのバッファ53A、53Bのうちの一方のバッファ5
3A、53Bに1ライン分の画像データを記憶させてい
る間に他方のバッファ53A、53Bから1ライン分の
画像データを読み出し、当該読み出した1ライン分の画
像データをDMAコントローラ30の指示に基づいてD
RAM11に転送することにより、複数の画像データを
順次DRAM11に転送する。なおバッファ53A、5
3Bは、それぞれ1ライン分の記憶容量を持つだけでな
ので、記憶容量が少なく、簡易な構成のFBK/CDT
34を実現している。
【0047】ところでこのような画像データの転送は、
バスマスタとして機能するDMAコントローラ30によ
って行われる。すなわちDMAインターフェース54
は、2つのバッファ53A、53Bのうちいずれか一方
が1ライン分の画像データを記憶すると、DMAコント
ローラ30に対してDMAリクエストと呼ばれる転送要
求信号を送出する。
【0048】そしてDMAコントローラ30は、DMA
リクエストが供給されると、まずバス38(図3)の使
用権を獲得し、次いでCPU10によって通知されるア
ドレスを基にDRAM11から対応するDMAリストを
読み出す。
【0049】そしてDMAコントローラ30は、このD
MAリストに基づいて画像データの転送先であるDRA
M11上のアドレスを順次生成し、バス38に対して書
込み信号を発行する。FBK/CDT34は、このバス
38に対する書込み信号に同期して、一方のバッファ5
3A、53Bに蓄積されている画像データを読み出して
バス38に順次送出する。
【0050】このFBK/CDT34から出力された画
像データは、FBK/CDT34から出力されると同時
にDRAM11に書き込まれることから、画像データの
転送は非常に高速に行われる。ところで、画像データの
転送先に関する設定は、DMAリストによって行われる
ことから、DMAコントローラ30は画像データをDR
AM11上の任意の位置に転送し得るようになされてい
る。
【0051】そしてFBK/CDT34は、かかるバッ
ファ53A、53Bに蓄積されていた1ライン分の画像
データの転送を終了すると、DMAコントローラ30に
対するDMAリクエストを取り下げて画像データの転送
を打ち切る。これを受けてDMAコントローラ30は、
DMAリクエストが取り下げられたタイミングまでに転
送した画像データのデータ量などの情報をDMAリスト
に書き込み、この後バス38を解放する。そしてDMA
コントローラ30は、再びDMAリクエストが供給され
ると、上述のDMAリストをDRAM11から読み出し
て前回の続きの転送を行う。
【0052】このようにしてこのペットロボット1で
は、画像データを高速に転送処理することができるよう
になされている。
【0053】(3)ペットロボット1における画像処理
方法 次に、このペットロボット1における画像処理方法につ
いて説明する。これに際して、まずペットロボッ1の制
御プログラムのソフトウェア構成について説明する。
【0054】このペットロボット1には、以下のような
機能を有するオペレーティング・システムが搭載されて
いる。 1.複数のタスクを実行可能 2.タスク間でデータの転送が可能 3.タスク間でメモリ(DRAM11)を共有すること
ができる
【0055】具体的にはオペレーティング・システムと
してアペリオス(Aperios)(ソニー株式会社、商標)
が用いられ、このオペレーティング・システム上におけ
る各オブジェクト間の通信方式として、例えば特願平11
-006491 号に開示された通信方式が用いられている。
【0056】図5は、このペットロボット1における制
御プログラムのソフトウェア構成を示すものである。こ
の図5において、デバイス・ドライバ・レイヤ60は、
かかる制御プログラムの最下位層に位置し、複数のデバ
イス・ドライバからなるデバイス・ドライバ・セット6
1によって構成されている。
【0057】この場合各デバイス・ドライバは、CCD
カメラ20(図2)やタイマ33(図3)等の通常のコ
ンピュータで用いられるハードウェアに直接アクセスす
ることを許されたオブジェクトであり、対応するハード
ウェアからの割り込みを受けて処理を行う。
【0058】またロボティック・サーバ・オブジェクト
62は、デバイス・ドライバ・レイヤ60の上位層に位
置し、例えば上述の各センサやアクチュエータ25(2
1、252、253……)(図2)等のハードウェアに
アクセスするためのインターフェースを提供するソフト
ウェア群でなるバーチャル・ロボット63と、電源の切
り換えなどを管理するソフトウェア群でなるパワーマネ
イジャ64と、他の種々のデバイス・ドライバを管理す
るソフトウェア群でなるデバイス・ドライバ・マネージ
ャ65と、ペットロボット1の機構を管理するソフトウ
ェア群でなるデザインド・ロボット66とから構成され
ている。
【0059】マネージャ・オブジェクト67は、オブジ
ェクト・マネージャ68及びサービス・マネージャ69
から構成されている。この場合オブジェクト・マネージ
ャ68は、ロボティック・サーバ・オブジェクト62、
ミドル・ウェア・レイヤ70及びアプリケーション・レ
イヤ71に含まれる各ソフトウェア群の起動や終了を管
理するソフトウェア群であり、サービス・マネージャ6
9は、メモリカード28(図2)に格納されたコネクシ
ョンファイルに記述されている各オブジェクト間の接続
情報に基づいて各オブジェクトの接続を管理するソフト
ウェア群である。
【0060】ミドル・ウェア・レイヤ70は、ロボティ
ック・サーバ・オブジェクト62の上位層に位置し、画
像処理や音声処理などのこのペットロボット1の基本的
な機能を提供するソフトウェア群から構成されている。
またアプリケーション・レイヤ71は、ミドル・ウェア
・レイヤ70の上位層に位置し、当該ミドル・ウェア・
レイヤ70を構成する各ソフトウェア群によって処理さ
れた処理結果に基づいてペットロボット1の行動を決定
するためのソフトウェア群から構成されている。
【0061】マネージャ・オブジェクト67は、オブジ
ェクト・マネージャ及びサービス・マネージャによって
構成されており、このうちオブジェクト・マネージャ
は、ロボティック・サーバ・オブジェクト・ミドル・ウ
ェア・レイヤ及びアプリケーション・レイヤを構成する
ソフトウェア群の起動や終了を管理するソフトウェア群
でなり、サービス・マネージャは、メモリカードに記憶
されているコネクションファイルに記述された各オブジ
ェクト間の接続情報に基づいて各オブジェクトの接続を
管理するソフトウェア群である。
【0062】以下、かかる構成の制御プログラムに基づ
いてペットロボット1の内部において行われる画像処理
について、色検出、動き検出及び障害物検出といった複
数の画像処理のタスクを同時に実行する場合を例に、図
6及び図7を用いて図8を参照しながら説明する。
【0063】図6及び図7は、かかる画像処理のシステ
ム起動時からの手順(以下、これを画像処理手順RT1
と呼ぶ)を示すものであり、ペットロボット1の電源が
投入されるとこの画像処理手順RT1が開始され、続く
ステップSP2において、コントロール部16(図2)
のCPU10がデバイス・ドライバ・セット61(図
5)を構成する図8に示すFBK/CDTドライバ61
Aを起動してFBK/CDT34を初期化する。
【0064】続くステップSP3において、CPU10
は、ロボティック・サーバ・オブジェクト62(図5)
を起動する。このときバーチャル・ロボット63(図
5)も起動する。そしてバーチャル・ロボット63は、
起動後、図8に示すように、画像データを記憶するため
の共有メモリ80を複数個DRAM11(図2)上に生
成し、この後FBK/CDTドライバ61Aに対して画
像サイズのような画像の属性に関する情報を設定する。
【0065】またCPU10は、ロボティック・サーバ
・オブジェクト62(図5)の起動が終了すると、ミド
ル・ウェア・レイヤ70(図5)を構成している画像処
理オブジェクトを順次起動する。因に、生成された共有
メモリ80の記憶容量は、バーチャル・ロボット63
(図5)の指示に応じて容易に変更が可能である。
【0066】続くステップSP4において、バーチャル
・ロボット63は、DRAM11上に生成した複数の共
有メモリ80のうち所望の共有メモリ80のアドレスを
FBK/CDTドライバ61Aに通知すると共に、当該
通知したアドレスの共有メモリ80に画像データを転送
することを要求するリード要求をFBK/CDTドライ
バ61Aに発行する。
【0067】そしてFBK/CDTドライバ61Aは、
リード要求を受け取ると、続くステップSP5におい
て、指定された共有メモリ80に画像データを転送する
ためのDMAリスト81を生成してDRAM11(図
2)に記憶する。その際FBK/CDTドライバ61A
は、DRAM11に記憶されたDMAリスト81のアド
レスをDMAコントローラ30(図3)に通知した後、
FBK/CDT34に対して画像データを出力すること
を許可する。
【0068】続くステップSP6において、FBK/C
DT34は、FBK/CDTドライバ61Aからの画像
データの出力許可を受けて1フィールド分の画像データ
を指定された共有メモリ80に転送すると、FBK/C
DTドライバ61Aに対して割り込みを発生させ、割込
みハンドラと呼ばれるソフトウェアを起動させる。そし
てステップSP7において、この割込みハンドラは、バ
ーチャル・ロボット63に対して画像データの転送が終
了したことを通知する。
【0069】このときバーチャル・ロボット63は、続
くステップSP8において、必要なフィールド数分の画
像データが転送されたか否かを判断する。そしてバーチ
ャル・ロボット63は、このステップSP8において否
定結果を得るとステップSP9に進んで次に転送すべき
共有メモリ80のアドレスをFBK/CDTドライバ6
1Aに渡してリード要求を発行した後、ステップSP5
に戻ってこの後ステップSP8において肯定結果を得る
までステップSP5−SP6−SP7−SP8−SP9
−SP5のループを繰り返す。
【0070】一方CPU10は、ステップSP8におい
て肯定結果を得るとステップSP10に進んで、ミドル
・ウェア・レイヤ70(図5)を構成する各画像処理オ
ブジェクトが起動し終えるのを待ち受け、やがて画像処
理オブジェクトが起動し終えると、ステップSP11に
進む。
【0071】そしてマネージャ・オブジェクト67のサ
ービス・マネージャ69は、ミドル・ウェア・レイア7
0の各画像処理オブジェクトの起動が終えると、続くス
テップSP11において、これら画像処理オブジェクト
に対してそれぞれ接続相手先の画像処理オブジェクトを
通知し、各画像処理オブジェクト間で通信路を開く。
【0072】例えばサービス・マネージャ69は、図8
において明らかなように、色検出用画像処理オブジェク
ト82及びエッジ検出用画像処理オブジェクト84をバ
ーチャル・ロボット63に接続する。またサービス・マ
ネージャ69は、重心計算用画像処理オブジェクト85
を色検出用画像処理オブジェクト82に接続すると共
に、重心計算用画像処理オブジェクト86を動き検出用
画像処理オブジェクト83に接続する。
【0073】さらにサービス・マネージャ69は、障害
物検出用画像処理オブジェクト87及び座標変換用画像
処理オブジェクト88をエッジ検出用画像処理オブジェ
クト84に階層的に接続する。因に、このような各画像
処理オブジェクト間の接続は変更が可能であり、各画像
処理オブジェクトの接続関係を変更することで様々な処
理を行い得る。
【0074】続くステップSP12において、サービス
・マネージャ69は、各画像処理オブジェクト間の接続
が終了すると、当該各画像処理オブジェクトにスタート
信号を送出する。これを受けて各画像処理オブジェクト
は、続くステップSP13において、コネクションファ
イルに記述された接続情報に基づいて下位層にある接続
先の画像処理オブジェクトにデータ要求信号を送出す
る。
【0075】ところで色検出用画像処理オブジェクト8
2、動き検出用画像処理オブジェクト83及びエッジ検
出用画像処理オブジェクト84は、FBK/CDT34
から順次供給される画像データを、それぞれ異なるフィ
ード間隔で読み出すようになされており、バーチャル・
ロボット63は、供給される画像データのうち、各画像
処理オブジェクトがそれぞれ読み出すべき画像データを
把握している。
【0076】従ってバーチャル・ロボット63は、続く
ステップSP14において、各画像処理オブジェクトか
らデータ要求信号を受け取ると、各画像処理オブジェク
トがそれぞれ読み出すべき画像データが格納されている
共有メモリ80に割り当てられているID(Identifica
tion)(すなわちアドレス情報)を各画像処理オブジェ
クトにそれぞれ通知する。その際バーチャル・ロボット
63は、内部の参照回数計測カウンタを用いて、各画像
処理オブジェクトに通知したIDのそれぞれに対して、
通知した画像処理オブジェクトの数をカウントしてその
カウント値を記憶しておく。
【0077】このときバーチャル・ロボット63は、参
照回数計測カウンタによるカウント値が「0」でないI
Dの共有メモリ80には、FBK/CDT34から供給
される画像データを上書きせずに、カウント数が「0」
の共有メモリ80に画像データを上書きして順次記憶し
ていくことにより、各画像処理オブジェクトが読み出す
可能性のある画像データを誤って消去することを回避し
ている。
【0078】続いてステップSP15において、各画像
処理オブジェクトは、通知されたIDが割り当てられて
いる共有メモリ80から画像データを読み出す。その
際、各画像処理オブジェクトは、それぞれ同一の共有メ
モリ80に記憶されている画像データを読み出す場合も
ある。しかしながら共有メモリ80は、読み出し専用の
メモリであることから、各画像処理オブジェクトはそれ
ぞれ互いに干渉することなく画像データの読み出しを行
い得る。
【0079】次いでステップSP16において、各画像
処理オブジェクトは、それぞれ必要な数だけ画像データ
を読み出したか否か判断し、その結果として必要な数だ
け画像データを読み出していないと判断した場合にはス
テップSP17に進む。
【0080】そして各画像処理オブジェクトは、コネク
ションファイルに記述された接続情報に基づいて、次の
画像データを要求するためのデータ要求信号をそれぞれ
バーチャル・ロボット63に送出する。そしてバーチャ
ル・ロボット63は、続くステップSP18において、
データ要求信号を受け取ると、データ要求信号を送出し
た画像処理オブジェクトに通知したIDに対応して記憶
されている参加回数測定カウンタのカウント数をデータ
要求信号が供給されるごとに減算する。
【0081】そしてバーチャル・ロボット63は、その
カウント数が「0」になったときに、当該カウントが
「0」になったIDが割り当てられている共有メモリ8
0に記憶されている画像データの保護を解除し、ステッ
プSP14に戻って同じ動作を繰り返す。
【0082】さらに各画像処理オブジェクトは、やがて
ステップSP16において肯定結果を得ると、ステップ
SP19に進んで各画像処理オブジェクトが画像データ
を所望の共有メモリ80から読み出し、これら読み出し
た画像データに対してそれぞれ所定の画像処理を施し、
その処理結果を上位層のオブジェクトに送出する。
【0083】例えば色検出用画像処理オブジェクト82
は、読み出した画像データから色の検出を行い、その処
理結果を重心計算用画像処理オブジェクト85に送出し
て検出した色の位置を算出させる。また動き検出用画像
処理オブジェクト83は、画像データから動き領域の検
出を行い、その処理結果を重心計算用画像処理オブジェ
クト86に送出して検出した動き領域の位置や大きさを
算出させる。
【0084】さらにエッジ検出用画像処理オブジェクト
84は画像データからエッジの検出を行い、その処理結
果を障害物検出用画像処理オブジェクト87に送出して
障害物の位置を算出させた後、座標変換用画像処理オブ
ジェクト88において障害物の位置を座標変換させる。
そしてCPU10は、この後ステップSP20に進んで
この処理(画像処理手順RT1)を終了する。
【0085】このように各画像処理オブジェクトは、D
RAM11上に生成された共有メモリ80から画像デー
タを読み出すようになされていることから、CCDカメ
ラ20に依存しない汎用的な画像処理オブジェクトを実
現することができ、従って複数の汎用的な画像処理オブ
ジェクトを組み合わせることで、様々な画像処理を容易
に行い得るようになされている。
【0086】(4)ペットロボット1における動体検出
のアルゴリズム 次にこのペットロボット1における動体検出方法につい
て説明する。
【0087】このペットロボット1では、図9(A)に
示す1つ前のフレームの画像(以下、これを前フレーム
画像と呼ぶ)90の画像データ及び図9(B)に示す現
在のフレームの画像(以下、これを現フレーム画像と呼
ぶ)91の画像データに基づいて、現フレーム画像91
内の前フレーム画像90の中心部分90Aと相関の高い
画像領域91Aを検出するようにしてペットロボット1
の動作に伴う画像全体の動き量(以下、これを画像全体
の移動量と呼ぶ)を検出し、当該検出結果を利用して図
9(C)のように画像内の動きのある部分のみを抽出す
ることにより動体を精度良く検出し得るようになされて
いる。
【0088】この場合このような一連の処理は、図10
に示す動体検出処理手順RT2に従って、ミドル・ウェ
ア・レイア70(図5)の動き検出用画像処理オブジェ
クト83(図8)、重心計算用画像処理オブジェクト8
6(図8)及び信号処理回路14(図2)内のIPE3
5(図3)によって行われる。以下、このようなペット
ロボット1における動体検出方法について説明する。
【0089】動体検出処理手順RT2は、動き検出用画
像処理オブジェクト83の起動によりステップSP30
において開始される。そして続くステップSP31にお
いて、動き検出用画像処理オブジェクト83は、DRA
M11上の指定された共有メモリ80から画像データを
取り込んでこれを保存すると共に、続くステップSP3
2において、かかる画像データの取り込みが1回目であ
るか否かを判断する。
【0090】そして動き検出用画像処理オブジェクト8
3は、このステップSP32において肯定結果を得ると
再びステップSP31に戻り、この後ステップSP31
及びステップSP32を繰り返す。
【0091】さらに動き検出用画像処理オブジェクト8
3は、やがてステップSP32において肯定結果を得る
とステップSP33に進んで、図11(A)に示すよう
に、前フレーム画像92の中心領域(前フレーム画像9
2から上下左右の所定幅を除いた画像領域部分)92A
をテンプレートとして、当該中心領域92Aを上下左右
に4分割したときの左上、右上、左下及び右下の各分割
領域(以下、これらを第1〜第4のテンプレート分割領
域92A1〜92A4と呼ぶ)の画像データを順次IPE
35に転送する。
【0092】また動き検出用画像処理オブジェクト83
は、続くステップSP34において、図11(C)に示
すように、現フレーム画像93全体を検索画像として、
当該現フレーム画像93を所定画素数分だけ上又は下及
び左又は右にオーバーラップさせながら上下左右に4分
割したときの左上、右上、左下及び右下の各分割領域
(以下、これらを第1〜第4の検索画像分割領域93A
1〜93A4と呼ぶ)の画像データをIPE35に転送す
る。
【0093】従ってこの例では、図11(C)における
第2の横線lx2及び第2の縦線ly2によって区切られる
現フレーム画像93の左上の画像領域(第1の検索画像
分割領域93A1)と、第2の横線lx2及び第1の縦線
y1によって区切られる現フレーム画像93の右上の画
像領域(第2の検索画像分割領域93A2)と、第1の
横線lx1及び第2の縦線ly2によって区切られる現フレ
ーム画像93の左下の画像領域(第3の検索画像分割領
域93A3)と、第1の横線lx1及び第1の縦線ly1
よって区切られる現フレーム画像93の右下の画像領域
(第4の検索画像分割領域93A4)の各画像領域の画
像データがIPE35に転送される。
【0094】続くステップSP35において、IPE3
5は、前フレーム画像92の中心領域92Aに基づく第
1〜第4のテンプレート分割領域92A1〜92A4と、
現フレーム画像93の対応する位置の第1〜第4の検索
画像分割領域93A1〜93A4とのマッチング処理を行
う。
【0095】具体的にIPE35は、第1のテンプレー
ト分割領域92A1及び第1の検索画像分割領域93A1
について、これらを縦方向や横方向に1画素単位でずら
しながら、当該ずらした位置(以下、これをずらし位置
と呼ぶ)における次式
【0096】
【数1】
【0097】で与えられるマッチングスコアを順次演算
すると共に、かくして得られたマッチングスコアをDR
AM11に順次DMA転送してこれを記憶させる。
【0098】またIPE35は、これと同様にして第2
のテンプレート分割領域92A2及び第2の検索画像分
割領域93A2、第3のテンプレート分割領域92A3
び第3の検索画像分割領域93A3、並びに第4のテン
プレート分割領域92A4及び第4の検索画像分割領域
93A4について、これらをそれぞれ縦方向又は横方向
に1画素単位でずらしながら、各ずらし位置における
(1)式で与えられるマッチングスコアを順次演算する
と共に、かくして得られたマッチングスコアをDRAM
11に順次DMA転送してこれを記憶させる。
【0099】そして動き検出用画像処理オブジェクト8
3は、全てのマッチングスコアの値が算出されると、次
【0100】
【数2】
【0101】で与えられる演算を実行することにより、
各ずらし位置における第1〜第4のテンプレート分割領
域92A1〜92A4についての4つのマッチングスコア
を加算したスコア(以下、これを総合マッチングスコア
と呼ぶ)を算出する。
【0102】ここで現フレーム画像93における上述の
ようにして算出された総合マッチングスコアの値が最も
小さい画像領域が前フレーム画像92の中心領域92A
と最も相関が高い領域部分であり、従って前フレーム画
像92の中心領域92Aの中心位置からこの画像領域の
中心位置までの距離がペットロボット1の動きに伴う前
フレーム及び現フレーム間における画像全体の移動量と
なる。
【0103】そこで動き検出用画像処理オブジェクト8
3は、続くステップSP36において、ステップSP3
5において得られた各加算結果に基づいて、図12に示
すように、現フレーム画像93のうちの総合マッチング
スコアの値が最も小さい前フレーム画像92の中心領域
92Aと同じ大きさの画像領域(すなわち最も相関が高
い領域部分であり、図12において破線で囲まれた部
分)93Bの中心位置(xC2,yC2)を記憶すると共
に、当該中心位置(xC2,yC2)から現フレーム画像9
3の中心位置(xC1,yC1)までの間の距離及び方向を
算出するようにして、前フレーム及び現フレーム間にお
ける画像全体の移動量を検出する。
【0104】続くステップSP37において、動き検出
用画像処理オブジェクト83は、ステップSP36にお
いて検出したかかる画像領域93Bについての総合マッ
チングスコアが予め定められた所定の閾値よりも小さい
か否かを判断することにより、その画像領域93Bと、
前フレーム画像92の中心領域92Aとの相関が所定レ
ベルよりも低いか否かを判断する。
【0105】ここでこのステップSP37において否定
結果を得ることは、前フレーム及び現フレーム間におい
て、現フレーム画像93のかかる画像領域93B内に動
きや輝度変化などが生じなかった、又は生じたがその動
きや輝度変化などが小さかったことを意味し、このとき
動き検出用画像処理オブジェクト83は、ステップSP
41に進む。
【0106】これに対してステップSP37において肯
定結果を得ることは、前フレーム及び現フレーム間にお
いて、現フレーム画像93のかかる画像領域93B内に
ある程度の動きや輝度変化が生じたことを意味する。そ
してこのとき動き検出用画像処理オブジェクト83は、
ステップSP38に進んで、ステップSP36において
検出した画像全体の移動量を利用しながら、前フレーム
画像92の中心領域92A内の各画素の輝度レベルと、
現フレーム画像93のかかる画像領域93B内の対応す
る画素の輝度レベルとの差分を順次計算する。
【0107】この結果このような処理によって、前フレ
ーム画像92の中心領域92Aと、現フレーム画像93
のかかる画像領域93Bとの差分画像のデータが得ら
れ、このデータ(以下、これを差分データと呼ぶ)が重
心計算用画像処理オブジェクト86(図8)に出力され
る。
【0108】重心計算用画像処理オブジェクト86は、
続くステップSP39において、動き検出用画像処理オ
ブジェクト83から与えられる差分データに基づいて、
差分データの値が予め設定された所定の閾値よりも大き
い画素が集まっている領域、すなわち画像内の動きのあ
った領域(以下、これを動き領域と呼ぶ)を検出すると
共に、その動き領域の画素数をカウントし、さらに当該
動き領域の重心位置を検出する。
【0109】そして重心計算用画像処理オブジェクト8
6は、この後ステップSP40において、上述のステッ
プSP36において検出した現フレーム画像93の画像
領域93Bが、前フレーム画像92を現フレーム画像と
した1つ前の処理において検出した位置と同じ位置にあ
るか否かを判断する。
【0110】ここで画像領域93Bが同じ位置にあるこ
とは、前フレーム及び現フレーム間において画像全体の
動きが小さいことを意味し、このとき重心計算用画像処
理オブジェクト86は、現フレーム画像93内のかかる
動き領域の画素数を予め設定された第1の閾値THST
比較する。これに対して画像領域93Bが同じ位置にな
いことは、前フレーム及び現フレーム間において画像全
体の動きが大きいことを意味し、このとき重心計算用画
像処理オブジェクト86は、かかる動き領域の画素数を
予め設定された第2の閾値THMV(>THST)と比較す
る。このように重心計算用画像処理オブジェクト86
は、かかる動き領域の画素数が第1又は第2の閾値TH
ST、THMVよりも大きいか否かを判断することによって
画像内に動きがあったか否かを判断する。
【0111】なおこのようにステップSP36において
検出した現フレーム画像93の画像領域93Bの位置に
応じて比較する閾値を分けたことにより、第1の閾値T
STを小さめに設定することによってペットロボット1
に動きがないときには小さな動きも敏感に検出すること
ができ、第2の閾値THMVを大きめに設定することによ
ってペットロボットに動きがあるときには感度を下げて
動きの誤検出を低減することができる。
【0112】続くステップSP41において、CPU1
0は、ステップSP40における動きの有無の判断結果
を10フレーム分取得したか否かを判断する。そして否定
結果を得るとステップSP31に戻り、この後ステップ
SP41において肯定結果を得るまでステップSP31
〜ステップSP41を繰り返す。
【0113】そしてやがてステップSP41において肯
定結果を得ると、重心計算用画像処理オブジェクト86
は、フレーム数のカウント値をリセットした後ステップ
SP42に進んで、ステップSP40における過去10フ
レーム分の動きの有無の判断結果に基づいて実際に外部
に動きがあったか否かを判断する。具体的には、重心計
算用画像処理オブジェクト86は、例えばかかる10フレ
ームのうちの半分以上のフレームにおいて動きが検出さ
れた場合には真に動きがあったと判断し、これに対して
半分以上のフレームにおいて動きが検出されなかった場
合には動きがなかったと判断する。
【0114】そして重心計算用画像処理オブジェクト8
6は、真に動きがあったと判断した場合には、ステップ
SP39において検出した最新のフレーム画像(過去10
フレームのうちの最後のフレーム)内における動き領域
の重心位置をアプリケーション・レイヤ71内の対応す
るモジュールに通知した後ステップSP31に戻り、こ
れに対して動きがなかった判断した場合には何の通知も
行うことなくこの後ステップSP31に戻る。
【0115】このようにしてこのペットロボット1にお
いては、自身の動きに伴う画像全体の動きを考慮しなが
ら画像内の動体を精度良く検出し得るようになされてい
る。
【0116】(5)動体検出結果の行動への反映 次に上述のようにして得られた動体検出結果が実際にペ
ットロボット1の行動にどのように反映されるかについ
て説明する。
【0117】動体検出処理手順RT2(図10)のステ
ップSP42において真に動きがあったと判断された場
合、この判断結果は図13に示すアプリケーション・レ
イヤ71内の行動決定モジュール100に通知される。
【0118】この行動決定モジュール100は、DRA
M11に格納される各センサデータに基づいて外部及び
内部の状態を認識すると共に、当該認識結果及び重心計
算用画像処理オブジェクト86(図8)から与えられる
通知等に基づいてペットロボット1の行動を決定するモ
ジュールであり、「喜び」、「悲しみ」、「驚き」、
「恐怖」、「嫌悪」及び「怒り」の合計6つの情動につ
いて、各情動ごとにその情動の強さを表すパラメータを
保持している。
【0119】そして行動決定モジュール100は、これ
ら各情動のパラメータの値を、それぞれ認識した外部及
び内部の状態や、重心計算用画像処理オブジェクト86
から与えられる通知等に基づいて所定周期で順次更新す
ると共に、これら各情動のパラメータの値と、認識した
外部及び内部の状態とに基づいて次の行動を決定し、当
該決定結果に基づく行動指令をミドル・ウェア・レイヤ
70の動作生成モジュール101又は追尾モジュール1
02に送出する。
【0120】また動作生成モジュール101及び追尾モ
ジュール102は、与えられる行動指令を基づいて、そ
の行動を行うために対応する各アクチュエータ25に与
えるべきサーボ指令値を生成し、これらを上述の駆動信
号としてロボティック・サーバ・オブジェクト62のバ
ーチャルロボット63及び信号処理回路14を順次介し
て対応する各アクチュエータ25に送出する。
【0121】この結果、例えば突然に動きが検出された
場合には、その刺激によって行動生成モジュール71内
の「驚き」のパラメータが上昇することにより、行動生
成モジュール71によって次の行動として「驚き」の感
情表出の行動が決定される。そしてこのようにして決定
された行動に応じた行動指令が動作生成モジュール70
に与えられ、当該動作生成モジュール70においてその
行動指令に基づくサーボ指令値等が生成されて、これが
対応するアクチュエータ25等に上述の駆動信号として
与えられることにより、驚きを表す行動が発現される。
【0122】また行動生成モジュール100において動
体の動きを追尾するような行動が決定された場合には、
当該決定された行動に応じた指令が追尾モジュール10
2に与えられ、当該追尾モジュール102においてその
行動指令に基づくサーボ指令値等が生成されて、これが
対応するアクチュエータ25等に上述の駆動信号として
与えられることにより、ペットロボット1が動体に興味
を示して頭をそちらに向けたり、歩いて追いかけたりす
る行動が発現される。
【0123】このようにしてこのペットロボット1にお
いては、動きの検出結果を自己の行動に反映し得るよう
になされている。
【0124】なおこのペットロボット1の場合、追尾モ
ジュール102は、行動決定モジュール100から一旦
行動指令を受け取った後は、必要な情報を行動決定モジ
ュール100を介すことなく重心計算用画像処理オブジ
ェクト86から取得するようになされており、これによ
り追尾などの高速なタスクを確実に行い得るようになさ
れている。
【0125】(6)本実施の形態の動作及び効果 以上の構成において、このペットロボット1では、フレ
ーム間における画像全体の移動量を検出し、当該移動量
を考慮したマッチング処理により画像内の動体を検出す
る。
【0126】従ってこのペットロボット1では、ペット
ロボット1の動作に伴う動体の誤検出を未然にかつ効率
良く防止しながら、動体を精度良く検出することができ
る。
【0127】またこのペットロボット1では、1台のC
CDカメラ20だけで動体の検出を行えるため、ペット
ロボット1全体としての構成を簡易化することができ
る。
【0128】以上の構成によれば、フレーム間における
画像全体の移動量を検出し、当該移動量を考慮したマッ
チング処理により画像内の動体を検出するようにしたこ
とにより、ペットロボット1の動作に伴う動体の誤検出
を未然にかつ効率良く防止しながら、動体を精度良く検
出することができる。かくするにつき動体の誤検出に起
因する不自然な行動を未然に防止して、エンターテイメ
ント性を向上させ得るペットロボットを実現できる。
【0129】(7)他の実施の形態 なお上述の実施の形態においては、本発明を4足歩行型
のペットロボット1に適用するようにした場合について
述べたが、本発明はこれに限らず、これ以外の装置に搭
載されるこの他種々の画像処理装置や4足歩行型以外の
ペットロボット又はペットロボット以外のロボット等に
広く適用することができる。
【0130】また上述の実施の形態においては、CCD
カメラ20から出力される画像情報(画像データ)に基
づく画像全体の移動量を検出する第1の検出手段を、ソ
フトウェア構成の動き検出用画像処理オブジェクト83
と、ハードウェア構成のIPE35とによって構成する
ようにした場合について述べたが、本発明はこれに限ら
ず、これらを全てソフトウェア構成又はハードウェア構
成とするようにしても良く、第1の検出手段の構成とし
ては、この他種々の構成を広く適用することができる。
【0131】さらに上述の実施の形態においては、かか
る第1の検出手段の検出結果を考慮した所定の動き検出
処理により、画像内の動きを検出する第2の検出手段と
して、ソフトウェア構成の動き検出用画像処理オブジェ
クト83及び重心計算用画像処理オブジェクト86と、
ハードウェア構成のIPE35とによって構成するよう
にした場合について述べたが、本発明はこれに限らず、
これらを全てソフトウェア構成又はハードウェア構成と
するようにしても良く、第2の検出手段の構成として
は、この他種々の構成を広く適用することができる。
【0132】さらに上述の実施の形態においては、前フ
レーム及び現フレーム間の画像全体の移動量を検出する
手法として、前フレーム画像92及び現フレーム画像9
3をそれぞれ4分割し、前フレーム画像92の分割領域
(第1〜第4のテンプレート分割領域92A1〜92
4)と、現フレーム画像93の対応する分割領域(第
1〜第4の検索画像分割領域93A1〜93A4)とをマ
ッチング処理するようにした場合について述べたが、本
発明はこれに限らず、前フレーム画像92及び現フレー
ム画像93を分割することなく、又は4分割以外の数に
分割してマッチング処理を行うようにしても良い。
【0133】
【発明の効果】上述のように本発明によれば、画像処理
装置及び方法において、画像情報に基づく画像全体の移
動量を検出し、当該検出結果を考慮した所定の動き検出
処理により、画像内の動きを検出するようにしたことに
より、画像全体の動きの有無に係わりなく、画像内の動
体を精度良く検出し得る画像処理装置及び方法を実現で
きる。
【0134】また本発明によれば、ロボット装置及びそ
の制御方法において、外部を撮像する撮像手段から出力
される画像情報に基づく画像全体の移動量を検出すると
共に、当該検出結果を考慮した所定の動き検出処理によ
り画像内の動きを検出し、この検出結果を行動に反映さ
せるようにしたことにより、ロボット装置の動作に伴う
撮像手段の動きの有無に係わりなく、当該撮像手段から
出力される画像情報に基づく画像内の動体を精度良く検
出して、当該検出結果を反映した行動を行うことがで
き、かくしてエンターテイメント性を向上させ得るロボ
ット装置及びその制御方法を実現できる。
【図面の簡単な説明】
【図1】本実施の形態によるペットロボットの構成を示
す斜視図である。
【図2】ペットロボットの回路構成を示すブロック図で
ある。
【図3】信号処理回路の構成を示すブロック図である。
【図4】ペットロボットにおける画像データの転送方法
の説明に供するブロック図である。
【図5】制御プログラムのソフトウェア構成を示す概念
図である。
【図6】画像処理手順を示すフローチャートである。
【図7】画像処理手順を示すフローチャートである。
【図8】ペットロボットにおける画像処理方法の説明に
供するブロック図である。
【図9】ペットロボットにおける動き検出の概要説明に
供する概念図である。
【図10】動体検出処理手順を示すフローチャートであ
る。
【図11】ペットロボットにおける動体検出手順の概要
説明に供する概念図である。
【図12】ペットロボットにおける画像全体の移動量検
出の仕方の説明に供する概念図である。
【図13】動体検出結果を行動に反映させるための説明
に供するブロック図である。
【符号の説明】
1……ペットロボット、10……CPU、11……DR
AM、14……信号処理回路、20……CCDカメラ、
34……FBK/CDT、35……IPE、61A……
FBK/CDTドライバ、63……バーチャル・ロボッ
ト、83……動き検出画像処理オブジェクト、86……
重心計算用画像処理オブジェクト、92……前フレーム
画像、92A……中心領域、92A1〜92A4……テン
プレート分割領域、93……現フレーム画像、93A1
〜93A4……検索画像分割領域、93B……画像領
域、100……行動決定モジュール、101……動作生
成モジュール、102……追尾モジュール、RT2……
動体検出処理手順。
───────────────────────────────────────────────────── フロントページの続き (51)Int.Cl.7 識別記号 FI テーマコート゛(参考) G06T 1/00 300 G06T 1/00 300 7/00 300 7/00 300D Fターム(参考) 2C150 CA01 CA02 CA04 DA04 DA05 DA24 DA25 DA26 DA27 DA28 DF03 DF04 DF33 ED42 ED47 ED52 EF03 EF07 EF13 EF16 EF23 EF29 EF34 EF36 3C007 AS36 CS08 KS18 KS23 KS24 KS27 KS31 KS39 KT01 KT11 WA04 WA14 5B057 AA05 BA02 CA01 CA12 CA16 DA06 DC06 DC16 DC32 5L096 AA02 BA05 CA14 FA02 FA06 FA60 GA08 GA19 HA04 JA03 JA09

Claims (12)

    【特許請求の範囲】
  1. 【請求項1】画像情報に基づく画像全体の移動量を検出
    する第1の検出手段と、 上記第1の検出手段の検出結果を考慮した所定の動き検
    出処理により、上記画像内の動きを検出する第2の検出
    手段とを具えることを特徴とする画像処理装置。
  2. 【請求項2】上記第1の検出手段は、 上記画像情報に基づく現フレームの分割画像と、上記画
    像情報に基づく前フレームの対応する位置の分割画像と
    のマッチングスコアを画素単位でずらしながら算出し、
    算出結果に基づいて上記画像全体の移動量を検出するこ
    とを特徴とする請求項1に記載の画像処理装置。
  3. 【請求項3】上記第2の検出手段は、 上記検出した移動量に応じて、上記画像内の上記動きの
    検出感度を変化させることを特徴とする請求項1に記載
    の画像処理装置。
  4. 【請求項4】画像情報に基づく画像全体の移動量を検出
    する第1のステップと、 上記検出した移動量を考慮した所定の動き検出処理によ
    り、上記画像内の動きを検出する第2のステップとを具
    えることを特徴とする画像処理方法。
  5. 【請求項5】上記第1のステップでは、 上記画像情報に基づく現フレームの分割画像と、上記画
    像情報に基づく前フレームの対応する位置の分割画像と
    のマッチングスコアを画素単位でずらしながら算出し、
    算出結果に基づいて上記画像全体の移動量を検出するこ
    とを特徴とする請求項4に記載の画像処理方法。
  6. 【請求項6】上記第2のステップでは、 上記検出した移動量に応じて、上記画像内の上記動きの
    検出感度を変化させることを特徴とする請求項4に記載
    の画像処理方法。
  7. 【請求項7】行動を自律的に決定して発現するロボット
    装置において、 外部を撮像する撮像手段と、 上記撮像手段から出力される画像情報に基づく画像全体
    の移動量を検出する第1の検出手段と、 上記第1の検出手段の検出結果を考慮した所定の動き検
    出処理により、上記画像内の動きを検出する第2の検出
    手段と、 を具え、 第2の検出手段の検出結果を上記行動に反映させること
    を特徴とするロボット装置。
  8. 【請求項8】上記第1の検出手段は、 上記画像情報に基づく現フレームの分割画像と、上記画
    像情報に基づく前フレームの対応する位置の分割画像と
    のマッチングスコアを画素単位でずらしながら算出し、
    算出結果に基づいて上記画像全体の移動量を検出するこ
    とを特徴とする請求項7に記載のロボット装置。
  9. 【請求項9】上記第2の検出手段は、 上記検出した移動量に応じて、上記画像内の上記動きの
    検出感度を変化させることを特徴とする請求項7に記載
    のロボット装置。
  10. 【請求項10】行動を自律的に決定して発現するロボッ
    ト装置の制御方法において、 上記ロボットに搭載された撮像手段により外部を撮像す
    ると共に、当該撮像手段から出力される画像情報に基づ
    く画像全体の移動量を検出する第1のステップと、 上記検出した移動量を考慮した所定の動き検出処理によ
    り、上記画像内の動きを検出する第2のステップと、上
    記第2のステップでの検出結果を上記ロボット装置の上
    記行動に反映させる 第3のステップとを具えることを特徴とするロボット装
    置の制御方法。
  11. 【請求項11】上記第1のステップでは、 上記画像情報に基づく現フレームの分割画像と、上記画
    像情報に基づく前フレームの対応する位置の分割画像と
    のマッチングスコアを画素単位でずらしながら算出し、
    算出結果に基づいて上記画像全体の移動量を検出するこ
    とを特徴とする請求項10に記載のロボット装置の制御
    方法。
  12. 【請求項12】上記第2のステップでは、 上記検出した移動量に応じて、上記画像内の上記動きの
    検出感度を変化させることを特徴とする請求項10に記
    載のロボット装置の制御方法。
JP2001046788A 2001-02-22 2001-02-22 画像処理装置及び方法並びにロボット装置及びその制御方法 Expired - Fee Related JP4618470B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2001046788A JP4618470B2 (ja) 2001-02-22 2001-02-22 画像処理装置及び方法並びにロボット装置及びその制御方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2001046788A JP4618470B2 (ja) 2001-02-22 2001-02-22 画像処理装置及び方法並びにロボット装置及びその制御方法

Publications (2)

Publication Number Publication Date
JP2002251615A true JP2002251615A (ja) 2002-09-06
JP4618470B2 JP4618470B2 (ja) 2011-01-26

Family

ID=18908344

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2001046788A Expired - Fee Related JP4618470B2 (ja) 2001-02-22 2001-02-22 画像処理装置及び方法並びにロボット装置及びその制御方法

Country Status (1)

Country Link
JP (1) JP4618470B2 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103764304A (zh) * 2011-04-05 2014-04-30 泽恩机器人有限公司 在机器人***中拾取动作之后使传感器测量值无效的方法

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07298247A (ja) * 1994-04-22 1995-11-10 Oki Electric Ind Co Ltd Tvカメラを用いた監視方法及び監視システム
JP2679778B2 (ja) * 1990-05-16 1997-11-19 松下電器産業株式会社 画像の動き検出装置
JP2000222584A (ja) * 1999-01-29 2000-08-11 Toshiba Corp 映像情報記述方法、映像検索方法及び映像検索装置
JP2000244926A (ja) * 1999-02-19 2000-09-08 Nec Corp 動画像符号化の動きベクトル探索方法
JP2001016606A (ja) * 1999-06-29 2001-01-19 Sharp Corp 動作認識システムおよび動作認識プログラムを記録した記録媒体

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2679778B2 (ja) * 1990-05-16 1997-11-19 松下電器産業株式会社 画像の動き検出装置
JPH07298247A (ja) * 1994-04-22 1995-11-10 Oki Electric Ind Co Ltd Tvカメラを用いた監視方法及び監視システム
JP2000222584A (ja) * 1999-01-29 2000-08-11 Toshiba Corp 映像情報記述方法、映像検索方法及び映像検索装置
JP2000244926A (ja) * 1999-02-19 2000-09-08 Nec Corp 動画像符号化の動きベクトル探索方法
JP2001016606A (ja) * 1999-06-29 2001-01-19 Sharp Corp 動作認識システムおよび動作認識プログラムを記録した記録媒体

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103764304A (zh) * 2011-04-05 2014-04-30 泽恩机器人有限公司 在机器人***中拾取动作之后使传感器测量值无效的方法
JP2014511772A (ja) * 2011-04-05 2014-05-19 ゼンロボティクス オイ ロボットシステムにおいてピッキング動作後にセンサ測定値を無効にする方法

Also Published As

Publication number Publication date
JP4618470B2 (ja) 2011-01-26

Similar Documents

Publication Publication Date Title
JP6854344B2 (ja) 直方体検出のための深層機械学習システム
JP4609584B2 (ja) ロボット装置、顔認識方法及び顔認識装置
US7532743B2 (en) Object detector, object detecting method and robot
US10970850B2 (en) Method and device for recognizing motion
JP2021089724A (ja) 構造的制約及び物理的制約を伴う3d自動ラベル付け
WO2020031767A1 (ja) 情報処理装置、情報処理方法、及びプログラム
JP2003285288A (ja) 充電システム及び充電制御方法、ロボット装置、充電装置、及び充電制御プログラム及び記録媒体
JP2004133637A (ja) 顔検出装置、顔検出方法及びプログラム、並びにロボット装置
US10726248B2 (en) Validating gesture recognition capabilities of automated systems
KR20140009900A (ko) 로봇 제어 시스템 및 그 동작 방법
JP4759810B2 (ja) 画像処理装置及びロボット装置並びに画像処理方法
JP7513030B2 (ja) 情報処理装置、情報処理方法、情報処理プログラム及び制御装置
JP2004298975A (ja) ロボット装置、障害物探索方法
US20120309530A1 (en) Rein-controlling gestures
JP4235858B2 (ja) ロボット装置及びロボット装置の障害物マップ生成方法
US11986959B2 (en) Information processing device, action decision method and program
JP4618470B2 (ja) 画像処理装置及び方法並びにロボット装置及びその制御方法
Hsiao et al. Proactive sensing for improving hand pose estimation
JP2004130427A (ja) ロボット装置及びロボット装置の動作制御方法
JP4779226B2 (ja) ロボット装置、並びに、画像記憶方法及び画像記憶装置、並びに、制御プログラム及び記録媒体
JP4379052B2 (ja) 動体検出装置、動体検出方法、及びロボット装置
JP4193098B2 (ja) トラッキング装置、トラッキング装置のトラッキング方法及びロボット装置
JP2001157980A (ja) ロボット装置及びその制御方法
JP2005271137A (ja) ロボット装置及びその制御方法
JP2001157979A (ja) ロボット装置及びその制御方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20080208

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20100713

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100722

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100913

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: 20100930

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20101013

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20131105

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20131105

Year of fee payment: 3

LAPS Cancellation because of no payment of annual fees