DIYラズベリーニューラルネットワークはすべてを見て、いくつか

を楽しいプロジェクトとして認識しています。実装するのが楽しいだけでなく、私がそれを展示したすべての人のための荷物のための荷物を作ることを終えたのですが、ほとんどハッカースペースやそのような集会での人々のために楽しい荷物を作ることになった。はい、Pornographic – Cheeky Hackersに囲まれています。

追加されたメイナが指摘されていることは、インストールされたら、インターネットアクセスは必要ありません。これは最先端のスタンドアロンのオブジェクト認識です。

しかし、それは広範囲にわたる役に立つAIになりますか?ニューラルネットワークがその周りのすべてのオブジェクトを認識できる場合は、人間のようなスキルになりますか?読む。

オブジェクト認識の実行方法

Inception Object Recomentizerの内部
実装は次のとおりです。

ラズベリーPI 3モデルB.

アンプとスピーカー

ピカメラ

瞬間SWTICH.

Piのための携帯電話の充電器のバッテリー

必要なソフトウェアの中心部は、TensorFlowフレームワークを使用して実装されているGoogleのInception Neuralネットワークです。画像認識のためにTensorflowチュートリアルに従ってダウンロードできます。 PythonやTensorflowがわからない場合は、チュートリアルはどんなプログラミングも含まれません。つまり、私がしたようにサンプルコードを変更することがない限り。

Classify_Image.py印刷はパンダを見ました
サンプルコードは、Pandaの写真を含む固定ファイルファイルを取り、オブジェクト認識を行います。それはパンダを見たと印刷することによって結果を与えます。しかし、それは十分な楽しみではありませんでした。

私はいくつかのテキストへの音声ソフトウェアと祭りを見つけたのを捜した。それがパンダを見たいと思うとき、私はLinuxシェルで祭りを運営するためにサンプルコードを修正し、実際に「私はパンダを見た」と話すように話すように言う。

Audio PlayerHTTPS://hackaday.com/wp-content/uploads/2017/06/classify_speak_panda_audio.wav.

00:00
00:00
00:00

しかし、それでも十分に楽しんではありませんでした。私はPicameraをラズベリーPIに接続し、それは写真を撮って、オブジェクト認識を行うためにテンスフローコードにそれを与えました。野外では、それは私の写真に推論を推測しました。

そして最後に、それをすべて本当に簡単にするために私はPIのGPIOピンの1つにモンサムスイッチを接続し、瞬間的なスイッチが押されたときに写真を撮った。

これ以前のPythonプログラムのmain()関数があります…

1
2.
3.
4.
5.
DEFメイン(_):
mays_download_and_extract()
image =(flags.image_fileの場合、flags.image_file他の場合
os.path.join(flags.model_dir、 ‘cropped_pa​​nda.jpg’)))
RUN_INENCER_ON_IMAGE(イメージ)

… 以降。

