JP7016522B2 - 次元データ低減を有するマシンビジョン - Google Patents

次元データ低減を有するマシンビジョン Download PDF

Info

Publication number
JP7016522B2
JP7016522B2 JP2017554580A JP2017554580A JP7016522B2 JP 7016522 B2 JP7016522 B2 JP 7016522B2 JP 2017554580 A JP2017554580 A JP 2017554580A JP 2017554580 A JP2017554580 A JP 2017554580A JP 7016522 B2 JP7016522 B2 JP 7016522B2
Authority
JP
Japan
Prior art keywords
data
encoded
encoded data
retinal
machine vision
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2017554580A
Other languages
English (en)
Other versions
JP2018514036A5 (ja
JP2018514036A (ja
Inventor
シェイラ ニーレンバーグ
Original Assignee
コーネル ユニヴァーシティー
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by コーネル ユニヴァーシティー filed Critical コーネル ユニヴァーシティー
Publication of JP2018514036A publication Critical patent/JP2018514036A/ja
Publication of JP2018514036A5 publication Critical patent/JP2018514036A5/ja
Application granted granted Critical
Publication of JP7016522B2 publication Critical patent/JP7016522B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/004Artificial life, i.e. computing arrangements simulating life
    • G06N3/008Artificial life, i.e. computing arrangements simulating life based on physical entities controlled by simulated intelligence so as to replicate intelligent life forms, e.g. based on robots replicating pets or humans in their appearance or behaviour
    • AHUMAN NECESSITIES
    • A61MEDICAL OR VETERINARY SCIENCE; HYGIENE
    • A61FFILTERS IMPLANTABLE INTO BLOOD VESSELS; PROSTHESES; DEVICES PROVIDING PATENCY TO, OR PREVENTING COLLAPSING OF, TUBULAR STRUCTURES OF THE BODY, e.g. STENTS; ORTHOPAEDIC, NURSING OR CONTRACEPTIVE DEVICES; FOMENTATION; TREATMENT OR PROTECTION OF EYES OR EARS; BANDAGES, DRESSINGS OR ABSORBENT PADS; FIRST-AID KITS
    • A61F9/00Methods or devices for treatment of the eyes; Devices for putting-in contact lenses; Devices to correct squinting; Apparatus to guide the blind; Protective devices for the eyes, carried on the body or in the hand
    • A61F9/08Devices or methods enabling eye-patients to replace direct visual perception by another kind of perception
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/21Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
    • G06F18/214Generating training patterns; Bootstrap methods, e.g. bagging or boosting
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/049Temporal neural networks, e.g. delay elements, oscillating neurons or pulsed inputs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/20Image preprocessing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/40Extraction of image or video features
    • G06V10/44Local feature extraction by analysis of parts of the pattern, e.g. by detecting edges, contours, loops, corners, strokes or intersections; Connectivity analysis, e.g. of connected components
    • G06V10/443Local feature extraction by analysis of parts of the pattern, e.g. by detecting edges, contours, loops, corners, strokes or intersections; Connectivity analysis, e.g. of connected components by matching or filtering
    • G06V10/449Biologically inspired filters, e.g. difference of Gaussians [DoG] or Gabor filters
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/40Extraction of image or video features
    • G06V10/44Local feature extraction by analysis of parts of the pattern, e.g. by detecting edges, contours, loops, corners, strokes or intersections; Connectivity analysis, e.g. of connected components
    • G06V10/443Local feature extraction by analysis of parts of the pattern, e.g. by detecting edges, contours, loops, corners, strokes or intersections; Connectivity analysis, e.g. of connected components by matching or filtering
    • G06V10/449Biologically inspired filters, e.g. difference of Gaussians [DoG] or Gabor filters
    • G06V10/451Biologically inspired filters, e.g. difference of Gaussians [DoG] or Gabor filters with interaction between the filter responses, e.g. cortical complex cells
    • G06V10/454Integrating the filters into a hierarchical structure, e.g. convolutional neural networks [CNN]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V40/00Recognition of biometric, human-related or animal-related patterns in image or video data
    • G06V40/10Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
    • G06V40/103Static body considered as a whole, e.g. static pedestrian or occupant recognition
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V40/00Recognition of biometric, human-related or animal-related patterns in image or video data
    • G06V40/10Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
    • G06V40/18Eye characteristics, e.g. of the iris
    • G06V40/19Sensors therefor
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V40/00Recognition of biometric, human-related or animal-related patterns in image or video data
    • G06V40/10Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
    • G06V40/18Eye characteristics, e.g. of the iris
    • G06V40/193Preprocessing; Feature extraction
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/85Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Health & Medical Sciences (AREA)
  • General Physics & Mathematics (AREA)
  • General Health & Medical Sciences (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Multimedia (AREA)
  • Biomedical Technology (AREA)
  • Artificial Intelligence (AREA)
  • Evolutionary Computation (AREA)
  • Data Mining & Analysis (AREA)
  • Molecular Biology (AREA)
  • General Engineering & Computer Science (AREA)
  • Computing Systems (AREA)
  • Biophysics (AREA)
  • Software Systems (AREA)
  • Mathematical Physics (AREA)
  • Computational Linguistics (AREA)
  • Signal Processing (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Ophthalmology & Optometry (AREA)
  • Human Computer Interaction (AREA)
  • Robotics (AREA)
  • Biodiversity & Conservation Biology (AREA)
  • Vascular Medicine (AREA)
  • Heart & Thoracic Surgery (AREA)
  • Animal Behavior & Ethology (AREA)
  • Public Health (AREA)
  • Veterinary Medicine (AREA)
  • Evolutionary Biology (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Image Analysis (AREA)
  • Image Processing (AREA)
  • Prostheses (AREA)

Description

関連出願の相互参照
本出願は、米国特許法第119条に基づき、2015年4月20日に提出された米国仮特許出願第62/150,068号の優先権を主張し、同出願の全ての内容は、参照により本明細書に組み込まれる。本出願は、米国仮出願第61/527493号(2011年8月25日出願)、同第61/657406号(2012年6月8日出願)、同第61/308,681号(2010年2月26日出願)、同第61/359,188号(2010年6月28日出願)、同第61/378,793号(2010年8月31日出願)、同第61/382,280号(2010年9月13日出願)、同第13/230,488号(2011年9月12日出願)も参照により組み込む。本出願は、本明細書において「プロテーゼ出願」と呼ぶ国際特許出願第PCT/US2011/026526号(2011年2月28日出願)及び同第PCT/US2011/049188号(2011年8月25日出願)、本明細書において「マシンビジョン出願」と呼ぶ国際特許出願第PCT/US2012/052348号(2012年8月24日出願)も参照により組み込む。上記出願のそれぞれの内容は、そのそれぞれの全体が参照により組み込まれる。
以下の説明は、読み手の理解を助けるために提供されている。提供する情報または引用文献のいずれも、先行技術であるとは認めない。マシンビジョン(またはコンピュータビジョン)とは、マシン(例えば、コンピュータ)が視覚情報を使用して、例えば画像から情報を抽出し、何らかのタスクを解決し、または広義もしくは狭義のいずれかの意味で情景を「理解する(understand)」ことを可能にする技術を指す。一般に、マシンビジョンは、画像データからの情報の抽出に関する。画像データは、単一の画像、ビデオシーケンス、複数のカメラからの眺め、またはより高次元のデータ(例えば、医療スキャナの三次元画像)などの多数の形態をとり得る。視覚系の作業の抽象モデルに基づいてマシンビジョンのための画像データ予備処理スキームを構築するためのいくつかのアプローチが提案されているが、それらの有効性は限定的である。マシンビジョンがより効果的かつ実用的になるようにマシンビジョンを改善するための余地は大きい。
上述の概要は、単に例示的なものであり、いかなる点でも限定的であることを意図しない。上記の例示的な態様、実施形態、及び特徴に加えて、さらなる態様、実施形態、及び特徴が、以下の図面及び詳細な説明を参照することにより明らかになるであろう。
例示的なには、処理装置により一連の未加工画像に対応する未加工画像データを受信することと、未加工画像データを処理装置のエンコーダにより処理してエンコードされたデータを生成することとを含む方法が記載されている。エンコーダは、脊椎動物の網膜の少なくとも1つの網膜細胞の入力/出力変換を実質的に模倣する入力/出力変換により特徴付けられる。方法は、次元低減アルゴリズムをエンコードされたデータに適用することにより、プロセッサによりエンコードされたデータを処理して次元低減されたエンコードされたデータを生成することも含む。この後者の次元低減アルゴリズムは、エンコードされたデータに含まれる情報をさらに圧縮して、それをマシンビジョンアルゴリズムのために有用にするように構成されている。具体的には、このさらなる圧縮は、エンコードされたデータから特徴を、すなわちマシンビジョンにとって有用であるが元の未加工画像にはない特徴を、引き出すことを可能にする。
加えるに、一部の実装では、さらなる次元低減によりもたらされる特徴は、特徴シグネチャを生成するように組み立てられ得る。特徴シグネチャは、複数のエンコードされた画像領域に関する情報を含む。特徴シグネチャは、複数のエンコードされた画像領域を通じて、その構成要素の特徴より大きい(すなわち、より記述的な)情報を所持してもよい。例えば、一部の実施形態では、次元低減をエンコードされたデータに適用することにより引き出される特徴は、異なる照明条件及び環境により混乱されていない特定の種類の速度情報を含む、速度情報を含んでもよい。シグネチャ内の複数の領域は、人体の領域に対応する一組の領域であってもよい。この例における特徴シグネチャは、成分が個別領域内の速度(すなわち、エンコードされたデータを使用して測定された、個々の身体部分の動作に関連付けられた速度)であるベクトルを作成することにより生成され得る。なお、上記のように、未加工画像ではなくエンコードされたデータを使用することにより、照明条件または当該人物が運動している環境などの他の要因により混乱されることなしに各領域内の速度を計算することができる。シグネチャは足取り、熱の傾き、身体部分の相対的なサイズなどの人物の身体運動の多くの識別特徴を取り込むため、次いでこのベクトル、このシグネチャを使用して人物を特定し、すなわち人物を他人から区別することができる。同様に、複数の領域またはセクタは、オブジェクトの領域に対応し、人間または他の生物が非生物、すなわち剛性な存在から区別されることを可能にする。
一部の実装では、エンコードされたデータは、1つの、または一連のエンコードされた画像(しばしば一連の網膜画像もしくはエンコードされた網膜画像と呼ばれる)として表され、エンコードされたデータを処理することは、エンコードされた一連の網膜画像を処理して、特徴または特徴シグネチャを生成することを含む。上記のように、特徴シグネチャは、複数の網膜画像領域に関する情報を含んでもよい。
一部の実装では、エンコードされたデータを処理することは、訓練されたアルゴリズムをエンコードされたデータに適用することを含む。訓練されたアルゴリズムは、畳み込みニューラルネットワーク(CNN)を含んでもよい。訓練されたアルゴリズムは、訓練データセットのエンコードされた訓練データで訓練されていてもよく、エンコードされた訓練データは、脊椎動物の網膜の1つまたは複数の網膜細胞の入力/出力変換を実質的に模倣する入力/出力変換により特徴付けられる訓練エンコーダを使用してエンコードされていてもよい。さらなる実装では、訓練セットのエンコードされた訓練データは、仮想環境のエンコードされた画像を含み、未加工画像データは、現実環境の未加工画像を含む。訓練セットのエンコードされた訓練データは、第1の条件セットの下で取得された画像を含んでもよく、未加工画像データは、第1の条件セットとは異なる第2の条件セットの下で取得された未加工画像を含んでもよい。第1の条件セットと第2の条件セットとは、異なる照明条件を含んでもよい。
別の実装では、方法は、マシンビジョンアルゴリズムを次元低減されたエンコードされたデータに適用することを含んでもよい。エンコードされたデータを処理して次元低減されたエンコードされたデータを生成することは、未加工画像データを処理してエンコードされたデータを生成することの後に、かつマシンビジョンアルゴリズムを次元低減されたエンコードされたデータに適用することの前に行われてもよい。未加工画像データを処理してエンコードされたデータを生成することは、未加工画像データと比較して次元が低減されたエンコードされたデータを生成することを含んでもよく、エンコードされたデータを処理して次元低減されたエンコードされたデータを生成することは、未加工画像データと比較してすでに次元が低減されたエンコードされたデータを追加的に圧縮することを含んでもよい。エンコードされたデータに含まれる情報の量は、対応する未加工画像データと比較して少なくとも約二分の一に圧縮されてもよく、次元低減されたエンコードされたデータは、対応するエンコードされたデータと比較して少なくとも約二分の一に圧縮されてもよい。エンコードされたデータに含まれる情報の量は、対応する未加工画像データと比較して少なくとも約十分の一に圧縮されてもよく、次元低減されたエンコードされたデータは、対応するエンコードされたデータと比較して少なくとも約十分の一に圧縮されてもよい。
別の実装では、装置は、未加工画像データを記憶するように構成された少なくとも1つのメモリ記憶装置と、このメモリに作動可能に連結された少なくとも1つのプロセッサとを含む。プロセッサは、一連の未加工画像に対応する未加工画像データを受信し、脊椎動物の網膜の少なくとも1つの網膜細胞の入力/出力変換を実質的に模倣する入力/出力変換を使用してこの未加工画像データを処理してエンコードされたデータを生成するようにプログラムされている。プロセッサは、エンコードされたデータに次元低減アルゴリズムを適用することにより、エンコードされたデータを処理して、次元低減されたエンコードされたデータを生成するようにさらにプログラムされている。次元低減アルゴリズムは、エンコードされたデータに含まれる情報の量を圧縮するように構成されていてもよい。装置は、少なくとも1つのプロセッサに作動可能に連結されたロボット装置であって、未加工画像データを生成するように構成された少なくとも1つの画像センサを備えた、ロボット装置、をさらに含んでもよい。
別の実装では、計算装置による実行時に、一連の未加工画像に対応する未加工画像データを受信することと、脊椎動物の網膜の少なくとも1つの網膜細胞の入力/出力変換を実質的に模倣する入力/出力変換を使用して未加工画像データを処理してエンコードされたデータを生成することと、次元低減アルゴリズムをエンコードされたデータに適用することによりエンコードされたデータを処理して次元低減されたエンコードされたデータを生成することと、を含む作業を計算装置に行わせるコンピュータ実行可能な命令を有する非一時的なコンピュータ可読媒体。次元低減アルゴリズムは、エンコードされたデータに含まれる情報の量を圧縮するように構成されている。
本開示の上記の特徴及び他の特徴は、添付図面と共に使用されると、以下の説明及び添付請求項からより十全に明らかになるであろう。これらの図面は本開示によるいくつかの実施形態のみを描いたものであり、したがって本開示の範囲を限定するとみなされるべきではないことを理解し、本開示を添付図面の使用を通じてさらに具体的に、かつ詳細に説明する。
例示的な実施形態によるマシンビジョンを有する装置のブロック図である。 例示的な実施形態によるエンコーダモジュールの作業を例示する流れ図である。 例示的な実施形態による例示的な網膜ナビゲータにより制御される現実世界の環境を通過するロボットの軌道を描く。 例示的な実施形態による例示的な画素ナビゲータにより制御される現実世界の環境を通過するロボットの軌道を描く。 様々な例示的な実施形態による異なる環境を通る網膜ナビゲータ及び画素ナビゲータの結果のヒストグラムを描く。 例示的な実施形態による様々な照明条件を有する様々な環境において網膜ナビゲータ及び画素ナビゲータがどれだけ良好に働いたかを表すグラフを描く。 例示的な実施形態による様々な照明条件を有する様々な環境網膜ナビゲータ及び画素ナビゲータによりなされた正しい決定のヒストグラムを描く。 例示的な実施形態によるビデオ内の人物認識の段階を描く。 例示的な実施形態によるエンコードされた画像(ここでは仮想網膜画像(VR)と呼ぶ)及び未加工画像データを使用して人物を認識する際の畳み込みニューラルネットワークの有効性のヒストグラムを描く。 例示的な実施形態による人物の顔の動作シグネチャを生成するための、エンコードされた画像(ここでは仮想網膜画像(VR)と呼ぶ)の例示的な使用を描く。 例示的な実施形態によるマシンビジョン装置のブロック図を描く。
以下の詳細な説明では、本明細書の一部を形成する添付図面を参照する。図面において、類似の記号は、文脈上別段の解釈を必要としない限り、典型的に類似の構成要素を特定する。詳細な説明、図面、及び請求項に記載の例示的な実施形態は、限定的であることを意図しない。本明細書で提示する主題の趣旨または範囲から逸脱することなしに、他の実施形態を利用することができ、他の変更を行うことができる。本明細書に一般的に記載され、図面に例示されている本開示の態様は、広範な異なる構成において配置、代用、結合、及び設計することができ、その全てが明示的に企図され、本開示の一部をなすことが容易に理解されるであろう。
マシンビジョンは多数の用途を有し、生産ライン上を通り過ぎる物体を計数するために使用される産業システムなどの相対的に単純なタスクから、顔認識などのより複雑なタスク、及び知覚的タスク(例えば、ロボットに複雑な環境を通過させること)にまで及ぶ。マシンビジョンの用途の例の非限定的なリストとしては、プロセスを制御するためのシステム(例えば、産業ロボットまたは自律車両)、イベントを検出するためのシステム(例えば、映像監視または人々の計数のため)、情報を組織化するためのシステム(例えば、画像及び画像シーケンスのデータベースのインデックス作成のため)、物体または環境をモデル化するためのシステム(例えば、工業検査、医用画像解析、または地形モデル化)、ならびに相互作用のためのシステム(例えば、コンピュータ対人間の相互作用のための装置に対する入力として)が挙げられる。
一部の用途では、マシンビジョンは、高度に計算コストの高いタスクを伴うことがある。単一のカラーデジタル画像は、数百万以上の画素からなることがある。各画素は、色空間(例えば、よく知られたRGB色空間、YCbCr空間、HSV空間など)における画素の座標を定義する複数の(例えば、8または24)ビット値などの関連付ける値を有し得る。ビデオストリームは、このような画像のシーケンスを、例えば、毎秒数百メガビット以上のビットレートに対応する毎秒数十フレームのフレームレートで含み得る。多くのマシンビジョン用途は、マシンビジョンが実用的であるために、このような画像またはビデオストリームの迅速な処理を必要とする(例えば、物体の動作を追跡し、それに反応するため、物体が組立ラインに沿って動く際に物体を特定または分類するため、ロボットが環境に対してリアルタイムに反応することを可能にするためなど)。
このような大量のデータをこのような時間的制約の下で処理することは、極めて困難であり得る。一部の実施形態では、未加工情報の量を低減させる技法が、画像データを処理するために使用される。このような実施形態では、技法は、手近なマシンビジョンタスクのために重要な画像データの特徴を保持(または強調さえ)することもできる。未加工データではなく、予備処理された画像データが、機械学習アルゴリズムを含むマシンビジョンシステムに入力されてもよく、それにより、以前は学習することが困難または不可能であった画像の特徴を機械学習アルゴリズムが学習することを可能にする。これは、システムの処理負担を低減し、学習を扱いやすくし、迅速な応答及び潜在的に改善された性能を可能にする。
脊椎動物の眼の網膜は、この種類の画像処理を提供する。つまり、脊椎動物の眼の網膜は、視覚刺激を取り込み、視覚刺激を脳により理解することができる形式に変換することができる。このシステム(数百万年の進化を経て開発された)は、哺乳類(特に猿及び人間)における高水準の複雑な視覚認識が証明するように、高度に効率的かつ効果的である。
脊椎動物の視覚システムの作業の抽象モデルに基づくマシンビジョンのための画像データ予備処理スキームを開発するための一部のアプローチは、網膜の実際の働きの大雑把な近似に基づいていてもよいが、これらは高度に効果的ではなかった。
視覚世界は、極めて複雑である。人間の脳は、絶えず視覚信号に襲われているが、にもかかわらず、視覚信号は、敏速に解析され、利用される。このような速度の1つの理由は、網膜により行われる寸法低減である。数百万年の進化は、網膜を強力な次元低減システムへと形作った。脊椎動物の視覚システムは、視覚入力を受け取り、必要なものを引き出し、残りを捨てる。もしこの次元低減が利用されれば、マシンビジョンの能力は、大いに増進されるであろう。
マシンビジョン出願で論じたように、我々は、この次元低減を行う網膜の入力/出力関係のモデルを開発した。これは、任意の複雑さの刺激(顔、風景、歩く人々など、マシンビジョン出願及びプロテーゼ出願を参照されたい)に一般化する点で、他の網膜モデルとは一線を画す。このモデルが行うことは、視覚世界に存在する情報の量を扱いやすい形態に圧潰(本明細書では圧縮とも呼ぶ)することである。圧潰された形態は、次いで、機械学習及びマシンビジョンアルゴリズム(両方とも当技術分野で公知であり、本開示に記載される)を含む他のアルゴリズムに対する入力として使用することができる。圧潰された形態は、アルゴリズムが、視覚環境を学習し、かつ通常の、未加工の高次元視覚入力に直接依拠する際に可能なよりも著しく効果的な方法でそれによってタスクを行うことを可能にする本開示において、我々は、ナビゲーション、顔認識、人物認識、物体認識、感情/表情認識、経済/地質/天候などのデータにおけるトレンド認識、疾患検出(例えば、MRI画像、CTスキャン画像、病理スライドなどの医用画像を使用しての)、及び動物または人間により上手に行われる他の認識/検出タスクを含む、様々なタスクへのこのアプローチの応用について記載する。
マシンビジョン出願では、我々は、それが特に難題である(空間及び時間の両方において処理を必要とする)という理由から、ナビゲーションタスクを含む応用においてこのアプローチの有効性を証明した。我々は、環境として、オープンソースのPanda 3Dグラフィックスパッケージを使用して構築された仮想現実3D環境を使用した。使用した学習アルゴリズムは、「ディープラーニング」ファミリーのものであり、具体的には畳み込みニューラルネットワーク(CNN)であった。我々は、ナビゲータが通常の未加工画像をその入力として使用した場合と、ナビゲータが網膜モデル(すなわち、エンコーダ)を通じてフィルタ処理された画像を使用した場合の、2つの条件の下でのナビゲータの性能を比較した。我々は、第1のものを「画素ナビゲータ」、第2のものを「網膜ナビゲータ」と呼ぶ。例えば国際出願第PCT/US2012/052348号(例えば、図10及び11を参照されたい)に示されるように、性能は、学習アルゴリズムが後者を使用したとき、すなわちアルゴリズムが視覚環境から重要な特徴を抽出したとき、大いに良好(何倍も良好)であり、また非常に重要なことに、学習が他の環境(農村、郊外、異なる照明条件など)に一般化されたが、これは、人工的システムにとって高度に問題のある点であった。
本開示において、我々は、一部の実施形態において以下の利点の一部または全部を呈する技法、すなわち、1)次元低減アプローチのパワーを現実世界の環境に翻訳し、2)生物学的発想によるものと人工的なものの両方の、さらなる次元低減方法を追加して顔認識、人物認識、物体認識、環状/表情認識、経済/地質/天候などのデータにおけるトレンド認識、及び動物または人間により上手に行われる他の認識/検出タスクのための新しいアルゴリズムを作成する技法、を説明した。
一態様では、一連の未加工画像に対応する未加工画像データを受信することと、未加工画像データをエンコーダで処理してエンコードされたデータを生成することであって、エンコーダが、脊椎動物の網膜の1つまたは複数の網膜細胞の入力/出力変換を実質的に模倣する入力/出力変換により特徴付けられる、生成することと、エンコードされたデータに含まれる情報の量を圧縮するように構成された次元低減アルゴリズムを適用することによりエンコードされたデータを処理して次元低減されたエンコードされたデータを生成することと、を含む方法が開示される。
様々な実装は、上記の装置、技法、及びそれらの要素のうちの任意のものを、単独で、または任意の好適な組み合わせでのいずれかにより、含んでもよい。
以下は、目的言語を教えるための方法及びシステムに関する様々な概念、ならびに該方法及びシステムの実装の、より詳細な説明である。記載する概念は任意の特定の様式の実装に限定されないため、上記で紹介し、下記でより詳細に論じる様々な概念は、多数の方法のうちの任意の方法で実装され得る。具体的な実装及び応用の例を、主として例示目的のために提供する。
一部の実施形態では、網膜により行われる作業のほぼ完全な複製を提供するエンコーダが使用されてもよい。上記で参照により組み込まれた様々な国際特許出願(以下、「プロテーゼ出願」)に詳細に記載されているように、このようなエンコーダは、高度に効果的な人工網膜を開発するために使用されてもよい。一部の実施形態では、エンコーダは、マシンビジョンに応用される。
予備処理工程(具体的には、次元低減工程または次元シフト)として使用される場合、エンコーダは、マシンビジョンアルゴリズムの性能を大いに向上させ得る。一部の実施形態では、エンコーダは、マシンビジョンアルゴリズムが広範な環境及び照明条件下で情報を効果的に抽出することを可能にし得る。既存のマシンビジョンアルゴリズムが部分的に効果的である場合、次元低減は、強力な向上剤として役立ち得る。エンコーダは、抽出が、より効果的に、より高速に、かつより効率的に遂行されることを可能にし得る(例えば、より高い性能につながる)。
エンコーダにより出力されたデータは、別の次元低減アルゴリズムを使用することにより、さらに処理されてもよい。さらなる処理は、マシンビジョンアルゴリズムの適用の前に(またはその一環として)行われてもよい。このさらなる次元低減アルゴリズムは、生物学的発想によるものであってもよく、部分的または全体的に人工的であってもよい。マシンビジョン出願で論じたように、エンコーダは、未加工画像を新しい表現に、例えば網膜によりエンコードされた画像に、変換する。これらの新しい表現は、未加工画像中に存在しなかった表現である。この表現は、さらなる次元低減処理のために有利に利用されてもよく、それにより元の未加工画像データのより効果的かつ効率的な処理を可能にする。それゆえに、さらなる次元低減アルゴリズムが、網膜によりエンコードされた画像(さらなる特徴またはその中に含まれる表現を含む)に適用されてもよい。網膜によりエンコードされた画像は、未加工画像とは根本的に異なり、したがってそれに対して行われた次元低減は、以前に生成されたことがなく、かつ次元低減プロセスを未加工画像に直接適用することによっては生成することができない、機械学習の特徴(またはパラメータ)をもたらすことに留意されたい(例えば、エンコーダは、時間と共に進化する新規なパターンを作製する。パターンは画像それ自体ではなく画像に対するニューロン反応により生成されるため、パターンを取り込むために選択されるパラメータは、未加工画像の特徴を取り込むために使用され得るパラメータとは異なる)。
一部の実施形態では、学習アルゴリズム(例えば、マシンビジョンアルゴリズム)は、網膜エンコーダ及び1つまたは複数のさらなる次元低減プロセスを使用して処理されたデータ(例えば、画像)で訓練されてもよい。例えば、本明細書で提供する実施例に記載するように、本発明者は、広範な応用において、このような処理されたデータセット(例えば、未加工画像データに対立するものとしての)で訓練されたアルゴリズムが、向上した性能を呈することを見出した。さらに、本発明者は、向上した性能が、高度に一般化可能であることを見出した。つまり、様々なアルゴリズムは、訓練画像に見出されるものとは著しく異なる条件(例えば、照明条件、環境カラーパレットなど)の下で生成された入力(例えば、画像)を提示された場合でさえ、良好に働く。一部の場合には、本発明者は、本明細書に記載の技法を使用して処理された仮想画像(例えば、環境の仮想レンダリングに基づいて生成された画像)で訓練されたアルゴリズムが、仮想訓練環境とは著しく異なる現実世界の環境を提示された場合でさえ、良好に働くことを見出した。
本明細書で提供する実施例に示すように、本明細書に記載の技法を使用して処理される訓練データセット(例えば、網膜エンコードを特色とし、1つまたは複数のさらなる次元低減プロセスがそれに続く)は、ナビゲーション、顔認識、物体識別用のマシンビジョンアルゴリズムなどを含む広範な学習アルゴリズムのための向上した訓練環境を提供することができる。
一部の実施形態は、プロテーゼ出願に詳細に記載した種類の網膜エンコードプロセスを用いてもよい。このような実施形態は、刺激を受け、刺激を一組のエンコーダにより一組の符号に変換する装置を含んでもよい。装置はまた、符号をインターフェースを使用して信号に変換してもよい。信号は、複数の網膜細胞を高精度トランスデューサにより活性化してもよい。複数の網膜細胞を活性化することは、同じ刺激に応答する哺乳類の網膜の網膜神経節細胞の時間依存性応答に実質的に類似した、広範な刺激に対する網膜神経節細胞応答をもたらし得る。このような装置内で使用され得るエンコーダは、マシンビジョン応用における使用のために画像データを処理するように適応されてもよく、人工網膜には必ずしも限定されない。
プロテーゼ出願に記載の人工網膜は、通常の網膜のように、画像プロセッサであってもよい。人工網膜は、受け取った刺激から不可欠な情報を抽出することができ、その情報を、脳が理解することができる活動電位のパターンへと再フォーマットすることができる。哺乳類の網膜により生成される活動電位のパターンは、網膜のコードまたは神経節細胞のコード内にある。人工網膜は、損傷または退化した網膜が通常またはほぼ通常の出力を生成することができるように、視覚刺激をこの同じコード、またはそれに近い代理物へと変換することができる。人工網膜は通常の網膜と同じコードまたはそれに近い代理物を使用するため、損傷または退化した網膜内の神経節細胞の発火パターンは、通常の神経節細胞の発火パターンと同じ(または実質的に類似)である。よって、このような補綴は、網膜が、視覚世界を表す通常の網膜の信号と同じもの(または実質的に類似)を脳に送ることを可能にすることができる。
プロテーゼ出願で論じたように、エンコーダは、網膜細胞のための入力/出力モデルを使用することができる。入力/出力モデルは、様々な刺激、例えば、白色雑音(WN)及び自然情景(NS)の両方の映画に対する哺乳類の網膜細胞の入力/出力応答の研究から得たデータを使用して生成することができる。一部の実施形態では、エンコーダは、複数のパラメータにより特徴付けられる時間空間変換を含む線形非線形カスケードモデルに基づいてもよい。このようなパラメータは、哺乳類の網膜を使用した実験を通じて得られたデータに基づいて最適化することができる。パラメータの使用は、広範な刺激に対する哺乳類の細胞の応答を細かに模倣する人工的プロセスをもたらし得る。結果として、顔、風景、歩く人々、遊ぶ子どもたちなどの自然な画像(静的な、または空間時間的に変化する)に対する入力/出力関係を取り込むモデルが得られ得る。このモデルは、白色雑音刺激またはガウス統計を有する刺激に対する入力/出力関係も取り込むことができる。
一部の実施形態は、実験を通じて得られたデータを活用することができる。それゆえに、生成されたエンコーダは、網膜の根本的な処理スキームについての詳細な抽象的理解を必要とすることなく、網膜処理を正確にシミュレートすることができる。例えば、霊長類及び人間における網膜処理は、パターン認識タスク(例えば、顔認識)に有用な視覚刺激中の特徴を強調する一方、他の特徴(例えば、冗長な情報または雑音)を脱強調または除去して脳内の効率的な処理を可能にすると考えられる。これまでのところ、永劫にわたる自然淘汰の結果として発達した処理スキームの詳細についての完全な抽象的理解は存在しない。それでも、このような抽象的理解の不在にもかかわらず、本明細書に記載の装置及び技法は、網膜応答を正確に模倣することにより、この処理の恩恵を得ることができる。
言い換えれば、本明細書に記載の様々な実施形態では、モデルまたはモジュールは、データ駆動型であってもよい。モデルまたはモジュールは、網膜の入力/出力関係のデータ駆動型モデルであってもよく、現実的な画像の予備処理を提供する。モデルまたはモジュールは、下流のマシンビジョンアルゴリズムに対して、予備処理された信号を出力してもよい。予備処理工程は、生物学的網膜と同じ(または実質的に類似の)種類の、かつ同じ(または実質的に類似の)規模の、次元低減を達成することができる。よって、このようなモデルまたはモジュールは、哺乳類の網膜と同じ利点を提供し得る。
様々な実施形態では、網膜処理は、所与の用途のために重要な特徴を保持しながら、未加工画像データからの総情報量を低減するように作動する。総情報量の低減は、哺乳類の網膜が効率性を達成する方法に類似の方法で効率的であってもよい。このようなプロセスを、本明細書において、「次元低減」または「生物学的次元低減(BDR)」と呼ぶ。例えば、一部の実施形態では、網膜によりエンコードされたデータ中の総情報量が低減されるものの、マシンビジョンアルゴリズムは、網膜によりエンコードされたデータがマシンビジョンアルゴリズムが未加工画像データを受信した場合よりも低減されるとき、より良好な性能を呈し得る。より良好な性能は、本質的には、網膜により受け取られた最も重要な情報をマシンビジョンアルゴリズムに提供し、マシンビジョンアルゴリズムの具体的なタスクにとってそれほど重要ではない一部の情報を低減または廃棄することの結果である。
様々な実施形態では、網膜によりエンコードされたデータは、少なくとも1.5、少なくとも2、少なくとも3、少なくとも4、または少なくとも5分の一に、またはそれ以上、例えば1~100の範囲内もしくはその任意の部分範囲内の係数により未加工視覚データ(例えば、網膜により受け取られた)が圧縮された形態であってもよい。圧縮は、エンコーダによりもたらされる次元低減に対応し得る。例えば、一部の実施形態では、網膜エンコーダのビットレートは、定量化されてもよく、エンコーダにより刺激として使用される未加工画像データのエントロピー(同じく単位時間あたりのビット数で測定される)に比較されてもよく、この比率は、圧縮比率を決定するために使用されてもよい。例えば、プロテーゼ出願に記載の一部の場合では、4.9ビット/秒の未加工入力データのビットレートと比較して、2.13ビット/秒のビットレートを有するエンコーダが記載されている。よって、エンコーダによりもたらされるデータ圧縮は、この例ではほぼ7倍であった。
本明細書に記載のように、一部の実施形態は、さらなる次元低減アルゴリズム(生物学的発想によるもの、人工的なもの、またはそれらの組み合わせ)をエンコードされたデータに適用することを含んでもよい。様々な実施形態では、次元低減された網膜によりエンコードされたデータは、少なくとも1.5、少なくとも2、少なくとも3、少なくとも4、または少なくとも5以上、例えば1~100の範囲内もしくはその任意の部分範囲内の係数によりさらに圧縮されてもよい。一部の実施形態では、この圧縮は、エンコードされたデータの更なる処理によりもたらされる次元低減に対応する。例えば、一部の実施形態では、加工後のエンコードされたデータのビットレートは、定量化されてもよく、エンコーダの予備処理出力のビットレートに比較されてもよく、この比率は、圧縮比率を決定するために使用されてもよい。
図1は、例示的な実施形態によるマシンビジョンを有する装置100のブロック図である。代替的な実施形態では、装置100は、さらなる要素、より少ない要素、または異なる要素を有してもよい。さらに、図1中の矢印の使用は、要素の順序に関して限定的であることを意図しない。装置100は、カメラ105、エンコーダ110、マシンビジョンモジュール115、及びシステム120を含む。一部の実施形態では、システム120は、少なくとも部分的にマシンビジョンモジュールにより制御されてもよい。カメラ105は、視覚刺激を受け取り、それをデジタル画像データに変換する。一部の実施形態では、デジタル画像データは、デジタル画像のストリームであってもよい。このデジタル画像データは、本明細書において「未加工」画像データと呼ぶことがある。未加工画像データは、網膜エンコーダによる処理前の任意の画像データを含み得る。
一部の実施形態では、エンコーダ110は、画像データを受信してもよく、1つまたは複数の網膜エンコーダを使用して画像データを処理する。一部の実施形態では、網膜エンコーダは、本明細書で、及び/またはプロテーゼ出願で記載した種類のものであってもよい。エンコーダ110は、受信した画像データを、哺乳類の網膜により出力されるフォーマットと同じ(または実質的に類似した)フォーマットに変換することができる。エンコードされた網膜画像データと呼ぶエンコーダ110の出力は、次元低減モジュール112に渡される。次元低減モジュール112は、エンコーダ110からの出力を処理して、エンコーダ110により行われたいかなる次元低減も超えるさらなる次元低減を提供する。例えば、次元低減モジュール112は、エンコードされた網膜画像のストリームをエンコーダ110から受信し、次元低減されたエンコードされたデータを生成してもよい。言い換えれば、エンコーダ110は、未加工画像からの情報をエンコードすることにより、エンコードされた網膜画像データを作製する。次元低減モジュール112は、エンコードされた網膜画像データからの特徴を様々なマシンビジョンタスクのために使用する。次元低減モジュール112は、エンコードされた網膜画像データにより表される特徴のサブセットのみを必要に応じて特定のマシンビジョンタスクのために使用し、特定のマシンビジョンタスクにとって不要な特徴を無視する。
次元低減モジュール112の出力は、マシンビジョンモジュール115に渡される。マシンビジョンモジュール115は、当技術分野で公知の、かつ/または本明細書に記載の1つまたは複数のマシンビジョン技法を使用することにより、データを処理することができる。マシンビジョンモジュール115は、任意の好適な目的のために使用することができる出力を生成することができる。図1に示すように、マシンビジョンモジュール115の出力は、1つまたは複数のシステム120に送信されてもよい。一部の実施形態では、システム120は、ロボットシステムであってもよい。一部の実施形態では、画像処理及び/または制御は、リアルタイムで、またはほぼリアルタイムで行われてもよい。
図1に示すシステムは、例示的であることのみを意図しており、様々な他の種類のマシンビジョンシステムが使用されてもよい。例えば、一部の実施形態では、制御されるシステム120は、含まれなくてもよい。例えば、マシンビジョンモジュール115の出力は、制御のために直接使用されるのではなく、さらなる処理のために記憶されてもよい。一部の実施形態では、カメラ105は、記憶された画像データのソースにより置き換えられてもよい。例えば、カメラ105は、デジタルビデオを記憶する記憶装置により置き換えられてもよい。一部の実施形態では、様々なプロセッサ、コントローラ、ユーザー制御、入力装置または出力装置などのさらなる要素が、装置100内に含まれてもよい。
一部の実施形態では、次元低減されたエンコードされたデータはまた、特徴シグネチャを生成するように組み立てられてもよい。特徴シグネチャは、複数のエンコードされた網膜画像領域またはセクタに関する情報を含む。特徴シグネチャは、複数の画像領域を通じて、その構成要素の特徴より大きく、かつより記述的な情報を所持してもよい。一部の実装では、特徴シグネチャは、エンコードされたデータ中の他の特徴のなかでもとりわけ、横方向の動作、横方向の動作の速度、縦方向の動作、縦方向の動作の速度、密度、オンオフ比率などの、エンコードされたデータから抽出される相対的に単純な特徴を使用して、例えば人々、顔、及び物体の識別または分類を可能にしてもよい。成分が個々の領域内の特徴の値(例えば、エンコードされたデータを使用して測定された各領域内の横方向の動作の速度)であるベクトルが作成されてもよい。次いで、このベクトル、すなわちこのシグネチャを使用して、マシンビジョンタスクを行ってもよい。例えば、顔認識の場合、シグネチャ内の領域(ベクトルの成分)は、顔内の領域(例えば、左眉を覆う領域、左目を覆う領域など)に対応する。特徴が例えば横方向の動作の速度(すなわち、横方向速度)であれば、ベクトルは、眉及び目の相対運動などの、個々の顔のいくつかの識別特徴を捕捉する。このようなベクトルを使用して、顔及び顔により生成される表情を区別してもよい。さらなる詳細を以下で提供し、例示的な実施形態(図7~9)を「実施例2-視覚タスク」で説明する。同様に、複数の領域またはセクタは、身体の領域(例えば、頭部、上腕、前腕など)に対応してもよい。特徴が、この場合も、横方向の動作の速度であれば、ベクトルは、足取り、頭の傾き、身体部分の相対的なサイズなどの、人物の身体のいくつかの識別特徴を補足してもよい。このようなベクトルを使用して、人々を区別してもよい。この場合も、さらなる詳細を以下で、「実施例2-視覚タスク」における図7~9の詳細な説明において提供する。同様に、複数の領域はまた、人間または他の生物を非生物、例えば剛性な存在から区別することを可能にする物体の領域に対応してもよい。複数の領域はまた、シグネチャが大域的性質、例えばオプティカルフローを捕捉するように、移動する情景の領域に対応してもよい。エンコードされたデータは一連の画像(エンコードされたデータの映画)を含んでもよいため、シグネチャは、図中に示すような時系列データのベクトルであってもよいことに留意されたい。
様々な実施形態では、カメラ105は、視覚刺激をデジタル形態(例えば、デジタル画像のストリーム)に変換することができる任意の装置であってもよい。様々な実施形態は、電荷結合素子(CCD)に基づくカメラ105;相補型金属酸化膜半導体(CMOS)センサ、薄膜トランジスタ(TFT)、またはフォトダイオードアレイなどの能動画素センサ(APS);及びそれらの組み合わせ、を含んでもよい。
カメラ105により生成されたデジタル画像のそれぞれは、少なくとも0.01メガピクセル、少なくとも0.1メガピクセル、少なくとも1メガピクセル、または少なくとも2メガピクセル以上、例えば0.01~1000メガピクセルの範囲内もしくはその任意の部分範囲内を含んでもよい。デジタル画像のストリームは、少なくとも10Hz、少なくとも50Hz、または少なくとも100Hz以上、例えば1~1000Hzの範囲内もしくはその任意の部分範囲内のフレームレート(例えば、1秒あたりの画像フレーム数)により特徴付けられてもよい。デジタル画像は、カラー、グレースケール、白黒、または他の好適な種類の画像であってもよい。
一部の実施形態では、カメラ105は、電荷結合素子(CCD)に基づいてもよい。一実施形態では、カメラ105は、Point GreyブランドのFirefly MVモデルの画像取込装置(8ビット/画素の752x480画素の画像を毎秒60フレーム取り込むことができる)であってもよい。別の実施形態では、カメラ105は、e-con Systemsブランドのe-CAM50 OMAP GSTIXモデルの画像取込装置であってもよい。カメラ105は、8ビット/画素の1280x720画素の画像を毎秒30フレーム取り込むことができる、OmniVisionブランドのOV5642モデルのカメラモジュールを組み込んでもよい。
一部の実施形態では、画像は、装置100が望ましからざる遅延時間なしに作動することを可能にするために十分な速度で、カメラ105により取得され、エンコーダ110に送信されてもよい。一部の実施形態では、カメラ105とエンコーダ110との間に高帯域接続が設けられてもよい。例えば、カメラ105とエンコーダ110との間で20MB/秒超のデータ転送が、ユニバーサルシリアルバス(USB)2.0インターフェースを使用して達成されてもよい。他の実施形態では、Texas InstrumentsブランドのOMAP 3530モデルのプロセッサのカメラ画像信号プロセッサ内に組み込まれたパラレルインターフェースなどの、パラレルインターフェースが、カメラ105とエンコーダ110との間で使用されてもよい。様々な実施形態では、有線接続または無線接続を含む他の好適な接続が使用されてもよい。カメラ105は、米国電気電子学会(IEEE)規格1394、USB 2.0、USB 3.0、USB 3.1などのシリアルインターフェース;パラレルインターフェース;米国テレビジョン委員会(NTSC)規格もしくは位相反転線(PAL)規格などのアナログインターフェース;または無線インターフェース、を含むがそれらには限定されない高速データ転送可能な任意の接続を使用してエンコーダ110とインターフェース接続されてもよい。一部の実施形態では、カメラ105は、エンコーダ110と同じ回路基板上に組み込まれてもよい。
エンコーダ110は、例えば、画像をコードに変換して網膜回路の作業を模倣するエンコーダを実装することを含む、本明細書に記載の技法を使用して、画像ストリームを処理することができる。つまり、エンコーダ110は、画像を受信し、同じ画像を与えられた哺乳類の網膜により出力されるデータストリームと同じ(または実質的に類似の)データストリームを出力することができる。エンコーダにより実装される変換を、一連の入力画像に適用して、エンコードされた出力を生成してもよい。例えば、エンコードされた出力は、画像が哺乳類の網膜により受け取られた場合に生成されたであろう、網膜細胞の発火速度に類似した形式の値であってもよい。一部の実施形態では、エンコーダ110の出力はまた、例えば網膜細胞の起動電位を模倣する情報であってもよい。起動電位は、網膜モデルの線形成分の出力(入力画像の線形フィルタによる畳み込みの出力)であってもよい。エンコーダ110のエンコードされる出力は、哺乳類の網膜細胞が同じ入力画像により刺激された場合に哺乳類の網膜細胞により生成されるであろうスパイクまたはパルスのパルス列であってもよい。
一部の実施形態では、異なるエンコーダ110の組を使用して、哺乳類の網膜による処理を模倣してもよい。哺乳類の網膜内には異なる種類の網膜出力細胞が存在し、様々なエンコーダ110を使用して、異なる種類の哺乳類の網膜出力細胞を複製してもよい。差異は、特定の細胞種類(例えば、「オン」細胞もしくは「オフ」細胞)または網膜上の細胞位置(例えば、中心網膜内の「オン」細胞及び網膜の周辺部の「オフ」細胞)に対応してもよい。装置100が2つ以上のエンコーダ110を有する実施形態では、エンコーダ110は、独立してか、少なくとも1つまたは複数の連結機構を通じてかのいずれかで、並行して作動することができる。
図2は、例示的な実施形態によるエンコーダモジュール110の作業を例示する流れ図である。代替的な実施形態では、より少ない作業、さらなる作業、及び/または異なる作業が行われてもよい。また、流れ図の使用は、行われる作業の順序に関して限定的であることを意図しない。作業205では、エンコーダモジュール110は、1つまたは複数の画像を受信することができる。一部の実施形態では、1つまたは複数の画像は、カメラ105(または何らかの他の好適なソース)から受信されてもよい。作業210では、1つまたは複数の画像を予備処理することができる。例えば、1つまたは複数の画像のコントラスト及び/または彩度をスケール変更するように、1つまたは複数の画像に雑音フィルタを適用するように、1つまたは複数の画像をトリミングするようになど、1つまたは複数の画像を予備処理することができる。一部の実施形態では、作業210は、行われなくてもよい。
作業215では、1つまたは複数の画像をエンコードすることができる。1つまたは複数の画像は、哺乳類の網膜細胞の画像に対する応答を模倣するような方法で処理されてもよい。例えば、一実施形態では、画像フィールド内の様々な位置について、1つまたは複数の画像を入力することができ、1つまたは複数の画像が哺乳類の網膜により処理される場合に哺乳類の網膜細胞(または細胞群)により生成されるであろう発火速度に対応する時間依存値を出力することができる。ある実施形態では、発火速度の出力は、以下のようにフォーマットされる。すなわち、所与の時間tについて、出力は、位置(x,y)の要素が位置(x,y)の網膜細胞の発火速度に対応するビットマトリクスである。
一部の実施形態では、作業215は、発火速度以外の指標を使用して哺乳類の網膜細胞の応答を模倣する情報を生成することを含んでもよい。例えば、エンコーダの出力は、細胞の活性状態、細胞内電位、上記の起動電位などに対応してもよい。
作業220では、作業215からのエンコードされた情報を使用して、1つまたは複数のエンコードされた網膜画像を生成することができる。一部の実施形態では、エンコードされた網膜画像は、マシンビジョンモジュール115による処理のために好適であってもよい。例えば、エンコードされた情報が発火速度のマトリクスとして出力される場合、上記のように、エンコードされた網膜画像中の各画素の彩度がマトリクス内の対応する要素の発火速度値により決定される、発火速度の網膜画像が生成されてもよい(例については、図3を参照されたい)。線形関係、非線形関係、多項式関係、対数関係などを含む、発火速度と画素彩度との間の任意の好適な関係が使用され得る。作業220は、ルックアップテーブルの使用を含む任意の好適な技法を使用して画素彩度を発火速度に変換することを含んでもよい。一部の実施形態では、発火速度は、エンコードされた網膜画像において、彩度以外の画像特性を使用して表されてもよい。例えば、エンコードされた網膜画像がカラー画像である実施形態では、各画素の色空間座標は、発火速度に対応してもよい。
作業225では、エンコードされた網膜画像は、1つまたは複数のエンコードされた網膜画像を処理して次元低減されたエンコードされたデータを生成することを含み得る、さらなる次元低減処理を受ける。次元低減されたエンコードされたデータは、上記で論じたように、かつ以下の図7~9の説明においてさらに詳細に論じるように、特徴部シグネチャデータを生成するように組み立てられてもよい。
スケール変更、フィルタ処理、トリミング、平滑化などを含むさらなる処理も、エンコードされた網膜画像に適用されてもよい。
作業230では、1つまたは複数の網膜画像をマシンビジョンモジュール115に出力することができる。1つまたは複数の網膜画像は、有線または無線であり得る任意の好適な方法を使用して出力することができる。一部の実施形態では、網膜画像は、哺乳類の網膜が網膜画像を出力する方法に似たように出力することができる。
実施例1-ナビゲーションプロセッサ
マシンビジョン出願は、仮想現実環境内で効果的であるナビゲータを記載している。しかしながら、本開示のある例によれば、ナビゲータは、現実世界の環境内でも効果的であり得る。それゆえに、本開示の様々な実施形態は、複数の環境及び複数の応用において使用され得る。
例えば、Turtlebotと呼ばれる走行ロボットを使用することができる。Turtlebotは、ロボット工学開発及び試験のために設計されたオープンソースの個人向けロボットである。Turtlebotは、ハードウェア機構及び通信機構を促進し、ロボット上のセンサ及びハードウェア構成要素からのデータを単一のソフトウェアフレームワークにまとめあげる、Robot Operating System(ROS)上で稼働する。ロボットは、Yujin Robot社製のiClebo Kobukiと呼ばれる三輪式円形移動性基部と、カメラを含むMicrosoft社のKinectセンサと、ロボットのより良好なセンサ入力及び状態推定のための工場較正済みのオンボードジャイロとを含む。ラップトップが、ロボット上にオンボードで配置され、全てのセンサデータを即座に処理してオンラインかつリアルタイムで意思決定を行う。ラップトップは、Linux(登録商標)オペレーティングシステム(Ubuntu)及びその1層下のROSを稼働させて、ラップトップ上で全てのロボットデータを制御及び処理する。
このような例は、しかしながら、本開示の1つの具体的な実装に過ぎない。他の実施形態は、さらなる要素、より少ない要素、または異なる要素を含んでもよい。例えば、ある汎用の実施形態は、移動性要素と、視覚感知要素(例えば、カメラ)と、視覚感知要素からデータを受信し、移動性要素に命令を提供するように構成された処理要素とを含んでもよい。
1つの試験条件では、Kinectの三次元カメラシステムは無視され、二次元カラーカメラのみが使用された。それゆえに、装置のソフトウェアによりなされた意思決定は、二次元画像に基づいていた。装置のソフトウェアは、カメラから入力画像を受信するように構成されていた。入力画像は、装置により7つの領域に分割された。ソフトウェアは、各領域の速度と、各領域が12個のカテゴリーのうちのいずれに収まるかとを判定した。次いで、ソフトウェアは、最低速度を有する領域を選択し、最低速度の領域の方向に進むように装置を方向付けた。
上記のプロセスは、装置が、ほとんどまたは全く衝突なしに環境を通過することを可能にする。実施例1では、類似のフロントエンドソフトウェアが、マシンビジョン出願に記載の仮想ナビゲーションタスクにおいて使用されたように使用された。つまり、仮想ナビゲータが仮想世界において速度を判定することを可能にした類似の訓練セットを使用して、実施例1の現実環境における速度を判定した。実施例1では、ソフトウェアに対する変更には、スピード判定後の工程に対する改変と、限定された現実世界の空間における装置の形状のフレームワークに関係するナビゲーション規則の小さな変更とが含まれていた。具体的には、ソフトウェアは、意思決定の間の時間中の全てのフレームペアについてデータを蓄積することにより前方に移動するか、それとも向きを変えるかを決定し(例えば、1秒の期間にわたって29個のフレームペア)、7つの領域のうちのいずれが全てのフレームペアにわたって最も遅い速度を有するかを判定した。
つまり、装置は、向きを変えるか、それとも前方に進み続けるかの意思決定を1秒に1回行った。各秒に、カメラは、29個の画像を取り込んだ。各画像は、7つの領域に分割された。各領域の速度は、直近に取り込まれた画像の領域を、以前に取り込まれた画像の対応する領域と比較することにより判定される。次いで、装置は、12個のカテゴリーのうちのいずれに各領域の速度が属するか判定する(例えば、Aが最低速度であり、Lが最高速度である、A~L)。装置は、各領域に対応する速度カテゴリーを勘定し、最後の意思決定以来、7つの領域のうちのいずれが最低カテゴリーにおいて最多得点を有するか判定した。例えば、領域1~7及びカテゴリーA~Lについて、左端の領域1が1得点をカテゴリーAにおいて、残りの得点をカテゴリーB~Lにおいて有し、他のいずれの領域もカテゴリーAにおいて得点を有さない場合、装置は、領域1の方向に向きを変えることを決定する。別の例では、左端の領域1が2得点をカテゴリーBにおいて、残りの得点をカテゴリーC~Lにおいて有し、右端の領域7が1得点をカテゴリーBにおいて、残りの得点をカテゴリーC~Lにおいて有する場合、装置は、領域1に向かうことを決定する。最後の意思決定以来の全てのフレームペアを平均化することにより、より安定した意思決定が行われる。
図3A及び3Bは、例示的な実施形態による現実世界の環境を通過する実施例1の装置の性能を示す。図3Aは、「網膜ナビゲータ」を使用した装置の性能を示す。図3Bは、「画素ナビゲータ」を使用した装置の性能を示す。装置の周囲寸法は、図中の円の直径により表わされている。図3A及び3Bに示すように、装置の周囲寸法は、相対的に大きく、装置は、壁及び障害物との衝突を回避するために巧みに動かなければならず、Xは、椅子を表し、黒の四角は、紙くずかごを表す。両方の場合に、ロボットは、毎秒0.4メートル(m/s)で前進した。
図3Aは、装置が「網膜ナビゲータ」により制御されたときの装置の軌道を示す。網膜ナビゲータは、網膜モデルを通じてフィルタ処理された映画(例えば、次元低減された視覚世界)からその視覚環境内における速度を学習した、マシンビジョン出願に記載のナビゲータであってもよい。次元低減された網膜モデルは、上記の図1及び2に関して記載したプロセスと整合したモデルであってもよい。
図3Bは、装置が「画素ナビゲータ」により制御されたときの装置の軌道を示す。画素ナビゲータは、フィルタ処理されていない映画(例えば、網膜モデルにより次元低減されていない映画)からその視覚環境内における速度を学習した、マシンビジョン出願に記載のナビゲータであってもよい。両方の場合に(図3A及び3Bに示す)、ナビゲータは、Panda-3の仮想環境内で訓練された。他の実施形態では、異なる仮想環境を使用して、ナビゲータを訓練してもよい。
図3Aに示すように、装置が網膜ナビゲータにより制御されたとき、装置は、壁または障害物にぶつかることなしに現実環境内の障害物を通って巧みに動いた。対照的に、図3Bに示すように、装置が画素ナビゲータにより制御されたとき、装置は、壁及び障害物に衝突した。どの場合にも、装置は、コースをうまく通り抜けることができなかった。
図3A及び3Bに示す例の異なるバージョンでは、装置は、上記の網膜ナビゲータを使用した。次いで、装置を、見通しのよい部屋内で、立っている人物に向かう経路上で始動させた。装置が立っている人物に接近すると、装置は、現在の軌道上では衝突が発生するであろうことを検出し、立っている人物を回避するために向きを変えた。人物が装置の軌道内へと移動すると、装置は、人物と衝突することを回避するために再び向きを変えた。このプロセスは数回繰り返され、毎回、装置は、人物と衝突することを回避するために向きを変えた。
別の例は、上記で説明したソフトウェアを有するデバイスを含む。1つのバージョンでは、網膜ナビゲータを使用し、図1及び2に関して上記で論じたように入力画像をフィルタ処理した。別のバージョンでは、画素ナビゲータを使用し、入力画像のフィルタ処理は行われなかった。各ナビゲータを、同じ画像を使用して訓練した。次いで、各ナビゲータを、ナビゲータを訓練するために使用した環境とは異なる様々な仮想環境で稼働させた。例えば、訓練中に使用した仮想環境は、農村環境の複製であった。次いで、各ナビゲータは、農村仮想環境内に配置され、ナビゲータは、同様に働き、環境じゅうを良好に通過し、めったに障害物に衝突しなかった。網膜ナビゲータは、約95%の割合で障害物コースをうまく通り抜けた一方、画素ナビゲータは、約90%で障害物コースをうまく通り抜けた。
しかしながら、ナビゲータが異なる照明条件を有する異なる環境内に再訓練なしに配置されると、異なるナビゲータは、異なるように働いた。網膜ナビゲータは、相対的にまっすぐな軌道を有し、めったに障害物に衝突せず、農村環境内のナビゲータと同様の性能を有していた。しかしながら、画素ナビゲータは、乱れた軌道(外見上乱雑な)を有し、しばしば障害物に衝突した。3つの異なる環境において、網膜ナビゲータは、約90%~95%の割合で障害物コースをうまく通り抜けた。しかしながら、画素ナビゲータは、約0%~25%の割合で障害物コースをうまく通り抜けた。
図4は、網膜ナビゲータ及び画素ナビゲータの異なる環境を通じた結果のヒストグラムを示す。図4の左側の図は、最低速度領域の正しい決定がどのように判定されるかを例示する。上記のように、各画像は、7つの領域に分割され、各領域は、画像の垂直細片である。図4の左側の図中に示す例では、中間領域が、最低速度の運動を有する領域である。よって、例えば、中間領域の右側の第2の領域が最低速度領域であるとナビゲータが判定すると、その判定は、図4の右側のグラフ上で+2のスコアを受け取る。それゆえに、このような状況下では、ナビゲータは、まっすぐ進んでいくべきときに右手方向に向くように動くであろう。
図4の左端のグラフは、農村環境(訓練環境に類似)において画素ナビゲータ(上部)及び網膜ナビゲータ(下部)によりなされた正しい意思決定のヒストグラムを示す。示すように、網膜ナビゲータは、画素ナビゲータより多くの正しい意思決定(0のスコアを有する意思決定)、及びより少ない間違った意思決定(0とは異なる意思決定)を行った。ただし、図4の右側のグラフと比較すると、網膜ナビゲータと画素ナビゲータは同様に働いた。図4の右手側のグラフは、農村環境とは異なる3つの環境において農村環境とは異なる照明条件で画素ナビゲータ(上部)及び網膜ナビゲータ(下部)によりなされた正しい意思決定の数を例示するヒストグラムを示す。図4に示すように、網膜ナビゲータは、異なる環境内に配置されたとき、農村環境内に配置されたときと類似した数の正しい意思決定を行った。しかしながら、画素ナビゲータは、農村環境内で犯したよりも多くの、かつより大きな間違いを異なる環境内で犯した。それゆえに、上記で図1及び2に関して説明した網膜画像処理は、画像処理なしに装置の性能を大いに改善した。
図5は、例示的な実施形態による網膜ナビゲータ及び画素ナビゲータが様々な照明条件を有する様々な環境内でどれほどうまく働いたかを表すグラフを示す。図5の左端のグラフは、画素ナビゲータ(左の棒)及び網膜ナビゲータ(右の棒)が両ナビゲータが訓練された照明条件を有する農村環境内の障害物コースを上首尾に通り抜けたときの割合を示す。図中に示すように、両ナビゲータは、90%超の割合でコースをうまく通り抜けた。様々な他のグラフは、画素ナビゲータ(左の棒)及び網膜ナビゲータ(右の棒)が、様々な照明条件(すなわち、太陽が位置A~Fにあり、太陽の位置が左から30°、40°、50°、90°(真上)、150°、及び160°であった)の下で、様々な環境(訓練物体のある農村、新規な物体のある農村、郊外、及び行楽地)を上首尾に通り抜けたときの割合を示す。グラフに示すように、画素ナビゲータは、めったにコースの終わりまでうまく通り抜けることができなかった。実際、画素ナビゲータによる最良の性能は、40%をわずかに超える割合であり、それは異なる障害物を有する試験農村環境を使用したときであった。他の環境では、画素ナビゲータは、良くなかった。しかしながら、網膜ナビゲータは、全ての環境で、かつ全ての照明条件で、90%超の割合でコースを上首尾に通り抜けた。
図4に示すグラフと同様に、図6A~6Eのグラフは、網膜ナビゲータ及び画素ナビゲータの様々な照明条件を有する様々な環境を通じた結果のヒストグラムを示す。図6Aは、訓練環境と同じ照明条件を有する農村環境において画素ナビゲータ(上部)及び網膜ナビゲータ(下部)によりなされた正しい意思決定のヒストグラムを示す。図6B~6Eは、様々な照明条件を有する様々な環境において画素ナビゲータ及び網膜ナビゲータによりなされた正しい意思決定のヒストグラムを示す。様々なヒストグラムに示すように、訓練環境とは異なる環境において、画素ナビゲータは、網膜ナビゲータよりも多くの、かつより大きな間違い(非ゼロスコア)を犯した。
要するに、図3A、3B、4、5、及び6A~6Eは、網膜の次元低減(または本出願では、エンコーダ)は、機械学習アルゴリズムがナビゲーションなどの視覚タスクに普遍的に有用であり得る特徴を学習することを可能にし得ることを示す。結果は、1つの訓練セットで学習した特徴は、ナビゲータが、現実世界の環境を含む多くの環境において非常に効果的に空間を巧みに動くことを可能にしたことを示す。
網膜の次元低減またはエンコーダは、機械学習アルゴリズムが、顔認識、人物認識、物体認識、感情/表情認識、経済/地質/天候などのデータにおけるトレンド認識、疾患検出(例えば、MRI画像、CTスキャン画像、病理スライドなどの医用画像を使用しての)、及び動物または人間により上手に行われる他の認識/検出タスクなどの、他のタスクに普遍的に有用であるように思われる特徴を学習することも可能にし得る。明瞭性のために、エンコーダは、最初の次元低減を行い、次いで、1つまたは複数のさらなる次元低減工程が、特徴を引き出すための別個の工程として、または機械学習プロセス内に組み込まれる工程として、のいずれかとして、次いで行われる(エンコードされたデータに対して)。一部の実施形態では、所与の特徴または特徴の組は、エンコードされた画像内の複数の領域から組み立てられ得る。組み立てられた特徴は、特徴シグネチャを生成し得る。上記のように、かつ様々な図にわたって示すように、特徴シグネチャは、顔、物体、感情などを識別することができる。
実施例2-視覚タスク
上記のように、マシンビジョン出願に記載の方法は、機械学習アルゴリズムが視覚世界の特徴を効率的に、かつ一般化された方法で学習することを可能にする。このような方法は、視覚入力の次元数を低減することにより(例えば、網膜エンコードを使用して)、これを達成する。機械学習アルゴリズム(例えば、畳み込みニューラルネットワーク、またはCNN)がパラメータ空間を検索する(例えば、CNN内で重みを見つける)とき、局所的な解決策(例えば、パラメータ空間内の極小値の結果としての)に陥るのではなく一般的な解決策を見出すように、本出願は、1つまたは複数のさらなる次元低減プロセスをエンコードされたデータに適用することに焦点を当てる。
例えば、様々な実施形態では、所与の訓練データセットのための解決策は、変換(または計算もしくはマッピング)をとらえた一組の重みであり得る。次元低減された訓練セットは、アルゴリズムが、複数の問題に一般化される解決策を見つけることを可能にし得る。つまり、訓練されたアルゴリズムは、視覚情報の様々なソースから有用な情報を抽出する(またはタスクを行う)ことができる。アルゴリズムは、単一の試料からの画像セット(例えば、訓練セット)を提示されるとき、及び試料以外の画像セット(例えば、異なる照明条件下での異なる環境からの画像セットなど)を提示されるとき、良好に働き得る。
例えば、仮想ナビゲータの場合、視覚入力は、仮想網膜とも呼ばれるエンコーダを通された。次いで、エンコードされたデータは、7つの領域に分割され、各領域は、CNN内に渡された。次いで、CNNは、各領域内の特徴、平均速度を抽出するように訓練された。各領域の速度は、12個のカテゴリーのうちの1つとして分類された。CNNは、Panda 3D仮想環境から直接確認され得るその出力と真の速度との間の誤差を最小化することにより、速度を判定するように訓練された。この訓練の結果としてCNN内に現れた重みは、一般的であり、全く新しい環境における速度の正確な推定値を有していた(例えば、エンコーダ及びさらなる次元低減工程により同じ方法で次元低減された全く新しい視覚入力)。
一部の場合には、上記の実施例1に記載のように、このような訓練の結果は、仮想訓練環境とは著しく異なる現実世界の環境(例えば、全く異なる物体及び照明条件など)の画像を含む異なる環境に適用されるように一般化され得る。
様々な実施形態では、上記の原理を使用して、マシンビジョンのためのツールを提供してもよい。
一部の実施形態では、エンコーダにより提供される次元低減は、出発点であってもよく、他の次元低減(生物学的発想によるものか、またはそれ以外)がそれと組み合わせられてもよい。
横方向または縦方向の動作、速度、平均発火速度、フリッカレートを含むエンコードされたデータの次元低減は、この方法で使用され得る例である。これらの特徴は、人々、物体、データなどを取り込むために潜在的に貴重である。よって、様々な実施形態では、次元低減方法を使用すること(エンコーダにより未加工画像の第1の次元低減、次いでエンコードされたデータに対するさらなる次元低減により特徴を抽出し、特徴シグネチャを生成する)は、ナビゲーション、人物認識、顔認識、物体認識、感情/表情認識、経済/地質/天候などのデータにおけるトレンド認識、疾患検出(例えば、MRI画像、CTスキャン画像、病理スライドなどの医用画像を使用しての)、ならびに動物または人間により上手に行われる他の認識及び/または/検出及び/または分類タスクなどの、多数の機械視覚タスクが行われることを可能にし得る。
図7は、例示的な実施形態によるビデオ内の人物認識の段階を例示する。一実施形態では、領域またはセクタ速度は、人物認識のためのツールとして使用され得る。例示的な実施形態では、3,500個の歩く人々の訓練ビデオセットを、上記のように仮想網膜(VR)とも呼ばれるエンコーダにより予備処理した。エンコーダの出力をビデオに逆変換し、グリッドに分割し(図7に示すように)、CNN内に入力した。CNNは、上述のように、各グリッド領域について速度推定値を作製した。
図7の速度シグネチャは、速度成分を有するベクトルを含む。図7の例では、人物の身体を48xNの成分を有するベクトルに変換した。48は、グリッド内の領域数であり、Nは、速度が測定されたフレームペアの数であった。様々な実施形態では、他の好適な数のグリッド要素及びペアまたはフレームが使用され得る。
一部の実施形態では、速度シグネチャを使用して個人を認識することができる。図8は、エンコードされたデータ(仮想網膜データ)を使用して、かつ未加工画像データを使用して人物を認識するための、CNNの有効性のヒストグラムを示す。速度シグネチャ間のユークリッド(例えば、二次元)距離を使用すると、ビデオクリップ内の個人を別のクリップ内の同じ個人に正しくマッチングすることが可能である。このようなマッチングは、「人物認識」であり得る。
図8は、11人の異なる人々を含む3,500個のビデオクリップの速度シグネチャを使用した人物認識の例の結果を示す。速度シグネチャは、歩く人々の全身であった。速度シグネチャは、CNNにより評価され、CNNには、速度シグネチャに基づいて人物を識別するタスクが課された。各試験につき、3,500個のクリップの基準クリップを選択し、CNNが、基準クリップの速度シグネチャを他の3,499個のクリップの速度シグネチャと比較した。基準クリップの速度シグネチャに最も似ていた他の3,499個のクリップのうちの速度シグネチャが、CNNにより選択された。次いで、選択されたクリップを基準クリップと比較し、選択されたクリップと基準クリップとが同じ歩行者を含んでいるか判定した。図8は、11人の人々のそれぞれにとって正しいパーセントを示す。各人につき、エンコードされたデータ(仮想網膜により生成されたデータ)を使用する正しいパーセントが、左手の棒として示され、未加工画像データを使用する正しいパーセントが、右手の棒として示される。仮想網膜を使用して、CNNは、基準クリップを約90%の割合で同じ人物を含むクリップに正しくマッチングさせた。しかしながら、図8に示すように、未加工画像データが使用されたとき、CNNは、はるかに低い成功率を有していた。
身体、物体、顔、生き生きしたデータ(天候地図、経済データなど)は、可動部を有し、その運動を活用して時間及び空間の両方における運動を取り込み得る。図7は、歩行者の全身画像を使用する例を示す。図9は、仮想網膜を使用して人物の顔の動作シグネチャを作成する例を示す。グリッドのサイズは、グリッド内の各領域が主に1つの方向への運動を有するように選択され得る。例えば、全身画像(図7中のものなど)については、上腕は1つの方向に動き得、前腕は別の方向などに動き得る。顔画像の場合、眉は1つの方向に動き得、下唇は別の方向などに動き得る。主に単一方向への運動を取り込むグリッドサイズを選択することにより、CNNは、各領域内の速度を容易に取り込み得る。身体部分または顔部分は時間において動くため、動作の方向は、暗黙に速度シグネチャ内に取り込まれる。(例えば、上腕は、他の身体部分に対して特定の方向に動き、これは、ベクトル成分に含まれている)。よって、人物の物理的なあり方に関する多くのことが、このようなシグネチャ内に含まれ得る。構成部分の運動の方向、構成部分の相対運動、及び物理的な、(典型的に)固体の物体に関する、グリッドの1領域から別の領域への時間及び空間における動作の自然な流れ。よって、このようなシグネチャを使用することは、識別に必要とされる情報が、比較的少数のパラメータ(例えば、速度シグネチャを構成するパラメータ)により取り込まれることを可能にする。
様々な実施形態では、このようなアプローチは、いくつかの形態で実装され得る。例えば、様々な領域の速度は、CNNを使用して抽出され得る。他の実施形態では、サポートベクターマシンなどの他の学習ネットワークが使用され得る。さらに他の実施形態では、光学フローアルゴリズムなどの他の固定的な方法(例えば、ファレンバッハアルゴリズム)が使用され得る。様々な実施形態では、グリッド領域の数、グリッド領域のサイズ及び形状、ビデオクリップ内のフレーム数、速度を推定するためのフレーム数、推定された速度の数などの様々なパラメータが改変され得る。速度シグネチャを比較するために使用される指標も、改変され得る。上記で論じた一部の例では、ユークリッド距離が測定された。しかしながら、ユークリッド距離を測定することに対する一部の代替案としては、ディープラーニング分類器、ベイズ分類器、支持ベクトルマシン、ルベーグ空間(Lp)距離、マハラノビス距離などにより決定される距離が挙げられる。
図10は、例示的な実施形態によるマシンビジョン装置1000のブロック図である。代替的な実施形態では、さらなる要素、より少ない要素、または異なる要素が使用され得る。マシンビジョン装置1000は、プロセッサ1005、メモリ1010、送受信器1015、画像取込装置1020、動力源1025、ユーザーインターフェース1030、及び位置デバイス1035を含み得る。
一部の実施形態では、マシンビジョン装置1000は、プロセッサ1005を含み得る。プロセッサ1005は、本明細書に記載の1つまたは複数の作業を遂行し、かつ/または遂行させるように構成され得る。プロセッサ1005は、当業者に公知の命令を実行し得る。命令は、特別目的コンピュータ、論理回路、またはハードウェア回路により遂行され得る。よって、プロセッサ1005は、ハードウェア、ファームウェア、ソフトウェア、またはこれらの方法の任意の組み合わせにおいて実装され得る。「実行」という用語は、アプリケーションを稼働させ、または命令により求められる動作を遂行するプロセスである。命令は、1つまたは複数のプログラミング言語、スクリプト言語、アセンブリ言語などを使用して書かれ得る。プロセッサ1005が命令を実行するとは、その命令により求められる作業を行うことを意味する。プロセッサ1005は、メモリ1010、送受信器1015、画像取込装置1030、動力源1025、ユーザーインターフェース1030などと作動可能に連結して情報を受信、送信、及び処理し、マシンビジョン装置1000の作業を制御する。プロセッサ1005は、読み取り専用メモリ(ROM)装置などの永続的メモリ装置から一組の命令を検索し、その命令を実行可能形式で一般に何らかの形態のランダムアクセスメモリ(RAM)である一時的メモリ装置にコピーし得る。マシンビジョン装置1000は、同じまたは異なる処理技術を使用する複数のプロセッサを含み得る。例示的な実施形態では、命令は、メモリ1010内に記憶され得る。
一部の実施形態では、マシンビジョン装置1000は、メモリ1010を含み得る。メモリ1010は、当業者に公知なように情報がプロセッサ1005によりアクセスされ得る電子保持場所または情報のための記憶装置であり得る。メモリ1010は、磁気記憶装置(例えば、ハードディスク、フロッピーディスク、磁気ストリップなど)、光学ディスク(例えば、コンパクトディスク(CD)、デジタル汎用ディスク(DVD)など)、スマートカード、フラッシュメモリ装置などの、任意の種類のランダムアクセスメモリ(RAM)、任意の種類の読み取り専用メモリ(ROM)、任意の種類のフラッシュメモリなどを含み得るが、これらには限定されない。マシンビジョン装置1000は、同じまたは異なるメモリ媒体技術を使用する1つまたは複数のコンピュータ可読媒体を有し得る。マシンビジョン装置1000は、CD、DVD、フラッシュメモリカードなどのメモリ媒体の装填を支持する1つまたは複数の駆動装置を有し得る。一部の実施形態では、メモリ1010は、ビデオを記憶するために使用され得る。それゆえに、一部の実施形態では、メモリ1010は、画像取込装置1020の代わりにビデオをマシンビジョン装置1000に提供するために使用され得る。
一部の実施形態では、マシンビジョン装置1000は、送受信器1015を含んでもよい。送受信器1015は、情報を受信及び/または送信するように構成することができる。一部の実施形態では、送受信器1015は、イーサネット(登録商標)接続、1つまたは複数のツイストペア線、光ファイバケーブルなどの有線接続を介して情報を通信することができる。一部の実施形態では、送受信器1015は、マイクロ波、赤外線、無線、スペクトル拡散技術、衛星を使用した無線接続を介して情報を通信することができる。送受信器1015は、セルラーネットワーク、ローカルエリアネットワーク、ワイドアーネットワーク、インターネットなどを使用して別の装置と通信するように構成することができる。一部の実施形態では、マシンビジョン装置1000の1つまたは複数の要素が、有線または無線通信を介して通信する。
一部の実施形態では、マシンビジョン装置1000は、画像取込装置1020を含んでもよい。他の実施形態では、画像取込装置1020は、独立した装置であってもよく、マシンビジョン装置1000内に組み込まれていなくてもよい。画像取込装置1020は、現実世界の画像を取り込むように構成されてもよい。一部の実施形態では、画像取込装置1020は、二次元画像を取り込むことができる。他の実施形態では、画像取込装置1020は、三次元画像を取り込むことができる。画像取込装置1020は、静止画カメラ、ビデオカメラなどであってもよい。画像取込装置1020は、カラー画像、白黒画像、フィルタ処理された画像(例えば、セピア色フィルタ、カラーフィルタ、ぼかしフィルタなど)、1つまたは複数のレンズを通じて取り込まれた画像(例えば、拡大レンズ、広角レンズなど)などを取り込むように構成されてもよい。一部の実施形態では、画像取込装置1020(及び/またはプロセッサ1005)は、色、コントラスト、輝度、ホワイトスケール、彩度、シャープネスなどの1つまたは複数の画像設定または画像特徴を改変することができる。
一部の実施形態では、マシンビジョン装置1000は、動力源1025を含んでもよい。動力源1025は、電力をマシンビジョン装置1000の1つまたは複数の要素に提供するように構成されてもよい。一部の実施形態では、動力源1025は、利用可能な線間電圧(例えば、米国では120ボルト、交流60ヘルツ)などの交流電源を含んでもよい。動力源1025は、電力を、1.5ボルト、8ボルト、12ボルト、24ボルトなどの、マシンビジョン装置1000の1つまたは複数の要素により使用可能な動力に変換するための1つまたは複数の変圧器、整流器などを含んでもよい。動力源1025は、1つまたは複数のバッテリーを含んでもよい。
一部の実施形態では、マシンビジョン装置1000は、ユーザーインターフェース1030を含んでもよい。ユーザーインターフェース1030は、ユーザーから情報を受信し、かつ/またはユーザーに情報を提供するように構成されてもよい。ユーザーインターフェース1030は、当技術分野で公知の任意のユーザーインターフェースであってよい。ユーザーインターフェース1030は、当業者に公知な、マシンビジョン装置1000内への入力のためのユーザー入力及び/またはマシン命令を受信するためのインターフェースであってもよい。ユーザーインターフェース1030は、ユーザーなどの外部ソースがマシンビジョン装置1000内に情報を入力することを可能にするために、キーボード、スタイラス及び/またはタッチスクリーン、マウス、トラックボール、キーパッド、マイクロホン、音声認識、動作認識、ディスク駆動装置、遠隔コントローラ、入力ポート、1つまたは複数のボタン、文字盤、ジョイスティックなどを含むがこれらには限定されない様々な入力技術を使用してもよい。ユーザーインターフェース1030は、メニューを誘導し、選択肢を調節し、設定を調節し、表示器を調節するなどのために使用され得る。
ユーザーインターフェース1030は、マシンビジョン装置1000からの情報を外部システム、ユーザー、またはメモリに提示するためのインターフェースを提供するように構成されてもよい。例えば、ユーザーインターフェース1030は、表示器、印刷機、スピーカー、警告/表示灯、ネットワークインターフェース、ディスク駆動装置、コンピュータメモリ装置などのためのインターフェースを含んでもよい。ユーザーインターフェース1030としては、カラー表示器、陰極線管(CRT)、液晶表示器(LCD)、プラズマ液晶表示器、有機発光ダイオード(OLED)表示器などが挙げられる。
一部の実施形態では、位置デバイス1035は、位置、例えばマシンビジョン装置1000の位置を特定するために使用されてもよい。一部の実施形態では、位置デバイス1035は、全地球測位サービス(GPS)装置、ジャイロスコープなどを含んでもよい。例えば、マシンビジョン装置1000は、移動性機械(例えば、ロボット、自動車など)を含み、目的地に到達するための命令を受信してもよい。マシンビジョン装置1000は、位置デバイス1035を使用して、目的地及び/またはマシンビジョン装置1000が現在位置づけられている位置を特定してもよい。マシンビジョン装置1000は、位置デバイス1035を使用して、目的地に誘導してもよい。
上述のように、マシンビジョン装置1000は、スタンドアローンユニットであってもよく、または別のシステム内に組み込まれてもよい。例えば、マシンビジョン装置1000は、コースを誘導する移動性機械と共に使用されてもよい。
上記の例はナビゲーション、顔認識、及び人物認識を扱っているものの、本明細書に記載の技法は、物体認識、感情/表情認識、経済/地質/天候などのデータにおけるトレンド認識、疾患検出(例えば、MRI画像、CTスキャン画像、病理スライドなどの医用画像を使用しての)、及び動物または人間により上手に行われる他の認識/検出タスクを含む、様々な用途のために使用され得ることが理解されるべきである。
本明細書に記載の技法は、任意の種類の画像データを処理するために使用されてもよい。例えば、画像データは、可視光に応答して生成されてもよいが、赤外波長、紫外波長、または電磁スペクトルの他の波長などの他の種類の電磁波により生成されてもよい。一部の実施形態では、画像データは、人工的または仮想の画像データ(例えば、仮想環境のモデルに基づいて生成された)であってもよい。一部の実施形態では、人工的な画像データは、例えば、医用画像データ(磁気共鳴画像データ、コンピュータ断層撮影データ)、地震イメージングデータ、LIDARデータ、金融データなどを含む任意の種類の好適なデータの視覚化に関連してもよい。
様々な実施形態では、画像データは、単一の画像であっても、または複数の画像であってもよい。なお、画像は、静的であってもよく、または空間時間的に変化してもよい。図などの単純な形状が使用されても、または自然情景などの比較的複雑な刺激が使用されてもよい。なお、画像は、グレースケール、カラー、またはグレーとカラーの組み合わせであってもよい。
上述の実施形態の様々な実装は、一連の未加工画像に対応する未加工画像データを受信することと、未加工画像データをエンコーダで処理してエンコードされたデータを生成することであって、エンコーダが、脊椎動物の網膜の1つまたは複数の網膜細胞の入力/出力変換を実質的に模倣する入力/出力変換により特徴付けられる、生成することと、エンコードされたデータに含まれる情報の量を圧縮するように構成された次元低減アルゴリズムを適用することによりエンコードされたデータを処理して次元低減されたエンコードされたデータを生成することと、を含む方法を伴う。エンコードされたデータは、一連の網膜画像を含んでもよい。エンコードされたデータを処理する工程は、一連の網膜画像を処理して、網膜画像に基づく特徴部シグネチャデータを生成することを含んでもよい。特徴部シグネチャデータは、複数の網膜画像領域に関する情報を含んでもよい。特徴部シグネチャデータは、複数の網膜画像領域のそれぞれに対応する動作データを含んでもよい。動作データは、複数の網膜画像領域のそれぞれに対応する速度データを含んでもよい。特徴部シグネチャデータは、複数の網膜画像領域のそれぞれに対応する光学フローデータを含んでもよい。エンコードされたデータを処理する工程は、訓練されたアルゴリズムをエンコードされたデータに適用することを含んでもよい。訓練されたアルゴリズムは、畳み込みニューラルネットワーク(CNN)を含んでもよい。
訓練されたアルゴリズムは、訓練データセットのエンコードされた訓練データで訓練されていてもよく、エンコードされた訓練データは、脊椎動物の網膜の1つまたは複数の網膜細胞の入力/出力変換を実質的に模倣する入力/出力変換により特徴付けられる訓練エンコーダを使用してエンコードされていてもよい。訓練セットのエンコードされた訓練データは、仮想環境のエンコードされた画像を含んでもよく、未加工画像データは、現実環境の未加工画像を含んでもよい。訓練セットのエンコードされた訓練データは、第1の条件セットの下で取得された画像を含んでもよく、未加工画像データは、第1の条件セットとは異なる第2の条件セットの下で取得された未加工画像を含んでもよい。第1の条件セットと第2の条件セットとは、照明条件を含んでもよい。
方法は、マシンビジョンアルゴリズムを次元低減されたエンコードされたデータに適用することをさらに含んでもよい。マシンビジョンアルゴリズムは、物体認識アルゴリズム、画像分類アルゴリズム、顔認識アルゴリズム、光学式文字認識アルゴリズム、内容ベースの画像検索アルゴリズム、姿勢推定アルゴリズム、動作分析アルゴリズム、エゴ動作判定アルゴリズム、運動追跡アルゴリズム、光学フロー判定アルゴリズム、情景再構築アルゴリズム、3D体積認識アルゴリズム、及びナビゲーションアルゴリズムからなるリストから選択する少なくとも1つを含んでもよい。
マシンビジョンアルゴリズムは、エンコーダまたは次元低減アルゴリズムを使用して処理されていない対応する一組の未加工画像に適用されるときよりも、次元低減されたエンコードされたデータに適用されるとき、より良好な性能を呈する。マシンビジョンアルゴリズムは、次元低減アルゴリズムのみを使用して処理された対応する一組の処理された未加工画像に適用されるときよりも、次元低減されたエンコードされたデータに適用されるとき、より良好な性能を呈する。マシンビジョンアルゴリズムは、次元低減アルゴリズムを使用して処理されていない対応する一組のエンコードされた画像に適用されるときよりも、次元低減されたエンコードされたデータに適用されるとき、より良好な性能を呈する。マシンビジョンアルゴリズムは、一連の画像内の人物の検出または識別のためのアルゴリズムを含み、マシンビジョンアルゴリズムは、エンコーダまたは次元低減アルゴリズムを使用して処理されていない対応する一組のデータに適用されるときよりも、人々を含む画像に基づいて次元低減されたエンコードされたデータに適用されるとき、より良好な検出精度または識別精度を呈する。
上記の方法のある実装では、エンコードされたデータに含まれる情報の量は、対応する未加工画像データと比較して少なくとも約二分の一に圧縮されてもよく、次元低減されたエンコードされたデータは、対応するエンコードされたデータと比較して少なくとも約二分の一に圧縮されてもよい。エンコードされたデータに含まれる情報の量は、対応する未加工画像データと比較して少なくとも約五分の一に圧縮されてもよく、次元低減されたエンコードされたデータは、対応するエンコードされたデータと比較して少なくとも約五分の一に圧縮されてもよい。エンコードされたデータに含まれる情報の量は、対応する未加工画像データと比較して少なくとも約十分の一に圧縮されてもよく、次元低減されたエンコードされたデータは、対応するエンコードされたデータと比較して少なくとも約十分の一に圧縮されてもよい。
上記の方法のある実装では、脊椎動物は、鼠及び猿からなるリストから選択される少なくとも1つを含み得る。網膜細胞は、神経節細胞を含んでもよい。網膜細胞は、1つまたは複数の部類の細胞を含んでもよく、該部類の細胞のうちの2つは、ON細胞及びOFF細胞を含んでもよい。エンコーダは、空間時間的に変化する画像を含む自然情景画像を含む入力の範囲にわたって、脊椎動物の網膜の1つまたは複数の網膜細胞の入力/出力変換を実質的に模倣する入力/出力変換により特徴付けられ得る。
別の実装では、装置は、未加工画像データを記憶するように構成された少なくとも1つのメモリ記憶装置と、このメモリに作動可能に連結され、前段のいずれかの方法を実行するようにプログラムされた少なくとも1つのプロセッサと、を含む。装置は、少なくとも1つのプロセッサに作動可能に連結された少なくとも1つのロボット装置であって、未加工画像データを生成するように構成された少なくとも1つの画像センサを含んでもよい、ロボット装置、をさらに含んでもよい。別の実装は、上記の方法のうちのいずれかの工程を実装するためのコンピュータ実行可能な命令を有する非一時的なコンピュータ可読媒体を含む。
本明細書で使用される場合、「光(light)」という用語及び関連する用語(例えば、「光学(optical)」、「視覚(visual)」)は、例えば紫外線及び赤外線を含む可視スペクトル内及び可視スペクトル外の両方の電磁波を含むと理解されるべきである。
様々な本発明の実施形態が本明細書に記載及び例示されているものの、当業者は、本明細書に記載の機能を行うための、ならびに/または本明細書に記載の結果及び/もしくは1つもしくは複数の利点を得るための、様々な他の手段及び/または構造を容易に想到するであろう。そのような変形例及び/または改変のそれぞれは、本明細書に記載の本発明の実施形態の範囲内にあるとみなされる。より一般的に言うと、当業者は、本明細書に記載の全てのパラメータ、寸法、材料、及び構成は、例示的であることを意図すること、ならびに実際のパラメータ、寸法、材料、及び/または構成は、本発明の教示が使用される具体的な応用(複数可)によって決まるであろうことを容易に理解するであろう。当業者は、本明細書に記載の具体的な本発明の実施形態の多数の等価物を認識するであろう、または日常的な実験を超えるものを使用することなしに確認することができるであろう。したがって、上記の実施形態は例としてのみ提示されていること、ならびに添付の請求項及びそれらの等価物の範囲内にあることが理解されるべきである。本発明の実施形態は、具体的に記載され請求されているのとは別様に実施され得る。本開示の本発明の実施形態は、本明細書に記載のそれぞれの個々の特徴、システム、物品、材料、キット、及び/または方法に関する。加えるに、このような特徴、システム、物品、材料、キット、及び/または方法の2つ以上の任意の組み合わせは、このような特徴、システム、物品、材料、キット、及び/または方法が相互に矛盾しない限り、本開示の本発明の範囲内に含まれる。
上記の実施形態は、多数の方法のうちの任意のものにより実施され得る。例えば、実施形態は、ハードウェア、ソフトウェア、またはそれらの組み合わせを使用して実装され得る。ソフトウェアで実装される場合、単一のコンピュータ内に設けられるか、または複数のコンピュータ間で分散されるかにかかわらず、ソフトウェアコードは、任意の好適なプロセッサまたはプロセッサの集合上で実行され得る。
また、コンピュータは、1つまたは複数の入力装置及び出力装置を有してもよい。これらの装置は、とりわけユーザーインターフェースを提示するために使用され得る。ユーザーインターフェースを提供するために使用され得る出力装置の例としては、出力の視覚的提示のための印刷機または表示器スクリーン、及び出力の可聴式提示のためのスピーカーまたは他の音響発生装置が挙げられる。ユーザーインターフェースとして使用され得る入力装置の例としては、キーボード、ならびにマウス、タッチパッド、及びデジタイジングタブレットなどのポインティングデバイスが挙げられる。別の例として、コンピュータは、入力情報を音声認識を通じて、または他の可聴式フォーマットで受信してもよい。
このようなコンピュータは、ローカルエリアネットワーク、もしくはエンタープライズネットワークなどのワイドエリアネットワーク、及びインテリジェントネットワーク(IN)、またはインターネットを含む1つまたは複数のネットワークにより任意の好適な形態に相互接続されてもよい。このようなネットワークは、任意の好適な技術に基づいていてもよく、任意の好適なプロトコルに従って作動してもよく、無線ネットワーク、有線ネットワーク、または光ファイバネットワークを含んでもよい。
本明細書に記載の機能のうちの少なくとも一部分を実装するために用いられるコンピュータは、メモリ、1つまたは複数の処理ユニット(本明細書では単純に「プロセッサ」とも呼ぶ)、1つまたは複数の通信インターフェース、1つまたは複数の表示器ユニット、及び1つまたは複数のユーザー入力装置を備えてもよい。メモリは、任意のコンピュータ可読媒体を含んでもよく、本明細書に記載の様々な機能を実装するためのコンピュータ命令(本明細書では「プロセッサ実行可能な命令」とも呼ぶ)を記憶してもよい。処理ユニット(複数可)は、命令を実行するために使用することができる。通信インターフェース(複数可)は、有線ネットワークもしくは無線ネットワーク、バス、または他の通信手段に連結されてもよく、したがって、コンピュータが他の装置に対する通信を送信し、かつ/または他の装置からの通信を受信することを可能にしてもよい。表示器ユニット(複数可)は、例えば、ユーザーが命令の実行に関連して様々な情報を閲覧することを可能にするように提供されてもよい。ユーザー入力装置(複数可)は、例えば、ユーザーが手動の調節を行い、選択を行い、データまたは様々な他の情報を入力し、かつ/または命令の実行中に様々な様式のうちの任意のものにおいてプロセッサと相互作用することができるように提供されてもよい。
本明細書に概説した様々な方法またはプロセスは、様々なオペレーティングシステムまたはプラットフォームを用いる1つまたは複数のプロセッサ上で実行可能なソフトウェアとしてコード化されてもよい。なお、このようなソフトウェアは、いくつかの好適なプログラミング言語及び/またはスクリプト作成ツールのうちの任意のものを使用して書かれてもよく、実行可能なマシン言語コードまたはフレームワークもしくは仮想マシン上で実行される中間コードとしてコンパイルされてもよい。
この点に関して、様々な本発明の概念は、1つまたは複数のコンピュータまたは他のプロセッサ上で実行されると、上述の本発明の様々な実施形態を実装する方法を行う1つまたは複数のプログラムがエンコーダされたコンピュータ可読記憶媒体(または複数のコンピュータ可読記憶媒体)(例えば、コンピュータメモリ、1つまたは複数のフロッピーディスク、コンパクトディスク、光学ディスク、磁気テープ、フラッシュメモリ、フィールドプログラマブルゲートアレイもしくは他の半導体装置内の回路構成、または他の非一時的媒体もしくは有形なコンピュータ記憶媒体)として具現化されてもよい。コンピュータ可読媒体(複数可)は、上に記憶されたプログラム(複数可)が、上述の本発明の様々な態様を実装するように1つもしくは複数の異なるコンピュータまたは他のプロセッサにロードされ得るように、輸送可能であってもよい。
「プログラム」または「ソフトウェア」という用語は、本明細書では、上述の実施形態の様々な態様を実装するためのコンピュータまたは他のプロセッサをプログラムするために用いることができる任意の種類のコンピュータコードまたは一組のコンピュータ実行可能な命令を指す汎用の意味で使用されている。なお、一態様によれば、実行されるとき本発明の方法を行う1つまたは複数のコンピュータプログラムは、単一のコンピュータまたはプロセッサ上に存在する必要はなく、本発明の様々な態様を実施するようにモジュール形式でいくつかの異なるコンピュータまたはプロセッサ間に分散されていてもよいことが理解されるべきである。
コンピュータ実行可能な命令は、1つもしくは複数のコンピュータまたは他の装置により実行されるプログラムモジュールなどの多数の形式において存在してもよい。一般に、プログラムモジュールは、特定のタスクを行うか、または特定の抽象データタイプを実装するルーチン、プログラム、オブジェクト、コンポーネント、データ構造などを含む。典型的に、プログラムモジュールの機能は、様々な実施形態において所望のように組み合わせまたは分散することができる。
また、データ構造は、任意の好適な形態のコンピュータ可読媒体内に記憶されてもよい。例示の簡単化のために、データ構造は、データ構造内の位置を通じて関係付けられたフィールドを有するように示されてもよい。このような関係は、同様に、フィールドの記憶部にフィールド間の関係を伝達するコンピュータ可読媒体内の位置を割り当てることにより達成されてもよい。しかしながら、データ構造のフィールド内の情報間の関係を確立するために、ポインター、タグ、またはデータ要素間の関係を確立する他の機構の使用を通じて含む、任意の好適な機構が使用されてもよい。
また、様々な本発明の概念は、1つまたは複数の方法として具現化されてもよく、その例が、提供されている。方法の一環として行われる行為は、任意の好適な方法で順序付けられてもよい。それゆえに、例示された順序とは異なる順序で行為が行われる実施形態が構築されてもよく、実施形態は、例示的な実施形態では逐次的行為として示されているものの、一部の行為を同時に行うことを含んでもよい。
本明細書で定義及び使用される場合、全ての定義は、辞書の定義、参照により組み込まれた文書内の定義、及び/または定義される用語の通常の意味に有線するものとして理解されるべきである。
不定冠詞「a」及び「an」は、本明細書において本明細書中及び本請求項中で使用されるとき、明示的な反対の指示がない限り、「少なくとも1つ(at least one)」を意味すると理解されるべきである。
「及び/または(and/or)」という文言は、本明細書において本明細書中及び本請求項中で使用されるとき、そのように結合された要素のうちの「いずれか、または両方(either or both)」、すなわち一部の場合には連結的に存在し、他の場合には選言的に存在する要素を意味するものとして理解されるべきである。「及び/または(and/or)」により列挙された複数の要素は、同じやり方で、すなわち、そのように結合された要素のうちの「1つまたは複数」と解釈されるべきである。「及び/または(and/or)」節により具体的に特定されている要素以外の他の要素が、具体的に特定されている要素に関係があるか無関係であるかにかかわらず、任意追加的に存在してもよい。よって、非限定的な例として、「A及び/またはB(A and/or B)」への言及は、「を備える(comprising)」などのオープンエンドな文言と共に使用されるとき、一実施形態ではAのみに(任意追加的にB以外の要素を含む)、別の実施形態ではBのみに(任意追加的にA以外の要素を含む)、さらに別の実施形態ではAとBの両方に(任意追加的に他の要素を含む)、などと言及し得る。
本明細書において本明細書中及び本請求項中で使用されるとき、「または(or)」は、上記で定義した「及び/または(and/or)」と同じ意味を有すると理解されるべきである。例えば、リスト内の項目を分けるとき、「または(or)」または「及び/または(and/or)」は、包括的であるとして、すなわち、少なくとも1つを含むだけでなく、いくつかの要素または要素のリストのうちの2つ以上ならびに任意追加的にリストに載っていないさらなる項目を含むとして、解釈されるべきである。「ただ1つの(only one of)」もしくは「きっかり1つの(exactly one of)」、または請求項内で使用される場合の「からなる(consisting of)」などの、明示的に反対を指示する用語のみが、いくつかの要素または要素のリストのうちのきっかり1つの要素を含むことを指す。一般に、本明細書中で使用される「または(or)」という用語は、「いずれか(either)」、「1つの(one of)」、「ただ1つの(only one of)」、または「きっかり1つの(exactly one of)」などの排他性の用語が前置されているとき、排他的選択肢(すなわち、「一方または他方、ただし両方ではない」)を表すとしてのみ解釈されるものとする。「から本質的になる(Consisting essentially of)」は、請求項内で使用されるとき、特許法の分野で使用される通常の意味を有するものとする。
本明細書において本明細書中及び本請求項中で使用されるとき、1つまたは複数の要素のリストへの言及における「少なくとも1つ(at least one)」という文言は、要素のリスト内に具体的に列挙された各要素の少なくとも1つを必ずしも含むわけではなく、要素のリスト内の任意の要素の組み合わせを排除しない、要素のリスト内の任意の1つまたは複数の要素から選択された少なくとも1つの要素を意味すると理解されるべきである。この定義は、「少なくとも1つ(at least one)」という文言が言及する要素のリスト内に具体的に特定されている要素以外の要素が、具体的に特定されている要素に関係があるか無関係であるかにかかわらず、任意追加的に存在してもよいことも認める。よって、非限定的な例として、「A及びBの少なくとも1つ(at least one of A and B)」(または等価的に「AまたはBの少なくとも1つ(at least one of A or B)」、または等価的に「A及び/またはBの少なくとも1つ(at least one of A and/or B)」)は、一実施形態では少なくとも1つの、任意追加的に2つ以上の、Aを指し、Bは存在せず(かつ任意追加的にB以外の要素を含む);別の実施形態では少なくとも1つの、任意追加的に2つ以上の、Bを指し、Aは存在せず(かつ任意追加的にA以外の要素を含む);さらに別の実施形態では少なくとも1つの、任意追加的に2つ以上の、Aと、少なくとも1つの、任意追加的に2つ以上の、Bとを指し(かつ任意追加的に他の要素を含む);などを指し得る。
請求項において、ならびに上記の明細書において、「備える(comprising)」、「含む(including)」、「所持する(carrying)」、「有する(having)」、「含有する(containing)」、「伴う(involving)」、「保持する(holding)」、「から構成される(composed of)」などの全ての移行文言は、オープンエンドであるとして、すなわち、含むがそれには限定されないことを意味するとして理解されるべきである。米国特許庁の特許審査便覧第2111.03節に規定されるように、「からなる(consisting of)」及び「から本質的になる(consisting essentially of)」という移行文言のみが、それぞれクローズまたは準クローズな移行文言であるものとする
本明細書における実質的にいずれの複数形及び/または単数形の用語の使用に関しても、当業者は、文脈及び/または用途に適切なように複数形から単数形へ、かつ/または単数形から複数形へ翻訳することができる。様々な単数形/複数形の置換は、本明細書において明瞭性のために明示的に述べられることがある。
一般に、本明細書及びとりわけ添付請求項(例えば、添付請求項の本文)において使用される用語は、一般に「オープン」な用語として意図されている(例えば、「含む(including)」という用語は、「含むがそれには限定されない(including but not limited to)」として解釈されるべきであり、「有する(having)」という用語は、「少なくとも有する(having at least)」として解釈されるべきであり、「含む(includes)」という用語は、「含むがそれには限定されない(includes but is not limited to)」として解釈されるべきであるなど)ことが当業者により理解されるであろう。特定の数の導入された請求項記載項目が意図される場合、そのような意図は、請求項内に明示的に記載されることになり、そのような記載がなければそのような意図は存在しないことが当業者によりさらに理解されるであろう。例えば、理解の助けとして、以下の添付請求項は、請求項記載項目を導入するための「少なくとも1つ(at least one)」及び「1つまたは複数(one or more)」という導入文言の使用を含むことがある。しかしながら、このような文言の使用は、同じ請求項が「1つまたは複数(one or more)」または「少なくとも1つ(at least one)」という導入文言及び「a」または「an」などの不定冠詞を含むときでさえ、不定冠詞「a」または「an」による請求項記載項目の導入が、そのような導入された請求項記載項目を含む任意の特定の請求項を、そのような記載項目を1つのみ含む発明に限定することを含意すると解釈されるべきではない(例えば、「a」及び/または「an」は、典型的に「少なくとも1つ(at least one)」または「1つまたは複数(one or more)」を意味すると解釈されるべきである)。同じことは、請求項記載項目を導入するために使用される定冠詞の使用についても当てはまる。加えるに、たとえ特定の数の導入された請求項記載項目が明示的に記載されている場合でさえ、当業者は、そのような記載が、典型的に少なくとも記載された数を意味すると解釈されるべきであることを認識するであろう(例えば、他の修飾語句のない「2つの記載項目(two recitations)」という最低限の記載は、典型的に少なくとも2つの記載項目または2つ以上の記載項目を意味する)。さらに、「A、B、及びCなどのうちの少なくとも1つ(at least one of A, B, and C, etc.)」に類似の慣習が使用される場合、一般に、このような構文は、当業者が慣習を理解するであろう意味で意図される(例えば、「A、B、及びCのうちの少なくとも1つを有するシステム(a system having at least one of A, B, and C)」は、Aのみ、Bのみ、Cのみ、A及びBを共に、A及びCを共に、B及びCを共に、ならびに/またはA、B、及びCを共に、有するシステムを含むがそれらには限定されないであろうなど)。「A、B、またはCなどのうちの少なくとも1つ(at least one of A, B, and C, etc.)」に類似の慣習が使用される場合、一般に、このような構文は、当業者が慣習を理解するであろう意味で意図される(例えば、「A、B、またはCのうちの少なくとも1つを有するシステム(a system having at least one of A, B, or C)」は、Aのみ、Bのみ、Cのみ、A及びBを共に、A及びCを共に、B及びCを共に、ならびに/またはA、B、及びCを共に、有するシステムを含むがそれらには限定されないであろうなど)。明細書内、請求項内、または図面内のいずれであるかにかかわらず、2つ以上の代替的な用語を提示する事実上いずれの選言的な語及び/または文言も、当該用語のうちの1つ、当該用語のうちのいずれか、または当該用語の両方を含む可能性を企図すると理解されるべきであることが当業者によりさらに理解されるであろう。例えば、「AまたはB(A or B)」という文言は、「A」または「B」または「A及びB(A and B)」の可能性を含むと理解されるであろう。さらに、別段の注記がない限り、「おおよそ(approximate)」、「約(about)」、「前後(around)」などの語の使用は、+/-10パーセントを意味する。
上記の例示的な実施形態の記載は、例示及び説明の目的のために提示されたものである。記載は、網羅的であること、または開示された厳密な形態に限定することを意図せず、改変及び変形は、上記の教示に照らして可能であるか、または開示された実施形態の実施から獲得され得る。本発明の範囲は、本明細書に添付の請求項及びそれらの等価物により画定されることを意図する。

Claims (14)

  1. 方法であって、
    処理装置により、一連の未加工画像に対応する未加工画像データを受信することと、
    前記未加工画像データを前記処理装置のエンコーダにより処理して、エンコードされたデータを生成することであって、前記エンコーダが、脊椎動物の網膜の少なくとも1つの網膜細胞の入力/出力変換を実質的に模倣する入力/出力変換により特徴付けられる、生成することと、
    前記エンコードされたデータに次元低減アルゴリズムを適用することを含む、前記エンコードされたデータに前記プロセッサによる処理をして、次元低減されたエンコードされたデータを生成することであって、ここで、前記次元低減アルゴリズムが、前記エンコードされたデータ内に含まれる情報を圧縮するように構成されており、ここで、前記次元低減アルゴリズムは、前記エンコードされたデータの特徴のサブセットを特定のマシンビジョンタスクのために選択し、前記エンコードされたデータの他の特徴を前記特定のマシンビジョンタスクのために無視するものと、
    前記特定のマシンビジョンタスクのための前記エンコードされたデータの特徴の前記サブセットから特徴部シグネチャデータを生成することであって、前記特徴部シグネチャデータは、横方向の動作の速度を含む速度成分を含み、前記特徴部シグネチャデータは、複数の網膜画像領域のそれぞれの領域に関連する特徴の前記サブセットの値を含む成分を有するベクトルを含み、前記ベクトルはAxNの成分を有し、Aはグリッド内の領域数に対応し、Nは横方向の動作の前記速度を含む前記速度成分が測定されたフレームペアの数に対応するものであることと、を含む、方法。
  2. 前記エンコードされたデータが、一連のエンコードされた網膜画像を含み、前記エンコードされたデータを処理することが、前記一連のエンコードされた網膜画像を処理して、前記エンコードされた網膜画像に基づいて前記特徴部シグネチャデータを生成することを含む、請求項1に記載の方法。
  3. 前記特徴部シグネチャデータが、前記複数の網膜画像領域に関する情報を含む、請求項2に記載の方法。
  4. 前記特徴部シグネチャデータが、前記複数の網膜画像領域のそれぞれに対応する動作データを含む、請求項3に記載の方法。
  5. 前記特徴部シグネチャデータが、前記複数の網膜画像領域のそれぞれに対応する光学フローデータを含む、請求項3に記載の方法。
  6. 前記エンコードされたデータを処理することが、訓練されたアルゴリズムを前記エンコードされたデータに適用することを含み、ここで、前記訓練されたアルゴリズムが、訓練データセットのエンコードされた訓練データで訓練され、前記エンコードされた訓練データが、脊椎動物の網膜の1つまたは複数の網膜細胞の入力/出力変換を実質的に模倣する入力/出力変換により特徴付けられる訓練エンコーダを使用してエンコードされたものである、請求項1に記載の方法。
  7. 前記訓練セットのエンコードされた訓練データが、仮想環境のエンコードされた画像を含み、前記未加工画像データが、現実環境の未加工画像を含む、請求項6に記載の方法。
  8. 前記訓練セットのエンコードされた訓練データが、第1の条件セットの下で取得された画像を含み、前記未加工画像データが、前記第1の条件セットとは異なる第2の条件セットの下で取得された未加工画像を含む、請求項6に記載の方法。
  9. 前記特定のマシンビジョンタスクを実行するためにマシンビジョンアルゴリズムを前記次元低減されたエンコードされたデータに適用することをさらに含む、請求項1に記載の方法。
  10. 前記エンコードされたデータを処理して次元低減されたエンコードされたデータを生成することが、前記未加工画像データを処理してエンコードされたデータを生成することの後に、かつ前記マシンビジョンアルゴリズムを前記次元低減されたエンコードされたデータに適用することの前に行われる、請求項9に記載の方法。
  11. 前記未加工画像データを処理してエンコードされたデータを生成することが、前記未加工画像データと比較して次元が低減されたエンコードされたデータを生成することを含み、前記エンコードされたデータを処理して前記次元低減されたエンコードされたデータを生成することが、前記未加工画像データと比較してすでに次元が低減された前記エンコードされたデータを追加的に圧縮することを含む、請求項1に記載の方法。
  12. 前記エンコードされたデータに含まれる情報の量が、前記対応する未加工画像データと比較して少なくとも約二分の一に圧縮され、前記次元低減されたエンコードされたデータが、前記対応するエンコードされたデータと比較して少なくとも約二分の一に圧縮される、請求項11に記載の方法。
  13. 装置であって、
    未加工画像データを記憶するように構成された少なくとも1つのメモリ記憶装置と、
    前記メモリに作動可能に連結された少なくとも1つのプロセッサであって、
    一連の未加工画像に対応する未加工画像データを受信し、
    脊椎動物の網膜の少なくとも1つの網膜細胞の入力/出力変換を実質的に模倣する入力/出力変換を使用して前記未加工画像データを処理してエンコードされたデータを生成し、
    次元低減アルゴリズムを前記エンコードされたデータに適用することにより前記エンコードされたデータを処理して次元低減されたエンコードされたデータを生成し、前記次元低減アルゴリズムが、前記エンコードされたデータに含まれる情報の量を圧縮するように構成され、ここで、前記次元低減アルゴリズムは、前記エンコードされたデータの特徴のサブセットを特定のマシンビジョンタスクのために選択し、前記エンコードされたデータの他の特徴を前記特定のマシンビジョンタスクのために無視するものであり、
    前記特定のマシンビジョンタスクのための前記エンコードされたデータの特徴の前記サブセットから特徴部シグネチャデータを生成し、前記特徴部シグネチャデータは、横方向の動作の速度を含む速度成分を含み、前記特徴部シグネチャデータは、複数の網膜画像領域のそれぞれの領域に関連する特徴の前記サブセットの値を含む成分を有するベクトルを含み、前記ベクトルはAxNの成分を有し、Aはグリッド内の領域数に対応し、Nは横方向の動作の前記速度を含む前記速度成分が測定されたフレームペアの数に対応するものである、ようにプログラムされた、少なくとも1つのプロセッサと、を備えた装置。
  14. 前記少なくとも1つのプロセッサに作動可能に連結されたロボット装置であって、前記未加工画像データを生成するように構成された少なくとも1つの画像センサを備えた、ロボット装置、をさらに備えた、請求項13に記載の装置。
JP2017554580A 2015-04-20 2016-04-20 次元データ低減を有するマシンビジョン Active JP7016522B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US201562150068P 2015-04-20 2015-04-20
US62/150,068 2015-04-20
PCT/US2016/028406 WO2016172188A1 (en) 2015-04-20 2016-04-20 Machine vision with dimensional data reduction

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2021019858A Division JP2021073627A (ja) 2015-04-20 2021-02-10 次元データ低減を有するマシンビジョン

Publications (3)

Publication Number Publication Date
JP2018514036A JP2018514036A (ja) 2018-05-31
JP2018514036A5 JP2018514036A5 (ja) 2019-05-30
JP7016522B2 true JP7016522B2 (ja) 2022-02-07

Family

ID=57144451

Family Applications (2)

Application Number Title Priority Date Filing Date
JP2017554580A Active JP7016522B2 (ja) 2015-04-20 2016-04-20 次元データ低減を有するマシンビジョン
JP2021019858A Pending JP2021073627A (ja) 2015-04-20 2021-02-10 次元データ低減を有するマシンビジョン

Family Applications After (1)

Application Number Title Priority Date Filing Date
JP2021019858A Pending JP2021073627A (ja) 2015-04-20 2021-02-10 次元データ低減を有するマシンビジョン

Country Status (8)

Country Link
US (2) US10515269B2 (ja)
EP (1) EP3291780A4 (ja)
JP (2) JP7016522B2 (ja)
KR (1) KR102489987B1 (ja)
CN (2) CN107624061B (ja)
HK (1) HK1250003A1 (ja)
IL (1) IL255128B (ja)
WO (1) WO2016172188A1 (ja)

Families Citing this family (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102404791B1 (ko) * 2017-03-30 2022-06-02 삼성전자주식회사 입력 영상에 포함된 객체를 인식하는 디바이스 및 방법
US11080533B2 (en) * 2017-05-01 2021-08-03 Sensormatic Electronics, LLC Surveillance system with human behavior prediction by human action recognition
US11209890B2 (en) * 2017-07-25 2021-12-28 Hewlett-Packard Development Company, L.P. Determining user presence based on sensed distance
US10860034B1 (en) 2017-09-27 2020-12-08 Apple Inc. Barrier detection
EP3725074A1 (en) 2017-12-14 2020-10-21 InterDigital VC Holdings, Inc. Texture-based partitioning decisions for video compression
US10489943B2 (en) 2018-02-28 2019-11-26 General Electric Company System and method for sparse image reconstruction
KR102177655B1 (ko) * 2018-11-14 2020-11-11 이병섭 Mvs 기반의 무인항공기를 갖춘 객체 추적 시스템
CN113382673A (zh) * 2018-12-06 2021-09-10 先进欧氏解决方案有限责任公司 用于使用术后测量值的人工晶状体选择的装置和方法
EP3895058A1 (en) * 2018-12-14 2021-10-20 Xovis AG Method and arrangement for determining a group of persons to be considered
EP3754449A4 (en) * 2018-12-26 2021-09-29 Huawei Technologies Co., Ltd. VEHICLE ORDERING PROCESS, ASSOCIATED DEVICE, AND COMPUTER STORAGE MEDIA
CN110929793A (zh) * 2019-11-27 2020-03-27 谢国宇 用于生态环境监测的时空域模型建模方法及系统
US11687778B2 (en) 2020-01-06 2023-06-27 The Research Foundation For The State University Of New York Fakecatcher: detection of synthetic portrait videos using biological signals
GB202007545D0 (en) * 2020-05-20 2020-07-01 Univ Ulster Improvements in and relating to image classification using retinal ganglion cell modelling
CN112451857A (zh) * 2020-12-10 2021-03-09 深圳先进技术研究院 视网膜神经节细胞激活状态的判别方法、存储介质和设备
US20220398699A1 (en) * 2021-06-14 2022-12-15 Electronics And Telecommunications Research Institute Image processing method and apparatus for machine vision
EP4404570A1 (en) * 2021-09-17 2024-07-24 Samsung Electronics Co., Ltd. Device and method for encoding and decoding image using ai
CN116366852A (zh) * 2021-12-28 2023-06-30 中国电信股份有限公司 面向机器视觉任务的视频编解码方法、装置、设备及介质

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2014524630A (ja) 2011-08-25 2014-09-22 コーネル ユニヴァーシティー 機械視覚のための網膜符号化器
JP5852969B2 (ja) 2010-02-26 2016-02-03 コーネル ユニヴァーシティー 人工網膜

Family Cites Families (97)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5103306A (en) 1990-03-28 1992-04-07 Transitions Research Corporation Digital image compression employing a resolution gradient
JP2809954B2 (ja) 1992-03-25 1998-10-15 三菱電機株式会社 画像感知および処理のための装置および方法
ATE208514T1 (de) 1993-08-26 2001-11-15 Univ California Neuronales netzwerk-topographische sensorische organe und verfahren
US5856152A (en) 1994-10-28 1999-01-05 The Trustees Of The University Of Pennsylvania Hybrid adenovirus-AAV vector and methods of use therefor
US5974159A (en) 1996-03-29 1999-10-26 Sarnoff Corporation Method and apparatus for assessing the visibility of differences between two image sequences
US5836996A (en) 1996-12-30 1998-11-17 Doorish; John F. Artificial retina
DE19707046A1 (de) 1997-02-21 1998-08-27 Rolf Prof Dr Ing Eckmiller Lernfähiger "Active Vision" Implant Encoder
EP0969896B1 (de) 1997-02-21 2006-10-25 Intelligent Aquisition, LLC Lernfähiger sensomotorischer encoder für neuroprothesen
WO1998048027A2 (en) 1997-04-21 1998-10-29 University Of Florida Materials and methods for treatment of retinal diseases
US6458157B1 (en) 1997-08-04 2002-10-01 Suaning Gregg Joergen Retinal stimulator
US6971066B2 (en) 1997-08-18 2005-11-29 National Instruments Corporation System and method for deploying a graphical program on an image acquisition device
AU775245B2 (en) 1998-09-17 2004-07-22 Catholic University Nijmegen Methods for treatment of degenerative retinal diseases
US6165192A (en) 1999-01-05 2000-12-26 Second Sight, Llc Method and apparatus for intraocular retinal tack inserter
EP1864690A3 (en) 1999-03-24 2008-01-02 Second Sight Medical Products, Inc. Logarithmic light intensifier for use with photoreceptorbased implanted retinal prosthetics and those prosthetics
JP5021119B2 (ja) 1999-03-24 2012-09-05 セカンド サイト メディカル プロダクツ インコーポレイテッド 色覚回復用の網膜の人工色補装具
US7186560B2 (en) 1999-09-21 2007-03-06 Rutgers, The State University Of New Jersey High level expression of immunogenic proteins in the plastids of higher plants
US8019428B2 (en) 2000-05-26 2011-09-13 Second Sight Medical Products, Inc. Video processing methods for improving visual acuity and/or perceived image resolution
CA2410512A1 (en) 2000-06-09 2001-12-13 University Of Florida Research Foundation, Inc. Recombinant aav vectors for gene therapy of obesity
US6970745B2 (en) 2000-08-09 2005-11-29 The United States Of America As Represented By The Secretary Of The Navy Microelectronic stimulator array for stimulating nerve tissue
US6647297B2 (en) 2000-08-09 2003-11-11 The United States Of America As Represented By The Secretary Of The Navy Permanent retinal implant device
US7149586B2 (en) 2002-03-28 2006-12-12 Second Sight Medical Products, Inc. Variable pitch electrode array
EP1381276A4 (en) 2001-04-13 2005-02-02 Univ Pennsylvania METHOD FOR TREATMENT OR DEVELOPMENT SLUDGE DEGRADATION
WO2002085452A1 (en) 2001-04-24 2002-10-31 Neurodan A/S Functional electrical therapy system (fets)
EP1383577A2 (en) 2001-05-03 2004-01-28 Universite Catholique De Louvain Vision rehabilitation method and device
US6801655B2 (en) 2001-05-10 2004-10-05 The United States Of America As Represented By The Secretary Of The Navy Spatial image processor
US9143706B2 (en) 2001-06-06 2015-09-22 Andrew Zador Imaging system utilizing spatial image oscillation
US6675164B2 (en) * 2001-06-08 2004-01-06 The Regents Of The University Of California Parallel object-oriented data mining system
US7209788B2 (en) 2001-10-29 2007-04-24 Duke University Closed loop brain machine interface
US20030105409A1 (en) 2001-11-14 2003-06-05 Donoghue John Philip Neurological signal decoding
AU2002346611A1 (en) 2001-12-03 2003-06-17 The Regents Of The University Of California Expression of glial-derived neurotrophic factor for treatment of diseases of the eye
US20060193830A1 (en) 2002-03-20 2006-08-31 Hauswirth William W Raav vector compositions and methods for the treatment of choroidal neovascularization
US7203356B2 (en) * 2002-04-11 2007-04-10 Canesta, Inc. Subject segmentation and tracking using 3D sensing technology for video compression in multimedia applications
AU2003231230A1 (en) 2002-05-01 2003-11-17 University Of Florida Research Foundation, Inc. Improved raav expression systems and methods for enhancing transduction of mammalian neural cells
US20070015238A1 (en) 2002-06-05 2007-01-18 Snyder Richard O Production of pseudotyped recombinant AAV virions
WO2004028635A1 (en) 2002-09-27 2004-04-08 Novartis Ag Ocular gene therapy
KR100506533B1 (ko) 2003-01-11 2005-08-05 삼성전자주식회사 이동로봇 및 그에 따른 자율주행 시스템 및 방법
US7311723B2 (en) 2003-07-11 2007-12-25 University Of Washington Scanning laser device and methods of use
ITMI20031449A1 (it) * 2003-07-15 2005-01-16 St Microelectronics Srl Metodo per classificare una immagine digitale
ATE429949T1 (de) 2004-02-05 2009-05-15 Motorika Ltd Neuromuskuläre stimulation
WO2005080573A1 (en) 2004-02-20 2005-09-01 Universite De Montreal Recombinant viral vectors to promote neuronal cell survival and uses thereof
CN1770177A (zh) * 2004-06-28 2006-05-10 微软公司 编码高密度几何符号集的系统和方法
US7751585B2 (en) 2004-06-28 2010-07-06 Microsoft Corporation System and method for encoding high density geometric symbol set
KR20070037488A (ko) 2004-07-13 2007-04-04 코닌클리케 필립스 일렉트로닉스 엔.브이. 공간 및 snr 화상 압축 방법
US8103352B2 (en) 2004-12-03 2012-01-24 Second Sight Medical Products, Inc. Mimicking neural coding in retinal ganglion cells with short pulse electrical stimulation
US8520944B2 (en) 2004-12-24 2013-08-27 Mario Cimbalista, JR. Method for improving visualization of infrared images
US7643694B2 (en) * 2004-12-31 2010-01-05 Zoran Corporation Method and apparatus for processing a compressed image in an order other than the order in which it was compressed
WO2006089155A2 (en) 2005-02-16 2006-08-24 Second Sight Medical Products, Inc. Fitting of brightness in a visual prosthesis
US9278159B2 (en) 2005-07-22 2016-03-08 The Board Of Trustees Of The Leland Stanford Junior University Light-activated cation channel and uses thereof
US20070050046A1 (en) 2005-07-25 2007-03-01 Georgopoulos Apostolos P Methods for generating a signal indicative of an intended movement
CN101867820B (zh) * 2005-09-20 2013-05-29 三菱电机株式会社 图像解码装置以及图像解码方法
US8956396B1 (en) 2005-10-24 2015-02-17 Lockheed Martin Corporation Eye-tracking visual prosthetic and method
US20070198066A1 (en) 2005-11-03 2007-08-23 Greenberg Robert J Method and apparatus for visual neural stimulation
JP4572175B2 (ja) 2006-04-25 2010-10-27 日本電信電話株式会社 非定常映像検出装置,非定常映像検出方法及びその方法を実装したプログラム
US8298818B2 (en) 2006-04-28 2012-10-30 University Of Florida Research Foundation, Inc. Self-complementary adeno-associated virus having a truncated CMV-chicken β-actin promoter
US8470790B2 (en) 2006-05-04 2013-06-25 Wayne State University Restoration of visual responses by in vivo delivery of rhodopsin nucleic acids
US8197539B2 (en) 2006-05-05 2012-06-12 University Of Southern California Intraocular camera for retinal prostheses
US8311634B2 (en) 2006-06-16 2012-11-13 Second Sight Medical Products Inc. Apparatus and method for electrical stimulation of human retina
GB0612242D0 (en) 2006-06-21 2006-08-02 Imp Innovations Ltd Retinal prosthetic devices
EP1891976A1 (en) 2006-08-23 2008-02-27 Novartis Forschungsstiftung, Zweigniederlassung Friedrich Miescher Institute for Biomedical Research Use of light sensitive genes
CN101523414A (zh) * 2006-09-28 2009-09-02 皇家飞利浦电子股份有限公司 图像的部分的内容检测
CN100481123C (zh) 2007-03-08 2009-04-22 上海交通大学 采用时空滤波器的视网膜编码器实现方法
EP2134415B1 (en) 2007-03-08 2017-05-03 Second Sight Medical Products, Inc. Flexible circuit electrode array
US9799098B2 (en) 2007-04-24 2017-10-24 Massachusetts Institute Of Technology Method and apparatus for image processing
EP1995685A3 (en) 2007-05-21 2012-08-01 Biotronik CRM Patent AG Medical device for monitoring biological signal
US20090105786A1 (en) 2007-10-22 2009-04-23 University Of Washington Method and device for strengthening synaptic connections
US8195302B2 (en) 2007-11-07 2012-06-05 Second Sight Medical Products, Inc. Video processing unit for a visual prosthetic apparatus
US8195303B2 (en) 2007-11-07 2012-06-05 Second Sight Medical Products, Inc. Video processing unit for a visual prosthetic apparatus
WO2009072123A2 (en) 2007-12-06 2009-06-11 Technion Research & Development Foundation Ltd. Method and system for optical stimulation of neurons
US8204325B2 (en) * 2008-01-18 2012-06-19 Sharp Laboratories Of America, Inc. Systems and methods for texture synthesis for video coding with side information
CN100586403C (zh) 2008-03-06 2010-02-03 上海交通大学 视觉假体图像处理装置及方法
US8098938B1 (en) * 2008-03-17 2012-01-17 Google Inc. Systems and methods for descriptor vector computation
EP2262410B1 (en) 2008-04-08 2015-05-27 National University of Singapore Retinal image analysis systems and method
CA2762118A1 (en) 2008-05-20 2010-01-28 Eos Neuroscience, Inc. Vectors for delivery of light-sensitive proteins and methods of use
US20100016732A1 (en) 2008-07-17 2010-01-21 Lockheed Martin Corporation Apparatus and method for neural-signal capture to drive neuroprostheses or control bodily function
EP2320830A4 (en) 2008-08-07 2012-02-01 Massachusetts Inst Technology CODING FOR SEA PROSTHESES
CN101336856B (zh) 2008-08-08 2010-06-02 西安电子科技大学 辅助视觉系统的信息获取与传递方法
CN101393789A (zh) 2008-11-04 2009-03-25 江苏圣安电缆有限公司 交联聚乙烯绝缘电力电缆内气体的排除方法
US8179452B2 (en) * 2008-12-31 2012-05-15 Lg Electronics Inc. Method and apparatus for generating compressed file, and terminal comprising the apparatus
US8108147B1 (en) 2009-02-06 2012-01-31 The United States Of America As Represented By The Secretary Of The Navy Apparatus and method for automatic omni-directional visual motion-based collision avoidance
US8744588B2 (en) 2009-05-07 2014-06-03 Hani Midani Method and system for connecting an impaired nervous system to a muscle or a group of muscles based on template matching and intelligent end points
JP5052569B2 (ja) * 2009-06-25 2012-10-17 シャープ株式会社 画像圧縮装置、画像圧縮方法、画像伸張装置、画像伸張方法、画像形成装置、コンピュータプログラム及び記録媒体
US20110213266A1 (en) 2010-03-01 2011-09-01 Williams Justin C Closed Loop Neural Activity Triggered Rehabilitation Device And Method
US8467623B2 (en) 2010-03-26 2013-06-18 Brain Corporation Invariant pulse latency coding systems and methods systems and methods
US9311593B2 (en) 2010-03-26 2016-04-12 Brain Corporation Apparatus and methods for polychronous encoding and multiplexing in neuronal prosthetic devices
US20110307079A1 (en) 2010-04-29 2011-12-15 Board Of Trustees Of Michigan State University, The Multiscale intra-cortical neural interface system
US8527056B2 (en) 2010-04-30 2013-09-03 Second Sight Medical Products, Inc. Encoding of size and brightness of percepts in a visual prosthesis
US20110293189A1 (en) * 2010-05-28 2011-12-01 Microsoft Corporation Facial Analysis Techniques
BR112013004964A2 (pt) 2010-08-31 2017-05-23 Univ Cornell aparelho protético para recuperar ou melhorar a visão de um indivíduo em necessidade do mesmo
US9302103B1 (en) 2010-09-10 2016-04-05 Cornell University Neurological prosthesis
US20120123293A1 (en) 2010-11-11 2012-05-17 IINN, Inc. Motor nerve root stimulation
CN102393960A (zh) * 2011-06-29 2012-03-28 南京大学 一种图像的局部特征描述方法
WO2013096574A1 (en) 2011-12-20 2013-06-27 The Johns Hopkins University Artifact control and miniaturization of the safe direct current stimulator for neural prostheses
WO2013130946A1 (en) * 2012-03-01 2013-09-06 Sys-Tech Solutions, Inc. Unique identification information from marked features
CZ304893B6 (cs) 2012-06-20 2015-01-07 Miloslav Hering Kolečková brusle
CN102968632A (zh) * 2012-10-15 2013-03-13 北京大学 获取图像的紧凑全局特征描述子的方法及图像检索方法
EP2965288A4 (en) * 2013-03-08 2016-07-27 Intel Corp IMAGE ENCODING TECHNIQUES BASED ON AREA OF INTEREST
US9773155B2 (en) * 2014-10-14 2017-09-26 Microsoft Technology Licensing, Llc Depth from time of flight camera

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5852969B2 (ja) 2010-02-26 2016-02-03 コーネル ユニヴァーシティー 人工網膜
JP2014524630A (ja) 2011-08-25 2014-09-22 コーネル ユニヴァーシティー 機械視覚のための網膜符号化器

Also Published As

Publication number Publication date
KR102489987B1 (ko) 2023-01-17
CN107624061A (zh) 2018-01-23
IL255128B (en) 2022-04-01
IL255128A0 (en) 2017-12-31
CN107624061B (zh) 2021-01-22
US10515269B2 (en) 2019-12-24
CN112842690A (zh) 2021-05-28
JP2021073627A (ja) 2021-05-13
EP3291780A4 (en) 2019-01-23
EP3291780A1 (en) 2018-03-14
CN112842690B (zh) 2023-10-17
WO2016172188A1 (en) 2016-10-27
US20200143138A1 (en) 2020-05-07
US20180089493A1 (en) 2018-03-29
US11430263B2 (en) 2022-08-30
HK1250003A1 (zh) 2018-11-23
KR20170139087A (ko) 2017-12-18
JP2018514036A (ja) 2018-05-31

Similar Documents

Publication Publication Date Title
JP7016522B2 (ja) 次元データ低減を有するマシンビジョン
CN110622169A (zh) 用于视频中的动作识别的神经网络系统
WO2015143173A2 (en) Methods and apparatus for autonomous robotic control
JP2005044330A (ja) 弱仮説生成装置及び方法、学習装置及び方法、検出装置及び方法、表情学習装置及び方法、表情認識装置及び方法、並びにロボット装置
JP2014524630A5 (ja)
Avola et al. 3D hand pose and shape estimation from RGB images for keypoint-based hand gesture recognition
Abed et al. Python-based Raspberry Pi for hand gesture recognition
Sabbaghi et al. Learning of gestures by imitation using a monocular vision system on a humanoid robot
Zhang et al. Ochid-fi: Occlusion-robust hand pose estimation in 3d via rf-vision
Anjaneya et al. MACHINE LEARNING APPROACH TO THE CLASSIFICATION AND IDENTIFICATION OF HAND GESTURE RECOGNITION USING PYTHON
Heinrich et al. Continuous convolutional object tracking in developmental robot scenarios
CN113887373B (zh) 基于城市智慧体育的并行融合网络的姿态识别方法和系统
Gonzales et al. Designing a Lightweight Edge-Guided Convolutional Neural Network for Segmenting Mirrors and Reflective Surfaces
Luís et al. Human activity recognition for indoor robotics: A deep learning based approach using a human detection stage
Wang et al. Research and Design of Human Behavior Recognition Method in Industrial Production Based on Depth Image
Nguyen et al. Classification and temporal localization for human-human interactions
Flynn Machine learning applied to object recognition in robot search and rescue systems
JP6814374B2 (ja) 検出方法、検出プログラム及び検出装置
Bansal et al. Hand Gesture Recognition Using Machine Learning Technique
Rui et al. DLW-YOLO: Improved YOLO for Student Behaviour Recognition
Mazhar Vision-based human gestures recognition for human-robot interaction
Bouzegza et al. OHON4D: optimised histogram of 4D normals for human behaviour recognition in depth sequences
Pulakurthi et al. Enhancing human action recognition with GAN-based data augmentation
Puglisi et al. Increased frame rate for Crowd Counting in Enclosed Spaces using GANs.
Rajasri REAL-TIME OBJECT TRACKING USING ARTIFICIAL INTELLIGENCE

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20190419

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20190419

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20200608

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20200629

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20200928

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20201012

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20210210

C60 Trial request (containing other claim documents, opposition documents)

Free format text: JAPANESE INTERMEDIATE CODE: C60

Effective date: 20210210

A911 Transfer to examiner for re-examination before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20210222

C21 Notice of transfer of a case for reconsideration by examiners before appeal proceedings

Free format text: JAPANESE INTERMEDIATE CODE: C21

Effective date: 20210225

A912 Re-examination (zenchi) completed and case transferred to appeal board

Free format text: JAPANESE INTERMEDIATE CODE: A912

Effective date: 20210312

C211 Notice of termination of reconsideration by examiners before appeal proceedings

Free format text: JAPANESE INTERMEDIATE CODE: C211

Effective date: 20210318

C22 Notice of designation (change) of administrative judge

Free format text: JAPANESE INTERMEDIATE CODE: C22

Effective date: 20211018

C23 Notice of termination of proceedings

Free format text: JAPANESE INTERMEDIATE CODE: C23

Effective date: 20211129

C03 Trial/appeal decision taken

Free format text: JAPANESE INTERMEDIATE CODE: C03

Effective date: 20220104

C30A Notification sent

Free format text: JAPANESE INTERMEDIATE CODE: C3012

Effective date: 20220104

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20220119