特開2018-22297(P2018-22297A)IP Force 特許公報掲載プロジェクト 2015.5.11 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ トヨタ自動車株式会社の特許一覧
<>
  • 特開2018022297-向き判別装置、向き判別方法 図000006
  • 特開2018022297-向き判別装置、向き判別方法 図000007
  • 特開2018022297-向き判別装置、向き判別方法 図000008
  • 特開2018022297-向き判別装置、向き判別方法 図000009
  • 特開2018022297-向き判別装置、向き判別方法 図000010
  • 特開2018022297-向き判別装置、向き判別方法 図000011
  • 特開2018022297-向き判別装置、向き判別方法 図000012
  • 特開2018022297-向き判別装置、向き判別方法 図000013
  • 特開2018022297-向き判別装置、向き判別方法 図000014
  • 特開2018022297-向き判別装置、向き判別方法 図000015
  • 特開2018022297-向き判別装置、向き判別方法 図000016
  • 特開2018022297-向き判別装置、向き判別方法 図000017
  • 特開2018022297-向き判別装置、向き判別方法 図000018
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】特開2018-22297(P2018-22297A)
(43)【公開日】2018年2月8日
(54)【発明の名称】向き判別装置、向き判別方法
(51)【国際特許分類】
   G06T 7/60 20170101AFI20180112BHJP
   G06T 7/00 20170101ALI20180112BHJP
【FI】
   G06T7/60 150P
   G06T7/00 300F