1
2.
3.
4.
5.
6.
7
8.
9.
10.
11.
12
13.
14.
15
16.
17.
18.
19
20.
二つの
22
23.
24
25.
26.
27 27
DEFメイン(_):
OS.System(" echo%s |祭り–tts"%"私の脳を準備しながら待って…

mays_download_and_extract()
#保存したgraphdefからグラフを作成します。
create_graph()

#スイッチの準備
GPIO.SetMode(gpio.bcm)
GPIO.Setup(17、GPIO.IN)

カメラ= Picamera()

OS.System("エコー%S |祭り–tts"%"私は物事を見る準備ができています。")

真実ですが:
#スイッチのループ
while(gpio.input(17)== gpio.low):
time.SLEEP(0.01)

#ファイルにスナップショットを作成して書きます
image = os.path.join(flags.model_dir、 ‘seeing_eye_image.jpg’)
Camera.Capture(イメージ)

OS.System("エコー%S | Festival –tts"%"私はあなたが私を見せたものについて考えています…")
HUMAN_STRING = RUN_INENCE_ON_IMAGE(イメージ)
OS.System(" echo私は%sを見た。

os.system()への呼び出しは、スピーカーに何かを言うように祭りのテキストへのプログラムを実行する場所です。

moley_download_and_extract()は、GoogleのInception Neuralネットワークがまだ存在していない場合は、インターネットからダウンロードされる場合があります。デフォルトでは、RAMディスク上にある/ tmp / imageNetにダウンロードします。これを初めて、SDカードの/ TMP / ImageNetから/ TMP / ImageNetにコピーし、Inceptionネットワークを見つける場所を含むコマンドラインを使用してプログラムを実行しました。

Inceptionオブジェクト認識機器を実行しています
create_graph()の呼び出しは、run_inference_on_image()関数内から移動されました。 create_graph()ニューラルネットワークを設定します。これは一度だけ行われます。以前はプログラムはワンショットの取引でしたが、今度はループを介してRUN_INENCE_ON_IMAGE()を呼び出すループ中に無制限です。明らかに、ニューラルネットワークを設定することはあなたが一度だけ行うものです(グラフについてはるかに多くの場合、テンソルフローの紹介を参照)。それはループの上に移動する必要がありました。

RUN_INENCE_ON_IMAGE()関数は、オブジェクト認識を行うために画像がニューラルネットワークに与えられる場所です。それはそれがイメージの中にあったものは何でも印刷するために使いましたが、代わりにオブジェクトが考えることを含むテキスト文字列を返しました。だから最後の行はそれが言う場所です「私はコーヒーのマグカップ」をアンプとスピーカーに見ました。

ボクシングすべてのものは私に持ち運び、誰でも試してみることができる小さなスタンドアロンのパッケージを与えました。これがアクションのビデオです。

改善は、ユーザーがビデオカメラが見るものを見ることができるように小さな画面を追加することですが、ピカメラは広範囲の角度を持ち、スクリーンが必要ではないことがわかります。

そのオブジェクト認識はどれほど良いことです

TABACCONISTを見ている開始
それを示すことは携帯電話にそれが携帯電話を見たことがあることがよくありますが、場合によってはiPodです。しかし、これまでのところ、水のボトルとコーヒーマグカップが毎回適切になりました。

しかし、それは人々とうまくいきません。私のオフィスで私にそれを指しているのは、それがそれが「タバコ店、タバココニスト店、Tobacconist」を見たことがあると言っています。おそらく機器や私の直後の部品の棚のためにしかし、空白の壁に立っているのは、それがティーシャツを見たこと、それを取り除き、それを取り除き、それは私の裸の上部胴体と頭だけを見ているにもかかわらず、それは「入浴幹、水泳トランク」と言った。 (私はあなたに写真を惜しませます。)

Imagenetサンプル携帯電話のイメージ

Imagenetサンプルコーヒーマグ画像

ニューラルネットワークは、2012年の大きな視覚認識チャレンジからのバージョンであるImageNetと呼ばれるデータセットで訓練されています。データセットは1000クラスに分かれている画像の膨大なコレクションで構成されています。各クラスは特定のオブジェクトのイメージを含む。あなたが携帯電話クラスからこの小さなサンプルから見ることができるように、いくつかの電話画像は少し日付です。ただし、コーヒーマグカップなどの物は時間とともに変わりません。

しかし、それは楽しんで遊んだ人が遊んだりし、視界を見つけたり、それを想像できるものを見ることができるものを見て振ったりするように、それを見て視界を歩き回って歩き回りませんでした。

それはあなたができる最善のことですか?

まず、最初に、それぞれの認識はRaspberry Pi 3で約10秒で約10秒かかりますので、スピードアップまたはより速いプロセッサ、好ましくはCUDA対応のNVIDIA GPUが使用されているのは、現在サポートされているGPU Tensorflowの唯一のタイプです。

開始ニューラルネットは、訓練されたデータと同じくらい良いものです。携帯電話や人々の認識に関する上で指摘した欠陥は、Imagenetデータセットに関する問題です。たった3.46%の時間はその最善の推測のうち5つすべてが間違っているのに対し、同じテストをしているのに対し、5%の最善の推測は間違っています。悪くない。

私たちの短い記事の中で私たちの短い記事で指摘したように、今日の短期メモリ(LSTM)ニューラルネットワークは、ビデオの前に何が起こったのかを考慮しながら、彼らがビデオの単一のフレームで見ることを調べることができます。たとえば、プリペジングシーンがビーチパーティーの場合は、バスケットボールの代わりにビーチボールを見たのは、はるかに自信を持っています。その開始時に開始されたニューラルネットワークとは異なり、その開始はあなたがそれを続けるためにそれを示す画像だけを持っています。

これはどこで私たちになりますか?

人間のようなスキルを備えた広い有用なAIでのオブジェクト認識を改善しますか?眼の進化は、約541百万年前にカンブリア紀爆発として知られる生活形態の爆発の主な原因として述べられていますが、その原因については多くの議論があります。

しかし、それらの目が進化したとき、それらを使用するための脳のいくつかの形態がありました。その脳はすでにタッチ、振動、香りの感覚を扱いました。そのため、オブジェクト認識の向上だけでは革命を引き起こさないでしょう。人間のようなスキルのために私たちのAIははるかに知能を必要とするでしょう。私たちは現在、私たちが必要とするもののビットとアイデアのみを持っています。

私たちのAIが計画できるように予測をする必要があることです。それは、世界の内部モデル、または理解を深めることができ、それらの予測の基礎として使用することができます。ワイヤーにはんだ付け提案を適用する人間のスキルについては、提案が連絡を取り、次にそれに基づいて計画したときに何が起こるのかを予測するでしょう。提案がワイヤに接触すると、物事が予測されない場合はAIが反応します。

一般的な敵対的ネットワーク(GANS)を持つFacebookからの最近の作品は、そのようなモデルと予測機能を含む現在の出発点でヒントすることができます(あなたがGansに慣れていない場合、私たちは再び私たちの短い記事を私たちの短い記事のニューラルネットワークについての私たちの短い記事を参照します。今日を行います。名前の「生成」部分は、それらが画像を生成することを意味します。しかし、はるかに具体的には、これらは深く回復しているGansです。例えば、彼らは窓、ドア、テレビ、そして彼らが部屋に入る場所について知っています。

ADGLビデオ予測
予測をする方法はどうですか? Facebookからのはるかに多くの作業を含みます。敵対的な勾配差損失予測子(AGDL)を使用して、ビデオの次の2フレームが何であるべきかを予測しています。ビリヤードゲームの写真にあなたは花婿を見ることができますD真実、すなわち本当に起こったこと、そしてAGDLネットワークが予測されたもの。 それは将来的にはそれほど遠くないが、それは始まりです。

これらは、ナイーブオブジェクト認識装置から人間のようなスキルを持つ1つまでの経路上の少なくとも小さいステップである。

最後に

開始ニューラルネットワークが以前にオブジェクトを認識しているのを見たことがありますか? 私たちは彼のガレージ/ワークショップのオブジェクトを認識するためにRC車の上でそれを使って覆った。

これは、皆がそのように使うのを楽しく、他の用途を考えてもらえますか? あなたはどのような役立つアプリケーションを考えることができますか? 何を追加することができますか? 以下のコメントでお知らせください。

Leave a Reply

Your email address will not be published. Required fields are marked *

Related Post

パラネジションボード将来的に長い時間まで隠されたままにする理由のための簡単な方法

は、最近、いくつかのPCBをパネル化する必要がありました。パネル化は、あなたがすでに持っているPCBスタイルを撮ることの芸術であり、彼らがKICADボードのファイル、イーグルボードファイル、またはただのGerbersであろうと、それらを素晴らしい家に送ることができるPCBの単一のコレクションに変えることです。 今これはパネルレースです それが何を意味するのか疑問に思っているのであれば、Osh Park、Seeead、Itead、またはilthy PCBから得た最後のボードを見てください。あなたのボードの周囲の周りに、あなたはいくつかの大まかなスポットを発見します。これらは「マウスの咬傷」、そしてタブ、ボードが一緒に張られている場所、製造業者に送られた巨大な長方形のパネルを入力する場所です。あなたはオシャスパークからの[Laen]とのこの優れたインタビューを調べて、これがどのように機能するのかという概念を得ることができますが、基本的なプロセスは多くのガーバーを取り、タブとマウスの咬傷を追加することです、ナップザック問題を解決することです。完成したパネルをボードハウスに送ってください。 パネル化ボードは私たちのほとんどがしばしばやらなければならないことです。本当に、あなたが何かを生産するときにのみボードのパネルを望むだけです。小規模生産やプロトタイプの場合、裸板は大丈夫です。パネル化ボードがOsh Parkでいくつかのガーバーを投げることよりもはるかに少ない典型的ではないという真実のおかげで、あまり(良い)チュートリアル、さらにはそれをするための(良い)ツールがあります。これは、オープンソースツールを迅速に利用するだけでなく、ボードのパネリング方法も迅速にパネリングされる方法です。 欲しいもの パネルのDef Con 24バッジ パネル化ボード、または1つのGerberファイルにボードの複数のコピーを入れることは、何も新しいものではありません。私たちはそれがulpスクリプトを使ってイーグルで実行されました、そして私たちはそれがいくつかのPythonを使ってキシャッドで実行されました。 [Dave Jones] Altiumのパネル化チュートリアルを行いました。これらすべてが彼らのダウンサイドを持っています。パネルに複数のボードスタイルを置くことは、通常のツールとチュートリアルでカバーされていません。パネル化ボードのほとんどの技術は、長方形のボードでのみ機能します。 Altiumは何でもしますが、Altiumは高価です。 私の要求は、複数の奇妙な板を取るための技術であり、それを長方形のパネルに置くための技術です。要件これの例? DEF CON 24バッジを右に点検します。これは、自動組立のための長方形のパネルに形作るように設計された奇妙な形の板です。 V溝の代わりに、ボードはパネルから除外され、マウスの咬傷、またはガラス繊維の小さなタブ、ならびに穴の小さなタブで除外されます。この方法の非常に賢い実装は、パッドや各プライベートボードをプログラミングするためのパネル上のトレースを可能にします。 これをイーグルでも、Kicad、低スケールPCBスタイルのための最も著名なツール、製造もで​​きますか?はい、しかしそれは難しいです。 Altiumは簡単に行いますが、それは本当に数十のカウントレスボードを生産している人々のためのツールです。今日まで、私はただ1つのツールを検出しただけで、ボード上のいくつかのGerberデータを減らすこととそれらをマージすることができます。 ガーバーパラメーター 私がルーティングとマウスの咬傷を持つ複数のボードスタイルをパラネリングするために私が発見した最高級のツールは[Stijn Kuipers]から来ています。彼のPCBパラマイザー(Githubで入手可能)は、私がすでにデザインしたGerbersと迅速に製造可能なパネルに変えることを発見した最善のことです。この素晴らしいツールを発見する前に、私はGerbersのパネル化方法を正確に把握しようとしている1日に過ごしました。このツールを発見した後、私は約20分で必要なパネルを作成することができました。 Gerber PaLerizerは素晴らしいツールであり、私はこの公開の残りの出版物をInsに捧げ、この簡単な方法とPCBのパネルを製造する簡単な方法を捧げます。 Gerber PaLerizerを使う

iPhone 4Sの無名の脱獄と来週リリースされるiPad 2

iOS地区は、クリスマスの2日後に遅ればせながら、iOS 5.0.1を実行しているすべてのA4ガジェットの無関係な脱獄がリリースされました。脱獄のリリースは、ほぼ2か月の困難な作業を表しており、POD2Gによる調査研究は、iPhone開発者と慢性開発チームからの効果的かつSwiftの仕事に従ったことを表しており、公共の消費のために脱獄を束ねました。 A4脱獄の余波で、POD2Gは、「Corona」と呼ばれたものの背後にある詳細を説明する非常によく書かれた有益なブログパブリッシュをリリースしました。パブリッシュについて詳しく説明したい(リンクをフォローし、チェックアウトした)ことなく、署名されていないバイナリや開発中に出会った他の問題を実行しようとする際に発生した問題をカバーします。 POD2Gと同様に、POD2Gは、彼の指が再び、彼がA5脱獄の進歩について開発を行ったことを発表した彼の多くの最近のツイートで再び話をさせ、脱獄のリリースを見ることを期待しています。週。それは理想的な子供たち、あなたのゴージャスなiPhone 4S、そしてiPad 2がすぐに無料で設定され、CydiaとJailbreak Neighborhoodが提供しなければならないすべての脱獄の良さに喜びを感じるかもしれません。 明らかに、これは方法ではありません。これは、単に状況と予備時間の推定に関する更新です。残りのプロセスが計画に進む限り、テストは実り多いことを証明している限り、理想的には、リリースを遅らせるショーの停止問題を見るべきではありません。ただし、予期せぬ問題が発生した場合、昇進チーム間のパートナーシップに、問題を迅速に取り除くことができると確信しています。 慢性開発チームメンバーのP0sixninjaからのツイート4日前に、脱獄者に、ガジェットをiOS 5.0.1にアップグレードしなければならないという真実に情報を提供しました。アプリケーションのロックを解除します。 あなたがiOS 5.0.1のA5の無関係な脱獄を待っている多くの人の1人である場合、シートベルトをバックルし、7日間の更新と更新の準備をします。理想的には喜んで終わります。 iOS 5の微調整を作成しているデザイナーとSiriは、脱却するガジェットの新しいバッチを見込み客のリストに歓迎する準備ができていると確信しています。 IOS 5.0.1 Untethered(A4 Devices)を侵入するには、Redsn0Wを利用するためにiPhone、iPad、iPod Touchを脱獄するために、ここで公開された合計ステップバイステップの指示に準拠しています。 Twitterで私たちに準拠したり、Google+のサークルに私たちを追加したり、Facebookページのように私たちを追加して、Microsoft、Google、Apple、Webからのすべての最新情報を最新の状態に保つことができます。

SAMFIRM – 現在のSamsungファームウェアのほとんどを直接ダウンロード

Samfirmは、Samsungサーバーから現在のSamsungファームウェアを直接ダウンロードするツールです。このチュートリアルでは、CSCまたは製品コードに従って、現在のSamfirmを使用して地域または国のOdinファームウェアバイナリをダウンロードする方法について説明します。 Samfirm Samsungファームウェアのダウンロードツール(v0.3.6.zip)を下からダウンロードしてください。 多くのユーザー、特に若者は、デバイス設定の下で見つかったオプションをいじくり回して、さまざまなアプリ、MOD、パッチ、ROM、およびエクスプロイトを試して、携帯電話で遊ぶことを好みます。携帯電話でそのようなことをすることは、最近では多くのスマートフォンユーザーにとってお気に入りの娯楽になりました。さまざまなMODやROMを試してみるなどのアクティビティが混乱を引き起こすことが多いことを考慮すると、携帯電話で株式ファームウェアをフラッシュして復元し、使用可能にする必要がある場合があります。 一方、多くの人は、電話をかけて使用するだけで、そのようなことに興味がないか時間がないため、危険にさらされる可能性のある活動に関与することなく、それを使用するだけです。ただし、危険なものを遠ざけているにもかかわらず、公式のファームウェアをインストールすると、携帯電話の唯一の救命オプションのままです。 デバイスが不正行為を開始したか、ブートループに巻き込まれたかどうかにかかわらず、簡単に復元してそのような問題を修正することができます。一部のメーカーがデバイス用のストックファームウェアを入手するのは非常に簡単ではありませんが、Samsung Galaxyデバイス用の公式ROMを取得するのは常に簡単です。ファームウェアのダウンロードリンクを提供するサイトはたくさんありますが、そこからファームウェアをダウンロードすることは、特に非常に高速で安定したデータ接続がない場合は、仕事の地獄になるかもしれません。さらに、そのようなサイトは履歴書のダウンロード機能をサポートしていません。 必須読​​み取り:Samsung Galaxyデバイスの最高の暗いテーマ 成功せずに1日中1/2GBのファームウェアをダウンロードしようとしてイライラしていると感じている場合、仕事を本当に簡単なものにするために非常に便利なユーティリティが利用できるようになりました。 ツールの名前はSAMFIRMであり、XDAメンバーZXZ0O0によって開発されました。実際、それは古いツールですが、私たちはほんの数週間前であることを知っています。 SamfirmはWindows PCのみで動作しますが、今日、ツールを使用してSamsung Galaxyの電話またはタブレットのファームウェアをダウンロードする方法を説明します。 現在のSamsungファームウェアのほとんどをダウンロードしてください Samsung Galaxyスマートフォンまたはタブレットに適したファームウェアをダウンロードしてください。適切なファームウェアは、デバイスモデルと購入した国/地域に一致するファームウェアと使用していることに注意してください。これを行うには、デバイス>モデル番号について> [設定]> [モデル番号]に移動して、メモしてデバイスモデルを確認してください。次に、デバイスのCSCコードを見つける必要があります。 CSCコードは、リージョンおよびキャリア/ネットワークオペレーター固有です。 携帯電話がSIMロックまたはキャリアブランドの場合、CSCマッチに関係なく、デバイスモデルに一致するブランドのないファームウェアをインストールできます。ただし、Galaxyデバイスがキャリアブランドの場合、デバイスのCSCに一致するファームウェアをインストールするか、レンガを作成する必要があります。 Samfirmツールをダウンロードします 以下に示すSAMFIRMツールのすべてのバージョン(最古から最新のものまで)があります。 Samfirm V0.3.6または0.3.7をダウンロードすることをお勧めします。 samfirm_v0.3.1.zip samfirm_v0.3.2.zip samfirm_v0.3.3.zip samfirm_v0.3.4.zip samfirm_v0.3.5.zip