問題タブ [webots]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
matlab - ニューラルネットワークは関数の学習に失敗する可能性がありますか? パターン認識のためのより良い特徴記述子を選択する方法は?
私は、モバイル ロボットのモデル化、プログラミング、シミュレーションに使用される環境である webots に取り組んでいました。基本的に、私はVGAカメラを搭載した小さなロボットを持っています.小さなレゴ迷路の白い壁にある単純な青色のパターンを探し、それに応じて動きます.
ここで使用した方法は </p>
- ウェボットからパターンの画像を取得し、PC 内の場所に保存します。
- 青いパターンを検出し、パターンの少なくとも 2 つのエッジが正方形の境界の一部であるパターンを囲む正方形を形成します。
7x7 行列にサイズ変更します (最近傍補間アルゴリズムを使用)
ネットワークへの入力は、7x7 の各画像の赤のピクセル強度に他なりません (赤のフィルターを通して青のピクセルを見ると、黒く見えます)。各ピクセルの強度が抽出され、7x7 マトリックスが 1D ベクトル、つまりニューラル ネットワークへの入力である 1x49 に変換されます。(C と webbot を使用してこの情報にアクセスするのは「比較的」難しくないため、この特性を入力として選択しました。 )
このオフライン トレーニング方法には MATLAB を使用し、より遅い学習率 (0.06) を使用してパラメーターの収束を確保し、大小のデータセット (それぞれ 1189 と 346) でテストしました。私が試みた何度も、ネットワークはパターンを分類できませんでした.(パターンは4つのクラスすべてに属していると言います!!!!) matlab の simpleclass_dataset でテストしたところ、プログラムに問題はなく、ほぼ完全に動作します。
データが非常に貧弱なため、ニューラル ネットワークが関数の学習に失敗する可能性はありますか? (貧弱なデータとは、あるクラスの1つのサンプルに対応するデータポイントが、別のクラスまたはその種のものに属する別のサンプルに非常に近いことを意味します)。それとも、機能記述子が非常に貧弱なため、ニューラル ネットワークが失敗する可能性はありますか?
画像から特徴を抽出するためのより簡単な方法を誰かが提案できますか (私は現在、実際のロボットではなく webbot でのシミュレーションのみに関心があるため、MATLAB に移行しています)。どのような機能を選択できますか? パターンは非常にシンプル(L、逆L、その反転バージョンの4パターン)
webots - Webots 6.4.1 Pro で Khepera 差動ホイールの正確な位置を取得するにはどうすればよいですか?
GPSノードを追加することは可能ですか? それが最も簡単な答えのようです。
スーパーバイザの作成もある程度進めましたが、スーパーバイザ コントローラとディファレンシャル ホイール コントローラを同時に実行するにはどうすればよいですか?
その経路を追跡するには、数秒ごとに真の位置を取得する必要があります。
position - ロボット(e-puck)を特定の位置に移動するプログラムを作成する方法は?
私はプログラミングの世界、特にウェボットの初心者です。e-puck ロボットを webbot の特定の位置に移動するためのアイデアやチュートリアルはありますか? 私の場合、e-puck ロボットを開始位置に移動しようとしています。ロボットが壁追従動作の実行を終了すると、開始位置と同じ位置で停止します。問題を解決するためのアイデア/チュートリアルを探していますが、結局行き詰まっています。誰でも私を助けることができますか?
ありがとうございました。
python - C から Python スクリプトを生成するときの graphviz の問題
Python用のgraphvizライブラリを使用しています。
ターミナルからスクリプトを実行するとグラフが作成されますが、posix_spawnを使用してCプログラムからスクリプトを開始すると、エラー メッセージが表示されます。
「ValueError: Program dot not found in path」(「neato」、「dot」、「twopi」、「circo」、「fdp」、「nop」のすべてのオプションを試しました)。
私の Python スクリプトは#!/usr/local/bin/pythonの場所を使用します。私は明示的にこのパスを使用しようとし、同じシーケンスを試しました:
そしてそれは働いた
posix_spawn を使用してスクリプトを呼び出した後、graphviz ライブラリがパスを見つけられなくなった理由がわかりません。
編集:
bash_profile、bash_rc、および etc/paths にドット パスを追加した後、Python スクリプトと C プログラムの両方からパスを印刷しようとすると、/usr/bin:/bin:/usr/sbin:/sbin が表示されますが、echot $ PATH には多くの行があります。
また、Python から PATH を追加しようとしましたsys.path.append('/opt/local/bin/dot')
PS IDE として Webots を使用しています
c - GHCとの連携
私はこの短いチュートリアルに従っています
次のコマンドで GHC (Glasgow Haskell Compiler、バージョン 7.10.1) を使用してWebotsアプリケーション (C で記述)をコンパイルしようとしています。
リンク段階で次のエラーが発生します。
-I path を使用してプログラムで指定されたすべてのインクルードを解析するコンパイルプロセスを通過することができましたが、コンパイラが関数(「シンボル」)を見つけることができないことを意味すると思います
c++ - リバース エンジニアリング OSX ユーザー診断レポートのスタック トレース
C/C++ で記述されたアプリケーションがどこで失敗するかを正確に知りたいです。アプリケーションはプログラムによって起動されるため、gdb / lldbを使用したり、IDEを使用したりして、アプリケーションを直接デバッグすることはできません(webotsロボットシミュレーションソフトウェアのロボットコントローラーです)。OSX コンソールでは、クラッシュの瞬間に strack トレースを示す「ユーザー診断レポート」を見つけることができます。ソース コードのどこでクラッシュが発生したかを正確に特定する必要があるだけですが、次のスタック トレース構文がわかりません。
どうやら+4839
私の関数のどこかで ( )int main() {}
何かが最終的に呼び出されますstrtol_l
(コントローラーコードにこの関数呼び出しが表示されないため、間接的である必要があります)。これにより、クラッシュが発生します。
何の+ 4839
略ですか?それはメモリブロックのオフセットですか?コントローラーのソース コードは最大 1200 行しかなく、コントローラーはデバッグ情報を使用してコンパイルされていないため、ソース コードの行番号にすることはできません。