(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2025143239
(43)【公開日】2025-10-01
(54)【発明の名称】学習データを取得するための電子装置及び方法
(51)【国際特許分類】
H04N 23/60 20230101AFI20250924BHJP
G06T 7/00 20170101ALI20250924BHJP
G06V 10/25 20220101ALI20250924BHJP
G06N 20/00 20190101ALI20250924BHJP
【FI】
H04N23/60 500
G06T7/00 350B
G06V10/25
G06N20/00 130
【審査請求】未請求
【請求項の数】20
【出願形態】OL
(21)【出願番号】P 2025042965
(22)【出願日】2025-03-17
(31)【優先権主張番号】10-2024-0037475
(32)【優先日】2024-03-18
(33)【優先権主張国・地域又は機関】KR
【公序良俗違反の表示】
(特許庁注:以下のものは登録商標)
1.BLUETOOTH
2.ZIGBEE
3.WCDMA
4.3GPP
(71)【出願人】
【識別番号】516082420
【氏名又は名称】シンクウェア コーポレーション
【氏名又は名称原語表記】THINKWARE CORPORATION
(74)【代理人】
【識別番号】110002789
【氏名又は名称】弁理士法人IPX
(72)【発明者】
【氏名】パク・ヨセップ
(72)【発明者】
【氏名】オー・ヒョンソク
(72)【発明者】
【氏名】チュン・ヘジュン
(72)【発明者】
【氏名】チェ・ヨチャン
(72)【発明者】
【氏名】シン・トンウォン
【テーマコード(参考)】
5C122
5L096
【Fターム(参考)】
5C122DA14
5C122EA22
5C122FA18
5C122FF09
5C122FH05
5C122FH09
5C122FH11
5C122GA01
5C122HA13
5C122HA35
5C122HA48
5C122HB01
5C122HB05
5L096BA04
5L096CA04
5L096CA05
5L096DA01
5L096EA05
5L096EA35
5L096EA39
5L096FA12
5L096FA16
5L096FA25
5L096FA32
5L096FA66
5L096GA08
5L096GA51
5L096HA11
5L096KA04
(57)【要約】 (修正有)
【課題】電子装置は学習データを用いて、環境によって発生するノイズ、ブラーを改善したイメージを取得する。
【解決手段】電子装置は、第1のカメラから第1のイメージを取得することができる。この電子装置は、第1のカメラよりもシャッタースピードが遅い第2のカメラから第2のイメージを取得することができる。この電子装置は、第1のイメージと第2のイメージとで、互いに対応する時点で取得された第1のイメージと第2のイメージとを識別することができる。この電子装置は、第1のイメージにおいて、指定された種類のオブジェクト内の第1の関心領域を設定することができる。この電子装置は、第2のイメージにおいて、第1の関心領域と同じ位置の第2の関心領域を設定することができる。この電子装置は、第1の関心領域が設定された第1のイメージと、第2の関心領域が設定された第2のイメージとを、学習データとして生成することができる。
【選択図】
図1
【特許請求の範囲】
【請求項1】
電子装置であって、
通信回路;
命令を格納するメモリ;及び
前記通信回路及び前記メモリと動作可能に接続された少なくとも1つのプロセッサを含み、
前記命令が前記プロセッサによって実行されると、前記電子装置は、
前記通信回路を介して、第1のカメラから第1のイメージを取得し、
前記通信回路を介して、前記第1のカメラよりもシャッタースピードが遅い第2のカメラから第2のイメージを取得し、
前記第1のイメージと前記第2のイメージとで、互いに対応する時点で取得された第1のイメージ及び第2のイメージを識別し、
前記第1のイメージにおいて、指定された種類のオブジェクト内の第1の関心領域を設定し、
前記第2のイメージにおいて、前記第1の関心領域と同じ位置の第2の関心領域を設定し、
前記第1の関心領域が設定された第1のイメージと、前記第2の関心領域が設定された第2のイメージとを、学習データとして生成するように引き起こす、電子装置。
【請求項2】
前記第2のカメラは、前記第1のカメラと互いに対応する角度を有するように配置され、
前記第2のカメラのレンズ属性は、前記第1のカメラのレンズ属性と同じであり、
前記命令が前記プロセッサによって実行されると、前記電子装置は、
前記第1のカメラ及び前記第2のカメラに、互いに対応する時点で撮影を指示するように引き起こす、請求項1に記載の電子装置。
【請求項3】
前記命令が前記プロセッサによって実行されると、前記電子装置は、
前記第1のカメラ及び前記第2のカメラに、対応する時点で撮影を指示した後、指定された時間の間、第1のイメージ及び第2のイメージを取得し、
前記第1のイメージのうちの基準イメージと、前記第2のイメージのそれぞれとを比較することに基づいて、前記基準イメージと互いに対応する時点で取得されたイメージを識別し、
前記第1のイメージから前記基準イメージまでのフレーム差と同じフレーム差を有する前記第2のイメージを、前記第2のイメージから識別するように引き起こす、請求項1に記載の電子装置。
【請求項4】
前記命令が前記プロセッサによって実行されると、前記電子装置は、
前記第1のイメージにおいて、指定されたサイズの領域をクロップすることによって、クロップされた第1のイメージを生成し、
前記クロップされた第1のイメージに基づいて、前記第2のイメージにおいて、指定されたサイズの他の領域をクロップすることによって、クロップされた第2のイメージを生成するように引き起こす、請求項1に記載の電子装置。
【請求項5】
前記命令が前記プロセッサによって実行されると、前記電子装置は、
前記クロップされた第1のイメージと、前記第2のイメージの複数の領域との間の正規化された差分値を識別し、
前記クロップされた第1のイメージの特徴点と、前記第2のイメージの複数の領域のそれぞれの特徴点との間の正規化された距離を識別し、
前記正規化された差分値と、前記正規化された距離との間の重み付き平均が最も低い領域をクロップすることによって、前記クロップされた第2のイメージを生成するように引き起こす、請求項4に記載の電子装置。
【請求項6】
前記命令が前記プロセッサによって実行されると、前記電子装置は、
前記クロップされた第1のイメージにおいて、指定された種類のオブジェクトを識別し、
前記クロップされた第1のイメージで識別された前記オブジェクト内の前記第1の関心領域を設定し、
前記クロップされた第2のイメージにおいて、前記クロップされた第1のイメージの前記オブジェクトの位置を設定し、
前記クロップされた第2のイメージにおいて、前記クロップされた第1のイメージの前記第1の関心領域と同じ位置の前記第2の関心領域を設定するように引き起こす、請求項4に記載の電子装置。
【請求項7】
前記命令が前記プロセッサによって実行されると、前記電子装置は、
前記第1の関心領域において、文字列識別アルゴリズムに基づいて、文字列を識別し、
前記第1の関心領域及び前記第2の関心領域において、前記識別された文字列をラベル付けするように引き起こす、請求項6に記載の電子装置。
【請求項8】
前記命令が前記プロセッサによって実行されると、前記電子装置は、
前記第1の関心領域を、指定された変換アルゴリズムに基づいて、指定された図形に変換し、
前記指定された図形に変換された前記第1の関心領域において、前記文字列識別アルゴリズムに基づいて、前記文字列を識別するように引き起こす、請求項7に記載の電子装置。
【請求項9】
前記命令が前記プロセッサによって実行されると、前記電子装置は、
前記第1のイメージのうち、連続するイメージ間の差に基づいて、前記電子装置が移動するかどうかを識別し、
前記電子装置が移動していないことに基づいて、前記第1のイメージ及び前記第2のイメージを削除し、
前記電子装置が移動することに基づいて、前記第1のイメージ及び前記第2のイメージに基づいた前記学習データを生成するように引き起こす、請求項1に記載の電子装置。
【請求項10】
通信回路を含む電子装置で実行される方法であって、
前記通信回路を介して、第1のカメラから第1のイメージを取得する動作、
前記通信回路を介して、前記第1のカメラよりもシャッタースピードが遅い第2のカメラから第2のイメージを取得する動作、
前記第1のイメージと前記第2のイメージとで、互いに対応する時点で取得された第1のイメージ及び第2のイメージを識別する動作、
前記第1イメージにおいて、指定された種類のオブジェクト内の第1の関心領域を設定する動作、
前記第2のイメージにおいて、前記第1の関心領域と同じ位置の第2の関心領域を設定する動作、及び
前記第1の関心領域が設定された第1のイメージと、前記第2の関心領域が設定された第2のイメージとを、学習データとして生成する動作を含む、方法。
【請求項11】
前記第1のカメラ及び前記第2のカメラに、互いに対応する時点で撮影を指示した後、指定された時間の間、第1のイメージ及び第2のイメージを取得する動作、
前記第1のイメージのうちの基準イメージと、前記第2のイメージのそれぞれとを比較することに基づいて、前記基準イメージと互いに対応する時点で取得されたイメージを識別する動作、及び
前記第1のイメージから前記基準イメージまでのフレーム差と同じフレーム差を有する前記第2のイメージを、前記第2のイメージから識別する動作を含む、請求項10に記載の方法。
【請求項12】
前記第1のイメージにおいて、指定されたサイズの領域をクロップすることによって、クロップされた第1のイメージを生成する動作、及び
前記クロップされた第1のイメージに基づいて、前記第2のイメージにおいて、指定されたサイズの他の領域をクロップすることによって、クロップされた第2のイメージを生成する動作を含む、請求項10に記載の方法。
【請求項13】
前記クロップされた第1のイメージと前記第2のイメージの複数の領域との間の正規化された差分値を識別する動作、
前記クロップされた第1のイメージの特徴点と、前記第2のイメージの複数の領域のそれぞれの特徴点との間の正規化された距離を識別する動作、及び
前記正規化された差分値と、前記正規化された距離との間の重み付き平均が最も低い領域をクロップすることによって、前記クロップされた第2のイメージを生成する動作を含む、請求項12に記載の方法。
【請求項14】
前記クロップされた第1のイメージにおいて、指定された種類のオブジェクトを識別する動作、
前記クロップされた第1のイメージで識別されたオブジェクト内の前記第1の関心領域を設定する動作、
前記クロップされた第2のイメージにおいて、前記クロップされた第1のイメージの前記オブジェクトの位置を設定する動作、及び
前記クロップされた第2のイメージにおいて、前記クロップされた第1のイメージの前記第1の関心領域と同じ位置の前記第2の関心領域を設定する動作を含む、請求項12に記載の方法。
【請求項15】
前記第1のイメージのうち連続するイメージ間の差に基づいて、前記電子装置が移動するかどうかを識別する動作、
前記電子装置が移動していないことに基づいて、前記第1のイメージ及び前記第2のイメージを削除する動作、及び
前記電子装置が移動することに基づいて、前記第1のイメージ及び前記第2のイメージに基づいて、前記学習データを生成する動作を含む、請求項10に記載の方法。
【請求項16】
非一時的コンピュータ読み取り可能な記録媒体(non-transitory computer readable storage medium)であって、
命令を含むプログラムを記憶し、
前記命令は、通信回路を含む電子装置のプロセッサによって実行されると、前記電子装置が、
前記通信回路を介して、第1のカメラから第1のイメージを取得し、
前記通信回路を介して、前記第1のカメラよりもシャッタースピードが遅い第2のカメラから第2のイメージを取得し、
前記第1のイメージと前記第2のイメージとで、互いに対応する時点で取得された第1のイメージ及び第2のイメージを識別し、
前記第1のイメージにおいて、指定された種類のオブジェクト内の第1の関心領域を設定し、
前記第2のイメージにおいて、前記第1の関心領域と同じ位置の第2の関心領域を設定し、
前記第1の関心領域が設定された第1のイメージと、前記第2の関心領域が設定された第2のイメージとを、学習データとして生成するように引き起こす、非一時的コンピュータ読み取り可能な記憶媒体。
【請求項17】
前記命令が前記プロセッサによって実行されると、前記電子装置は、
前記第1のイメージにおいて、指定されたサイズの領域をクロップすることによって、クロップされた第1のイメージを生成し、
前記クロップされた第1のイメージに基づいて、前記第2のイメージにおいて、指定されたサイズの他の領域をクロップすることによって、クロップされた第2のイメージを生成するように引き起こす、請求項16に記載の非一時的コンピュータ読み取り可能な記憶媒体。
【請求項18】
前記命令が前記プロセッサによって実行されると、前記電子装置は、
前記クロップされた第1のイメージと、前記第2のイメージの複数の領域との間の正規化された差分値を識別し、
前記クロップされた第1のイメージの特徴点と、前記第2のイメージの複数の領域のそれぞれの特徴点との間の正規化された距離を識別し、
前記正規化された差分値と、前記正規化された距離との間の重み付き平均が最も低い領域をクロップすることによって、前記クロップされた第2のイメージを生成するように引き起こす、請求項17に記載の非一時的コンピュータ読み取り可能な記憶媒体。
【請求項19】
前記命令が前記プロセッサによって実行されると、前記電子装置は、
前記クロップされた第1のイメージにおいて、指定された種類のオブジェクトを識別し、
前記クロップされた第1のイメージで識別された前記オブジェクト内の前記第1の関心領域を設定し、
前記クロップされた第2のイメージにおいて、前記クロップされた第1のイメージの前記オブジェクトの位置を設定し、
前記クロップされた第2のイメージにおいて、前記クロップされた第1のイメージの前記第1の関心領域と同じ位置の前記第2の関心領域を設定するように引き起こす、請求項17に記載の非一時的コンピュータ読み取り可能な記憶媒体。
【請求項20】
前記命令が前記プロセッサによって実行されると、前記電子装置は、
前記第1のイメージのうち、連続するイメージ間の差に基づいて、前記電子装置が移動するかどうかを識別し、
前記電子装置が移動していないことに基づいて、前記第1のイメージ及び前記第2のイメージを削除し、
前記電子装置が移動することに基づいて、前記第1のイメージ及び前記第2のイメージに基づいた前記学習データを生成するように引き起こす、請求項16に記載の非一時的コンピュータ読み取り可能な記憶媒体。
【発明の詳細な説明】
【技術分野】
【0001】
本開示(present disclosure)は、学習データを取得するための電子装置及び方法に関する。
【背景技術】
【0002】
外部環境に関するイメージを取得するために車両に搭載された電子装置は、環境(例えば、低照度、動的環境)によって発生するノイズ(noise)、又はブラー(blur)により、鮮明なイメージを取得することが困難な場合がある。
【0003】
人工知能(artificial intelligence)を用いて、デノイズ(de-noise)又はデブラー(de-blur)を介して改善されたイメージを取得することができる。
【0004】
前述の情報は、本開示の理解を助けることを目的とする背景技術(related art)として提供することができる。前述のいずれも、本開示に関連する先行技術(prior art)として適用可能であるかどうかについては、いかなる主張も決定も行われない。
【発明の概要】
【課題を解決するための手段】
【0005】
一実施形態によれば、電子装置は、通信回路を含むことができる。前記電子装置は、命令を格納するメモリを含むことができる。前記電子装置は、前記通信回路及び前記メモリと動作可能に接続された少なくとも1つのプロセッサを含むことができる。前記命令が前記プロセッサによって実行されると、前記電子装置は、前記通信回路を介して、第1のカメラから第1のイメージを取得するように引き起こすことができる。前記命令が前記プロセッサによって実行されると、前記電子装置は、前記通信回路を介して、前記第1のカメラよりもシャッタースピードが遅い第2のカメラから、第2のイメージを取得するように引き起こすことができる。前記命令が前記プロセッサによって実行されると、前記電子装置は、前記第1のイメージと前記第2のイメージとで、互いに対応する時点で取得された第1のイメージ及び第2のイメージを識別するように引き起こすことができる。前記命令が前記プロセッサによって実行されると、前記電子装置は、前記第1のイメージにおいて、指定された種類のオブジェクト内の第1の関心領域を設定するように引き起こすことができる。前記命令が前記プロセッサによって実行されると、前記電子装置は、前記第2のイメージにおいて、前記第1の関心領域と同じ位置の第2の関心領域を設定するように引き起こすことができる。前記命令が前記プロセッサによって実行されると、前記電子装置は、前記第1の関心領域が設定された第1のイメージと、前記第2の関心領域が設定された第2のイメージとを、学習データとして生成するように引き起こすことができる。
【0006】
一実施形態によれば、電子装置によって実行される方法は、通信回路を含む電子装置で実行することができる。この方法は、前記通信回路を介して、第1のカメラから第1のイメージを取得する動作を含むことができる。この方法は、前記通信回路を介して、前記第1のカメラよりもシャッタースピードが遅い第2のカメラから、第2のイメージを取得する動作を含むことができる。この方法は、前記第1のイメージと前記第2のイメージとで、互いに対応する時点で取得された第1のイメージ及び第2のイメージを識別する動作を含むことができる。この方法は、前記第1のイメージにおいて、指定された種類のオブジェクト内の第1の関心領域を設定する動作を含むことができる。この方法は、前記第2のイメージにおいて、前記第1の関心領域と同じ位置の第2の関心領域を設定する動作を含むことができる。この方法は、前記第1の関心領域が設定された第1のイメージと、前記第2の関心領域が設定された第2のイメージとを、学習データとして生成する動作を含むことができる。
【0007】
非一時的コンピュータ読み取り可能な記憶媒体(non-transitory computer readable storage medium)は、命令を含むプログラムを記憶することができる。前記命令が通信回路を含む電子装置のプロセッサによって実行されると、前記電子装置は、前記通信回路を介して、第1のカメラから第1のイメージを取得するように引き起こすことができる。前記命令が前記プロセッサによって実行されると、前記電子装置は、前記通信回路を介して、前記第1のカメラよりもシャッタースピードが遅い第2のカメラから、第2のイメージを取得するように引き起こすことができる。前記命令が前記プロセッサによって実行されると、前記電子装置は、前記第1のイメージと前記第2のイメージとで、互いに対応する時点で取得された第1のイメージ及び第2のイメージを識別するように引き起こすことができる。前記命令が前記プロセッサによって実行されると、前記電子装置は、前記第1のイメージにおいて、指定された種類のオブジェクト内の第1の関心領域を設定するように引き起こすことができる。前記命令が前記プロセッサによって実行されると、前記電子装置は、前記第2のイメージにおいて、前記第1の関心領域と同じ位置の第2の関心領域を設定するように引き起こすことができる。前記命令が前記プロセッサによって実行されると、前記電子装置は、前記第1の関心領域が設定された第1のイメージと、前記第2の関心領域が設定された第2のイメージとを、学習データとして生成するように引き起こすことができる。
【発明の効果】
【0008】
一実施形態によれば、電子装置及びその方法は、デノイズ(de-noise)及び/又はデブラー(de-blur)のための人工知能を学習するための学習データを取得することができる。
【図面の簡単な説明】
【0009】
【
図1】電子装置のブロック図(block diagram)の一例を示す。
【
図2a】カメラを介して取得されるフレームの例を示す。
【
図2b】カメラを介して取得されるフレームの例を示す。
【
図2c】カメラを介して取得されるフレームの例を示す。
【
図2d】カメラを介して取得されるフレームの例を示す。
【
図3】カメラを介して取得されるGT(ground truth)イメージ及びブラー(blur)イメージの一例を示す。
【
図4】GTイメージ及びブラーイメージをクロップする動作の一例を示す。
【
図5】GTイメージから関心領域を抽出する動作の一例を示す。
【
図6】ブラーイメージで関心領域を設定する動作の一例を示す。
【
図7】一実施形態による、電子装置の動作を説明するための例示的なフローチャートを示す。
【
図8】一実施形態による、車両の自律走行システムを示したブロック図の一例を示す。
【
図9】一実施形態による、自律走行移動体を示すブロック図の一例を示す。
【
図10】一実施形態による、自律走行移動体を示すブロック図の一例を示す。
【
図11】様々な実施形態によるユーザ装置に関連するゲートウェイの例を示す。
【
図12】一実施形態による、学習データのセットに基づいて、ニューラルネットワークをトレーニングする電子装置の動作を説明するための図である。
【
図13】一実施形態による、電子装置のブロック図である。
【
図14】トラクターとトレーラーが接続されていない状態を例示する図である。
【
図15】トラクターとトレーラーが接続された状態を例示する図である。
【発明を実施するための形態】
【0010】
以下、添付の図面を参照して、本明細書の様々な実施形態について説明する。図面の説明に関して、類似又は関連する構成要素には、同様の参照番号を使用することができる。
【0011】
長年にわたり、トラック輸送産業は、着実な成長を経験し、より複雑なサプライチェーンに対応するために、サービスの範囲を拡大してきた。これらのサービスには、ラストマイル配送(last-mile deliveries)、ドロップトレーラープログラム(drop-trailer programs)、港(port)での複合一貫輸送(intermodal transportation)(2つ以上の異なる輸送手段(船舶と鉄道、船舶と飛行機)によって貨物を目的地まで輸送すること)などが含まれる。
【0012】
このように、貨物を輸送する方法は、非常に多様であるため、貨物輸送関連機器の製造業者は、様々な輸送要求(various transportation needs)に応じて、貨物を輸送するための異なる形態の装置を設計した。
【0013】
本明細書では、貨物(freight)輸送(carry又はcatering)を主目的とするトレーラーを牽引するトラック(truck)をトラクター(tractor)と呼び、説明する。
【0014】
本明細書で説明するトラクターは、トラクターのキャブ(cab)の位置及び形状に応じて、コンベンショナルトラック(conventional truck)(又はボンネットトラック(bonneted truck))、キャブオーバートラック(cab-over truck)(又はキャブオーバーエンジン(cab-over engine))、及びコンベンショナルトラックとキャブオーバートラックの中間形態であるセミコンベンショナルトラック(semi-conventional truck)に区分けることができる。
【0015】
コンベンショナルトラックは、トラクターのキャブの前車軸(front axle in front of cab)上に、エンジン(engine)及びフード(hood)が位置する形態で、運転者が前車軸(front axle)の後ろに座るようになる構造を有し、トラクターのエンジンが運転者の前面に位置する北米(North America) で主に使用されるトラクターの形態である。
【0016】
一方、キャブオーバートラックは、トラクターのキャブがトラクターの先端まで位置し、運転者が前車軸(front axle)の前に座るようになる構造を持ち、トラクターの前面が平らな、別名「flat face(又はflat nose)」形態で、トラクターのエンジンが運転者の下に位置するヨーロッパ、アジアなどのほとんどの国で主に使用されるトラクターの形態である。
【0017】
トラクターの目的及び需要に応じて、様々な形態が存在するように、トラクターによって牽引されるトレーラーにも様々な形態がある。その中で最も代表的なトレーラーの種類には、フルトレーラー(full-trailer)とセミトレーラー(semi-trailer)がある。フルトレーラーとセミトレーラーとは、トレーラーに前車軸(front axle)と後車軸(rear axle)の両方が取り付けられているかどうかに区別できる。このトレーラーは、結合装置(a coupling device)を介して、ボックストラック(box truck)又はトラクター(tractor)に接続することができる。
【0018】
具体的に説明すると、フルトレーラー(full-trailer)は、前車軸(front axle)と後車軸(rear axle)との両方が取り付けられている商業用貨物トレーラー(freight trailer)である。フルトレーラーは、総荷重をトレーラーだけで支えるように設計されており、自分の重量をトラクターに頼らずに完全に支えることができ、トラクターのような牽引装置(hauling unit又はtowing unit)に結合するために、ドローバー(drawbar)が装備されており、主にアメリカ、カナダなどで多く使用される。
【0019】
一方、セミトレーラー(semi-trailer)は、前車軸(front axle)なしで、後車軸(rear axle)のみが装備されている貨物トレーラーで、荷重のかなりの部分(large portion)を「fifth wheel(転向輪)」と呼ばれる一種のヒッチ(hitch)に連結されたトラクターによって支えることができる。セミトレーラーは、トラクターから分離(detachment)されて、停止状態(stationary)になった場合には、セミトレーラーの下部に取り付けられたランディングギア(landing gear)を、地面に垂直に広げることにより、トレーラーの荷重を支えることができる。セミトレーラーとトラクターの結合(combination)は、セミトレーラートラック(semi-trailer truck)(アメリカでは、単に「セミトレーラー(semi-trailer)」、「トラクタートレーラー(tractor-trailer)」、「セミトラック(semi-truck)」、「ビッグリーグ(Big rig)」又は「セミ(semi)」ともいう)と呼ばれる。前述した「転向輪(Fifth wheel)」とは、トレーラートラックのトラクター車軸に取り付けられて、トレーラーの方向転換を容易にするための水平車輪をいい、第5輪とも呼ばれる。「転向輪(Fifth wheel)」は、トラクターとセミトレーラーを可動結合できるようにする装置で、通常、セミトレーラーに取り付けられているキングピン(kingpin)を、トラクターにしっかり固定してくれるトラニオンプレート(trunnion plate)とラッチ(latch)装置からなる下部を含む。
【0020】
以下、本明細書では、前述のトラクター/トレーラーの用語に基づいて、説明の便宜上、「トレーラー(Trailer)」は、トレーラー用トラクターに接続する貨物輸送車両を、「トラクター(tractor)」は、トレーラーの移動のための牽引車両を意味するものとして用いる。また、本発明では、詳細な説明に記載された実施形態による権利の限定を最大限排除するために、「トレーラー」を牽引(hauling/towing)するトラクター(tractor)を「牽引車両」、トラクターによって牽引されるトレーラーを「被牽引車両」という用語と混用して説明することもある。
【0021】
そして、説明の便宜のために、本明細書全体で説明される「トレーラー」は、「セミトレーラー」を指すものと理解することが好ましいが、これに限定されない。
【0022】
一実施形態では、電子装置101、及びカメラ151、155は、車両(図示せず)に含まれる(又は搭載される)ことができる。電子装置101は、車両内のECU(electronic control unit)に対応してもよく、又はECUに含まれてもよい。ECUは、ECM(electronic control module)と呼ばれることがある。電子装置101は、車両において、本発明の実施形態による機能を提供するために使用される独立したハードウェア(Hardware)で構成することができる。実施形態は、これに限定されず、電子装置101は、車両に取り付けられたデバイス(例えば、ブラックボックス)に対応してもよく、又は前記デバイスに含まれてもよい。
【0023】
図1を参照すると、一実施形態による電子装置101は、通信回路110、プロセッサ120、及びメモリ130を含むことができる。通信回路110、プロセッサ120、及びメモリ130は、通信バス(a communication bus)140などの電子部品(electronic component)によって、互いに電気的及び/又は動作的に接続することができる(electronically and/or operably coupled with each other)。以下では、ハードウェアが動作的に結合されているのは、ハードウェアのうちの第1のハードウェアによって、第2のハードウェアが制御されるように、ハードウェア間の直接的な接続、又は間接的な接続が、有線で、又は無線で確立されたことを意味することがある。異なるブロックに示されているが、実施形態は、これに限定されない。
図1のハードウェアの一部は、SoC(system on a chip)などの単一の集積回路(single integrated circuit)に含まれてもよい。電子装置101内に含まれるハードウェアの種類及び/又は数は、
図1に示すものに限定されない。例えば、電子装置101は、
図1に示すハードウェアの一部のみを含むことができる。
【0024】
一実施形態によれば、電子装置101の通信回路110は、電子装置101と外部電子装置との間(例えば、カメラ151、155)の電気信号の送信及び/又は受信をサポートするためのハードウェア部品を含むことができる。通信回路110は、例えば、モデム(MODEM)、アンテナ、O/E(optic/electronic)変換器のうちの少なくとも1つを含むことができる。通信回路110は、イーサネット(ethernet)、LAN(local area network)、WAN(wide area network)、WiFi(wireless fidelity)、ブルトゥス(Bluetooth)、BLE(Bluetooth low energy)、Zigbee、LTE(long term evolution)、5G NR(new radio)及び/又は6Gなどの様々なタイプのプロトコルに基づいて、電気信号の送信及び/又は受信をサポートすることができる。
【0025】
一実施形態によれば、電子装置101は、1つ以上の命令に基づいて、データを処理するためのハードウェアを含むことができる。データを処理するためのハードウェアは、プロセッサ120を含むことができる。例えば、データを処理するためのハードウェアは、ALU(arithmetic and logic unit)、FPU(floating point unit)、FPGA(field programmable gate array)、CPU(central processing unit)、及び/又はAP(application processor)を含むことができる。プロセッサ120は、シングルコアプロセッサの構造を有してもよく、又はデュアルコア(dual core)、クアッドコア(quad core)、ヘキサコア(hexa core)、又はオクタコア(octa core)などのマルチコアプロセッサの構造を有してもよい。
【0026】
一実施形態によれば、電子装置101のメモリ130は、電子装置101のプロセッサ120に入力及び/又は出力されるデータ及び/又は命令を格納するためのハードウェア構成要素を含むことができる。例えば、メモリ130は、RAM(random-access memory)などの揮発性メモリ(volatile memory)、及び/又はROM(read-only memory)などの不揮発性メモリ(non-volatile memory)を含むことができる。例えば、揮発性メモリは、DRAM(dynamic RAM)、SRAM(static RAM)、キャッシュ(Cache)RAM、PSRAM(pseudo SRAM)のうち少なくとも1つを含むことができる。例えば、不揮発性メモリは、PROM(programmable ROM)、EPROM(erasable PROM)、EEPROM(electrically erasable PROM)、フラッシュメモリ、ハードディスク、コンパクトディスク、SSD(solid state drive)、eMMC(embedded multi-media card)のうち少なくとも1つを含み得る。
【0027】
図示されていないが、電子装置101は、様々な構成要素をさらに含んでもよい。例えば、電子装置101は、ユーザインタフェースを表示するためのディスプレイをさらに含むことができる。
【0028】
一実施形態によれば、カメラ151、155のそれぞれは、レンズアセンブリ(assembly)、又はイメージセンサを含むことができる。レンズアセンブリは、イメージ撮影の対象である被写体から放出された光を収集することができる。レンズアセンブリは、1つ又はそれ以上のレンズを含み得る。一実施形態によれば、カメラ151、155のそれぞれは、複数のレンズアセンブリを含むことができる。例えば、カメラ151、155のそれぞれは、複数のレンズアセンブリの一部が同じレンズ属性(例えば、画角、焦点距離、オートフォーカス、fナンバー(f number)、又は光学ズーム)を有してもよく、又は少なくとも1つのレンズアセンブリが、他のレンズアセンブリのレンズ属性とは異なる1つ以上のレンズ属性を有してもよい。レンズアセンブリは、広角レンズ又は望遠レンズを含むことができる。一実施形態によれば、フラッシュは、1つ又はそれ以上の発光ダイオード(例えば、RGB(red-green-blue)LED、whiteLED、infraredLED、又はultravioletLED)、又はキセノンランプ(xenon lamp)を含むことができる。例えば、イメージセンサは、被写体から放射又は反射されて、レンズアセンブリを介して伝達された光を、電気信号に変換することによって、前記被写体に対応するイメージを取得することができる。一実施形態によれば、イメージセンサは、例えば、RGBセンサ、BW(black and white)センサ、IRセンサ、又はUVセンサなどの属性が異なるイメージセンサのうちの選択された1つのイメージセンサ、同じ属性を有する複数のイメージセンサ、又は他の属性を有する複数のイメージセンサを含むことができる。イメージセンサに含まれる各イメージセンサは、例えば、CCD(charged coupled device)センサ又はCMOS(complementary metal oxide semiconductor)センサを用いて実現することができる。
【0029】
一実施形態では、カメラ151、155のそれぞれには、設定差が存在してもよい。一実施形態では、カメラ151、155の各々は、複数の設定のうちの少なくとも1つの設定に差が存在し得る。例えば、複数の設定は、カメラ151、155のそれぞれの角度(例えば、傾斜(tilt)角度 、ロール(roll)角度、及び/又はパン(pan)角度)を含み得る。例えば、複数の設定は、画角(angle of view)、解像度、及び/又はレンズ属性(例えば、画角、焦点距離、オートフォーカス、fナンバー(f number)、ISO(International Organization for Standardization)感度、又は光学ズーム)を含むことができる。例えば、複数の設定は、シャッタースピードを含むことができる。例えば、カメラ151、155のそれぞれの角度は、(ハードウェア構造(例えば、水平計、ケース、固定台)によって)互いに同一である(又は、実質的に同一である)(又は、対応する)ように設定(又は配置)されてもよい。例えば、カメラ151、155のそれぞれの解像度、及び/又はレンズ特性(例えば、画角、焦点距離、オートフォーカス、fナンバー、ISO感度、又は光学ズーム)は、互いに同一である(又は実質的に同一である)(又は対応する)ように設定することができる。例えば、カメラ151、155の各シャッタースピードは、互いに異なっていてもよい。例えば、カメラ151のシャッタースピードは、カメラ155のシャッタースピードより速くてもよい。一実施形態では、カメラ151のシャッタースピードがカメラ155のシャッタースピードよりも速いほど、カメラ151を介して取得されるイメージは、カメラ155を介して取得されたイメージより鮮明になり得る。一実施形態では、カメラ151のシャッタースピードが、カメラ155のシャッタースピードよりも速いほど、カメラ155を介して取得されるイメージは、カメラ151を介して取得されるイメージよりも解像度、白色ノイズ、又はブラー(blur)(又はモーションブラー)現象のうちの少なくとも1つがより多く発生することがある。これにより、カメラ155を介して取得されたイメージは、カメラ151を介して取得されたイメージよりも文字列識別が困難になる可能性がある。
【0030】
一実施形態では、カメラ151を介して取得されたイメージは、正解イメージ(ground truth image)と呼ばれることがある。一実施形態では、カメラ155を介して取得されたイメージは、ブラーイメージ(blur image)(又はモーションブラーイメージ)と呼ばれることがある。
【0031】
一実施形態によれば、カメラ151、155は、車両(図示せず)の一方向に向かって位置(又は配置)されてもよい。例えば、カメラ151、155は、車両の前方方向(front direction)及び/又は走行方向(driving direction)に向かって位置(又は配置)されてもよい。
【0032】
図1では、カメラ151、155が電子装置101と物理的に区別されるように例示されているが、これは、例示に過ぎない。実施形態によれば、カメラ151、155の一部は、電子装置101と一体的に形成することができる。あるいは、カメラ151、155の両方を電子装置101と一体的に形成してもよい。例えば、カメラ151、155の両方が電子装置101と一体的に形成されている場合、通信回路110は、カメラ151、155とプロセッサ120との間のインタフェースのための回路(例えば、MIPI(mobile industry processor interface))であり得る。
【0033】
以下では、電子装置101がカメラ151、155を介して学習データを収集する動作について説明する。
【0034】
一実施形態では、電子装置101のプロセッサ120は、カメラ151、155に撮影を指示(又は命令)することができる。一実施形態では、電子装置101のプロセッサ120は、カメラ151、155に、互いに同じ(又は実質的に同じ)(又は対応する)時点で撮影を指示(又は命令)することができる。一実施形態では、プロセッサ120は、車両が移動することに基づいて、カメラ151、155に撮影を指示(又は命令)することができる。しかし、これに限定されない。一実施形態では、プロセッサ120は、車両の移動に関係なく、カメラ151、155に撮影を指示(又は命令)することができる。例えば、時点が互いに同一である(又は実質的に同一である)(又は対応する)ことは、撮影の指示(又は命令)が、指定されたオフセット(又はフレームレートに応じたフレーム間隔)内に生成及び/又は送信されることを意味することができる。
【0035】
一実施形態では、プロセッサ120は、カメラ151、155のそれぞれからイメージストリームを取得することができる。一実施形態では、イメージストリームは、設定されたフレームレート(例えば、frames per second、FPS)で取得されるイメージのデータストリームであり得る。一実施形態では、設定されたフレームレートは、30FPSであり得る。しかし、これに限定されない。一実施形態では、設定されたフレームレートは、30FPSより小さくてもよく(例えば、24FPS)、又は大きくてもよい(例えば、60FPS)。
【0036】
一実施形態では、プロセッサ120は、撮影命令の後に設定されたフレームレートで取得された指定数(例えば、10個)のイメージを、メモリ130(又はメモリ130のバッファ)に格納することができる。一実施形態では、プロセッサ120は、撮影命令の後に指定された時間(例えば、0.3秒)の間に取得されたイメージを、メモリ130(又はメモリ130のバッファ)に格納することができる。例えば、プロセッサ120は、カメラ151から指定された時間の間に取得された指定数(例えば、10個)のGT(ground truth)イメージと、カメラ155から指定された時間の間に取得された指定数(例えば、10個)のブラーイメージを、メモリ130(又はメモリ130のバッファ)に格納することができる。
【0037】
一実施形態では、プロセッサ120は、カメラ151、155から取得されたGTイメージ及びブラーイメージに基づいて、車両が移動しているかどうかを識別することができる。一実施形態では、プロセッサ120は、連続するイメージ間の比較に基づいて、車両が移動しているかどうかを識別することができる。例えば、プロセッサ120は、連続するGTイメージ(又はブラーイメージ)間の比較に基づいて、車両が移動しているかどうかを識別することができる。ここで、連続するイメージ間の比較は、第1のフレームのイメージの特徴マップと、第1のフレームの後の第2のフレームのイメージの特徴マップとを比較することに基づいてもよい。連続するイメージ間の比較は、第1のフレームのイメージと、第2のフレームのイメージとの間の差分イメージ(differential image)に基づいてもよい。ここで、第2のフレームは、設定されたフレームレートに応じて、第1のフレームの次回に取得されるフレームであってもよい。ここで、特徴マップは、ニューラルネットワークに基づいて取得することができる。しかし、これに限定されない。
【0038】
一実施形態では、プロセッサ120は、連続するイメージ間の差が、指定された基準差以下であることに基づいて、車両が停止中であることを識別することができる。一実施形態では、プロセッサ120は、連続するイメージ間の差が、指定された基準差を超えることに基づいて、車両が移動中であることを識別することができる。例えば、プロセッサ120は、第1のフレームのイメージの特徴マップと、第2のフレームのイメージの特徴マップとの差分特徴マップにおいて、基準差を超える領域のサイズが、基準サイズ以上であることに基づいて、車両が移動中であることを識別することができる。例えば、プロセッサ120は、第1のフレームのイメージの特徴マップと、第2のフレームのイメージの特徴マップとの間の差分特徴マップにおいて、基準差を超える領域のサイズが、基準サイズ未満であることに基づいて、車両が停止中であることを識別することができる。例えば、プロセッサ120は、第1のフレームのイメージと、第2のフレームのイメージとの間の差分イメージにおいて、基準差を超える領域のサイズが、基準サイズ以上であることに基づいて、車両が移動中であることを識別することができる。例えば、プロセッサ120は、第1のフレームのイメージと、第2のフレームのイメージとの間の差分イメージにおいて、基準差を超える領域のサイズが、基準サイズ未満であることに基づいて、車両が停止中であることを識別することができる。
【0039】
一実施形態では、プロセッサ120は、カメラ151、155から取得されたGTイメージ及びブラーイメージに基づいて、重複イメージを識別することができる。一実施形態では、プロセッサ120は、連続するイメージ間の比較に基づいて、重複イメージを識別することができる。例えば、プロセッサ120は、連続するGTイメージ(又はブラーイメージ)間の比較に基づいて、重複イメージを識別することができる。ここで、連続するイメージ間の比較は、第1のフレームのイメージの特徴マップと、第1のフレームの後の第2のフレームのイメージの特徴マップとの比較に基づいてもよい。連続するイメージ間の比較は、第1のフレームのイメージと、第2のフレームのイメージとの差分イメージに基づいてもよい。ここで、第2のフレームは、設定されたフレームレートに応じて、第1のフレームの次回に取得されるフレームであり得る。ここで、特徴マップは、ニューラルネットワークに基づいて取得され得る。しかし、これに限定されない。
【0040】
一実施形態では、プロセッサ120は、連続するイメージ間の差が、指定された基準差以下であることに基づいて、連続するイメージが重複イメージであり得る。一実施形態では、プロセッサ120は、重複イメージのうちの1つのイメージを削除(又は除去)することができる。
【0041】
一実施形態では、プロセッサ120は、カメラ151、155から取得されたGTイメージ及びブラーイメージを処理するかどうかを決定することができる。例えば、プロセッサ120は、車両の移動中に、GTイメージ及びブラーイメージが取得されたかどうかに基づいて、GTイメージとブラーイメージとを処理するかどうかを決定することができる。例えば、プロセッサ120は、車両の移動中に、GTイメージとブラーイメージとが取得された場合、GTイメージとブラーイメージとを処理すると決定することができる。しかし、これに限定されない。
【0042】
一実施形態では、プロセッサ120は、指定された数のGTイメージとブラーイメージとの間の時間を整列させることができる。一実施形態では、プロセッサ120は、GTイメージとブラーイメージとを処理すると決定された場合、指定された数のGTイメージとブラーイメージとの間の時間を整列させることができる。例えば、プロセッサ120は、基準カメラを介して取得されたイメージのうち、基準イメージと他のカメラを介して取得されたイメージとを比較して、時間を整列させることができる。例えば、基準カメラがカメラ151であり、基準イメージが指定された数のイメージのうち中間イメージ(例えば、5番目のイメージ)であってもよい。この場合、プロセッサ120は、5番目のGTイメージと10個のブラーイメージとを比較して、5番目のGTイメージと同じ時点(又は実質的に同じ時点)(又は互いに対応する時点)で取得されたブラーイメージを識別することができる。
【0043】
例えば、GTイメージとブラーイメージとの比較は、GTイメージの特徴マップとブラーイメージの特徴マップとの比較に基づいてもよい。例えば、電子装置101は、GTイメージの特徴マップとブラーイメージの特徴マップとの間の差分特徴マップにおける基準差を超える領域のサイズと基準サイズとを比較することに基づいて、互いに同じ時点で取得されたGTイメージとブラーイメージを識別することができる。例えば、プロセッサ120は、GTイメージの特徴マップとブラーイメージの特徴マップとの差分特徴マップにおいて、基準差を超える領域のサイズが基準サイズ以上であることに基づいて、GTイメージとブラーイメージとを、同じ時点で取得されていないイメージとして識別することができる。例えば、プロセッサ120は、GTイメージの特徴マップとブラーイメージの特徴マップとの間の差分特徴マップにおける基準差を超える領域のサイズが、基準サイズ未満であることに基づいて、GTイメージとブラーイメージとを、同じ時点で取得されたイメージとして識別することができる。ここで、特徴マップは、ニューラルネットワークに基づいて取得することができる。しかし、これに限定されない。
【0044】
例えば、GTイメージとブラーイメージとの比較は、GTイメージとブラーイメージとの間の差分イメージに基づいてもよい。例えば、電子装置101は、差分イメージの基準差を超える領域のサイズと基準サイズとを比較することに基づいて、互いに同じ時点で取得されたGTイメージとブラーイメージとを識別することができる。例えば、プロセッサ120は、GTイメージとブラーイメージとの間の差分イメージにおいて基準差を超える領域のサイズが、基準サイズ以上であることに基づいて、GTイメージとブラーイメージとを、同じ時点で取得されていないイメージとして識別することができる。例えば、プロセッサ120は、GTイメージとブラーイメージとの間の差分イメージにおいて基準差を超える領域のサイズが、基準サイズ未満であることに基づいて、GTイメージとブラーイメージとを、同じ時点で取得されたイメージとして識別することができる。
【0045】
一実施形態では、GTイメージとブラーイメージとが実質的に同じ時点)(又は互いに対応する時点)で取得されることは、GTイメージとブラーイメージとの間の取得時間差が設定されたフレームレートに応じたフレーム間隔(又はフレーム間隔の半分)以下であることを含み得る。GTイメージとブラーイメージとの比較は、
図2a~
図2dを参照して説明することができる。
【0046】
図2a~
図2dは、カメラを介して取得されるフレームの例を示す。
【0047】
図2aを参照すると、カメラ151、155は、同じ時点(又は実質的に同じ時点)(又は互いに対応する時点)(例えば、T1)で撮影を開始することができる。一実施形態では、カメラ151、155が実質的に同じ時点(又は互いに対応する時点)で撮影を開始することは、カメラ151、155間の撮影開始時間差が設定されたフレームレートに応じたフレーム間隔(又はフレーム間隔の半分)以下であることを含み得る。これにより、
図2aでは、10個のGTイメージ211~220と、10個のブラーイメージ221~230とを、同じ時点(又は実質的に同じ時点)(又は互いに対応する時点)で取得することができる。例えば、時点T1でGTイメージ211と、ブラーイメージ221とを取得することができる。例えば、時点(例えば、T2~T10)のそれぞれにおいて、GTイメージ212~220及びブラーイメージ222~230を取得することができる。
【0048】
一実施形態では、プロセッサ120は、10個のGTイメージ211~220と、10個のブラーイメージ221~230との間の時間を整列させることができる。例えば、プロセッサ120は、カメラ151(又は基準カメラ)を介して取得されたGTイメージ211~220のうち、指定された順番(例えば、5番目)のGTイメージ215(又は、基準イメージ)と、カメラ155(又は他のカメラ)を介して取得された10個のブラーイメージ221~230のそれぞれとを比較することができる。ここで、GTイメージ215と10個のブラーイメージ221~230のそれぞれとの間の比較は、GTイメージ215の特徴マップと、10個のブラーイメージ221~230のそれぞれの特徴マップとの比較に基づいてもよい。連続するイメージ間の比較は、GTイメージ215と、10個のブラーイメージ221~230のぞれぞれとの間の差分イメージに基づいてもよい。ここで、特徴マップは、ニューラルネットワークに基づいて取得することができる。しかし、これに限定されない。
【0049】
一実施形態では、プロセッサ120は、GTイメージ215と、10個のブラーイメージ221~230のぞれぞれとの間の差が、指定された基準差以下であるブラーイメージを、GTイメージ215と同じ時点で取得されたイメージと判定することができる。例えば、プロセッサ120は、GTイメージ215と、ブラーイメージ225とを、互いに同じ時点で取得されたイメージと判定することができる。これにより、電子装置101は、10個のGTイメージ211~220と、10個のブラーイメージ221~230との取得順序(又はフレーム順序)に応じて、互いに同じ時点で取得されたイメージセットを判別することができる。例えば、電子装置101は、10個のGTイメージ211~220のうち、特定のGTイメージと基準イメージとの間のフレーム差と同じフレーム差を有するブラーイメージを、10個のブラーイメージ221~230から識別することができる。一実施形態では、電子装置101は、特定のイメージと識別されたブラーイメージとを、互いに同じ時点で取得されたイメージセットと判定することができる。例えば、GTイメージ215とブラーイメージ225とが同じ時点で得られたイメージであると判断されると、GTイメージ211とブラーイメージ221とは、互いに同じ時点(例えば、T1)で取得されたイメージであると判別することができる。
【0050】
図2bを参照すると、カメラ151は、カメラ155よりも2フレームの時間に対応する時間だけ遅い時点(例えば、T3)で撮影を開始することができる。これにより、プロセッサ120の撮影命令の後、
図2bでは、8個のGTイメージ213~220と、10個のブラーイメージ221~230とを取得することができる。例えば、時点T1、T2で、ブラーイメージ221、222を取得することができる。例えば、時点(例えば、T3~T10)のそれぞれにおいて、GTイメージ213~220及びブラーイメージ223~230を取得することができる。
【0051】
一実施形態では、プロセッサ120は、8個のGTイメージ213~220と、10個のブラーイメージ221~230との間の時間を整列させることができる。例えば、プロセッサ120は、カメラ151を介して取得されたGTイメージ213~220のうち、指定された順番(例えば、5番目)のGTイメージ217と、カメラ155を介して取得された10個のブラーイメージ221~230のそれぞれとを比較することができる。
【0052】
一実施形態では、プロセッサ120は、GTイメージ217と10個のブラーイメージ221~230のそれぞれとの間の差が、指定された基準差以下であるブラーイメージを、GTイメージ217と同じ時点で取得されたイメージと判定することができる。例えば、プロセッサ120は、GTイメージ217とブラーイメージ227とを、互いに同じ時点で取得されたイメージと判定することができる。これにより、電子装置101は、8個のGTイメージ213~220と、10個のブラーイメージ221~230との取得順序(又はフレーム順序)に応じて、互いに同じ時点で取得されたイメージセットを判別することができる。例えば、GTイメージ217とブラーイメージ227とが、同じ時点で得られたイメージであると判断されると、GTイメージ213とブラーイメージ223とが、同じ時点で取得されたイメージであると判断することができる。
【0053】
図2cを参照すると、カメラ155は、カメラ151より1フレームの時間に対応する時間だけ遅い時点(例えば、T2)で撮影を開始することができる。これにより、プロセッサ120の撮影命令の後、
図2cでは、10個のGTイメージ211~220と、9個のブラーイメージ222~230とを取得することができる。例えば、時点T1で、GTイメージ211を取得することができる。例えば、時点(例えば、T2~T10)のそれぞれにおいて、GTイメージ212~220及びブラーイメージ222~230を取得することができる。
【0054】
一実施形態では、プロセッサ120は、10個のGTイメージ211~220と、9個のブラーイメージ222~230との間の時間を整列させることができる。例えば、プロセッサ120は、カメラ151を介して取得されたGTイメージ211~220のうち、指定された順番(例えば、5番目)のGTイメージ215と、カメラ155を介して取得された9個のブラーイメージ222~230のそれぞれとを比較することができる。
【0055】
一実施形態では、プロセッサ120は、GTイメージ215と9個のブラーイメージ222~230のそれぞれとの間の差が、指定された基準差以下であるブラーイメージを、GTイメージ215と同じ時点で取得されたイメージと判定することができる。例えば、プロセッサ120は、GTイメージ215とブラーイメージ225とを、互いに同じ時点で取得されたイメージと判定することができる。したがって、電子装置101は、10個のGTイメージ211~220と、9個のブラーイメージ222~230との取得順序(又はフレーム順序)に応じて、互いに同じ時点で取得されたイメージセットを判別することができる。例えば、GTイメージ215とブラーイメージ225とが、同じ時点で得られたイメージであると判定されると、GTイメージ212とブラーイメージ222とは、同じ時点で取得されたイメージであると判定することができる。
【0056】
図2dを参照すると、カメラ155は、カメラ151より3フレームの時間に対応する時間だけ遅い時点(例えば、T4)で撮影を開始することができる。これにより、プロセッサ120の撮影命令の後、
図2dでは、10個のGTイメージ211~220と7個のブラーイメージ224~230とを取得することができる。例えば、時点T1、T2、T3で、GTイメージ211、212、213を取得することができる。例えば、時点(例えば、T4~T10)のそれぞれにおいて、GTイメージ214~220及びブラーイメージ224~230を取得することができる。
【0057】
一実施形態では、プロセッサ120は、10個のGTイメージ211~220と、7個のブラーイメージ224~230との間の時間を整列させることができる。例えば、プロセッサ120は、カメラ151を介して取得されたGTイメージ211~220のうち、指定された順番(例えば5番目)のGTイメージ215と、カメラ155を介して取得された7個のブラーイメージ224~230のそれぞれとを比較することができる。
【0058】
一実施形態では、プロセッサ120は、GTイメージ215と7個のブラーイメージ224~230のそれぞれとの間の差が、指定された基準差以下であるブラーイメージを、GTイメージ215と同じ時点で取得されたイメージとして判定することができる。例えば、プロセッサ120は、GTイメージ215とブラーイメージ225とを、互いに同じ時点で取得されたイメージと判定することができる。したがって、電子装置101は、10個のGTイメージ211~220と、7個のブラーイメージ224~230との取得順序(又はフレーム順序)に応じて、互いに同じ時点で取得されたイメージセットを判別することができる。例えば、GTイメージ215とブラーイメージ225とが、同じ時点で得られたイメージであると判定されると、GTイメージ214とブラーイメージ224とが、同じ時点で取得されたイメージであると判定することができる。
【0059】
一実施形態では、プロセッサ120は、互いに同じ時点(又は実質的に同じ時点)(又は互いに対応する時点)で取得されたGTイメージ及びブラーイメージに基づいて、学習データセットを生成することができる。学習データセットは、一対のGTイメージとブラーイメージに基づくイメージを含むことができる。学習データは、複数の学習データセットを含むことができる。学習データセットの生成は、
図3~
図6を参照して説明することができる。
【0060】
図3は、カメラを介して取得されるGT(ground truth)イメージ及びブラー(blur)イメージの一例を示す。
【0061】
図3を参照すると、GTイメージ211とブラーイメージ221とは、カメラ151、155間の物理的位置差によって、視野(field of view、FOV)が異なる場合がある。例えば、GTイメージ211の車両のナンバープレート310は、GTイメージ211の中心垂直線301の左右にまたがっているが、ブラーイメージ221の車両のナンバープレート320は、ブラーイメージ221の中心垂直線301の右側に位置してもよい。
図3では、GTイメージ211及びブラーイメージ221の車両の領域の大部分が全て水平中心線305の下に位置するように例示されているが、カメラ151、155のそれぞれの配置位置及び/又は角度によって、カメラ151、155の視野が互いに異なってもよい。したがって、GTイメージ211及びブラーイメージ221に基づいて、学習データを生成するために、GTイメージ211及びブラーイメージ221に対する所定のイメージ処理を必要とすることがある。以下では、
図4~
図6を参照して、学習データを生成するためのGTイメージ211及びブラーイメージ221のイメージ処理動作について説明する。
【0062】
図4は、GTイメージ211及びブラーイメージ221をクロップする動作の一例を示す。
【0063】
一実施形態では、プロセッサ120は、GTイメージ211をクロップすることができる。例えば、プロセッサ120は、GTイメージ211をクロップすることによって、GTイメージ211の外郭領域を除去することができる。一実施形態では、プロセッサ120は、GTイメージ211の指定されたサイズ(例えば、GTイメージ211の90%)の領域410をクロップすることによって、クロップされたGTイメージ420を取得(又は抽出)(又は生成)することができる。一実施形態では、プロセッサ120は、GTイメージ211の指定された領域410(例えば、中央領域)をクロップすることによって、クロップされたGTイメージ420を取得することができる。しかし、これに限定されない。一実施形態では、プロセッサ120は、オブジェクトを含む領域をクロップすることによって、クロップされたGTイメージ420を取得することができる。一実施形態では、プロセッサ120は、GTイメージ211内のOD(object detection)モデルを介して、オブジェクトを識別することができる。一実施形態では、プロセッサ120は、識別されたオブジェクトを含む領域410をクロップすることによって、クロップされたGTイメージ420を取得することができる。
【0064】
一実施形態では、プロセッサ120は、GTイメージ211と同じ時点で取得されたブラーイメージ221から、クロップされたGTイメージ420に対応する他の領域430を識別することができる。一実施形態では、プロセッサ120は、ブラーイメージ221と、クロップされたGTイメージ420とを比較して、他の領域430を識別することができる。
【0065】
例えば、クロップされたGTイメージ420とブラーイメージ221との比較は、クロップされたGTイメージ420とブラーイメージ221の特定の領域のそれぞれとの間の差分イメージに基づいてもよい。一実施形態では、特定の領域は、クロップされたGTイメージ420と比較される領域であり得る。一実施形態では、特定の領域は、クロップされたGTイメージ420がブラーイメージ221内でシフトされるにつれて位置する領域であり得る。例えば、電子装置101は、差分イメージのうちの差が最も少ない(又は、一致率が最も高い)差分イメージに関連する特定の領域を、ブラーイメージ221の他の領域430として識別することができる。しかし、これに限定されない。一実施形態では、電子装置101は、クロップされたGTイメージ420とブラーイメージ221との特徴マップを比較することに基づいて、ブラーイメージ221の他の領域430を識別することができる。
【0066】
例えば、クロップされたGTイメージ420とブラーイメージ221との比較は、クロップされたGTイメージ420とブラーイメージ221の特定の領域のそれぞれとの間の特徴点座標間の距離差に基づいてもよい。例えば、電子装置101は、クロップされたGTイメージ420の特徴点を識別することができる。例えば、特徴点は、クロップドGTイメージ420に含まれるオブジェクト(例えば、車両、建物、歩行者)の特定の位置(例えば、ヘッドライト、ナンバープレート、頭部)を含み得る。例えば、電子装置101は、ブラーイメージ221の特徴点を識別することができる。例えば、電子装置101は、互いに対応するクロップされたGTイメージ420の特徴点と、ブラーイメージ221の特定の領域のそれぞれにおける特徴点との間の距離を識別することができる。一実施形態では、電子装置101は、特徴点の距離が最も短い特定の領域を、ブラーイメージ221の他の領域430として識別することができる。
【0067】
例えば、クロップされたGTイメージ420とブラーイメージ221との比較は、各差分イメージの正規化された差分値(例えば、0から1の間の正規化)及び特定の領域のそれぞれにおける距離の正規化された距離に基づいてもよい。例えば、電子装置101は、正規化された差分値と正規化された距離との重み付けが最も低い特定の領域を、ブラーイメージ221の他の領域430として識別することができる。
【0068】
一実施形態では、プロセッサ120は、ブラーイメージ221でクロップされたGTイメージ420に対応する他の領域430を、クロップされたブラーイメージ440にクロップ(又は取得)(又は抽出)することができる。一実施形態では、クロップされたブラーイメージ440のサイズと、クロップされたGTイメージ420のサイズとは、互いに等しくてもよい。一実施形態では、クロップされたGTイメージ420に含まれるオブジェクトの種類、サイズ及び位置は、クロップされたブラーイメージ440に含まれるオブジェクトの種類、サイズ及び位置と同じであってもよい。
【0069】
実施形態によれば、プロセッサ120は、クロップされたGTイメージ420に対して、イメージ補正を実行することができる。例えば、プロセッサ120は、クロップされたGTイメージ420の明るさを高めることができる。
【0070】
図5は、GTイメージ211から関心領域を抽出する動作の一例を示す。
【0071】
図5を参照すると、プロセッサ120は、クロップされたGTイメージ420内のオブジェクトを識別することができる。一実施形態では、プロセッサ120は、クロップされたGTイメージ420内のイメージセグメンテーション(image segmentation)モデル及び/又はオブジェクト検出(object detection、OD)モデルを介して、指定された種類のオブジェクト(例えば、車両、交通標識(traffic sign)、道路標示(road marking))を識別することができる。一実施形態では、プロセッサ120は、オブジェクトを識別するためのマスクのサイズを調整することによって、クロップされたGTイメージ420内のオブジェクトを識別することができる。一実施形態では、プロセッサ120は、オブジェクトを識別するために、マスクを大きな順序で使用することができる。
【0072】
一実施形態では、プロセッサ120は、クロップされたGTイメージ420で識別されたオブジェクト(すなわち、自動車)の領域510を、GTオブジェクトイメージ520として抽出(又は取得)することができる。一実施形態では、プロセッサ120は、識別されたオブジェクトを含む領域510をクロップすることによって、GTオブジェクトイメージ520を取得することができる。
【0073】
一実施形態では、プロセッサ120は、GTオブジェクトイメージ520から、オブジェクトのテキスト領域(例えば、車両のナンバープレート、交通標識の交通案内、道路標示の道路案内)に対応する関心領域530を識別することができる。一実施形態では、プロセッサ120は、イメージセグメンテーションモデルに基づいて、GTオブジェクトイメージ520から関心領域530を識別することができる。
図5において、左下端のGTオブジェクトイメージ520は、 右上端のGTオブジェクトイメージ520を拡大して表示したものであり、左下端のGTオブジェクトイメージ520と、右上端のGTオブジェクトイメージ520とは、同じイメージであってもよい。
【0074】
一実施形態では、プロセッサ120は、関心領域530で図形フィッティング(例えば、三角形、四角形、五角形、又は多角形を介したフィッティング)を介して、頂点531、533、535、537を計算(又は、識別)(又は決定)することができる。一実施形態では、プロセッサ120は、関心領域530内の図形フィッティングを介して、頂点531、533、535、537のそれぞれの座標を識別することができる。例えば、頂点531、533、535、537のうち、左下端の頂点531を、原点として設定した2次元仮想座標系において、電子装置101は、頂点531、533、535、537のそれぞれの座標を識別することができる。例えば、2次元仮想座標系のx軸は、GTオブジェクトイメージ520の下側端に沿って形成されてもよい。2次元仮想座標系のy軸は、GTオブジェクトイメージ520の左側端に沿って形成されてもよい。
【0075】
一実施形態では、プロセッサ120は、オブジェクトの領域510及びフィッティングされた関心領域540を、クロップされたGTイメージ420にマーキング(又は設定)(又は識別)(又は指定)することができる。
【0076】
一実施形態では、プロセッサ120は、フィッティングされた関心領域540を変換することができる。例えば、プロセッサ120は、指定された変換アルゴリズム(例えば、剛体(rigid-body)変換、擬似(similarity)変換、線形(linear)変換、アフィン(affine)変換、及び/又は遠近(perspective)変換のためのアルゴリズム)を介してフィッティングされた関心領域540を変換することができる。一実施形態では、プロセッサ120は、フィッティングされた関心領域540を、ナンバープレート形状の図形(例えば、長方形)に変換することができる。しかし、これに限定されない。
【0077】
一実施形態では、クロップされたGTイメージ420の(変換された)フィッティングされた関心領域540に対して、ナンバープレートに表示された文字列を識別(又は認識)するためのアルゴリズム(又は動作)を遂行(又は実行)することができる。前記アルゴリズムは、イメージの文字列を識別するためのアルゴリズム(例えば、OCR(optical character recognition)機能によるアルゴリズム)を含むことができる。一実施形態では、クロップされたGTイメージ420のフィッティングされた関心領域540のOCRアルゴリズムに基づいて、ナンバープレートに表示された文字列を識別(又は認識)することができる。
【0078】
一実施形態では、プロセッサ120は、クロップされたGTイメージ420のフィッティングされた関心領域540に、ナンバープレートに表示された文字列をラベル付けすることができる。
【0079】
図6は、ブラーイメージ221で関心領域を設定する動作の一例を示す。
【0080】
図6を参照すると、プロセッサ120は、オブジェクトの領域610及び関心領域640を、クロップされたブラーイメージ440にマーキング(又は設定)(又は識別)(又は指定)することができる。一実施形態では、プロセッサ120は、クロップされたGTイメージ420のオブジェクトの領域510及び関心領域540に基づいて、クロップされたブラーイメージ440に、オブジェクトの領域610及び関心領域640をマーキング(又は、設定)(又は、識別)(又は指定)することができる。一実施形態では、クロップされたブラーイメージ440に表示されたオブジェクトの領域610のサイズ及び位置は、クロップされたGTイメージ420に表示されたオブジェクトの領域510のサイズ及び位置と互いに同一であってもよい。一実施形態では、クロップされたブラーイメージ440に表示された関心領域640のサイズ及び位置は、クロップされたGTイメージ420に表示された関心領域540のサイズ及び位置と互いに同一であってもよい。
【0081】
一実施形態では、プロセッサ120は、クロップされたブラーイメージ440の関心領域640に、ナンバープレートに表示された文字列をラベル付けすることができる。一実施形態では、文字列は、クロップされたGTイメージ420のフィッティングされた関心領域540で識別された文字列と同じであり得る。
【0082】
一実施形態では、プロセッサ120は、オブジェクトの領域510及び関心領域540が、マーキング(又は、設定)(又は、識別)(又は、指定)されたクロップされたGTイメージ420と、オブジェクトの領域610及び関心領域640が、マーキング(又は、設定)(又は、識別)(又は、指定)されたクロップされたブラーイメージ440とを、学習データセットとして設定(又は識別)(又は取得)することができる。
【0083】
一実施形態では、プロセッサ120は、次回のイメージ(例えば、GTイメージ212及びブラーイメージ222)に対して、GTイメージ211及びブラーイメージ221に対して行われた動作を繰り返し実行することができる。
【0084】
前述したように、電子装置101は、互いに同一時点で、同じ時点(又は実質的に同じ時点)(又は互いに対応する時点)で取得されたGTイメージ及びブラーイメージに基づいて、学習データを構築することができる。電子装置101は、異なるシャッタースピードに従って取得されるGTイメージ及びブラーイメージに基づいて、学習データを構築することができる。これにより、電子装置101は、ユーザの介入が最小化されたGTイメージ及びブラーイメージに基づいて、学習データを構築することができる。また、電子装置101は、ユーザの介入が最小限に抑えられることにより、大量の学習データを構築することができる。また、電子装置101は、ブラーイメージに対する人工知能モデルの出力結果を、GTイメージに基づいて学習することにより、デブラー及び/又はデノイズのための人工知能モデルを構築することができる。これにより、電子装置101は、解像度、ホワイトノイズ、又はブラー(blur)現象のうち少なくとも1つによって識別されないイメージ内の文字列を復元することができる。また、電子装置101は、車両のナンバープレートだけでなく、交通標識及び/又は道路標示に関する大量の学習データを構築することができる。
【0085】
図7は、一実施形態による、電子装置の動作を説明するための例示的なフローチャートを示す。
【0086】
図7は、
図1~
図6を参照して説明することができる。
図7の動作は、電子装置101によって実行することができる。
図7の動作は、メモリ130に格納された命令が実行されることによって行うことができる。
図7の動作は、プロセッサ120がメモリ130に格納された命令を実行することによって行ってもよい。
【0087】
図7を参照すると、動作710において、電子装置101は、複数のカメラ151、155からイメージを取得することができる。一実施形態では、カメラ151、155は、シャッタースピードが互いに異なっていてもよい。例えば、カメラ151のシャッタースピードは、カメラ155のシャッタースピードより速くてもよい。例えば、カメラ151、155のそれぞれの角度は、互いに同一である(又は実質的に同一である)(又は対応する)ように設定(又は配置)されてもよい。例えば、カメラ151、155のそれぞれの解像度、及び/又はレンズ特性(例えば、画角、焦点距離、オートフォーカス、fナンバー、ISO感度、又は光学ズーム)は、互いに同一である(又は実質的に同一である)(又は対応する)ように設定できる。
【0088】
一実施形態では、電子装置101は、カメラ151、155に、互いに同一である(又は実質的に同一である)(又は、対応する)時点で、撮影を指示(又は命令)することによって、カメラ151、155からイメージを取得することができる。例えば、時点が互いに同じである(又は実質的に同じである)(又は対応する)ことは、撮影の指示(又は命令)が、指定されたオフセット(又はフレームレートに応じたフレーム間隔)内に生成及び/又は送信されることを意味することがある。
【0089】
動作720において、電子装置101は、第1のイメージと第2のイメージとの間で互いに重なる領域を識別することができる。一実施形態では、電子装置101は、カメラ151から取得されたイメージのうち第1のイメージと、カメラ155から取得されたイメージのうち第1のイメージと同じ時点で取得される第2のイメージとの間で互いに重なる領域を識別することができる。
【0090】
一実施形態では、電子装置101は、第1のイメージをクロップすることに基づいて、第1のイメージと第2のイメージとの間の重なる領域を識別することができる。例えば、電子装置101は、第1のイメージをクロップすることによって、第1のイメージの外郭領域を除去することができる。一実施形態では、電子装置101は、第1のイメージの指定されたサイズ(例えば、第1のイメージの90%)の領域をクロップすることによって、クロップされた第1のイメージを取得(又は抽出)(又は生成)することができる。一実施形態では、電子装置101は、第1のイメージの指定された領域(例えば、中央領域)をクロップすることによって、クロップされた第1のイメージを取得することができる。
【0091】
一実施形態では、電子装置101は、第1のイメージと同じ時点で取得された第2のイメージ内のクロップされた第1のイメージに対応する他の領域を識別することができる。一実施形態では、電子装置101は、第2のイメージと、クロップされた第1のイメージとを比較して、他の領域を識別することができる。
【0092】
例えば、クロップされた第1のイメージと第2のイメージとの比較は、クロップされた第1のイメージと第2のイメージの特定の領域のそれぞれとの間の差分イメージに基づいてもよい。一実施形態では、特定の領域は、クロップされた第1のイメージと比較される領域であり得る。一実施形態では、特定の領域は、クロップされた第1のイメージが第2のイメージからシフトするにつれて位置する領域であり得る。例えば、電子装置101は、差分イメージのうちの差が最も少ない(又は、一致率が最も高い)差分イメージに関連する特定の領域を、第2のイメージの他の領域として識別することができる。しかし、これに限定されない。一実施形態では、電子装置101は、クロップされた第1のイメージと第2のイメージとの特徴マップを比較することに基づいて、第2のイメージの他の領域を識別することができる。
【0093】
例えば、クロップされた第1のイメージと第2のイメージとの比較は、クロップされた第1のイメージと第2のイメージの特定の領域のそれぞれとの間の特徴点座標間の距離差に基づいてもよい。例えば、電子装置101は、クロップされた第1のイメージの特徴点を識別することができる。例えば、特徴点は、クロップされた第1のイメージに含まれるオブジェクト(例えば、車両、建物、歩行者)の特定の位置(例えば、ヘッドライト、ナンバープレート、頭部)を含み得る。例えば、電子装置101は、第2のイメージの特徴点を識別することができる。例えば、電子装置101は、互いに対応するクロップされた第1のイメージの特徴点と、第2のイメージの特定の領域のそれぞれにおける特徴点との間の距離を識別することができる。一実施形態では、電子装置101は、特徴点の距離が最も短い特定の領域を、第2のイメージの他の領域として識別することができる。
【0094】
例えば、クロップされた第1のイメージと第2のイメージとの比較は、各差分イメージの正規化された差分値(例えば、0~1の間の正規化)と特定の領域のそれぞれにおける距離の正規化された距離に基づいてもよい。例えば、電子装置101は、正規化された差分値と正規化された距離との重み付けが最も低い特定の領域を、第2のイメージの他の領域として識別することができる。
【0095】
一実施形態では、電子装置101は、第2のイメージから、クロップされた第1のイメージに対応する他の領域を、クロップされた第2のイメージとしてクロップ(又は取得)(又は抽出)することができる。一実施形態では、クロップされた第2のイメージのサイズと、クロップされた第1のイメージのサイズとは、互いに等しくてもよい。一実施形態では、クロップされた第1のイメージに含まれるオブジェクトの種類、サイズ及び位置は、クロップされた第2のイメージに含まれるオブジェクトの種類、サイズ及び位置と同じであってもよい。
【0096】
一実施形態では、電子装置101は、クロップされた第1のイメージと、クロップされた第2のイメージとを、第1のイメージと第2のイメージとの間で重なり合う領域として識別することができる。
【0097】
動作730において、電子装置101は、第1のイメージの第1の重複領域内の第1の関心領域を識別することができる。一実施形態では、電子装置101は、第1のイメージの第1の重複領域におけるオブジェクトの識別、及び、識別されたオブジェクト内の第1の関心領域の識別を順次実行することができる。
【0098】
一実施形態では、電子装置101は、クロップされた第1のイメージから、オブジェクトを識別することができる。一実施形態では、電子装置101は、クロップされた第1のイメージで、イメージセグメントテーション(image segmentation)モデル及び/又はオブジェクト検出(object detection、OD)モデルを介して、指定された種類のオブジェクト(例えば、車両、交通標識、道路標示)を識別することができる。一実施形態では、電子装置101は、オブジェクトを識別するためのマスクのサイズを調整することによって、クロップされた第1のイメージ内のオブジェクトを識別することができる。一実施形態では、電子装置101は、オブジェクトを識別するために、マスクを大きな順序から使用することができる。
【0099】
一実施形態では、電子装置101は、クロップされた第1のイメージで識別されたオブジェクト(すなわち、自動車)の領域を、オブジェクトイメージとして抽出(又は取得)することができる。一実施形態では、電子装置101は、識別されたオブジェクトを含む領域をクロップすることによって、オブジェクトイメージを取得することができる。
【0100】
一実施形態では、電子装置101は、オブジェクトイメージ内のオブジェクトのテキスト領域(例えば、車両のナンバープレート、交通標識の交通案内、道路標示の道路案内)に対応する関心領域を識別することができる。一実施形態では、電子装置101は、イメージセグメンテーションモデルに基づいて、オブジェクトイメージ内の関心領域を識別することができる。
図5において、 左下端のオブジェクトイメージは、左下端のオブジェクトイメージを拡大して表示したものであり、右上端のオブジェクトイメージと右上端のオブジェクトイメージとは、同じイメージであってもよい。
【0101】
一実施形態では、電子装置101は、関心領域における図形フィッティング(例えば、三角形、四角形、五角形、又は多角形を介したフィッティング)を介して、頂点を計算(又は識別)(又は決定)することができる。一実施形態では、電子装置101は、関心領域の図形フィッティングを介して、頂点のそれぞれの座標を識別することができる。例えば、頂点のうち左下端の頂点を原点として設定した2次元仮想座標系で、電子装置101は、各頂点の座標を識別することができる。
【0102】
一実施形態では、電子装置101は、クロップされた第1のイメージのオブジェクトの領域内のフィッティングされた関心領域を識別することができる。
【0103】
動作740において、電子装置101は、第2のイメージの第2の重複領域内の第1の関心領域に対応する第2の関心領域を識別することができる。一実施形態では、電子装置101は、第2のイメージの第2の重複領域において、オブジェクト領域の設定と、オブジェクト領域内の第2の関心領域の設定とを順次実行することができる。
【0104】
一実施形態では、電子装置101は、オブジェクトの領域及び関心領域を、クロップされた第2のイメージにマーキング(又は設定)(又は識別)(又は指定)することができる。一実施形態では、電子装置101は、クロップされた第1のイメージのオブジェクトの領域及び関心領域に基づいて、クロップされた第2のイメージに、オブジェクトの領域及び関心領域をマーキング(又は、設定)(又は、識別)(又は、指定)することができる。一実施形態では、クロップされた第2のイメージに表示されるオブジェクトの領域のサイズ及び位置は、クロップされた第1のイメージに表示されたオブジェクトの領域のサイズ及び位置と互いに等しくてもよい。一実施形態では、クロップされた第2のイメージに表示された関心領域のサイズ及び位置は、クロップされた第1のイメージに表示された関心領域のサイズ及び位置と互いに等しくてもよい。
【0105】
動作750において、電子装置101は、第1の関心領域で識別されたオブジェクトを、第2の関心領域にラベル付け(labeling)することができる。一実施形態では、電子装置101は、第1の関心領域で識別されたオブジェクトの文字列を、第2の関心領域にラベル付けすることができる。
【0106】
一実施形態では、電子装置101は、フィッティングされた関心領域を変換することができる。例えば、電子装置101は、指定された変換アルゴリズム(例えば、剛体(rigid-body)変換、擬似変換、線形変換、アフィン変換、及び/又は遠近変換のためのアルゴリズム)を介してフィッティングされた関心領域を変換することができる。一実施形態では、電子装置101は、フィッティングされた関心領域を、ナンバープレート形状の図形(例えば、長方形)に変換することができる。しかし、これに限定されない。
【0107】
一実施形態では、クロップされた第1のイメージの(変換された)フィッティングされた関心領域に対して、ナンバープレートに表示された文字列を識別(又は認識)するためのアルゴリズム(又は動作)を遂行(又は実行)することができる。前記アルゴリズムは、イメージの文字列を識別するためのアルゴリズム(例えば、OCR(optical character recognition)機能によるアルゴリズム)を含むことができる。一実施形態では、クロップされた第1のイメージのフィッティングされた関心領域のOCRアルゴリズムに基づいて、ナンバープレートに表示された文字列を識別(又は認識)することができる。
【0108】
一実施形態では、電子装置101は、クロップされた第2のイメージの関心領域に、ナンバープレートに表示された文字列をラベル付けすることができる。一実施形態では、文字列は、クロップされた第1のイメージのフィッティングされた関心領域で識別された文字列と同じであり得る。
【0109】
その後、電子装置101は、オブジェクトの領域及び関心領域がマーキングされたクロップされた第1のイメージと、オブジェクトの領域及び関心領域がマーキングされたクロップされた第2のイメージとを、学習データセットとして設定(又は、識別)(又は、取得)することができる。
【0110】
その後、電子装置101は、次回のイメージ(例えば、第1のイメージ及び第2のイメージ)について、第1のイメージ及び第2のイメージに対して行われた動作を繰り返し実行することができる。
【0111】
図8は、一実施形態による、車両の自律走行システムを示すブロック図の一例を示す。
【0112】
図8による車両の自律走行システム800は、センサ803、イメージ前処理器805、ディープラーニングネットワーク807、人工知能(AI)プロセッサ809、車両制御モジュール811、ネットワークインタフェース813、及び通信部815を含むディープラーニングネットワークであり得る。様々な実施形態では、各要素は、様々なインタフェースを介して接続することができる。例えば、センサ803によってセンシングされ、出力されたセンサデータは、イメージ前処理器805に供給(feed)されることができる。イメージ前処理器805によって処理されたセンサデータは、AIプロセッサ809で実行(run)されるディープラーニングネットワーク807に供給されてもよい。AIプロセッサ809によって実行(run)されるディープラーニングネットワーク807の出力は、車両制御モジュール811に供給されてもよい。AIプロセッサ809で実行(run)されるディープラーニングネットワーク807の中間結果は、AIプロセッサ809に供給することができる。様々な実施形態では、ネットワークインタフェース813は、車載電子装置(例えば、
図1の電子装置101及び/又はカメラ151、155)と通信を実行することによって、車両の自律走行のための自律走行経路情報及び/又は自律走行制御命令を、内部ブロック構成に伝達する。一実施形態では、ネットワークインタフェース813は、センサ803を介して取得したセンサデータを、外部サーバに送信するために使用され得る。いくつかの実施形態では、自律走行システム800は、適切に(as appropriate)追加的な又はより少ない構成要素を含んでもよい。例えば、いくつかの実施形態では、イメージ前処理器805は、選択的(optional)構成要素であり得る。別の例では、後処理構成要素(図示せず)は、出力が車両制御モジュール811に提供される前に、ディープラーニングネットワーク807の出力で、後処理を実行するために、自律走行システム800内に含まれてもよい。
【0113】
いくつかの実施形態では、センサ803は、1つ以上のセンサを含むことができる。様々な実施形態では、センサ803は、車両の異なる位置に取り付けることができる。センサ803は、1つ以上の異なる方向に向けられてもよい。例えば、センサ803は、前面(forward-facing)、後面(rear-facing)、側面(side-facing)などの方向を向くように、車両の前(front)、側(sides)、後(rear)、及び/又はループ(roof)に取り付けることができる。いくつかの実施形態では、センサ803は、高ダイナミックレンジカメラ(high dynamic range cameras)などのイメージセンサであってもよい。いくつかの実施形態では、センサ803は、非視覚センサ(non-visual sensors)を含む。いくつかの実施形態では、センサ803は、イメージセンサに加えて、レーダ(RADAR)、LiDAR(Light Detection And Ranging)、及び/又は超音波センサを含む。いくつかの実施形態では、センサ803は、車両制御モジュール811を有する車両に取り付けられて(mounted)いない。例えば、センサ803は、センサデータをキャプチャするためのディープラーニングシステムの一部として含まれ、環境又は道路に取り付けられてもよいし、及び/又は周囲の車両に取り付けられてもよい。
【0114】
いくつかの実施形態では、イメージ前処理器(Image pre-processor)805は、センサ803のセンサデータを前処理するために使用することができる。例えば、イメージ前処理器805は、センサデータを前処理するために、1つ又はそれ以上の構成要素にセンサデータをスプリット(split)するために、及び/又は1つ又はそれ以上の構成要素を後処理するために使用することができる。いくつかの実施形態では、イメージ前処理器805は、グラフィック処理装置(graphics processing unit;GPU)、中央処理装置(central processing unit;CPU)、イメージ信号プロセッサ、又は専門化されたイメージプロセッサ(specialized image processor)であってもよい。様々な実施形態では、イメージ前処理器805は、高ダイナミックレンジデータ(high dynamic range data)を処理するためのトーンマッパー(tone-mapper)プロセッサであり得る。いくつかの実施形態では、イメージ前処理器805は、AIプロセッサ809の構成要素であってもよい。
【0115】
いくつかの実施形態では、ディープラーニングネットワーク(Deep learning network)807は、自律車両を制御するための制御命令を実施するためのディープラーニングネットワークであり得る。例えば、ディープラーニングネットワーク807は、センサデータを使用してトレーニングされた畳み込みニューラルネットワーク(CNN)などの人工ニューラルネットワークであり得、ディープラーニングネットワーク807の出力は、車両制御モジュール811に提供される。
【0116】
いくつかの実施形態では、人工知能(AI)プロセッサ809は、ディープラーニングネットワーク807を実行(run)するためのハードウェアプロセッサであり得る。いくつかの実施形態では、AIプロセッサ809は、センサデータに対して畳み込みニューラルネットワーク(CNN)を介して推論(inference)を実行するための専門化されたAIプロセッサである。いくつかの実施形態では、AIプロセッサ809は、センサデータのビット深さ(bit depth)のために最適化されてもよい。いくつかの実施形態では、AIプロセッサ809は、畳み込み、内積、ベクトル、及び/又は行列演算を含むニューラルネットワークの演算などのディープラーニング演算に最適化されてもよい。いくつかの実施形態では、AIプロセッサ809は、並列処理を効果的に実行できる複数のグラフィック処理装置(GPU)を介して実装されてもよい。
【0117】
様々な実施形態では、AIプロセッサ809は、AIプロセッサ809が実行されている間に、センサ803から受信されたセンサデータに対してディープラーニング分析を行い、車両を少なくとも部分的に自律的に動作させるために使用された機械学習の結果を決定するために引き起こされる命令を有するAIプロセッサを提供するように構成されたメモリに、入出力インタフェースを介してカップリングすることができる。いくつかの実施形態では、車両制御モジュール(Vehicle Control Module)811は、人工知能(AI)プロセッサ809から出力された車両制御のための命令を処理し、車両の様々なモジュールを制御するために、AIプロセッサ809の出力を、各車両のモジュールを制御するための命令に変換する(translate)ために使用することができる。いくつかの実施形態では、車両制御モジュール811は、自律走行用の車両を制御するために用いられる。いくつかの実施形態では、車両制御モジュール811は、車両のステアリング及び/又は速度を調整することができる。例えば、車両制御モジュール811は、減速、加速、ステアリング、車線変更、車線維持などの車両の走行を制御するために使用することができる。いくつかの実施形態では、車両制御モジュール811は、ブレーキライト(brake lights)、方向指示灯(turns signals)、ヘッドライト(headlights)などの車両照明(vehicle lighting)を制御するための制御信号を生成することができる。いくつかの実施形態では、車両制御モジュール811は、車両の音響システム(vehicle's sound system)、車両の音声警告(vehicle's audio warnings)、車両のマイクロホンシステム(vehicle's microphone system)、車両のホーンシステム(vehicle's horn system)などの車両オーディオ関連システムを制御するために使用することができる。
【0118】
いくつかの実施形態では、車両制御モジュール811は、意図された目的地へのアクセス又は潜在的な衝突(potential collision)などの走行イベントの乗客及び/又は運転者を知らせるための警告システムを含む通知システム(notification systems)を制御するために使用することができる。いくつかの実施形態では、車両制御モジュール811は、車両のセンサ803などのセンサを調整するために使用されてもよい。例えば、車両制御モジュール811は、センサ803の指向方向の修正(modifying the orientation)、センサ803の出力解像度及び/又はフォーマットタイプの変更、キャプチャレート(capture rate)の増加又は減少、ダイナミックレンジ(dynamic range)の調整、カメラの焦点の調整を行うことができる。さらに、車両制御モジュール811は、センサの動作を個別に又は集団的にオン/オフすることができる。
【0119】
いくつかの実施形態では、車両制御モジュール811は、フィルタの周波数の範囲を変更したり、特徴(features)及び/又はオブジェクトの検出のためのエッジ検出パラメータ(edge detection parameter)を調整したり、ビット深さ及びチャネルを調整(adjusting channels and bit depth)したりするなどの方法で、イメージ前処理器805のパラメータを変更するために使用することができる。様々な実施形態では、車両制御モジュール811は、車両の自律走行及び/又は車両の運転者支援(Driver assistance)機能を制御するために使用されてもよい。
【0120】
いくつかの実施形態では、ネットワークインタフェース813は、自律走行システム800のブロック構成と通信部815との間の内部インタフェースを担当することができる。具体的には、ネットワークインタフェース813は、音声データを含むデータを受信及び/又は発信するための通信インタフェースであり得る。様々な実施形態では、ネットワークインタフェース813は、通信部815を介して音声通話を接続するか、テキストメッセージを受信及び/又は発信するか、センサデータを送信するか、自律走行システムで車両のソフトウェアを更新するか、又は車両の自律走行システムのソフトウェアを更新するために、外部のサーバと接続することができる。
【0121】
様々な実施形態では、通信部815は、セルラー又はWiFi方式の様々な無線インタフェースを含むことができる。例えば、ネットワークインタフェース813は、通信部815を介して接続された外部サーバから、センサ803、イメージ前処理器805、ディープラーニングネットワーク807、AIプロセッサ809、車両制御モジュール811のための動作パラメータ及び/又は命令に対する更新を受信するために使用することができる。例えば、ディープラーニングネットワーク807の機械学習モデルは、通信部815を用いて更新することができる。さらに別の例によれば、通信部815は、イメージ処理パラメータなどのイメージ前処理器805の動作パラメータ及び/又はセンサ803のファームウェアを更新するために使用されてもよい。
【0122】
別の実施形態では、通信部815は、事故又は事故が発生する恐れのある(near-accident)イベントで、緊急サービス(emergency services)と緊急連絡(emergency contact)のための通信を活性化するために使用することができる。例えば、衝突イベントでは、通信部815は、支援のための緊急サービスを呼び出すために使用され、衝突の詳細及び車両の位置の緊急サービスを外部に通知するために使用され得る。様々な実施形態では、通信部815は、予想到着時刻及び/又は目的地の位置を更新又は取得することができる。
【0123】
一実施形態によれば、
図8に示す自律走行システム800は、車両の電子装置101で構成されてもよい。一実施形態によれば、自律走行システム800のAIプロセッサ809は、車両の自律走行時に、ユーザから自律走行解除イベントが発生した場合、自律走行解除イベント関連情報を、ディープラーニングネットワークのトレーニングセットデータに入力するように制御することによって、車両の自律走行ソフトウェアを学習させるように制御することができる。
【0124】
図9及び
図10は、一実施形態による、自律走行移動体を示すブロック図の一例を示す。
図11は、様々な実施形態によるユーザ装置に関連するゲートウェイの例を示す。
【0125】
図9を参照すると、本実施形態による自律走行移動体900は、制御装置1000、センシングモジュール904a、904b、904c、904d、エンジン906、及びユーザインタフェース908を含むことができる。
【0126】
自律走行移動体900は、自律走行モード又はマニュアルモードを備えることができる。一例として、ユーザインタフェース908を介して受信されたユーザ入力に従って、マニュアルモードから自律走行モードに切り替えても、又は自律走行モードからマニュアルモードに切り替えてもよい。
【0127】
自律走行移動体900が自律走行モードで運行される場合、自律走行移動体900は、制御装置1000の制御下で運行することができる。
【0128】
本実施形態では、制御装置1000は、メモリ1022とプロセッサ1024とを含むコントローラ1020、センサ1010、通信装置1030、オブジェクト検出装置1040を含むことができる。
【0129】
ここで、オブジェクト検出装置1040は、距離測定装置の全部又は一部の機能を実行することができる。
【0130】
すなわち、本実施形態では、オブジェク検出装置1040は、自律走行移動体900の外側に位置するオブジェクを検出するための装置であり、オブジェク検出装置1040は、自律走行移動体900の外側に位置するオブジェクを検出し、検出結果に応じたオブジェクト情報を生成することができる。
【0131】
オブジェクト情報は、オブジェクトの存在の有無に関する情報、オブジェクトの位置情報、移動体とオブジェクトとの距離情報、及び移動体とオブジェクトとの相対速度情報を含むことができる。
【0132】
オブジェクトは、車線、他の車両、歩行者、交通信号、光、道路、構造物、過速防止顎、地形物、動物など、自律走行移動体900の外側に位置する様々なオブジェクトを含むことができる。ここで、交通信号は、交通信号灯、交通標識、道路面に描かれた文様又はテキストを含む概念であり得る。そして、光は、他の車両に設けられたランプから生成された光であってもよく、街灯で生成された光であっても、太陽光であってもよい。
【0133】
そして、構造物は、道路の周りに位置し、地面に固定された物体であり得る。例えば、構造物は、街灯、街路樹、建物、電柱、信号灯、橋を含むことができる。地形物は、山、丘などを含み得る。
【0134】
そのようなオブジェクト検出装置1040は、カメラモジュールを含むことができる。コントローラ1020は、カメラモジュールで撮影された外部イメージから、オブジェクト情報を抽出し、その情報をコントローラ1020に処理させることができる。
【0135】
また、オブジェクト検出装置1040は、外部環境を認識するための撮像装置をさらに含んでもよい。LIDARに加えて、RADAR、GPS装置、走行距離測定装置(Odometry)及び他のコンピュータビジョン装置、超音波センサ、赤外線センサなどを使用することができ、これらの装置は、必要に応じて、選択又は同時に動作し、より正確な感知を可能にする。
【0136】
一方、本発明の一実施形態による距離測定装置は、自律走行移動体900とオブジェクトとの間の距離を算出し、自律走行移動体900の制御装置1000と連携して算出された距離に基づいて、移動体の動作を制御することができる。
【0137】
一例として、自律走行移動体900とオブジェクトとの間の距離に応じて追突する可能性のある場合、自律走行移動体900は、速度を低下又は停止するように、ブレーキを制御することができる。別の例として、オブジェクトが移動するオブジェクトである場合、自律走行移動体900は、オブジェクトと所定の距離以上を維持するように、自律走行移動体900の走行速度を制御することができる。
【0138】
本発明の一実施形態による距離測定装置は、自律走行移動体900の制御装置1000内の一モジュールで構成することができる。すなわち、制御装置1000のメモリ1022とプロセッサ1024とが、本発明による追突防止方法をソフトウェア的に実現させることができる。
【0139】
また、センサ1010は、移動体の内部/外部環境をセンシングモジュール904a、904b、904c、904dと接続して、各種のセンシング情報を取得することができる。ここで、センサ1010は、姿勢センサ(例えば、ヨーセンサ(yaw sensor)、ロールセンサ(roll sensor)、ピッチセンサ(pitch sensor))、衝突センサ、ホイールセンサ(wheel sensor)、速度センサ、傾斜センサ、重量感知センサ、ヘディングセンサ(heading sensor)、ジャイロセンサ(gyro sensor)、ポジションモジュール(position module)、移動体前進/後進センサ、バッテリセンサ、燃料センサ、タイヤセンサ、ハンドル回転によるステアリングセンサ、移動体内部温度センサ、移動体内部湿度センサ、超音波センサ、照度センサ、加速ペダルポジションセンサ、ブレーキペダルポジションセンサなどを含むことができる。
【0140】
これにより、センサ1010は、移動体姿勢情報、移動体衝突情報、移動体方向情報、移動体位置情報(GPS情報)、移動体角度情報、移動体速度情報、移動体加速度情報、移動体傾き情報、移動体前進/後進情報、バッテリ情報、燃料情報、タイヤ情報、移動体ランプ情報、移動体内部温度情報、移動体内部湿度情報、ステアリングホイール回転角度、移動体外部照度、アクセルペダルにかかる圧力、ブレーキペダルにかかる圧力などに対するセンシング信号を取得することができる。
【0141】
また、センサ1010は、その他、加速ペダルセンサ、圧力センサ、エンジン回転速度センサ(engine speed sensor)、空気流量センサ(AFS)、吸気温度センサ(ATS)、水温センサ(WTS)、スロットル位置センサ(TPS)、TDCセンサ、クランク角センサ(CAS)などをさらに含んでもよい。
【0142】
このように、センサ1010は、センシングデータに基づいて、移動体状態情報を生成することができる。
【0143】
無線通信装置1030は、自律走行移動体900間の無線通信を実施するように構成される。例えば、ユーザの携帯電話、又は他の無線通信装置1030、他の移動体、中央装置(交通制御装置)、サーバなどと自律走行移動体900とが通信できるようにする。無線通信装置1030は、接続無線プロトコルに従って、無線信号を送受信することができる。無線通信プロトコルは、Wi‐Fi、Bluetooth、LTE(Long-Term Evolution)、CDMA(Code Division Multiple Access)、WCDMA(Wideband Code Division Multiple Access)、GSM(Global Systems for Mobile Communications)であり、通信プロトコルは、これに限定されない。
【0144】
また、本実施形態における自律走行移動体900は、無線通信装置1030を介して、移動体間の通信を実現することも可能である。すなわち、無線通信装置1030は、車両対車両間(V2V)通信(vehicle-to-vehicle communication)で道路上の他の移動体や他の移動体と通信を行うことができる。自律走行移動体900は、走行警告、交通情報などの情報を、車両間通信で送受信することができ、他の移動体に情報を要求するか、要求を受信することも可能である。例えば、無線通信装置1030は、V2V通信を短距離通信(DSRC、dedicated short-range communication)装置又はC-V2V(Cellular-V2V)装置で行うことができる。また、車両間の通信に加えて、車両と他のオブジェクト(例えば、歩行者が携帯する電子装置など)との間の通信(V2X、Vehicle to Everything communication)も無線通信装置1030を介して実現することができる。
【0145】
また、無線通信装置1030は、地上網(Terrestrial Network)ではなく、非地上網(Non-Terrestrial Network)を介して、道路上に位置するインフラ(交通信号灯、CCTV、RSU、eNode Bなど)又は他の自律走行(Autonomous Driving)/非自律走行(Non-Autonomous Driving)車両などを含む様々なモビリティ(Mobility)から生成された情報を、自律走行移動体900の自律走行を実行するための情報として取得することができる。
【0146】
例えば、無線通信装置1030は、非地上網(Non-Terrestrial Network)を構成する地球低軌道(LEO、Low Earth Orbit)衛星システム、地球中軌道(MEO、Medium Earth Orbit)衛星システム、地球停止軌道(GEO、Geostationary Orbit)衛星システム、高高度プラットフォーム(HAP、High Altitude Platform)システムなどと自律走行移動体900に設けられた(mounted)非地上網専用アンテナを介して、無線通信を行うことができる。
【0147】
例えば、無線通信装置1030は、現在、3GPP等で議論されている5G NR NTN(5TH Generation New Radio Non-Terrestrial Network)規格に準拠した無線接続規格に従って、NTNを構成する様々なプラットフォームとの無線通信を行うことができ、これに限定されない。
【0148】
本実施形態において、コントローラ1020は、自律走行移動体900の位置、現在時刻、利用可能な電力などの様々な情報を考慮して、NTN通信を適切に行うことができるプラットフォームを選択し、選択されたプラットフォームとの無線通信を実行するように無線通信装置1030を制御することができる。
【0149】
本実施形態では、コントローラ1020は、自律走行移動体900内の各ユニットの全体的な動作を制御するユニットであり、移動体の製造業者によって製造時に構成されてもよく、又は製造後に自律走行の機能を実行するためにさらに構成されてもよい。あるいは、製造時に構成されたコントローラ1020のアップグレードを通じて、継続的な追加機能を実行するための構成を含むことができる。そのようなコントローラ1020は、ECU(Electronic Control Unit)と呼ばれることがある。
【0150】
コントローラ1020は、接続されたセンサ1010、オブジェクト検出装置1040、通信装置1030などから各種データを収集し、収集されたデータに基づいて、制御信号を移動体内の他の構成を含むセンサ1010、エンジン906、ユーザインタフェース908、通信装置1030、オブジェクト検出装置1040に伝達することができる。また、図示されていないが、移動体の走行に関連する加速装置、ブレーキングシステム、操舵装置、又はナビゲーション装置にも制御信号を伝達することができる。
【0151】
本実施形態では、コントローラ1020は、エンジン906を制御することができ、例えば、自律走行移動体900が走行中の道路の制限速度を検出し、走行速度が制限速度を超えないように、エンジン906を制御するか、又は制限速度を超えない範囲内で、自律走行移動体900の走行速度を加速するように、エンジン906を制御することができる。
【0152】
また、コントローラ1020は、自律走行移動体900の走行中に、自律走行移動体900が車線に近接するか、車線を離脱している場合、そのような車線の近接及び離脱が正常の走行状況に応じたものか、その他の走行状況に応じたか否かを判断し、判断結果に応じて、移動体の走行を制御するように、エンジン906を制御することができる。具体的には、自律走行移動体900は、移動体が走行中の車路の両側に形成された車線を検出することができる。この場合、コントローラ1020は、自律走行移動体900が車線に近接するか、車線を離脱しているかを判断し、自律走行移動体900が車線に近接するか、車線を離脱していると判断すると、このような走行が正確な走行状況によるのか、又はその他の走行状況によるのかを判断することができる。ここで、正常の走行状況の例として、移動体の車路変更が必要な状況であり得る。そして、他の走行状況の例として、移動体の車路変更が必要でない状況であり得る。コントローラ1020は、移動体の車路変更を必要としない状況で、自律走行移動体900が車線に近接するか、車線を離脱していると判断した場合、自律走行移動体900が車線を離脱せずに、その移動体で正常に走行するように、自律走行移動体900の走行を制御することができる。
【0153】
移動体の前方に他の移動体又は妨害物が存在する場合には、走行移動体を減速するように、エンジン906又はブレーキングシステムを制御することができ、速度に加えて、軌跡、運行経路、操舵角を制御することができる。あるいは、コントローラ1020は、移動体の走行車線、走行信号などの他の外部環境の認識情報に応じて、必要な制御信号を生成して、移動体の走行を制御してもよい。
【0154】
コントローラ1020は、自らの制御信号の生成に加えて、周辺移動体又は中央サーバとの通信を行い、受信した情報を介して、周辺装置を制御するための命令を送信することによって、移動体の走行を制御することも可能である。
【0155】
また、コントローラ1020は、カメラモジュールの位置が変更されるか、画角が変更された場合、本実施形態による正確な移動体又は車線認識が困難な場合があるので、これを防止するために、カメラモジュールのキャリブレーション(calibration)を実行するように制御する制御信号を生成することもできる。したがって、本実施形態では、コントローラ1020は、カメラモジュールでキャリブレーション制御信号を生成することにより、自律走行移動体900の移動に伴って発生する振動や衝撃等により、カメラモジュールの装着位置が変更されても、カメラモジュールの正常な装着位置、方向、画角などを継続的に維持することができる。コントローラ1020は、予め記憶されたカメラモジュールの初期装着位置、方向、画角情報と、自律走行移動体900の走行中に測定されるカメラモジュールの初期装着位置、方向、画角情報等が、臨界値以上に変化した場合、カメラモジュールのキャリブレーションを実行するように、制御信号を生成することができる。
【0156】
本実施形態では、コントローラ1020は、メモリ1022とプロセッサ1024とを含むことができる。プロセッサ1024は、コントローラ1020の制御信号に従って、メモリ1022に記憶されたソフトウェアを実行することができる。具体的には、コントローラ1020は、本発明による車線検出方法を行うためのデータ及び命令をメモリ1022に格納し、この命令は、本明細書に開示された1つ又はそれ以上の方法を実施するために、プロセッサ1024によって実行され得る。
【0157】
このとき、メモリ1022は、不揮発性のプロセッサ1024で実行可能な記録媒体に記憶されてもよい。メモリ1022は、適切な内外部装置を介して、ソフトウェア及びデータを格納することができる。メモリ1022は、RAM(random access memory)、ROM(read only memory)、ハードディスク、及びドングルに接続されたメモリ1022装置から構成することができる。
【0158】
メモリ1022は、オペレーティングシステム(OS、Operating system)、ユーザアプリケーション、実行可能な命令を少なくとも格納することができる。メモリ1022は、アプリケーションデータ、配列データ構造も格納することができる。
【0159】
プロセッサ1024は、マイクロプロセッサ又は適切な電子プロセッサで、コントローラ、マイクロコントローラ、又はステートマシンであり得る。
【0160】
プロセッサ1024は、コンピューティングデバイスの組み合わせで実装することができ、コンピューティングデバイスは、デジタル信号プロセッサ、マイクロプロセッサ、又はそれらの適切な組み合わせで構成することができる。
【0161】
一方、自律走行移動体900は、前述した制御装置1000へのユーザの入力のためのユーザインタフェース908をさらに含んでもよい。ユーザインタフェース908は、適切な相互作用でユーザに情報を入力させることができる。例えば、タッチスクリーン、キーパッド、操作ボタンなどで実施することができる。ユーザインタフェース908は、入力又は命令をコントローラ1020に送信し、コントローラ1020は、入力又は命令に応答して、移動体の制御動作を実行することができる。
【0162】
また、ユーザインタフェース908は、自律走行移動体900の外部の装置で、無線通信装置1030を介して、自律走行移動体900と通信を行うことができる。例えば、ユーザインタフェース908は、携帯電話、タブレット、又は他のコンピュータ装置と連動可能にすることができる。
【0163】
さらに、本実施形態では、自律走行移動体900は、エンジン906を含むものとして説明したが、他のタイプの推進システムを含むことも可能である。例えば、移動体は、電気エネルギーで運転することができ、水素エネルギー又はそれらを組み合わせたハイブリッドシステムを介して運転することができる。したがって、コントローラ1020は、自律走行移動体900の推進システムによる推進メカニズムを含み、これによる制御信号を、各推進メカニズムの構成に提供することができる。
【0164】
以下、
図10を参照して、本実施形態による制御装置1000の詳細構成についてより詳細に説明する。
【0165】
制御装置1000は、プロセッサ1024を含む。プロセッサ1024は、汎用シングルチップ又はマルチチップマイクロプロセッサ、専用マイクロプロセッサ、マイクロコントローラ、プログラム可能なゲートアレイなどであり得る。プロセッサは、中央処理装置(CPU)と呼ばれることがある。また、本実施形態では、プロセッサ1024は、複数のプロセッサの組み合わせで使用することも可能である。
【0166】
制御装置1000はまた、メモリ1022を含む。メモリ1022は、電子情報を格納することができる任意の電子構成要素であり得る。メモリ1022も、単一のメモリに加えて、メモリ1022の組み合わせを含むことができる。
【0167】
本発明による距離測定装置の距離測定方法を実行するためのデータ1022b及び命令1022aは、メモリ1022に記憶されてもよい。プロセッサ1024が命令1424aを実行するとき、命令1024a及び命令の実行に必要なデータ1024bの全部又は一部が、プロセッサ1024上にロードされてもよい。
【0168】
制御装置1000は、信号の送信及び受信を可能にするための送信機1030a、受信機1030b、又はトランシーバ1030cを含んでもよい。1つ以上のアンテナ1032a、1032bは、送信機1030a、受信機1030b、又は各トランシーバ1030cに電気的に接続されてもよく、さらにアンテナを含んでもよい。
【0169】
制御装置1000は、デジタル信号プロセッサ(DSP)1070を含んでもよい。DSP1070を介して、移動体がデジタル信号を迅速に処理できるようにすることができる。
【0170】
制御装置1000は、通信インタフェース1080を含んでもよい。通信インタフェース1080は、他の装置を制御装置1000に接続するための1つ以上のポート及び/又は通信モジュールを含んでもよい。通信インタフェース1080は、ユーザと制御装置1000とが相互作用することを可能にすることができる。
【0171】
制御装置1000の様々な構成は、一緒に1つ以上のバス1090によって接続されてもよく、バス1090は、電力バス、制御信号バス、状態信号バス、データバスなどを含むこともできる。プロセッサ1024の制御に応じて、構成は、バス1090を介して相互情報を伝達し、所望の機能を実行させることができる。
【0172】
一方、様々な実施形態では、制御装置1000は、セキュリティクラウドとの通信のために、ゲートウェイに関連付けられてもよい。例えば、
図11を参照すると、制御装置1000は、車両1100の構成要素1101~1104のうち少なくとも1つから取得された情報を、セキュリティクラウド1106に提供するためのゲートウェイ1105に関連付けられてもよい。例えば、ゲートウェイ1105は、制御装置1000内に含まれてもよい。別の例では、ゲートウェイ1105は、制御装置1000と区別される車両1100内の別々の装置から構成されてもよい。ゲートウェイ1105は、異なるネットワークを有するソフトウェア管理クラウド1109、セキュリティクラウド1106、及び車載セキュリティソフトウェア1110によって保安された車両1100内のネットワークを通信可能に接続する。
【0173】
例えば、構成要素1101は、センサであり得る。例えば、このセンサは、車両1100の状態又は車両1100の周囲の状態のうち少なくとも1つに関する情報を取得するために用いられ得る。例えば、構成要素1101は、センサ1010を含むことができる。
【0174】
例えば、構成要素1102は、ECU(electronic control unit)であってもよい。例えば、ECUは、エンジン制御、変速機の制御、エアバッグの制御、タイヤ空気圧管理に使用することができる。
【0175】
例えば、構成要素1103は、インストルメントクラスタ(instrument cluster)であり得る。例えば、インストルメントクラスタは、ダッシュボード(dashboard)のうち運転席の正面に配置されたパネルを意味することがある。例えば、インストルメントクラスタは、運転に必要な情報を運転者(又は搭乗者)に表示するように構成されてもよい。例えば、インストルメントクラスタは、エンジンの1分当たりの回転数(RPM、revolutions per minute、又は rotate per minute)を指示するための視覚要素、車両1100の速度を指示するための視覚要素、残留燃料量を指示するための視覚要素、歯車の状態を指示するための視覚要素、又は構成要素1101を介して取得された情報を指示するための視覚要素のうち少なくとも1つを表示するために使用することができる。
【0176】
例えば、構成要素1104は、テレマティクス(telematics)装置であり得る。例えば、このテレマティックス装置は、無線通信技術とGPS(global positioning system)技術とを組み合わせて、車両1100内で位置情報、安全運転などの様々な移動通信サービスを提供する装置を意味することができる。例えば、テレマティックス装置は、運転者、クラウド(例えば、セキュリティクラウド1106)、及び/又は周辺環境と車両1100とを接続するために使用することができる。例えば、前記テレマティックス装置は、5G NR規格の技術(例えば、5G NRのV2X技術、5G NRのNTN(Non-Terrestrial Network)技術)のために、高帯域幅及び低遅延をサポートするように構成されてもよい。例えば、前記テレマティックス装置は、車両1100の自律走行をサポートするように構成されてもよい。
【0177】
例えば、ゲートウェイ1105は、車両1100内のネットワークと車両外のネットワークであるソフトウェア管理クラウド1109とセキュリティクラウド1106とを接続するために使用することができる。例えば、ソフトウェア管理クラウド1109は、車両1100の走行及び管理に必要な少なくとも1つのソフトウェアを更新又は管理するために使用することができる。例えば、ソフトウェア管理クラウド1109は、車両内に設置された車載セキュリティソフトウェア(in-car security software)1110と連動することができる。例えば、車載セキュリティソフトウェア1110は、車両1100内のセキュリティ機能を提供するために使用され得る。例えば、車載セキュリティソフトウェア1110は、車両内ネットワークの暗号化のために、外部の認証された(authorized)サーバから取得した暗号化キーを用いて、車内ネットワークを介して送受信されるデータを暗号化することができる。様々な実施形態において、車載セキュリティソフトウェア1110によって使用される暗号化キーは、車両の識別情報(車両ナンバープレート、車VIN(vehicle identification number))又はユーザごとに一意に付与された情報(ユーザ識別情報など)に対応して生成することができる。
【0178】
様々な実施形態では、ゲートウェイ1105は、前記暗号化キーに基づいて、車載セキュリティソフトウェア1110によって暗号化されたデータを、ソフトウェア管理クラウド1109及び/又はセキュリティクラウド1106に送信することができる。ソフトウェア管理クラウド1109及び/又はセキュリティクラウド1106は、車載セキュリティソフトウェア1110の暗号化キー(Encryption Key)によって暗号化された前記データを復号することができる復号キー(Decryption Key)を用いて復号することによって、前記データがどの車両又はどのユーザから受信したデータであるかを識別することができる。例えば、この復号キーは、前記暗号化キーに対応する固有のキーであるため、ソフトウェア管理クラウド1109及び/又はセキュリティクラウド1106は、前記復号キーを介して復号された前記データに基づいて、前記データの送信主体(例えば、前記車両又は前記ユーザ)を識別することができる。
【0179】
例えば、ゲートウェイ1105は、車載セキュリティソフトウェア1110をサポートするように構成されており、制御装置1000と関連付けられてもよい。例えば、ゲートウェイ1105は、セキュリティクラウド1106に接続されたクライアント装置1107と制御装置1000との間の接続をサポートするために、制御装置1000に関連付けられてもよい。別の例では、ゲートウェイ1105は、セキュリティクラウド1106に接続されたサードパーティクラウド1108と制御装置1000との間の接続をサポートするために、制御装置1000に関連付けられてもよい。しかし、これに限定されない。
【0180】
様々な実施形態では、ゲートウェイ1105は、車両1100のオペレーティングソフトウェアを管理するためのソフトウェア管理クラウド1109と車両1100とを接続するために使用することができる。例えば、ソフトウェア管理クラウド1109は、車両1100のオペレーティングソフトウェアの更新が要求されるか否かをモニタリングし、車両1100のオペレーティングソフトウェアの更新が要求されたことをモニタリングすることに基づいて、ゲートウェイ1105を介して、車両1100のオペレーティングソフトウェアを更新するためのデータを提供することができる。別の例として、ソフトウェア管理クラウド1109は、車両1100のオペレーティングソフトウェアの更新を要求するユーザ要求を、車両1100からゲートウェイ1105を介して受信し、この受信に基づいて、車両1100のオペレーティングソフトウェアを更新するためのデータを提供することができる。しかし、これに限定されない。
【0181】
図12は、一実施形態による、学習データのセットに基づいて、ニューラルネットワークをトレーニングする電子装置の動作を説明するための図である。
【0182】
図12を参照して説明される動作は、前述の電子装置(例えば、
図1の電子装置101)によって実行することができる。
【0183】
図12を参照すると、動作1202において、一実施形態による電子装置は、学習データのセットを取得することができる。電子装置は、教師あり学習(supervised learning)のための学習データのセットを取得することができる。学習データは、入力データとこの入力データに対応する基底トゥルース(ground truth)データのペア(pair)を含むことができる。基底トゥルースデータは、この基底トゥルースデータのペアである入力データを受信したニューラルネットワークから取得しようとする出力データを表すことができる。前記基底トゥルースデータは、前述の電子装置によって取得することができる。
【0184】
例えば、イメージを認識するために、ニューラルネットワークをトレーニングする場合、学習データは、イメージ及び該イメージに含まれる1つ以上の被写体に関する情報を含むことができる。これらの情報は、イメージを介して識別可能な被写体の分類(category又はclass)を含んでもよい。前記情報は、イメージ内で、被写体に対応する視覚オブジェクトの位置、幅、高さ、及び/又はサイズを含み得る。動作1202を通じて識別される学習データのセットは、複数の学習データのペアを含んでもよい。イメージを認識するために、ニューラルネットワークをトレーニングする前記の例では、電子装置によって識別される学習データのセットは、複数のイメージ及び該複数のイメージのそれぞれに対応する基底トゥルースデータを含むことができる。
【0185】
図12を参照すると、動作1204において、一実施形態による電子装置は、学習データのセットに基づいて、ニューラルネットワークのトレーニングを実行することができる。ニューラルネットワークが教師あり学習に基づいてトレーニングされる一実施形態では、電子装置は、学習データに含まれる入力データを、前記ニューラルネットワークの入力層に入力することができる。前記入力層を含むニューラルネットワークの一例を、
図13を参照して説明する。前記入力層を介して、前記入力データを受信したニューラルネットワークの出力層から、電子装置は、前記入力データに対応するニューラルネットワークの出力データを取得することができる。
【0186】
一実施形態では、動作1204のトレーニングは、前記出力データと、前記学習データに含まれ、前記入力データに対応する基底トゥルースデータとの間の差に基づいて実行されてもよい。例えば、電子装置は、傾斜降下アルゴリズム(gradient descent)に基づいて、前記差が減少するように、前記ニューラルネットワークに関連する1つ以上のパラメータ(例えば、
図13を参照して後述する重み)を調整することができる。前記1つ以上のパラメータを調整する電子装置の動作は、ニューラルネットワークへのチューニングと呼ばれることがある。電子装置は、出力データに基づくニューラルネットワークのチューニングを、コスト関数(cost function)など、ニューラルネットワークの性能を評価するために定義された関数を用いて実行することができる。前述の出力データと基底トゥルースデータとの間の差は、前記コスト関数の一例として含まれてもよい。
【0187】
図12を参照すると、動作1206において、一実施形態による電子装置は、動作1204によってトレーニングされたニューラルネットワークから、有効な出力データが出力されたか否かを識別することができる。出力データが有効であるということは、出力データと基底トゥルースデータとの間の差(又はコスト関数)が、前記ニューラルネットワークを使用するために設定された条件を満たすことを意味することができる。例えば、出力データと基底トゥルースデータとの間の差の平均値及び/又は最大値が、指定された閾値以下である場合、電子装置は、有効な出力データがニューラルネットワークから出力されると決定することができる。
【0188】
ニューラルネットワークから有効な出力データが出力されない場合(1206-NO)、電子装置は、動作1204に基づくニューラルネットワークのトレーニングを繰り返し実行することができる。実施形態は、これに限定されず、電子装置は、動作1202、1204を繰り返し実行することができる。
【0189】
ニューラルネットワークから有効な出力データを取得した状態で(動作1206-YES)、動作1208に基づいて、一実施形態による電子装置は、トレーニングされたニューラルネットワークを使用することができる。例えば、電子装置は、学習データとして、前記ニューラルネットワークに入力された入力データと区別された他の入力データを、ニューラルネットワークに入力することができる。前記他の入力データを受信したニューラルネットワークから取得した出力データを、電子装置は、ニューラルネットワークに基づいて、前記他の入力データの推論を行った結果として利用することができる。
【0190】
図13は、一実施形態による電子装置のブロック図である。
【0191】
図13の電子装置1300は、前述の電子装置101を含んでもよい。
【0192】
例えば、
図12を参照して説明した動作は、
図13の電子装置1300及び/又は
図13のプロセッサ1310によって実行することができる。
【0193】
図13を参照すると、電子装置1300のプロセッサ1310は、メモリ1320に格納されたニューラルネットワーク1330に関連する計算(computations)を実行することができる。プロセッサ1310は、CPU(center processing unit)、GPU(graphic processing unit)、又はNPU(neural processing unit)のうち少なくとも1つを含んでもよい。NPUは、CPUとは別のチップとして実装されてもよく、又はSoC(system on a chip)の形態でCPUなどのチップに集積され(integrated)てもよい。CPUに集積されたNPUは、ニューラルコア及び/又はAI(artificial intelligence)アクセラレータと呼ばれることがある。
【0194】
図13を参照すると、プロセッサ1310は、メモリ1320に格納されたニューラルネットワーク1330を識別することができる。ニューラルネットワーク1330は、入力層(Input layer)1332、1つ以上の隠れ層(Hidden layers)1334(又は中間層(Intermediate layers))、及び出力層(Output layers)1336の結合を含むことができる。前述の層(例えば、入力層1332、1つ以上の隠れ層1334、及び出力層1336)は、複数のノードを含むことができる。隠れ層1334の数は、実施形態によって変わってもよく、複数の隠れ層1334を含むニューラルネットワーク1330は、ディープ(deep)ニューラルネットワークと呼ばれることがある。前記ディープニューラルネットワークをトレーニングする動作は、ディープラーニング(deep learning)と呼ばれることがある。
【0195】
一実施形態では、ニューラルネットワーク1330が、フィードフォワードニューラルネットワーク(feed forward neural network)の構造を有する場合、特定の層に含まれる第1のノードは、前記特定の層の以前の別の層に含まれる第2のノードのすべてに接続することができる。メモリ1320内で、ニューラルネットワーク1330のために格納されたパラメータは、前記第2のノードと前記第1のノードとの間の接続に割り当てられた(assigned)重み付け(weight)を含むことができる。フィードフォワードニューラルネットワークの構造を有するニューラルネットワーク1330において、前記第1のノードの値は、前記第2のノードと前記第1のノードとを接続する接続に割り当てられた重み付けに基づく、前記第2のノードに割り当てられた値の重み付け合(weighted sum)に対応することができる。
【0196】
一実施形態では、ニューラルネットワーク1330が畳み込み(convolution)ニューラルネットワークの構造を有する場合、特定の層に含まれる第1のノードは、前記特定の層の以前の別の層に含まれる第2のノードの一部に対する重み付け合に対応できる。前記第1のノードに対応する前記第2のノードの一部は、前記特定の層に対応するフィルタによって識別されてもよい。メモリ1320内で、ニューラルネットワーク1330のために格納されたパラメータは、前記フィルタを表す重み付けを含むことができる。フィルタは、前記第2のノードのうち、前記第1のノードの重み付け合を計算するために使用される1つ以上のノード、及び前記1つ以上のノードのそれぞれに対応する重み付けを含むことができる。
【0197】
一実施形態によれば、電子装置1300のプロセッサ1310は、メモリ1320に格納された学習データセット1340を使用して、ニューラルネットワーク1330に対してトレーニングを実行することができる。学習データセット1340に基づいて、プロセッサ1310は、
図12を参照して説明した動作を実行して、ニューラルネットワーク1330のためにメモリ1320に格納された1つ以上のパラメータを調整することができる。
【0198】
一実施形態によれば、電子装置1300のプロセッサ1310は、学習データセット1340に基づいてトレーニングされたニューラルネットワーク1330を用いて、オブジェクト検出、オブジェクト認識、及び/又はオブジェクト分類を実行することができる。プロセッサ1310は、カメラ1350を介して取得したイメージ(又はビデオ)を、ニューラルネットワーク1330の入力層1332に入力することができる。イメージが入力された入力層1332に基づいて、プロセッサ1310は、ニューラルネットワーク1330に含まれる層のノードの値を順次取得し、出力層1336のノードの値のセット(例えば、出力データ)を取得することができる。前記出力データは、ニューラルネットワーク1330を用いて、前記イメージに含まれる情報を推定した結果として使用することができる。実施形態は、これに限定されず、プロセッサ1310は、通信回路1360を介して、電子装置1300に接続された外部電子装置から取得したイメージ(又はビデオ)を、ニューラルネットワーク1330に入力することができる。
【0199】
一実施形態では、イメージを処理するためにトレーニングされたニューラルネットワーク1330は、前記イメージ内で、被写体に対応する領域を識別するか(オブジェクト検出)、及び/又は前記イメージ内に表現された被写体のクラスを識別(オブジェクト認識及び/又はオブジェクト分類)するために使用することができる。例えば、電子装置1300は、ニューラルネットワーク1330を用いて、前記イメージ内で、前記被写体に対応する領域を、バウンディングボックスなどの矩形の形状に基づいて、分割する(segment)ことができる。例えば、電子装置1300は、ニューラルネットワーク1330を用いて、複数の指定されたクラスのうち、前記被写体にマッチングする少なくとも1つのクラスを識別することができる。
【0200】
コンベンショナルトラック(conventional truck)10が
図14及び
図15に示されている。
【0201】
図14は、トラクター12とトレーラー14とが接続されていない状態を示す。
【0202】
図15は、トラクター12とトレーラー14とが接続された状態を示す。本発明の実施形態では、トレーラー14は、トラクター12によって運ばれる転向輪ヒッチ16によって選択的に接続されており、これは、トレーラー14に固定されたキングピン18を公知の方法で締結する。
【0203】
本明細書の
図14に示すトレーラー20は、「セミトレーラー」形態を示しているが、これは、説明の便宜のためであり、本発明の実施形態は、「セミトレーラー」形態にのみ適用されるものと理解すべきではない。
【0204】
前述したように、電子装置101は、通信回路110を含むことができる。前記電子装置101は、命令を格納するメモリ130を含むことができる。前記電子装置101は、前記通信回路110及び前記メモリ130と動作的に接続された少なくとも1つのプロセッサ120を含むことができる。前記命令が前記プロセッサ120によって実行されると、前記電子装置101は、前記通信回路110を介して、第1のカメラ151から第1のイメージ211~220を取得するように引き起こすことができる。前記命令が前記プロセッサ120によって実行されると、前記電子装置101は、前記通信回路110を介して、前記第1のカメラ151よりもシャッタースピードが遅い第2のカメラ155から、第2のイメージ221~230を取得するように引き起こすことができる。前記命令が前記プロセッサ120によって実行されると、前記電子装置101は、前記第1のイメージ211~220と、前記第2のイメージ221~230とで、互いに対応する時点で取得された第1のイメージ211及び第2のイメージ221を識別するように引き起こすことができる。前記命令が前記プロセッサ120によって実行されると、前記電子装置101は、前記第1のイメージ211において、指定された種類のオブジェクト内の第1の関心領域540を設定するように引き起こすことができる。前記命令が前記プロセッサ120によって実行されると、前記電子装置101は、前記第2のイメージ221において、前記第1の関心領域540と同じ位置の第2の関心領域640を設定するように引き起こすことができる。前記命令が前記プロセッサ120によって実行されると、前記電子装置101は、第1の関心領域540が設定された第1のイメージ211及び前記第2の関心領域640が設定された第2のイメージ221を、学習データとして生成するように引き起こすことができる。
【0205】
一実施形態では、前記第2のカメラ155は、前記第1のカメラ151と互いに対応する角度を有するように配置されてもよい。一実施形態では、前記第2のカメラ155のレンズ属性は、前記第1のカメラ151のレンズ属性と同じであり得る。前記命令が前記プロセッサ120によって実行されると、前記電子装置101は、前記第1のカメラ151及び前記第2のカメラ155に、互いに対応する時点で撮影を指示するように引き起こすことができる。
【0206】
前記命令が前記プロセッサ120によって実行されると、前記電子装置101は、前記第1のカメラ151及び前記第2のカメラ155に、互いに対応する時点で撮影を指示した後、指定された時間の間に、第1のイメージ211~220及び第2のイメージ221~230を取得するように引き起こすことができる。前記命令が前記プロセッサ120によって実行されると、前記電子装置101は、前記第1のイメージ211~220のうちの基準イメージ(例えば、イメージ215)と、前記第2のイメージ221~230のそれぞれとを比較することに基づいて、前記基準イメージ(例えば、イメージ215)と互いに対応する時点で取得されたイメージ(例えば、イメージ225)を識別するように引き起こすことができる。前記命令が前記プロセッサ120によって実行されると、前記電子装置101は、前記第1のイメージ211から前記基準イメージ(例えば、イメージ215)までのフレーム差と同じフレーム差を有する前記第2のイメージ221を、前記第2のイメージ221~230から識別するように引き起こすことができる。
【0207】
前記命令が前記プロセッサ120によって実行されると、前記電子装置101は、前記第1のイメージ211において、指定されたサイズの領域410をクロップすることによって、クロップされた第1のイメージ211を生成するように引き起こすことができる。前記命令が前記プロセッサ120によって実行されると、前記電子装置101は、前記クロップされた第1のイメージ211に基づいて、前記第2のイメージ221において、指定されたサイズの他の領域430をクロップすることによって、クロップされた第2のイメージ221を生成するように引き起こすことができる。
【0208】
前記命令が前記プロセッサ120によって実行されると、前記電子装置101は、前記クロップされた第1のイメージ211と、前記第2のイメージ221の複数の領域間の正規化された差分値を識別するように引き起こすことができる。前記命令が前記プロセッサ120によって実行されると、前記電子装置101は、前記クロップされた第1のイメージ211の特徴点と、前記第2のイメージ221の複数の領域のそれぞれの特徴点との間の正規化された距離を識別するように引き起こすことができる。前記命令が前記プロセッサ120によって実行されると、前記電子装置101は、前記正規化された差分値と、前記正規化された距離との間の重み付き平均が最も低い領域をクロップすることによって、前記クロップされた第2のイメージ221を生成するように引き起こすことができる。
【0209】
前記命令が前記プロセッサ120によって実行されると、前記電子装置101は、前記クロップされた第1のイメージ211において、指定された種類のオブジェクトを識別するように引き起こすことができる。前記命令が前記プロセッサ120によって実行されると、前記電子装置101は、前記クロップされた第1のイメージ211で識別された前記オブジェクト内の前記第1の関心領域540を設定するように引き起こすことができる。前記命令が前記プロセッサ120によって実行されると、前記電子装置101は、前記クロップされた第2のイメージ221において、前記クロップされた第1のイメージ211の前記オブジェクトの位置を設定するように引き起こすことができる。前記命令が前記プロセッサ120によって実行されると、前記電子装置101は、前記クロップされた第2のイメージ221において、前記クロップされた第1のイメージ211の前記第1の関心領域540と同じ位置の前記第2の関心領域640を設定するように引き起こすことができる。
【0210】
前記命令が前記プロセッサ120によって実行されると、前記電子装置101は、前記第1の関心領域540で文字列識別アルゴリズムに基づいて、文字列を識別するように引き起こすことができる。前記命令が前記プロセッサ120によって実行されると、前記電子装置101は、前記第1の関心領域540及び前記第2の関心領域640で、前記識別された文字列をラベル付けするように引き起こすことができる。
【0211】
前記命令が前記プロセッサ120によって実行されると、前記電子装置101は、前記第1の関心領域540を、指定された変換アルゴリズムに基づいて、指定された図形に変換するように引き起こすことができる。前記命令が前記プロセッサ120によって実行されると、前記電子装置101は、前記指定された図形に変換された前記第1の関心領域540で、前記文字列識別アルゴリズムに基づいて、前記文字列を識別するように引き起こすことができる。
【0212】
前記命令が前記プロセッサ120によって実行されると、前記電子装置101は、前記第1のイメージ211~220のうち連続するイメージ間の差に基づいて、前記電子装置101が移動しているかどうかを識別するように引き起こすことができる。前記命令が前記プロセッサ120によって実行されると、前記電子装置101は、この電子装置101が移動していないことに基づいて、前記第1のイメージ211~220及び前記第2のイメージ221~230を削除するように引き起こすことができる。前記命令が前記プロセッサ120によって実行されると、前記電子装置101は、この電子装置101が移動していることに基づいて、前記第1のイメージ211~220及び前記第2のイメージ221~230に基づいて、前記学習データを生成するように引き起こすことができる。
【0213】
前述したように、方法は、通信回路110を含む電子装置101で実行することができる。この方法は、前記通信回路110を介して、第1のカメラ151から第1のイメージ211~220を取得する動作を含むことができる。前記方法は、前記通信回路110を介して、前記第1のカメラ151よりもシャッタースピードが遅い第2のカメラ155から、第2のイメージ221~230を取得する動作を含むことができる。前記方法は、前記第1のイメージ211~220と、前記第2のイメージ221~230とで、互いに対応する時点で取得された第1のイメージ211及び第2のイメージ221を識別する動作を含むことができる。前記方法は、前記第1のイメージ211において、指定された種類のオブジェクト内の第1の関心領域540を設定する動作を含むことができる。前記方法は、前記第2のイメージ221において、前記第1の関心領域540と同じ位置の第2の関心領域640を設定する動作を含むことができる。前記方法は、前記第1の関心領域540が設定された第1のイメージ211と、前記第2の関心領域640が設定された第2のイメージ221とを、学習データとして生成する動作を含むことができる。
【0214】
前記方法は、前記第1のカメラ151及び前記第2のカメラ155に、互いに対応する時点で撮影を指示した後、指定された時間の間に、第1のイメージ211~220及び第2のイメージ221~230を取得する動作を含むことができる。前記方法は、前記第1のイメージ211~220のうち基準イメージ(例えば、イメージ215)と、前記第2のイメージ221~230のそれぞれとを比較することに基づいて、前記基準イメージ(例えば、イメージ215)と互いに対応する時点で取得されたイメージを識別する動作を含むことができる。前記方法は、前記第1のイメージ211から前記基準イメージ(例えば、イメージ215)までのフレーム差と同じフレーム差を有する前記第2のイメージ221を、前記第2のイメージ221~230から識別する動作を含むことができる。
【0215】
前記方法は、前記第1のイメージ211において、指定されたサイズの領域410をクロップすることによって、クロップされた第1のイメージ211を生成する動作を含み得る。前記方法は、前記クロップされた第1のイメージ211に基づいて、前記第2のイメージ221において、指定されたサイズの他の領域430をクロップすることによって、クロップされた第2のイメージ221を生成する動作を含むことができる。
【0216】
前記方法は、前記クロップされた第1のイメージ211と、前記第2のイメージ221の複数の領域との間の正規化された差分値を識別する動作を含み得る。前記方法は、前記クロップされた第1のイメージ211の特徴点と、前記第2のイメージ221の複数の領域のそれぞれの特徴点との間の正規化された距離を識別する動作を含むことができる。前記方法は、前記正規化された差分値と、前記正規化された距離との間の重み付き平均が最も低い領域をクロップすることによって、前記クロップされた第2のイメージ221を生成する動作を含むことができる。
【0217】
前記方法は、前記クロップされた第1のイメージ211において、指定された種類のオブジェクトを識別する動作を含むことができる。前記方法は、前記クロップされた第1のイメージ211で識別された前記オブジェクト内の前記第1の関心領域540を設定する動作を含むことができる。前記方法は、前記クロップされた第2のイメージ221において、前記クロップされた第1のイメージ211の前記オブジェクトの位置を設定する動作を含むことができる。前記方法は、前記クロップされた第2のイメージ221において、前記クロップされた第1のイメージ211の前記第1の関心領域540と同じ位置の前記第2の関心領域640を設定する動作を含むことができる。
【0218】
前記方法は、前記第1のイメージ211~220のうち連続するイメージ間の差に基づいて、前記電子装置101が移動しているかどうかを識別する動作を含み得る。この方法は、前記電子装置101が移動していないことに基づいて、前記第1のイメージ211~220及び前記第2のイメージ221~230を削除する動作を含むことができる。前記方法は、前記電子装置101が移動することに基づいて、前記第1のイメージ211~220及び前記第2のイメージ221~230に基づいて、学習データを生成する動作を含むことができる。
【0219】
前述のように、非一時的コンピュータ読み取り可能な記録媒体(non-transitory computer readable storage medium)は、命令を含むプログラムを記憶することができる。前記命令は、通信回路110を含む電子装置101のプロセッサ120によって実行されると、前記電子装置101が、前記通信回路110を介して、第1のカメラから第1のイメージ211~220を取得するように引き起こすことができる。前記命令が前記プロセッサ120により実行されると、前記電子装置101は、前記通信回路110を介して、前記第1のカメラ151よりもシャッタースピードが遅い第2のカメラ155から、第2のイメージ221~230を取得するように引き起こすことができる。前記命令が前記プロセッサ120により実行されると、前記電子装置101は、前記第1のイメージ211~220と、前記第2のイメージ221~230とで、互いに対応する時点で取得された第1のイメージ211及び第2のイメージ122を識別するように引き起こすことができる。前記命令が前記プロセッサ120により実行されると、前記電子装置101は、前記第1のイメージ211において、指定された種類のオブジェクト内の第1の関心領域540を設定するように引き起こすことができる。前記命令が前記プロセッサ120によって実行されると、前記電子装置101は、前記第2のイメージ221において、前記第1の関心領域540と同じ位置の第2の関心領域640を設定するように引き起こすことができる。前記命令が前記プロセッサ120によって実行されると、前記電子装置101は、前記第1の関心領域540が設定された第1のイメージ211と、前記第2の関心領域640が設定された第2のイメージ221とを、学習データとして生成するように引き起こすことができる。
【0220】
前記命令が前記プロセッサ120によって実行されると、前記電子装置101は、前記第1のイメージ211において、指定されたサイズの領域410をクロップすることによって、クロップされた第1のイメージ211を生成するように引き起こすことができる。前記命令が前記プロセッサ120によって実行されると、前記電子装置101は、前記クロップされた第1のイメージ211に基づいて、前記第2のイメージ221において、指定されたサイズの他の領域430をクロップすることによって、クロップされた第2のイメージ221を生成するように引き起こすことができる。
【0221】
前記命令が前記プロセッサ120によって実行されると、前記電子装置101は、前記クロップされた第1のイメージ211と、前記第2のイメージ221の複数の領域間の正規化された差分値を識別するように引き起こすことができる。前記命令が前記プロセッサ120によって実行されると、前記電子装置101は、前記クロップされた第1のイメージ211の特徴点と、前記第2のイメージ221の複数の領域のそれぞれの特徴点との間の正規化された距離を識別するように引き起こすことができる。前記命令が前記プロセッサ120によって実行されると、前記電子装置101は、前記正規化された差分値と、前記正規化された距離との間の重み付き平均が最も低い領域をクロップすることによって、前記クロップされた第2のイメージ221を生成するように引き起こすことができる。
【0222】
前記命令が前記プロセッサ120によって実行されると、前記電子装置101は、前記クロップされた第1のイメージ211において、指定された種類のオブジェクトを識別するように引き起こすことができる。前記命令が前記プロセッサ120によって実行されると、前記電子装置101は、前記クロップされた第1のイメージ211で識別された前記オブジェクト内の前記第1の関心領域540を設定するように引き起こすことができる。前記命令が前記プロセッサ120によって実行されると、前記電子装置101は、前記クロップされた第2のイメージ221で、前記クロップされた第1のイメージ211の前記オブジェクトの位置を設定するように引き起こすことができる。前記命令が前記プロセッサ120によって実行されると、前記電子装置101は、前記クロップされた第2のイメージ221において、前記クロップされた第1のイメージ211の前記第1の関心領域540と同じ位置の前記第2の関心領域640を設定するように引き起こすことができる。
【0223】
前記命令が前記プロセッサ120によって実行されると、前記電子装置101は、前記第1のイメージ211~220のうち連続するイメージ間の差に基づいて、前記電子装置101が移動しているかどうかを識別するように引き起こすことができる。前記命令が前記プロセッサ120によって実行されると、前記電子装置101は、この電子装置101が移動していないことに基づいて、前記第1のイメージ211~220及び前記第2のイメージ221~230を削除するように引き起こすことができる。前記命令が前記プロセッサ120によって実行されると、前記電子装置101は、この電子装置101が移動することに基づいて、前記第1のイメージ211~220及び前記第2のイメージ221~230に基づいて、前記学習データを生成するように引き起こすことができる。
【0224】
前述したように、電子装置101は、カメラ151、155を含むことができる。前記電子装置101は、命令を格納するメモリ130を含むことができる。前記電子装置101は、前記カメラ151、155及び前記メモリ130と動作的に接続された少なくとも1つのプロセッサ120を含むことができる。前記命令が前記プロセッサ120によって実行されると、前記電子装置101は、第1のカメラ151から第1のイメージ211~220を取得するように引き起こすことができる。前記命令が前記プロセッサ120によって実行されると、前記電子装置101は、前記第1のカメラ151よりもシャッタースピードが遅い第2のカメラ155から、第2のイメージ221~230を取得するように引き起こすことができる。前記命令が前記プロセッサ120によって実行されると、前記電子装置101は、前記第1のイメージ211~220と、前記第2のイメージ221~230とで、互いに対応する時点で取得された第1のイメージ211及び第2のイメージ221を識別するように引き起こすことができる。前記命令が前記プロセッサ120によって実行されると、前記電子装置101は、前記第1のイメージ211において、指定された種類のオブジェクト内の第1の関心領域540を設定するように引き起こすことができる。前記命令が前記プロセッサ120によって実行されると、前記電子装置101は、前記第2のイメージ221において、前記第1の関心領域540と同じ位置の第2の関心領域640を設定するように引き起こすことができる。前記命令が前記プロセッサ120によって実行されると、前期電子装置101は、前記第1の関心領域540が設定された第1のイメージ211と、前記第2の関心領域640が設定された第2のイメージ221とを、学習データとして生成するように引き起こすことができる。
【0225】
前述したように、方法は、カメラ151、155を含む電子装置101で実行することができる。この方法は、第1のカメラ151から第1のイメージ211~220を取得する動作を含むことができる。前記方法は、前記第1のカメラ151よりもシャッタースピードが遅い第2のカメラ155から、第2のイメージ221~230を取得する動作を含むことができる。前記方法は、前記第1のイメージ211~220と、前記第2のイメージ221~230とで、互いに対応する時点で取得された第1のイメージ211と第2のイメージ221とを識別する動作を含むことができる。前記方法は、前記第1のイメージ211において、指定された種類のオブジェクト内の第1の関心領域540を設定する動作を含むことができる。前記方法は、前記第2のイメージ221において、前記第1の関心領域540と同じ位置の第2の関心領域640を設定する動作を含むことができる。前記方法は、前記第1の関心領域540が設定された第1のイメージ211と、前記第2の関心領域640が設定された第2のイメージ221とを、学習データとして生成する動作を含むことができる。
【0226】
前述のように、非一時的コンピュータ読み取り可能な記録媒体は、命令を含むプログラムを記憶することができる。前記命令は、カメラ151、155を含む電子装置101のプロセッサ120によって実行されると、前記電子装置101が、第1のカメラ151から第1のイメージ211~220を取得するように引き起こすことができる。前記命令が前記プロセッサ120によって実行されると、前記電子装置101は、前記第1のカメラ151よりもシャッタースピードが遅い第2のカメラ155から、第2のイメージ221~230を取得するように引き起こすことができる。前記命令が前記プロセッサ120によって実行されると、前記電子装置101は、前記第1のイメージ211~220と、前記第2のイメージ221~230とで、互いに対応する時点で取得された第1のイメージ211及び第2のイメージ221を識別するように引き起こすことができる。前記命令が前記プロセッサ120によって実行されると、前記電子装置101は、前記第1のイメージ211において、指定された種類のオブジェクト内の第1の関心領域540を設定するように引き起こすことができる。前記命令が前記プロセッサ120によって実行されると、前記電子装置101は、前記第2のイメージ221において、前記第1の関心領域540と同じ位置の第2の関心領域640を設定するように引き起こすことができる。前記命令が前記プロセッサ120によって実行されると、前記電子装置101は、前記第1の関心領域540が設定された第1のイメージ211と、前記第2の関心領域640が設定された第2のイメージ221とを、学習データとして生成するように引き起こすことができる。
【0227】
本開示の一実施形態及びそれに使用される用語は、本明細書に記載された技術的特徴を、特定の実施形態に限定することを意図するものではなく、その実施形態の様々な変更、等価物、又は代替物を含むことを理解すべきである。図面の説明に関して、類似又は関連する構成要素には、同様の参照番号を使用する場合がある。項目に対応する名詞の単数形は、関連する文脈上、明らかに別段の指示がない限り、前記項目1つ又は複数を含むことができる。本明細書において、「A又はB」、「A及びBのうち少なくとも1つ」、「A又はBのうち少なくとも1つ」、「A、B又はC」、「A、B及びCのうち少なくとも1つ」、及び「A、B、又はCのうち少なくとも1つ」などの句の各々は、その句の対応する句に一緒に列挙された項目のいずれか、又はそれらの可能なすべての組み合わせを含むことができる。「第1」、「第2」、又は「一番目」又は「二番目」などの用語は、単にその構成要素を他の対応する構成要素と区別するために使用される場合があり、その構成要素を他の側面(例えば、重要性又は順序)に限定しない。ある(例えば、第1の)構成要素が、他の(例えば、第2の)構成要素に、「機能的に」又は「通信的に」という用語と組み合わせて、又はそのような用語なしで、「結合された(coupled)」又は「接続された(connected)」と言及されている場合、これは、前記のいくつかの構成要素が、前記の他の構成要素に直接(例えば、有線で)、無線で、又は第3の構成要素を介して接続され得ることを意味する。
【0228】
前述の本開示の特定の実施形態では、開示に含まれる構成要素は、提示された特定の実施形態に従って単数又は複数で表されている。ただし、単数又は複数の表現は、説明の便宜のために提示した状況に適して選択されたものであり、本開示が単数又は複数の構成要素に限定されるものではなく、複数で表される構成要素であっても単数で構成されてもよく、単数で表現された構成要素であっても複数で構成されてもよい。
【0229】
様々な実施形態によれば、前述の該当構成要素のうち1つ又はそれ以上の構成要素又は動作を省略しても、又は1つ又はそれ以上の他の構成要素又は動作を追加してもよい。代替的又は追加的に、複数の構成要素(例えば、モジュール又はプログラム)は、1つの構成要素に統合することができる。この場合、統合された構成要素は、複数の構成要素の各構成要素の1つ又はそれ以上の機能を、統合前に複数の構成要素のうち該当構成要素によって実行されるのと同じ又は同様に実行することができる。様々な実施形態によれば、モジュール、プログラム、又は他の構成要素によって実行される動作は、順次、並列的、繰り返し、又は経験的に実行されてもよく、又は前記動作のうち1つ又はそれ以上が異なる順序で実行されても、省略されても、あるいは、1つ以上の他の動作が追加されてもよい。
【0230】
なお、本開示の詳細な説明では、具体的な実施形態について説明したが、本開示の範囲から逸脱しない限り、様々な変形が可能であることは言うまでもない。