(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2024118457
(43)【公開日】2024-08-30
(54)【発明の名称】改善された学習データ映像を生成する方法及びその装置
(51)【国際特許分類】
G06V 10/82 20220101AFI20240823BHJP
G06T 7/00 20170101ALI20240823BHJP
【FI】
G06V10/82
G06T7/00 350C
【審査請求】有
【請求項の数】12
【出願形態】OL
【外国語出願】
(21)【出願番号】P 2024022949
(22)【出願日】2024-02-19
(31)【優先権主張番号】10-2023-0022242
(32)【優先日】2023-02-20
(33)【優先権主張国・地域又は機関】KR
(31)【優先権主張番号】10-2023-0036897
(32)【優先日】2023-03-21
(33)【優先権主張国・地域又は機関】KR
(31)【優先権主張番号】10-2023-0036898
(32)【優先日】2023-03-21
(33)【優先権主張国・地域又は機関】KR
(71)【出願人】
【識別番号】523045180
【氏名又は名称】42ドット・インコーポレイテッド
【氏名又は名称原語表記】42dot Inc.
(74)【代理人】
【識別番号】100145403
【弁理士】
【氏名又は名称】山尾 憲人
(74)【代理人】
【識別番号】100135703
【弁理士】
【氏名又は名称】岡部 英隆
(74)【代理人】
【識別番号】100161883
【弁理士】
【氏名又は名称】北出 英敏
(74)【代理人】
【識別番号】100227927
【弁理士】
【氏名又は名称】中村 拓
(72)【発明者】
【氏名】チョ,ミョンフン
【テーマコード(参考)】
5L096
【Fターム(参考)】
5L096CA04
5L096HA11
5L096JA16
5L096KA04
(57)【要約】 (修正有)
【課題】改善された学習データ映像を生成する方法及び装置を提供する。
【解決手段】方法は、走行中に取得された第1映像に少なくとも2つ以上の認識技法を適用して、第1映像に含まれるオブジェクトを認識するステップS1410と、オブジェクトを認識した結果に少なくとも2つ以上の検出技法を適用して、適用された検出技法別にフレームを検出するステップS1430と、検出されたフレームを統合して複数のフレームを含むフレームセットを生成するステップS1450と、統合されたフレームセットをサンプリングして第2映像を生成するステップS1470と、を含む。
【選択図】
図14
【特許請求の範囲】
【請求項1】
走行中に取得された第1映像に少なくとも2つ以上の認識技法を適用して、前記第1映像に含まれるオブジェクトを認識するステップと、
前記オブジェクトを認識した結果に少なくとも2つ以上の検出技法を適用して、前記適用された検出技法別にフレームを検出するステップと、
前記検出されたフレームを統合して複数のフレームを含むフレームセットを生成するステップと、
前記統合されたフレームセットをサンプリングして第2映像を生成するステップとを含む、改善された学習データ映像を生成する方法。
【請求項2】
前記第2映像を生成するステップは、
前記統合されたフレームセットに基づいて、少なくとも1つ以上のフレームを含み、互いに重複しないフレームを含むフレームグループを生成するステップと、
前記フレームグループ別にフレームを抽出して前記第2映像を生成するステップとを含む、請求項1に記載の改善された学習データ映像を生成する方法。
【請求項3】
前記第2映像を生成するステップは、
前記フレームグループ別に1つのフレームを抽出して前記第2映像を生成するステップを含む、請求項2に記載の改善された学習データ映像を生成する方法。
【請求項4】
前記第2映像を生成するステップは、
前記フレームグループ毎に設定された重みに対応する数のフレームを前記フレームグループ別に抽出して前記第2映像を生成するステップを含む、請求項2に記載の改善された学習データ映像を生成する方法。
【請求項5】
前記フレームグループ毎に設定された重みは、
各フレームグループに含まれるフレームの数に基づいて決定された値である、請求項4に記載の改善された学習データ映像を生成する方法。
【請求項6】
前記第2映像を生成するステップにおいては、
前記統合されたフレームセットに含まれるフレームを予め設定された時間間隔に基づいてサンプリングして複数のフレームを抽出し、前記抽出されたフレームにより前記第2映像を生成する、請求項1に記載の改善された学習データ映像を生成する方法。
【請求項7】
前記統合されたフレームセットを生成するステップにおいては、
前記検出技法別に検出されたフレームにおいて重複して検出されたフレームを把握し、
前記第2映像を生成するステップにおいては、
前記重複して検出されたフレームを必須に含めて前記第2映像を生成する、請求項1に記載の改善された学習データ映像を生成する方法。
【請求項8】
前記第1映像に含まれるオブジェクトを認識するステップにおいては、
第1認識技法及び第2認識技法を適用して、前記第1映像に含まれるオブジェクトを認識し、
前記第1認識技法は、
YoloV4-CSPをベースとして前記第1映像のオブジェクトを認識するアルゴリズムであり、
前記第2認識技法は、
YoloV4-P7をベースとして前記第1映像のオブジェクトを認識するアルゴリズムである、請求項1に記載の改善された学習データ映像を生成する方法。
【請求項9】
前記少なくとも2つ以上の認識技法は、
第1認識技法及び第2認識技法を含み、
前記少なくとも2つ以上の検出技法は、
前記第1認識技法及び前記第2認識技法でそれぞれ認識されたオブジェクトのフレームを互いに比較した結果に基づいてフレームを検出する検出技法を含む、請求項1に記載の改善された学習データ映像を生成する方法。
【請求項10】
前記少なくとも2つ以上の検出技法は、
前記第1映像から認識されたオブジェクトが所定期間消えてから再出現したことを検知した結果に基づいてフレームを検出する検出技法を含む、請求項1に記載の改善された学習データ映像を生成する方法。
【請求項11】
請求項1に記載の方法を実行するためのプログラムを格納したコンピュータ読み取り可能な記録媒体。
【請求項12】
少なくとも1つのプログラムが格納されたメモリと、
前記少なくとも1つのプログラムを実行することにより演算を行うプロセッサとを含み、
前記プロセッサは、
走行中に取得された第1映像に少なくとも2つ以上の認識技法を適用して、前記第1映像に含まれるオブジェクトを認識し、
前記オブジェクトを認識した結果に少なくとも2つ以上の検出技法を適用して、前記適用された検出技法別にフレームを検出し、
前記検出されたフレームを統合して複数のフレームを含むフレームセットを生成し、
前記統合されたフレームセットをサンプリングして第2映像を生成する、改善された学習データ映像を生成する装置。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、学習データ映像を生成する方法に関し、より具体的には、オブジェクトを認識して自律運行を行うことのできる自律走行自動車が走行中に道路上のオブジェクトを認識する性能を向上させるための学習データをより改善された方法で生成する方法、及びその方法を実現するための装置に関する。
【背景技術】
【0002】
情報通信技術と車両産業との融合により、車両のスマート化が急速に進んでいる。スマート化により、車両は単純な機械的装置からスマートカーに進化しており、特に、スマートカーの中核技術として自律走行(self-driving)が注目されている。自律走行とは、運転者がハンドル、加速ペダル、ブレーキなどを操作しなくても、車両に搭載された自律走行モジュールが車両の走行状態を能動的に制御することにより、車両が自ら目的地まで辿る技術である。
【0003】
自律走行自動車の安全な自律走行のために、自律走行過程で車両が歩行者や他の車両を正確に認識し、認識されたオブジェクトとの距離を算出する方法に関する研究が様々に行われているが、車両の走行中に道路上に出現可能なオブジェクトの特性は事実上無限に近く、自律走行自動車に搭載されるモジュールのプロセッシング能力に限界が存在し、道路上のオブジェクトを完璧に認識する方法は現在知られていない。
【0004】
カメラによるオブジェクト認識及び距離推定の場合、実際の3次元世界のオブジェクトを2次元画像に投影しているので、距離に関する情報の損失が多い。特に、歩行者位置の計算に多く用いられる特徴(歩行者の身長や地面に接している点)のばらつきが大きいため、誤差が大きい。
【0005】
レーダー(RADAR)によるオブジェクト認識及び距離推定の場合、レーダーが運用する電波の特性上、オブジェクトを迅速に把握及び分類する能力が劣るので、歩行者であるか又は車両であるかの判断が難しく、特に、道路上に存在する歩行者や二輪車(自転車やバイク)の場合、信号強度が弱いため、認識結果がさらによくない傾向がある。
【0006】
近年、ライダー(LiDAR)を用いたオブジェクト認識及び距離推定技術が相対的に正確度が高いことから脚光を浴びているが、高出力レーザは危険性があるので、ライダーは出力を下げたレーザに基づいて動作せざるを得ず、レーダーが用いる電波とは異なり、レーザは周辺環境の影響を大きく受け、ライダーセンサのコストが高すぎることが限界点として指摘される。
【0007】
前述の背景技術は、発明者が本発明の導出のために保有していたか、又は本発明の導出過程で習得した技術情報であって、必ずしも本発明の出願前に一般公衆に公開された公知技術であるとはいえない。
【先行技術文献】
【特許文献】
【0008】
【特許文献1】韓国登録特許第10-2438114号公報(2022年8月25日)
【発明の概要】
【発明が解決しようとする課題】
【0009】
本発明が解決しようとする技術的課題は、改善された学習データ映像を生成する方法を提供することにある。
【課題を解決するための手段】
【0010】
上記技術的課題を解決するための本発明の一実施形態による方法は、走行中に取得された第1映像に少なくとも2つ以上の認識技法を適用して、前記第1映像に含まれるオブジェクトを認識するステップと、前記オブジェクトを認識した結果に少なくとも2つ以上の検出技法を適用して、前記適用された検出技法別にフレームを検出するステップと、前記検出されたフレームを統合して複数のフレームを含むフレームセットを生成するステップと、前記統合されたフレームセットをサンプリングして第2映像を生成するステップとを含む。
【0011】
前記方法において、前記第2映像を生成するステップは、前記統合されたフレームセットに基づいて、少なくとも1つ以上のフレームを含み、互いに重複しないフレームを含むフレームグループを生成するステップと、前記フレームグループ別にフレームを抽出して前記第2映像を生成するステップとを含む。
【0012】
前記方法において、前記第2映像を生成するステップは、前記フレームグループ別に1つのフレームを抽出して前記第2映像を生成するステップを含む。
【0013】
前記方法において、前記第2映像を生成するステップは、前記フレームグループ毎に設定された重みに対応する数のフレームを前記フレームグループ別に抽出して前記第2映像を生成するステップを含む。
【0014】
前記方法において、前記フレームグループ毎に設定された重みは、各フレームグループに含まれるフレームの数に基づいて決定された値であってもよい。
【0015】
前記方法において、前記第2映像を生成するステップにおいては、前記統合されたフレームセットに含まれるフレームを予め設定された時間間隔に基づいてサンプリングして複数のフレームを抽出し、前記抽出されたフレームにより前記第2映像を生成することができる。
【0016】
前記方法において、前記統合されたフレームセットを生成するステップにおいては、前記検出技法別に検出されたフレームにおいて重複して検出されたフレームを把握し、前記第2映像を生成するステップにおいては、前記重複して検出されたフレームを必須に含めて前記第2映像を生成することができる。
【0017】
前記方法において、前記第1映像に含まれるオブジェクトを認識するステップにおいては、第1認識技法及び第2認識技法を適用して、前記第1映像に含まれるオブジェクトを認識し、前記第1認識技法は、YoloV4-CSPをベースとして前記第1映像のオブジェクトを認識するアルゴリズムであり、前記第2認識技法は、YoloV4-P7をベースとして前記第1映像のオブジェクトを認識するアルゴリズムであってもよい。
【0018】
前記方法において、前記少なくとも2つ以上の認識技法は、第1認識技法及び第2認識技法を含み、前記少なくとも2つ以上の検出技法は、前記第1認識技法及び前記第2認識技法でそれぞれ認識されたオブジェクトのフレームを互いに比較した結果に基づいてフレームを検出する検出技法を含んでもよい。
【0019】
前記方法において、前記少なくとも2つ以上の検出技法は、前記第1映像から認識されたオブジェクトが所定期間消えてから再出現したことを検知した結果に基づいてフレームを検出する検出技法を含んでもよい。
【0020】
上記技術的課題を解決するための本発明の他の一実施形態による装置は、少なくとも1つのプログラムが格納されたメモリと、前記少なくとも1つのプログラムを実行することにより演算を行うプロセッサとを含み、前記プロセッサは、走行中に取得された第1映像に少なくとも2つ以上の認識技法を適用して、前記第1映像に含まれるオブジェクトを認識し、前記オブジェクトを認識した結果に少なくとも2つ以上の検出技法を適用して、前記適用された検出技法別にフレームを検出し、前記検出されたフレームを統合して複数のフレームを含むフレームセットを生成し、前記統合されたフレームセットをサンプリングして第2映像を生成することができる。
【0021】
上記技術的課題を解決するための本発明の一実施形態による方法は、映像からオブジェクトを認識し、前記オブジェクトが認識されている第1フレーム及び前記オブジェクトが認識されていない第2フレームを特定するステップと、前記第1フレームにおいて前記オブジェクトの第1外郭線を生成し、前記第1外郭線を構成する第1座標値に基づいて前記オブジェクトの第1キューボイドの座標を取得するステップと、前記第2フレームにおいて前記オブジェクトが認識されていなければならないか否かを判断し、前記判断した結果に基づいて、前記第2フレームでの前記オブジェクトの第2外郭線を生成するステップと、前記第1外郭線を構成する第1座標値及び前記第2外郭線を構成する第2座標値間の変換関係値を算出するステップと、前記第1キューボイドの座標に前記変換関係値を適用して前記第2フレームでの前記オブジェクトの第2キューボイドの座標を算出するステップとを含む。
【0022】
上記技術的課題を解決するための本発明の他の一実施形態による装置は、少なくとも1つのプログラムが格納されたメモリと、前記少なくとも1つのプログラムを実行することにより演算を行うプロセッサとを含み、前記プロセッサは、映像からオブジェクトを認識し、前記オブジェクトが認識されている第1フレーム及び前記オブジェクトが認識されていない第2フレームを特定し、前記第1フレームにおいて前記オブジェクトの第1外郭線を生成し、前記第1外郭線を構成する第1座標値に基づいて前記オブジェクトの第1キューボイドの座標を取得し、前記第2フレームにおいて前記オブジェクトが認識されていなければならないか否かを判断し、前記判断した結果に基づいて、前記第2フレームでの前記オブジェクトの第2外郭線を生成し、前記第1外郭線を構成する第1座標値及び前記第2外郭線を構成する第2座標値間の変換関係値を算出し、前記第1キューボイドの座標に前記変換関係値を適用して前記第2フレームでの前記オブジェクトの第2キューボイドの座標を算出することができる。
【0023】
上記技術的課題を解決するための本発明の一実施形態による方法は、映像の各フレーム別にオブジェクトを認識する第1認識アルゴリズムで映像に含まれるオブジェクトを認識するステップと、前記映像に含まれる複数のフレームでトラック(track)を形成し、前記トラックに含まれるオブジェクトを認識する第2認識アルゴリズムでオブジェクトを認識するステップと、前記第1認識アルゴリズムでオブジェクトを認識した結果及び前記第2認識アルゴリズムでオブジェクトを認識した結果を比較するステップと、前記比較した結果に基づいて、前記第1認識アルゴリズム及び前記第2認識アルゴリズムで前記映像のオブジェクトを認識した結果を補正するステップとを含む。
【0024】
上記技術的課題を解決するための本発明の他の一実施形態による装置は、少なくとも1つのプログラムが格納されたメモリと、前記少なくとも1つのプログラムを実行することにより演算を行うプロセッサとを含み、前記プロセッサは、映像の各フレーム別にオブジェクトを認識する第1認識アルゴリズムで映像に含まれるオブジェクトを認識し、前記映像に含まれる複数のフレームでトラック(track)を形成し、前記トラックに含まれるオブジェクトを認識する第2認識アルゴリズムでオブジェクトを認識し、前記第1認識アルゴリズムでオブジェクトを認識した結果及び前記第2認識アルゴリズムでオブジェクトを認識した結果を比較し、前記比較した結果に基づいて、前記第1認識アルゴリズム及び前記第2認識アルゴリズムで前記映像のオブジェクトを認識した結果を補正することができる。
【0025】
本発明の一実施形態は、前記方法を実行するためのプログラムを格納したコンピュータ読み取り可能な記録媒体を提供することができる。
【発明の効果】
【0026】
本発明によれば、自律走行自動車に装着されたカメラで走行中の映像を取得し、自律走行自動車のオブジェクト認識率を向上させることのできる学習データを取得することができる。
【0027】
特に、本発明により生成された学習データは、既存の学習データと比較して、自律走行自動車のオブジェクト認識装置のオブジェクト認識率をよりさらに高い効率で学習させることができる。
【図面の簡単な説明】
【0028】
【
図1】一実施形態による自律走行方式を説明するための図である。
【
図2】一実施形態による自律走行方式を説明するための図である。
【
図3】一実施形態による自律走行方式を説明するための図である。
【
図4A】一実施形態による車両の外部を撮影するカメラに関する図である。
【
図4B】一実施形態による車両の外部を撮影するカメラに関する図である。
【
図5】一実施形態によるオブジェクト認識方法を説明する概略図である。
【
図6】本発明の一実施形態による、自律走行自動車のオブジェクト認識率を改善する方法を概念的に説明するための図である。
【
図7A】本発明の一実施形態による、オブジェクト認識率改善装置で行われるフィルタリングプロセスを説明するための図である。
【
図7B】本発明の一実施形態による、オブジェクト認識率改善装置で行われるフィルタリングプロセスを説明するための図である。
【
図7C】本発明の一実施形態による、オブジェクト認識率改善装置で行われるフィルタリングプロセスを説明するための図である。
【
図8】本発明の他の一実施形態による、自律走行自動車のオブジェクト認識率の改善のために能動学習が適用される過程を説明するための図である。
【
図9】本発明によるオブジェクト認識率改善方法の一例を示すフローチャートである。
【
図10】本発明のさらに他の一実施形態によるオブジェクト認識率改善方法を説明するための図である。
【
図11】
図10で説明した実施形態によるオブジェクト認識率改善方法を示すフローチャートである。
【
図12】本発明による改善された学習データ映像を生成する方法の一例を概念的に示す概念図である。
【
図13】
図12で説明した実施形態を拡張した概念を図式的に示す図である。
【
図14】本発明による第2映像生成方法の一例を示すフローチャートである。
【
図15】一実施形態による第2映像生成装置のブロック図である。
【
図16】
図10で説明した実施形態によるオブジェクト認識率改善方法を示すフローチャートである。
【
図17】本発明による映像中のオブジェクトのキューボイドを説明するための図である。
【
図18】本発明による映像中のオブジェクトのキューボイドを取得する方法を概略的に説明するための概略図である。
【
図19】本発明によるキューボイド取得装置により行われる線形マッピング方法を説明するための図である。
【
図20】本発明によるキューボイド取得装置により行われる線形マッピング方法の他の一例を説明するための図である。
【
図21】本発明によるキューボイド取得方法の一例を示すフローチャートである。
【
図22】一実施形態によるキューボイド取得装置のブロック図である。
【
図23】本発明によるオブジェクト認識率向上方法を概略的に説明するための概略図である。
【
図24】
図23のステップS2380で説明したトラック登録後の処理プロセスを説明するための図である。
【
図25】
図23のステップS2360で説明したトラック削除後の処理プロセスを説明するための図である。
【
図26】本発明によるオブジェクト認識率向上方法の一例を示すフローチャートである。
【
図27】一実施形態によるオブジェクト認識率向上装置のブロック図である。
【発明を実施するための形態】
【0029】
本発明は、様々な変形を加えることができ、様々な実施形態を有するので、特定の実施形態を図面に例示し、詳細な説明に詳細に説明する。本発明の効果及び特徴、並びにそれらを達成する方法は、図面と共に詳細に後述する実施形態を参照することによって明らかになるであろう。しかし、本発明は、以下に開示される実施形態に限定されるものではなく、様々な形態で実現することができる。
【0030】
以下、添付図面を参照して本発明の実施形態を詳細に説明するが、図面を参照して説明するにあたり、同一又は対応する構成要素には同一の図面符号を付し、それについての重複する説明は省略する。
【0031】
以下の実施形態において、第1、第2などの用語は、限定的な意味ではなく、1つの構成要素を他の構成要素と区別する目的で用いられている。
【0032】
以下の実施形態において、単数の表現には、文脈上明らかに他の意味を表さない限り、複数の表現が含まれる。
【0033】
以下の実施形態において、「含む」や「有する」などの用語は、明細書に記載された特徴又は構成要素が存在することを意味するものであり、1つ以上の他の特徴又は構成要素が付加される可能性を予め排除するものではない。
【0034】
ある実施形態において異なる実現が可能な場合、特定の工程順序は説明される手順とは異なる手順で行われてもよい。例えば、連続して説明される2つの工程は、実質的に同時に行われてもよく、説明される手順とは逆の手順で行われてもよい。
【0035】
図1~
図3は一実施形態による自律走行方式を説明するための図である。
【0036】
図1を参照すると、本発明の一実施形態による自律走行装置は、車両に装着されて自律走行自動車10を実現することができる。自律走行自動車10に装着される自律走行装置は、周辺の状況情報を収集するための様々なセンサを含んでもよい。一例として、自律走行装置は、自律走行自動車10の前面に装着されたイメージセンサ及び/又はイベントセンサにより、前方を運行中の先行車両20の動きを検知することができる。自律走行装置は、自律走行自動車10の前方はもとより、隣の車路を運行中の他の走行車両30や、自律走行自動車10周辺の歩行者などを検知するためのセンサをさらに含んでもよい。
【0037】
自律走行自動車周辺の状況情報を収集するためのセンサの少なくとも1つは、
図1に示すように、所定の画角(FoV)を有することができる。一例として、自律走行自動車10の前面に装着されたセンサが
図1に示すような画角(FoV)を有する場合、センサの中央で検出される情報が相対的に高い重要度を有することができる。それは、センサの中央で検出される情報に、先行車両20の動きに対応する情報のほとんどが含まれているからである。
【0038】
自律走行装置は、自律走行自動車10のセンサが収集した情報をリアルタイムで処理して自律走行自動車10の動きを制御する一方、センサが収集した情報の少なくとも一部はメモリ装置に保存することができる。
【0039】
図2を参照すると、自律走行装置40は、センサ部41、プロセッサ46、メモリシステム47、車体制御モジュール48などを含んでもよい。センサ部41は、複数のセンサ42~45を含み、複数のセンサ42~45は、イメージセンサ、イベントセンサ、照度センサ、GPS装置、加速度センサなどを含んでもよい。
【0040】
センサ42~45が収集したデータは、プロセッサ46に伝達されるようにしてもよい。プロセッサ46は、センサ42~45が収集したデータをメモリシステム47に保存し、センサ42~45が収集したデータに基づいて車体制御モジュール48を制御して車両の動きを決定することができる。メモリシステム47は、2つ以上のメモリ装置と、メモリ装置を制御するためのシステムコントローラとを含んでもよい。メモリ装置のそれぞれは、1つの半導体チップとして提供されるようにしてもよい。
【0041】
メモリシステム47のシステムコントローラの他に、メモリシステム47に含まれるメモリ装置のそれぞれは、メモリコントローラを含んでもよく、メモリコントローラは、ニューラルネットワークなどの人工知能(AI)演算回路を含んでもよい。メモリコントローラは、センサ42~45又はプロセッサ46から受信したデータに所定の重みを与えて演算データを生成し、演算データをメモリチップに保存することができる。
【0042】
図3は自律走行装置が搭載された自律走行自動車のセンサが取得した映像データの一例を示す図である。
図3を参照すると、映像データ50は、自律走行自動車の前面に装着されたセンサが取得したデータであってもよい。よって、映像データ50は、自律走行自動車の前面部51、自律走行自動車と同じ車路の先行車両52、自律走行自動車周辺の走行車両53、非関心領域54などを含むことができる。
【0043】
図3に示す実施形態による映像データ50において、自律走行自動車の前面部51及び非関心領域54が表示される領域のデータは、自律走行自動車の運行に影響を及ぼす可能性がほとんどないデータであり得る。言い換えれば、自律走行自動車の前面部51及び非関心領域54は、相対的に低い重要度を有するデータとみなすことができる。
【0044】
それに対して、先行車両52との距離、走行車両53の車路変更の動きなどは、自律走行自動車の安全な運行において非常に重要な要素であり得る。よって、映像データ50において、先行車両52や走行車両53などが含まれる領域のデータは、自律走行自動車の運行において相対的に高い重要度を有することができる。
【0045】
自律走行装置のメモリ装置は、センサから受信した映像データ50の領域毎に異なる重みを与えて保存することができる。一例として、先行車両52や走行車両53などが含まれる領域のデータには高い重みを与え、自律走行自動車の前面部51及び非関心領域54が表示される領域のデータには低い重みを与えることができる。
【0046】
図4A及び
図4Bは一実施形態による車両の外部を撮影するカメラに関する図である。
【0047】
カメラは、車両に搭載されて車両の外部を撮影することができる。カメラは、車両の前方、側方、後方などを撮影することができる。本発明によるオブジェクト認識率改善装置は、カメラで撮影された複数の映像を取得することができる。カメラで撮影された複数の映像には、複数のオブジェクトが含まれ得る。
【0048】
オブジェクトに関する情報は、オブジェクト種類情報及びオブジェクト属性情報を含む。ここで、オブジェクト種類情報は、オブジェクトの種類を示すインデックス情報であり、大きい範囲であるグループと、細かい範囲であるクラスとから構成される。また、オブジェクト属性情報は、オブジェクトの現在の状態に関する属性情報を示すものであり、動き情報、回転情報、交通情報、色情報、可視性情報などを含む。
【0049】
一実施形態において、オブジェクト種類情報に含まれるグループ及びクラスは、下記表1の通りであるが、それに限定されるものではない。
【表1】
【0050】
動き情報は、オブジェクトの動き情報を示し、停車、駐車、移動などと定義することができる。車両の場合、停車、駐車、移動をオブジェクト属性情報として決定することができ、歩行者の場合、移動、停止、不明をオブジェクト属性情報として決定することができ、信号機のように動きのないオブジェクトの場合、デフォルト値である静止をオブジェクト属性情報として決定することができる。
【0051】
回転情報は、オブジェクトの回転情報を示し、正面、後面、水平(horizontal)、垂直(vertical)、側面などと定義することができる。車両の場合、正面、後面、側面をオブジェクト属性情報として決定することができ、横方向又は縦方向の信号機は、それぞれ水平又は垂直をオブジェクト属性情報として決定することができる。
【0052】
交通情報は、オブジェクトの交通情報を意味し、交通標識の指示、注意、規制、補助標識などと定義することができる。色情報は、オブジェクトの色情報を意味し、オブジェクトの色、信号機及び交通標識の色を示すことができる。
【0053】
図4Aを参照すると、オブジェクト411は、歩行者であり得る。画像410は、所定のサイズを有し得る。複数の画像410には、同じオブジェクト411が含まれ得るが、車両が道路を走行することによって車両とオブジェクト411との相対的位置は変化し続け、また、オブジェクト411も時間に応じて移動するので、それにより同じオブジェクト411であっても各画像内での位置が変化する。
【0054】
各画像において同じオブジェクトが何であるかを決定するために画像全体を用いる場合、データ伝送量及び演算量が非常に大きくなる。それにより、車両に搭載される装置におけるエッジコンピューティングによる処理が難しく、リアルタイム分析も難しい。
【0055】
図4Bを参照すると、画像420に含まれるバウンディングボックス421が示される。バウンディングボックス(Bounding box)は、オブジェクト(object)に関するメタデータであり、バウンディングボックス情報には、オブジェクト種類情報(グループ、クラスなど)、画像420上の位置情報、サイズ情報などが含まれ得る。
【0056】
図4Bを参照すると、バウンディングボックス情報は、当該オブジェクト411が歩行者クラスに該当するという情報、オブジェクト411の左側上端の頂点が画像上の(x,y)に位置するという情報、オブジェクト411のサイズがw×hであるという情報、及びオブジェクト411が移動中であるという現在状態情報(すなわち、動き情報)を含んでもよい。
【0057】
図5は一実施形態によるオブジェクト認識方法を説明する概略図である。
【0058】
オブジェクト認識率改善装置は、カメラから取得された動画をフレーム別に分離して複数のフレームを取得することができる。複数のフレームは、前のフレーム510及び現在のフレーム520を含んでもよい。
【0059】
オブジェクト認識率改善装置は、前のフレーム510で第1歩行者オブジェクト511を認識することができる。
【0060】
一実施形態において、オブジェクト認識率改善装置は、フレームを同じサイズのグリッドに分け、各グリッドに対してグリッドの中央を中心に予め定義された形態で指定された境界ボックスの数を予測し、それに基づいて信頼度を計算することができる。オブジェクト認識率改善装置は、フレームにオブジェクトが含まれるか否か、又は背景だけ単独であるか否かを決定し、高いオブジェクト信頼度を有する位置を選択してオブジェクトカテゴリーを決定することにより、結果的にオブジェクトを認識することができる。ただし、本開示において、オブジェクトを認識する方法はそれに限定されるものではない。
【0061】
オブジェクト認識率改善装置は、前のフレーム510で認識された第1歩行者オブジェクト511の第1位置情報を取得することができる。
図4A及び
図4Bで上述したように、第1位置情報は、前のフレーム510上の第1歩行者オブジェクト511に対応するバウンディングボックスのいずれか1つの頂点(例えば、左側上端の頂点)座標情報及び縦横長さ情報を含んでもよい。
【0062】
また、オブジェクト認識率改善装置は、現在のフレーム520で認識された第2歩行者オブジェクト521の第2位置情報を取得することができる。
【0063】
オブジェクト認識率改善装置は、前のフレーム510で認識された第1歩行者オブジェクト511の第1位置情報、及び現在のフレーム520で認識された第2歩行者オブジェクト521の第2位置情報間の類似度を算出することができる。
【0064】
図5を参照すると、オブジェクト認識率改善装置は、第1位置情報及び第2位置情報を用いて、第1歩行者オブジェクト511と第2歩行者オブジェクト521の積集合及び和集合を算出することができる。オブジェクト認識率改善装置は、和集合領域に対する積集合領域の値を算出し、算出された値が閾値以上である場合、第1歩行者オブジェクト511と第2歩行者オブジェクト521が同じ歩行者オブジェクトであると決定することができる。
【0065】
しかし、オブジェクト間の同一性を判別する方法は、上述した方法に限定されるものではない。
【0066】
図6は本発明の一実施形態による、自律走行自動車のオブジェクト認識率を改善する方法を概念的に説明するための図である。
【0067】
図6を参照して本発明の一実施形態を要約すると、本発明の一実施形態は、ローデータ(raw data)610を第1モデル620及び第2モデル630に入力すると、それぞれのモデルで算出される結果データをばらつきデータ算出モジュール640が受信して処理することにより、ばらつきデータ645が算出されるようにし、算出されたばらつきデータ645をウィークネスポイント(Weakness Point)分析モジュール650が受信して分析するようにすることにより、ウィークネスポイントを把握するものと理解することができる。
【0068】
より具体的には、本発明において、ローデータ610は、自律走行自動車に装着されたカメラモジュールが収集した映像を意味する。特に、ローデータ610は、カメラモジュールで生成された後に前処理(pre-processing)が行われていない動画(video)データであって、複数のフレームで構成されており、フレームレートは1秒当たり30フレーム又は60フレームであってもよいが、それに限定されるものではない。
【0069】
第1モデル620とは、自律走行自動車に装着されたモデルであって、ローデータ610を入力データとして受信し、ローデータ610に含まれるオブジェクトを認識した結果を出力データとして出力するモデルを意味する。
【0070】
第2モデル630とは、サーバに含まれるモデルであって、第1モデル620と同様に、ローデータ610を入力データとして受信し、ローデータ610に含まれるオブジェクトを認識した結果を出力データとして出力するモデルを意味する。第2モデル630は、限られたリソースにより性能が高くない第1モデル620に比べて、大きなメモリをベースとして十分なリソースを使用できる高性能のモデルとなり得る。
【0071】
自律走行自動車のカメラモジュールは、通信モジュールを介して収集されたローデータ610が第1モデル620だけでなく第2モデル630にも送信されて処理されるように制御される。
【0072】
第1モデル620及び第2モデル630から出力される出力データは、映像の各フレーム毎に含まれる車両や歩行者などの相対的位置、サイズ、方向に関する情報のうちの少なくとも1つに関する情報を含んでもよい。
【0073】
本発明において、第1モデル620は、自律走行自動車に装着された特性上、第2モデル630に比べて相対的にリソースが限られており、限られた環境で動作する。上記のようなモデルのスケール(scale)の違いにより、ローデータ610を第2モデル630に入力した場合に映像から認識されたオブジェクトの数と種類に関する情報は、ローデータ610を第1モデル620に入力した場合に映像から認識されたオブジェクトの数と種類に関する情報よりさらに改善された情報となり得る。
【0074】
【表2】
【表3】
表2及び表3は、第1モデル620及び第2モデル630の性能を数値化して示す一例である。より具体的には、表2は、第1モデル620としてYoloV4-CSPを採用した場合のオブジェクト認識率を示しており、表3は、第2モデル630としてYoloV4-P7を採用した場合のオブジェクト認識率を示している。表2と表3を比較すると、ローデータ610に含まれるオブジェクトとして、乗用車(car)、歩行者(pedestrian)、トラック(truck)、バス(bus)、二輪車(two wheeler)及び不明体(misc: miscellaneous)の認識率は、YoloV4-P7の方がYoloV4-CSPより全体的に優れていることが分かる。
【0075】
表2及び表3は、第1モデル620及び第2モデル630の性能を数値化して例示的に示すものであるので、本発明における第1モデル620及び第2モデル630は、表2及び表3で説明したYoloV4-CSP、YoloV4-P7にそれぞれ限定されるものではない。
【0076】
ばらつきデータ算出モジュール640は、第1モデル620及び第2モデル630の出力データを分析してばらつきデータ645を算出することができる。ばらつきデータ645は、ローデータ610を第1モデル620に入力した結果とローデータ610を第2モデル630に入力した結果間のばらつきに関するデータを意味するものであり、より詳細には、同じフレーム別に比較して算出することができる。例えば、ローデータ610が10フレームで構成された動画データである場合、ばらつきデータ645は、ローデータ610の第1フレームを第1モデル620に入力した結果とローデータ610の第1フレームを第2モデル630に入力した結果とを比較してばらつきを算出した結果であってもよい。
【0077】
ばらつきデータ算出モジュール640は、ローデータ610を構成するフレーム別に相互間のバウンディングボックス(bounding box)のIoU値(Intersection over Union Value)を計算し、最大のIoUを有するバウンディングボックス同士をマッチングし、マッチングした結果で第2モデル630の出力データにのみ探知されるバウンディングボックスをウィークネスポイント対象と判断し、ウィークネスポイント分析モジュールに伝達することができる。ばらつきデータ算出モジュール640がIoU値に基づいてフレーム間でバウンディングボックスをマッチングしてばらつきデータを算出する方法は、
図5で既に説明したので省略する。
【0078】
以下、ローデータ610を第1モデル620に入力して出力されたデータを第1認識結果といい、ローデータ610を第2モデル630に入力して出力されたデータを第2認識結果と称する。
【0079】
ウィークネスポイント分析モジュール650は、ばらつきデータ算出モジュール640からばらつきデータを受信し、ウィークネスポイントを分析する。ここで、ウィークネスポイントは、自律走行自動車に装着されていて第2モデル630に比べて相対的に少ない演算量を有するしかない第1モデル620の限界性能により、第2モデル630では検出されているオブジェクトが第1モデル620では検出されていない場合、その検出されていない情報に関するデータを意味する。例えば、第2モデル630がローデータ610を受信して映像中で乗用車1台、バス1台をオブジェクトとして認識し、第1モデル620がローデータ610を受信して映像中で乗用車1台をオブジェクトとして認識した場合、ウィークネスポイントは、第1モデル620が認識(探知)していないバス1台に関する情報となり得る。
【0080】
ウィークネスポイント分析モジュール650が分析したウィークネスポイントは、第1モデル620のオブジェクト認識性能を向上させるための学習データとして用いることができる。また、ウィークネスポイントは、第1モデル620の学習データとして用いるために、一連の前処理プロセス(又は、フィルタリングプロセス)により前処理されてもよく、それについては後述する。
【0081】
図6において、第1モデル620、ばらつきデータ算出モジュール640及びウィークネスポイント分析モジュール650は、本発明の一実施形態による自律走行自動車のオブジェクト認識率改善装置に物理的又は論理的に含まれる形態で実現されてもよい。また、
図6において、第1モデル620、第2モデル630、ばらつきデータ算出モジュール640及びウィークネスポイント分析モジュール650は、本発明が実際に実現される場合、他の名称で呼ばれてもよく、また、いずれか1つのモジュールが他の1つに統合される形態で実現されてもよい。
【0082】
図7A~
図7Cは本発明の一実施形態による、オブジェクト認識率改善装置で行われるフィルタリングプロセスを説明するための図である。
【0083】
まず、
図7Aはフィルタリングされる前のばらつきデータを示すものであり、
図7Aには第1オブジェクト710a、第2オブジェクト720a、第3オブジェクト730a、第4オブジェクト740a及び第5オブジェクト750aがオブジェクトとして認識されたことが図式的に示されている。より詳細には、
図7Aに示す5つのオブジェクトは、第1認識結果では認識されていないが、第2認識結果では認識されてばらつきデータとして加工されてウィークネスポイント分析モジュール650に伝達されたものと理解することができ、ウィークネスポイント分析モジュール650は、予め設定されたフィルタ基準でフィルタリングを行い、ばらつきデータにおいて意味のあるオブジェクト情報のみを残すことができる。
【0084】
一例として、予め設定されたフィルタ基準は、ばらつきデータに含まれるバウンディングボックスのサイズに関するサイズ基準であり、ウィークネスポイント分析モジュール650は、ばらつきデータをベースとする情報として、サイズ基準よりさらに小さいサイズのバウンディングボックスを除去することができる。ここで、サイズ基準は、高さ(height)が120ピクセル未満であるか、幅(width)が120ピクセル未満であるバウンディングボックスを除去するための基準となり得るが、上述した値は例示的な値であるので、実施形態によって、高さ又は幅の基準値は異なり得る。
【0085】
他の一例として、予め設定されたフィルタ基準は、ばらつきデータに含まれるバウンディングボックスのオブジェクトの種類を区分するための区分基準であり、ウィークネスポイント分析モジュール650は、ばらつきデータをベースとする情報として、区分基準に従って特定種類のオブジェクトのバウンディングボックスを除去することができる。ここで、特定種類とは、バウンディングボックスの上端に記載されたクラス(class)を意味し、
図7Aの5つのバウンディングボックスには計4種類のクラス(乗用車、トラック、歩行者、二輪車)が示されている。
【0086】
ウィークネスポイント分析モジュール650に設定されるフィルタ基準に高さ(height)が120ピクセル未満であるか、幅(width)が120ピクセル未満であるバウンディングボックスを除去するためのサイズ基準と、歩行者や二輪車のバウンディングボックスを除去するための区分基準が同時に設定されている場合、
図7Aにおいて、第2オブジェクト720a、第3オブジェクト730a及び第4オブジェクト740aは除去され、第1オブジェクト710a及び第5オブジェクト750aのみが残る。
【0087】
図7Bは
図7Aと同様にフィルタリングされる前のばらつきデータを示すものであり、
図7Bには第6オブジェクト710bがオブジェクトとして認識されたことが図式的に示されている。
【0088】
より詳細には、
図7Bに示す第6オブジェクト710bは、第1認識結果では認識されていないが、第2認識結果では認識されてばらつきデータとして加工されてウィークネスポイント分析モジュール650に伝達されたものと理解することができ、ウィークネスポイント分析モジュール650は、予め設定されたフィルタ基準でフィルタリングを行い、ばらつきデータにおいて意味のあるオブジェクト情報のみを残すことができる。
【0089】
ただし、
図7Bにおいて、第6オブジェクト710bは、1つのオブジェクトではなく、第7オブジェクト720bと第8オブジェクト730bが偶然重なる過程で1つのオブジェクトとして誤認識されたものであり、形態上の特性上、非常に低い信頼度(confidence)である0.3396が記録されていることが分かる。
【0090】
一例として、
図7Bにおいて、予め設定されたフィルタ基準は、ばらつきデータに含まれるバウンディングボックスの信頼度に関する信頼度基準であり、ウィークネスポイント分析モジュール650は、ばらつきデータをベースとする情報として、信頼度基準よりさらに低い信頼度のバウンディングボックスを除去することができる。ここで、信頼度基準は、0.6となり得るが、実施形態によって異なり得る。
【0091】
図7Bにおいて、ウィークネスポイント分析モジュール650は、信頼度基準に従って第6オブジェクト710bのバウンディングボックスを除去することができ、第6オブジェクト710bのバウンディングボックスが除去された後、
図7Bのフレームには残っているバウンディングボックスがないので、第1認識結果及び第2認識結果は事実上同じものとみなすことができる。第1認識結果及び第2認識結果が事実上同じであるとは、第1モデル620が第6オブジェクト710bを学習しなくてもよいことを意味する。
【0092】
図7Cは
図7A及び
図7Bと同様にフィルタリングされる前のばらつきデータを示すものであり、
図7Cには第9オブジェクト710c、第10オブジェクト720c及び第11オブジェクト730cがオブジェクトとして認識されたことが図式的に示されている。
【0093】
より具体的には、
図7Cに示すオブジェクトのうち、第10オブジェクト720c及び第11オブジェクト730cは、第1認識結果及び第2認識結果のどちらでもオブジェクトとして認識された車両であって、バウンディングボックスが除去されているが、第9オブジェクト710cは、道路を走行中の自律走行自動車の走行に影響を与える可能性のないオブジェクトであるにもかかわらず、トラック(truck)というクラスに分類されてバウンディングボックスが適用されていることが、
図7Cに示されている。
【0094】
通常、より高い認識性能を有する第2モデル630の方が認識するオブジェクトの数が多いが、特定の場合、第1モデル620がオブジェクトでない対象をオブジェクトとして誤認識するか、第2モデル630が誤動作してオブジェクトでないため第1モデル620に認識されていないオブジェクトを正常なオブジェクトとして誤認識する場合が発生することがあり、ウィークネスポイント分析モジュール650は、予め設定されたフィルタ基準に従って、第9オブジェクト710cを実際の道路でない位置に道路にのみ存在するオブジェクトが存在するものと判断し、該当バウンディングボックスを除去することができる。
図7Cにおいて、第9オブジェクト710cのバウンディングボックスが除去されると、第1認識結果及び第2認識結果のばらつきが実質的になくなるので、第1モデル620が学習するデータも当然なくなる。
【0095】
図8は本発明の他の一実施形態による、自律走行自動車のオブジェクト認識率の改善のために能動学習が適用される過程を説明するための図である。
【0096】
本発明によるオブジェクト認識率改善装置は、
図8に示す分類モジュール820、ラベリングデータ収集モジュール840、学習モデル850及び予測モデル860を物理的又は論理的な形態で含んでもよい。
図8において、学習モデル850は、入力されるデータにより学習されているモデルを、予測モデル860は、学習が完了して試験データが入力されるとそれによる結果データを出力できる予測性モデル(predictive model)をそれぞれ意味するものとみなし、学習モデル850は、学習により認識率が改善されるモデルであるので、結局、自律走行自動車に装着される第1モデル620を意味する。
【0097】
通常、マシンラーニングを行うためにローデータを前処理する過程の必須過程であるデータのラベリング(labeling)は、データの特徴が正確に区分されないので、人間(human)により行われるが、本発明によるオブジェクト認識率改善装置は、自動ラベリング(auto-labeling)を一部含む能動学習(active learning)による能動ラベリング(active labeling)を行うことにより、学習モデル850がローデータ810の特徴を迅速かつ効率的に学習できるように誘導する。
【0098】
図8において、ローデータ810とは、
図6と同様に、自律走行自動車が走行中にカメラで撮影して収集した映像を意味する。
【0099】
ローデータ810は、分類モジュール820により自動的にラベリングされてもよい。具体的には、ローデータ810が複数のフレームで構成された映像である場合、分類モジュール820は、各フレーム別にオブジェクトを自動で認識し、特定のフレームのaオブジェクトはトラック、bオブジェクトは歩行者、cオブジェクトは二輪車などのように、オブジェクトのクラスを自動で分類することができる。
【0100】
分類モジュール820は、ローデータ810を分析する上で、内部的な分類アルゴリズムにより分類しにくいと判断されたオブジェクトに対しては自動でラベリングを行わず、ここで、分類しにくいと判断されたオブジェクトは、
図6~
図7Cで説明したウィークネスポイントとなり得る。すなわち、フィルタ基準によりフィルタリングされてからも第1モデル620及び第2モデル630の結果の違いであると判断された
図7Aの第1オブジェクト710a及び第5オブジェクト750aは、分類モジュール820により分類しにくいと判断されたオブジェクトとなり得る。分類しにくいと判断されたオブジェクトに関する情報は、分類モジュール820により自動で収集されて高度な分類基準を習得したユーザ830に伝達され、ユーザ830は、データのラベリングを完了し、その後ラベリングデータ835をラベリングデータ収集モジュール840に伝達する。
【0101】
ラベリングデータ収集モジュール840は、分類モジュール820からの自動でラベリングされたデータ及びユーザ830からの手動でラベリングされたデータの全ての伝達を受け、学習モデル850がラベリングされたデータを学習するように制御する。学習モデル850において、不規則性により学習されないデータは、再び分類モジュール820に伝達され、分類モジュール820又はユーザ830によりラベリングされ、学習モデル850に再入力される過程を繰り返し、最終的にローデータ810のオブジェクト認識に関する学習が完了したモデルは、予測モデル860となり、新たに入力されるローデータ810に含まれるオブジェクトを正確に認識できるようになる。
【0102】
上記のように、選別された一部のデータに対してのみ高度な分類基準を習得したユーザ830によりラベリングされ、他のデータに対しては自動でラベリングを行う能動学習を適用することにより、本発明による学習モデル850は、迅速かつ正確に学習データ(映像のオブジェクトに関する情報)を学習することができ、分類モジュール820では
図7A~
図7Cで説明したフィルタ基準が適用されることによって、ユーザ830が手動で行わなければならないラベリングの作業量が大幅に減少することができる。すなわち、本発明によれば、既存のラベリング作業により発生する過度なコスト(時間的コスト、金銭的コスト)を最小限に抑えることができる。
【0103】
図9は本発明によるオブジェクト認識率改善方法の一例を示すフローチャートである。
【0104】
図9による方法は、前述のオブジェクト認識率改善装置により実現することができるので、以下、
図6~
図8を参照して説明し、
図6~
図8で説明した内容と重複する説明は省略する。
【0105】
オブジェクト認識率改善装置は、走行中に取得された第1映像に含まれるオブジェクトを第1認識技法で認識して、第1認識結果を算出することができる(S910)。
【0106】
オブジェクト認識率改善装置は、第2認識技法で第1映像に含まれるオブジェクトを認識した第2認識結果を受信することができる(S930)。
【0107】
オブジェクト認識率改善装置は、第1認識結果及び第2認識結果のばらつきデータを算出することができる(S950)。
【0108】
オブジェクト認識率改善装置は、ステップS950で算出されたばらつきデータをベースとする情報により第1認識技法で映像に含まれるオブジェクトを認識する第1モデルが学習されるように制御することができる(S970)。
【0109】
図10は本発明のさらに他の一実施形態によるオブジェクト認識率改善方法を説明するための図である。
【0110】
本選択的一実施形態は、
図6~
図9で説明したオブジェクト認識率改善方法と同じプロセスを一部共有する。走行中に取得された映像を分析してオブジェクトを認識する構成は同様であるが、同じ映像に異なる認識技法を適用してオブジェクトを認識してばらつきデータを算出している
図6の方法とは異なり、本実施形態においては、1つの認識技法により映像に含まれるオブジェクトを認識する。前述の第1モデル620、第2モデル630と区分するために、本実施形態で映像のオブジェクトを認識するモデルを認識モデルと称する。
【0111】
図10を参照すると、計4つのフレームが示されており、各フレーム別に最小1つ以上のオブジェクトがフレームの特定位置に位置している。より具体的には、
図10において、i番目のフレーム、i+1番目のフレーム、i+3番目のフレームでは上端と下端にそれぞれオブジェクトが存在することが認識されているが、i+2番目のフレームでは下端のオブジェクトが一時的に消失して上端にのみオブジェクトが存在することが認識されていることが分かる。本実施形態によるオブジェクト認識率改善装置は、
図10のように、特定のオブジェクトに対してトラッキング(tracking)が行われている過程で急に特定のフレームでオブジェクトの消失が発生してから短い時間内にオブジェクトが認識された場合をウィークネスポイントとみなし、認識モデルを学習させる学習データに変換することができる。
【0112】
すなわち、本実施形態は、トラッキングが正常に行われたオブジェクトが特定のフレームで消失してから再出現した場合、自律走行自動車のオブジェクト認識モジュールの性能の限界が生じたものであるので、オブジェクト認識モジュールに対する追加学習によりオブジェクト認識性能を向上させるための実施形態として理解することができる。
【0113】
【表4】
表4は
図6~
図9を用いて説明した実施形態と
図10で説明した実施形態の違いを記載した表である。表4を参照すると、本発明の2つの実施形態は、いずれも自律走行自動車に装着されるオブジェクト認識モジュールの性能上の限界(ウィークネスポイント)が生じた地点を把握し、その把握された性能上の限界を補完するための学習データを生成してオブジェクト認識モジュール(認識モデル)を迅速かつ効率的に学習させる目的は一致するが、それを実現するための構成上の違いが一部存在することが分かる。
【0114】
図11は
図10で説明した実施形態によるオブジェクト認識率改善方法を示すフローチャートである。
【0115】
まず、オブジェクト認識率改善装置は、走行中に取得された第1映像から第1オブジェクトを認識することができる(S1110)。ここで、オブジェクト認識率改善装置が第1映像から第1オブジェクトを認識したとは、
図10に示すように、第1映像を構成するフレームの中から第1オブジェクトを認識して第1オブジェクトのサイズ及び種類(class)に関する情報を把握したことを意味する。
【0116】
次に、オブジェクト認識率改善装置は、第1映像で第1オブジェクトが所定期間消えてから再出現するか否かを検知することができる(S1130)。
【0117】
ここで、所定期間は、少なくとも1つ以上のフレームの時間範囲値であってもよい。収集された第1映像のフレームレートが30フレーム/秒である場合、所定期間は、0秒~1/30秒に該当する時間範囲値であってもよい。
【0118】
他の例として、所定期間は、1~3フレームの時間範囲値であってもよく、
図10において、所定期間は、1フレームの時間範囲値であることが分かる。所定期間が3フレームの時間範囲値である場合、i番目のフレームにトラッキングされていた第1オブジェクトがi+1番目のフレームで消失してからi+5番目のフレームで再出現すると、所定期間消えたものとみなすことができる。
【0119】
オブジェクト認識率改善装置は、第1オブジェクトが再出現したことを検知したことに基づいて、第1オブジェクトに関する学習データを算出することができる(S1150)。第1オブジェクトが消えた後、再出現しないか、再出現したとしても所定期間が経過した後に再出現した場合、オブジェクト認識率改善装置は、条件を満たさないとみなし、第1オブジェクトに関する学習データを算出しない。特に、第1オブジェクトが消えた後、所定期間よりさらに長い時間が経過した後に再出現した場合は、認識モデルが認識性能の限界で第1オブジェクトを認識できていないのではなく、他のオブジェクトにより第1オブジェクトが遮蔽されて認識できていない可能性が高いため、学習データを算出する条件を満たすとみなすことができない。
【0120】
ステップS1150において、学習データは、第1オブジェクトのサイズ、位置、分類コード(class)、第1オブジェクトが最初に認識された後に所定期間消えてから再出現した履歴(history)に関する情報、第1オブジェクトの信頼度(confidence)に関する情報のうち少なくとも1つを含んでもよい。
【0121】
オブジェクト認識率改善装置は、ステップS1150で算出した学習データをベースとする情報により、走行中に取得された映像からオブジェクトを認識する自律走行自動車の認識モデルが学習されるように制御することができる(S1170)。
【0122】
ステップS1170において、学習データをベースとする情報は、ステップS1150で算出された学習データを認識モデルに入力できるように少なくとも1回以上さらに加工した情報を意味し、一例として、学習データを予め設定されたフィルタ基準でフィルタリングした情報であってもよい。
【0123】
選択的一実施形態として、予め設定されたフィルタ基準は、第1オブジェクトが第1フレームで認識された後に第2フレームで消えてから第3フレームで再出現する際の一連のフレームの時間の長さに関するフィルタ基準であってもよく、オブジェクト認識率改善装置は、そのフィルタ基準に基づいて、第1フレームと第3フレームとの間の時間の長さが10フレームの長さよりさらに長い場合にのみ、学習データをベースとする情報が算出されるようにすることができる。前記フィルタ基準は、数個のフレームで十分に長くトラッキングされたオブジェクトのみを選択的に学習することを意味する。
【0124】
他の選択的一実施形態として、予め設定されたフィルタ基準は、第1フレームで認識された後に第2フレームで所定期間消えてから第3フレームで再出現した前記第1オブジェクトの種類を区分するための区分基準であってもよく、オブジェクト認識率改善装置は、その区分基準に基づいて、第1オブジェクトの種類(class)が乗用車、トラック、バス、不明体(misc.)である場合にのみ、学習データをベースとする情報が算出されるようにすることができる。前記フィルタ基準は、自律走行において高い重要度を有するオブジェクトである乗用車、トラック、バス、不明体を重点的に学習することを意味する。
【0125】
さらに他の選択的一実施形態として、予め設定されたフィルタ基準は、第1フレームで認識された後に第2フレームで所定期間消えてから第3フレームで再出現した前記第1オブジェクトのサイズを区分するためのサイズ基準であってもよく、オブジェクト認識率改善装置は、そのサイズ基準に基づいて、第1オブジェクトの高さ(height)又は幅(width)が予め設定されたピクセルを超えると、学習データをベースとする情報が算出されるようにすることができる。前記フィルタ基準は、十分に大きいサイズの第1オブジェクトに対してのみ認識モデルを学習させることを意味する。
【0126】
表4で比較して説明したように、オブジェクトが消失してから再出現した場合、オブジェクトが消失した区間でオブジェクトが完全に消えていないにもかかわらず、認識モデルがオブジェクトを認識できないことは、認識モデルの限られた性能によるものであるので、
図8で説明した認識モデルのウィークネスポイントに分類することができ、同じ方式で能動学習(active learning)を適用することができる。
【0127】
すなわち、オブジェクトの分類基準を熟知したユーザの入力により学習データに含まれるオブジェクトの種類が正確にラベリングされると、ラベリングされたデータは、学習データをベースとする情報として、ラベリングデータ収集モジュールを経て認識モデルに入力されるようにすることができる。繰り返し学習により学習が完了した認識モデルは、第2映像が新たな試験データとして入力されると、フレームの漏れなく第2映像の第2オブジェクトを正確に認識できるようになる。
【0128】
図12は本発明による改善された学習データ映像を生成する方法の一例を概念的に示す概念図である。
【0129】
より具体的には、
図12は本発明により改善された学習データ映像を生成する方法の各ステップを行う主体別に分けて概念的に説明したものであり、映像を取得するステップ、映像からオブジェクトを認識して一部のフレームを検出するステップ、検出されたフレームを統合するステップ、統合されたフレームに対してサンプリングを行うステップを直観的に示している。以下、各ステップ別に行われるプロセスについて具体的に説明する。
【0130】
まず、ステップ1210においては、自律走行自動車に装着されたカメラにより、自律走行自動車の走行中に取得された映像を収集することができる。ステップ1210で収集される映像は、一定のフレームレート(framerate)を有し、多数のフレームで構成された動画であってもよい。自律走行自動車に装着されたカメラにより撮影されて生成された映像は、有線又は無線を介して本発明による改善された学習データ映像を生成する装置に送信されるようにすることができる。自律走行自動車の走行中に取得された映像は、便宜上、第1映像と称し得る。
【0131】
本発明において、学習データ映像(training data video)は、映像を分析して映像中のオブジェクトを認識する認識モデルを学習させる目的を有する映像であり、認識モデルは、高い品質の学習データ映像で学習するほど、映像中に含まれるオブジェクトをより正確に認識することができ、低い品質の学習データ映像で学習するほど、映像中に含まれるオブジェクトの認識率が低くなる傾向がある。すなわち、本発明による改善された学習データ映像生成方法は、既知の学習データと比較して、相対的にさらに高い品質の学習データ映像を生成する方法論を提示することができる。
【0132】
次に、ステップ1220においては、収集された第1映像にWPD Large Model(Weakness Point Detection Large Model)を適用して第1映像に含まれるオブジェクトを認識し、オブジェクトが認識された特定のフレームを検出することができる。ここで、WPD Large Modelは、固有の認識技法により映像中に含まれるオブジェクト(バス、乗用車、トラック、歩行者、二輪車など)を認識し、それらのうち、認識されなければならないが認識されていないオブジェクトがあるか、認識されてはならないがオブジェクトとして認識された場合を区分して処理することにより、その結果、映像中のオブジェクトの認識率を向上させるための学習データを生成する装置に含まれるモデルであってもよい。例えば、
図12のWPD Large Modelは、
図6の第1モデル620、第2モデル630、ばらつきデータ算出モジュール640及びウィークネスポイント分析モジュール650を含む概念となり得る。
【0133】
ステップ1230においては、収集された第1映像にWPD Trackingを適用して、第1映像に含まれるオブジェクトを認識し、オブジェクトに関する特定のフレームを検出することができる。ここで、WPD Trackingは、前述のWPD Large Modelと同様に、固有の認識技法により映像中に含まれるオブジェクトを認識し、その認識された結果を分析して特定のフレームを検出するモデルであってもよい。例えば、
図12のWPD Trackingは、
図10及び
図11を用いて説明したトラッキングアルゴリズムを実現するモデルであってもよい。すなわち、第1映像で特定のオブジェクトが認識されてトラッキングが開始された状態で、トラッキングが開始されたオブジェクトが一時的(いくつかのフレームの間)に消失してから再出現した場合、
図12のWPD Trackingは、トラッキングが行われていないフレームの番号を特定して結果値が算出し、当該フレームを合算して認識モデルのオブジェクト認識率を向上させるための学習データ映像(training data video)を生成することができる。
【0134】
以下、認識技法は、第1映像から自律走行自動車の自律走行に影響を与える可能性のある道路上のオブジェクト(乗用車、トラック、バス、二輪車、歩行者など)を認識するアルゴリズムを示すものとみなし、検出技法は、認識技法により映像中のオブジェクトが認識されると、その認識結果を分析した結果に基づいて、映像を構成する多数のフレームの中から特定のフレームを検出するアルゴリズムを示すものとみなす。例えば、
図6の第1モデル620及び第2モデル630は、認識技法を行う認識モデルの一例となり得、
図12のWPD Large Model及びWPD Trackingは、検出技法を行うモデルの一例となり得る。
【0135】
次に、ステップ1240においては、WPD Large Model又はWPD Trackingの処理結果として特定されたフレームを収集して統合するプロセスを行うことができる。ステップ1220及びステップ1230で行われた検出技法によってもオブジェクト認識率を向上させるための学習データを収集することができるが、WPD Large Modelベースの検出技法は、用いられる2つの認識モデルのいずれによってもオブジェクトとして認識されていない部分は継続して認識されないという限界があり、WPD Trackingベースの検出技法は、最初にオブジェクトとして認識されていない部分に対しては初めからトラッキングが除外されるという限界があるので、本発明においては、異なる検出技法の結果データを統合することにより、上記技術的限界を克服する方法を提案する。
【0136】
例えば、WPD Large Modelにより検出された第1映像のフレームの番号が1、5、14、16、32、50であり、WPD Trackingにより検出された第1映像のフレームの番号が14、52である場合、ステップ1240において、統合されたフレームの番号は、1、5、14、16、32、50、52となり、以下では、統合されたフレームをフレームセット(frame set)と総称する。
【0137】
ステップ1250においては、統合されたフレームに対してサンプリング(sampling)プロセスを行うことができる。ステップ1250において、サンプリングを行うことは、同じ映像で検出技法のみを変えてフレームを選別したため、連続したフレーム間には非常に類似した情報が含まれるという点と、ステップ1220及びステップ1230で検出されるフレームの数が多すぎる場合、取得される「学習データ映像」に不要に多い情報が含まれるため、オブジェクト認識率の過剰適合(overfitting)が発生する可能性がある点を総合的に考慮したものである。
【0138】
本発明において、統合された多数のフレームに対してサンプリングを行う方法には様々な方法が含まれる。例えば、所定の時間間隔をおいて、時間間隔毎に含まれるフレームの中からランダム(randomly)にサンプリングを行う方法が挙げられる。フレームレートが一定の状態で、統合されたフレームの番号が1、5、14、16、32、50である場合、10個のフレーム毎にサンプリングが行われると、サンプリングされた結果には、1と5のいずれか1つのフレーム、14と16の間のいずれか1つのフレームが32番フレーム及び50番フレームと共にサンプリングされることにより、計4つのフレームがサンプリングされるようにしてもよい。本発明による装置は、サンプリングされた4つのフレームを時系列順に結合して改善された学習データ映像を生成することができ、本発明による装置が第1映像で一連のプロセスを経て生成する学習データ映像は第2映像と別称し、以下、本発明による装置は第2映像生成装置と称する。また、第2映像生成装置は、
図5~
図11を用いて説明したオブジェクト認識率改善装置を物理的又は論理的に含む形態で実現されてもよい。
【0139】
一実施形態として、ステップ1250において、フレームセットに含まれるフレームに対してサンプリングを行うために、フレームグループ(frame group)が用いられてもよい。より具体的には、第2映像生成装置は、ステップ1240で生成されるフレームセットに基づいて、少なくとも1つ以上のフレームを含み、互いに重複しないフレームを含むフレームグループを生成し、その後フレームグループ別にフレームを抽出し、抽出されたフレームを結合して第2映像を生成することができる。
【0140】
【表5】
表5は、フレームセットでフレームグループを生成して第2映像を生成する実施形態を説明するための表である。表5において、第1検出技法により検出されたフレームの番号は、1、5、14、16、32、51であり、ここで、第1検出技法は、
図12のWPD Large Modelをベースとする検出技法であってもよいが、それに限定されるものではない。また、表5において、第2検出技法により検出されたフレームの番号は、14、53であり、ここで、第2検出技法は、
図12のWPD Trackingをベースとする検出技法であってもよいが、それに限定されるものではない。前述のように、第1検出技法と第2検出技法とは、異なるアルゴリズムでフレームを検出する検出技法であってもよい。
図12のステップ1240により、検出されたフレームが統合されると、表5でのフレームセットに含まれるフレームの番号は1、5、14、16、32、51、53であることが分かり、本実施形態において、第2映像生成装置は、フレームセットに含まれるフレームを10個単位のフレームにサンプリングし、計4つのフレームグループを生成することができる。本実施形態において、第2映像生成装置は、表5のように4つのフレームグループが生成されると、フレームグループ別にフレームを抽出して第2映像を生成することができる。
【0141】
実施形態によって、第2映像生成装置は、フレームグループ別に1つのフレームを抽出して第2映像を生成することもでき、フレームグループ毎に設定された重み又はフレームグループに属するフレーム別に設定された重みによって、フレームグループ別に数個のフレームを抽出して第2映像を生成することもできる。
【0142】
一例として、フレームグループ毎に設定された重みは、各フレームグループに含まれるフレームの数に基づいて決定された値であってもよい。フレームグループAに10個のフレームが含まれ、フレームグループBに5つのフレームが含まれる場合、第2映像生成装置は、フレームグループA、Bの重みの比率が2:1であることに基づいて、フレームグループAで2つのフレームを選別し、フレームグループBで1つのフレームを選別する方式でサンプリングを行うことができる。
【0143】
他の例として、第2映像生成装置は、フレームグループに属する特定のフレームに設定された重みを考慮して各フレームグループでフレームを抽出することもできる。表5において、第1検出技法及び第2検出技法のどちらでも検出されたフレームの番号は14であり、第1映像の14番フレームは他のフレームに比べてさらに高い重みを有する。すなわち、フレーム別にメタデータとして重みをそれぞれ設定することができ、様々な検出技法により重複して検出されるフレームであるほど、さらに高い重みを設定することができることを意味する。特に、
図12と表5は計2つの検出技法について説明しているが、後述する
図13のように検出技法が3つ以上に増えた場合、フレームセットに含まれるフレームは、それぞれ様々な大きさの重みを設定することができる。第2映像生成装置は、数個のフレームグループでフレームをサンプリングすることにより高い重みを有するフレームを必須に選択し、その結果、第2映像には高い重みを有するフレームが含まれることになる。
【0144】
さらに他の実施形態として、フレームグループに属する特定のフレームに設定された重みは、検出技法毎に個別に設定された重みに依存する値であってもよい。例えば、第1検出技法、第2検出技法、第3検出技法が存在し、第1検出技法の重みが1、第2検出技法の重みが2、第3検出技法の重みが3であると仮定すると、第1検出技法及び第2検出技法により重複して検出されたフレームの重みは、第1検出技法及び第3検出技法により重複して検出されたフレームの重みよりさらに低く、第1検出技法及び第3検出技法により重複して検出されたフレームの重みは、第2検出技法及び第3検出技法により重複して検出されたフレームの重みよりさらに低い。つまり、本発明において、フレームセットに含まれるフレームは、各フレームが属するフレームグループだけでなく、各フレームが検出された検出技法毎に設定された値により最終的に決定される重みという情報をメタデータとして有し、そのような重みは、第2映像生成装置が行うサンプリングプロセスにおいて有効に作用する要素となり得る。
【0145】
図13は
図12で説明した実施形態を拡張した概念を図式的に示す図である。
【0146】
図13を
図12と比較すると、走行中に取得された第1映像が入力されて第2映像生成装置の入力データとなる点(ステップ1310)と、多数の検出技法により検出されたフレームがフレームセットに統合され(ステップ1340)、統合された後にサンプリングされる点(ステップ1350)は共通し、入力された第1映像にオブジェクト認識アルゴリズムが適用され、オブジェクトが認識されたフレームを検出するプロセス(1320A~1330B)のみ差別化されることが分かる。
【0147】
特に、
図12においては、検出技法を行って第2映像の基礎となるフレームを検出する主体が2つ(WPD Large Model及びWPD Tracking)であるが、
図13においては、4つ以上になり得ることが図式的に示されている。
【0148】
図13において、Large Model 1及びLarge Model 2は、前述のように、それぞれ固有の認識技法で第1映像に含まれるオブジェクトを認識する認識技法を処理するWPD Large Modelに関する認識モデルを意味し、識別番号によって用いられる認識技法の組み合わせが異なるという特徴を有する。例えば、Large Model 1は、表2で説明したYoloV4-CSPをベースとして第1映像のオブジェクトを認識するアルゴリズム及び表3で説明したYoloV4-P7をベースとして第1映像のオブジェクトを認識するアルゴリズムを用いてフレームを検出する検出技法であってもよく、Large Model 2は、YoloV4-P5をベースとして第1映像のオブジェクトを認識するアルゴリズム及び表3で説明したYoloV4-P6をベースとして第1映像のオブジェクトを認識するアルゴリズムを用いてフレームを検出する検出技法であってもよい。
【0149】
また、
図13において、Tracking 1及びTracking 2は、
図10及び
図11で説明したWPD トラッキングアルゴリズムの異なるバージョンを意味する。特に、WPD Trackingの場合、一度認識されたオブジェクトが所定期間消失してから再出現する時間基準によって様々なバージョンがあり得、例えば、
図13において、Tracking 1は、一度認識されたオブジェクトが3つのフレームの間消失してから再出現した場合、ウィークネスポイントとみなしてフレームを検出する検出技法であり、Tracking 2は、一度認識されたオブジェクトが2つのフレームの間消失してから再出現した場合、フレームを検出する検出技法であり得る。
【0150】
図13にはWPD Large Modelとトラッキングアルゴリズムのみ記述されているが、実施形態によって、SORT(Simple Online and Realtime Tracking)、Bytetrack、StrongSORTなどの様々なオブジェクト認識アルゴリズムをさらに追加することができる。
【0151】
すなわち、
図13において、第1映像中でオブジェクトを認識して認識されたオブジェクトに対して様々な方式でフレームを検出する技法は、各検出技法が用いる基本検出アルゴリズム、学習データなどによってその数が限られていないので、
図13においては計4つの検出技法が示されているが、実施形態によって、4つよりさらに少ないか又はさらに多い検出技法を用いることもできる。また、
図12で説明したものと同様に、検出技法の数が4つ以上になっても、
図12で説明した様々な実施形態を全て適用することができる。
【0152】
図14は本発明による第2映像生成方法の一例を示すフローチャートである。
【0153】
図14による方法は、
図12及び
図13で説明した第2映像生成装置により実現することができるので、以下、
図12及び
図13を参照して説明し、既に説明した内容と重複する説明は省略する。
【0154】
第2映像生成装置は、走行中に取得された第1映像に少なくとも2つ以上の認識技法を適用して、前記第1映像に含まれるオブジェクトを認識することができる(S1410)。
【0155】
第2映像生成装置は、ステップS1410でオブジェクトを認識した結果に少なくとも2つ以上の検出技法を適用して、検出技法別にフレームを検出することができる(S1430)。
【0156】
第2映像生成装置は、ステップS1430で検出されたフレームを統合して複数のフレームを含むフレームセットを生成することができる(S1450)。
【0157】
第2映像生成装置は、統合されたフレームセットをサンプリングして第2映像を生成することができる(S1470)。
【0158】
ステップS1470で生成された第2映像は、検出技法を多様化して固有の特徴に応じてサンプリングする方法により、既存の方法で生成された学習データと比較して、オブジェクト認識率の向上にさらに役に立つ良質な学習データとなり得る。
【0159】
図15は一実施形態による第2映像生成装置のブロック図である。
【0160】
図15を参照すると、第2映像生成装置1500は、通信部1510、プロセッサ1520及びDB1530を含んでもよい。
図15の第2映像生成装置1500には、実施形態に関連する構成要素のみ示されている。よって、
図15に示す構成要素に加えて他の汎用の構成要素をさらに含んでもよいことは、当該技術分野における通常の知識を有する者であれば理解するであろう。
【0161】
通信部1510は、外部サーバ又は外部装置との有線/無線通信を可能にする1つ以上の構成要素を含んでもよい。例えば、通信部1510は、近距離通信部(図示せず)、移動通信部(図示せず)及び放送受信部(図示せず)の少なくとも1つを含んでもよい。
【0162】
DB1530は、第2映像生成装置1500内で処理される各種データを保存するハードウェアであって、プロセッサ1520の処理及び制御のためのプログラムを保存することができる。
【0163】
DB1530は、DRAM(dynamic random access memory)、SRAM(static random access memory)などのRAM(random access memory)、ROM(read-only memory)、EEPROM(electrically erasable programmable read-only memory)、CD-ROM、ブルーレイ又は他の光ディスクストレージ、HDD(hard disk drive)、SSD(solid state drive)、又はフラッシュメモリを含む。
【0164】
プロセッサ1520は、第2映像生成装置1500の全般的な動作を制御する。例えば、プロセッサ1520は、DB1530に保存されたプログラムを実行することにより、入力部(図示せず)、ディスプレイ(図示せず)、通信部1510、DB1530などを全般的に制御することができる。プロセッサ1520は、DB1530に保存されたプログラムを実行することにより、第2映像生成装置1500の動作を制御することができる。
【0165】
プロセッサ1520は、
図12~
図14で上述した第2映像生成装置1500の動作の少なくとも一部を制御することができる。
【0166】
一例として、プロセッサ1520は、
図6~
図9で説明したように、自動車が走行中に取得された第1映像に含まれるオブジェクトを第1認識技法で認識して第1認識結果を算出し、第2認識技法で第1映像に含まれるオブジェクトを認識した第2認識結果を受信し、第1認識結果及び前記第2認識結果のばらつきデータを算出し、算出されたばらつきデータをベースとする情報により第1認識技法で動作する第1モデルが学習されるように制御することができる。
【0167】
他の例として、プロセッサ1520は、
図10及び
図11で説明したように、走行中に取得された第1映像から第1オブジェクトを認識し、第1映像で第1オブジェクトが所定期間消えてから再出現することを検知し、第1オブジェクトが再出現することを検知すると、第1オブジェクトに関する学習データを算出し、算出された学習データをベースとする情報により、映像に含まれるオブジェクトを認識する認識モデルが学習されるように制御することができる。
【0168】
さらに他の例として、プロセッサ1520は、走行中に取得された第1映像に少なくとも2つ以上の認識技法を適用して、第1映像に含まれるオブジェクトを認識し、オブジェクトを認識した結果に少なくとも2つ以上の検出技法を適用して、検出技法別にフレームを検出し、検出されたフレームを統合して複数のフレームを含むフレームセットを生成し、統合されたフレームセットをサンプリングして第2映像を生成することができる。
【0169】
プロセッサ1520は、ASICs(application specific integrated circuits)、DSPs(digital signal processors)、DSPDs(digital signal processing devices)、PLDs(programmable logic devices)、FPGAs(field programmable gate arrays)、コントローラ(controllers)、マイクロコントローラ(micro-controllers)、マイクロプロセッサ(microprocessors)、その他の機能の実行のための電気ユニットの少なくとも1つを用いて実現することができる。
【0170】
図16は
図10で説明した実施形態によるオブジェクト認識率改善方法を示すフローチャートである。
【0171】
まず、オブジェクト認識率改善装置は、走行中に取得された第1映像から第1オブジェクトを認識することができる(S1610)。ここで、オブジェクト認識率改善装置が第1映像から第1オブジェクトを認識したとは、
図16に示すように、第1映像を構成するフレームの中から第1オブジェクトを認識して第1オブジェクトのサイズ及び種類(class)に関する情報を把握したことを意味する。
【0172】
次に、オブジェクト認識率改善装置は、第1映像(第1フレーム)で第1オブジェクトが所定期間消えてから再出現するか否かを検知することができる(S1630)。
【0173】
ここで、所定期間は、少なくとも1つ以上のフレームの時間範囲値であってもよい。収集された第1映像のフレームレートが30フレーム/秒である場合、所定期間は、0秒~1/30秒に該当する時間範囲値であってもよい。
【0174】
他の例として、所定期間は、1~3フレームの時間範囲値であってもよく、
図16において、所定期間は、1フレームの時間範囲値であることが分かる。仮に、所定期間が3フレームの時間範囲値である場合、i番目のフレームにトラッキングされていた第1オブジェクトがi+1番目のフレームで消失してからi+5番目のフレームで再出現すると、所定期間消えたものとみなすことができる。
【0175】
オブジェクト認識率改善装置は、第1オブジェクトが再出現したことを検知したことに基づいて、第1オブジェクトに関する学習データを算出することができる(S1650)。また、オブジェクト認識率改善装置は、第1オブジェクトが再出現したことを検知したことに基づいて、第1オブジェクトが所定期間消えて認識されていないと判断された前のフレームに第1オブジェクトが認識されているものとみなすことができる。
【0176】
例えば、
図6において、i番目のフレーム、i+1番目のフレームで第1オブジェクトが認識されており、i+2番目のフレームで第1オブジェクトが消えてから、i+3番目のフレームで第1オブジェクトが再び認識された場合、オブジェクト認識率改善装置に含まれるオブジェクト認識装置(オブジェクト認識モジュール)では依然としてi+2番目のフレームの第1オブジェクトを認識することができないが、i+2番目のフレームにもi番目のフレーム、i+1番目のフレーム、i+3番目のフレームで認識された第1オブジェクトがあるものとみなされる。
【0177】
第1オブジェクトが消えた後、再出現しないか、再出現したとしても所定期間が経過した後に再出現した場合、オブジェクト認識率改善装置は、条件を満たさないとみなし、第1オブジェクトに関する学習データを算出しない。特に、第1オブジェクトが消えた後、所定期間よりさらに長い時間が経過した後に再出現した場合は、認識モデルが認識性能の限界で第1オブジェクトを認識できていないのではなく、他のオブジェクトにより第1オブジェクトが遮蔽されて認識できていない可能性が高いため、学習データを算出する条件を満たすとみなすことができない。
【0178】
ステップS1650において、学習データは、第1オブジェクトのサイズ、位置、分類コード(class)、第1オブジェクトが最初に認識された後に所定期間消えてから再出現した履歴(history)に関する情報、第1オブジェクトの信頼度(confidence)に関する情報のうち少なくとも1つを含んでもよい。
【0179】
オブジェクト認識率改善装置は、ステップS1650で算出した学習データをベースとする情報により、走行中に取得された映像からオブジェクトを認識する自律走行自動車の認識モデルが学習されるように制御することができる(S1670)。
【0180】
ステップS1670において、学習データをベースとする情報は、ステップS1650で算出された学習データを認識モデルに入力できるように少なくとも1回以上さらに加工した情報を意味し、一例として、学習データを予め設定されたフィルタ基準でフィルタリングした情報であってもよい。
【0181】
図16で説明したトラッキングアルゴリズムは、カルマンフィルタ(Kalman Filter)ベースのSORT(Simple Online and Realtime Tracking)アルゴリズムで実現されてもよいが、それに限定されるものではない。特に、カルマンフィルタをベースとするトラッキングアルゴリズムは、2Dバウンディングボックスに対して正常に動作する特性を有し、トラッキングアルゴリズムを行った結果情報も2Dバウンディングボックスで提供する特性を有し、本発明で説明したトラッキングアルゴリズムも同じ特性を有することができる。
【0182】
選択的一実施形態として、予め設定されたフィルタ基準は、第1オブジェクトが第1フレームで認識された後に第2フレームで消えてから第3フレームで再出現する際の一連のフレームの時間の長さに関するフィルタ基準であってもよく、オブジェクト認識率改善装置は、そのフィルタ基準に基づいて、第1フレームと第3フレームとの間の時間の長さが10フレームの長さよりさらに長い場合にのみ、学習データをベースとする情報が算出されるようにすることができる。前記フィルタ基準は、数個のフレームで十分に長くトラッキングされたオブジェクトのみを選択的に学習することを意味する。
【0183】
他の選択的一実施形態として、予め設定されたフィルタ基準は、第1フレームで認識された後に第2フレームで所定期間消えてから第3フレームで再出現した前記第1オブジェクトのサイズを区分するためのサイズ基準であってもよく、オブジェクト認識装置は、そのサイズ基準に基づいて、第1オブジェクトの高さ(height)又は幅(width)が予め設定されたピクセルを超えると、学習データをベースとする情報が算出されるようにすることができる。前記フィルタ基準は、十分に大きいサイズの第1オブジェクトに対してのみ認識モデルを学習させることを意味する。
【0184】
図17は本発明による映像中のオブジェクトのキューボイドを説明するための図である。
【0185】
図17を参照すると、オブジェクト認識率改善装置は、映像から2つのオブジェクトを認識してから、その認識の結果としてオブジェクト別に外郭線1710a、1730aを生成したことが分かり、オブジェクト認識率改善装置は、生成された外郭線1710a、1730aに基づいて、オブジェクト別にキューボイド(cuboid)を生成することができる。すなわち、バイク(two wheeler)の外郭線1710aは、バイクのキューボイド1710bを生成するための基礎情報となり得、乗用車(car)の外郭線1730aは、乗用車のキューボイド1730bを生成するための基礎情報となり得る。
【0186】
本発明において、キューボイドは、2つの多角形が共通する辺を基にして結合した形態で生成されてもよく、2つの多角形のうち、1つはオブジェクトの前面(front)又は背面(rear)を示し、他の1つはオブジェクトの側面を示す多角形であってもよい。実施形態によって、キューボイドは、
図17に示すように、オブジェクトの前面(front)及び背面(rear)は長方形で表示され、左側面(left)及び右側面(right)は平行な辺の長さが異なる台形で表示されてもよい。
【0187】
【表6】
表6は、キューボイドの形態が横方向に2つの多角形が1つの共通する辺を基にして結合した形態である場合におけるオブジェクトの移動に関する解析方法の一例を表で示すものである。表6に記載されているように、オブジェクトのキューボイドは、オブジェクトの全体的なサイズ、移動方向、映像を撮影するカメラの位置に対する相対的な位置を直観的かつ効率的に示すことのできるオブジェクトのメタデータと理解することができる。一例として、キューボイドの座標値は、7つの座標値で構成されてもよい。
図17において、バイクのキューボイド1710bは、バイクの前面(front)を示す長方形とバイクの側面を示す台形が1つの共通する辺を基にして結合した形態を有している。ここで、バイクのキューボイド1710bを形成するための頂点座標は左側上端の座標である(x1,y1)、中央上端の座標である(x2,y1)、右側上端の座標である(x3,y3)、左側下端の座標である(x1,y2)、中央下端の座標である(x2,y2)、右側下端の座標である(x3,y4)であり、バイクのボイド1710bを形成するために必要な最小情報である座標値は計7つ(x1、x2、x3、y1、y2、y3、y4)である。
【0188】
他の例として、キューボイドは、8つの座標値で構成されてもよい。
図17に示されていないが、オブジェクトの遠近感を生かすためにオブジェクトを直方体形状の第2外郭線で取り囲む場合、オブジェクトのキューボイドを形成するために必要な座標は計8つであり、必要な座標値は計8つ(x1、x2、x3、x4、y1、y2、y3、y4)である。
【0189】
図17に示すように、映像(又は、フレーム)から直ちに認識されたオブジェクトに対しては2Dバウンディングボックス形態の外郭線が生成され、その外郭線の座標を基にしてキューボイドが生成されてもよいが、
図10及び
図16で説明したトラッキングアルゴリズムによりフレームでオブジェクトが認識されていないが、トラッキングアルゴリズムを適用した結果として当該フレームにオブジェクトが認識されているものとみなされる場合、依然として、当該フレームにオブジェクトの外郭線が生成されているわけではない。すなわち、オブジェクト認識率改善装置(オブジェクト認識装置)のオブジェクト認識性能の限界によりオブジェクトが認識されていないが、元通りであればオブジェクトが認識されていなければならないフレームのオブジェクトに対してもキューボイドを取得する必要性があり、それに関する具体的な方法については、
図18及び
図19を用いて後述する。
【0190】
図18は本発明による映像中のオブジェクトのキューボイドを取得する方法を概略的に説明するための概略図である。
【0191】
以下、本発明による映像中のオブジェクトのキューボイドを取得する方法を実現する装置は「キューボイド取得装置」と略称する。
【0192】
まず、キューボイド取得装置は、映像の入力を受ける(S1810)。ステップS1810でキューボイド取得装置に入力される(受信される)映像は、少なくとも2つ以上のフレームを含み、車両の走行中に車両に装着されたカメラで撮影された映像であってもよい。
【0193】
キューボイド取得装置は、ステップS1810で受信した映像に対してオブジェクト認識プロセスを適用してオブジェクトを認識することができる(S1820)。ここで、オブジェクト認識プロセスは、オブジェクト認識装置(Object Detector)により行われてもよいことは既に説明した通りである。
【0194】
キューボイド取得装置は、ステップS1810で受信した映像に対してトラッキングアルゴリズムを適用してオブジェクトが認識されていないフレームでオブジェクトが認識されていなければならないか否かを判断することができる(S1830)。ここで、トラッキングアルゴリズムとしては、前述のカルマンフィルタベースのSORTアルゴリズムが用いられてもよく、実施形態によって、SORT以外の他のアルゴリズムが用いられてもよい。
【0195】
キューボイド取得装置は、ステップS1820及びS1830の結果を統合(association)することができる(S1840)。ステップS1840でオブジェクト認識プロセス及びトラッキングアルゴリズムの結果を統合することは、オブジェクト認識プロセスでは検出(オブジェクトが認識)されていないが、トラッキングアルゴリズムによりオブジェクトが検出されている場合を判別するためである。ステップS1840の統合過程において、後述するステップS1850でオブジェクトの有無を判断する上で必要ないフレームを除外することができる。
【0196】
キューボイド取得装置は、ステップS1820及びS1830の結果を統合した状態で、オブジェクト認識プロセスにより直ちにオブジェクトが認識されていなければならないが認識されておらず、トラッキングアルゴリズムによってのみ認識されているオブジェクトの有無を判断することができる(S1850)。ステップS1850で判断されたオブジェクトは、消失したオブジェクト(missed object)に分類されて別のメタデータが付与されてもよく、後述するステップS1860でキューボイド変換処理が行われる。一例として、ステップS1850においては、ハンガリアンアルゴリズム(Hungarian algorithm)を適用することができる。
【0197】
ステップS1850で消失したオブジェクトがあると判断されると、キューボイド取得装置は、当該オブジェクトのキューボイドの座標を生成することができる(S1860)。ステップS1850で消失したオブジェクトがないと判断されると、別のキューボイドの変換を行わず、キューボイド取得装置の機能は終了することができる(S1870)。
【0198】
【表7】
表7は、
図18を用いて説明した内容をさらに具体的に説明するための概念を示す表である。以下、便宜上、第1フレーム及び第2フレームは、1つの映像に含まれる複数のフレームのうちの1つを示し、第2フレームは、第1フレームの直後に位置しているフレームであるとみなす。まず、表7は、第1フレームでオブジェクト認識装置(Object Detector)によりオブジェクトが直ちに認識されており、第2フレームでオブジェクト認識装置によりオブジェクトが認識されていない結果を示している。
【0199】
次に、表7は、第1フレームでオブジェクトが直ちに認識されており、第2フレームでトラッキング(tracking)アルゴリズムによりオブジェクトが認識されているとみなす結果を示している。前述の2つの結果を比較すると、表7の第2フレームでオブジェクトが認識されていなければならないが認識されておらず、トラッキングアルゴリズムによってのみ認識されていることが分かる。表7には記述されていないが、第2フレーム以降に位置する第3フレームが存在し、第3フレームではオブジェクトが認識されているのでトラッキングアルゴリズムが適用され、第2フレームでオブジェクトが認識とみなされることが分かる。
【0200】
表7において、オブジェクトが直ちに認識されている第1フレームでは、オブジェクトを取り囲む外郭線とキューボイドが本発明によるキューボイド取得装置により生成されてもよい。キューボイド取得装置は、オブジェクトを取り囲む外郭線(2Dバウンディングボックス)が生成されると、2Dバウンディングボックスの座標値を用いて、表6で説明したように、オブジェクト別にキューボイドを生成することができる。
【0201】
一方、表7において、オブジェクトが直ちに認識されておらず、認識とみなされる第2フレームでは、外郭線が直ちに生成されず、キューボイド取得装置は、第2フレームを基準として前後のフレーム(第1フレーム及び第3フレームなど)に生成されている外郭線の座標値を用いて、第2フレームで認識とみなされるオブジェクトの外郭線の座標を間接的に取得することになる。
【0202】
最後に、表7に記載されているように、第2フレームで認識とみなされるオブジェクトのキューボイドは、第2フレームに外郭線が生成されていないので取得することができず、本発明においては、第1フレームで認識されているオブジェクトの外郭線、第2フレームで認識とみなされるオブジェクトの外郭線、第1フレームで認識されているオブジェクトのキューボイドの座標を総合的に考慮して、第2フレームで認識とみなされるオブジェクトのキューボイドの座標を取得する方法を提案し、それについては
図19及び
図20を用いて後述する。
【0203】
図19は本発明によるキューボイド取得装置により行われる線形マッピング方法を説明するための図である。
【0204】
以下、説明の便宜上、表7を参照して説明し、第1フレームにある外郭線及びキューボイドは第1外郭線及び第1キューボイドと称し、第2フレームにある外郭線及びキューボイドは第2外郭線及び第2キューボイドと称する。
【0205】
本発明によるキューボイド取得装置は、既に定められている第1外郭線及び第2外郭線の座標値を用いて、変換関係値(transform value)を算出することができる。一例として、変換関係値は、アフィン変換行列(Affine Transform Matrix)であってもよい。
図19を参照すると、
図19の左側の3つの点の座標に対して、アフィン変換が適用されると、
図19の右側の3つの点の座標に変換されることが分かる。アフィン変換行列は、平行移動(translation)、スケーリング(scaling)、せん断(shear)、回転(rotation)に関する行列で表すことができる。
【0206】
【数1】
数式1は、アフィン変換における平行移動に関する行列を示す。数式1において、t
xはx軸方向の変位を指定する値を、t
yはy軸方向の変位を指定する値をそれぞれ意味する。
【0207】
【数2】
数式2は、アフィン変換におけるスケーリングに関する行列を示す。数式2において、s
xはx軸でのスケーリング因子を指定する値を、s
yはy軸でのスケーリング因子を指定する値をそれぞれ意味する。
【0208】
【数3】
数式3は、アフィン変換におけるせん断(shear)に関する行列を意味する。数式3において、sh
xはx軸でのせん断因子を指定する値を、sh
yはy軸でのせん断因子を指定する値をそれぞれ意味する。
【0209】
【数4】
数式4は、アフィン変換における回転に関する行列を意味する。数式4において、qは回転角度を指定する値を意味する。
【0210】
【数5】
数式5は、変換関係値を説明するための数式である。数式5において、Tはキューボイドの変換関係値を、k
tは比例定数を、t
affineは外郭線の変換関係値をそれぞれ意味する。数式5において、t
affineは、第1外郭線及び第2外郭線の座標を基にして数式1~数式4のようなアフィン変換を適用した場合に算出される値であって、第1外郭線の座標値にt
affineを適用すると、第2外郭線の座標値を算出することができる。数式5において、k
tは、比例定数であって、外郭線とキューボイドの相関関係によって決定される定数を意味し、比例定数が1である場合、キューボイドの変換関係値と外郭線の変換関係値とは同じである。数式5において、Tは、比例定数k
tにt
affineをかける方式で算出され、第1キューボイドの座標値にTを適用すると、表7で取得できなかった第2キューボイドの座標値を算出することができる。
【0211】
本発明によるキューボイド取得装置は、数式1~数式5により、第2フレームでの第2キューボイドを取得することができる。
【0212】
図20は本発明によるキューボイド取得装置により行われる線形マッピング方法の他の一例を説明するための図である。
【0213】
図20を参照すると、
図20の左側4つの点の座標に対して、パースペクティブ変換(perspective transform)が適用されると、
図20の右側4つの点の座標に変換されることが分かる。
図19及び
図20を参照すると、第1外郭線及び第2外郭線の座標値が少なくとも3つ以上与えられ、第1キューボイドの座標値が与えられると、本発明によるキューボイド取得装置により、第2キューボイドの座標値も取得できることが分かる。
【0214】
図21は本発明によるキューボイド取得方法の一例を示すフローチャートである。
【0215】
図21による方法は、
図17~
図20で説明したキューボイド取得装置により実現することができるので、以下、
図17~
図20を参照して説明し、既に説明した内容と重複する説明は省略する。
【0216】
キューボイド取得装置は、映像からオブジェクトを認識し、オブジェクトが認識されている第1フレーム及びオブジェクトが認識されていない第2フレームを特定することができる(S2110)。
【0217】
キューボイド取得装置は、第1フレームでオブジェクトの第1外郭線を生成し、第1外郭線を構成する第1座標値に基づいてオブジェクトの第1キューボイドの座標を取得することができる(S2130)。
【0218】
キューボイド取得装置は、第2フレームでオブジェクトが認識されていなければならないか否かを判断し、判断した結果に基づいて、第2フレームでのオブジェクトの第2外郭線を生成することができる(S2150)。ステップS2150において、キューボイド取得装置は、第2フレームの周辺フレームで認識されているオブジェクト(又は、そのオブジェクトの外郭線)で把握できることは表3を用いて前述した。ここで、周辺フレームは、第1フレーム及び第3フレームのように、第2フレームの前後に配置されているフレームであり得る。また、周辺フレームの数やフレームの番号は、本発明で適用されるトラッキングアルゴリズムが、一度認識されたオブジェクトが所定期間消失してから再び再出現した場合、その所定期間をどのくらいの時間の長さに設定するかによって異なり得る。
【0219】
キューボイド取得装置は、第1外郭線を構成する第1座標値及び第2外郭線を構成する第2座標値間の変換関係値を算出することができる(S2170)。
【0220】
キューボイド取得装置は、第1キューボイドの座標に変換関係値を適用して第2フレームでのオブジェクトの第2キューボイドの座標を算出することができる(S2190)。
【0221】
図22は一実施形態によるキューボイド取得装置のブロック図である。
【0222】
図22を参照すると、キューボイド取得装置2200は、通信部2210、プロセッサ2220及びDB2230を含んでもよい。
図22のキューボイド取得装置2200には、実施形態に関連する構成要素のみ示されている。よって、
図22に示す構成要素に加えて他の汎用の構成要素をさらに含んでもよいことは、当該技術分野における通常の知識を有する者であれば理解するであろう。
【0223】
通信部2210は、外部サーバ又は外部装置との有線/無線通信を可能にする1つ以上の構成要素を含んでもよい。例えば、通信部2210は、近距離通信部(図示せず)、移動通信部(図示せず)及び放送受信部(図示せず)の少なくとも1つを含んでもよい。
【0224】
DB2230は、キューボイド取得装置2200内で処理される各種データを保存するハードウェアであって、プロセッサ2220の処理及び制御のためのプログラムを保存することができる。
【0225】
DB2230は、DRAM(dynamic random access memory)、SRAM(static random access memory)などのRAM(random access memory)、ROM(read-only memory)、EEPROM(electrically erasable programmable read-only memory)、CD-ROM、ブルーレイ又は他の光ディスクストレージ、HDD(hard disk drive)、SSD(solid state drive)、又はフラッシュメモリを含む。
【0226】
プロセッサ2220は、キューボイド取得装置2200の全般的な動作を制御する。例えば、プロセッサ2220は、DB2230に保存されたプログラムを実行することにより、入力部(図示せず)、ディスプレイ(図示せず)、通信部2210、DB2230などを全般的に制御することができる。プロセッサ2220は、DB2230に保存されたプログラムを実行することにより、キューボイド取得装置2200の動作を制御することができる。
【0227】
プロセッサ2220は、上述したキューボイド取得装置2200の動作の少なくとも一部を制御することができる。
【0228】
一例として、プロセッサ2220は、
図17~
図21で説明したように、映像からオブジェクトを認識し、オブジェクトが認識されている第1フレーム及びオブジェクトが認識されていない第2フレームを特定し、第1フレームでオブジェクトの第1外郭線を生成し、第1外郭線を構成する第1座標値に基づいてオブジェクトの第1キューボイドの座標を取得し、第2フレームでオブジェクトが認識されていなければならないか否かを判断し、判断した結果に基づいて、第2フレームでのオブジェクトの第2外郭線を生成し、第1外郭線を構成する第1座標値及び第2外郭線を構成する第2座標値間の変換関係値を算出し、その後第1キューボイドの座標に変換関係値を適用して第2フレームでのオブジェクトの第2キューボイドの座標を算出することができる。
【0229】
プロセッサ2220は、ASICs(application specific integrated circuits)、DSPs(digital signal processors)、DSPDs(digital signal processing devices)、PLDs(programmable logic devices)、FPGAs(field programmable gate arrays)、コントローラ(controllers)、マイクロコントローラ(micro-controllers)、マイクロプロセッサ(microprocessors)、その他の機能の実行のための電気ユニットの少なくとも1つを用いて実現することができる。
【0230】
図23は本発明によるオブジェクト認識率向上方法を概略的に説明するための概略図である。
【0231】
以下、本発明による方法を実現する装置は「オブジェクト認識率向上装置」と略称する。
【0232】
まず、オブジェクト認識率向上装置は、映像の入力を受ける(S2310)。ステップS2310で装置に入力される(受信される)映像は、少なくとも2つ以上のフレームを含み、車両の走行中に車両に装着されたカメラで撮影された動画(video)であってもよい。
【0233】
オブジェクト認識率向上装置は、ステップS2310で受信した映像に対してオブジェクト認識プロセスを適用してオブジェクトを認識することができる(S2320)。ここで、オブジェクト認識プロセスは、オブジェクト認識率向上装置に含まれるオブジェクト認識装置(Object Detector)により行われてもよい。オブジェクト認識装置は、内部に設定されたオブジェクト認識アルゴリズムにより、映像のフレームに含まれる様々なオブジェクトのうち、車両の自律走行機能を実現するために必要な主なオブジェクト(乗用車、トラック、バス、二輪車、人間、不明体など)のみを選択的にオブジェクトとして認識することができる。
図4及び
図5で説明したように、オブジェクト認識装置のオブジェクト認識アルゴリズムは、映像中の様々なオブジェクトの中で必要とする一部のオブジェクトを即刻認識することができるという点では直観的で便利であるが、オブジェクト認識アルゴリズムの性能の限界によりオブジェクトとして認識しなければならないがオブジェクトとして認識できない場合がある。オブジェクト認識アルゴリズムの性能の限界によりオブジェクトとして認識しなければならないがオブジェクトとして認識できない場合は、
図10及び
図16で説明したトラッキングアルゴリズムにより一定以上補完することができる。
【0234】
オブジェクト認識率向上装置は、ステップS2310で受信した映像に対して
図10及び
図16で説明したトラッキングアルゴリズムを適用してオブジェクトが認識されていないフレームでオブジェクトが認識されていなければならないか否かを判断することができる(S2330)。ここで、トラッキングアルゴリズムとしては、前述のカルマンフィルタベースのSORTアルゴリズムが用いられてもよく、実施形態によって、SORT以外の他のアルゴリズムが用いられてもよい。
【0235】
オブジェクト認識率向上装置は、ステップS2330でトラッキングアルゴリズムを行いながら、トラッキング結果をヒストリ情報(history information)に加工してヒストリデータベース(history database)に保存することができる(S2340)。ヒストリデータベースには、トラッキング結果だけでなく、ステップS2350、S2370及びS2380で処理された結果を保存することができ、それについては後述する。
【0236】
オブジェクト認識率向上装置は、ステップS2320及びS2330の結果を統合(association)することができる(S2350)。ステップS2350でオブジェクト認識プロセス及びトラッキングアルゴリズムの結果を統合することは、オブジェクト認識プロセスでは検出(オブジェクトが認識)されていないが、トラッキングアルゴリズムによってのみオブジェクトが検出されている場合を判別するためである。ステップS2350においては、ステップS2320のオブジェクト認識結果とステップS2330のトラッキング結果をハンガリアンアルゴリズム(Hungarian algorithm)によりマッチング(matching)することができる。具体的には、ステップS2350においては、ステップS2320のオブジェクト認識結果としてフレーム別に生成されたオブジェクトの外郭線(2Dバウンディングボックス)とステップS2330のトラッキング結果としてフレーム別に生成されたオブジェクトの外郭線(2Dバウンディングボックス)がマッチングされるかが判断され、フレーム別にマッチングされる外郭線は、マッチフラグ(match flag)がトゥルー(true)に指定され、
図23に示すように、ヒストリ情報としてヒストリデータベースに保存されるようにすることができる。ステップS2350の統合過程において、オブジェクトの有無を判断する上で必要ないフレーム(認識されたオブジェクトの外郭線が検出されていないフレーム)を除外することができる。
【0237】
オブジェクト認識率向上装置は、時系列的に連続したフレームでオブジェクトを検出できないと、当該オブジェクトのトラックを削除(トラッキングを中止)し、ここで、ヒストリデータベースに保存されたヒストリ情報を参照することができる(S2360)。ステップS2360でオブジェクト認識率向上装置は、ヒストリデータベースに保存されたヒストリ情報を逆順(reverse)に確認し、当該オブジェクトの外郭線のマッチフラグ(match flag)を確認し、連続してマッチフラグがフォールス(false)であるフレームを全トラックから削除(除外)することができる。ステップS2360については
図25を用いて説明する。
【0238】
次に、オブジェクト認識率向上装置は、ステップS2350でのマッチング作業の結果に基づいて、マッチングされていない外郭線があるか否かを確認することができる(S2370)。ステップS2370でマッチングされていない外郭線があるか否かを確認するとは、言い換えれば、ステップS2330でのトラッキングアルゴリズムによってのみ検出されているオブジェクトの外郭線があるか否かを判断することであり、当該外郭線がある場合、オブジェクト認識率向上装置は、ステップS2360と同様に、マッチフラグをフォールスにし、そのヒストリ情報をヒストリデータベースに保存することができる。
【0239】
オブジェクト認識率向上装置は、ステップS2350~S2370で判断した結果に基づいて、トラックが登録された後の処理を行うことができる(S2380)。オブジェクト認識率向上装置は、ステップS2380でヒストリデータベースに保存された情報を参照してデータ処理を行い、具体的には、ヒストリデータベースに保存されたオブジェクト別の外郭線のマッチフラグのトゥルー又はフォールスに関する情報を活用することができる。その他にも、オブジェクト認識率向上装置は、第1パラメータ及び第2パラメータの設定値である第1基準値及び第2基準値に関する情報を参照して、トラックが登録された後の処理を行うことができる。ステップS2380については
図24を用いて後述する。
【0240】
図24は
図23のステップS2380で説明したトラック登録後の処理プロセスを説明するための図である。
【0241】
まず、
図24の上部を参照すると、オブジェクト認識率向上装置が時系列的に配列されている8つのフレームに対してオブジェクト認識アルゴリズムを適用してオブジェクトを認識することにより、計5つのフレームでオブジェクトが認識されていることが分かる。オブジェクトが認識されているフレームは、t
3、t
4、t
6、t
7、t
8のフレームであり、他の3つのフレーム(t
1、t
2、t
5のフレーム)にもオブジェクトがあるが、照明、角度、距離、色などの問題でオブジェクト認識率向上装置のオブジェクト認識アルゴリズムでオブジェクトが認識されていないか、オブジェクト認識アルゴリズムの誤作動によりオブジェクトが認識されていないものとみなす。すなわち、
図24の上部は
図23でのステップS2320の結果を示し、オブジェクトが認識されているフレームのオブジェクトには2Dバウンディングボックス形態の外郭線が生成されている。
【0242】
次に、
図24の下部を参照すると、オブジェクト認識率向上装置がトラッキングアルゴリズムを行った結果により、t
8のフレームでオブジェクトが認識されていることが分かる。オブジェクト認識率向上装置に設定された第1基準値は3であり、t
6、t
7、t
8のフレームで連続してオブジェクトが検出されて第1基準値を満たすことにより、t
8のフレームで当該オブジェクトのトラックが登録されている。
図10及び
図16で説明したトラッキングアルゴリズムにより、t
8のフレームでオブジェクトのトラックが登録されているので、
図24に示されていないt
9のフレームでオブジェクトが消失しても、第2基準値による数のフレームの間には当該オブジェクトに対するトラッキングは維持され続け得る。
【0243】
一方、
図24のオブジェクト認識率向上装置には第1基準値が3に設定されているので、
図24において、t
8のフレームで当該オブジェクトのトラックが登録されており、トラックの開始はt
6のフレームであるが、本発明によるオブジェクト認識率向上装置は、第1パラメータ及び第2パラメータが異なる値に変更される際に生じる問題を最小限に抑えるためのプロセスを含むので、ヒストリデータベースに保存されたマッチフラグ(トゥルー又はフォールス)を活用して、トラックが登録される前の時点のフレームでも認識されていないオブジェクトがあるか否かを確認することができる。
【0244】
図24を参照すると、本発明によるオブジェクト認識率向上装置は、ヒストリデータベースに保存された情報を参照して、トラックが開始されるt
6のフレーム以前のフレームのオブジェクト認識結果及びトラッキング結果を確認し、t
4のフレーム及びt
6のフレームでオブジェクトが認識されているが、t
5のフレームでは一時的にオブジェクトが認識されていないことを把握することができる。
【0245】
オブジェクト認識率向上装置の第1基準値は3であるので、t
3、t
4のフレームでオブジェクトが2回連続で認識されているだけではトラックが登録されないことが原則であるが、本発明によるオブジェクト認識率向上装置は、トラックが登録された後、前のフレームでのヒストリ情報を確認して、認識されていなければならないが第1基準値が3に上向することによって認識されていないオブジェクトがある場合、当該オブジェクトを認識結果に含ませる方向に動作することができる。すなわち、
図24において、オブジェクト認識率向上装置は、t
3、t
4、t
6、t
7フレームのオブジェクトを全てトラッキング結果に含ませ、トラッキングアルゴリズムでオブジェクトを認識したものと判断することができ、t
5のフレームでの外郭線のマッチング結果(フォールスのマッチフラグ)に該当するヒストリ情報がヒストリデータベースに保存されるように処理することができる。上記のようなプロセスは、前述のステップS2380で処理することができる。
【0246】
図25は
図23のステップS2360で説明したトラック削除後の処理プロセスを説明するための図である。
【0247】
まず、
図25の上部を参照すると、オブジェクト認識率向上装置が時系列的に配列されている4つのフレームに対してオブジェクト認識アルゴリズムを適用してオブジェクトを認識することにより、計1つのフレームでオブジェクトが認識されていることが分かる。オブジェクトが認識されているフレームは、t
1のフレームであり、他の3つのフレーム(t
2、t
3、t
4のフレーム)ではオブジェクトが認識されていない。
図25の上部において、オブジェクト認識アルゴリズムにより認識されているオブジェクトに対しては、2Dバウンディングボックス形態の第1外郭線2510Aが生成されている。
【0248】
次に、
図25の下部を参照すると、オブジェクト認識率向上装置がトラッキングアルゴリズムを行った結果により、t
1、t
2、t
3のフレームで連続してオブジェクトが検出されていることが分かる。オブジェクトのトラックは既に登録されており、t
1ではオブジェクト認識結果とトラッキング結果が同じ外郭線を示しており、マッチフラグがトゥルー(true)であるので、t
2のフレームでオブジェクトが消失しても、第2基準値による数のフレームの間には当該オブジェクトに対するトラッキングは維持され続け、オブジェクトに対応する外郭線2530、2550も
図25の下部のように検出され得る。
【0249】
図25のオブジェクト認識率向上装置には第2基準値が2に設定されているので、
図25において、t
2のフレーム及びt
3のフレームで依然としてオブジェクトの外郭線が検出されているが、本発明によるオブジェクト認識率向上装置は、第1パラメータ及び第2パラメータが異なる値に変更される際に生じる問題を最小限に抑えるためのプロセスを含むので、ヒストリデータベースに保存されたマッチフラグ(フォールス)を活用して、t
2のフレーム及びt
3のフレームを全トラックから除外することができる。本発明によるオブジェクト認識率向上装置の結果も、ヒストリ情報として前述のヒストリデータベースに保存されるようにすることができる。
【0250】
図26は本発明によるオブジェクト認識率向上方法の一例を示すフローチャートである。
【0251】
【0252】
オブジェクト認識率向上装置は、映像の各フレーム別にオブジェクトを認識する第1認識アルゴリズムで映像に含まれるオブジェクトを認識することができる(S2610)。ステップS2610において、第1認識アルゴリズムとは、オブジェクト認識装置(Object Detector)によるオブジェクト認識アルゴリズムを意味し、
図23におけるステップS2320に対応し得る。
【0253】
オブジェクト認識率向上装置は、映像に含まれる複数のフレームでトラック(track)を形成し、トラックに含まれるオブジェクトを認識する第2認識アルゴリズムでオブジェクトを認識することができる(S2630)。ステップS2630において、第2認識アルゴリズムとは、オブジェクト認識率向上装置によるトラッキングアルゴリズムを意味し、
図23におけるステップS2330に対応し得る。
【0254】
選択的一実施形態として、第2認識アルゴリズムは、第1基準値以上の連続したフレームでオブジェクトが認識された後に第2基準値以下のフレームの間消失してから再出現したオブジェクトを選択的に認識するアルゴリズムであってもよい。本選択的一実施形態については、第1パラメータ及び第2パラメータについての説明と共に既に前述した通りである。
【0255】
オブジェクト認識率向上装置は、第1認識アルゴリズムでオブジェクトを認識した結果及び第2認識アルゴリズムでオブジェクトを認識した結果を比較することができる(S2650)。ステップS2650は、オブジェクト認識率向上装置による比較処理過程(matching)を包括的に示すものであって、
図23におけるステップS2340、S2350に対応し得る。
【0256】
一実施形態として、オブジェクト認識率向上装置は、第1基準値及び第2基準値に関する入力を受信し、受信した第1基準値又は第2基準値により予め設定されていた第1基準値及び第2基準値の少なくとも1つが変更されると、既に登録されたトラック前後のフレームに関するヒストリ情報を参照して、比較結果を更新することができる。例えば、オブジェクト認識率向上装置は、第1基準値が変更されると、トラックが生成される直前のフレームに関するヒストリ情報を参照して比較結果を更新することができ、それについては
図24を用いて既に説明した通りである。また、オブジェクト認識率向上装置は、第2基準値が変更されると、トラックが生成されてから削除された後のフレームに関するヒストリ情報を参照して比較結果を更新することができ、それについては
図25を用いて既に説明した通りである。
【0257】
オブジェクト認識率向上装置は、比較した結果に基づいて、前記第1認識アルゴリズム及び前記第2認識アルゴリズムで前記映像のオブジェクトを認識した結果を補正することができる(S2670)。ステップS2670は、オブジェクト認識率向上装置による後続処理過程を包括的に示すものであって、
図23におけるステップS2360、S2370、S2380に対応し得る。
【0258】
図27は一実施形態によるオブジェクト認識率向上装置のブロック図である。
【0259】
図27を参照すると、オブジェクト認識率向上装置2700は、通信部2710、プロセッサ2720及びDB2730を含んでもよい。
図27のオブジェクト認識率向上装置2700には、実施形態に関連する構成要素のみ示されている。よって、
図27に示す構成要素に加えて他の汎用の構成要素をさらに含んでもよいことは、当該技術分野における通常の知識を有する者であれば理解するであろう。
【0260】
通信部2710は、外部サーバ又は外部装置との有線/無線通信を可能にする1つ以上の構成要素を含んでもよい。例えば、通信部2710は、近距離通信部(図示せず)、移動通信部(図示せず)及び放送受信部(図示せず)の少なくとも1つを含んでもよい。
【0261】
DB2730は、オブジェクト認識率向上装置2700内で処理される各種データを保存するハードウェアであって、プロセッサ2720の処理及び制御のためのプログラムを保存することができる。
【0262】
DB2730は、DRAM(dynamic random access memory)、SRAM(static random access memory)などのRAM(random access memory)、ROM(read-only memory)、EEPROM(electrically erasable programmable read-only memory)、CD-ROM、ブルーレイ又は他の光ディスクストレージ、HDD(hard disk drive)、SSD(solid state drive)、又はフラッシュメモリを含む。
【0263】
プロセッサ2720は、オブジェクト認識率向上装置2700の全般的な動作を制御する。例えば、プロセッサ2720は、DB2730に保存されたプログラムを実行することにより、入力部(図示せず)、ディスプレイ(図示せず)、通信部2710、DB2730などを全般的に制御することができる。プロセッサ2720は、DB2730に保存されたプログラムを実行することにより、オブジェクト認識率向上装置2700の動作を制御することができる。
【0264】
プロセッサ2720は、上述したオブジェクト認識率向上装置2700の動作の少なくとも一部を制御することができる。
【0265】
一例として、プロセッサ2720は、
図23~
図26を用いて説明したように、映像の各フレーム別にオブジェクトを認識する第1認識アルゴリズムで映像に含まれるオブジェクトを認識し、映像に含まれる複数のフレームでトラック(track)を形成し、トラックに含まれるオブジェクトを認識する第2認識アルゴリズムでオブジェクトを認識し、第1認識アルゴリズムでオブジェクトを認識した結果及び前記第2認識アルゴリズムでオブジェクトを認識した結果を比較し、比較した結果に基づいて、第1認識アルゴリズム及び第2認識アルゴリズムで映像のオブジェクトを認識した結果を補正することができる。
【0266】
プロセッサ2720は、ASICs(application specific integrated circuits)、DSPs(digital signal processors)、DSPDs(digital signal processing devices)、PLDs(programmable logic devices)、FPGAs(field programmable gate arrays)、コントローラ(controllers)、マイクロコントローラ(micro-controllers)、マイクロプロセッサ(microprocessors)、その他の機能の実行のための電気ユニットの少なくとも1つを用いて実現することができる。
【0267】
以上説明した本発明による実施形態は、コンピュータ上で様々な構成要素により実行できるコンピュータプログラムの形態で実現することができ、このようなコンピュータプログラムは、コンピュータで読み取り可能な媒体に記録することができる。ここで、媒体には、ハードディスク、フロッピーディスク、磁気テープなどの磁気媒体、CD-ROM、DVDなどの光記録媒体、フロプティカルディスク(floptical disk)などの光磁気記録媒体(magneto-optical medium)、ROM、RAM、フラッシュメモリなどのプログラム命令を記憶して実行するように特別に構成されたハードウェア装置が含まれる。
【0268】
一方、前記コンピュータプログラムは、本発明のために特別に設計及び構成されたものであってもよく、コンピュータソフトウェア分野の当業者に公知されて使用可能なものであってもよい。コンピュータプログラムの例には、コンパイラにより生成されるような機械語コードだけでなく、インタプリタなどを用いてコンピュータにより実行される高級言語コードも含まれる。
【0269】
本発明で説明する特定の実行は、一実施形態であって、いかなる方法でも本発明の範囲を限定するものではない。明細書の簡潔さのために、従来の電子的な構成、制御システム、ソフトウェア、前記システムの他の機能的な面の記載は省略されることもある。また、図面に示される構成要素間の線の連結又は連結部材は、機能的な連結、及び/又は物理的もしくは回路的な連結を例示的に示すものであり、実際の装置では代替可能であり、さらなる様々な機能的な連結、物理的な連結、又は回路連結として実現可能である。さらに、「必須の」、「重要に」などのように具体的な言及がなければ、本発明の適用のために必ずしも必要な構成要素ではないこともある。
【0270】
本発明の明細書(特に、特許請求の範囲)において、「前記」という用語及びそれに類似した指示用語の使用は、単数及び複数のいずれにも該当するものであり得る。また、本発明において、範囲(range)を記載した場合、上記範囲に属する個別の値を適用した発明を含むものであり(それに反する記載がなければ)、発明の詳細な説明に上記範囲を構成する各個別の値を記載したものと同様である。最後に、本発明による方法を構成するステップに関して、明白な順序の記載又はそれに反する記載がなければ、上記ステップは適切な順序で行うことができる。本発明は、必ずしも上記ステップの記載順序に限定されるものではない。本発明における全ての例又は例示的な用語(例えば、など)の使用は、単に本発明を詳細に説明するためのものであり、特許請求の範囲により限定されない限り、上記例又は例示的な用語により本発明の範囲が限定されるわけではない。また、当業者は、様々な修正、組み合わせ及び変更が加えられた特許請求の範囲又はその均等物の範疇内で設計条件及び要因に応じて構成できることを理解するであろう。
【外国語明細書】