読者の皆様へ:ノイズを減らすための一連の機能を開発しました。関心のあるトピックについて電子メールとWeb通知を受け取ることができます。新機能の詳細をご覧ください。
昨年1月、Facebookの研究チームであるFacebook AI Research(FAIR)が物体検出ライブラリであるDetectronをオープンソースとして公開した。このリリースの数週間後に、GoogleのTensorflow Image Recognition APIのアップデートによって追従された。両方のライブラリは、物体検出のための最新のディープラーニングアルゴリズムを実装している。
Detectronは、Apache 2.0ライセンスのもとで利用可能なPythonライブラリとして提供され、Caffe2上に構築されている。DetectronライブラリはGitHubから入手可能で、インストールを容易にするスクリプト、事前訓練されたモデル、Dockerイメージが含まれている。GoogleのTensorflow Image Recognition APIは、2017年6月に初のリリースを迎え、40種類のディープラーニングアルゴリズムの巨大なTensorFlow Researchリポジトリの一部となっている。
両方のライブラリに含まれる事前訓練されたモデルは、COCOデータセット、大規模な物体検出、セグメンテーション、および字幕データセットでトレーニングされている。これには、80個の物体カテゴリ、200,000個以上のラベル付きイメージ、150万個の物体インスタンスが含まれる。
FacebookのDetectronとGoogleのTensorflow Image Recognition APIの両方は主に研究目的であり、まだ商用製品としての準備が整っていない。
物体の検出は依然としてコンピュータビジョンの難しい部分であるが、デジタルカメラの単純な顔検出から画像検索やビデオ監視まで、コンピュータビジョンの多くの分野に応用されている。自走車にとってリアルタイムの歩行者検出は重要であるし、また、人や車を自動でカウントすることは都市計画において重要である。
この問題は、性質のわからない、数が不明な物体を特定する問題とみなせる。対象はサイズが異なり、画像全体に広がっている。十分な速度と高精度を提供するという制約によって、そのタスク固有の難しさが増している。
機械学習の観点では、静止画像からの物体検出は、同時に2つの問題を解決する必要がある。画像の特定の領域が物体であるかどうかを判断し、どの物体であるかを調べる。現在の物体検出モデルは、ニューラルネットワークの特定のアーキテクチャである畳み込みニューラルネットワーク(CNN)上に構築される。CNNは、特徴抽出のために元の画像全体にわたってスライディング長方形ウィンドウを使用する。
物体検出アルゴリズムには2つの主なファミリーがある。R-CNNベースのアルゴリズムは、様々なサイズの複数のスライディングウインドウを使用することによって、すべてのサイズの物体を検出する。物体検出アルゴリズムのYOLO(You Only Look Once)型アルゴリズムは、画像全体に1回だけグリッドを適用し、異なる特徴抽出・決定アーキテクチャを使用する。従来のアルゴリズムでは、検出された物体にボックス境界線を描くことができたが、最近の進化(Mask R-CNNおよびRetinaNet)により物体の端の周りにタイトな境界線を描くことができる。この重要なイノベーションは、インスタンスセグメンテーションと呼ばれ、各ピクセルが推論された物体に属しているかどうかによって分類することに由来する。
TensorFlow Object Detection APIは、独自のモデルを訓練するために使用する方が簡単であると、プレビューで勧められている。そのGitHubリポジトリには、インストール、モデルトレーニング、転移学習のためにJupyter Notebookがいくつか含まれている。Googleの物体検出ライブラリ向けの、他のチュートリアルは現在、オンラインで入手できる。
Rate this Article
- Editor Review
- Chief Editor Action