異常検出による猫の視覚的検出


17

私は趣味のプロジェクトを持っています。これは、これまで限られた機械学習の経験を増やす方法としてコミットすることを考えています。トピックに関するCoursera MOOCを取得して完了しました。私の質問は、プロジェクトの実行可能性に関するものです。

タスクは次のとおりです。

近所の猫は時々私の庭を訪れますが、私の芝生で排泄する傾向があるので嫌いです。猫がいると警告を発する警告システムが欲しいので、スーパーソーカーを使って追い払うことができます。簡単にするために、私は黒と白の色の猫しか気にしないと言ってください。

庭の一部のビデオや写真をキャプチャできるカメラモジュールを備えたラズベリーパイをセットアップしました。

サンプル画像:

サンプルガーデン画像

私の最初のアイデアは、猫または猫のようなオブジェクトを識別する分類器を訓練することでしたが、十分な数の陽性サンプルを取得できないことに気付いた後、異常検出を支持してそれを放棄しました。

1日ごとに写真を撮ると、1日に猫(日光のある約6万枚)を含む写真が5枚になると推定されます。

これは異常検出を使用して実行可能ですか?その場合、どの機能を提案しますか?これまでの私のアイデアは、特定の色を持つピクセルの数を単純に数えることです。何らかの種類のblob検出/画像分割(どのように行うのかわからないため回避したい)を行い、それらに対して同じ色分析を実行します。


1
おそらく、この質問は、私が考えるところでは、クロス検証SEサイトにより適しています。区別が...私にはやや不明確である
フロスト

4
質問はこのサイトに非常に適していると思います。機械学習の実用的なアプリケーションについて説明しているからです。ところで、馬鹿げた質問、なぜ猫の写真がそんなに少ないのですか?彼らはたった5秒間しか来ませんか?
insys 14年

@insys、私の浸漬者に対する警戒についてのうわさは、ネコ科のコミュニティに広まったようです。彼らは以前のように長く残る傾向はありません。私の好みのより洗練された解決策を複雑にしているにもかかわらず、それは私の猫の庭をなくすという実際の目的のない良いことだと思います。
霜14年

2
明らかな次のステップ(猫検出が機能した後)は、ラズベリーパイ制御のスーパーソーカーのようです:-)
Kryten 14年

回答:


8

動き/変化の検出アプローチを使用すると、問題を大幅に簡素化できます。たとえば、各画像/フレームを早い時間(たとえば1分前)の画像/フレームと比較し、早い時間以降に変更されたピクセルのみを考慮することができます。次に、長方形の変化領域を抽出し、それを分類または異常検出の基礎として使用できます。

このタイプのアプローチを採用すると、分類器が大幅に簡素化され、誤った目標率が削減されます。これは、おおよそ猫のサイズではないもの(たとえば、人や鳥)を無視できるためです。その後、抽出された変更領域を使用して、フィルタリングされない分類器(または異常検出器)のトレーニングセットを形成します。

ネコの侵入検知システムにレーザータレットを取り付ける前に、偽の目標率を十分に低くしてください。


1
これは制御された環境にとっては良いアイデアですが、このケースでの適用可能性はわかりません。なぜなら、私たちは、風、季節など。あなたが説明する変化の領域は、いずれにしても画像全体のサイズに近くなると信じています。
insys 14年

@insys-私はあなたの主張を見るが、私は同意しない-私はそれが検出器を変化に対してより弾力的にするだろうと思う。相対フレーム間の時間差は小さくする必要があります(〜秒から1分)。したがって、太陽、季節、天気は無視できるはずです。風が植物を動かすことに同意しますが、サイズ/形状/色が猫とは異なるため、分類ステップではそれらを回避できます。さらに、同じ時間に2つのフレームを使用すると、ピクセル強度を正規化して、さまざまな照明条件(たとえば、晴れた日と曇りの日の猫)をより適切に処理できます。
bogatron 14年

実際、私はあなたのコメントを読んでいるので、あなたの答えについてもっと混乱しています:)おそらく誤解していますが、実際に「抽出された変更領域」を使用してポジティブサンプルを形成する場合、あなたの質問で言及されているように、彼らは猫ですか?それらは何でもかまいません。そのため、分類手順では、検出するように教示されているもの(つまり、あらゆる種類の変更)以外は検出できません。そのため、実際には「変更」検出機能を繰り返しています。
insys 14年

