"ハンドルのスライド操作で被操作機器の操作を開始したかを判定する操作開始判定部と、前記操作開始判定部により開始したスライド操作を終了する操作終了判定部と、前記操作開始判定部の開始により、握った前記ハンドル上の手の動きを読み取る手動作測定部と、前記ハンドル上の手の動きの意味を解析する操作判定部と、前記操作判定部により解析された手の動きの意味に基づき前記被操作機器を駆動する駆動部と、を備える運転支援装置。ハンドルのスライド操作で被操作機器の操作を開始したかを判定する操作開始判定部と、前記操作開始判定部により開始したスライド操作を終了する操作終了判定部と、前記操作開始判定部の開始により、押し当てた前記ハンドル上の手のひらの動きを読み取る手動作測定部と、前記ハンドル上の手の動きの意味を解析する操作判定部と、前記操作判定部により解析された手の動きの意味に基づき前記被操作機器を駆動する駆動部と、を備える運転支援装置。非回転部に固定されたカメラは、前記ハンドル周辺の被回転部の形状や取り付けたマークにより、振動による前記カメラの向きを測定し、振動をキャンセルする相対動作計算部または、振動したときには操作しないと判定する操作判定部を備えた、請求項1または2記載の運転支援装置。非回転部に固定されたカメラは、前記ハンドルの形状や該ハンドル上に取り付けたマークにより、陀角によるハンドルの回転の動きを測定し、前記ハンドルの回転をキャンセルする相対動作計算部または、前記ハンドルが回転したときは操作しないと判定する操作判定部を備えた、請求項1または2記載の運転支援装置。前記相対動作計算部は、前記ハンドルの半径と角度の次元にベクトル変換し、前記ハンドルの半径分オフセットを加えてハンドルの形状を直線に見えるように変換した、請求項1または2記載の運転支援装置。前記操作判定部は、左右の手で違う操作判定をするようにした、請求項1または2記載の運転支援装置。従来の技術は、入力操作するために一度視線を向けて確認する必要があるほかに、ハンドルから手を離す必要があることから安全上の問題があった。この実施形態では、運転の安全性を確保することのできる入力インターフェースで被操作機器を操作可能とした運転支援装置を提供する。実施形態によれば、ハンドルのスライド操作で被操作機器の操作を開始したかを判定する操作開始判定部と、前記操作開始判定部により開始したスライド操作を終了する操作終了判定部と、前記操作開始判定部の開始により、握った前記ハンドル上の手の動きを読み取る手動作測定部と、前記ハンドル上の手の動きの意味を解析する操作判定部と、前記操作判定部により解析された手の動きの意味に基づき前記被操作機器を駆動する駆動部と、を備える。また、ハンドルのスライド操作で被操作機器の操作を開始したかを判定する操作開始判定部と、前記操作開始判定部により開始したスライド操作を終了する操作終了判定部と、前記操作開始判定部の開始により、押し当てた前記ハンドル上の手のひらの動きを読み取る手動作測定部と、前記ハンドル上の手の動きの意味を解析する操作判定部と、前記操作判定部により解析された手の動きの意味に基づき前記被操作機器を駆動する駆動部と、を備える。以下、実施形態について、図面を参照しながら詳細に説明する。第1の実施形態図1は、運転支援装置に関する第1の実施形態について説明するための概略的なシステム構成図を示す。この実施形態は、ドライバーが手をハンドル上でスライドさせることで、そのスライド動作を読み取ることにより、カーナビゲーションなどの被操作機器を、ボタンやタッチパネルを操作することなしに操作を可能とするものである。図1において、運転支援装置は、ドライバー10がハンドルのスライド操作を開始したかを判定する操作開始判定部11、スライド操作を処理する操作処理部12、スライド操作に基づきウインドウの上げ下げやナビなど表示装置のカーソル位置移動やヘッドアップディスプレイの輝度調整や位置調整などを行う駆動部13、スライドによる機器操作の終了を判定する操作終了判定部14を備える。操作処理部12は、ハンドル上の手の動きを測定する手動作測定部121、ハンドルの動きを測定するハンドル位置測定部122、ハンドル上の手の動きがハンドルに対して相対的に動いていることを判断するための相対動作計算部123、どんなスライド操作をしたかを判定する操作判定部124を備える。これにより、ドライバーが被操作機器を見る必要がなく、ハンドルから手を離す必要がなく、操作量を手で感じることができるアナログ的な操作を可能とする。スライド操作が簡単であるため誤動作を防止するために、操作開始判定部11と操作終了判定部14を備える。基本的な動作を図2のフローチャートに示す。<操作開始判定部11について>操作開始判定部11では、ハンドルのスライド操作で被操作機器の操作を開始するかを判定する。例えば○○を操作するということをドライバーが音声を発することにより、音声認識部21が被操作機器:○○を対象としたスライド操作の開始であることを認識する。スライド操作の開始を判定する手段としては、音声によるスライド操作開始判定の他に、ハンドルからメータ等を撮像する、例えばドライバーの前方に設置されたカメラ22により指の上げ下げやジェスチャーや口の動きを読み取ってスライド操作の開始を判定してもよい。また、操作開始をしてよいかの再確認をヘッドアップディスプレイなどの表示部23や音声案内部24によって行い、それに対してドライバーが声やジェスチャーによって再操作することにより、はじめて操作開始としてもよい。そうすることにより誤って操作してしまうのを防ぐことができる。<操作処理部12について>操作処理部12は、スライド操作の開始判定があってから操作の終了判定があるまでの間、ハンドル上の手の動きを読み取り、それが被操作機器:○○を操作させる動作かを判定する。操作処理部12には、手動作測定部121、ハンドル位置測定部122、相対動作計算部123、および操作判定部124を備える。以下、操作処理部12の各部について説明する。<手動作測定部121について>手動作測定部121においてハンドルの位置に対して直接相対的な動作を読み取る場合には、ハンドル位置測定部122と相対動作計算部123は必要としない。その方法として、ハンドル上のタッチパッド25を使用して手の動きを読み取る方法や、ハンドルの回転物やハンドルの輪の内部にカメラを取り付けて手の動きを読み取る方法がある。その場合、ハンドルの輪のすべてをタッチパッド25にしてもよいし、ハンドルの回転部やハンドルの輪の内部に複数のカメラを設置してもよい。絶対的な手の動作を読み取る場合には、ハンドル位置測定部122と相対動作計算部123を必要とする。その方法として、ハンドルに向けてカメラを取り付けて手の動きを読み取る方法がある。その場合、複数のカメラをハンドルに向けて設置し、ハンドル上のどこを握っていても操作を認識できるようにしてもよい。カメラで手の動きを読み取る方法としては、公知である勾配法やブロックマッチング等の画像処理により行う。<ハンドル位置測定部122について>ハンドル上の手の動作をハンドルに対して相対的に読み取るためには、手動作測定部121で絶対的な手の動きを測定することに加え、ハンドルの絶対的な動きを読み取る必要がある。ハンドルの動きを読み取るためには、例えばCANなどの車内LAN26による陀角情報やカメラ22によってハンドルの形状を読み取ってその動きを測定する。または、車体15の振動成分をキャンセルするために、ハンドルHDの回転で回転しない部分にマークを取り付け、ハンドルの回転成分をキャンセルするためにハンドルの回転する部分にマークを複数取り付け、その位置を読み取ってハンドル位置を測定してもよい。そうすることにより、車体15の振動でのカメラからの角度ずれや、ハンドルの回転角度を読み取ることができる。具体的には振動成分をキャンセルするために、車体内に図3に示すように振動キャンセル用の固定位置を示すマークM1を、ハンドルHDの回転角度を測定するためにマークM2をそれぞれ取り付ける。以下、マークM1,M2の取り付け位置とマークM1,M2に基づき振動成分のキャンセルについて説明する。まず、振動成分をキャンセルするためのマークM1について説明する。図4に示すように、カメラ22の位置とハンドルHDの回転する部分より手前の動かない部分にマークM1を取り付けるか特徴点を見つけておく。公知である勾配法やブロックマッチング等の画像処理により、カメラ22に対してそのマークM1の動作を相対的に読み取る。振動でのカメラ22から見える位置ずれは、カメラ22の向く方向のみ変わりカメラ22とマークM1との相対的な位置ずれは発生しないものとして、カメラ22の角度ずれを計算する。図5のような取得画像位置までの焦点距離をfとして、取得画像位置でのマークM1の位置をx1、y1、f、振動などによりずれ位置をx2y2、fとした場合、角度ずれの係数をRx、Ry、Rzとし、角度ずれは微量であるため計算を一次近似した場合下記のように表される。x2-x1=-RxRy-y1Rzy2-y1=-RxRyx1Rz上記は、マークを2点必要とするが、計算を簡単にするために画面への方向であるz軸の角度ずれは起きないとした場合次のようになり、マークを1点として計算することができる。x2-x1=-x1y1/fRxffx1x11/fRyy2-y1=-ffy1y11/fRxx1y1/fRy以上の計算結果から振動による影響をキャンセルする。次に、ハンドルの回転成分をキャンセルするためのマークM2について説明する。ハンドルHDの回転角度は車内LAN26から取得する方法や、カメラ22の映像から取得する方法がある。カメラ映像から取得する場合、マークM2を回転するハンドル上握るところに限らずに取り付けておいて公知である勾配法やブロックマッチング等により、カメラ22に対してそのマークの動作を相対的に読み取る。ハンドルHDを回転させてもマークM2が見えるようにするために、複数マークを回転するハンドル上握るところに限らずに取り付ける。上記の振動による影響をキャンセルさせた後のマークM2の位置をx2,y2,fとする。次に、ハンドルHDの動きが画面上ではどのような動きになるかを特定するために、マークM2の位置からハンドルHDの回転量を測定する。マークM2のハンドル回転による中心位置をMpxMpy、Mpzとし、ハンドルHDの軸の向きをHdxHdyHdzとした場合、面の式は、Hdxx-MpxHdyy-MpyHdzz-Mpz=0となり、マークのハンドル回転によりできる面上のカメラに対する位置ExEy,Ezへのベクトルはx2y2fとなるので、Ex=x2tEy=y2tEz=ftとなり、その値をマークM2のハンドル回転によりできる面の式に代入してtを導き出し、Ex,Ey,Ezが求まる。次にハンドル円の面を、ハンドル円の中心を0,0,0でz=0の面に変換するために、をハンドルの中心で引いてx3,y3,z3、x軸回転しx4,y4,z4、y軸回転させるx5,y5,z5。x軸回転の回転角度を、Rhx、y軸の回転角度をRhyとすると、x3=Ex-Mpxy3=Ey-Mpyz3=Ez-Mpzx4=x3y4=y3cos-z3sinz4=z3cosy3sinx5=x4cosz4siny5=y4z5=z4cos-x4sinとなり、ここでのそれぞれの回転角度は下記のとおりである。なお、ハンドル円とは、ハンドルHDの太さの大小に関係なく、ハンドルHDの中心部分で描かれる円である。Rhx=atanRhy=-atanHdysin次に、マークM2のz軸回転角度位置を取得し、回転していないときの角度を引いた値が、そのときのハンドルの回転角度Rhzとなる。上記の変換によるハンドルの回転角度の取得は、予めマークの位置ごとにLookUpTableや射影変換式を用意しておいて取得してもよい。<相対動作計算部123について>相対動作計算部123は、手動作測定部121で取得した絶対的な手の動きを、画像上から複数のベクトルA群として手動作測定部121より検出する。そのベクトルA群をハンドル位置測定部122で取得した絶対的なハンドル位置とから、ハンドルに対する手の相対動作をベクトルH群として変換し求める。一つのベクトルHはHx,Hy,Hu,Hvの4つのパラメータからなる。画面上で取得できる手の動きベクトルは複数取得でき、その複数のベクトルを使用することになるが、変換計算は一つのベクトルのみで説明する。画面上で取得した1つの絶対的な手の動きベクトルAをAx,Ay,Au,Avとし、車体の振動による影響をキャンセルしたベクトルBをBx,By,Bu,Bvとし、今の振動の回転量をR1x,R1y,R1zとし、1フレーム前の回転量をR0x,R0y,R0zとした場合、Bx,Byは、Bx=Ax-R1xR1y-AyR1zBy=Ay-R1xR1yAxR1zとなり、一つ前のフレームでの振動の影響をキャンセルする前の位置CxCyは、Cx=Ax-AuCy=Ay-Avなので、一つ前のフレームでの振動の影響をキャンセルした位置Dx,Dyは、Dx=Cx-R0xR0y-CyR0zDy=Cy-R0xR0yCxR0zなのでBu,Bvは、Bu=Bx-DxBv=By-Dyとなる。次に、ハンドルの動きが画面上ではどのような動きになるかを特定する。ハンドル回転中心位置をHpx,Hpy,Hpzとし、ハンドルの軸の向きハンドル面に対して垂直方向をHdx,Hdy,Hdzとした場合、面の式は、Hdxx-HpxHdyy-HpyHdzz-Hpz=0となり、車体の振動による影響をキャンセルしたベクトルBx,By,Bu,Bvのハンドル面上のカメラに対する位置Ex,Ey,Ezへのベクトル量は、Bx,By,fとなるので、Ex=BxtEy=BytEz=ftとなり、その値をハンドル面の式に代入してtを導き出し、Ex,Ey,Ezが求まる。そして、ハンドル面をハンドル円の中心を0,0,0でz=0の面に変換するために、Ex,Ey,Ezをハンドルの中心で引いてx3,y3,z3、x軸回転しx4,y4,z4、y軸回転させるx5,y5,z5。x軸回転の回転角度をRhx,y軸の回転角度をRhyとすると、x3=Ex-Hpxy3=Ey-Hpyz3=Ez-Hpzx4=x3y4=y3cos-z3sinz4=z3cosy3sinx5=x4cosz4sin-x4sinとなり、ここでのx軸およびy軸の回転角度は、下記のとおりである。Rhx=atanRhy=-atanHdysin今のハンドルHDの回転角度をRh1zとし、1フレーム前のハンドルの回転角度をRh0zとした場合、1フレームでのハンドル回転角度Rhdzは、Rhdz=Rh1z-Rh0zとなり、z=0の面にしておいたベクトルの座標を-Rhdz分z軸回転させてx6,y6,z6、1フレーム前の座標を特定する。x6=x5cos-y5siny6=y5cosx5sinz6=z5その値をz=0への変換の逆を行う。つまり、-Rhy分y軸回転し、-Rhx分x軸回転し、ハンドル回転中心位置Hpx,Hpy,Hpzを加算する。その値をFx,Fy,Fzとし、ベクトルを検出した面へ展開した座標をGx,Gyとすると、Gx=fFx/FzGy=fFy/Fzとなり、ハンドルの回転成分をキャンセルしたベクトルHHx,Hy,Hu,Hvは、Hx=BxHy=ByHu=Bu-Hv=Bv-となり、このベクトルHHx,Hy,Hu,Hvを利用する。しかしながら、このままではまだ扱いづらい。そのため、図6b,cの太線に示すように、ハンドル円を直線に伸ばして処理させる。ベクトルの頂点とそのベクトルの1フレーム前の位置をそれぞれ、上記したとおり、ハンドル面の3次位置への変換、ハンドルの中心座標減算,Rhx分x軸回転、Rhy分y軸回転した位置での半径とz軸回転角度θを取得する。そのz軸回転角度θにハンドルの回転角度の絶対量Rhzをキャンセルして、ハンドルの位置に対する手の位置とする。そして、半径をy軸、角度をx軸として変換させる。次に、ハンドルの形が楕円だった場合には、z軸回転角度ごとにハンドルの半径ずれ分オフセットを加えて、ハンドルの形状が直線に見えるように変換し、ハンドル位置が0になるようにする。以上の変換により操作の判定をわかりやすくさせる。このときのベクトルIをIx,Iy,Iu,Ivとすると、それぞれの意味は下記のようになり、このベクトルを操作判定部124に送り、操作を判定させる。Ix:ハンドルの輪の方向輪の中心に対しての角度の位置Iy:ハンドルの輪の中心に対しての方向の位置0はハンドルの輪の位置Iu:ハンドルの輪の方向の移動量Iv:ハンドルの輪の中心に対しての方向の移動量上記の変換は、予め元の画像位置x,yに対して半径とz軸回転角度のLookUpTableを用意しておきベクトルを線形補間などで展開して、ハンドルの回転角度分シフトさせて、ハンドルの形が楕円だった場合にはオフセットを加えて変換させてもよい。また、z軸回転角度ごとにハンドルの形が楕円だった場合を考慮したLookUpTableを用意して、画像をそのLookUpTableで展開し、その画像からベクトルを検出させてもよい。その場合、元画像から振動成分をキャンセルした位置からLookUpTableで展開させる。<操作判定部124について>操作判定部124では、相対動作計算部123からベクトルIを複数もらうことになるが、そのベクトルI群からスライド操作の内容を判断して、それに応じた被操作機器へのアナログ的な操作量、方向、もしくは操作指令コードを出力する。この出力は音声などで指定した被操作機器によって特定となる。図7に示すように、表示部23上の縦方向へのアナログ移動操作指令と横方向へのアナログ移動操作指令を行う場合について説明する。表示部23の縦の操作を自動二輪車のアクセルのようにハンドルをねじる方向7a、表示部23の横の操作をハンドルの輪のある方向に動かす方向7bとする。そうした場合、相対動作計算部123でのベクトルI群の検出結果は、図8のようになる。まずハンドル上の手のある位置を特定する。ハンドルの輪の楕円がy=0の直線に展開されているので、輪の太さ分の領域y=0付近にある程度の大きさのベクトルが多数存在していれば、そのxの範囲a1<x<a2でベクトルの分布を測定する。そうすることにより、ハンドル上の操作のベクトルとそうでないベクトルとの切り分けを行う。また、色情報により手の色と特定してもよい。縦の操作は、同じy位置Iyとなるもの同士が同じy方向の移動量Ivとなっており、ハンドルの位置y=0で一番大きく、上下y≠0で小さい状態になり、操作の移動量はハンドル位置y=0でのy方向のベクトル量で計算する。例えばハンドルの輪の付近の範囲をRange1、ハンドルの輪の外側の範囲をRange2、ハンドルの輪の中側の範囲をRange3とする。まずベクトルの大きさIvがほぼ0となるベクトルは除去する。そして残った個数が少ない場合はスライド操作ではないと判定する。そしてRange1にあるベクトルのIvの平均J1vを求める。Range1のIvの分散例えば平均からのずれ量Iv-J1vがある閾値より大きい個数を全体の個数で割った割合が大きい場合、ばらついているためスライド操作ではないと判定する。同様にRange2の平均J2vと分散を計算し、分散が大きい場合は、ばらついているためスライド操作ではないと判定する。同様にRange3の平均J3vと分散を計算し、分散が大きい場合は、ばらついているためスライド操作ではないと判定する。次に、3つの平均J1vとJ2vとJ3vが同じ極性ではない場合はスライド操作ではないと判定する。次に、Range1での大きさJ1vが他の範囲での大きさJ2vとJ3vに対する割合が、ある範囲で大きくなっている場合かつc1<J1v/J3v<c2、ただしc1,c2は1以上に、スライド操作とする。そして縦操作の移動量はJ1vにある係数をかけた値で計算する。横の操作は、手のある位置にあるすべてのベクトルがほぼ同じx方向の移動量Iuとなっており、操作の移動量はハンドル位置y=0でのx方向のベクトル量で計算する。例えば、まずベクトルの大きさIuがほぼ0となるベクトルは除去する。そして残った個数が少ない場合はスライド操作ではないと判定する。そしてRange1にあるベクトルのIuの平均J1uを求める。Range1のIuの分散例えば平均からのずれ量Iu-J1uがある閾値より大きい個数を全体の個数で割った割合が大きい場合、ばらついているためスライド操作ではないと判定する。同様にRange2の平均J2uと分散を計算し、分散が大きい場合は、ばらついているためスライド操作ではないと判定する。同様にRange3の平均J3uと分散を計算し、分散が大きい場合は、ばらついているためスライド操作ではないと判定する。次に、3つの平均J1uとJ2uとJ3uが同じ極性ではない場合は、スライド操作ではないと判定する。次に、Range1での大きさJ1uが他の範囲での大きさJ2uとJ3uに対する割合がある範囲に収まっている場合、かつ、ただしd1は1以下d2は1以上に、スライド操作とする。そして横操作の移動量はJ1uにある係数をかけた値で計算する。カメラはドライバーに対して逆向きとしている場合には、横操作は左右逆方向となる。ここでの操作をアナログ的な移動量や方向とした場合、縦操作と横操作を合わせたのが移動量、方向となる。たとえば操作の移動量、方向が表示部23上のカーソルの移動量、方向に変換される。ここでの操作を操作指令とした場合には、1フレーム間の移動量ではなく複数フレームでの累計移動量が指定した閾値を超えた場合に操作指令とする。たとえば縦操作の累計移動量が指定した閾値を超えた場合に、表示部23上の表示を違う画像に切り替える。操作範囲が不足する場合には、一度手を離して位置を戻し、再び掴んで操作させる。手をハンドルから離しているときは操作していないことにすることで、スライドを限りなく行うことができる。この実施形態のいろいろな操作方法例を1~12に示し説明する。1アナログ操作だけではなく、縦方向操作を上下にすばやく行いYes決定、選択判定、横方向操作を左右にすばやく行いNoキャンセル判定としてもよい。2ハンドル上で手がべたついて滑らない場合を想定した場合、手の肉が変形する分だけの小さなねじれと輪の方向の動きとなる。その場合では、最初の手の位置を基準として、基準位置からの手のずれ量により、操作の移動速度として操作してもよい。また、横方向は握った手の手首をねじる動作で決めてもよい。また、上下や左右のように手の肉の変形とそれを戻す動作を一連の動作とし、最初に移動させた方向を操作移動方向としてもよい。3ハンドルを強く握ったときベクトルの大きさがどれも小さく、向きがばらばらで、移動後すぐにもとの位置に戻るに決定とし、手首をねじった時で、移動後すぐにもとの位置に戻る、または手首をねじるのを左右素早く行う、または、手を軽く開いたときで、移動後すぐにもとの位置に戻るでキャンセルとしてもよい。4ハンドルを親指側で強く握った場合決定とし、小指側で強く握った場合キャンセルとしてもよい。また、強く握った指ごとに操作を変えてもよい。5両手を使い、それぞれの手が上下逆の場合は回転操作とし、それぞれの手を近づける場合は縮小操作とし、それぞれの手を遠ざける場合は拡大操作として、操作を拡張させてもよい。6指を上げて操作し、上げる指によって操作対象を変更してもよい。また、指を上げたときに操作対象が何であるか音声で知らせてもよい。その場合、片方の手で指を上げて操作対象、もう一方の手でアナログ操作としてもよい。7左と右の手で違う操作系としてもよい。8片方の手の位置を基準とした相対距離での操作としてもよい。9右手で上下と左右、左手で奥行きとねじれ方向や時間方向など、左右の手を使用して3次元や4次元操作としてもよい。10ハンドルをつかんだ手の位置もしくは、操作開始したときの手の位置を基準として、そこからの相対距離によって操作される移動の速度を変更してもよい。11ハンドル上の決められた位置を最初につかむことにより、操作系を変えてもよい。12手の大きさを検出してその大きさによって、カーソルや移動したかの閾値や移動量の正規化をさせてもよい。そうすることにより、人によっての操作間隔のずれが軽減される。<駆動部13について>駆動部13は、操作される装置である。例えば、操作した場合、車内LAN26経由でウインドウの上げ下げや、ナビなど表示装置のカーソル位置移動や、ヘッドアップディスプレイの輝度調整や位置調整などを行う。操作したかどうかをドライバーに知らせるために、音声で案内させてもよい。例えば、アナログ操作では、決められた移動量に対して音を1回鳴らし、その量の数倍の移動をした場合には現在どの状態かを音声で案内すればよい。例えば、車内温度を操作した場合、1度ごとにポンという音を鳴らし、5度分解能になったときに15度ですというように音声で案内する。また、操作する方向によって案内する音の音質を変更してもよい。また、操作したかどうかだけであれば音声で操作したことを知らせればよい。操作される装置は他に、音楽のボリュームや、選曲リスト、ナビの操作や、ワイパー速度やウインドウ開閉などの車内環境や、スマートフォンなどの持込機器でもよい。また、インターネット経由で家や会社などの車外の操作を行ってもよい。また、車両に取り付けられたカメラの表示の切り替えやその俯瞰画像の視点の切り替えなど運転状況により異なる状態をドライバーが操作してもよい。<キャリブレーションについて>上記の動作を実現するためには、ハンドルHD上のマークM2の回転中心位置MpxMpy,MpzとハンドルHDが回転していないときの角度Rhz、ハンドル面の垂直方向Hdx,Hdy,Hdz、ハンドル面の回転中心位置Hpx,Hpy,Hpz、ハンドルHDの角度ごとの半径がわかっている必要がある。そのためそれぞれの位置を取得するために、最初にキャリブレーションする必要がある。カメラ22の取り付け位置や角度、マークまでの距離やハンドルの位置や向きを実測してもよいが、ここでは簡単にキャリブレーションする方法を説明する。まず、図9および図3に示すように、マークM3をハンドルHD上に取り付け、ハンドルHDが回転していない状態でそのマークM3の取り付け位置を取得する。ハンドルHDが回転していない陀角がない状態は目視して判断してもよいが、車内LAN26をしようとして回転していないと判断してもよい。その位置を基準として、ハンドルHDを回転させてマークM3の取り付け位置を複数取得する。画像上のマークM3の取り付け位置をM3xM3yf、3次元空間上の位置をHmx,Hmy,Hmzとすると、Hmx=M3xtHmy=M3ytHmz=ftx3=Hmx-Hpxy3=Hmy-Hpyz3=Hmz-Hpzx4=x3y4=y3cos-z3sinz4=z3cosy3sinx5=x4cosz4sin-x4sinとなる。ここでのそれぞれの回転角度は、下記のとおりである。Rhx=atanHdy/HdzRhy=-atanHdx/HdysinSqrtを、√ルート演算とすると、cos=Hdz/sqrtsin=Hdy/sqrtcos=sqrt/sqrtsin=-Hdx/sqrtHdxHdxHdyHdyHdzHdzとなる。ハンドル上の点であるので下記の条件が満たされる。z5=0rr=x5x5y5y5rは一定HdxHdyHdz=0tを計算する画像上から見える物体の大きさは相対的であるため、ハンドルHD上のマークM3の回転の半径rやハンドル面の回転中心のz座標Hpzを定数例えば1として計算し、条件にあうハンドル面の垂直方向Hdx,HdyHdz、ハンドル面の回転中心位置Hpx,Hpy,Hpzを導き出す。次に、図10のように、ハンドルを回転していない状態aで、ハンドル面をz=0、ハンドル面の回転中心を0,0,0とした変換位置での、x=0,z=0の直線上のハンドル円上に近い2点P1P2を選び、画像上での位置Q1,Q2に変換する。この画像上の2点が作る直線上のハンドルの位置を読み取ることにより、ハンドル位置をキャンセルさせることができるようになる。ハンドル位置を読み取る方法として例えば、まず、ハンドルHDとは違う色、例えば緑などのシート101をカメラ22から見てハンドルHDの裏側になるように配置する。なお、シート101を配置しなくても判断できる場合は、特に必要としない。そして、ハンドルHDが回転していない状態で、ハンドル円上のマークM3の角度θ0を導き出す。次に、画面上の直線Q1,Q2上にあるハンドルHDの輪の内外位置Q3,Q4を読み取り、真ん中の位置Q5を計算する。その位置をz=0の面になるように変換したときの位置P5がハンドルの半径y5となりそのときの角度がθ=0となる。ハンドルの輪の形が真円ではない場合は、次からはハンドルの輪の外側と直線の交点のみ読み取って、ハンドルが回転していない状態で取得したハンドルの輪の外側と中心の距離分だけずらした位置をハンドルの輪の中心とする。そうする理由は、ハンドルの輪からハンドル回転中心へ向かうハンドルの輪を支える部分がある場合、境界を見つけられないためである。そして、z=0の面になるように変換P6してハンドルの半径y5と、ハンドル円上のマークの角度θ1をハンドルが回転していない状態で取得した角度θ0でキャンセルした角度をθとする。それを複数プロットし半径の曲線を作り出す。次に、ハンドルの回転物上のマークM2の回転中心位置Mpx,Mpy,Mpzとハンドルが回転していないときの角度Rhzもハンドル円上のマークM3を導き出した計算と同様の計算で導き出す。以上の方法により必要なパラメータを最初に取得しておく。ハンドル円上のマークM3は、ドライバーが触るハンドル円上に設置したため、キャリブレーションが終了したら取り外す。<操作終了判定部14について>操作終了判定部14によるスライド操作終了の判定は、たとえば、ドライバーが操作終了と発したことを音声認識部21が認識することにより行う。操作終了を判定する手段は、音声認識部21による音声認識の他に、カメラ22やタッチパッド25により操作する側の手ではない方の手がハンドルから離れたと判定された場合や、車内LAN26によりブレーキを踏んだ場合や、アクセルの踏み込み具合を変えた場合や、急にハンドルを回した場合や、大きくハンドルを回した場合や、全く違うジェスチャーや、全く違う声を発した場合にも、操作終了の判定としてもよい。さらに、操作時間を設けてその時間が過ぎたら自動的に操作終了判定としてもよい。また、表示部23などにカーソルを表示させて操作する場合は、目線をある時間以上進行方向から離して表示部23を見ていたときは危険であるため強制的に操作終了としてもよい。また、被操作機器とも進行方向とも関係ないところに目線を移した場合にも、操作終了としてもよい。また、特定の手の指を上げているときのみ操作開始とし、指が下がったら操作終了としてもよい。また、車両が静止しているときのみ操作を許した場合、車両が動いた場合やブレーキを踏まなくなった場合に操作終了としてもよい。また、目を見開いたり、口を大きく開けたり、びっくりした表情など表情を変化した場合にも、操作終了としてもよい。このように、ハンドルHD上で位置も特定されないので目線を外す必要がなく、また、ハンドルHDから手を離さないため安全である。ハンドルHDを握っている位置で操作可能であるため、最小限の手の動きで操作可能である。また、2次元のアナログ操作を可能としているため、操作の自由度があるといえる。停止中にも操作するものに手を伸ばす必要がなく、楽に操作することができる。この実施形態では、ハンドルから手を離さず、視線を車外から離すことなく安全に運転しながら操作することができる。また、操作量を手で感じることができる。また、操作開始と終了を指定することにより誤動作を防止することができる。第2の実施形態図11~図17は、それぞれ駐車支援装置に関する第2の実施形態を示す。第1の実施形態では、ハンドルを握った状態の操作であったが、この実施形態ではハンドルを握らず指を広げて手のひらで操作する、というものである。手のひらをハンドルの輪の外側や内側に接しさせた場合、図11の破線円aに示すように手を奥や手前に動かす奥行き操作と、ハンドルの輪の方向に移動させる横操作が可能である。また、手のひらの中心に対して手のひらを回転させる方向のねじれ操作も可能となる。図11の破線円bに示すように、手のひらをハンドルの手前側に接しさせた場合、手を上下に動かす縦操作と、手を左右に動かす横操作が可能である。また、手のひらの中心に対して手のひらを回転させる方向のねじれ操作も可能となる。このように、この実施形態では手のひらのみをハンドルに接することにより、より直感的に操作することを可能とさせるものであり、手のひらをハンドルに接させるという条件を入れることにより、安全な運転を維持することができる。以下第1の実施形態とは異なる部分について説明する。<相対動作計算部123について>この実施形態での相対動作計算部123では、ハンドル面の回転中心を0,0,0として、ハンドル面をz=0とした状態の手の動きを利用する。そのときハンドル円は、ハンドルを1フレームでの回転分回転させておく。<操作判定部124について>この実施形態での操作判定部124では、まず手がハンドルと接しているかの判定は、図12に示すように、ハンドルHDそのものをタッチパッドにするか、もしくはカメラ22でハンドルHDの輪と手の外側か内側の境界12a,12bで、手側の境界がある程度暗くなるかで判定する。手がハンドルから離れている場合、手側の境界で暗くなることは無いためである。影を捕らえられやすいように、カメラの位置をずらすか、カメラを複数取り付けてもよい。また、ライトを取り付けてもよい。影を取得する場合には、第1の実施形態で記載したように、ハンドルの輪の曲線を真横に変換してから取得してもよいし、元画像でのハンドルの位置で取得してもよい。手のひらをハンドルの輪の外側に接地させた場合には、図13~図15に示すように、得られたベクトルが図13のようにハンドルの輪の中心付近から外に向かう方向で外ほど大きい場合には、手を奥に移動させたと判定する。逆に、得られたベクトルが図14に示すように外側からハンドルの輪の中心付近に向かう方向で外ほど大きい場合には手を手前に移動させたと判定する。図15のように奥行き方向の移動のみの場合には、車の進行方向を基準とした操作方向の場合、カメラ画像上での自車の真後ろ方向をz=0の面に変換した位置での収束点FOEWx,FOEWyになり、ハンドルの輪の面を基準とした操作方向の場合には、収束点はFOEHx,FOEHyとなる。自車の真後ろの収束点FOEWx,FOEWyは、カメラから自車の真後ろ方向へのベクトルをVCx,VCy,VCzとし、画面上の収束点をVCfx,VCfy,fとすると、VCfx=fVCx/VCzVCfy=fVCy/VCzとなる。上記の画面上の収束点を第1の実施形態のように、ハンドル面の回転中心を0,0,0として、ハンドル面をz=0とし、ハンドルを1フレームでの回転分回転させる。そのときのx座標とy座標がとなる。また、ハンドルの輪の面を基準とした垂直方向の収束点FOEHxFOEHyは、ハンドルの面の垂直方向のベクトルがHdx,Hdy,Hdzであるため、画面上の収束点VHfx,VHfy,fとすると、VHfx=fHdx/HdzVHfy=fHdy/Hdzとなる。上記の画面上の収束点を第1の実施形態のように、ハンドル面の回転中心を0,0,0として、ハンドル面をz=0とし、ハンドルを1フレームでの回転分回転させる。そのときのx座標とy座標がFOEHx,FOEHyとなる。次に、操作方向を導き出す。奥行き方向以外に縦や横方向の移動も同時に操作した場合収束点がずれる。そのためまず下記の計算式を使用し最小2乗解などで、画面に対しての操作方向Tx,Ty,Tzを導き出す。得られるベクトルI群の1つをIxIyIu,Ivとすると、HfTx-IxTz=IuHfHfTy-IyTz=IvHfHf=sqrtHfはハンドルの輪の中心までの距離このとき分散が大きい場合は操作とはしない。得られた操作方向Tx,Ty,Tzは、車の進行方向を基準とした操作方向の場合、自車の真後ろ方向の収束点分、操作方向を回転させる必要がある。回転後の操作方向をTAxTAyTAzとするとx3=Txy3=Tyz3=Tzx4=x3y4=y3cos-z3sinz4=z3cosy3sinTAx=x4cosz4sin-x4sinRfy=-atanFOEWysinハンドルの輪の面を基準とした操作方向の場合は、がFOEHxFOEHyに置き換えた計算とすればよい。回転後の操作方向TAxTAyTAzはカメラからの向きであるため、カメラはドライバーに対して逆向きとしている場合には-TAxTAy-TAzとなる。横方向は地面に対して水平方向とする場合には、図16に示すように、地面に対して垂直方向を上方向となるように操作方向をz軸回転させる。地面に対して垂直方向は、カメラ画像上のハンドルの輪の回転中心から真上の位置を、ハンドルの輪の平面上の回転しない部分もしくはハンドルの輪の平面上の回転させていないときに取得しておいた部分を1点選んでおき、その頂点をz=0の面になるように変換したときのその点の方向である。また、輪のある方向の移動を横方向とする場合には、図17に示すように、ベクトル群の中心位置を読み取ってその位置に対しての輪のある方向分、操作方向を回転させる。また、ハンドルの輪をz=0の面とはせずに取得した画面上で、操作方向を計算してもよい。特にカメラの位置がハンドルの中心からハンドルの面に対して垂直方向に無い場合や、ハンドル面に対してカメラが近すぎる場合に有効となる。その場合、車の進行方向を基準とした操作方向の場合には、FOEWxFOEWyHfを画面上の収束点VCfxVCfyfに置き換えて計算すればよい。また、ハンドルの輪の面を基準とした操作方向の場合には、FOEWxFOEWyHfを画面上の収束点VHfxVHfyfに置き換えて計算すればよい。この実施形態のいろいろな操作方法例を1~4に示し説明する。1ハンドルの輪の周りのベクトルが時間の経過につれ大きくなり、ハンドルの輪と手の境界に影ができてとまった場合、ハンドルをたたいたと判別し、Yes判定させてもよい。2ハンドルの輪の外側ほどベクトルが大きく向きは輪の中心方向で、輪の付近ではベクトルが小さい場合、手のひらを中心に手の平を倒したと判別し、Yes判定させてもよい。3ハンドルの輪を横方向に横切るベクトルが時間的に連続していて、一度ハンドルの輪と手の境界に影ができて、その影が無くなる場合、ハンドルの輪を払う動作と判別し、No判定としてもよい。4ハンドルの輪の一部分を中心にベクトルが回転方向に分布している場合、手のひらを中心に手をねじらせていると判別し、No判定としてもよい。<拡張形態について>第1、第2の実施形態において考えられる拡張形態の例を下記の1~16に示し説明する。1ハンドルの回転部分にカメラを設置して、操作を取得してもよい。その場合、振動を吸収するためにハンドルの回転部分にマークを設置して、振動分を吸収する。また、ハンドルの回転部分ではない固定された部分にマークを取り付け、ハンドルの回転角度を取得する。そうすることにより操作取得範囲は狭くなるが、操作を精度良く取得することができ、計算量が削減される。その場合、カメラが回転部に設置されるため、計算上、ハンドルの回転部分ではない固定部に取り付けられたマークを回転部分として計算させる。2検出したベクトルを回転や移動計算させたが、取得したマークの位置で振動と回転をキャンセルした後に画像を変換させて、変換した画像よりベクトルを検出させてもよい。3回転や移動計算は射影変換なので、予め4点を変換させて下記の射影変換式を作成しておき、その変換式によって変換させてもよい。x=AxByC/4手の位置を検出しやすいように遠赤外線を使用してもよい。また、可視光カメラの赤成分のみを使用してもよい。5ハンドルの輪の部分をすべて見られるようにするために、カメラを複数の場所に取り付け、それに伴いマークも取り付け処理してもよい。そうすることにより、ハンドル上であればどこでも操作が可能となる。6手袋や指輪など特徴的なマークを手に取り付けて、検出精度を上げてもよい。7爪先や、指の付け根、指隙間の溝、指の関節位置、指のしわなどを読み取ることにより、より正確に手の動きを検出してもよい。8ハンドルの特定箇所のみ操作できるようにしてもよい。そうすることにより、より操作したか運転したかの区別をすることができる。9ハンドルの輪の中にカメラを取り付けて、ハンドルを透明にして操作を取得してもよい。101フレーム間の操作で判断せず、時間的な連続性やそのばらつきによって操作と判定してもよい。11スマートフォンなどのカメラや音声認識や処理性能を使用して処理してもよい。12自車が停止中のときに限定して使用するのであれば、振動成分を吸収する処理や、そのとき使用するマークをキャリブレーションの後に取り除いてもよい。また、ハンドルの回転も行われていないとして、ハンドルの回転角度をキャンセルする処理も省いてもよい。その場合、振動を吸収しないので、ハンドルの輪が真正面、つまり中心が0,0,0で、ハンドル面がz=0となるように変換するLookUpTableを作成しておき、画像を変換し、その画像よりベクトルを取得してもよい。また、ハンドルの形が真円であれば、ハンドルの回転角度を取得する処理や、その時使用するマークをキャリブレーションの後に取り除いてもよい。その場合、ハンドルの回転角度は必要としないので、LookUpTableを最初からハンドルの輪を線に伸ばした状態にしておいて画像を変換し、その画像よりベクトルを取得してもよい。13計算を軽くするためにマークを確認して振動成分を吸収する処理が行われない時限定としてもよい。また、マークを確認してハンドルの回転角度が回転中でない時、つまり相対移動量を計算しなくていい時に限定としてもよい。14運転中の眠気防止や気分転換のために、ハンドルを人や動物に見立てて、記載した一連の操作をすることにより、そのハンドルの反応を楽しんでもよい。例えばハンドルを人の肩と見立てて、ハンドルを強く握る動作をすることにより、ハンドルが気持ちいいなどの気持ちよさそうなリアクションをさせる。他に、ハンドル子供を回転車に乗せていると見立てて、左右の手で上下逆の動きなどでひねる操作をし、子供の喜ぶ声でリアクションさせる。また、ハンドルを握った手の手首をねじる動作でガラガラを鳴らし子供をあやしてもよい。そのとき、あやし続けなければ泣かせてもよい。他に、ハンドルを猫などの動物と見立てて、ハンドルをさする操作をすることにより、猫などが気持ちよさそうに鳴くようなリアクションをさせる。15自転車やバイクのグリップに使用してもよい。16パソコンやゲームのマウスやタッチパッドの代わりの操作系として使用してもよい。その場合、握るための棒をキーボードの下などに収納しておいて、使用するときのみ飛び出す使用としてもよい。その場合、棒は横向きでもよいし縦向きでもよい。この実施形態では、簡単な手の動きでアナログ操作が可能となり、安全である。また、すぐにハンドルを握れるため安全である。ねじれ方向が加わりより多次元な操作が可能となる。いくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら新規な実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、組み合わせ、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。"