【審査請求】有
【請求項の数】6
【出願形態】OL
【全頁数】24
(21)【出願番号】特願2016-152338(P2016-152338)
(22)【出願日】2016年8月2日
【国等の委託研究の成果に係る記載事項】(出願人による申告)平成27年度、国立研究開発法人科学技術振興機構 研究成果展開事業 センター・オブ・イノベーションプログラム『多様化・個別化社会イノベーションデザイン拠点』委託研究開発、産業技術力強化法第19条の適用を受ける特許出願
(71)【出願人】
【識別番号】000003207
【氏名又は名称】トヨタ自動車株式会社
【住所又は居所】愛知県豊田市トヨタ町1番地
(71)【出願人】
【識別番号】504139662
【氏名又は名称】国立大学法人名古屋大学
【住所又は居所】愛知県名古屋市千種区不老町1番
(74)【代理人】
【識別番号】100107766
【弁理士】
【氏名又は名称】伊東 忠重
(74)【代理人】
【識別番号】100070150
【弁理士】
【氏名又は名称】伊東 忠彦
(72)【発明者】
【氏名】川西 康友
【住所又は居所】愛知県名古屋市千種区不老町1番 国立大学法人名古屋大学内
(72)【発明者】
【氏名】新村 文郷
【住所又は居所】愛知県名古屋市千種区不老町1番 国立大学法人名古屋大学内
(72)【発明者】
【氏名】出口 大輔
【住所又は居所】愛知県名古屋市千種区不老町1番 国立大学法人名古屋大学内
(72)【発明者】
【氏名】井手 一郎
【住所又は居所】愛知県名古屋市千種区不老町1番 国立大学法人名古屋大学内
(72)【発明者】
【氏名】村瀬 洋
【住所又は居所】愛知県名古屋市千種区不老町1番 国立大学法人名古屋大学内
【テーマコード(参考)】
5L096
【Fターム(参考)】
5L096FA35
5L096FA67
5L096GA19
5L096JA11
5L096JA22
5L096KA04
5L096MA07
(57)【要約】
【課題】画像に含まれる人の向きを実際と大きく異なる方向に検出してしまう誤検出を抑制することが可能な向き検出装置を提供すること。
【解決手段】画像に含まれる人の予め規定される複数の部分の特徴を表す特徴情報を抽出する抽出部と、抽出部により抽出される特徴情報に基づき、人の向きを判別する判別部と、を備える向き判別装置であって、判別部は、複数の部分のうち、一の方向と、該一の方向を含まず且つ該一の方向の反対方向を含む他の方向範囲との間で特徴に差異が生じにくい部分の特徴情報よりも、一の方向と他の方向範囲との間で特徴に差異が生じ易い部分の特徴情報に重みづけをして、人の向きを判別する。
【選択図】図11
【特許請求の範囲】
【請求項1】
画像に含まれる人の予め規定される複数の部分の特徴を表す特徴情報を抽出する抽出部と、前記抽出部により抽出される前記特徴情報に基づき、前記人の向きを判別する判別部と、を備える向き判別装置であって、
前記判別部は、前記複数の部分のうち、一の方向と、該一の方向を含まず且つ該一の方向の反対方向を含む他の方向範囲との間で前記特徴に差異が生じにくい部分の前記特徴情報よりも、前記一の方向と前記他の方向範囲との間で前記特徴に差異が生じ易い部分の前記特徴情報に重みづけをして、前記人の向きを判別する、
向き判別装置。
【請求項2】
前記判別部は、前記複数の部分の前記特徴情報を独立変数とする所定の関数の値と、所定値との大小関係に基づき、前記人の向きが前記一の方向を含む一の方向範囲に含まれるか、前記他の方向範囲を含む前記一の方向範囲以外の方向範囲に含まれるかを判別する、
請求項1に記載の向き判別装置。
【請求項3】
前記所定の関数及び前記所定値は、複数の学習用画像に含まれる人の向きが前記一の方向範囲に含まれるか前記一の方向範囲以外に含まれるかが判別される場合に、前記複数の学習用画像のうちの前記一の方向範囲に含まれない学習用画像の人の向きが前記一の方向範囲に含まれると誤って判別されたとき、及び前記複数の学習用画像のうちの前記一の方向範囲に含まれる学習用画像の人の向きが前記一の方向範囲以外に含まれると誤って判別されたときに加算される加算値であって、前記一の方向範囲に含まれない前記学習用画像の人の向きと前記一の方向範囲との差が大きくなるほど大きくなる加算値の合計が最小になるように決定される、
請求項2に記載の向き判別装置。
【請求項4】
前記所定の関数は、前記抽出部により前記複数の部分から抽出されるN個(N≧2)の前記特徴情報を表す独立変数xと、定数であるφi、、及びb(i=1、2、...、N)とを用いて、次式で表され、
前記a及び前記bは、前記加算値の前記合計が最小になるように決定される、
請求項3に記載の向き判別装置。
【請求項5】
前記φは、1である、
請求項4に記載の向き判別装置。
【請求項6】
抽出部が画像に含まれる人の予め規定される複数の部分の特徴を表す特徴情報を抽出する抽出ステップと、判別部が前記抽出ステップで抽出される前記特徴情報に基づき、前記人の向きを判別する判別ステップとを含む、向き判別方法であって、
前記判別ステップでは、前記判別部が、前記複数の部分のうち、一の方向と、該一の方向を含まず且つ該一の方向の反対方向を含む他の方向範囲との間で前記特徴に差異が生じにくい部分の前記特徴情報よりも、前記一の方向と前記他の方向範囲との間で前記特徴に差異が生じ易い部分の前記特徴情報に重みづけをして、前記人の向きを判別する、
向き判別方法。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、画像に含まれる人の向きを判別する向き判別装置に関する。
【背景技術】
【0002】
画像等の入力データ(入力データの画像に含まれる対象等も含む)が予め規定される複数のクラスのうちの特定のクラスに含まれるか否かを判別するクラス分類器が知られている(例えば、特許文献1参照)。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】特開2004−127238号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
ところで、上述のようなクラス分類器を用いて、車両周辺を撮像する車載カメラの撮像画像に含まれる人(歩行者)の向きを判別し、当該車両の制御装置(ECU:Electric Control Unit)が、判別した歩行者の向きに基づき、当該歩行者との衝突回避のための運転支援を行う場合がある。例えば、車両前方の歩道上の歩行者が車両に背を向けている場合、車両に気付いていない可能性があるため、突然の飛び出しによる衝突のリスクがあると判断できるからである。また、車両前方の歩道上の歩行者が車道側を向いている場合、車道に侵入してくる可能性が高く、飛び出しによる衝突のリスクが高いと判断できるからである。
【0005】
しかしながら、クラス分類器は、車載カメラの撮像画像に含まれる歩行者の向きを誤判別してしまう場合がある。そのため、歩行者の向きを実際の方向と大きく異なる方向、特に、反対の方向に誤判別してしまうと、以下のような不都合が生じる可能性がある。例えば、実際の車両前方の歩道上の歩行者は、車両に背を向けているにも関わらず、歩行者の向きが反対方向(即ち、車両に正面を向けている方向)に誤判別されると、歩行者は、車両に気付いていないにも関わらず、当該歩行者との衝突のリスクが低いと誤判断される可能性がある。また、実際の車両前方の歩道上の歩行者の向きは、車道に侵入する方向であるにも関わらず、車道から離れる方向であると誤判別されると、歩行者が車道に侵入してくる可能性が高いにも関わらず、衝突のリスクが低いと誤判断される可能性がある。
【0006】
そこで、上記課題に鑑み、画像に含まれる人の向きを実際と大きく異なる方向に判別してしまう誤判別を抑制することが可能な向き判別装置を提供することを目的とする。
【課題を解決するための手段】
【0007】
上記目的を達成するため、本発明の一実施形態では、
画像に含まれる人の予め規定される複数の部分の特徴を表す特徴情報を抽出する抽出部と、前記抽出部により抽出される前記特徴情報に基づき、前記人の向きを判別する判別部と、を備える向き判別装置であって、
前記判別部は、前記複数の部分のうち、一の方向と、該一の方向を含まず且つ該一の方向の反対方向を含む他の方向範囲との間で前記特徴に差異が生じにくい部分の前記特徴情報よりも、前記一の方向と前記他の方向範囲との間で前記特徴に差異が生じ易い部分の前記特徴情報に重みづけをして、前記人の向きを判別する、
向き判別装置が提供される。
【0008】
本発明の一実施形態によれば、一の方向と、比較的大きく異なる(具体的には、一の方向を含まず且つ一の方向の反対方向を含む)他の方向範囲との間でシルエットやテクスチャ等の特徴に差異が生じにくい部分の特徴情報よりも、一の方向と他の方向範囲との間で上記特徴に差異が生じ易い部分の特徴情報に重きを置いて、人の向きが判別される。そのため、一の方向を向いている人を、一の方向から大きく異なる他の方向範囲を向いていると判別する誤判別を抑制することができる。
【0009】
また、上述の実施形態において、
前記判別部は、前記複数の部分の前記特徴情報を独立変数とする所定の関数の値と、所定値との大小関係に基づき、前記人の向きが前記一の方向を含む一の方向範囲に含まれるか、前記他の方向範囲を含む前記一の方向範囲以外の方向範囲に含まれるかを判別してもよい。
【0010】
本実施形態によれば、特徴情報を独立変数とする所定の関数に、人が含まれる画像から抽出される複数の部分の特徴情報を抽出して代入し、その値を所定値と比較するだけであるため、画像に含まれる人の向きを容易に判別することができる。
【0011】
また、上述の実施形態において、
前記所定の関数及び前記所定値は、複数の学習用画像に含まれる人の向きが前記一の方向範囲に含まれるか前記一の方向範囲以外に含まれるかが判別される場合に、前記複数の学習用画像のうちの前記一の方向範囲に含まれない学習用画像の人の向きが前記一の方向範囲に含まれると誤って判別されたとき、及び前記複数の学習用画像のうちの前記一の方向範囲に含まれる学習用画像の人の向きが前記一の方向範囲以外に含まれると誤って判別されたときに加算される加算値であって、前記一の方向範囲に含まれない前記学習用画像の人の向きと前記一の方向範囲との差が大きくなるほど大きくなる加算値の合計が最小になるように決定されてよい。
【0012】
本実施形態によれば、複数の学習用画像を用いる機械学習において、加算値を最小にするために、一の方向範囲との差が比較的大きい他の方向範囲に含まれる学習用画像の人の向きが一の方向範囲に含まれると誤判別されないように、所定の関数及び所定値が最適化される。そのため、一の方向を向いている人を、一の方向から大きく異なる他の方向範囲を向いていると判別する誤判別を抑制することができる。
【0013】
また、上述の実施形態において、
前記所定の関数は、前記抽出部により前記複数の部分から抽出されるN個(N≧2)の前記特徴情報を表す独立変数xと、定数であるφi、、及びb(i=1、2、...、N)とを用いて、次式で表され、
前記a及び前記bは、前記加算値の前記合計が最小になるように決定されてもよい。
【0014】
本実施形態によれば、例えば、非線形SVM(Support Vector Machine)等の統計的学習方法を用いて、予め規定されるxの冪指数であるφ(例えば、既知のカーネル関数等に対応して予め規定されうる)を前提に、数理計画法による最適化問題として、定数であるa及びbを求めることができる。
【0015】
また、上述の実施形態において、
前記φは、1であってもよい。
【0016】
本実施形態によれば、上記関数は、線形になるため、線形SVM等を用い、線形計画法等の数理計画法による最適化問題として、より容易に、定数であるa及びbを求めることができる。
【0017】
また、本発明の他の実施形態では、
抽出部が画像に含まれる人の予め規定される複数の部分の特徴を表す特徴情報を抽出する抽出ステップと、判別部が前記抽出ステップで抽出される前記特徴情報に基づき、前記人の向きを判別する判別ステップとを含む、向き判別方法であって、
前記判別ステップでは、前記判別部が、前記複数の部分のうち、一の方向と、該一の方向を含まず且つ該一の方向の反対方向を含む他の方向範囲との間で前記特徴に差異が生じにくい部分の前記特徴情報よりも、前記一の方向と前記他の方向範囲との間で前記特徴に差異が生じ易い部分の前記特徴情報に重みづけをして、前記人の向きを判別する、
向き判別方法が提供される。
【発明の効果】
【0018】
本実施の形態によれば、画像に含まれる人の向きを実際と大きく異なる方向に判別してしまう誤判別を抑制することが可能な向き判別装置を提供することができる。
【図面の簡単な説明】
【0019】
図1】本実施形態に係るクラス分類器の構成の一例を示す構成図である。
図2】人の向きを表す方向区分を説明する図である。
図3】本実施形態に係るクラス分類器の構成の一例を示す機能ブロック図である。
図4】特徴抽出部による特徴情報の抽出処理を説明する図である。
図5】人の向きを判別する方法を説明する図である。
図6】本実施形態に係る機械学習装置の構成の一例を示す構成図である。
図7】本実施形態に係る機械学習装置の構成の一例を示す機能ブロック図である。
図8】本実施形態に係る機械学習装置による統計的学習処理の一例を概略的に示すフローチャートである。
図9】本実施形態に係る機械学習装置による統計的学習処理の一例を概略的に示すサブブローチャートである。
図10】本実施形態に係る機械学習装置による統計的学習方法の作用を説明する図である。
図11】本実施形態に係る機械学習装置による統計的学習方法の作用を説明する図である。
図12】本実施形態に係るクラス分類器を実装する車両の構成の一例を示す構成図である。
図13】ECUの機能ブロック図である。
【発明を実施するための形態】
【0020】
以下、図面を参照して発明を実施するための形態について説明する。
【0021】
まず、本実施形態に係るクラス分類器1の構成について説明する。
【0022】
図1は、本実施形態に係るクラス分類器1の構成の一例を概略的に示す構成図である。クラス分類器1(向き判別装置の一例)は、画像に含まれる人の向きを判別する処理を行う。以下、本例では、図2に示すように、人の向きは、45°ずつの範囲で8つの方向範囲(前向き、右前向き、左向き、左後向き、後向き、右後ろ向き、右向き、及び右前向き)に予め区分され、クラス分類器1は、画像に含まれる人の向きが各区分(以下、「方向区分」と称する)の何れに含まれるかを判別する。
【0023】
尚、図2に示すように、本実施形態では、「前向き」は、便宜上、画像の撮像方向(カメラ)と正対する方向を中心とする45°の角度範囲を表す。また、本実施形態では、「前向き」を起点として、人を上から見たときの時計回りに、「左前向き」、「左向き」、「左後向き」、「後向き」、「右後向き」、「右向き」、及び「右前向き」の順で45°の角度範囲を表す各方向区分が設定される。また、人の向きを表す方向区分の数(区分数)は、任意に設定されてよく、例えば、90°ずつの角度範囲に対応する4であってもよいし、22.5°ずつの角度範囲に対応する16であってもよい。
【0024】
クラス分類器1は、バス6で相互に接続されるCPU2と、ROM3と、RAM4と、外部から入力されるデータ(画像)を受信するインターフェース部5(例えば、I/Oポートや通信モデム等)とを備えるコンピュータを中心に構成される。
【0025】
図3は、本実施形態に係るクラス分類器1の構成の一例を示す機能ブロック図である。クラス分類器1は、例えば、ROM3に格納される1つ以上のプログラムをCPU2上で実行することにより実現される機能部として、画像取得部10、特徴抽出部20、クラス分類部30、向き判別部40を含む。また、クラス分類器1は、例えば、ROM3等の内部メモリに規定される記録領域として、学習データ格納部50を含む。
【0026】
画像取得部10は、向きを判別する対象となる人が含まれる画像(或いは人が含まれる可能性がある画像)を取得する。画像取得部10は、例えば、クラス分類器1の外部からの要求に応じて、該要求に含まれる画像を向き判別の対象として取得する。画像取得部10が取得する画像は、既に、特徴抽出部20による処理用に加工された画像、即ち、例えば、カメラで撮像された画像のうちの対象となる人が含まれる部分を切り出した画像であってよい。また、画像取得部10が取得する画像は、特徴抽出部20による処理用に加工される前の画像、即ち、例えば、カメラで撮像された画像そのものであってもよい。
【0027】
特徴抽出部20は、画像における人の予め規定される部分の特徴を表す特徴情報を抽出する。例えば、特徴抽出部20は、元の画像(即ち、カメラの撮像画像そのもの)から人が存在する領域として切り出された画像、即ち、予め規定される縦横比の領域一杯に人が配置された画像(以下、「人画像」と称する)を、縦横に複数の矩形部分(小領域)に分割し、各矩形部分の特徴情報を抽出する。以下、図4を参照して、特徴抽出部20による特徴情報の抽出処理について説明する。
【0028】
尚、画像取得部10が取得する画像が加工される前の画像である場合、任意のカメラで撮像された画像そのものから人が存在する部分を認識し、当該部分を切り出すことにより人画像を生成する。また、この際の画像における人を認識する方法としては、既知の様々な方法が任意に適用されてよい。
【0029】
図4は、特徴抽出部20による特徴情報の抽出処理の一例を説明する図である。具体的には、図4(a),(b)は、それぞれ、前向き及び右向きの人が含まれる人画像P1,P2を表す。
【0030】
図4(a),(b)に示すように、人画像P1,P2は、上述の如く、それぞれ、縦横に複数の矩形部分に分割されている。本例では、人画像P1,P2は、縦横のそれぞれに等間隔で5分割され、25個の矩形部分に分割されている。以下、本実施形態の説明では、本例と同様、25個の矩形部分に分割される前提で説明を続ける。
【0031】
人画像P1,P2を比較すると、前向きの人と右向きの人とでは、例えば、手や足のシルエットや胴体部のシルエット(幅)等が異なる。また、例えば、本例では、描画しないが、前向きの人と右向きの人とでは、目、鼻、耳、髪等の見えの違いによる頭部のテクスチャが異なる。即ち、25個の矩形部分のそれぞれには、人画像に含まれる人の向きを特徴付ける、例えば、人の形状を表すシルエットや人の色彩や模様を表すテクスチャ等の特徴情報が含まれることになる。本実施形態では、人画像に含まれる人のシルエットやテクスチャ等を表す特徴情報として、各矩形部分の輝度の勾配方向(例えば、20°毎の9方向)のヒストグラムを線形結合した多次元の画像特徴量であるHOG(Histogram of Oriented Gradients)特徴量を用いる。以下、特に断らない限り、特徴抽出部20は、人画像の各矩形部分のHOG特徴量を抽出する前提で説明を続ける。
【0032】
尚、HOG特徴量の次元数は、ヒストグラムを抽出する領域の数と、輝度の勾配方向の数により決まる。例えば、各矩形部分のHOG特徴量が更に4分割された小領域ごとの9方向の輝度勾配のヒストグラムとして表される場合、36次元(=4×9)になる。また、本実施形態では、画像特徴量としてHOG特徴量を用いるが、例えば、LBP(Local Binary Pattern)特徴量等、適宜、他の画像特徴量を用いてもよい。また、人画像を分割することにより生成される矩形部分の個数は、任意に設定されてよい。また、人画像のうちの人の一部が含まれない可能性が高い矩形部分、例えば、四隅にある矩形部分は、特徴情報の抽出対象から省略されてもよい。
【0033】
図3に戻り、クラス分類部30は、特徴抽出部20が抽出した特徴情報(HOG特徴量)に基づき、人の向きを分類(判別)する処理を行う。具体的には、クラス分類部30は、特徴情報と、学習データ格納部50に格納される学習データとに基づき、人画像に含まれる人の向きを判別する。クラス分類部30は、それぞれ、人画像に含まれる人の向きが8つの方向区分のうちの対象となる方向区分(以下、対象方向区分と称する)に含まれるか否かを判別する第1クラス分類器31〜第8クラス分類器38を含む。以下、図5を参照して、第1クラス分類器31〜第8クラス分類器38の概要について説明する。
【0034】
図5は、人画像に含まれる人の向きを判別する方法を説明する図である。具体的には、簡単な事例として、人画像を3分割した3つの矩形部分のそれぞれから1つずつ抽出される特徴情報に基づき、人画像に含まれる人の向きを判別する方法を示す図である。
【0035】
人画像を分割した各矩形部分には、上述の如く、人の向きを特徴付ける特徴情報が含まれる。そのため、各矩形部分から抽出される特徴情報を数値化した特徴量x〜xの組み合わせで表される点(以下、「特徴量ベクトル」と称する)x=(x,x,x)は、人画像に含まれる人の向きに応じて、3次元のベクトル空間(特徴量の組み合わせに対応する入力空間)における分布に偏りが生じうる。即ち、入力空間上のある特定の方向区分に含まれる人画像に対応する特徴量ベクトルの集合と、該特定の方向区分に含まれない(即ち、該特定の方向区分以外に含まれる)人画像に対応する特徴量ベクトルの集合との間には、所定のルールに沿って、式(1)に示すように、それらを分離する分離平面Pを設定することができる。
【0036】
・x+b=w・x+w・x+w・x+b=0 ・・・(1)
尚、分離平面Pを決定する各パラメータは、それぞれ、重みベクトルw=(w1,w2,w3)、及びバイアスb(スカラ量)である。
【0037】
図5に示すように、分離平面Pは、3次元の入力空間を、対象方向区分に対応する部分空間と、対象方向区分以外に対応する部分空間とに分離することができる。
【0038】
通常、上述の如く、人画像を分割した多数(本実施形態では、25個)の矩形部分が設定されると共に、各矩形部分から多次元の特徴量(本実施形態では、HOG特徴量)が抽出される。この場合、K個の矩形部分のそれぞれから抽出されるM次元(M個)の特徴量x,x,...,x,xM+1,xM+2,...,x2K,...,x(N=K・M)の組み合わせで表される特徴量ベクトルx=(x1,x2,...,xN)は、4次元以上となる。そのため、4次元以上の場合を含むN次元(N≧2)の入力空間に拡張(一般化)することにより、入力空間上のある特定の方向区分に含まれる人画像に対応する特徴ベクトルの集合と、該特定の方向区分に含まれない(即ち、該特定の方向区分以外に含まれる)人画像に対応する特徴ベクトルの集合との間に、所定のルールに沿って、式(2)に示すように、それらを分離する分離超平面を設定することができる。
【0039】
・x+b=w・x+w・x+...+w・x+b=0 ・・・(2)
尚、分離超平面を決定する各パラメータは、入力空間が3次元の場合と同様、重みベクトルw=(w1,w2,...,wN)、及びバイアスb(スカラ量)である。
【0040】
従って、第1クラス分類器31〜第8クラス分類器38は、それぞれ、人画像から抽出される特徴量ベクトルxが、分離超平面により分離される部分空間のうちの対象方向区分に対応する部分空間に含まれるか、対象方向区分以外に含まれるかを判別する。具体的には、第1クラス分類器31〜第8クラス分類器38は、式(2)の左辺に対応する式(3)の関数f(x)に人画像から抽出される特徴量ベクトルxを代入し、その値が正値(0より大きい)か、負値である(0より小さい)かに基づき、人画像に含まれる人の向きが対象方向区分に含まれるか否かを判別することができる。
【0041】
f(x)=w・x+b=w・x+w・x+...+w・x+b ・・・(3)
尚、分離超平面、即ち、分離超平面を決定する各パラメータ(重みベクトルw及びバイアスb)は、後述の如く、統計的学習手法(SVM)を用いることにより、学習データとして生成することが可能である。また、関数f(x)=0である場合に、人の向きを対象方向区分に含まれるとするか、対象方向区分に含まれないとするかは、任意に決定されてよい。また、関数f(x)から定数項(バイアスb)を削除して、定数項を削除した関数f(x)と定数項(バイアスb)に対応する所定値との大小関係に基づいて、人画像に含まれる人の向きが対象方向区分に含まれるか否かを判別してもよい。また、分離超平面を更に拡張して、入力空間を対象方向区分に対応する部分空間と対象方向区分以外に対応する部分空間とに分離する分離超曲面を用いてもよい。即ち、分離超平面(φ=1)或いは分離超曲面(φ≠0)を表す式(4)の左辺に対応する関数f(x)の値が正値(0より大きい)か、負値である(0より小さい)かに基づき、人画像に含まれる人の向きが対象方向区分に含まれるか否かを判別してもよい。この場合、分離超曲面、即ち、分離超曲面を決定する各パラメータ(φ,a,b)は、後述の如く、カーネル法(カーネルトリック)等による非線形SVMを用いることにより、学習データとして生成することが可能である。即ち、予め規定されるxの冪指数であるφ(例えば、既知のカーネル関数に対応して規定されうる)を前提に、数理計画法等による最適化問題として、a,bを求めることができる。
【0042】
また、例えば、人の向きと各矩形部分の特徴量の関係性等を考慮して、各矩形部分から抽出される特徴量xiのうちの任意の2以上の特徴量を結合して、新たな特徴量ベクトルXを生成してもよい。例えば、特徴量xiのうちの任意の2つの特徴量x,x(j,k=1,2,...,N)から定数ajk、φj、及びφを用いて、特徴量Xjk=ajk・xφj・xφkを複数生成し、その組み合わせにより新たな特徴量ベクトルXを生成してもよい。この場合も、上記と同様に、新たに生成される特徴量ベクトルXに対する分離超平面或いは分離超曲面を用いて、人画像に含まれる人の向きを判別することができる。
【0043】
図2に戻り、第1クラス分類器31〜第8クラス分類器38のそれぞれについて説明をする。
【0044】
第1クラス分類器31は、特徴抽出部20が抽出した特徴情報と、学習データ格納部50に格納される学習データとに基づき、人画像に含まれる人の向きが前向きであるか否かを判別する。例えば、学習データ格納部50には、学習データとして、人画像の各矩形部分のHOG特徴量の組み合わせに対応するN次元空間(入力空間)を、前向きに対応する部分空間と前向き以外に対応する部分空間とに分離する第1の分離超平面のデータが格納されている。そして、第1クラス分類器31は、人画像の各矩形部分のHOG特徴量の組み合わせで表される入力空間上の特徴量ベクトルxが第1の分離超平面により分離される部分空間のうちの前向きに対応する側にあるか、前向き以外に対応する側にあるかにより、人の向きが前向きであるか前向き以外であるかを判別する。
【0045】
また、第1クラス分類器31は、判別結果(「前向き」或いは「前向き以外」)の確からしさを表す情報(確からしさ情報)を生成する。例えば、第1クラス分類器31は、確からしさ情報として、特徴量ベクトルxと、第1の分離超平面との距離を算出する。特徴量ベクトルxが、第1の分離超平面から離れるほど、その判別結果の確からしさが高まると考えられるからである。
【0046】
尚、第1クラス分類器31は、判別結果と確からしさを表す情報を1つにまとめたスコアを生成してもよい。例えば、第1クラス分類器31は、人の向きが前向きであると判別した場合、特徴量ベクトルxと、第1の分離超平面との距離をスコアとして出力し、人の向きが前向き以外であると判別した場合、特徴量ベクトルxと、第1の分離超平面との距離に−1を乗じた値をスコアとして出力してよい。これにより、スコアの正負の別により、前向きと判別されたのか、前向き以外と判別されたのかを表すことができると共に、スコアの絶対値で確からしさを表すことができる。
【0047】
第2クラス分類器32は、第1クラス分類器31と同様、特徴抽出部20が抽出した特徴情報と、学習データ格納部50に格納される学習データとに基づき、人画像に含まれる人が左前向きであるか否かを判別する。例えば、学習データ格納部50には、学習データとして、入力空間を左前向きに対応する部分空間と左前向き以外に対応する部分空間とに分離する第2の分離超平面のデータが格納されている。そして、第2クラス分類器32は、特徴量ベクトルxが、第2の分離超平面で分離される部分空間のうちの左前向きに対応する側にあるか、左前向き以外に対応する側にあるかにより、人の向きが左前向きであるか左前向き以外であるかを判別する。
【0048】
また、第2クラス分類器32は、第1クラス分類器31と同様、確からしさ情報を生成する。例えば、第2クラス分類器32は、確からしさ情報として、特徴量ベクトルxと、第2の分離超平面との距離を算出する。また、第2クラス分類器32は、第1クラス分類器31と同様、判別結果と確からしさを表す情報を1つにまとめたスコアを生成してもよい。
【0049】
第3クラス分類器33は、第1クラス分類器31等と同様、特徴抽出部20が抽出した特徴情報と、学習データ格納部50に格納される学習データとに基づき、人画像に含まれる人が左向きであるか否かを判別する。例えば、学習データ格納部50には、学習データとして、入力空間を左向きに対応する部分空間と左向き以外に対応する部分空間とに分離する第3の分離超平面のデータが格納されている。そして、第3クラス分類器33は、特徴量ベクトルxが、第3の分離超平面により分離される部分空間のうちの左向きに対応する側にあるか、左向き以外に対応する側にあるかにより、人の向きが左向きであるか左向き以外であるかを判別する。
【0050】
また、第3クラス分類器33は、第1クラス分類器31等と同様、確からしさ情報を生成する。例えば、第3クラス分類器33は、確からしさ情報として、特徴量ベクトルxと、第3の分離超平面との距離を算出する。また、第3クラス分類器33は、第1クラス分類器31等と同様、判別結果と確からしさを表す情報を1つにまとめたスコアを生成してもよい。
【0051】
第4クラス分類器34は、第1クラス分類器31等と同様、特徴抽出部20が抽出した特徴情報と、学習データ格納部50に格納される学習データとに基づき、人画像に含まれる人が左後向きであるか否かを判別する。例えば、学習データ格納部50には、学習データとして、入力空間を左後向きに対応する部分空間と左後向き以外に対応する部分空間とに分離する第4の分離超平面のデータが格納されている。そして、第4クラス分類器34は、特徴量ベクトルxが、第4の分離超平面により分離される部分空間のうちの左後向きに対応する側にあるか、左後向き以外に対応する側にあるかにより、人の向きが左後向きであるか左後向き以外であるかを判別する。
【0052】
また、第4クラス分類器34は、第1クラス分類器31等と同様、確からしさ情報を生成する。例えば、第4クラス分類器34は、確からしさ情報として、特徴量ベクトルxと、第4の分離超平面との距離を算出する。また、第4クラス分類器34は、第1クラス分類器31等と同様、判別結果と確からしさを表す情報を1つにまとめたスコアを生成してもよい。
【0053】
第5クラス分類器35は、第1クラス分類器31等と同様、特徴抽出部20が抽出した特徴情報と、学習データ格納部50に格納される学習データとに基づき、人画像に含まれる人が後向きであるか否かを判別する。例えば、学習データ格納部50には、学習データとして、入力空間を後向きに対応する部分空間と後向き以外に対応する部分空間とに分離する第5の分離超平面のデータが格納されている。そして、第5クラス分類器35は、特徴量ベクトルxが、第5の分離超平面により分離される部分空間のうちの後向きに対応する側にあるか、後向き以外に対応する側にあるかにより、人の向きが後向きであるか後向き以外であるかを判別する。
【0054】
また、第5クラス分類器35は、第1クラス分類器31等と同様、確からしさ情報を生成する。例えば、第5クラス分類器35は、確からしさ情報として、特徴量ベクトルxと、第5の分離超平面との距離を算出する。また、第5クラス分類器35は、第1クラス分類器31等と同様、判別結果と確からしさを表す情報を1つにまとめたスコアを生成してもよい。
【0055】
第6クラス分類器36は、第1クラス分類器31等と同様、特徴抽出部20が抽出した特徴情報と、学習データ格納部50に格納される学習データとに基づき、人画像に含まれる人が右後向きであるか否かを判別する。例えば、学習データ格納部50には、学習データとして、入力空間を右後向きに対応する部分空間と右後向き以外に対応する部分空間とに分離する第6の分離超平面のデータが格納されている。そして、第6クラス分類器36は、特徴量ベクトルxが、第6の分離超平面により分離される部分空間のうちの右後向きに対応する側にあるか、右後向き以外に対応する側にあるかにより、人の向きが右後向きであるか右後向き以外であるかを判別する。
【0056】
また、第6クラス分類器36は、第1クラス分類器31等と同様、確からしさ情報を生成する。例えば、第6クラス分類器36は、確からしさ情報として、特徴量ベクトルxと、第6の分離超平面との距離を算出する。また、第6クラス分類器36は、第1クラス分類器31等と同様、判別結果と確からしさを表す情報を1つにまとめたスコアを生成してもよい。
【0057】
第7クラス分類器37は、第1クラス分類器31等と同様、特徴抽出部20が抽出した特徴情報と、学習データ格納部50に格納される学習データとに基づき、人画像に含まれる人が右向きであるか否かを判別する。例えば、学習データ格納部50には、学習データとして、入力空間を右向きに対応する部分空間と右向き以外に対応する部分空間とに分離する第7の分離超平面のデータが格納されている。そして、第7クラス分類器37は、特徴量ベクトルxが、第7の分離超平面により分離される部分空間のうちの右向きに対応する側にあるか、右向き以外に対応する側にあるかにより、人の向きが右向きであるか右向き以外であるかを判別する。
【0058】
また、第7クラス分類器37は、第1クラス分類器31等と同様、確からしさ情報を生成する。例えば、第7クラス分類器37は、確からしさ情報として、特徴量ベクトルxと、第7の分離超平面との距離を算出する。また、第7クラス分類器37は、第1クラス分類器31等と同様、判別結果と確からしさを表す情報を1つにまとめたスコアを生成してもよい。
【0059】
第8クラス分類器38は、第1クラス分類器31等と同様、特徴抽出部20が抽出した特徴情報と、学習データ格納部50に格納される学習データとに基づき、人画像に含まれる人が右前向きであるか否かを判別する。例えば、学習データ格納部50には、学習データとして、入力空間を右前向きに対応する部分空間と右前向き以外に対応する部分空間とに分離する第8の分離超平面のデータが格納されている。そして、第8クラス分類器38は、特徴量ベクトルxが、第8の分離超平面により分離される部分空間のうちの右前向きに対応する側にあるか、右前向き以外に対応する側にあるかにより、人の向きが右前向きであるか右前向き以外であるかを判別する。
【0060】
また、第8クラス分類器38は、第1クラス分類器31等と同様、確からしさ情報を生成する。例えば、第8クラス分類器38は、確からしさ情報として、特徴量ベクトルxと、第8の分離超平面との距離を算出する。また、第8クラス分類器38は、第1クラス分類器31等と同様、判別結果と確からしさを表す情報を1つにまとめたスコアを生成してもよい。
【0061】
クラス分類部30は、第1クラス分類器31〜第8クラス分類器38のそれぞれの判別結果及び確からしさ情報(或いは、判別結果及び確からしさ情報を1つにまとめたスコア)を向き判別部40に出力する。
【0062】
向き判別部40は、クラス分類部30から入力される第1クラス分類器31〜第8クラス分類器38のそれぞれの判別結果及び確からしさ情報(或いはスコア)に基づき、人画像に含まれる人の向きが予め区分される8つの方向区分の何れに含まれるかを最終的に判別する。例えば、向き判別部40は、第1クラス分類器31〜第8クラス分類器38のうちの1つだけが、人画像に含まれる人の向きを対象区分の向き(例えば、第1クラス分類器31であれば、「前向き」)であると判別している場合、その対象区分の向きが人の向きであると判別する。また、例えば、向き判別部40は、第1クラス分類器31〜第8クラス分類器38のうちの2以上が人の向きを対象区分の向きであると判別している場合、該当する2以上のクラス分類器のそれぞれの確からしさ情報を比較する。そして、向き判別部40は、確からしさ情報がより高い確からしさ(例えば、特徴ベクトルxと分離超平面との距離がより大きい)を表している判別結果に対応する対象区分の向きを人の向きと判別してよい。また、向き判別部40は、第1クラス分類器31〜第8クラス分類器38のうちの上記スコアが正値且つ最大値である1つに対応する対象区分の向きを人画像に含まれる人の向きと判別してよい。
【0063】
次に、学習データ格納部50に格納される学習データ、即ち、入力空間における判別境界を表す第1〜第8の分離超平面を生成する機械学習装置100について説明をする。
【0064】
図6は、本実施形態に係る機械学習装置100の構成の一例を概略的に示す構成図である。機械学習装置100は、バス106で相互に接続されるCPU101と、ROM102と、RAM103と、ディスクドライブ104と、操作入力部105(例えば、キーボード等)を備えるコンピュータを中心に構成される。
【0065】
図7は、本実施形態に係る機械学習装置100の構成の一例を示す機能ブロック図である。本実施形態に係る機械学習装置100は、統計的学習方法であるSVMを用いて、上述の入力空間を、予め区分される8つの方向区分に含まれる一の方向区分に対応する部分空間と、一の方向区分以外に対応する部分空間とに分離する分離超平面(第1〜第8の分離超平面)を学習データとして生成する。機械学習装置100は、例えば、ROM102に格納される1つ以上のプログラムをCPU101上で実行することにより実現される機能部として、学習用画像取得部110、特徴抽出部120、ベース教師データ生成部130、誤分類ペナルティ算出部140、教師データ生成部150、学習処理部160を含む。また、機械学習装置100は、例えば、ROM102等の内部メモリやディスクドライブ104に挿入された記録用の各種ディスク(DVD−R等)の記録領域として規定される学習データ格納部170を含む。
【0066】
学習用画像取得部110は、操作入力部105におけるユーザの操作、或いは、予め規定されたプログラムに基づく処理に従い、ROM102等の内部メモリやディスクドライブ104に挿入された各種ディスクから学習用画像を取得する。学習用画像は、予め区分される8つの方向区分毎に準備される多数の人画像であり、各人画像には、人の向きを表すラベル(正解向きラベル)が予め紐付けられている。
【0067】
特徴抽出部120は、クラス分類器1の特徴抽出部20と同様、学習用画像(人画像)における人の予め規定される部分(即ち、人画像を複数の小領域に分割した各矩形部分)の特徴を表す特徴情報を抽出する。本実施形態では、特徴抽出部120は、上述の如く、人画像の各矩形部分のHOG特徴量を抽出する。
【0068】
ベース教師データ生成部130は、各学習用画像の人の向き(予め区分される上述の8つの方向区分の何れか)と特徴情報(HOG特徴量)を組み合わせたベース教師データを生成する。
【0069】
誤分類ペナルティ算出部140は、学習処理部160による機械学習処理、具体的には、SVMにおける分離超平面の最適化処理において、各学習用画像の人の向きが誤分類された場合のペナルティ値(誤分類ペナルティζ)を算出する。各学習用画像が誤分類されるパターンには、正しい向きと異なる特定の向き(正しい向きに対応する方向区分以外の7つの方向区分の何れか)に誤分類される7パターンと、正しい向きに対応する方向区分(正解区分)に含まれるか否かの判別により、正解区分に含まれないと誤分類される1パターンの合計8パターンがある。よって、誤分類ペナルティ算出部140は、各学習用画像に対して、8つの誤分類ペナルティζを算出し、8つの誤分類ペナルティζを組み合わせた誤分類ペナルティベクトルを生成する。
【0070】
具体的には、誤分類ペナルティ算出部140は、各学習用画像の人の向きが特定の方向区分に誤分類される場合の誤分類ペナルティζを、正しい向きに対応する方向区分と特定の方向区分との差に応じて、決定する。即ち、誤分類ペナルティ算出部140は、正しい向きに対応する方向区分と特定の方向区分との差が大きくなる程、誤分類ペナルティζを大きくする。例えば、誤分類ペナルティ算出部140は、誤分類される特定の方向区分が正しい向きに対応する方向区分に隣接する場合、誤分類ペナルティζを比較的小さい値(例えば、ζ=0.5)に設定する。一方、誤分類ペナルティ算出部140は、誤分類される特定の方向区分が正しい向きに対応する方向区分に隣接しない場合、即ち、特定の方向区分が正しい向きに対応する方向区分から2区分以上異なる場合、誤分類ペナルティζを比較的大きい値(例えば、ζ=1.0)に設定する。これにより、後述の分離超平面の最適化処理において、学習用画像の人の向きが、正しい向きから大きく離れた方向区分(例えば、正しい向きに対応する方向区分の反対の方向区分)に誤分類されにくくすることができる。また、各学習用画像の人の向きが、正しい向きに対応する方向区分に含まれるか否かの判別により、正しい向きに対応する方向区分に含まれないと誤分類される(即ち、例えば、前向きであるか否かの判別により、正しい前向きではなく、誤った前向き以外であると判別される場合)の誤分類ペナルティζは、比較的大きい値(例えば、ζ=1.0)に設定する。正しい向き以外には、正しい向きに対応する方向区分と隣接しない大きく離れた方向区分が含まれるからである。
【0071】
尚、誤分類ペナルティζは、正しい向きに対応する方向区分と特定の方向区分との差が大きくなるのに応じて、多段階で大きくなる態様であってもよい。
【0072】
教師データ生成部150は、各学習用画像に対応するベース教師データと、各学習用画像の誤分類ペナルティζ(誤分類ペナルティベクトル)を組み合わせた教師データを生成する。即ち、教師データは、各学習用画像の人の向き、特徴情報(HOG特徴量)、及び誤分類ペナルティベクトルを含む。
【0073】
学習処理部160は、統計的学習方法であるSVM(具体的には、ソフトマージンSVM)を用いて、上述の入力空間を、予め区分される8つの方向区分に含まれる一の方向区分に対応する部分空間と、一の方向区分以外に対応する部分空間とに分離する分離超平面(第1〜第8の分離超平面)を生成する。学習処理部160は、生成した学習データである第1〜第8の分離超平面のデータを学習データ格納部170に格納する。
【0074】
具体的には、学習処理部160は、既知の数理計画方法等の最適化手法を用いて、誤分類される人の向きに対応する学習用画像の誤分類ペナルティζの合計を最小化する分離超平面(第1〜第8の分離超平面)を探索する。より具体的には、誤分類される人の向きに対応する学習用画像の誤分類ペナルティζの合計を最小化するように、上述の式(2)のパラメータ(重みベクトルw及びバイアスb)を最適化する。通常、入力空間上における各学習用画像の特徴量ベクトルxは、重なり等により、一の方向区分に対応する学習用画像と、一の方向区分以外に対応する学習用画像とを完全に分離する分離超平面を探索できない場合が多い。そのため、ソフトマージンSVMでは、誤分類を許容しつつ、誤分類に対して予め規定するペナルティが最小になるように分離超平面の最適化処理を行う。本実施形態では、上述の如く、各学習用画像の人の向きが特定の方向区分に誤分類される場合の該特定の方向区分と、正しい向きに対応する方向区分との差が大きいほど、大きくなる誤分類ペナルティζを採用する。また、上述の如く、各学習用画像の人の向きが、正しい向きに対応する方向区分に含まれるか否かの判別により、正しい向きに対応する方向区分に含まれないと誤分類される場合の誤分類ペナルティζを比較的大きい値にする。これにより、学習用画像の人の向きが、正しい向きから大きく離れた方向区分(例えば、正しい向きに対応する方向区分の反対の方向区分)に誤判別されにくい分離超平面を生成することができる。
【0075】
換言すれば、学習処理部160は、学習用画像の各矩形部分のうち、一の方向区分と、大きく異なる他の方向区分(即ち、一の方向区分を含まず且つ一の方向区分の反対の方向区分を含む方向区分であり、本例の場合、2区分以上異なる方向区分)との間で特徴に差異が生じにくい矩形部分の特徴情報(HOG特徴量)よりも、一の方向区分と他の方向区分との間で上記特徴に差異が生じ易い矩形部分の特徴情報(HOG特徴量)に重きを置いて、分離超平面(第1〜第8の分離超平面)を探索する。そのため、クラス分類器1(第1クラス分類器31〜第8クラス分類器38)は、人画像の各矩形部分のうち、一の方向区分と、大きく異なる他の方向区分との間でシルエットやテクスチャ等の特徴に差異が生じにくい特徴情報(HOG特徴量)よりも、一の方向区分と他の方向区分との間で上記特徴に差異が生じ易い特徴情報(HOG特徴量)に重みづけをして、人画像に含まれる人の向きを判別する。従って、クラス分類器1は、大きく離れた方向区分(例えば、正しい向きに対応する方向区分の反対の方向区分)に判別する誤判別を抑制することができる。
【0076】
尚、本実施形態では、一の方向区分と大きく異なる他の方向区分は、隣接する区分以外、即ち、2区分以上異なる方向区分であるが、誤判定が許容されない方向範囲として、適宜、3以上の所定区分数以上異なる方向区分等に設定してもよい。また、機械学習装置100は、SVMを用いて、入力空間で分離超平面を探索したが、カーネル法(カーネルトリック)を用いて、高次元の特徴空間における分離超平面を探索する態様であってもよい。即ち、機械学習装置100は、非線形SVMを用いて、入力空間における上述した分離超曲面を探索してもよい。
【0077】
次に、機械学習装置100による処理フローについて説明する。
【0078】
図8は、本実施形態に係る機械学習装置100による処理の一例を概略的に示すフローチャートである。
【0079】
ステップS102にて、学習用画像取得部110は、正解向きラベルが紐づけられる学習用画像を取得する。
【0080】
ステップS104にて、特徴抽出部120は、上述の如く、学習用画像のそれぞれについて、各矩形部分の特徴情報(HOG特徴量)を抽出する。
【0081】
ステップS106にて、ベース教師データ生成部130は、上述の如く、学習用画像の人の向き及び特徴情報(HOG特徴量)を組み合わせて、ベース教師データを生成する。
【0082】
ステップS108にて、誤分類ペナルティ算出部140は、上述の如く、各学習用画像に対して、8つの誤分類ペナルティζを算出し、8つの誤分類ペナルティζを組み合わせた誤分類ペナルティベクトルを生成する。
【0083】
ステップS110にて、教師データ生成部150は、上述の如く、各学習用画像に対応するベース教師データと、各学習用画像の誤分類ペナルティζ(誤分類ペナルティベクトル)を組み合わせて、教師データを生成する。
【0084】
ステップS112にて、学習処理部160は、上述の如く、統計的学習処理、即ち、SVMを用いた学習処理を行う。
【0085】
ステップS114にて、学習処理部160は、生成された学習データ(第1〜第8の分離超平面のデータ)を学習データ格納部170に記録する。
【0086】
図9は、本実施形態に係る機械学習装置100による処理の一例、具体的には、図8のステップS112の統計的学習処理を概略的に示すサブフローチャートである。
【0087】
尚、図9に示すサブフローチャートによる処理は、第1〜第8の分離超平面のそれぞれに対応して実行される。即ち、本サブフローチャートによる処理は、8回実行される。
【0088】
ステップS1121にて、学習処理部160は、教師データを取得する。
【0089】
ステップS1122にて、学習処理部160は、入力空間上で分離超平面、即ち、上述の式(2)のパラメータ(重みベクトルw及びバイアスb)を決定する。
【0090】
ステップS1123にて、学習処理部160は、ステップS1122で決定された分離超平面で誤分類される人の向きに対応する学習用画像の誤分類ペナルティζの総和(合計値)を算出する。
【0091】
ステップS1124にて、学習処理部160は、分離超平面が最適化されたか否か、即ち、誤分類ペナルティζの合計値が最小であるか否かを判定する。学習処理部160は、誤分類ペナルティζの合計値が最小でないと判定した場合、ステップS1125に進み、誤分類ペナルティζの合計値が最小であると判定した場合、ステップS1126に進む。
【0092】
ステップS1125にて、学習処理部160は、誤分類ペナルティの合計値が小さくなるように分離超平面、即ち、上述の式(2)のパラメータ(重みベクトルw及びバイアスb)を修正し、ステップS1123に戻る。
【0093】
尚、ステップS1122〜S1125の処理は、例えば、線型計画法等の既知の数理計画法等を用いることにより実行することができる。
【0094】
一方、ステップS1126にて、学習処理部160は、分離超平面、即ち、上述の式(2)のパラメータ(重みベクトルw及びバイアスb)を確定し、本フローによる処理を終了する。
【0095】
次に、本実施形態に係る機械学習装置100による統計的学習方法の作用について更に説明する。
【0096】
図10図11は、本実施形態に係る機械学習装置100による統計的学習方法の作用を説明する図である。具体的には、図10は、比較例に係る従来の統計的学習方法(誤分類数を最小化するソフトマージンSVM)で生成される分離超平面HP1の一例を模擬的に表す図である。図11は、本実施形態に係る機械学習装置100による統計的学習方法(正しい方向に対応する方向区分と誤分類される特定の方向区分との差に応じた誤分類ペナルティζの合計値を最小化するソフトマージンSVM)で生成される分離超平面HP2の一例を模擬的に表す図である。
【0097】
尚、図10図11における各学習用画像の配置は、各矩型部分のHOG特徴量の違いによる入力空間SP上の配置分散状態を模擬的に表す。また、分離超平面HP1,HP2は、人画像の各矩形部分のHOG特徴量の組み合わせに対応する入力空間SPを、前向きに対応する部分空間と、前向き以外に対応する部分空間とに分離する。
【0098】
図10に示すように、比較例に係る従来の統計的学習方法では、誤分類数を最小化する分離超平面HP1が生成される。比較例では、誤分類数が4と最小化されるが、前向きの反対の方向区分である後向きの学習用画像D180が前向きに対応する部分空間に含まれてしまっている。そのため、分離超平面HP1を用いて、前向きであるか否かを判別すると、実際は後向きの人を、大きく異なる前向きと判別してしまう可能性が高くなる。また、比較例では、前向きの学習用画像D0が前向き以外に対応する部分空間に含まれてしまっている。そのため、分離超平面HP1を用いて、前向きであるか否かを判別すると、実際は前向きの人を前向きでないと判別してしまう可能性が高くなり、前向きから大きく異なる他の方向区分(例えば、反対の方向区分である後向き)と判別されてしまう可能性がある。
【0099】
これに対して、図11に示すように、本実施形態では、正しい向きに対応する方向区分と、誤分類される特定の方向区分との差が大きくなるほど、大きくなる誤分類ペナルティζを採用し、誤分類ペナルティζの合計値を最小化する分離超平面HP2が生成される。そのため、前向きとの差が比較的大きい方向区分、例えば、後向きの学習用画像D180がより厳密に前向きに対応する部分空間に含まれないように、分離超平面HP2が生成されている。その代わり、前向きとの差が比較的小さい、即ち、本例では、前向きに隣接する方向区分である左前向きの学習用画像D45及び右前向きの学習用画像D315が前向きに対応する部分空間に含まれる誤分類をある程度許容する形で分離超平面HP2が生成される。換言すれば、学習処理部160は、学習用画像の各矩形部分のうち、一の方向区分と、隣接する方向区分との間で特徴に差異が生じ易い矩形部分の特徴情報(HOG特徴量)よりも、一の方向区分と、大きく異なる他の方向区分との間で特徴に差異が生じ易い矩形部分の特徴情報(HOG特徴量)に重きを置いて、分離超平面(第1〜第8の分離超平面)を探索する。そのため、クラス分類器1(第1クラス分類器31〜第8クラス分類器38)は、人画像の各矩形部分のうち、一の方向区分と、隣接する方向区分との間でシルエットやテクスチャ等の特徴に差異が生じ易い特徴情報(HOG特徴量)よりも、一の方向区分と、大きく異なる他の方向区分との間で上記特徴に差異が生じ易い特徴情報(HOG特徴量)に重みづけをして、人画像に含まれる人の向きを判別する。通常、人画像の各矩形部分のうち、一の方向区分と隣接する方向区分との間で差異が生じ易い部分と、一の方向区分と大きく異なる他の方向区分との間で差異が生じ易い部分は、異なる場合が多い。即ち、一の方向区分と隣接する方向区分との間で差異が生じ易い部分は、一の方向区分と大きく異なる他の方向区分との間で差異が生じにくい部分である場合が多い。従って、クラス分類器1は、大きく離れた方向区分(例えば、正しい向きに対応する方向区分の反対の方向区分)に判別する誤判別を抑制することができる。
【0100】
尚、一の方向区分と隣接する方向区分への誤判別が生じても、通常、問題はほとんど生じない場合が多い。例えば、後述の如く、人(歩行者)の向きに応じて、歩行者が車両に気付いているか、車道に侵入しそうか等を判断する場合、隣接する方向区分に誤分類されても、判断結果にはほとんど影響が出ない。
【0101】
また、図10図11を比較すると、誤分類数は、共に、4で同じであるが、図10に対応する誤分類ペナルティζの合計は、3.5(=1×3+0.5)であるのに対して、図10に対応する誤分類ペナルティζの合計は、2(=0.5×4)となっている。即ち、正しい向きに対応する方向区分と、誤分類される特定の方向区分との差が大きくなるほど大きくなる誤分類ペナルティζの合計値を最小化するソフトマージンSVMを採用することで、人画像の人の向きを、正しい向きと大きく異なる方向区分(例えば、反対の方向区分)に判別してしまう誤判別を抑制することができることがわかる。
【0102】
次に、本実施形態に係るクラス分類器1の実装例について説明する。
【0103】
図12は、本実施形態に係るクラス分類器1を実装する車両200の構成の一例を示す構成図である。
【0104】
車両200は、カメラ210、ECU220を備える。
【0105】
カメラ210は、車両200の前方を撮像する撮像手段である。カメラ210は、例えば、約1/30秒毎に車両200の前方を撮像し、撮像画像をECU220に出力する。
【0106】
ECU220は、カメラ210の撮像画像に基づき、車両200の前方の障害物(本例では、歩行者)との衝突を回避するための運転支援に関する制御処理を行う電子制御ユニットである。ECU220は、図1に示すようなCPU2,ROM3,RAM4,インターフェース部5を含むマイクロコンピュータを中心に構成される。
【0107】
図13は、ECU220の機能ブロック図である。ECU220は、図1に示すようなROM3に格納される1以上のプログラムをCPU2上で実行することにより実現される機能部として、歩行者検出部221、クラス分類器222、衝突可能性判断部223、運転支援制御部224を含む。
【0108】
歩行者検出部221は、カメラ210から入力される撮像画像から歩行者を検出する。歩行者の検出に用いられる手法は、任意であってよく、例えば、歩行者検出部221は、上述のクラス分類器1と同様、統計的学習方法を用いて生成される学習データに基づき、歩行者を検出してよい。歩行者検出部221は、撮像画像内に歩行者を検出した場合は、歩行者を含む人画像を生成し、クラス分類器222に出力する。また、歩行者検出部221は、撮像画像内に歩行者を検出した場合、歩行者検出部221は、検出した歩行者が車道にいるのか、左側の歩道にいるのか、右側の歩道にいるのかを判別する。歩行者検出部221は、判別結果、即ち、検出した歩行者がいる場所に関する情報を衝突可能性判断部223に出力する。
【0109】
クラス分類器222は、クラス分類器1と同じ機能構成を有し、歩行者検出部221から入力される人画像内の歩行者の向きを判別する。クラス分類器222は、判別結果を衝突可能性判断部223に出力する。
【0110】
衝突可能性判断部223は、歩行者検出部221から入力される歩行者がいる場所に関する情報、クラス分類器222から入力される歩行者の向き、及び車両200と歩行者との距離等に基づき、歩行者検出部221が検出した歩行者との衝突可能性を判断する。衝突可能性判断部223は、衝突可能性に関する判断結果を運転支援制御部224に出力する。
【0111】
衝突可能性判断部223は、例えば、歩行者が車道内にいる場合、衝突可能性が非常に高いと判断してよい。また、衝突可能性判断部223は、歩行者が歩道にいる場合であって、歩行者が車道側を向いている場合(即ち、左側の歩道で右向き、右前向き、右後向きの場合或いは右側の車道で左向き、左前向き、左後向きの場合)、歩行者が車道に侵入する可能性があるため、衝突可能性が比較的高いと判断してよい。また、衝突可能性判断部223は、歩行者が歩道にいる場合であって、歩行者が車両200に背を向けている場合(即ち、歩行者が後向きである場合や左側の車道で右後向き或いは右側の車道で左後向きの場合)、歩行者が車両200に気付いておらず、突然、歩道に侵入することもあり得るため、衝突可能性が中程度であると判断してよい。また、衝突可能性判断部223は、歩行者が歩道にいる場合であって、歩行者が正面を向いている場合(即ち、歩行者が前向きの場合)、歩行者が車両200に気付いており、突然、歩道に侵入する可能性は低いため、衝突可能性が比較的低いと判断してよい。また、衝突可能性判断部223は、歩行者が歩道にいる場合であって、歩行者が車道の反対側を向いている場合(即ち、歩行者が左側の車道で左前向き、左向き或いは右側の車道で右前向き、右向きの場合)、歩行者が歩道に侵入する可能性は低いため、衝突可能性が比較的低いと判断してよい。
【0112】
尚、上述した衝突可能性の判断は、歩行者のいる場所と歩行者の向きのみを考慮した判断の一例であり、衝突可能性判断部223は、更に、車両200と歩行者との距離に基づく衝突可能性を考慮する。また、車両200と歩行者との距離は、例えば、カメラ210の撮像画像から算出されてよいし、車両200が備える図示しないTOF(Time Of Flight)センサ(例えば、レーザレーダ、ミリ波レーダ等)から入力される検出信号に基づき、算出されてもよい。
【0113】
運転支援制御部224は、衝突可能性判断部223から入力される衝突可能性に関する判断結果に基づき、歩行者との衝突を回避するための運転支援制御を行う。例えば、運転支援制御部224は、衝突可能性判断部223により衝突可能性が比較的高いと判断された場合、その旨を車両200の運転者に報知(警告)する運転支援を行う。具体的には、運転支援制御部224は、車室内の表示装置(例えば、メータユニット等)にワーニングを表示させると共に、音声による警告を行う。これにより、運転者に対して、歩行者の突然の飛び出し等への注意を促すことができる。また、運転支援制御部224は、衝突可能性判断部223により衝突可能性が非常高いと判断された場合、自動的に、車両200の制動力を発生させたり、車両200の駆動力を制限したり等する。これにより、運転者の操作とは関係なく、車両200を減速させるため、例えば、車道に侵入した歩行者との衝突を回避することができる。
【0114】
ここで、歩行者の向きを実際の方向と大きく異なる方向、特に、反対の方向に誤判別してしまうと、以下のような不都合が生じる可能性がある。例えば、実際の車両200の前方の歩行者の向きは、車両200の進行方向と同じ向きである(即ち、車両200に背を向けている)にも関わらず、反対方向(即ち、車両の進行方向の反対の向き)に誤分類されると、歩行者は、車両に気付いていないにも関わらず、当該歩行者との衝突可能性が低いと誤判断される可能性がある。また、実際の車両200の前方の歩行者の向きは、車道に侵入する方向であるにも関わらず、車道から離れる方向であると誤分類されると、歩行者が車道に侵入してくる可能性が高いにも関わらず、衝突可能性が低いと誤判断される可能性がある。
【0115】
これに対して、本実施形態に係るクラス分類器222(即ち、クラス分類器1)は、上述の如く、大きく離れた方向区分(例えば、正しい向きに対応する方向区分の反対の方向区分)に判別する誤判別を抑制することができる。そのため、運転支援制御部224は、歩行者との衝突回避のためのより適切な運転支援を行うことができる。
【0116】
尚、本実施形態では、クラス分類器1(向き判別装置)が車両200に実装される一例を説明したが、車両200の外部でクラス分類器1が人の向きを判別し、該判別結果が車両200に送信される態様であってもよい。例えば、車両200と双方向に通信可能なセンタサーバにクラス分類器1が実装されると共に、路側に配備されるカメラや他の車両200に搭載されるカメラが撮像した画像をセンタサーバが受信し、クラス分類器1が該画像に含まれる歩行者の向きを判別してもよい。この場合、センタサーバは、画像が撮像された場所付近を走行する車両200に判別結果を送信することにより、車両200(運転支援制御部224)は、当該判別結果に基づき、歩行者との衝突を回避する運転支援を行うことができる。
【0117】
以上、本発明を実施するための形態について詳述したが、本発明はかかる特定の実施形態に限定されるものではなく、特許請求の範囲に記載された本発明の要旨の範囲内において、種々の変形・変更が可能である。
【0118】
例えば、上述した実施形態では、クラス分類器1は、統計的学習方法に基づき、人の向きを判別するが、予め規定するルール(即ち、人画像の各矩形部分の特徴情報に関する判別条件)に従って、人の向きを判別してよい。この場合、クラス分類器1は、予め規定するルールとして、人画像の各矩形部分のうち、一の方向区分と、大きく異なる他の方向区分との間でシルエットやテクスチャ等の特徴に差異が生じにくい特徴情報(HOG特徴量)よりも、一の方向区分と他の方向区分との間で上記特徴に差異が生じ易い特徴情報(HOG特徴量)に重みづけをして、人画像に含まれる人の向きを判別すればよい。これにより、上述の実施形態と同様、大きく離れた方向区分(例えば、正しい向きに対応する方向区分の反対の方向区分)に判別する誤判別を抑制することができる。
【符号の説明】
【0119】
1 クラス分類器(向き検出装置)
2 CPU
3 ROM
4 RAM
5 インターフェース部
6 バス
10 画像取得部
20 特徴抽出部(抽出部)
30 クラス分類部
31 第1クラス分類器
32 第2クラス分類器
33 第3クラス分類器
34 第4クラス分類器
35 第5クラス分類器
36 第6クラス分類器
37 第7クラス分類器
38 第8クラス分類器
40 向き判別部(判別部)
50 学習データ格納部
100 機械学習装置
101 CPU
102 ROM
103 RAM
104 ディスクドライブ
105 操作入力部
106 バス
110 学習用画像取得部
120 特徴抽出部
130 ベース教師データ生成部
140 誤分類ペナルティ算出部
150 教師データ生成部
160 学習処理部
170 学習データ格納部
200 車両
210 カメラ
220 ECU
221 歩行者検出部
222 クラス分類器
223 衝突可能性判断部
224 運転支援制御部
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11
図12
図13