(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2023-06-06
(45)【発行日】2023-06-14
(54)【発明の名称】走行環境に適応するように自律走行車両のディープラーニング基盤のオブジェクト検出器をアップデートするための学習方法及び学習装置、並びにそれを利用したアップデート方法及びアップデート装置
(51)【国際特許分類】
G06V 10/82 20220101AFI20230607BHJP
G06T 7/00 20170101ALI20230607BHJP
G06V 20/56 20220101ALI20230607BHJP
G08G 1/16 20060101ALI20230607BHJP
G16Y 10/40 20200101ALI20230607BHJP
G16Y 20/20 20200101ALI20230607BHJP
G16Y 40/10 20200101ALI20230607BHJP
【FI】
G06V10/82
G06T7/00 650Z
G06T7/00 350C
G06V20/56
G08G1/16 A
G16Y10/40
G16Y20/20
G16Y40/10
(21)【出願番号】P 2022549394
(86)(22)【出願日】2021-05-07
(86)【国際出願番号】 KR2021005723
(87)【国際公開番号】W WO2021230574
(87)【国際公開日】2021-11-18
【審査請求日】2022-08-16
(32)【優先日】2020-05-14
(33)【優先権主張国・地域又は機関】US
(32)【優先日】2021-04-13
(33)【優先権主張国・地域又は機関】US
(73)【特許権者】
【識別番号】517038176
【氏名又は名称】株式会社ストラドビジョン
【氏名又は名称原語表記】STRADVISION,INC.
【住所又は居所原語表記】Suite 304-308,5th Venture-dong,394,Jigok-ro,Nam-gu,Pohang-si,Gyeongsangbuk-do 37668 Republic of Korea
(74)【代理人】
【識別番号】100121728
【氏名又は名称】井関 勝守
(74)【代理人】
【識別番号】100165803
【氏名又は名称】金子 修平
(74)【代理人】
【識別番号】100170900
【氏名又は名称】大西 渉
(72)【発明者】
【氏名】柳宇宙
(72)【発明者】
【氏名】諸泓模
(72)【発明者】
【氏名】康鳳男
(72)【発明者】
【氏名】金鎔重
【審査官】伊知地 和之
(56)【参考文献】
【文献】米国特許出願公開第2018/0211128(US,A1)
【文献】米国特許出願公開第2019/0171223(US,A1)
【文献】米国特許出願公開第2019/0072977(US,A1)
【文献】米国特許出願公開第2020/0134804(US,A1)
【文献】Xinge ZHU et al.,Adapting Object Detectors via Selective Cross-Domain Alignment,2019 IEEE/CVF Conference on Computer Vision and Pattern Recognition(CVPR),2019年06月,pp.687-696
(58)【調査した分野】(Int.Cl.,DB名)
G06T 7/00 - 7/90
G06V 10/00 - 20/90
G06V 30/418
G06V 40/16
G06V 40/20
G08G 1/00 - 99/00
G16Y 10/40
G16Y 20/20
G16Y 40/10
IEEE Xplore
(57)【特許請求の範囲】
【請求項1】
走行環境に適応するように自律走行車両のディープラーニング基盤のオブジェクト検出器をアップデートするための学習方法において、
(a)第1走行環境に対応しており第1オブジェクトラベル及び第1セグメンテーションラベルを含む第1学習イメージ乃至第n走行環境に対応しており第nオブジェクトラベル及び第nセグメンテーションラベルを含む第n学習イメージのうち少なくとも一つの第k学習イメージ(前記kは1以上n以下の整数である)が獲得されると、学習装置が、(i)前記第k学習イメージを前記第1走行環境に対応する第1オブジェクト検出器乃至前記第n走行環境に対応する第nオブジェクト検出器のうち第k走行環境に対応する第k環境特定オブジェクト検出器に入力することで、前記第k環境特定オブジェクト検出器をもって、(i-1)前記第k環境特定オブジェクト検出器の少なくとも一つの第k環境特定コンボリューションレイヤを通じて前記第k学習イメージに少なくとも一回のコンボリューション演算を適用することで第k環境特定フィーチャーマップを生成させ、(i-2)前記第k環境特定オブジェクト検出器の第k環境特定プーリングレイヤを通じて前記第k環境特定フィーチャーマップにある少なくとも一つのオブジェクトを含むものとして予測された少なくとも一つの領域に対応する第k環境特定ROI情報を利用して前記第k環境特定フィーチャーマップに少なくとも一回のROIプーリング演算を適用することによって第k環境特定プーリングフィーチャーマップを生成させ、(i-3)前記第k環境特定オブジェクト検出器の第k環境特定FCレイヤを通じて前記第k環境特定プーリングフィーチャーマップに少なくとも一回のFC(fully connected)演算を適用することで第k環境特定オブジェクトディテクション情報を生成させ、(ii)前記第k環境特定フィーチャーマップを前記第1オブジェクト検出器に対応する第1ランクネットワーク乃至前記第nオブジェクト検出器に対応する第nランクネットワークのうち前記第k環境特定オブジェクト検出器に対応する第k環境特定ランクネットワークに入力することで、前記第k環境特定ランクネットワークをもって、(ii-1)前記第k環境特定ランクネットワークの少なくとも一つの第k環境特定デコンボリューションレイヤを通じて前記第k環境特定フィーチャーマップに少なくとも一回のデコンボリューション演算を適用することで第k環境特定セグメンテーションマップを生成させ、(ii-2)前記第k環境特定ランクネットワークの第k環境特定ディスクリミネータを通じて、前記第k学習イメージ上のメイン領域及びこれに対応する前記第k環境特定セグメンテーションマップ上の第1サブ領域がクロップされてコンカチネートされることによって生成される第k環境特定ランクマップがリアル(real)であるのかフェーク(fake)であるのかに関する情報を示す第k環境特定ランクスコアを生成させる段階;及び
(b)前記学習装置が、(i)前記第k環境特定オブジェクトディテクション情報とこれに対応する第k環境特定オブジェクトラベルとが参照されることで生成された第k環境特定オブジェクトディテクションロスを最小化するように前記第k環境特定オブジェクト検出器を学習させ、前記第k環境特定ランクスコアを最大化するように前記第k環境特定デコンボリューションレイヤと前記第k環境特定コンボリューションレイヤとを学習させるプロセス、及び(ii)前記第k学習イメージ上の前記メイン領域及びこれに対応する第k環境特定セグメンテーションラベル上の第2サブ領域がクロップされてコンカチネートされることによって生成される第k環境特定ラベルランクマップに対する第k環境特定ラベルランクスコア(前記第k環境特定ラベルランクスコアは、前記第k環境特定ディスクリミネータを通じて生成される)を最大化するように、また、前記第k環境特定ランクスコアを最小化するように、前記第k環境特定ディスクリミネータを学習させるプロセスを遂行する段階;
を含む学習方法。
【請求項2】
前記(a)段階で、
前記学習装置が、前記第k環境特定ランクネットワークをもって、前記第k環境特定ディスクリミネータを通じて、前記第k学習イメージ上の前記メイン領域及びこれに対応する少なくとも一つの第j環境特定セグメンテーションマップ(前記第j環境特定セグメンテーションマップは、前記第k環境特定コンボリューションレイヤを除いた少なくとも一つの第j環境特定コンボリューションレイヤを通じて前記第k学習イメージに前記コンボリューション演算が適用されることで少なくとも一つの第j環境特定フィーチャーマップが生成された後、前記第j環境特定コンボリューションレイヤに対応する少なくとも一つの第j環境特定デコンボリューションレイヤを通じて前記第j環境特定フィーチャーマップに前記デコンボリューション演算が適用されることによって生成され、前記jは1以上n以下の整数である)上の少なくとも一つの第3サブ領域がクロップされてコンカチネートされることによって生成される少なくとも一つの第j環境特定ランクマップがリアルであるのかフェークであるのかに関する情報を示す少なくとも一つの第j環境特定ランクスコアをさらに生成させ、
前記(b)段階で、
前記学習装置が、前記第k環境特定ラベルランクスコアを最大化するように、また、前記第k環境特定ランクスコアと前記第j環境特定ランクスコアとのそれぞれを最小化するように、前記第k環境特定ディスクリミネータを学習させることを特徴とする、請求項1に記載の学習方法。
【請求項3】
前記(b)段階で、
前記学習装置が、前記第k環境特定セグメンテーションマップとこれに対応する前記第k環境特定セグメンテーションラベルとが参照されることで生成された第k環境特定セグメンテーションロスを最小化するように、また、前記第k環境特定ランクスコアを最大化するように、前記第k環境特定デコンボリューションレイヤと前記第k環境特定コンボリューションレイヤとのそれぞれを学習させることを特徴とする、請求項1に記載の学習方法。
【請求項4】
前記第k環境特定ディスクリミネータは、コンボリューショナルPatchGAN分類器(Convolutional PatchGAN classifier)を含むことを特徴とする、請求項1に記載の学習方法。
【請求項5】
前記(a)段階で、
前記学習装置が、前記第k環境特定オブジェクト検出器をもって、前記第k環境特定オブジェクト検出器の第k環境特定RPN(region proposal network)レイヤを通じて前記第k環境特定ROI情報を生成させ、
前記(b)段階で、
前記学習装置が、前記第k環境特定ROI情報及びこれに対応する前記第k環境特定オブジェクトラベルが参照されることで生成された第k環境特定RPNロスを最小化するように前記第k環境特定RPNレイヤをさらに学習させることを特徴とする、請求項1に記載の学習方法。
【請求項6】
走行環境に適応するように自律走行車両のディープラーニング基盤のオブジェクト検出器をアップデートするための方法において、
(a)第1走行環境に対応しており第1オブジェクトラベル及び第1セグメンテーションラベルを含む第1学習イメージ乃至第n走行環境に対応しており第nオブジェクトラベル及び第nセグメンテーションラベルを含む第n学習イメージのうち少なくとも一つの第k学習イメージ(前記kは1以上n以下の整数である)が獲得されると、学習装置が、(i)前記第k学習イメージを前記第1走行環境に対応する第1オブジェクト検出器乃至前記第n走行環境に対応する第nオブジェクト検出器のうち第k走行環境に対応する第k環境特定オブジェクト検出器に入力することで、前記第k環境特定オブジェクト検出器をもって、(i-1)前記第k環境特定オブジェクト検出器の少なくとも一つの第k環境特定コンボリューションレイヤを通じて前記第k学習イメージに少なくとも一回のコンボリューション演算を適用することで第k環境特定フィーチャーマップを生成させ、(i-2)前記第k環境特定オブジェクト検出器の第k環境特定プーリングレイヤを通じて前記第k環境特定フィーチャーマップにある少なくとも一つのオブジェクトを含むものとして予測された少なくとも一つの領域に対応する第k環境特定ROI情報を利用して前記第k環境特定フィーチャーマップに少なくとも一回のROIプーリング演算を適用することによって第k環境特定プーリングフィーチャーマップを生成させ、(i-3)前記第k環境特定オブジェクト検出器の第k環境特定FCレイヤを通じて前記第k環境特定プーリングフィーチャーマップに少なくとも一回のFC(fully connected)演算を適用することで第k環境特定オブジェクトディテクション情報を生成させ、(ii)前記第k環境特定フィーチャーマップを前記第1オブジェクト検出器に対応する第1ランクネットワーク乃至前記第nオブジェクト検出器に対応する第nランクネットワークのうち前記第k環境特定オブジェクト検出器に対応する第k環境特定ランクネットワークに入力することで、前記第k環境特定ランクネットワークをもって、(ii-1)前記第k環境特定ランクネットワークの少なくとも一つの第k環境特定デコンボリューションレイヤを通じて前記第k環境特定フィーチャーマップに少なくとも一回のデコンボリューション演算を適用することで第k環境特定セグメンテーションマップを生成させ、(ii-2)前記第k環境特定ランクネットワークの第k環境特定ディスクリミネータを通じて、前記第k学習イメージ上のメイン領域及びこれに対応する前記第k環境特定セグメンテーションマップ上の第1サブ領域がクロップされてコンカチネートされることによって生成される第k環境特定ランクマップがリアル(real)であるのかフェーク(fake)であるのかに関する情報を示す第k環境特定ランクスコアを生成させ、(iii)前記第k環境特定オブジェクトディテクション情報とこれに対応する第k環境特定オブジェクトラベルとが参照されることで生成された第k環境特定オブジェクトディテクションロスを最小化するように前記第k環境特定オブジェクト検出器を学習させ、前記第k環境特定ランクスコアを最大化するように前記第k環境特定デコンボリューションレイヤと前記第k環境特定コンボリューションレイヤとを学習させるプロセス、及び(iv)前記第k学習イメージ上の前記メイン領域及びこれに対応する第k環境特定セグメンテーションラベル上の第2サブ領域がクロップされてコンカチネートされることによって生成される第k環境特定ラベルランクマップに対する第k環境特定ラベルランクスコア(前記第k環境特定ラベルランクスコアは、前記第k環境特定ディスクリミネータを通じて生成される)を最大化するように、また、前記第k環境特定ランクスコアを最小化するように、前記第k環境特定ディスクリミネータを学習させるプロセスを遂行した状態で、アップデート装置が、前記自律走行車両の走行環境を示す走行環境イメージを獲得する段階;
(b)前記アップデート装置が、(i)前記走行環境イメージを前記第1オブジェクト検出器乃至前記第nオブジェクト検出器のそれぞれに入力することで、前記第1オブジェクト検出器乃至前記第nオブジェクト検出器のそれぞれをもって、前記第1コンボリューションレイヤ乃至前記第nコンボリューションレイヤのそれぞれを通じて前記走行環境イメージに少なくとも一回のコンボリューション演算を適用することで第1走行環境フィーチャーマップ乃至第n走行環境フィーチャーマップのそれぞれを生成させ、(ii)前記第1走行環境フィーチャーマップ乃至前記第n走行環境フィーチャーマップのそれぞれを前記第1ランクネットワーク乃至前記第nランクネットワークのそれぞれに入力することで、前記第1ランクネットワーク乃至前記第nランクネットワークのそれぞれをもって、(ii-1)第1デコンボリューションレイヤ乃至第nデコンボリューションレイヤのそれぞれを通じて前記第1走行環境フィーチャーマップ乃至前記第n走行環境フィーチャーマップのそれぞれに少なくとも一回のデコンボリューション演算を適用することで第1走行環境セグメンテーションマップ乃至第n走行環境セグメンテーションマップのそれぞれを生成させ、(ii-2)前記第1ディスクリミネータ乃至前記第nディスクリミネータのそれぞれを通じて、前記走行環境イメージ上の第1走行メイン領域及びこれに対応する前記第1走行環境セグメンテーションマップ上の第1走行サブ領域がクロップされてコンカチネートされることによって生成される第1走行環境ランクマップ乃至前記走行環境イメージ上の第n走行メイン領域及びこれに対応する前記第n走行環境セグメンテーションマップ上の第n走行サブ領域がクロップされてコンカチネートされることによって生成される第n走行環境ランクマップのそれぞれがリアルであるのかフェークであるのかに関する情報をそれぞれ示す第1走行環境ランクスコア乃至第n走行環境ランクスコアのそれぞれを生成させる段階;及び
(c)前記アップデート装置が、(i)前記第1走行環境ランクスコア乃至前記第n走行環境ランクスコアのうち最も高い値を有する特定の走行環境ランクスコアを生成した特定のランクネットワークに対応する特定のオブジェクト検出器を選択し、(ii)前記自律走行車両の現在のオブジェクト検出器を前記特定のオブジェクト検出器にアップデートする段階;
を含む方法。
【請求項7】
前記(a)段階で、
前記学習装置が、前記第k環境特定ランクネットワークをもって、前記第k環境特定ディスクリミネータを通じて、前記第k学習イメージ上の前記メイン領域及びこれに対応する少なくとも一つの第j環境特定セグメンテーションマップ(前記第j環境特定セグメンテーションマップは、前記第k環境特定コンボリューションレイヤを除いた少なくとも一つの第j環境特定コンボリューションレイヤを通じて前記第k学習イメージに前記コンボリューション演算が適用されることで少なくとも一つの第j環境特定フィーチャーマップが生成された後、前記第j環境特定コンボリューションレイヤに対応する少なくとも一つの第j環境特定デコンボリューションレイヤを通じて前記第j環境特定フィーチャーマップに前記デコンボリューション演算が適用されることによって生成され、前記jは1以上n以下の整数である)上の少なくとも一つの第3サブ領域がクロップされてコンカチネートされることによって生成される少なくとも一つの第j環境特定ランクマップがリアルであるのかフェークであるのかに関する情報を示す少なくとも一つの第j環境特定ランクスコアをさらに生成させ、前記第k環境特定ラベルランクスコアを最大化するように、また、前記第k環境特定ランクスコアと前記第j環境特定ランクスコアとのそれぞれを最小化するように、前記第k環境特定ディスクリミネータを学習させることを特徴とする、請求項6に記載の方法。
【請求項8】
前記(a)段階で、
前記学習装置が、前記第k環境特定セグメンテーションマップとこれに対応する前記第k環境特定セグメンテーションラベルとが参照されることで生成された第k環境特定セグメンテーションロスを最小化するように、また、前記第k環境特定ランクスコアを最大化するように、前記第k環境特定デコンボリューションレイヤと前記第k環境特定コンボリューションレイヤとのそれぞれを学習させることを特徴とする、請求項6に記載の方法。
【請求項9】
前記第k環境特定ディスクリミネータは、コンボリューショナルPatchGAN分類器(Convolutional PatchGAN classifier)を含むことを特徴とする、請求項6に記載の方法。
【請求項10】
前記(a)段階で、
前記学習装置が、前記第k環境特定オブジェクト検出器をもって、前記第k環境特定オブジェクト検出器の第k環境特定RPN(region proposal network)レイヤを通じて前記第k環境特定ROI情報を生成させ、前記第k環境特定ROI情報及びこれに対応する前記第k環境特定オブジェクトラベルが参照されることで生成された第k環境特定RPNロスを最小化するように前記第k環境特定RPNレイヤをさらに学習させることを特徴とする、請求項6に記載の方法。
【請求項11】
走行環境に適応するように自律走行車両のディープラーニング基盤のオブジェクト検出器をアップデートするための学習装置において、
インストラクションを格納する少なくとも一つのメモリ;及び
前記インストラクションを実行するために構成された少なくとも一つのプロセッサを含み、
前記プロセッサは、(I)第1走行環境に対応しており第1オブジェクトラベル及び第1セグメンテーションラベルを含む第1学習イメージ乃至第n走行環境に対応しており第nオブジェクトラベル及び第nセグメンテーションラベルを含む第n学習イメージのうち少なくとも一つの第k学習イメージ(前記kは1以上n以下の整数である)が獲得されると、(i)前記第k学習イメージを前記第1走行環境に対応する第1オブジェクト検出器乃至前記第n走行環境に対応する第nオブジェクト検出器のうち第k走行環境に対応する第k環境特定オブジェクト検出器に入力することで、前記第k環境特定オブジェクト検出器をもって、(i-1)前記第k環境特定オブジェクト検出器の少なくとも一つの第k環境特定コンボリューションレイヤを通じて前記第k学習イメージに少なくとも一回のコンボリューション演算を適用することで第k環境特定フィーチャーマップを生成させ、(i-2)前記第k環境特定オブジェクト検出器の第k環境特定プーリングレイヤを通じて前記第k環境特定フィーチャーマップにある少なくとも一つのオブジェクトを含むものとして予測された少なくとも一つの領域に対応する第k環境特定ROI情報を利用して前記第k環境特定フィーチャーマップに少なくとも一回のROIプーリング演算を適用することによって第k環境特定プーリングフィーチャーマップを生成させ、(i-3)前記第k環境特定オブジェクト検出器の第k環境特定FCレイヤを通じて前記第k環境特定プーリングフィーチャーマップに少なくとも一回のFC(fully connected)演算を適用することで第k環境特定オブジェクトディテクション情報を生成させ、(ii)前記第k環境特定フィーチャーマップを前記第1オブジェクト検出器に対応する第1ランクネットワーク乃至前記第nオブジェクト検出器に対応する第nランクネットワークのうち前記第k環境特定オブジェクト検出器に対応する第k環境特定ランクネットワークに入力することで、前記第k環境特定ランクネットワークをもって、(ii-1)前記第k環境特定ランクネットワークの少なくとも一つの第k環境特定デコンボリューションレイヤを通じて前記第k環境特定フィーチャーマップに少なくとも一回のデコンボリューション演算を適用することで第k環境特定セグメンテーションマップを生成させ、(ii-2)前記第k環境特定ランクネットワークの第k環境特定ディスクリミネータを通じて、前記第k学習イメージ上のメイン領域及びこれに対応する前記第k環境特定セグメンテーションマップ上の第1サブ領域がクロップされてコンカチネートされることによって生成される第k環境特定ランクマップがリアル(real)であるのかフェーク(fake)であるのかに関する情報を示す第k環境特定ランクスコアを生成させるプロセス及び(II)(i)前記第k環境特定オブジェクトディテクション情報とこれに対応する第k環境特定オブジェクトラベルとが参照されることで生成された第k環境特定オブジェクトディテクションロスを最小化するように前記第k環境特定オブジェクト検出器を学習させ、前記第k環境特定ランクスコアを最大化するように前記第k環境特定デコンボリューションレイヤと前記第k環境特定コンボリューションレイヤとを学習させ、(ii)前記第k学習イメージ上の前記メイン領域及びこれに対応する第k環境特定セグメンテーションラベル上の第2サブ領域がクロップされてコンカチネートされることによって生成される第k環境特定ラベルランクマップに対する第k環境特定ラベルランクスコア(前記第k環境特定ラベルランクスコアは、前記第k環境特定ディスクリミネータを通じて生成される)を最大化するように、また、前記第k環境特定ランクスコアを最小化するように、前記第k環境特定ディスクリミネータを学習させるプロセスを遂行する学習装置。
【請求項12】
前記プロセッサは、
前記(I)プロセスで、
前記第k環境特定ランクネットワークをもって、前記第k環境特定ディスクリミネータを通じて、前記第k学習イメージ上の前記メイン領域及びこれに対応する少なくとも一つの第j環境特定セグメンテーションマップ(前記第j環境特定セグメンテーションマップは、前記第k環境特定コンボリューションレイヤを除いた少なくとも一つの第j環境特定コンボリューションレイヤを通じて前記第k学習イメージに前記コンボリューション演算が適用されることで少なくとも一つの第j環境特定フィーチャーマップが生成された後、前記第j環境特定コンボリューションレイヤに対応する少なくとも一つの第j環境特定デコンボリューションレイヤを通じて前記第j環境特定フィーチャーマップに前記デコンボリューション演算が適用されることによって生成され、前記jは1以上n以下の整数である)上の少なくとも一つの第3サブ領域がクロップされてコンカチネートされることによって生成される少なくとも一つの第j環境特定ランクマップがリアルであるのかフェークであるのかに関する情報を示す少なくとも一つの第j環境特定ランクスコアをさらに生成させ、
前記(II)プロセスで、
前記第k環境特定ラベルランクスコアを最大化するように、また、前記第k環境特定ランクスコアと前記第j環境特定ランクスコアとのそれぞれを最小化するように、前記第k環境特定ディスクリミネータを学習させることを特徴とする、請求項11に記載の学習装置。
【請求項13】
前記プロセッサは、
前記(II)プロセスで、
前記第k環境特定セグメンテーションマップとこれに対応する前記第k環境特定セグメンテーションラベルとが参照されることで生成された第k環境特定セグメンテーションロスを最小化するように、また、前記第k環境特定ランクスコアを最大化するように、前記第k環境特定デコンボリューションレイヤと前記第k環境特定コンボリューションレイヤとのそれぞれを学習させることを特徴とする、請求項11に記載の学習装置。
【請求項14】
前記第k環境特定ディスクリミネータは、コンボリューショナルPatchGAN分類器(Convolutional PatchGAN classifier)を含むことを特徴とする、請求項11に記載の学習装置。
【請求項15】
前記プロセッサは、
前記(I)プロセスで、
前記第k環境特定オブジェクト検出器をもって、前記第k環境特定オブジェクト検出器の第k環境特定RPN(region proposal network)レイヤを通じて前記第k環境特定ROI情報を生成させ、
前記(II)プロセスで、
前記第k環境特定ROI情報及びこれに対応する前記第k環境特定オブジェクトラベルが参照されることで生成された第k環境特定RPNロスを最小化するように前記第k環境特定RPNレイヤをさらに学習させることを特徴とする、請求項11に記載の学習装置。
【請求項16】
走行環境に適応するように自律走行車両のディープラーニング基盤のオブジェクト検出器をアップデートするためのアップデート装置において、
インストラクションを格納する少なくとも一つのメモリ;及び
前記インストラクションを実行するために構成された少なくとも一つのプロセッサを含み、
前記プロセッサは、(I)第1走行環境に対応しており第1オブジェクトラベル及び第1セグメンテーションラベルを含む第1学習イメージ乃至第n走行環境に対応しており第nオブジェクトラベル及び第nセグメンテーションラベルを含む第n学習イメージのうち少なくとも一つの第k学習イメージ(前記kは1以上n以下の整数である)が獲得されると、学習装置が、(i)前記第k学習イメージを前記第1走行環境に対応する第1オブジェクト検出器乃至前記第n走行環境に対応する第nオブジェクト検出器のうち第k走行環境に対応する第k環境特定オブジェクト検出器に入力することで、前記第k環境特定オブジェクト検出器をもって、(i-1)前記第k環境特定オブジェクト検出器の少なくとも一つの第k環境特定コンボリューションレイヤを通じて前記第k学習イメージに少なくとも一回のコンボリューション演算を適用することで第k環境特定フィーチャーマップを生成させ、(i-2)前記第k環境特定オブジェクト検出器の第k環境特定プーリングレイヤを通じて前記第k環境特定フィーチャーマップにある少なくとも一つのオブジェクトを含むものとして予測された少なくとも一つの領域に対応する第k環境特定ROI情報を利用して前記第k環境特定フィーチャーマップに少なくとも一回のROIプーリング演算を適用することによって第k環境特定プーリングフィーチャーマップを生成させ、(i-3)前記第k環境特定オブジェクト検出器の第k環境特定FCレイヤを通じて前記第k環境特定プーリングフィーチャーマップに少なくとも一回のFC(fully connected)演算を適用することで第k環境特定オブジェクトディテクション情報を生成させ、(ii)前記第k環境特定フィーチャーマップを前記第1オブジェクト検出器に対応する第1ランクネットワーク乃至前記第nオブジェクト検出器に対応する第nランクネットワークのうち前記第k環境特定オブジェクト検出器に対応する第k環境特定ランクネットワークに入力することで、前記第k環境特定ランクネットワークをもって、(ii-1)前記第k環境特定ランクネットワークの少なくとも一つの第k環境特定デコンボリューションレイヤを通じて前記第k環境特定フィーチャーマップに少なくとも一回のデコンボリューション演算を適用することで第k環境特定セグメンテーションマップを生成させ、(ii-2)前記第k環境特定ランクネットワークの第k環境特定ディスクリミネータを通じて、前記第k学習イメージ上のメイン領域及びこれに対応する前記第k環境特定セグメンテーションマップ上の第1サブ領域がクロップされてコンカチネートされることによって生成される第k環境特定ランクマップがリアル(real)であるのかフェーク(fake)であるのかに関する情報を示す第k環境特定ランクスコアを生成させ、(iii)前記第k環境特定オブジェクトディテクション情報とこれに対応する第k環境特定オブジェクトラベルとが参照されることで生成された第k環境特定オブジェクトディテクションロスを最小化するように前記第k環境特定オブジェクト検出器を学習させ、前記第k環境特定ランクスコアを最大化するように前記第k環境特定デコンボリューションレイヤと前記第k環境特定コンボリューションレイヤとを学習させるプロセス、及び(iv)前記第k学習イメージ上の前記メイン領域及びこれに対応する第k環境特定セグメンテーションラベル上の第2サブ領域がクロップされてコンカチネートされることによって生成される第k環境特定ラベルランクマップに対する第k環境特定ラベルランクスコア(前記第k環境特定ラベルランクスコアは、前記第k環境特定ディスクリミネータを通じて生成される)を最大化するように、また、前記第k環境特定ランクスコアを最小化するように、前記第k環境特定ディスクリミネータを学習させるプロセスを遂行した状態で、前記自律走行車両の走行環境を示す走行環境イメージを獲得するプロセス、(II)(i)前記走行環境イメージを前記第1オブジェクト検出器乃至前記第nオブジェクト検出器のそれぞれに入力することで、前記第1オブジェクト検出器乃至前記第nオブジェクト検出器のそれぞれをもって、前記第1コンボリューションレイヤ乃至前記第nコンボリューションレイヤのそれぞれを通じて前記走行環境イメージに少なくとも一回のコンボリューション演算を適用することで第1走行環境フィーチャーマップ乃至第n走行環境フィーチャーマップのそれぞれを生成させ、(ii)前記第1走行環境フィーチャーマップ乃至前記第n走行環境フィーチャーマップのそれぞれを前記第1ランクネットワーク乃至前記第nランクネットワークのそれぞれに入力することで、前記第1ランクネットワーク乃至前記第nランクネットワークのそれぞれをもって、(ii-1)第1デコンボリューションレイヤ乃至第nデコンボリューションレイヤのそれぞれを通じて前記第1走行環境フィーチャーマップ乃至前記第n走行環境フィーチャーマップのそれぞれに少なくとも一回のデコンボリューション演算を適用することで第1走行環境セグメンテーションマップ乃至第n走行環境セグメンテーションマップのそれぞれを生成させ、(ii-2)前記第1ディスクリミネータ乃至前記第nディスクリミネータのそれぞれを通じて、前記走行環境イメージ上の第1走行メイン領域及びこれに対応する前記第1走行環境セグメンテーションマップ上の第1走行サブ領域がクロップされてコンカチネートされることによって生成される第1走行環境ランクマップ乃至前記走行環境イメージ上の第n走行メイン領域及びこれに対応する前記第n走行環境セグメンテーションマップ上の第n走行サブ領域がクロップされてコンカチネートされることによって生成される第n走行環境ランクマップのそれぞれがリアルであるのかフェークであるのかに関する情報をそれぞれ示す第1走行環境ランクスコア乃至第n走行環境ランクスコアのそれぞれを生成させるプロセス及び(III)(i)前記第1走行環境ランクスコア乃至前記第n走行環境ランクスコアのうち最も高い値を有する特定の走行環境ランクスコアを生成した特定のランクネットワークに対応する特定のオブジェクト検出器を選択し、(ii)前記自律走行車両の現在のオブジェクト検出器を前記特定のオブジェクト検出器にアップデートするプロセスを遂行するアップデート装置。
【請求項17】
前記(I)プロセスで、
前記学習装置が、前記第k環境特定ランクネットワークをもって、前記第k環境特定ディスクリミネータを通じて、前記第k学習イメージ上の前記メイン領域及びこれに対応する少なくとも一つの第j環境特定セグメンテーションマップ(前記第j環境特定セグメンテーションマップは、前記第k環境特定コンボリューションレイヤを除いた少なくとも一つの第j環境特定コンボリューションレイヤを通じて前記第k学習イメージに前記コンボリューション演算が適用されることで少なくとも一つの第j環境特定フィーチャーマップが生成された後、前記第j環境特定コンボリューションレイヤに対応する少なくとも一つの第j環境特定デコンボリューションレイヤを通じて前記第j環境特定フィーチャーマップに前記デコンボリューション演算が適用されることによって生成され、前記jは1以上n以下の整数である)上の少なくとも一つの第3サブ領域がクロップされてコンカチネートされることによって生成される少なくとも一つの第j環境特定ランクマップがリアルであるのかフェークであるのかに関する情報を示す少なくとも一つの第j環境特定ランクスコアをさらに生成させ、前記第k環境特定ラベルランクスコアを最大化するように、また、前記第k環境特定ランクスコアと前記第j環境特定ランクスコアとのそれぞれを最小化するように、前記第k環境特定ディスクリミネータを学習させることを特徴とする、請求項16に記載のアップデート装置。
【請求項18】
前記(I)プロセスで、
前記学習装置が、前記第k環境特定セグメンテーションマップとこれに対応する前記第k環境特定セグメンテーションラベルとが参照されることで生成された第k環境特定セグメンテーションロスを最小化するように、また、前記第k環境特定ランクスコアを最大化するように、前記第k環境特定デコンボリューションレイヤと前記第k環境特定コンボリューションレイヤとのそれぞれを学習させることを特徴とする、請求項16に記載のアップデート装置。
【請求項19】
前記第k環境特定ディスクリミネータは、コンボリューショナルPatchGAN分類器(Convolutional PatchGAN classifier)を含むことを特徴とする、請求項16に記載のアップデート装置。
【請求項20】
前記(I)プロセスで、
前記学習装置が、前記第k環境特定オブジェクト検出器をもって、前記第k環境特定オブジェクト検出器の第k環境特定RPN(region proposal network)レイヤを通じて前記第k環境特定ROI情報を生成させ、前記第k環境特定ROI情報及びこれに対応する前記第k環境特定オブジェクトラベルが参照されることで生成された第k環境特定RPNロスを最小化するように前記第k環境特定RPNレイヤをさらに学習させることを特徴とする、請求項16に記載のアップデート装置。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、2020年5月14日出願された米国特許出願第63/024,657号と2021年4月13日出願された米国特許出願第17/229,264号に対する優先権を主張し、これは、本願に参照として含まれる。
【0002】
本発明は、自律走行車両のディープラーニング基盤のオブジェクト検出器をアップデートするための発明であって、具体的には、様々な走行環境に適応するように自律走行車両のディープラーニング基盤のオブジェクト検出器をアップデートするための学習方法及び学習装置、並びにそれを利用したアップデート方法及びアップデート装置に関する。
【背景技術】
【0003】
ディープコンボリューションニューラルネットワーク(Deep Convolutional Neural Networks; Deep CNN)は、ディープラーニングの分野で起きた驚くべき発展の核心である。CNNは、文字認識の問題を解決するために90年代に既に使用されていたが、現在のように広く使用されるようになったのは、最近の研究結果のおかげである。このようなディープCNNは、2012年ImageNetイメージ分類大会で他の競争者に勝ち、優勝を取った。その後、コンボリューションニューラルネットワークは、機械学習(Machine Learning)の分野において非常に有用なツールとなった。
【0004】
このようなコンボリューションニューラルネットワークは、現在様々な分野に応用されており、例えば、自律走行車両に搭載されるオブジェクト検出器を具現することに応用され得る。
【0005】
ところが、自律走行車両の走行環境は地域、時間、天気などによって多様に変化し、自律走行車両が直面する可能性のある全ての走行環境に対して最適化されたオブジェクト検出器を具現するためには、非常に高い仕様のコンピューティングリソースが必要である。
【0006】
しかし、一般的に自律走行車両には限定されたコンピューティングリソースが提供されるため、様々な走行環境に対して最適化された一つのオブジェクト検出器を自律走行車両に搭載することは、ほぼ不可能である。
【0007】
従って、前記問題点を解決するための改善方案が要求される実情である。
【発明の概要】
【発明が解決しようとする課題】
【0008】
本発明は、上述した問題点を全て解決することをその目的とする。
【0009】
また、本発明は、自律走行車両が様々な走行環境でも円滑に走行することができるようにすることを他の目的とする。
【0010】
また、本発明は、自律走行車両のオブジェクト検出器がそれぞれの走行環境に適した最適のオブジェクト検出器にアップデートされるようにすることを他の目的とする。
【課題を解決するための手段】
【0011】
本発明の一実施例によると、走行環境に適応するように自律走行車両のディープラーニング基盤のオブジェクト検出器をアップデートするための学習方法において、(a)第1走行環境に対応しており第1オブジェクトラベル及び第1セグメンテーションラベルを含む第1学習イメージ乃至第n走行環境に対応しており第nオブジェクトラベル及び第nセグメンテーションラベルを含む第n学習イメージのうち少なくとも一つの第k学習イメージ(前記kは1以上n以下の整数である)が獲得されると、学習装置が、(i)前記第k学習イメージを前記第1走行環境に対応する第1オブジェクト検出器乃至前記第n走行環境に対応する第nオブジェクト検出器のうち第k走行環境に対応する第k環境特定オブジェクト検出器に入力することで、前記第k環境特定オブジェクト検出器をもって、(i-1)前記第k環境特定オブジェクト検出器の少なくとも一つの第k環境特定コンボリューションレイヤを通じて前記第k学習イメージに少なくとも一回のコンボリューション演算を適用することで第k環境特定フィーチャーマップを生成させ、(i-2)前記第k環境特定オブジェクト検出器の第k環境特定プーリングレイヤを通じて前記第k環境特定フィーチャーマップにある少なくとも一つのオブジェクトを含むものとして予測された少なくとも一つの領域に対応する第k環境特定ROI情報を利用して前記第k環境特定フィーチャーマップに少なくとも一回のROIプーリング演算を適用することによって第k環境特定プーリングフィーチャーマップを生成させ、(i-3)前記第k環境特定オブジェクト検出器の第k環境特定FCレイヤを通じて前記第k環境特定プーリングフィーチャーマップに少なくとも一回のFC(fully connected)演算を適用することで第k環境特定オブジェクトディテクション情報を生成させ、(ii)前記第k環境特定フィーチャーマップを前記第1オブジェクト検出器に対応する第1ランクネットワーク乃至前記第nオブジェクト検出器に対応する第nランクネットワークのうち前記第k環境特定オブジェクト検出器に対応する第k環境特定ランクネットワークに入力することで、前記第k環境特定ランクネットワークをもって、(ii-1)前記第k環境特定ランクネットワークの少なくとも一つの第k環境特定デコンボリューションレイヤを通じて前記第k環境特定フィーチャーマップに少なくとも一回のデコンボリューション演算を適用することで第k環境特定セグメンテーションマップを生成させ、(ii-2)前記第k環境特定ランクネットワークの第k環境特定ディスクリミネータを通じて、前記第k学習イメージ上のメイン領域及びこれに対応する前記第k環境特定セグメンテーションマップ上の第1サブ領域がクロップされてコンカチネートされることによって生成される第k環境特定ランクマップがリアル(real)であるのかフェーク(fake)であるのかに関する情報を示す第k環境特定ランクスコアを生成させる段階;及び(b)前記学習装置が、(i)前記第k環境特定オブジェクトディテクション情報とこれに対応する第k環境特定オブジェクトラベルとが参照されることで生成された第k環境特定オブジェクトディテクションロスを最小化するように前記第k環境特定オブジェクト検出器を学習させ、前記第k環境特定ランクスコアを最大化するように前記第k環境特定デコンボリューションレイヤと前記第k環境特定コンボリューションレイヤとを学習させるプロセス、及び(ii)前記第k学習イメージ上の前記メイン領域及びこれに対応する第k環境特定セグメンテーションラベル上の第2サブ領域がクロップされてコンカチネートされることによって生成される第k環境特定ラベルランクマップに対する第k環境特定ラベルランクスコア(前記第k環境特定ラベルランクスコアは、前記第k環境特定ディスクリミネータを通じて生成される)を最大化するように、また、前記第k環境特定ランクスコアを最小化するように、前記第k環境特定ディスクリミネータを学習させるプロセスを遂行する段階;を含む学習方法が提供される。
【0012】
前記(a)段階で、前記学習装置が、前記第k環境特定ランクネットワークをもって、前記第k環境特定ディスクリミネータを通じて、前記第k学習イメージ上の前記メイン領域及びこれに対応する少なくとも一つの第j環境特定セグメンテーションマップ(前記第j環境特定セグメンテーションマップは、前記第k環境特定コンボリューションレイヤを除いた少なくとも一つの第j環境特定コンボリューションレイヤを通じて前記第k学習イメージに前記コンボリューション演算が適用されることで少なくとも一つの第j環境特定フィーチャーマップが生成された後、前記第j環境特定コンボリューションレイヤに対応する少なくとも一つの第j環境特定デコンボリューションレイヤを通じて前記第j環境特定フィーチャーマップに前記デコンボリューション演算が適用されることによって生成され、前記jは1以上n以下の整数である)上の少なくとも一つの第3サブ領域がクロップされてコンカチネートされることによって生成される少なくとも一つの第j環境特定ランクマップがリアルであるのかフェークであるのかに関する情報を示す少なくとも一つの第j環境特定ランクスコアをさらに生成させ、前記(b)段階で、前記学習装置が、前記第k環境特定ラベルランクスコアを最大化するように、また、前記第k環境特定ランクスコアと前記第j環境特定ランクスコアとのそれぞれを最小化するように、前記第k環境特定ディスクリミネータを学習させることを特徴とする。
【0013】
前記(b)段階で、前記学習装置が、前記第k環境特定セグメンテーションマップとこれに対応する前記第k環境特定セグメンテーションラベルとが参照されることで生成された第k環境特定セグメンテーションロスを最小化するように、また、前記第k環境特定ランクスコアを最大化するように、前記第k環境特定デコンボリューションレイヤと前記第k環境特定コンボリューションレイヤとのそれぞれを学習させることを特徴とする。
【0014】
前記第k環境特定ディスクリミネータは、コンボリューショナルPatchGAN分類器(Convolutional PatchGAN classifier)を含むことを特徴とする。
【0015】
前記(a)段階で、前記学習装置が、前記第k環境特定オブジェクト検出器をもって、前記第k環境特定オブジェクト検出器の第k環境特定RPN(region proposal network)レイヤを通じて前記第k環境特定ROI情報を生成させ、前記(b)段階で、前記学習装置が、前記第k環境特定ROI情報及びこれに対応する前記第k環境特定オブジェクトラベルが参照されることで生成された第k環境特定RPNロスを最小化するように前記第k環境特定RPNレイヤをさらに学習させることを特徴とする。
【0016】
また、本発明の他の実施例によると、走行環境に適応するように自律走行車両のディープラーニング基盤のオブジェクト検出器をアップデートするための方法において、(a)第1走行環境に対応しており第1オブジェクトラベル及び第1セグメンテーションラベルを含む第1学習イメージ乃至第n走行環境に対応しており第nオブジェクトラベル及び第nセグメンテーションラベルを含む第n学習イメージのうち少なくとも一つの第k学習イメージ(前記kは1以上n以下の整数である)が獲得されると、学習装置が、(i)前記第k学習イメージを前記第1走行環境に対応する第1オブジェクト検出器乃至前記第n走行環境に対応する第nオブジェクト検出器のうち第k走行環境に対応する第k環境特定オブジェクト検出器に入力することで、前記第k環境特定オブジェクト検出器をもって、(i-1)前記第k環境特定オブジェクト検出器の少なくとも一つの第k環境特定コンボリューションレイヤを通じて前記第k学習イメージに少なくとも一回のコンボリューション演算を適用することで第k環境特定フィーチャーマップを生成させ、(i-2)前記第k環境特定オブジェクト検出器の第k環境特定プーリングレイヤを通じて前記第k環境特定フィーチャーマップにある少なくとも一つのオブジェクトを含むものとして予測された少なくとも一つの領域に対応する第k環境特定ROI情報を利用して前記第k環境特定フィーチャーマップに少なくとも一回のROIプーリング演算を適用することによって第k環境特定プーリングフィーチャーマップを生成させ、(i-3)前記第k環境特定オブジェクト検出器の第k環境特定FCレイヤを通じて前記第k環境特定プーリングフィーチャーマップに少なくとも一回のFC(fully connected)演算を適用することで第k環境特定オブジェクトディテクション情報を生成させ、(ii)前記第k環境特定フィーチャーマップを前記第1オブジェクト検出器に対応する第1ランクネットワーク乃至前記第nオブジェクト検出器に対応する第nランクネットワークのうち前記第k環境特定オブジェクト検出器に対応する第k環境特定ランクネットワークに入力することで、前記第k環境特定ランクネットワークをもって、(ii-1)前記第k環境特定ランクネットワークの少なくとも一つの第k環境特定デコンボリューションレイヤを通じて前記第k環境特定フィーチャーマップに少なくとも一回のデコンボリューション演算を適用することで第k環境特定セグメンテーションマップを生成させ、(ii-2)前記第k環境特定ランクネットワークの第k環境特定ディスクリミネータを通じて、前記第k学習イメージ上のメイン領域及びこれに対応する前記第k環境特定セグメンテーションマップ上の第1サブ領域がクロップされてコンカチネートされることによって生成される第k環境特定ランクマップがリアル(real)であるのかフェーク(fake)であるのかに関する情報を示す第k環境特定ランクスコアを生成させ、(iii)前記第k環境特定オブジェクトディテクション情報とこれに対応する第k環境特定オブジェクトラベルとが参照されることで生成された第k環境特定オブジェクトディテクションロスを最小化するように前記第k環境特定オブジェクト検出器を学習させ、前記第k環境特定ランクスコアを最大化するように前記第k環境特定デコンボリューションレイヤと前記第k環境特定コンボリューションレイヤとを学習させるプロセス、及び(iv)前記第k学習イメージ上の前記メイン領域及びこれに対応する第k環境特定セグメンテーションラベル上の第2サブ領域がクロップされてコンカチネートされることによって生成される第k環境特定ラベルランクマップに対する第k環境特定ラベルランクスコア(前記第k環境特定ラベルランクスコアは、前記第k環境特定ディスクリミネータを通じて生成される)を最大化するように、また、前記第k環境特定ランクスコアを最小化するように、前記第k環境特定ディスクリミネータを学習させるプロセスを遂行した状態で、アップデート装置が、前記自律走行車両の走行環境を示す走行環境イメージを獲得する段階;(b)前記アップデート装置が、(i)前記走行環境イメージを前記第1オブジェクト検出器乃至前記第nオブジェクト検出器のそれぞれに入力することで、前記第1オブジェクト検出器乃至前記第nオブジェクト検出器のそれぞれをもって、前記第1コンボリューションレイヤ乃至前記第nコンボリューションレイヤのそれぞれを通じて前記走行環境イメージに少なくとも一回のコンボリューション演算を適用することで第1走行環境フィーチャーマップ乃至第n走行環境フィーチャーマップのそれぞれを生成させ、(ii)前記第1走行環境フィーチャーマップ乃至前記第n走行環境フィーチャーマップのそれぞれを前記第1ランクネットワーク乃至前記第nランクネットワークのそれぞれに入力することで、前記第1ランクネットワーク乃至前記第nランクネットワークのそれぞれをもって、(ii-1)第1デコンボリューションレイヤ乃至第nデコンボリューションレイヤのそれぞれを通じて前記第1走行環境フィーチャーマップ乃至前記第n走行環境フィーチャーマップのそれぞれに少なくとも一回のデコンボリューション演算を適用することで第1走行環境セグメンテーションマップ乃至第n走行環境セグメンテーションマップのそれぞれを生成させ、(ii-2)前記第1ディスクリミネータ乃至前記第nディスクリミネータのそれぞれを通じて、前記走行環境イメージ上の第1走行メイン領域及びこれに対応する前記第1走行環境セグメンテーションマップ上の第1走行サブ領域がクロップされてコンカチネートされることによって生成される第1走行環境ランクマップ乃至前記走行環境イメージ上の第n走行メイン領域及びこれに対応する前記第n走行環境セグメンテーションマップ上の第n走行サブ領域がクロップされてコンカチネートされることによって生成される第n走行環境ランクマップのそれぞれがリアルであるのかフェークであるのかに関する情報をそれぞれ示す第1走行環境ランクスコア乃至第n走行環境ランクスコアのそれぞれを生成させる段階;及び(c)前記アップデート装置が、(i)前記第1走行環境ランクスコア乃至前記第n走行環境ランクスコアのうち最も高い値を有する特定の走行環境ランクスコアを生成した特定のランクネットワークに対応する特定のオブジェクト検出器を選択し、(ii)前記自律走行車両の現在のオブジェクト検出器を前記特定のオブジェクト検出器にアップデートする段階;を含む方法が提供される。
【0017】
前記(a)段階で、前記学習装置が、前記第k環境特定ランクネットワークをもって、前記第k環境特定ディスクリミネータを通じて、前記第k学習イメージ上の前記メイン領域及びこれに対応する少なくとも一つの第j環境特定セグメンテーションマップ(前記第j環境特定セグメンテーションマップは、前記第k環境特定コンボリューションレイヤを除いた少なくとも一つの第j環境特定コンボリューションレイヤを通じて前記第k学習イメージに前記コンボリューション演算が適用されることで少なくとも一つの第j環境特定フィーチャーマップが生成された後、前記第j環境特定コンボリューションレイヤに対応する少なくとも一つの第j環境特定デコンボリューションレイヤを通じて前記第j環境特定フィーチャーマップに前記デコンボリューション演算が適用されることによって生成され、前記jは1以上n以下の整数である)上の少なくとも一つの第3サブ領域がクロップされてコンカチネートされることによって生成される少なくとも一つの第j環境特定ランクマップがリアルであるのかフェークであるのかに関する情報を示す少なくとも一つの第j環境特定ランクスコアをさらに生成させ、前記第k環境特定ラベルランクスコアを最大化するように、また、前記第k環境特定ランクスコアと前記第j環境特定ランクスコアとのそれぞれを最小化するように、前記第k環境特定ディスクリミネータを学習させることを特徴とする。
【0018】
前記(a)段階で、前記学習装置が、前記第k環境特定セグメンテーションマップとこれに対応する前記第k環境特定セグメンテーションラベルとが参照されることで生成された第k環境特定セグメンテーションロスを最小化するように、また、前記第k環境特定ランクスコアを最大化するように、前記第k環境特定デコンボリューションレイヤと前記第k環境特定コンボリューションレイヤとのそれぞれを学習させることを特徴とする。
【0019】
前記第k環境特定ディスクリミネータは、コンボリューショナルPatchGAN分類器(Convolutional PatchGAN classifier)を含むことを特徴とする。
【0020】
前記(a)段階で、前記学習装置が、前記第k環境特定オブジェクト検出器をもって、前記第k環境特定オブジェクト検出器の第k環境特定RPN(region proposal network)レイヤを通じて前記第k環境特定ROI情報を生成させ、前記第k環境特定ROI情報及びこれに対応する前記第k環境特定オブジェクトラベルが参照されることで生成された第k環境特定RPNロスを最小化するように前記第k環境特定RPNレイヤをさらに学習させることを特徴とする。
【0021】
また、本発明のまた他の実施例によると、走行環境に適応するように自律走行車両のディープラーニング基盤のオブジェクト検出器をアップデートするための学習装置において、インストラクションを格納する少なくとも一つのメモリ;及び前記インストラクションを実行するために構成された少なくとも一つのプロセッサを含み、前記プロセッサは、(I)第1走行環境に対応しており第1オブジェクトラベル及び第1セグメンテーションラベルを含む第1学習イメージ乃至第n走行環境に対応しており第nオブジェクトラベル及び第nセグメンテーションラベルを含む第n学習イメージのうち少なくとも一つの第k学習イメージ(前記kは1以上n以下の整数である)が獲得されると、(i)前記第k学習イメージを前記第1走行環境に対応する第1オブジェクト検出器乃至前記第n走行環境に対応する第nオブジェクト検出器のうち第k走行環境に対応する第k環境特定オブジェクト検出器に入力することで、前記第k環境特定オブジェクト検出器をもって、(i-1)前記第k環境特定オブジェクト検出器の少なくとも一つの第k環境特定コンボリューションレイヤを通じて前記第k学習イメージに少なくとも一回のコンボリューション演算を適用することで第k環境特定フィーチャーマップを生成させ、(i-2)前記第k環境特定オブジェクト検出器の第k環境特定プーリングレイヤを通じて前記第k環境特定フィーチャーマップにある少なくとも一つのオブジェクトを含むものとして予測された少なくとも一つの領域に対応する第k環境特定ROI情報を利用して前記第k環境特定フィーチャーマップに少なくとも一回のROIプーリング演算を適用することによって第k環境特定プーリングフィーチャーマップを生成させ、(i-3)前記第k環境特定オブジェクト検出器の第k環境特定FCレイヤを通じて前記第k環境特定プーリングフィーチャーマップに少なくとも一回のFC(fully connected)演算を適用することで第k環境特定オブジェクトディテクション情報を生成させ、(ii)前記第k環境特定フィーチャーマップを前記第1オブジェクト検出器に対応する第1ランクネットワーク乃至前記第nオブジェクト検出器に対応する第nランクネットワークのうち前記第k環境特定オブジェクト検出器に対応する第k環境特定ランクネットワークに入力することで、前記第k環境特定ランクネットワークをもって、(ii-1)前記第k環境特定ランクネットワークの少なくとも一つの第k環境特定デコンボリューションレイヤを通じて前記第k環境特定フィーチャーマップに少なくとも一回のデコンボリューション演算を適用することで第k環境特定セグメンテーションマップを生成させ、(ii-2)前記第k環境特定ランクネットワークの第k環境特定ディスクリミネータを通じて、前記第k学習イメージ上のメイン領域及びこれに対応する前記第k環境特定セグメンテーションマップ上の第1サブ領域がクロップされてコンカチネートされることによって生成される第k環境特定ランクマップがリアル(real)であるのかフェーク(fake)であるのかに関する情報を示す第k環境特定ランクスコアを生成させるプロセス及び(II)(i)前記第k環境特定オブジェクトディテクション情報とこれに対応する第k環境特定オブジェクトラベルとが参照されることで生成された第k環境特定オブジェクトディテクションロスを最小化するように前記第k環境特定オブジェクト検出器を学習させ、前記第k環境特定ランクスコアを最大化するように前記第k環境特定デコンボリューションレイヤと前記第k環境特定コンボリューションレイヤとを学習させ、(ii)前記第k学習イメージ上の前記メイン領域及びこれに対応する第k環境特定セグメンテーションラベル上の第2サブ領域がクロップされてコンカチネートされることによって生成される第k環境特定ラベルランクマップに対する第k環境特定ラベルランクスコア(前記第k環境特定ラベルランクスコアは、前記第k環境特定ディスクリミネータを通じて生成される)を最大化するように、また、前記第k環境特定ランクスコアを最小化するように、前記第k環境特定ディスクリミネータを学習させるプロセスを遂行する学習装置が提供される。
【0022】
前記プロセッサは、前記(I)プロセスで、前記第k環境特定ランクネットワークをもって、前記第k環境特定ディスクリミネータを通じて、前記第k学習イメージ上の前記メイン領域及びこれに対応する少なくとも一つの第j環境特定セグメンテーションマップ(前記第j環境特定セグメンテーションマップは、前記第k環境特定コンボリューションレイヤを除いた少なくとも一つの第j環境特定コンボリューションレイヤを通じて前記第k学習イメージに前記コンボリューション演算が適用されることで少なくとも一つの第j環境特定フィーチャーマップが生成された後、前記第j環境特定コンボリューションレイヤに対応する少なくとも一つの第j環境特定デコンボリューションレイヤを通じて前記第j環境特定フィーチャーマップに前記デコンボリューション演算が適用されることによって生成され、前記jは1以上n以下の整数である)上の少なくとも一つの第3サブ領域がクロップされてコンカチネートされることによって生成される少なくとも一つの第j環境特定ランクマップがリアルであるのかフェークであるのかに関する情報を示す少なくとも一つの第j環境特定ランクスコアをさらに生成させ、前記(II)プロセスで、前記第k環境特定ラベルランクスコアを最大化するように、また、前記第k環境特定ランクスコアと前記第j環境特定ランクスコアとのそれぞれを最小化するように、前記第k環境特定ディスクリミネータを学習させることを特徴とする。
【0023】
前記プロセッサは、前記(II)プロセスで、前記第k環境特定セグメンテーションマップとこれに対応する前記第k環境特定セグメンテーションラベルとが参照されることで生成された第k環境特定セグメンテーションロスを最小化するように、また、前記第k環境特定ランクスコアを最大化するように、前記第k環境特定デコンボリューションレイヤと前記第k環境特定コンボリューションレイヤとのそれぞれを学習させることを特徴とする。
【0024】
前記第k環境特定ディスクリミネータは、コンボリューショナルPatchGAN分類器(Convolutional PatchGAN classifier)を含むことを特徴とする。
【0025】
前記プロセッサは、前記(I)プロセスで、前記第k環境特定オブジェクト検出器をもって、前記第k環境特定オブジェクト検出器の第k環境特定RPN(region proposal network)レイヤを通じて前記第k環境特定ROI情報を生成させ、前記(II)プロセスで、前記第k環境特定ROI情報及びこれに対応する前記第k環境特定オブジェクトラベルが参照されることで生成された第k環境特定RPNロスを最小化するように前記第k環境特定RPNレイヤをさらに学習させることを特徴とする。
【0026】
また、本発明のまた他の実施例によると、走行環境に適応するように自律走行車両のディープラーニング基盤のオブジェクト検出器をアップデートするためのアップデート装置において、インストラクションを格納する少なくとも一つのメモリ;及び前記インストラクションを実行するために構成された少なくとも一つのプロセッサを含み、前記プロセッサは、(I)第1走行環境に対応しており第1オブジェクトラベル及び第1セグメンテーションラベルを含む第1学習イメージ乃至第n走行環境に対応しており第nオブジェクトラベル及び第nセグメンテーションラベルを含む第n学習イメージのうち少なくとも一つの第k学習イメージ(前記kは1以上n以下の整数である)が獲得されると、学習装置が、(i)前記第k学習イメージを前記第1走行環境に対応する第1オブジェクト検出器乃至前記第n走行環境に対応する第nオブジェクト検出器のうち第k走行環境に対応する第k環境特定オブジェクト検出器に入力することで、前記第k環境特定オブジェクト検出器をもって、(i-1)前記第k環境特定オブジェクト検出器の少なくとも一つの第k環境特定コンボリューションレイヤを通じて前記第k学習イメージに少なくとも一回のコンボリューション演算を適用することで第k環境特定フィーチャーマップを生成させ、(i-2)前記第k環境特定オブジェクト検出器の第k環境特定プーリングレイヤを通じて前記第k環境特定フィーチャーマップにある少なくとも一つのオブジェクトを含むものとして予測された少なくとも一つの領域に対応する第k環境特定ROI情報を利用して前記第k環境特定フィーチャーマップに少なくとも一回のROIプーリング演算を適用することによって第k環境特定プーリングフィーチャーマップを生成させ、(i-3)前記第k環境特定オブジェクト検出器の第k環境特定FCレイヤを通じて前記第k環境特定プーリングフィーチャーマップに少なくとも一回のFC(fully connected)演算を適用することで第k環境特定オブジェクトディテクション情報を生成させ、(ii)前記第k環境特定フィーチャーマップを前記第1オブジェクト検出器に対応する第1ランクネットワーク乃至前記第nオブジェクト検出器に対応する第nランクネットワークのうち前記第k環境特定オブジェクト検出器に対応する第k環境特定ランクネットワークに入力することで、前記第k環境特定ランクネットワークをもって、(ii-1)前記第k環境特定ランクネットワークの少なくとも一つの第k環境特定デコンボリューションレイヤを通じて前記第k環境特定フィーチャーマップに少なくとも一回のデコンボリューション演算を適用することで第k環境特定セグメンテーションマップを生成させ、(ii-2)前記第k環境特定ランクネットワークの第k環境特定ディスクリミネータを通じて、前記第k学習イメージ上のメイン領域及びこれに対応する前記第k環境特定セグメンテーションマップ上の第1サブ領域がクロップされてコンカチネートされることによって生成される第k環境特定ランクマップがリアル(real)であるのかフェーク(fake)であるのかに関する情報を示す第k環境特定ランクスコアを生成させ、(iii)前記第k環境特定オブジェクトディテクション情報とこれに対応する第k環境特定オブジェクトラベルとが参照されることで生成された第k環境特定オブジェクトディテクションロスを最小化するように前記第k環境特定オブジェクト検出器を学習させ、前記第k環境特定ランクスコアを最大化するように前記第k環境特定デコンボリューションレイヤと前記第k環境特定コンボリューションレイヤとを学習させるプロセス、及び(iv)前記第k学習イメージ上の前記メイン領域及びこれに対応する第k環境特定セグメンテーションラベル上の第2サブ領域がクロップされてコンカチネートされることによって生成される第k環境特定ラベルランクマップに対する第k環境特定ラベルランクスコア(前記第k環境特定ラベルランクスコアは、前記第k環境特定ディスクリミネータを通じて生成される)を最大化するように、また、前記第k環境特定ランクスコアを最小化するように、前記第k環境特定ディスクリミネータを学習させるプロセスを遂行した状態で、前記自律走行車両の走行環境を示す走行環境イメージを獲得するプロセス、(II)(i)前記走行環境イメージを前記第1オブジェクト検出器乃至前記第nオブジェクト検出器のそれぞれに入力することで、前記第1オブジェクト検出器乃至前記第nオブジェクト検出器のそれぞれをもって、前記第1コンボリューションレイヤ乃至前記第nコンボリューションレイヤのそれぞれを通じて前記走行環境イメージに少なくとも一回のコンボリューション演算を適用することで第1走行環境フィーチャーマップ乃至第n走行環境フィーチャーマップのそれぞれを生成させ、(ii)前記第1走行環境フィーチャーマップ乃至前記第n走行環境フィーチャーマップのそれぞれを前記第1ランクネットワーク乃至前記第nランクネットワークのそれぞれに入力することで、前記第1ランクネットワーク乃至前記第nランクネットワークのそれぞれをもって、(ii-1)第1デコンボリューションレイヤ乃至第nデコンボリューションレイヤのそれぞれを通じて前記第1走行環境フィーチャーマップ乃至前記第n走行環境フィーチャーマップのそれぞれに少なくとも一回のデコンボリューション演算を適用することで第1走行環境セグメンテーションマップ乃至第n走行環境セグメンテーションマップのそれぞれを生成させ、(ii-2)前記第1ディスクリミネータ乃至前記第nディスクリミネータのそれぞれを通じて、前記走行環境イメージ上の第1走行メイン領域及びこれに対応する前記第1走行環境セグメンテーションマップ上の第1走行サブ領域がクロップされてコンカチネートされることによって生成される第1走行環境ランクマップ乃至前記走行環境イメージ上の第n走行メイン領域及びこれに対応する前記第n走行環境セグメンテーションマップ上の第n走行サブ領域がクロップされてコンカチネートされることによって生成される第n走行環境ランクマップのそれぞれがリアルであるのかフェークであるのかに関する情報をそれぞれ示す第1走行環境ランクスコア乃至第n走行環境ランクスコアのそれぞれを生成させるプロセス及び(III)(i)前記第1走行環境ランクスコア乃至前記第n走行環境ランクスコアのうち最も高い値を有する特定の走行環境ランクスコアを生成した特定のランクネットワークに対応する特定のオブジェクト検出器を選択し、(ii)前記自律走行車両の現在のオブジェクト検出器を前記特定のオブジェクト検出器にアップデートするプロセスを遂行するアップデート装置が提供される。
【0027】
前記(I)プロセスで、前記学習装置が、前記第k環境特定ランクネットワークをもって、前記第k環境特定ディスクリミネータを通じて、前記第k学習イメージ上の前記メイン領域及びこれに対応する少なくとも一つの第j環境特定セグメンテーションマップ(前記第j環境特定セグメンテーションマップは、前記第k環境特定コンボリューションレイヤを除いた少なくとも一つの第j環境特定コンボリューションレイヤを通じて前記第k学習イメージに前記コンボリューション演算が適用されることで少なくとも一つの第j環境特定フィーチャーマップが生成された後、前記第j環境特定コンボリューションレイヤに対応する少なくとも一つの第j環境特定デコンボリューションレイヤを通じて前記第j環境特定フィーチャーマップに前記デコンボリューション演算が適用されることによって生成され、前記jは1以上n以下の整数である)上の少なくとも一つの第3サブ領域がクロップされてコンカチネートされることによって生成される少なくとも一つの第j環境特定ランクマップがリアルであるのかフェークであるのかに関する情報を示す少なくとも一つの第j環境特定ランクスコアをさらに生成させ、前記第k環境特定ラベルランクスコアを最大化するように、また、前記第k環境特定ランクスコアと前記第j環境特定ランクスコアとのそれぞれを最小化するように、前記第k環境特定ディスクリミネータを学習させることを特徴とする。
【0028】
前記(I)プロセスで、前記学習装置が、前記第k環境特定セグメンテーションマップとこれに対応する前記第k環境特定セグメンテーションラベルとが参照されることで生成された第k環境特定セグメンテーションロスを最小化するように、また、前記第k環境特定ランクスコアを最大化するように、前記第k環境特定デコンボリューションレイヤと前記第k環境特定コンボリューションレイヤとのそれぞれを学習させることを特徴とする。
【0029】
前記第k環境特定ディスクリミネータは、コンボリューショナルPatchGAN分類器(Convolutional PatchGAN classifier)を含むことを特徴とする。
【0030】
前記(I)プロセスで、前記学習装置が、前記第k環境特定オブジェクト検出器をもって、前記第k環境特定オブジェクト検出器の第k環境特定RPN(region proposal network)レイヤを通じて前記第k環境特定ROI情報を生成させ、前記第k環境特定ROI情報及びこれに対応する前記第k環境特定オブジェクトラベルが参照されることで生成された第k環境特定RPNロスを最小化するように前記第k環境特定RPNレイヤをさらに学習させることを特徴とする。
【発明の効果】
【0031】
本発明は、自律走行車両が様々な走行環境でも円滑に走行することができるようにする効果がある。
【0032】
また、本発明は、自律走行車両のオブジェクト検出器をそれぞれの走行環境に適した最適のオブジェクト検出器にアップデートすることができる効果がある。
【図面の簡単な説明】
【0033】
本発明の実施例の説明に利用されるために添付された以下の各図面は、本発明の実施例のうち単に一部であるに過ぎず、本発明の属する技術分野において通常の知識を有する者(以下「通常の技術者」)にとっては、発明的作業が行われずにこれらの図面に基づいて他の各図面が得られ得る。
【0034】
【
図1】
図1は、本発明の一実施例において、それぞれの走行環境に対応するそれぞれのオブジェクト検出器及びこれに対応するそれぞれのランクネットワークを学習させる学習装置を簡略に示した図面である。
【
図2】
図2は、本発明の一実施例において、学習装置が走行環境に適応するように自律走行車両のディープラーニング基盤のオブジェクト検出器をアップデートするために、それぞれのオブジェクト検出器及びこれに対応するそれぞれのランクネットワークを学習させる過程を簡略に示した図面である。
【
図3】
図3は、本発明の一実施例において、学習装置が走行環境に適応するように自律走行車両のディープラーニング基盤のオブジェクト検出器をアップデートするために、それぞれのオブジェクト検出器及びこれに対応するそれぞれのランクネットワークを学習させる過程を簡略に示した図面である。
【
図4】
図4は、本発明の一実施例において、特定の走行環境に適応するように自律走行車両のオブジェクト検出器を特定のオブジェクト検出器にアップデートするアップデート装置を簡略に示した図面である。
【
図5】
図5は、本発明の一実施例において、アップデート装置が自律走行車両のオブジェクト検出器を特定のオブジェクト検出器にアップデートする過程を簡略に示した図面である。
【
図6】
図6は、本発明の一実施例において、アップデート装置が自律走行車両のオブジェクト検出器を特定のオブジェクト検出器にアップデートする過程を簡略に示した図面である。
【
図7】
図7は、本発明の一実施例において、アップデート装置が自律走行車両のオブジェクト検出器を特定のオブジェクト検出器にアップデートするための方法を簡略に示した図面である。
【発明を実施するための形態】
【0035】
後述する本発明に関する詳細な説明は、本発明の各目的、各技術的解法、及び各長所を明らかにするために本発明が実施され得る特定の実施例を例示として示す添付図面を参照する。これらの実施例は、通常の技術者が本発明を実施することができるように十分詳細に説明される。
【0036】
また、本発明の詳細な説明及び各請求項にわたって、「含む」という単語及びそれらの変形は、他の技術的各特徴若しくは各付加物、構成要素又は段階を除外することを意図したものではない。通常の技術者にとって本発明の他の各目的、長所及び各特性が、一部は、本明細書から、また一部は、本発明の実施から明らかになるであろう。以下の例示及び図面は実例として提供され、本発明を限定することを意図したものではない。
【0037】
さらに、本発明は、本明細書に示された実施例のすべての可能な組合せを網羅する。本発明の多様な実施例は互いに異なるが、相互に排他的である必要はないことが理解されるべきである。例えば、ここに記載されている特定の形状、構造及び特性は、一実施例に関連して本発明の精神及び範囲を逸脱せず、かつ他の実施例で具現され得る。また、それぞれの開示された実施例内の個別の構成要素の位置又は配置は、本発明の精神及び範囲を逸脱せず、かつ変更され得ることが理解されるべきである。したがって、後述の詳細な説明は、限定的な意味として受け取られるものではなく、本発明の範囲は適切に説明されるのであれば、その請求項が主張することと均等な全ての範囲とともに添付された請求項によってのみ限定される。図面において類似の参照符号は、様々な態様にわたって同一であるか、又は類似の機能を指す。
【0038】
本発明で言及している各種イメージは、舗装または非舗装道路関連のイメージを含み得、この場合、道路環境で登場し得る物体(例えば、自動車、人、動物、植物、物、建物、飛行機やドローンのような飛行体、その他の障害物)を想定し得るが、必ずしもこれに限定されるものではなく、本発明で言及している各種イメージは、道路と関係のないイメージ(例えば、非舗装道路、路地、空き地、海、湖、川、山、森、砂漠、空、室内と関連したイメージ)でもあり得、この場合、非舗装道路、路地、空き地、海、湖、川、山、森、砂漠、空、室内環境で登場し得る物体(例えば、自動車、人、動物、植物、物、建物、飛行機やドローンのような飛行体、その他の障害物)を想定し得るが、必ずしもこれに限定されるものではない。
【0039】
ここに提供される本発明の名称や概要は単に便宜のために提供されるもので、この実施形態の範囲または意味を制限し、または限定的に解釈されるものではない。
【0040】
以下、本発明の属する技術分野において通常の知識を有する者が本発明を容易に実施し得るようにするために、本発明の好ましい実施例について、添付された図面を参照して詳細に説明することにする。
【0041】
以下の説明では、自動車を例に挙げて説明するが、本発明がこれに限定されるわけではなく、軍事、監視などの分野のように少なくとも一つのカメラが少なくとも一つの所定領域の少なくとも一つのオブジェクトを検出する分野にはどこでも適用され得る。
【0042】
図1は、本発明の一実施例において、それぞれの走行環境に対応するそれぞれのオブジェクト検出器及びこれに対応するそれぞれのランクネットワークを学習させる学習装置1000を簡略に示した図面であり、学習装置1000は、それぞれの走行環境に対応するそれぞれのオブジェクト検出器及びこれに対応するそれぞれのランクネットワークを学習させるためのインストラクションを格納するメモリ1001と、メモリ1001に格納されたインストラクションに対応してそれぞれの走行環境に対応するそれぞれのオブジェクト検出器及びこれに対応するそれぞれのランクネットワークを学習させる動作を遂行するプロセッサ1002とを含むことができる。
【0043】
具体的に、学習装置1000は、典型的にコンピューティング装置(例えば、コンピュータプロセッサ、メモリ、ストレージ、入力装置及び出力装置、その他既存のコンピューティング装置の構成要素を含むことができる装置;ルータ、スイッチなどのような電子通信装置;ネットワーク接続ストレージ(NAS)及びストレージ領域ネットワーク(SAN)のような電子情報ストレージシステム)及びコンピュータソフトウェア(即ち、コンピューティング装置をもって特定の方式で機能させる各インストラクション)の組合せを利用して所望のシステム性能を達成するものであり得る。
【0044】
また、コンピューティング装置のプロセッサはMPU(Micro Processing Unit)またはCPU(Central Processing Unit)、キャッシュメモリ(Cache Memory)、データバス(Data Bus)などのハードウェア構成を含むことができる。また、コンピューティング装置はオペレーティングシステム、特定の目的を遂行するアプリケーションのソフトウェア構成をさらに含むことができる。
【0045】
しかし、コンピューティング装置が本発明を実施するためのミディアム、プロセッサ及びメモリが統合された形態である統合プロセッサを含む場合を排除するわけではない。
【0046】
このように構成された学習装置1000を利用して走行環境に適応するように自律走行車両のディープラーニング基盤のオブジェクト検出器をアップデートするための学習方法について
図2及び
図3を参照して説明すると以下の通りである。
【0047】
参考として、下記でそれぞれの構成要素が単数で記載されたとしても、複数の可能性を排除するわけではない。
【0048】
一例として、本発明の学習装置は、複数のオブジェクト検出器(例えば、n個のオブジェクト検出器)とこれに対応する複数のランクネットワーク(例えば、n個のランクネットワーク)をそれぞれ学習させることができ、
図2は、便宜上、第k走行環境に対応する第k環境特定オブジェクト検出器1100-k及びこれに対応する第k環境特定ランクネットワーク1200-kのみを代表的に示している。この際、nは1以上の整数であり得る。また、kは1以上であり、n以下の整数であり得る。
【0049】
図2を参照すると、第k環境特定オブジェクト検出器1100-kは、第k環境特定コンボリューションレイヤ、第k環境特定プーリングレイヤ、第k環境特定RPN(region proposal network)及び第k環境特定FCレイヤ(fully connected layer)のうち少なくとも一部を含むことができる。
【0050】
また、第k環境特定ランクネットワーク1200-kは、第k環境特定デコンボリューションレイヤ及び第k環境特定ディスクリミネータ(discriminator)を含むことができる。
【0051】
この際、第k環境特定ディスクリミネータを含むそれぞれのディスクリミネータは、分類(classification)演算を遂行する分類器(classifier)であり得、一例として、前記分類器は、コンボリューショナルPatchGAN分類器(Convolutional PatchGAN classifier)であり得る。
【0052】
参考として、前記ディスクリミネータは、generative adversarial network(GAN)モデルのディスクリミネータであり得る。
【0053】
一般的に、GANモデルは、ジェネレータ(generator)及びディスクリミネータを含むことができるが、(i)ジェネレータは、入力を変換してフェークイメージ(fake image、例えば、セグメンテーションマップ)を生成することができ、(ii)ディスクリミネータは、獲得された入力(例えば、ジェネレータから出力されたセグメンテーションマップ)がフェークイメージ(fake image)であるのかリアルイメージ(real image)であるのかに関する情報を示す確率値を出力することができる。
【0054】
この際、ジェネレータは、コンボリューションレイヤ及びデコンボリューションレイヤを含むことができる。従って、以下では、第k環境特定ジェネレータが、第k環境特定コンボリューションレイヤ及び第k環境特定デコンボリューションレイヤを含むものとして説明する。
【0055】
まず、学習装置1000の動作について具体的に説明すると、第k走行環境に対応しており第kオブジェクトラベル及び第kセグメンテーションラベルを含む少なくとも一つの第k学習イメージが全体の学習イメージの中から選択され得る。この際、全体の学習イメージは、第1学習イメージ乃至第n学習イメージを含むことができる。また、第1学習イメージのそれぞれは、第1走行環境に対応しており第1オブジェクトラベル及び第1セグメンテーションラベルを含むことができ、第n学習イメージのそれぞれは、第n走行環境に対応しており第nオブジェクトラベル及び第nセグメンテーションラベルを含むことができる。この際、nは1以上の整数であり、kは1以上n以下の整数であり得る。
【0056】
例えば、第1走行環境乃至第n走行環境には、都心地における走行環境、郊外における走行環境、山岳地帯における走行環境、海岸における走行環境、雨が降っている走行環境及び雪が降っている走行環境のうち少なくとも一部が該当し得る。ただし、これは様々な走行環境に対する例示に過ぎず、第1走行環境乃至第n走行環境には、自律走行車両が直面する可能性のある任意の走行環境のうち少なくとも一部が含まれ得る。
【0057】
そして、学習装置1000は、第k学習イメージを第1走行環境に対応する第1オブジェクト検出器乃至第n走行環境に対応する第nオブジェクト検出器のうち第k走行環境に対応する第k環境特定オブジェクト検出器1100-kに入力することで、第k環境特定オブジェクト検出器1100-kをもって、第k学習イメージに含まれた少なくとも一つのオブジェクトに対してオブジェクト検出を遂行し、第k環境特定オブジェクトディテクション情報を生成させることができる。
【0058】
一例として、学習装置1000は、第k学習イメージを第k環境特定オブジェクト検出器1100-kに入力することで、第k環境特定オブジェクト検出器1100-kをもって(i)第k環境特定オブジェクト検出器1100-kの少なくとも一つの第k環境特定コンボリューションレイヤを通じて第k学習イメージに少なくとも一回のコンボリューション演算を適用することで第k環境特定フィーチャーマップを生成させ、(ii)第k環境特定オブジェクト検出器1100-kの第k環境特定プーリングレイヤを通じて第k環境特定フィーチャーマップにある少なくとも一つのオブジェクトを含むものとして予測された少なくとも一つの領域に対応する第k環境特定ROI情報を利用して第k環境特定フィーチャーマップにROIプーリング演算を適用することによって第k環境特定プーリングフィーチャーマップを生成させ、(iii)第k環境特定オブジェクト検出器1100-kの第k環境特定FCレイヤを通じて第k環境特定プーリングフィーチャーマップに少なくとも一回のFC(fully connected)演算を適用することで第k環境特定オブジェクトディテクション情報を生成させることができる。
【0059】
この際、学習装置1000は、第k環境特定オブジェクト検出器1100-kをもって、第k環境特定オブジェクト検出器1100-kの第k環境特定RPN(region proposal network)レイヤを通じて第k環境特定ROI情報を生成させることができる。
【0060】
また、学習装置1000は、第k環境特定フィーチャーマップを第1オブジェクト検出器に対応する第1ランクネットワーク乃至第nオブジェクト検出器に対応する第nランクネットワークのうち第k環境特定オブジェクト検出器1100-kに対応する第k環境特定ランクネットワーク1200-kに入力することで、第k環境特定ランクネットワーク1200-kをもって、第k環境特定ランクネットワーク1200-kの少なくとも一つの第k環境特定デコンボリューションレイヤを通じて第k環境特定フィーチャーマップに少なくとも一回のデコンボリューション演算を適用することで第k環境特定セグメンテーションマップを生成させることができる。
【0061】
参考として、第k環境特定ジェネレータは、第k環境特定コンボリューションレイヤ及び第k環境特定デコンボリューションレイヤを含むことができる。この際、第k環境特定ディスクリミネータに対応する第k環境特定ジェネレータは、第k環境特定コンボリューションレイヤを第k環境特定オブジェクト検出器1100-kと共有することができる。
【0062】
即ち、第k環境特定ジェネレータは、第k学習イメージに対応する出力として第k環境特定セグメンテーションマップを生成することができる。
【0063】
そして、学習装置1000は、第k環境特定ランクネットワーク1200-kをもって、第k環境特定ディスクリミネータを通じて、第k学習イメージ上のメイン領域及びこれに対応する第k環境特定セグメンテーションマップ上の少なくとも一つの第1サブ領域がクロップされてコンカチネートされることによって生成される第k環境特定ランクマップがリアル(real)であるのかフェーク(fake)であるのかに関する情報を示す第k環境特定ランクスコアを生成させることができる。
【0064】
具体的に説明すると、第k環境特定ディスクリミネータに入力される第k環境特定ランクマップは、第k環境特定ジェネレータから出力される第k環境特定セグメンテーションマップに関する情報だけでなく、第k学習イメージに関する情報も含むことができる。これは、第k環境特定ディスクリミネータをもって、第k環境特定ディスクリミネータに入力される第k環境特定ランクマップがリアルであるのかフェークであるのかを判断させることにおいて、より豊富な情報に基づいて判断することができるようにするためである。参考として、(i)第k学習イメージ上のメイン領域、(ii)第k環境特定セグメンテーションマップ上の第1サブ領域、(iii)後述する第k環境特定セグメンテーションラベル上の第2サブ領域、(iv)後述する少なくとも一つの第j環境特定セグメンテーションマップ上の第3サブ領域のそれぞれは、同一の領域に対応する領域であり得る。
【0065】
そして、学習装置1000は、(i)第k環境特定オブジェクトディテクション情報とこれに対応する第k環境特定オブジェクトラベルとが参照されることで生成された第k環境特定オブジェクトディテクションロスを最小化するように第k環境特定オブジェクト検出器1100-kを学習させ、第k環境特定ランクスコアを最大化するように第k環境特定デコンボリューションレイヤと第k環境特定コンボリューションレイヤとを学習させるプロセス、及び(ii)第k環境特定ラベルランクマップに対する第k環境特定ラベルランクスコアを最大化するように、また、第k環境特定ランクスコアを最小化するように、第k環境特定ディスクリミネータを学習させるプロセスを遂行することができる。この際、第k環境特定ラベルランクマップは、第k学習イメージ上のメイン領域及びこれに対応する第k環境特定セグメンテーションラベル上の第2サブ領域がクロップされてコンカチネートされることによって生成され得る。また、第k環境特定ラベルランクスコアは、第k環境特定ディスクリミネータにより生成され得る。
【0066】
また、学習装置1000は、第k環境特定セグメンテーションマップとこれに対応する第k環境特定セグメンテーションラベルとが参照されることで生成された第k環境特定セグメンテーションロスを最小化するように、また、第k環境特定ランクスコアを最大化するように、第k環境特定デコンボリューションレイヤと第k環境特定コンボリューションレイヤとのそれぞれを学習させることができる。
【0067】
また、学習装置1000は、第k環境特定ROI情報及びこれに対応する第k環境特定オブジェクトラベルが参照されることで生成された第k環境特定RPNロスを最小化するように第k環境特定RPNレイヤをさらに学習させることができる。
【0068】
以下では、ディスクリミネータの性能をさらに向上させるための学習方法を説明する。
【0069】
図3を参照すると、学習装置1000は、第k環境特定ディスクリミネータを通じて、第k環境特定ランクマップがリアルであるのかフェークであるのかに関する情報を示す第k環境特定ランクスコアを生成することができる。この際、第k環境特定ランクマップは、第k学習イメージ上のメイン領域及びこれに対応する第k環境特定セグメンテーションマップ上の第1サブ領域がクロップされてコンカチネートされることによって生成され得る。
【0070】
また、学習装置1000は、第k環境特定ディスクリミネータを通じて、少なくとも一つの第j環境特定ランクマップがリアルであるのかフェークであるのかに関する情報を示す少なくとも一つの第j環境特定ランクスコアをさらに生成することができる。この際、第j環境特定ランクマップは、第k学習イメージ上のメイン領域及びこれに対応する第j環境特定セグメンテーションマップ上の第3サブ領域がクロップされてコンカチネートされることによって生成され得る。また、jは、k値とは異なる、1以上n以下の整数であり得る。
【0071】
この際、第j環境特定セグメンテーションマップは、第k環境特定ディスクリミネータに対応する第k環境特定ジェネレータを除いた、少なくとも一つの第j環境特定ジェネレータにより生成され得る。
【0072】
参考として、第j環境特定ジェネレータは、第k環境特定ディスクリミネータに対応する第k環境特定コンボリューションレイヤを除いた、第j環境特定コンボリューションレイヤ及びこれに対応する第j環境特定デコンボリューションレイヤを含むことができる。
【0073】
即ち、少なくとも一つの第j環境特定セグメンテーションマップは、少なくとも一つの第j環境特定コンボリューションレイヤを通じて第k学習イメージにコンボリューション演算が適用されることによって第j環境特定フィーチャーマップが生成された後、第j環境特定コンボリューションレイヤに対応する第j環境特定デコンボリューションレイヤを通じて第j環境特定フィーチャーマップにデコンボリューション演算が適用されることによって生成され得る。
【0074】
一例として、学習装置1000は、第1ディスクリミネータの性能をさらに向上させるために、(i)第1ジェネレータを除いた第2ジェネレータ乃至第nジェネレータのうち第3ジェネレータを通じて第1学習イメージに対する第3環境特定セグメンテーションマップを出力し、(ii)第1ランクネットワークをもって第1ディスクリミネータを通じて第3環境特定ランクマップに対する第3環境特定ランクスコアをさらに生成させることができる。この際、第3環境特定セグメンテーションマップは、第1ディスクリミネータに対応する第1走行環境に対応する。また、第3環境特定ランクマップは、第1学習イメージ上の第1メイン領域及びこれに対応する第3環境特定セグメンテーションマップ上の第3サブ領域がクロップされてコンカチネートされることによって生成され得る。
【0075】
他の例として、学習装置1000は、第1ディスクリミネータの性能をさらに向上させるために、(i)(i-1)第5ジェネレータを通じて第1学習イメージに対する第5環境特定セグメンテーションマップを出力し、(i-2)第7ジェネレータを通じて第1学習イメージに対する第7環境特定セグメンテーションマップを出力し、(ii)第1ランクネットワークをもって第1ディスクリミネータを通じて第5環境特定ランクマップに対する第5環境特定ランクスコア及び第7環境特定ランクマップに対する第7環境特定ランクスコアのそれぞれをさらに生成させることができる。この際、第5環境特定セグメンテーションマップ及び第7環境特定セグメンテーションマップは、第1ディスクリミネータに対応する第1走行環境に対応する。また、第5環境特定ランクマップは、第1学習イメージ上の第1メイン領域及びこれに対応する第5環境特定セグメンテーションマップ上の第3サブ領域がクロップされてコンカチネートされることによって生成され得る。また、第7環境特定ランクマップは、第1学習イメージ上の第1メイン領域及びこれに対応する第7環境特定セグメンテーションマップ上の第3サブ領域がクロップされてコンカチネートされることによって生成され得る。
【0076】
そして、学習装置1000は、第k環境特定ラベルランクスコアを最大化するように、また、第k環境特定ランクスコアと第j環境特定ランクスコアのそれぞれを最小化するように、第k環境特定ディスクリミネータを学習させることができる。
【0077】
以下では、オブジェクト検出器及びそれに対応するランクネットワークを学習させるために利用される目的関数(objective function)について説明する。
【0078】
まず、(i)ディスクリミネータと(ii)それに対応するコンボリューションレイヤ及びデコンボリューションレイヤとを含むジェネレータを学習させるために使用されるGANロスは、次の数式1を利用して計算され得る。
【数1】
【0079】
前記で、xは学習イメージ、yはセグメンテーションラベル、G(x)はジェネレータから出力されるセグメンテーションマップ、D(x,y)は学習イメージ上のメイン領域及びこれに対応するセグメンテーションラベル上の第2サブ領域がクロップされてコンカチネートされることによって生成されるラベルランクマップに対するディスクリミネータの出力であるラベルランクスコア、D(x,G(x))は学習イメージ上のメイン領域及びこれに対応するセグメンテーションマップ上の第1サブ領域がクロップされてコンカチネートされることによって生成されたランクマップに対するディスクリミネータの出力であるランクスコアであり得る。
【0080】
そして、セグメンテーションロスは、次の数式2を利用して計算され得る。
【数2】
【0081】
前記で、Lceは、クロスエントロピー(cross entropy)ロスであり得る。
【0082】
次に、オブジェクトディテクションロスは、次の数式3を利用して計算され得る。
【数3】
【0083】
前記で、R(x)はRPNから出力されるROI情報、O(x)はオブジェクト検出器から出力されるオブジェクトディテクション情報、yrpnはオブジェクトラベルに含まれてRPNレイヤから出力されるターゲット(target)ラベル、ydetはオブジェクトラベルに含まれてオブジェクト検出器から出力されるターゲットラベルであり得る。
【0084】
そして、ディスクリミネータを学習するためのディスクリミネータロスは、次の数式4を利用して計算され得る。この際、ディスクリミネータロスは、学習対象である特定のディスクリミネータに対応する特定のジェネレータを除いた他のジェネレータに関する情報を参照することで計算され得る。
【数4】
【0085】
前記でGn(x)は特定のディスクリミネータに対応する特定のジェネレータを除いた少なくとも一つの他のジェネレータから出力される少なくとも一つの他のセグメンテーションマップ、D(x,Gn(x))は学習イメージ上のメイン領域及びこれに対応する少なくとも一つの他のセグメンテーションマップ上の第3サブ領域がクロップされてコンカチネートされることによって生成されるランクマップに対する特定のディスクリミネータの出力であるランクスコアであり得る。
【0086】
これを総合すると、数式1乃至数式4を参照した目的関数(objective function)は、次の数式5のように表され得る。
【数5】
【0087】
参考として、前記でλはセグメンテーションロスを調節するために選択可能な任意の値であり得る。
【0088】
学習装置1000は、数式5の目的関数(objective function)を利用してオブジェクト検出器1100及びそれに対応するランクネットワークを次のような方法により学習させることができる。
【0089】
【0090】
【0091】
【0092】
【0093】
【0094】
【0095】
参考として、上記で説明したように、学習装置1000は、(i)それぞれのジェネレータに含まれるコンボリューションレイヤ及びデコンボリューションレイヤ、(ii)それぞれのオブジェクト検出器、(iii)それぞれのRPNレイヤを学習させた後、それぞれのジェネレータに対応するそれぞれのディスクリミネータを学習させることができるが、これに限定されるわけではない。例えば、学習装置1000は、それぞれのジェネレータに対応するそれぞれのディスクリミネータを学習させた後、それぞれのディスクリミネータに対応する(i)それぞれのジェネレータに含まれるコンボリューションレイヤ及びデコンボリューションレイヤ、(ii)それぞれのオブジェクト検出器、(iii)それぞれのRPNレイヤを学習させることもできる。
【0096】
このように、それぞれのジェネレータ、それぞれのディスクリミネータ及びそれぞれのオブジェクト検出器が学習された状態で、走行環境イメージが獲得される場合のアップデート装置の動作について、
図4乃至
図7を参照して説明する。
【0097】
まず、
図4を参照して、自律走行車両のオブジェクト検出器を特定の走行環境に適した特定のオブジェクト検出器にアップデートするアップデート装置について説明する。この際、特定の走行環境に適した特定のオブジェクト検出器は、特定の走行環境に最適化されたオブジェクト検出器であり得る。
【0098】
アップデート装置2000は、自律走行車両のオブジェクト検出器を特定の走行環境に対応する特定のオブジェクト検出器にアップデートするためのインストラクションを格納するメモリ2001と、メモリ2001に格納されたインストラクションに対応して自律走行車両のオブジェクト検出器を特定の走行環境に対応する特定のオブジェクト検出器にアップデートする動作を遂行するプロセッサ2002とを含むことができる。
【0099】
具体的に、アップデート装置2000は、典型的にコンピューティング装置(例えば、コンピュータプロセッサ、メモリ、ストレージ、入力装置及び出力装置、その他既存のコンピューティング装置の構成要素を含むことができる装置;ルータ、スイッチなどのような電子通信装置;ネットワーク接続ストレージ(NAS)及びストレージ領域ネットワーク(SAN)のような電子情報ストレージシステム)及びコンピュータソフトウェア(即ち、コンピューティング装置をもって特定の方式で機能させる各インストラクション)の組合せを利用して所望のシステム性能を達成するものであり得る。
【0100】
また、コンピューティング装置のプロセッサはMPU(Micro Processing Unit)またはCPU(Central Processing Unit)、キャッシュメモリ(Cache Memory)、データバス(Data Bus)などのハードウェア構成を含むことができる。また、コンピューティング装置はオペレーティングシステム、特定の目的を遂行するアプリケーションのソフトウェア構成をさらに含むことができる。
【0101】
しかし、コンピューティング装置が本発明を実施するためのミディアム、プロセッサ及びメモリが統合された形態である統合プロセッサを含む場合を排除するわけではない。
【0102】
この際、アップデート装置2000は、
図1に示された学習装置1000と同一の装置であるか、互いに別個の装置であり得る。
【0103】
図5を参照すると、自律走行車両のビジョンシステム(vision system)3000から自律走行車両の走行環境を示す走行環境イメージが獲得されると、アップデート装置2000は、第1ランクネットワーク乃至第nランクネットワークのそれぞれをもって、走行環境イメージに対応する第1走行環境ランクスコア乃至第n走行環境ランクスコアのそれぞれを生成させることができる。
【0104】
そして、アップデート装置2000は、(i)第1走行環境ランクスコア乃至第n走行環境ランクスコアのうち最も高い値を有する特定の走行環境ランクスコアを生成した特定のランクネットワークに対応する特定のオブジェクト検出器を選択し、(ii)自律走行車両の現在のオブジェクト検出器を特定のオブジェクト検出器にアップデートすることができる。
【0105】
一例として、アップデート装置2000は、自律走行車両のビジョンシステム3000に最適のオブジェクト検出器を有線で伝送することによって自律走行車両の現在のオブジェクト検出器を特定のオブジェクト検出器にアップデートすることができる。
【0106】
他の例として、アップデート装置2000は、自律走行車両のビジョンシステム3000に最適のオブジェクト検出器を無線で伝送することによって自律走行車両の現在のオブジェクト検出器を特定のオブジェクト検出器にアップデートすることができる。
【0107】
即ち、アップデート装置2000は、over-the-air(OTA)方式を利用して自律走行車両のビジョンシステム3000に最適のオブジェクト検出器を伝送することによって、自律走行車両の現在のオブジェクト検出器を特定のオブジェクト検出器にアップデートすることができる。
【0108】
以下では、
図6を参照して自律走行車両の現在のオブジェクト検出器が特定のオブジェクト検出器にアップデートされる過程についてより具体的に説明する。
【0109】
まず、学習装置1000により、データベースから獲得された第1学習イメージ乃至第n学習イメージが利用されて第1ランクネットワーク乃至第nランクネットワーク、及び第1オブジェクト検出器乃至第nオブジェクト検出器が学習され、学習された第1ランクネットワーク乃至学習された第nランクネットワーク、及び学習された第1オブジェクト検出器乃至学習された第nオブジェクト検出器が所定の格納空間に格納された状態でS601、自律走行車両のビジョンシステム3000から走行環境イメージが獲得されるとS602、アップデート装置2000は、所定の格納空間に格納された第1ランクネットワーク乃至第nランクネットワークのそれぞれをもって走行環境イメージに対応する第1走行環境ランクスコア乃至第n走行環境ランクスコアのそれぞれを生成させることができる。
【0110】
そして、アップデート装置2000は、(i)第1走行環境ランクスコア乃至第n走行環境ランクスコアのうち最も高い値を有する特定の走行環境ランクスコアを生成した特定のランクネットワークに対応する特定のオブジェクト検出器を選択し、(ii)特定のオブジェクト検出器を自律走行車両のビジョンシステム3000に伝送S603することで、自律走行車両の現在のオブジェクト検出器を特定のオブジェクト検出器にアップデートすることができる。
【0111】
以下では、アップデート装置が自律走行車両のオブジェクト検出器を特定のオブジェクト検出器にアップデートする方法について、
図7を参照して説明する。
【0112】
参考として、本発明のアップデート装置2000は、第1オブジェクト検出器乃至第nオブジェクト検出器のそれぞれとこれに対応するそれぞれの第1ランクネットワーク乃至第nランクネットワークとのうち少なくとも一部に対して動作を遂行することができ、
図7は、便宜上、第k走行環境に対応する第k環境特定オブジェクト検出器1100-k及びこれに対応する第k環境特定ランクネットワーク1200-kのみを代表的に示している。
【0113】
まず、走行環境イメージが獲得されると、アップデート装置2000は、(i)走行環境イメージを第1オブジェクト検出器乃至第nオブジェクト検出器のそれぞれに入力することで、第1オブジェクト検出器乃至第nオブジェクト検出器のそれぞれをもって、第1コンボリューションレイヤ乃至第nコンボリューションレイヤのそれぞれを通じて走行環境イメージに少なくとも一回のコンボリューション演算を適用することで第1走行環境フィーチャーマップ乃至第n走行環境フィーチャーマップのそれぞれを生成させ、(ii)第1走行環境フィーチャーマップ乃至第n走行環境フィーチャーマップのそれぞれを第1ランクネットワーク乃至第nランクネットワークのそれぞれに入力することで、第1ランクネットワーク乃至第nランクネットワークのそれぞれをもって、(ii-1)第1デコンボリューションレイヤ乃至第nデコンボリューションレイヤのそれぞれを通じて第1走行環境フィーチャーマップ乃至第n走行環境フィーチャーマップのそれぞれに少なくとも一回のデコンボリューション演算を適用することで第1走行環境セグメンテーションマップ乃至第n走行環境セグメンテーションマップのそれぞれを生成させ、(ii-2)第1ディスクリミネータ乃至第nディスクリミネータのそれぞれを通じて、第1走行環境ランクスコア乃至第n走行環境ランクスコアのそれぞれを生成させることができる。この際、第1走行環境ランクスコアは、第1走行環境ランクマップがリアルであるのかフェークであるのかに関する情報を示すことができる。また、第1走行環境ランクマップは、走行環境イメージ上の第1走行メイン領域及びこれに対応する第1走行環境セグメンテーションマップ上の第1走行サブ領域がクロップされてコンカチネートされることによって生成され得る。また、第n走行環境ランクスコアは、第n走行環境ランクマップがリアルであるのかフェークであるのかに関する情報を示すことができる。また、第n走行環境ランクマップは、走行環境イメージ上の第n走行メイン領域及びこれに対応する第n走行環境セグメンテーションマップ上の第n走行サブ領域がクロップされてコンカチネートされることによって生成され得る。
【0114】
そして、アップデート装置2000は、(i)第1走行環境ランクスコア乃至第n走行環境ランクスコアのうち最も高い値を有する特定の走行環境ランクスコアを生成した特定のランクネットワークに対応する特定のオブジェクト検出器を選択し、(ii)自律走行車両の現在のオブジェクト検出器を特定のオブジェクト検出器にアップデートすることができる。この際、例えば、特定のオブジェクト検出器は、第k環境特定オブジェクト検出器1100-kであり得、特定のランクネットワークは、第k環境特定ランクネットワーク1200-kであり得、特定の走行環境ランクスコアは、第k環境特定走行環境ランクスコアであり得る。
【0115】
これによって、アップデート装置2000は、自律走行車両をもって様々な走行環境でも最適化されたオブジェクト検出器を利用して適切に走行することができるように支援することができる。
【0116】
一方、前記ではオブジェクト検出器が自律走行車両に利用される場合について説明したが、これとは異なり、オブジェクト検出器は、自律運航飛行体、自律動作ロボットなど、様々な装置に適用され得る。
【0117】
また、前記ではオブジェクト検出器をアップデートする方法を説明したが、本発明がこれに限定されるわけではなく、自律走行車両、自律運航飛行体、自律動作ロボットなどに利用される様々な種類のディープラーニングネットワークモデルをアップデートする場合にも同一の方法が適用され得る。
【0118】
また、以上にて説明された本発明による実施例は、多様なコンピュータの構成要素を通じて遂行することができるプログラム命令語の形態で具現されて、コンピュータ読取り可能な記録媒体に格納され得る。前記コンピュータ読取り可能な記録媒体はプログラム命令語、データファイル、データ構造などを単独で又は組み合わせて含むことができる。前記コンピュータ読取り可能な記録媒体に格納されるプログラム命令語は、本発明のために特別に設計され、構成されたものであるか、コンピュータソフトウェア分野の当業者に公知にされて使用可能なものであり得る。コンピュータ読取り可能な記録媒体の例には、ハードディスク、フレキシブルディスク及び磁気テープのような磁気媒体、CD-ROM、DVDのような光記録媒体、フロプティカル・ディスク(Floptical Disk)のような磁気-光メディア(Magneto-Optical Media)、及びROM、RAM、フラッシュメモリなどのようなプログラム命令語を格納して遂行するように特別に構成されたハードウェア装置が含まれる。プログラム命令語の例には、コンパイラによって作られるもののような機械語コードだけでなく、インタープリターなどを使用してコンピュータによって実行される高級言語コードも含まれる。前記ハードウェア装置は、本発明による処理を実行するために一つ以上のソフトウェアモジュールとして作動するように構成され得、その反対も同様である。
【0119】
以上にて本発明が具体的な構成要素などのような特定事項と限定された実施例及び図面によって説明されたが、これは、本発明のより全般的な理解の一助とするために提供されたものであるに過ぎず、本発明が前記実施例に限られるものではなく、本発明が属する技術分野において通常の知識を有する者であれば、かかる記載から多様な修正及び変形が行われ得る。
【0120】
従って、本発明の思想は、前記説明された実施例に局限されて定められてはならず、後述する特許請求の範囲だけでなく、本特許請求の範囲と均等または等価的に変形されたものすべては、本発明の思想の範囲に属するといえる。