(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公表特許公報(A)
(11)【公表番号】
(43)【公表日】2023-09-27
(54)【発明の名称】ニューラル埋め込みを用いたカメラ画像又はビデオ処理パイプライン
(51)【国際特許分類】
H04N 23/60 20230101AFI20230920BHJP
G06T 7/00 20170101ALI20230920BHJP
G06V 10/82 20220101ALI20230920BHJP
H04N 23/86 20230101ALI20230920BHJP
G06N 3/045 20230101ALI20230920BHJP
【FI】
H04N23/60
H04N23/60 500
G06T7/00 350C
G06V10/82
H04N23/86
G06N3/045
【審査請求】未請求
【予備審査請求】未請求
(21)【出願番号】P 2023513979
(86)(22)【出願日】2021-08-27
(85)【翻訳文提出日】2023-04-28
(86)【国際出願番号】 IB2021057877
(87)【国際公開番号】W WO2022043942
(87)【国際公開日】2022-03-03
(32)【優先日】2020-08-28
(33)【優先権主張国・地域又は機関】US
(81)【指定国・地域】
(71)【出願人】
【識別番号】521106348
【氏名又は名称】スペクトル オプティックス インコーポレイテッド
(74)【代理人】
【識別番号】100067736
【氏名又は名称】小池 晃
(74)【代理人】
【識別番号】100192212
【氏名又は名称】河野 貴明
(74)【代理人】
【識別番号】100200001
【氏名又は名称】北原 明彦
(72)【発明者】
【氏名】ゴードン,ケビン
(72)【発明者】
【氏名】ハンフリース,マーティン
(72)【発明者】
【氏名】ダモア,コリン
【テーマコード(参考)】
5C066
5C122
5L096
【Fターム(参考)】
5C066AA01
5C066BA20
5C066CA05
5C122DA03
5C122DA04
5C122EA42
5C122FA11
5C122FG03
5C122FH00
5C122HA46
5C122HA48
5C122HB01
5L096AA02
5L096CA02
5L096DA01
5L096DA02
5L096HA11
5L096KA04
(57)【要約】
静止画カメラ又はビデオカメラを含む画像処理パイプラインは、ニューラル埋め込みから少なくとも部分的に導出される情報を使用するように構成された画像処理システムの第1の部分を含む。画像処理システムの第2の部分は、ニューラル埋め込み情報に少なくとも部分的に基づいて、撮像設定、センサ処理、グローバル後処理、ローカル後処理、及びポートフォリオ後処理の少なくとも1つを変更するために使用できる。
【選択図】
図1A
【特許請求の範囲】
【請求項1】
静止画カメラ又はビデオカメラを含む画像処理パイプラインであって、前記画像処理パイプラインが、
ニューラル埋め込み情報から少なくとも部分的に導出される情報を使用するように構成された画像処理システムの第1の部分と、
前記ニューラル埋め込み情報に少なくとも部分的に基づき、撮像設定、センサ処理、グローバル後処理、ローカル後処理、及びポートフォリオ後処理の少なくとも1つを変更する前記画像処理システムの第2の部分と、
を備えることを特徴とする画像処理パイプライン。
【請求項2】
前記ニューラル埋め込み情報は、潜在ベクトルを含むことを特徴とする請求項1に記載の画像処理パイプライン。
【請求項3】
前記ニューラル埋め込み情報は、前記画像処理システム内のモジュール間で送信される少なくとも1つの潜在ベクトルを含むことを特徴とする請求項1に記載の画像処理パイプライン。
【請求項4】
前記ニューラル埋め込み情報は、前記画像処理システム内の1つ以上のニューラルネットワーク間で送信される少なくとも1つの潜在ベクトルを含むことを特徴とする請求項1に記載の画像処理パイプライン。
【請求項5】
静止画カメラ又はビデオカメラを含む画像処理パイプラインであって、前記画像処理パイプラインが、
ニューラル処理システムを用いて、データの次元を下げ、1又は複数の画像若しくは他のデータを効果的にダウンサンプリングし、ニューラル埋め込み情報を作成するように構成された画像処理システムの第1の部分と、
前記ニューラル埋め込み情報に少なくとも部分的に基づき、撮像設定、センサ処理、グローバル後処理、ローカル後処理、及びポートフォリオ後処理の少なくとも1つを変更するように構成された前記画像処理システムの第2の部分と、
を備えることを特徴とする画像処理パイプライン。
【請求項6】
前記ニューラル埋め込み情報は、潜在ベクトルを含むことを特徴とする請求項5に記載の画像処理パイプライン。
【請求項7】
前記ニューラル埋め込み情報は、前記画像処理システム内のモジュール間で送信される少なくとも1つの潜在ベクトルを含むことを特徴とする請求項5に記載の画像処理パイプライン。
【請求項8】
前記ニューラル埋め込み情報は、前記画像処理システム内の1つ以上のニューラルネットワーク間で送信される少なくとも1つの潜在ベクトルを含むことを特徴とする請求項5に記載の画像処理パイプライン。
【請求項9】
静止画カメラ又はビデオカメラを含む画像処理パイプラインであって、前記画像処理パイプラインが、
ニューラル処理システムから導出されたニューラル埋め込み情報を用いた分類、追跡、及び照合の少なくとも1つを行うように構成された画像処理システムの第1の部分と、
前記ニューラル埋め込み情報に少なくとも部分的に基づき、撮像設定、センサ処理、グローバル後処理、ローカル後処理、及びポートフォリオ後処理の少なくとも1つを変更するように構成された前記画像処理システムの第2の部分と、
を備えることを特徴とする画像処理パイプライン。
【請求項10】
前記ニューラル埋め込み情報は、潜在ベクトルを含むことを特徴とする請求項9に記載の画像処理パイプライン。
【請求項11】
前記ニューラル埋め込み情報は、前記画像処理システム内のモジュール間で送信される少なくとも1つの潜在ベクトルを含むことを特徴とする請求項9に記載の画像処理パイプライン。
【請求項12】
前記ニューラル埋め込み情報は、前記画像処理システム内の1つ以上のニューラルネットワーク間で送信される少なくとも1つの潜在ベクトルを含むことを特徴とする請求項9に記載の画像処理パイプライン。
【請求項13】
静止画カメラ又はビデオカメラを含む画像処理パイプラインであって、前記画像処理パイプラインが、
ニューラル処理システムを用いて、データの次元を下げ、1又は複数の画像若しくは他のデータを効果的にダウンサンプリングし、ニューラル埋め込み情報を提供するように構成された画像処理システムの第1の部分と、
画像又はビデオメタデータ内に前記ニューラル埋め込み情報を保存するように構成された前記画像処理システムの第2の部分と、
を備えることを特徴とする画像処理パイプライン。
【請求項14】
前記ニューラル埋め込み情報は、潜在ベクトルを含むことを特徴とする請求項13に記載の画像処理パイプライン。
【請求項15】
前記ニューラル埋め込み情報は、前記画像処理システム内のモジュール間で送信される少なくとも1つの潜在ベクトルを含むことを特徴とする請求項13に記載の画像処理パイプライン。
【請求項16】
前記ニューラル埋め込み情報は、前記画像処理システム内の1つ以上のニューラルネットワーク間で送信される少なくとも1つの潜在ベクトルを含むことを特徴とする請求項13に記載の画像処理パイプライン。
【請求項17】
静止画カメラ又はビデオカメラを含む画像処理パイプラインであって、前記画像処理パイプラインが、
ニューラル処理システムを用いて、データの次元を下げ、1又は複数の画像若しくは他のデータを効果的にダウンサンプリングし、ニューラル埋め込み情報を提供するように構成された画像処理システムの第1の部分と、
前記ニューラル処理システムから導出された前記ニューラル埋め込み情報を用いた分類、追跡、及び照合の少なくとも1つを行うように構成された前記画像処理システムの第2の部分と、
を備えることを特徴とする画像処理パイプライン。
【請求項18】
前記ニューラル埋め込み情報は、潜在ベクトルを含むことを特徴とする請求項17に記載の画像処理パイプライン。
【請求項19】
前記ニューラル埋め込み情報は、前記画像処理システム内のモジュール間で送信される少なくとも1つの潜在ベクトルを含むことを特徴とする請求項17に記載の画像処理パイプライン。
【請求項20】
前記ニューラル埋め込み情報は、前記画像処理システム内の1つ以上のニューラルネットワーク間で送信される少なくとも1つの潜在ベクトルを含むことを特徴とする請求項17に記載の画像処理パイプライン。
【請求項21】
ニューラルネットワークトレーニングシステムが、
ニューラル処理システムを用いて、データの次元を下げ、1又は複数の画像若しくは他のデータを効果的にダウンサンプリングし、ニューラル埋め込み情報を提供するように構成されたニューラルネットワークアルゴリズムを有する第1の部分と、
前記ニューラル処理システムから導出された前記ニューラル埋め込み情報を用いた分類、追跡、及び照合の少なくとも1つを行うように構成されたニューラルネットワークアルゴリズムを有する第2の部分と、
前記ニューラルネットワークアルゴリズムの前記第1部分と前記第2の部分の動作を最適化するトレーニング手順と、
を備えることを特徴とするニューラルネットワークトレーニングシステム。
【発明の詳細な説明】
【技術分野】
【0001】
関連出願への相互参照
本出願は、2020年8月28日に出願された、米国仮特許出願63/071,966号、発明の名称「CAMERA IMAGE OR VIDEO PROCESSING PIPELINES WITH NEURAL EMBEDDING」の優先権を主張し、その全体は、参照により本書に組み込まれるものとする。
【0002】
本開示は、ニューラル埋め込み技術を使用して処理の複雑さを低減し、画像又はビデオを改善するためのシステムに関する。詳しくは、ニューラル埋め込みを使用して、画像処理パラメータ又はカメラ設定を構成するために使用できる分類器(classifier)を提供する方法及びシステムを開示する。
【背景技術】
【0003】
デジタルカメラは、通常、画像センサが受信した信号を使用可能な画像に変換するデジタル画像処理パイプラインを必要とする。処理は、信号の増幅、ベイヤーマスクや他のフィルタによる補正、デモザイク、色空間変換、白黒レベル調整等を含むことがある。更に高度な処理として、HDRインフィリング(HDR in-filling)、超解像、彩度(saturation)、自然な彩度(vibrancy)等の色調整、色合いや赤外線の除去、オブジェクトやシーンの分類等がある。様々な特殊なアルゴリズムを用いて、カメラ上でオンボードで又はRAW画像の後処理で補正を行うことができる。しかしながら、これらのアルゴリズムの多くは、独自のものであり、変更が困難であり、又は最良の結果を得るためには、熟練したユーザの作業が必要である。多くの場合、従来のニューラルネットワークの手法は、使用可能な処理能力が限られており、問題の次元が高いため、実用的ではない。画像処理システムは、更に、その意図するユースケースを達成するために、複数の画像センサを利用できる。このようなシステムでは、各センサを完全に独立して処理してもよく、まとめて処理してもよく、一部を組み合わせて処理してもよい。多くの場合、各センサを独立して処理することは、各センサのための専用ハードウェアのコストのために非現実的であり、一方、全てのセンサをまとめて処理することは、システム通信バス帯域幅が限られており及びニューラルネットワーク入力の複雑さが高いために非現実的である。
【発明の概要】
【発明が解決しようとする課題】
【0004】
画像処理を改善し、ユーザの作業を軽減し、更新及び改善を可能にする方法及びシステムが必要とされている。
【課題を解決するための手段】
【0005】
上記課題を解決するために、本願の特許請求の範囲に記載のシステムを提供するものである。
【0006】
本開示の非限定的かつ非網羅的な実施形態を説明する際に参照する以下の図において、同様の参照符号は、特段の指定がない限り、様々な図を通して同様の部分を指すものとする。
【図面の簡単な説明】
【0007】
【
図1A】ニューラルネットワーク支援型画像又はビデオ処理パイプラインを示す図である。
【
図1B】ニューラルネットワーク支援型画像又はビデオ処理システムを示す図である。
【
図1C】ニューラルネットワーク支援型ソフトウェアシステムを例示する別の実施形態を示す図である。
【
図1D】ニューラルネットワーク支援型画像処理の例を示す図である。
【
図1E】ニューラルネットワーク支援型画像処理の例を示す図である。
【
図1F】ニューラルネットワーク支援型画像処理の例を示す図である。
【
図1G】ニューラルネットワーク支援型画像処理の例を示す図である。
【
図2】制御、撮像、及び表示サブシステムを有するシステムを示す図である。
【
図3】RGB画像のニューラルネットワーク処理の一例を示す図である。
【
図4】完全畳み込みニューラルネットワークの実施形態を示す図である。
【
図5】ニューラルネットワークのトレーニング手順の一実施形態を示す図である。
【
図6】ニューラル埋め込みを用いた次元の低減及び処理を示す図である。
【
図7】ニューラル埋め込みを用いた分類、比較、又は照合のための処理を説明する図である。
【
図8】ニューラル埋め込み情報をメタデータに保存する処理を示す図である。
【
図9】ニューラルネットワークシステムにおいて潜在ベクトルを定義し利用するための一般的な手順を示す図である。
【
図10】潜在ベクトルを使用して、ニューラルネットワークシステムにおいて様々なベンダのモジュール間で情報を渡すための一般的な手順を示す図である。
【
図11】潜在ベクトルを含むニューラルネットワーク由来の情報のバス媒介通信(bus mediated communication)を説明するための図である。
【
図12】潜在ベクトル情報を使用する画像データベース検索を示す図である。
【
図13】潜在ベクトルパラメータのユーザ操作を示す図である。
【発明を実施するための形態】
【0008】
以下に説明する幾つかの実施形態では、ニューラル埋め込み情報又は技術を使用して、処理の複雑さを低減し、画像又は映像を改善するシステムを説明する。具体的には、以下に説明する方法及びシステムは、ニューラル埋め込みを使用して、画像処理パラメータ又はカメラ設定を構成するために使用できる分類器(classifiers)を提供する。幾つかの実施形態では、方法及びシステムは、ニューラル埋め込みを生成するためのものであり、これらのニューラル埋め込みは、分類及び他の機械学習タスク、撮像システムにおける帯域幅の削減、ニューラル推論システムにおける演算負荷(及び結果として電力)の削減、データベースクエリ及び物体追跡等の識別及び関連付けシステム、複数のセンサ及びセンサタイプからの情報の結合、トレーニング又は創造的目的のための新規データの生成、及びシステム入力の再構築を含む様々な用途に使用される。
【0009】
幾つかの実施形態では、静止画カメラ又はビデオカメラを含む画像処理パイプラインは、ニューラル埋め込み情報から少なくとも部分的に導出される情報を使用するように構成された画像処理システムの第1の部分を更に含む。画像処理システムの第2の部分は、ニューラル埋め込み情報に少なくとも部分的に基づき、撮像設定、センサ処理、グローバル後処理、ローカル後処理、及びポートフォリオ後処理の少なくとも1つを変更するために使用できる。
【0010】
幾つかの実施形態では、静止画カメラ又はビデオカメラを含む画像処理パイプラインは、ニューラル処理システムを用いて、データの次元を下げ、1又は複数の画像若しくは他のデータを効果的にダウンサンプリングし、ニューラル埋め込み情報を作成するように構成された画像処理システムの第1の部分を含むことができる。画像処理システムの第2の部分は、ニューラル埋め込み情報に少なくとも部分的に基づき、撮像設定、センサ処理、グローバル後処理、ローカル後処理、ポートフォリオ後処理の少なくとも1つを変更するように構成してもよい。
【0011】
幾つかの実施形態では、画像処理パイプラインは、ニューラル処理システムから導出されたニューラル埋め込み情報を用いた分類、追跡、及び照合の少なくとも1つを行うように構成された画像処理システムの第1の部分を含むことができる。画像処理システムの第2の部分は、ニューラル埋め込み情報に少なくとも部分的に基づき、撮像設定、センサ処理、グローバル後処理、ローカル後処理、及びポートフォリオ後処理の少なくとも1つを変更するように構成してもよい。
【0012】
幾つかの実施形態では、画像処理パイプラインは、ニューラル処理システムを用いて、データの次元を下げ、1又は複数の画像若しくは他のデータを効果的にダウンサンプリングし、ニューラル埋め込み情報を提供するように構成された画像処理システムの第1の部分を含むことができる。画像処理システムの第2の部分は、画像又はビデオメタデータ内にニューラル埋め込み情報を保存するように構成してもよい。
【0013】
幾つかの実施形態では、撮像デバイスは、撮像デバイスの動作を制御するプロセッサを含む。ニューラルプロセッサは、撮像デバイスによってサポートされ、ニューラルネットワークデータを受信するためにプロセッサに接続でき、ニューラルプロセッサは、ニューラルネットワークデータを使用して、センサ処理、グローバル後処理、及びローカル後処理を含むグループから選択される少なくとも2つの処理手順を提供できる。
【0014】
図1Aは、ニューラルネットワーク支援型画像又はビデオ処理パイプライン(neural network supported image or video processing pipeline)システム及び方法100Aの一実施形態を示している。このパイプライン100Aは、画像処理パイプラインの複数のポイントでニューラルネットワークを使用できる。例えば、撮像の前に行われるニューラルネットワークベースの画像前処理(ステップ110A)は、ニューラルネットワークを使用して、ISO、フォーカス、露光、解像度、撮像瞬間(例えば、目が開いているとき)又は他の画像もしくは、ビデオ設定のうちの1つ以上を選択することを含むことができる。ニューラルネットワークを使用して合理的な画像又はビデオ設定を単純に選択することに加えて、このようなアナログ的及び撮像前の因子を自動的に調整してもよく、あるいは後のニューラルネットワーク処理の効力を向上させる因子を優先するように調整してもよい。例えば、フラッシュ又は他のシーン照明は、強度を高め、時間を延ばし、又は方向を変えることができる。光路からフィルタを取り除く、絞りを大きく開く、又はシャッタ速度を下げることができる。画像センサの効率や増幅は、ISOの選択によって調整でき、これらは全て、(例えば)ニューラルネットワークの色調整又はHDR処理の改善を視野に入れて行うことができる。
【0015】
撮像後、ニューラルネットワークベースのセンサ処理(ステップ112A)を使用して、カスタムデモザイク、トーンマップ、ヘイズ除去(dehazing)、ピクセル障害補償、又はダスト除去を提供できる。他のニューラルネットワークベースの処理は、ベイヤー色フィルタ配列補正、色空間変換、黒白レベル調整、又は他のセンサ関連処理を含むことができる。
【0016】
ニューラルネットワークベースのグローバル後処理(ステップ114A)は、解像度又は色の調整、並びにスタックフォーカス又はHDR処理を含むことができる。他のグローバル後処理機能には、HDRインフィリング、ボケ調整、超解像、彩度(saturation)、自然な彩度(vibrancy)、又は色強調、及び色合い又はIR除去を含めることができる。
【0017】
ニューラルネットワークベースのローカル後処理(ステップ116A)は、赤目除去、シミ除去、ダークサークル除去、青空強調、緑葉強調、又は画像のローカル部分、セクション、オブジェクト、又はエリアの他の処理を含むことができる。特定のローカル領域の識別は、例えば、顔又は眼球検出器を含む、他のニューラルネットワーク支援機能の使用を含むことができる。
【0018】
ニューラルネットワークに基づくポートフォリオ後処理(ステップ116A)は、識別、分類、又は公開に関連する画像又はビデオ処理ステップを含むことができる。例えば、ニューラルネットワークを使用して、人物を識別し、その情報を元にメタデータタグ付けを行うことができる。他の例としては、ニューラルネットワークを使用して、画像をペットの写真、風景、又は肖像画等のカテゴリに分類することが含まれる。
【0019】
図1Bは、ニューラルネットワーク支援型画像又はビデオ処理システム120Bを示す図である。一実施形態では、ハードウェアレベルのニューラル制御モジュール122B(設定及びセンサを含む)を用いて、処理、メモリアクセス、データ転送、及び他の低レベル演算処理をサポートできる。システムレベルのニューラル制御モジュール124Bは、ハードウェアモジュール122Bとインタラクトし、有用な又は必要な解像度、照明、又は色の調整を決定するツールを含む、予備的な又は必要な低レベル自動画像提示ツールを提供する。画像又はビデオは、システムレベルのニューラル制御モジュール126Bを使用して処理でき、この処理は、ユーザプリファレンス設定、ユーザ履歴設定、又はサードパーティ情報又は好みに基づく他のニューラルネットワーク処理設定を含むことができる。また、システムレベルのニューラル制御モジュール128Bは、サードパーティ情報及びプリファレンス、並びにローカル、リモート、又は分散型ニューラルネットワーク処理が必要であるかどうかを決定するための設定を含むことができる。幾つかの実施形態では、分散型ニューラル制御モジュール130Bを用いて、協調的データ交換(cooperative data exchange)を行うことができる。例えば、ソーシャルネットワークコミュニティが好ましいポートレート画像のスタイルを(例えば、ハードフォーカススタイルからソフトフォーカスに)変更すると、ポートレートモードニューラルネットワーク処理も同様に調整できる。この情報は、ネットワーク潜在ベクトル、提供されたトレーニングセット、又はモード関連の設定推奨を使用して、ここに開示する様々なモジュールのいずれにも送信できる。
【0020】
図1Cは、ニューラルネットワーク支援型ソフトウェアシステム120Cを例示する別の実施形態を示す。図示のように、光、シーン、及び撮像媒体を含む環境に関する情報が検出され、これらは、例えば、外部照明システム又はオンカメラフラッシュシステムの制御によって、変化することがある。光学及び電子サブシステムを含む撮像システムは、ニューラル処理システム及びソフトウェアアプリケーション層とインタラクトできる。幾つかの実施形態では、リモート、ローカル、又は協調的ニューラル処理システムを使用して、設定及びニューラルネットワーク処理条件に関連する情報を提供できる。
【0021】
より詳細には、撮像システムは、電子システムと共に制御され、電子システムとインタラクトする光学システムを含むことができる。光学システムは、レンズ及び照明エミッタ等の光学ハードウェア、並びにシャッタ、フォーカス、フィルタリング及び絞りの電子、ソフトウェア、又はハードウェアコントローラを含む。電子システムは、センサと、フィルタリング、露光時間の設定、アナログ-デジタル変換(analog to digital conversion:ADC)、アナログ利得の提供、及び照明コントローラとして機能する他の電子、ソフトウェア又はハードウェアコントローラを含む。撮像システムからのデータは、更なる処理及び分散のためにアプリケーション層に送られ、制御フィードバックをニューラル処理システム(neural processing system:NPS)に提供してもよい。
【0022】
ニューラル処理システムは、フロントエンドモジュール、バックエンドモジュール、ユーザプリファレンス設定、ポートフォリオモジュール、及びデータ分散モジュールを含むことができる。モジュールの演算は、リモート、ローカル、若しくはローカル又はリモートのいずれかの複数の協調的ニューラル処理システムを介して行うことができる。ニューラル処理システムは、アプリケーション層及び画像処理システムに/からデータを送受信できる。
【0023】
図示の実施形態では、フロントエンドは、撮像システムの設定及び制御、環境補償、環境合成、埋め込み、及びフィルタリングを含む。バックエンドは、線形化、フィルタ補正、黒レベル設定、ホワイトバランス、及びデモザイクを提供する。ユーザプリファレンスは、露光設定、トーン及びカラー設定、環境合成、フィルタリング、及び創造的変形(creative transformation)を含むことができる。ポートフォリオモジュールは、このデータを受け取り、分類、人物識別、又は地理的タグ付けを提供できる。分散モジュールは、複数のニューラル処理システムからのデータの送信と受信を調整し、アプリケーション層への埋め込みの送信と受信を行うことができる。アプリケーション層は、カスタム設定のためのユーザインタフェース、並びに画像や設定結果のプレビューを行うユーザインタフェースを提供する。画像又は他のデータは、保存及び送信でき、ニューラル処理システムに関する情報は、将来の使用のために、あるいは分類、活動又は物体検出、又は意思決定タスクを単純化するために集約できる。
【0024】
図1Dは、ニューラルネットワーク支援型画像処理140Dの一例を示している。ニューラルネットワークは、露光設定決定142D、RGB又はベイヤーフィルタ処理144D、色飽和度調整146D、赤目軽減148D、自撮り写真等の画像カテゴリの識別、又はメタデータタグ付け及びインターネットメディア配信支援(150D)を含む1以上の処理ステップにおける撮像設定を修正又は制御するために使用できる。
【0025】
図1Eは、ニューラルネットワーク支援型画像処理140Eの別の例を示している。ニューラルネットワークは、ノイズ除去142E、色飽和度調整144E、グレア除去146E、赤目軽減148E、及び目の色フィルタ150Eを含む1つ又は複数の処理ステップにおける撮像設定を修正又は制御するために使用できる。
【0026】
図1Fは、ニューラルネットワーク支援型画像処理140Fの別の例を示している。ニューラルネットワークは、以下に限定されるものではないが、複数の画像の撮像142F、複数の画像からの画像選択144F、ハイダイナミックレンジ(HDR)処理146F、輝点除去148F、及び自動分類及びメタデータタグ付け150Fを含み得る1以上の処理ステップにおける撮像設定を修正又は制御するために使用できる。
【0027】
図1Gは、ニューラルネットワーク支援型画像処理140Gの別の例を示している。ニューラルネットワークは、映像及び音声設定選択142G、電子フレーム安定化144G、オブジェクトセンタリング146G、動き補償148G、及びビデオ圧縮150Gを含む1つ又は複数の処理ステップにおける撮像設定を修正又は制御するために使用できる。
【0028】
ニューラルネットワーク支援型画像又は動画処理パイプラインシステム及び方法を使用することは、幅広い静止画カメラ又はビデオカメラにとって有益である。カメラの種類には、以下に限定されるものではないが、静止画又は動画機能を有する従来のDSLR、スマートフォン、タブレットカメラ、ラップトップカメラ、専用ビデオカメラ、ウェブカム、又はセキュリティカメラが含まれ得る。幾つかの実施形態では、赤外線カメラ、熱画像装置、ミリ波画像システム、X線又は他の放射線画像装置等の専用カメラを使用できる。実施形態は、赤外線、紫外線、又は他の波長を検出できるセンサを有することによりハイパースペクトル画像処理が可能なカメラも含むこともできる。
【0029】
カメラは、スタンドアロン型、ポータブル型、固定型システムのいずれであってもよい。通常、カメラは、プロセッサ、メモリ、画像センサ、通信インタフェース、カメラ光学システム及びアクチュエータシステム、及びメモリストレージを含む。プロセッサは、カメラ光学システム及びセンサシステム、利用可能な通信インタフェースの操作等、カメラの全体的な動作を制御する。カメラの光学及びセンサシステムは、画像センサが取り込んだ画像に対する露光制御等、カメラの動作を制御する。カメラの光学システム及びセンサシステムは、固定レンズシステム又は調整可能なレンズシステム(例えば、ズーム及び自動焦点機能)を含むことができる。カメラは、取り外し可能なメモリカード、有線USB、又は無線データ転送システム等のメモリストレージシステムをサポートできる。
【0030】
幾つかの実施形態では、専用のニューラルネットワーク処理システム、ラップトップ、PC、サーバ、又はクラウドを含むリモート演算リソースへの画像データの転送後にニューラルネットワーク処理を行ってもよい。他の実施形態では、最適化されたソフトウェア、ニューラル処理チップ、専用のASIC、カスタム集積回路、又はプログラマブルFPGAシステムを使用して、カメラ内でニューラルネットワーク処理を行ってもよい。
【0031】
幾つかの実施形態では、ニューラルネットワーク処理の結果を他の機械学習又はニューラルネットワークシステムへの入力として使用でき、これらのシステムは、物体認識、パターン認識、顔識別、画像安定化、ロボット又は車両のオドメトリ及びポジショニング、又はトラッキング又はターゲティングアプリケーション用に開発されたシステムを含む。有利な点として、このようなニューラルネットワーク処理画像正規化は、例えば、高ノイズ環境におけるコンピュータビジョンアルゴリズムの失敗を低減するため、ノイズに関連して特徴信頼度が低下し、失敗が生じやすい環境においても、これらのアルゴリズムは、動作可能である。このような環境とは、以下に限定されるものではないが、典型的には、低照度環境、霧又は埃がある環境、霞んだ環境、光点滅又は光グレアに暴露される環境を含むことができる。事実上、ニューラルネットワーク処理は、画像センサノイズを除去し、後の学習アルゴリズムが性能劣化を低減する。
【0032】
特定の実施形態では、複数の画像センサが、説明したニューラルネットワーク処理と組み合わせて集合的に動作し、動作及び検出エンベロープを広げることができ、例えば、異なる光感度を有するセンサが協働してハイダイナミックレンジ画像を提供できる。他の実施形態では、個別のニューラルネットワーク処理ノードを有する光学的又はアルゴリズム的画像処理システムのチェーンを結合できる。更に他の実施形態では、ニューラルネットワークシステムのトレーニングは、全体としてイメージングシステムから切り離され、特定のイメージャに関連する組み込みコンポーネントとして動作できる。
【0033】
図2は、ニューラルネットワーク及び画像処理アルゴリズムの使用及びトレーニングのためのハードウェアサポートを包括的に説明する図である。幾つかの実施形態において、ニューラルネットワークは、一般的なアナログ及びデジタル画像処理に適する。制御及び記憶モジュール202は、撮像システム204及び表示システム206にそれぞれの制御信号を送ることができる。撮像システム204は、処理された画像データを制御及び記憶モジュール202に供給でき、一方、表示システム206からプロファイリングデータを受け取ることもできる。教師あり又は半教師ありの方法でニューラルネットワークをトレーニングするには、高品質のトレーニングデータが必要である。そのようなデータを得るために、システム200は、自動化されたイメージングシステムプロファイリングを提供する。制御及び記憶モジュール202は、表示システム206に送信される較正データ及び生プロファイリングデータ(raw profiling data)を含む。較正データは、以下に限定されるものではないが、解像度、焦点、又はダイナミックレンジを評価するためのターゲットを含むことができる。生プロファイリングデータは、以下に限定されるものではないが、高品質の撮像システム(基準システム)から取り込まれた自然及び人工のシーン、及び手続き的に生成された(数学的に導出された)シーンを含むことができる。
【0034】
表示システム206の一例は、高品質の電子ディスプレイである。このディスプレイは、その明るさを調整でき、あるいは、ニュートラル密度フィルタ等の物理的フィルタリング要素で補強できる。代替となる表示システムは、前照灯又は後照灯の光源と共に使用される高品質の参照プリント又はフィルタリング要素を備えていてもよい。いずれの場合も、表示システムの目的は、イメージングシステムに送信される様々な画像、又は画像のシーケンスを生成することである。
【0035】
プロファイリングされるイメージングシステムは、制御及び記憶用コンピュータによってプログラム制御され、表示システムの出力を画像化できるように、プロファイリングシステムに統合される。絞り、露光時間、アナログ利得等のカメラパラメータを変化させ、1つの表示画像に対して複数の露光を行う。これにより得られた露光は、制御及び記憶用コンピュータに転送され、トレーニング用に保存される。
【0036】
システム全体が制御された照明環境に置かれ、プロファイリング中に光の「ノイズフロア」(photon “noise floor”)が既知となるようにする。
【0037】
システム全体は、解像度限界要因(limiting resolution factor)がイメージングシステムとなるように設定される。これは、以下に限定されるものではないが、画像処理システムのセンサピクセルピッチ、表示システムのピクセル寸法、画像処理システムの焦点距離、画像処理システムの作動F値、センサピクセル数(水平及び垂直)、表示システムのピクセル数(垂直及び水平)等のパラメータを考慮した数学的モデルによって達成される。実際には、特定のセンサ、センサのメーカ又はタイプ、若しくはセンサのクラスをプロファイリングして、個々のセンサ又はセンサモデルに正確に適応させた高品質のトレーニングデータを作成できる。
【0038】
図1B及び
図2に示すシステムでは、完全畳み込み、リカレント、生成逆境、又は深層畳み込みネットワークを含む、様々なタイプのニューラルネットワークを使用できる。畳み込みニューラルネットワークは、本明細書で説明するような画像処理アプリケーションに特に有用である。
図3に示すように、
図1Aに関して説明したようなニューラルベースのセンサ処理を引き受ける畳み込みニューラルネットワーク300は、入力として単一の露光不足RGB画像310を受け取ることができる。ここでは、RAW形式が好ましいが、圧縮されたJPG画像も、多少の品質低下を伴うが使用できる。画像は、従来のピクセル操作で前処理でき、又は好ましくは、最小限の修正でトレーニングされた畳み込みニューラルネットワーク300に供給できる。処理は、1つ又は複数の畳み込み層312、プーリング層314、完全接続層316を通して進行し、改善された画像のRGB出力316で完了する。実際の動作では、1つ又は複数の畳み込み層は、RGB入力に畳み込み演算を適用し、その結果を次の層(複数可)に渡す。畳み込みの後、ローカル又はグローバルプーリング層は、出力を次の層における単一の又は少数のノードに結合できる。畳み込みの繰り返し又は畳み込みとプーリングのペアを用いてもよい。ニューラルベースセンサの処理が完了した後、RGB出力は、RGB画像として、追加のニューラルネットワークベースの修正のために、ニューラルネットワークベースのグローバル後処理に渡すことができる。
【0039】
特に有用な1つのニューラルネットワークの実施形態は、完全畳み込みニューラルネットワークである。完全畳み込みニューラルネットワークは、ネットワークの末端に通常見られる完全接続層を持たない畳み込み層で構成される。有利な点として、完全畳み込みニューラルネットワークは、画像サイズに依存せず、トレーニング又は輝点画像修正のための入力として任意のサイズの画像を受け取ることができる。完全畳み込みネットワーク400の例を
図4に示す。データは、2つの3×3畳み込み(パッドなし畳み込み)を繰り返し適用し、それぞれが整流線形ユニット(rectified linear unit:ReLU)とダウンサンプリング用のストライド2を有する2×2最大プーリング演算とが続く収束経路(contracting path)で処理できる。各ダウンサンプリングステップでは、特徴チャンネルの数は、2倍になる。拡張経路の各ステップは、特徴マップのアップサンプリングと、これに続く、特徴チャンネル数を半分にする2x2畳み込み(上昇畳み込み(up-convolution))、収束経路からの対応する切り出された特徴マップ(cropped feature map)との連結、及び2つの3x3畳み込み、それぞれに続くReLUで構成されている。特徴マップの切り出しは、全ての畳み込みにおいて、境界画素の損失を補うものである。最終層では、1x1畳み込みが使用され、各64成分特徴ベクトルを所望の数のクラスにマッピングする。ここに説明したネットワークは、23個の畳み込み層を有しているが、他の実施形態で使用される畳み込み層は、これより多くても少なくてもよい。トレーニングは、確率的勾配降下法を用いて、対応するセグメンテーションマップを有する入力画像の処理を含むことができる。
【0040】
図5は、一連の入力に対して望ましい出力を生成するようにパラメータを操作できるニューラルネットワークトレーニングシステム500の一実施形態を示している。ネットワークのパラメータを操作するそのような手法の1つは、「教師ありトレーニング」によるものである。教師ありトレーニングでは、オペレータは、ソース/ターゲットペア510及び502をネットワークに提供し、これらを目的関数と組み合わせて、何らかの方式(例えば、バックプロパゲーション)に従って、ネットワークシステム500のパラメータの一部又は全部を変更できる。
【0041】
図5に示す実施形態では、プロファイリングシステム、数学モデル、及び一般に利用可能なデータセット等の様々なソースからの高品質のトレーニングデータ(ソース510及びターゲット502の組)が、ネットワークシステム500への入力のために準備される。この方法は、データパッケージングターゲット504及びソース512、並びに前処理ラムダターゲット506及びソース514を含む。
【0042】
データパッケージングでは、1つ又は複数のトレーニングデータサンプルを取り、これを所定の方式に従って正規化し、ネットワークへの入力のためにデータをテンソルに配置する。トレーニングデータサンプルは、シーケンスデータ又は時間的データから構成してもよい。
【0043】
前処理ラムダ(preprocessing lambda)によって、オペレータは、ニューラルネットワーク又は目的関数に入力する前に、ソース入力又はターゲットデータを修正できる。これは、データを増強すること、何らかの方式に従ってテンソルを拒絶すること、テンソルに合成ノイズを追加すること、アライメント目的のためにデータに対してワープ及び変形を行うこと、又は画像データからデータラベルに変換することであってもよい。
【0044】
トレーニングされるネットワーク516は、少なくとも1つの入力及び出力518を有するが、実際には、それぞれが独自の目的関数を有する複数の出力が相乗効果をもたらすことができることが見出されている。例えば、テンソル内のオブジェクトを分類することを目的とする「分類器ヘッド」出力によって性能を向上させることができる。ターゲット出力データ508、ソース出力データ518、及び目的関数520は、共に、最小化すべきネットワークの損失を定義し、その値は、追加のトレーニング又はデータセット処理によって改善できる。
【0045】
図6は、ニューラルネットワーク処理に対する代替的、補完的、又は補足的アプローチの一実施形態を示すフローチャートである。ニューラル埋め込みは、処理問題の次元を減少させ、画像処理速度を大幅に向上させることができることが知られている。ニューラル埋め込みは、高次元の画像を、ベクトル(「潜在ベクトル」)で表される低次元の多様体上の位置にマッピングするものである。潜在ベクトルの成分は、学習された連続表現であり、この表現は、特定の離散変数を表すように制約してもよい。幾つかの実施形態では、ニューラル埋め込みは、離散変数の連続数ベクトルへのマッピングであり、離散変数の低次元で学習された連続ベクトル表現を提供する。有利な点として、これにより、例えば、教師ありタスクのための機械学習モデルへのこれらの入力、又は埋め込み空間における最近傍の発見が可能になる。
【0046】
幾つかの実施形態において、ニューラルネットワーク埋め込みは、カテゴリ変数の次元を低減し、変換された空間においてカテゴリを表現できるために有用である。ニューラルネットワーク埋め込みは、カテゴリ化、追跡、及び照合に特に有用であり、また、ニューラルネットワークの完全な再トレーニングを必要とせずに、新しい関連ドメインにドメイン固有の知識を簡略化して転送できる。幾つかの実施形態では、例えば、後で使用するために画像又はビデオメタデータに潜在ベクトルを保存することによってニューラル埋め込みを提供してもよく、これによって、後の任意の処理又は画像関連クエリへの改良された応答が可能になる。例えば、画像処理システムの第1の部分は、ニューラル処理システムを使用して、データの次元を下げ、1又は複数の画像若しくは他のデータを効果的にダウンサンプリングして、ニューラル埋め込み情報を提供するように構成できる。また、画像処理システムの第2の部分は、ニューラル処理システムから得られるニューラル埋め込み情報を使用して、分類、追跡、及び照合の少なくとも1つを行うように構成できる。同様に、ニューラルネットワークトレーニングシステムは、ニューラル処理システムを用いてデータの次元を下げ、画像又は他のデータを効果的にダウンサンプリングしてニューラル埋め込み情報を提供するように構成された、ニューラルネットワークアルゴリズムの第1の部分を含むことができる。ニューラルネットワークアルゴリズムの第2の部分は、ニューラル処理システムから得られるニューラル埋め込み情報を使用して、分類、追跡、及び照合の少なくとも1つを行うように構成され、トレーニング手順を用いて、ニューラルネットワークアルゴリズムの第1の部分及び第2の部分を最適化してもよい。
【0047】
幾つかの実施形態では、トレーニング及び推論システムは、ニューラル埋め込みアルゴリズムと組み合わせて新しい深層学習アルゴリズムを作成できる分類器又は他の深層学習アルゴリズムを含むことができる。ニューラル埋め込みアルゴリズムは、重みをトレーニング可能であるように構成してもよく、重みをトレーニング不能であるように構成してもよいが、いずれの場合も、新しいアルゴリズムがエンドツーエンドでトレーニング可能であり、これによって、目的関数から生データ入力まで、新しい深層学習アルゴリズムを直接最適化できることによって完全に差別化可能である。
【0048】
推論の間、上述のアルゴリズム(C)は、埋め込みアルゴリズム(A)がエッジ又はエンドポイントデバイス上で実行され、アルゴリズム(B)が集中演算リソース(クラウド、サーバ、ゲートウェイデバイス)上で実行できるように分割してもよい。
【0049】
より具体的には、
図6に示すように、ニューラル埋め込みプロセス600の一実施形態は、ベンダAがビデオを提供することによって開始される(ステップ610)。ビデオは、ベンダBの分類器に低次元の入力を提供するために、埋め込みによってダウンサンプリングされる(ステップ612)。ベンダBの分類器は、演算コストの削減の恩恵を受け、出力618の精度の損失が低減された改善された画像処理(ステップ616)を提供する。幾つかの実施形態では、ベンダBは、埋め込みステップ612を改善するために、改善された画像処理ステップ616の出力618からの画像、パラメータ、又は他のデータをベンダAに提供してもよい。
【0050】
図7は、分類、比較、又は照合に有用な別のニューラル埋込プロセス700を示している。
図7に示すように、ニューラル埋め込みプロセス700の一実施形態は、ビデオから開始される(ステップ710)。ビデオは、埋め込みによってダウンサンプリングされ(ステップ712)、付加的な分類、比較、又は照合に利用できる低次元の入力が提供される(ステップ714)。幾つかの実施形態では、出力716を直接使用でき、他の実施形態では、ステップ716から出力されるパラメータ又は他のデータを使用して、埋め込みステップを改善できる。
【0051】
図8は、ニューラル埋め込み情報をメタデータに保存するためのプロセスを示す図である。
図8に示すように、メタデータ作成に適したニューラル埋め込みプロセス800の一実施形態は、ビデオから開始される(ステップ810)。ビデオは、埋め込みによってダウンサンプリングされ(ステップ812)、ビデオに関連する検索可能なメタデータへの挿入に利用可能な低次元の入力を提供する(ステップ814)。幾つかの実施形態では、出力816を直接使用でき、他の実施形態では、ステップ816から出力されるパラメータ又は他のデータを使用して、埋め込みステップを改善できる。
【0052】
図9は、ニューラルネットワークシステムにおいて静止画又はビデオ画像から導出された潜在ベクトルを定義し利用するための一般的なプロセス900を示す図である。
図9に示すように、処理は、通常、まずトレーニング段階モード902で行われ、次いで、トレーニング済みの処理が推論段階モード904で実行される。入力画像910は、エンコードのために収束ニューラル処理経路912に沿って渡される。収束経路912(すなわちエンコーダ)では、高次元の入力画像からより小さな次元の潜在ベクトル914へのマッピングを提供するために、ニューラルネットワークの重みが学習される。拡張経路916(デコーダ)は、潜在ベクトルから元の入力画像を回復するために共同学習(jointly learned)を行ってもよい。このアーキテクチャは、事実上、ビデオ又は画像処理タスクにとって最も有用な情報のみをエンコードできる「情報ボトルネック」を作り出すことができる。トレーニング後、多くのオンライン目的では、ネットワークのエンコーダ部分のみが必要となる。
【0053】
図10は、潜在ベクトルを使用してニューラルネットワークシステム内のモジュール間で情報を渡す一般的な手順1000を示している。幾つかの実施形態では、異なるベンダ(例えば、ベンダA(1002)及びベンダB(1004))がモジュールを提供してもよく、他の実施形態では、単一の処理サービスプロバイダによって処理を行ってもよい。
図10は、エンコードのためのニューラル処理経路1012を示す図である。収束経路1012(すなわちエンコーダ)において、ニューラルネットワークの重みが学習され、高次元の入力画像から、次元が小さい潜在ベクトル1014へのマッピングが行われる。この潜在ベクトル1014は、続いて、分類器1020への入力として使用できる。幾つかの実施形態では、分類器1020は、{画像、ラベル}ペアではなく、{潜在ベクトル、ラベル}ペアによってトレーニングできる。入力の複雑さ低減されること、及びニューラル埋め込み「バックボーン」ネットワークによって提供される特徴が高品質であることは、分類器にとって有益である。
【0054】
図11は、潜在ベクトルを含むニューラルネットワーク由来の情報のバス媒介通信(bus mediated communication)を示す図である。例えば、マルチセンサ処理システム1100は、1つ又は複数の画像1110から導出され、エンコードのためにニューラル処理経路1112を用いて処理された情報を送信するように動作できる。この潜在ベクトルは、オプションの他の画像データ又はメタデータとともに、通信バス1114又は他の適切な相互接続を介して、集中処理モジュール1120に送ることができる。実際に、これにより、個々の画像処理システムは、ニューラル埋め込みを利用して、通信バスの帯域幅要件及びその後の中央処理モジュール1120における処理要件を軽減できる。
【0055】
図11に関して説明したようなニューラルネットワークのバス媒介通信によって、データ転送要件及びコストを大幅に削減できる。例えば、都市、会場、又はスポーツ競技場のIPカメラシステムは、各カメラがビデオフィードの潜在的ベクトルを出力するように構成できる。これらの潜在ベクトルは、中央処理装置(ゲートウェイ、ローカルサーバ、VMS等)に送られる画像を補足し又は完全に置換することができる。受信した潜在的ベクトルは、ビデオ分析を実行するために使用でき、あるいは、人間のオペレータに提示するために元のビデオデータと組み合わせることができる。これにより、大規模なデータパイプラインや大規模で高価なサーバへのアクセスを必要とすることなく、数百又は数千のカメラでリアルタイム分析を実行できる。
【0056】
図12は、識別及び関連付けの目的のためにニューラル埋め込み及び潜在ベクトル情報を使用して画像データベースを検索するためのプロセス1200を示す図である。幾つかの実施形態では、画像1210は、潜在ベクトルを含むデータにエンコードするための収束ニューラル処理経路1212に沿って処理できる。ニューラル埋め込みネットワークから得られる潜在ベクトルは、データベース1220に格納できる。潜在ベクトル情報(1214)を含むデータベースクエリを行うことができ、データベースは、何らかの方式に従って、与えられた潜在ベクトルXに最も外観が近い潜在ベクトルを識別するように動作する。例えば、一実施形態では、潜在ベクトル間のユークリッド距離(例えば1222)を用いて、一致を発見する(照合する)ことが可能だが、他の方式も可能である。結果として得られる一致は、元のソース画像又はメタデータを含む他の情報と関連付けることができる。幾つかの実施形態では、保存、送信、又は画像メタデータに追加できる別の潜在ベクトル1224を提供するための更なるエンコードが可能である。
【0057】
別の例として、都市、会場、又はスポーツ競技場のIPカメラシステムは、各カメラが、ビデオ分析のために保存されるか又は他の方法で利用可能になる潜在ベクトルを出力するように構成できる。これらの潜在ベクトルを検索することにより、大量の画像データのリアルタイム検索を行う必要なく、物体、人物、シーン、又は他の画像情報を特定できる。これにより、数百又は数千のカメラでリアルタイムビデオ又は画像解析を実行して、大規模なデータパイプライン及び大規模で高価なサーバへのアクセスを必要とすることなく、例えば、特定の人物又はシーンに関連する赤い車を検出できる。
【0058】
図13は、ユーザが潜在ベクトルを操作するためのプロセス1300を示す図である。例えば、収束ニューラル処理経路に沿って画像を処理し、潜在ベクトルを含むデータにエンコードできる。ユーザは、入力潜在ベクトルを操作して(1302)ベクトル要素を直接変更することによって又は複数の潜在ベクトルを組み合わせることによって(潜在空間演算1304)、新たな画像を獲得できる。拡張経路処理(1320)を用いて潜在ベクトルを拡張し、生成画像(1322)を提供できる。幾つかの実施形態では、この手順を繰り返すこと又は反復することによって、所望の画像が提供される。
【0059】
以上から理解されるように、本明細書に記載のカメラシステム及び方法は、サーバ、デスクトップコンピュータ、ラップトップ、タブレット、又はスマートフォン等のデバイスとインタラクションを行うために、これらの機器とローカルで接続してもよく、若しくは有線又は無線接続サブシステムのいずれかへの接続を介してこれらの機器と接続してもよい。無線ネットワーク、パーソナルエリアネットワーク、セルラーネットワーク、インターネット、又はクラウド媒介データソース等の様々な外部データソース間で、データ及び制御信号を受信、生成、又は伝送してもよい。更に、ローカルデータのソース(例えば、ハードドライブ、ソリッドステートドライブ、フラッシュメモリ、若しくはSRAM又はDRAM等の動的メモリを含む任意の他の適切なメモリ)によって、ユーザが指定したプリファレンス又はプロトコルのローカルデータを保存できる。ある特定の実施形態では、複数の通信システムを提供できる。例えば、直接のWi-Fi接続(802.11b/g/n)のみでなく、別個の4Gセルラー接続を使用できる。
【0060】
また、リモートサーバに接続する実施形態は、クラウドコンピューティング環境において実施してもよい。クラウドコンピューティングとは、仮想化を介して速やかにプロビジョニングされ、最小限の管理エフォート又はサービスプロバイダのインタラクトによってリリースされ、その後適宜拡張される、構成可能な演算リソース(例えば、ネットワーク、サーバ、ストレージ、アプリケーション、及びサービス)の共有プールへのユビキタスで、便利で、オンデマンドのネットワークアクセスを可能にするモデルとして定義できる。クラウドモデルは、様々な特性(例えば、オンデマンドセルフサービス、ブロードネットワークアクセス、リソースプーリング、スピーディーな拡張性、測定サービス等)、サービスモデル(例えば、サービスとしてのソフトウェア(「SaaS」)、サービスとしてのプラットフォーム(「PaaS」)、サービスとしてのインフラストラクチャ(「IaaS」)、及び展開モデル(例えば、プライベートクラウド、コミュニティクラウド、パブリッククラウド、ハイブリッドクラウド等)によって構成可能である。
【0061】
本明細書全体を通して「一実施形態」、「実施形態」、「一例」、又は「例」といった文言は、実施形態又は例に関連して説明される特定の特徴、構造、又は特性が、本開示の少なくとも1つの実施形態に含まれることを意味する。したがって、本明細書全体の様々な箇所で「一実施形態において」、「実施形態において」、「一例」、又は「例」という文言が出現しても、これらは、必ずしも全てが同じ実施形態又は例を指すとは限らない。更に、特定の特徴、構造、データベース、又は特性は、1つ又は複数の実施形態又は例において、任意の適切な組み合わせ及び/又はサブコンビネーションとして組み合わせることができる。更に、本明細書に添付する図面は、当業者への説明のためのものであり、図面は、必ずしも縮尺通りに描かれていない。
【0062】
添付の図面のフローチャート及びブロック図は、本開示の様々な実施形態に基づくシステム、方法、及びコンピュータプログラム製品の可能な具体例のアーキテクチャ、機能、及び動作を示す。これに関して、フローチャート又はブロック図の各ブロックは、指定された論理機能を実装するための1つ又は複数の実行可能命令を含むモジュール、セグメント、又はコードの一部を表すことができる。なお、ブロック図及び/又はフローチャートの各ブロック、並びにブロック図及び/又はフローチャート内のブロックの組み合わせは、指定された機能又は動作を実行する専用ハードウェアベースのシステム、又は専用ハードウェアとコンピュータの命令の組み合わせによって実施してもよい。また、これらのコンピュータプログラム命令は、コンピュータ又は他のプログラム可能データ処理装置に特定の方式で機能するように指示できるコンピュータ可読媒体に保存でき、すなわち、コンピュータ可読媒体に保存された命令は、フローチャート及び/又はブロック図ブロック又は複数のブロック図で指定された機能/動作を実施する命令手段を含む製品を実現する。
【0063】
本開示に基づく実施形態は、装置、方法、又はコンピュータプログラム製品として具現化できる。したがって、本開示は、完全にハードウェアで構成される実施形態、完全にソフトウェア(ファームウェア、常駐ソフトウェア、マイクロコード等を含む。)で構成される実施形態、又は本明細書において総称的に「回路」、「モジュール」、又は「システム」と呼ぶソフトウェア及びハードウェアの態様を組み合わせた実施形態の形式で実現してもよい。更に、本開示の実施形態は、媒体に組み込まれたコンピュータ使用可能プログラムコードを有する任意の有形の媒体に組み込まれたコンピュータプログラム製品の形式で実現することもできる。
【0064】
1つ又は複数のコンピュータ使用可能媒体又はコンピュータ可読媒体の任意の組合せを利用できる。例えば、コンピュータ可読媒体は、ポータブルコンピュータディスケット、ハードディスク、ランダムアクセスメモリ(random access memory:RAM)デバイス、リードオンリーメモリ(read-only memory:ROM)デバイス、消去可能プログラマブル読出専用メモリ(erasable programmable read-only memory:EPROM又はフラッシュメモリ)デバイス、携帯用コンパクトディスク読出専用メモリ(compact disc read-only memory:CD-ROM)、光記憶デバイス、及び磁気記憶デバイスのうちの1つ又は複数を含むことができる。本開示の動作を実行するためのコンピュータプログラムコードは、1つ又は複数のプログラミング言語の任意の組み合わせで書くことができる。このようなコードは、ソースコードから、コードが実行されることになるデバイス又はコンピュータに適したコンピュータ可読アセンブリ言語又はマシンコードにコンパイルしてもよい。
【0065】
以上の説明及び関連する図面に提示された教示に基づき、当業者は、本発明の多くの変形例及び他の実施形態を想到できる。したがって、本発明は、ここに開示する特定の実施形態に限定されるものではなく、これらの変形例及び他の実施形態も特許請求の範囲に含まれることは明らかである。また、本明細書に具体的に開示されていない要素/ステップを欠いていても、本発明の他の実施形態を実施することができる。
【符号の説明】
【0066】
100A ニューラルネットワーク支援型画像又はビデオ処理パイプラインシステム
120B ニューラルネットワーク支援型画像又はビデオ処理システム
120C ニューラルネットワーク支援型ソフトウェアシステム
140D ニューラルネットワーク支援型画像処理
140E ニューラルネットワーク支援型画像処理
140F ニューラルネットワーク支援型画像処理
140G ニューラルネットワーク支援型画像処理
200 制御、撮像、及び表示サブシステムを有するシステム
300 畳み込みニューラルネットワーク
400 完全畳み込みネットワーク
500 ニューラルネットワークトレーニングシステム
600 ニューラル埋め込みプロセス
700 ニューラル埋め込みプロセス
800 ニューラル埋め込みプロセス
900 ニューラルネットワークシステムにおいて静止画又はビデオ画像から導出された潜在ベクトルを定義し利用するための一般的なプロセス
1000 潜在ベクトルを使用してニューラルネットワークシステム内のモジュール間で情報を渡す一般的な手順
1100 マルチセンサ処理システム
1200 識別及び関連付けの目的のためにニューラル埋め込み及び潜在ベクトル情報を使用して画像データベースを検索するためのプロセス
1300 ユーザが潜在ベクトルを操作するためのプロセス
【国際調査報告】