2016-10-28 7 views
2

私のBScの学位論文の一部として、ビデオフィードで画像認識を利用する必要があります。画像認識、始める方法

私はopenCVとTensorflow、特にInception訓練モデルを2つのオプションとして特定しましたが、そこからどのように進んでいくのかわかりません。基本的に私が必要とするのは、 "キー"のような文字列を渡すことです。上位5つの結果のうちの1つが "キー"であれば、ブール値を返します。

ちょうど言及すると、私は両方ともPythonを使用しているので、私はオンラインのpythonコースを行った。また、私はJavaについてかなりの経験を積んでいます。私たちは過去2年間ユニユを使用してきました。

私はではありません。は新しい画像認識システムを完全に作成する必要はありません。カメラを見ていることを教えてください。

また、動画ですが、実際の動画フィードを処理するのは難しいと思います。私が考えたのは、30フレームのうちの1フレーム(30fpsのビデオフィードを想定)を取り出し、その上で画像認識を実行することでした。

ありがとうございます!

+0

画像認識システムのカメラがサイズ、距離、明るさ、動きなどの観点から見たオブジェクトの制約は何ですか? – JohnH

+0

@JohnH私はあなたが求めているものを得ることはできませんが、私はすべき気がします。あなたはどのような状況になるのか、画像認識システムには何が必要なのか尋ねていますか? 編集:最初のケースでは、屋内でよく点灯します。指定されたオブジェクトが見つかるまで、カメラは動き回ります。 – MrUber

+0

あなたのスコープは、どのオブジェクトを表示して識別できるかという点ではかなり広いようです。識別しようとしているオブジェクトのタイプを制限する場合は、作業負荷がより妥当な可能性があります。それが定義されると、その目標に向かって答えを提供することがより簡単になります。 – JohnH

答えて

2

this tutorial、特に「Python APIを使用する」のセクションを読んだら、プロジェクトはかなり単純です。 classify_image.pyによって生成トップNの成果は、コードのこのブロックでは、人間が読めるテキストhereに変換されます:あなたたとえば

top_k = predictions.argsort()[-FLAGS.num_top_predictions:][::-1] 
for node_id in top_k: 
    human_string = node_lookup.id_to_string(node_id) 
    score = predictions[node_id] 
    print('%s (score = %.5f)' % (human_string, score)) 

、あなたは5にFLAGS.num_top_predictionsを設定したいと思い、あなたがトップ5を蓄積したいと思います以下のようなものとしてhuman_string値:「キー」は生産imagenetトップ5弦の一つであり、

return "keys" in top_k_strings 
としてブール値を戻すの場合

top_k_strings = [] 
top_k = predictions.argsort()[-FLAGS.num_top_predictions:][::-1] 
for node_id in top_k: 
    human_string = node_lookup.id_to_string(node_id) 
    top_k_strings.append(human_string) 
    score = predictions[node_id] 
    print('%s (score = %.5f)' % (human_string, score)) 

は最後に、あなたがチェックできます210

また、あなたは彼らにビデオに関してhere

を見つけることができ、人間が読み取り可能なカテゴリの完全なリストに興味があるなら、あなたはおそらく、あなたが追いつくためにビデオシーケンスをサブサンプリングする必要がありますということですねフレームレートで表示します。いくつかの実験とタイミングテストでは、必要なサブサンプリングレートの感触が得られます。

幸運を祈る!

+0

ご清聴ありがとうございました!私はそれを徹底的に調べます! 「人間が読めるカテゴリの完全なリスト」は、モデルが検出するために訓練されたものですか?興味深いことに、「鍵」はそこにはありません:P – MrUber

+0

うん。それは面白い。キー検出器を実際に作成したい場合は、[this](https://www.tensorflow.org/versions/r0.11/how_tos/image_retraining/index.html)の簡単な方法を使用して、開始ネットワークを適合させることができます。しかし、うまくいけば、「鍵」は単なる不幸な選択肢だった。 – RobR

+0

はい、私は、システムの「機能」を、とにかく「find _any_ keys」の代わりに「find _my_ keys」という機能を追加することを考えていました。 – MrUber

関連する問題