0

10x10 グリッドに複数のライトがあり、それぞれの強度を 1 から 10 まで制御できます。これらのライトのターゲットは壁であり、目標は、ユーザーが強度値を定義する壁の画像上のある範囲内で均一な強度を持つことです。制限の 1 つは、指定されたライトの直接隣接する隣接ライトのみが、ライトが直接当たる壁領域のイメージ強度に影響するということです。

これは既知の問題であると思いますが、この問題を解決するための適切な参照が見つかりませんでした。ヒントや手がかりをいただければ幸いです。

4

2 に答える 2

2

結果として得られる強度は、いくつかの隣接するランプの線形結合であると思います。たとえば、I[x,y]=a*L[x,y]+b*(L[x-1,y]+L[x+1,y]+L[x,y-1]+L [x,y-1])+c*(L[x-1,y-1] +...)、ここで a,b,c は係数です。したがって、100 個の未知数変数を持つ 100 個の方程式の線形システムがあります。係数がわかれば解けるかもしれません。

より複雑なモデル - 点広がり関数を使用したランプ強度マトリックスの畳み込み。高度な信号再構成法が必要になる場合があります

于 2012-06-15T20:19:33.193 に答える
0

これは、遺伝的アルゴリズムのアプローチを強く求めています。あまり手間をかけずに、ランプの特性や、壁の照明に必要な機能を考慮してカスタマイズすることができます。

更新: より具体的に言うと、OP が 1 つのランプによる光強度関数に関する情報を既に持っている場合、プログラミングの側面は面倒ですが簡単です。そうでない場合、必要なのはその情報を取得する方法です。これを行う 1 つの方法は、フォトダイオードを入手し、実際のアプリケーションと同じように 1 つのランプをオンにして、中心から周辺までの光強度を測定することです。1 インチ、6 インチ、1 フィートなど、物理的なセットアップに基づいて適切と思われるサンプリング間隔を使用します。その情報を使用して、OP は 1 つのランプに基づく光強度の関数を作成できます。

推奨する特定のフォトダイオードはありませんが、Lego Mindstorms が読み取り値を取得できるため、それほど高価ではありません。ただし、以下のコメントで間違って話しました。実際には、ランプの 10 の強度設定のそれぞれについて 1 つの測定が必要であり、すべてのランプがほぼ同じ性能を持っていることを明示的に想定しています。

そこから、任意の強度の 100 個のランプによって引き起こされる光強度パターンのより大きな関数を数学的に構築できます。この関数に 100 個の数値 (ランプ設定を表す) を差し込んで、結果として得られる光強度の適切な近似値を得ることができます。 . 最後に、遺伝的アルゴリズムを使用して、その関数の入力を最適化し、均一な強度パターンが非常に適合するようにすることができます。

ただし、注意してください。そのステートメントの真の最適は、おそらく「すべてのランプをオフにする」です。

(私よりも写真に自信がある場合は、カメラが機能する可能性があります。ただし、いずれにせよ、ランプ設定の強度パターンに関する詳細な知識がなければ、これは解決できない問題です。)

于 2012-06-15T20:27:11.763 に答える