さらに、照明条件は間違いなく心配ですが、私があなたのポイントを正しく言えば、1分間の差で撮られた2つの類似した画像がピクセル強度を正規化するのにどのような効果があるかわかりませんか?
insys 14年

抽出された領域は、ポジティブな例またはネガティブな例を表すことができます。これらは、猫分類器をトレーニングするために使用するものです。強度に関して、分類器が主に日当たりの良い画像から抽出された領域から訓練されたと仮定します。分類器は明るい白い毛皮の猫を簡単に見つけることができますが、曇りの日(白い毛皮がそれほど明るくないとき)や夕暮れ近くではうまく機能しません。2つの画像の正規化を実行すると、その問題を軽減するのに役立ちます(つまり、明るい画像のペアと薄暗い画像のペアが分類子のように表示されます)。
ボガトロン14年

4

これは興味深く、また非常に野心的なプロジェクトです:)

この場合、異常検出(少なくとも従ったコースで説明されている意味で)が非常に適切なアルゴリズムになるかどうかはわかりません。

より実行可能なアプローチは、Photo OCRワークフローが実証されたコースの終わりに議論されたものであると考えます。

このアプローチでは、画像を小さな「ブロック」に分割し、教師あり学習アルゴリズムを使用してそれらを1つずつ調べ、猫を含むかどうかに応じて各ブロックを分類しようとします。1つのブロックに猫が含まれている場合、アラームが鳴ります。おまけとして、あなたは猫の位置も得るので、プロジェクトへの将来のステップとして「自動」応答を組み込むことを考えるかもしれません。

ここでの利点は、あなたの庭に固有のデータセットを使用してアルゴリズムを訓練する必要がないことです(あなたが言及するように作成するのは困難です)が、ネットから取られた猫の画像を使用できます「草の上の猫」など)、およびおそらくあなたの(または他の)庭からの写真のパッチ。したがって、カメラから写真を収集するのに時間を費やす必要はありません。また、ポジティブなサンプル(猫など)が非常に少ない(匹敵する)リスクを回避できます。

今、もちろん、正確な猫検出器を構築するのがいかに簡単かということも別のトピックです。


そして、ブロックがカットを2つ以上のスライスに分割するとどうなりますか?ブロッキング戦略は非常に一般的なアプローチですが、カメラを特定の位置に完全に固定する場合、モーション検出は、私の観点からは、より優れた、時間のかからないアプローチです。
adesantos

@adesantos –あなたの言うことは本当かもしれません。また、移動する部分と移動しない部分を区別する予測には利点があります。しかし、トレーニングに関しては、bogatronによる説明では、どのようなメリットがテーブルにもたらされるかは不明です。全体として、私の意見では、複雑さが増し、デバッグ時間が大幅に長くなります。ウィンドウを移動する利点は、そのシンプルさです。
insys 14年

ところで、あなたが言及した分割に関して、明らかな戦略はウィンドウをオーバーラップさせ、分割位置が分類器に影響を与えないようにすることです。
insys 14年

私の提案(モーション検出)に、猫のテクスチャを使用したSIFTアルゴリズムの使用を追加します。SIFTメソッドは、そのブロックの戦略でも使用できますが、その場合は、必要以上のブロックを比較します。猫は動いていますが、木や茂みはそれほど動きません。
adesantos 14年

3

動き/変化検出の戦略は確かに適切ですが、余分な操作を追加します。変更される可能性が高い領域を検出します。たとえば、はしごは人間(猫)がいる場所、犬、猫、または人間がいる場所のように見えます。

オブジェクトのサイズと軌道でマップをキャプチャし、これにより、特定の速度と軌道で移動するオブジェクト(ピクセル単位の画像内の特定のサイズ)を検出することを目的としたクラスターを作成します。

これを実現するには、Rを使用するか、OpenCVを使用して動きを検出し、さまざまなオブジェクトを追跡することをお勧めします。



1

それは鳥ですか?猫ですか?白黒の猫サイズがあります!カササギ。それは失敗するでしょう。

最初のことは、緑のエリアをすべて除外することです。猫はめったに緑になりません。

次に、残りを参照画像と比較して、石や階段などの静的なものを削除します。

最小サイズのオブジェクトの検出は可能ですが、分類には解像度が低すぎます。あなたの隣人が彼の新しいリモート制御ドローンをテストすることもできます。

2台のカメラを使用すると、オブジェクトの3Dマッピングを行い、飛行オブジェクトを排除できます。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.