問題タブ [fisheye]

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.

0 投票する
0 に答える
261 参照

javascript - Leaflet マップの D3 fisheye.js プラグイン

次のように、leaflet.js ライブラリで作成したマップを配置する単純な div マップを作成しました。

次に、d3 フィッシュアイ プラグインを使用して歪みを実装しようとしましたが、結果がありません。このプラグインをリーフレット マップで使用することはできますか? 次のコードを試しましたが、おそらく問題は、呼び出された関数によって返される x、y、z 属性を持つオブジェクトを使用していないことです。

誰かが私を助けることができますか?ありがとう

0 投票する
1 に答える
1129 参照

java - Android アプリケーションを使用して魚眼画像を歪み補正する

私はアンドロイドアプリに取り組んでいます。現在、私のアプリはカメラのビューアーとして使用されています。

カメラ側は魚眼デワープモードを扱います。私のアプリは、デワープ モード ストリームを表示するために使用されます。

現在、魚眼補正モードを実装し、Android のアプリケーション側で処理する方法を探しています。

私はこれに全く慣れていません。知りたい

  1. 魚眼画像を提供できるライブラリ(オープンまたは有料)はありますか。ライブラリは歪み補正ビューモードを提供します。
  2. Android は、魚眼カメラのデワープ (画像を平坦化) するための API を提供していますか?

カメラから魚眼ビューをデワープして表示できる機能を備えたアプリケーションを Android で実装したいと考えています。

これでどんな助けでも素晴らしいでしょう。

0 投票する
5 に答える
18284 参照

c++ - OpenCV の魚眼キャリブレーションにより、結果の画像が大幅にカットされます

OpenCV を使用して、魚眼レンズ付きのカメラを使用して撮影した画像を調整しています。

私が使用している機能は次のとおりです。

  • findChessboardCorners(...);キャリブレーション パターンのコーナーを見つけます。
  • cornerSubPix(...);見つかったコーナーを改良します。
  • fisheye::calibrate(...);カメラ行列と歪み係数を調整します。
  • fisheye::undistortImage(...);キャリブレーションから取得したカメラ情報を使用して画像の歪みを解消します。

結果の画像は見栄えが良いように見えますが (直線など)、私の問題は、関数が画像を切り取りすぎていることです。

90 度の角度で 4 台のカメラを使用しているため、これは実際の問題です。側面の大部分が切り取られている場合、画像をつなぎ合わせるために必要なオーバーラップ領域がありません。

の回転ベクトル出力fisheye::estimateNewCameraMatrixForUndistortRectify(...)は3xN (N はキャリブレーション画像の数) であり、 1x3 または 3x3。Rfisheye::calibratefisheye::estimateNewCameraMatrixForUndistortRectify

以下の画像は、私の歪みのない結果の画像と、私が理想的に望む結果の例を示しています。

無歪み:

私のゆがみ

希望する結果の例:

求める結果の例

0 投票する
0 に答える
344 参照

javascript - 魚眼レンズ効果を階層エッジ バンドリング グラフに追加するにはどうすればよいですか?

Mike Bostock が提供する例に似た階層的なエッジ バンドリング グラフを作成しました (これは jsfiddle でリンクしています)。問題は、グラフが非常に大きいため、表示ウィンドウに完全に表示できず、多数のノードが互いに重なって表示されないことです (約 1500)。ノードが重ならないように実際の円を大きくしましたが、これはグラフの一部しか表示できず、残りを表示するにはスクロールする必要があることを意味します。

最終的に、拡大した円をズームアウトしてページ上で完全に見えるようにしましたが、ノードの名前が明らかに小さすぎて識別できませんでした。したがって、私がやりたいことは、グラフに魚眼レンズ効果を実装して、ユーザーがノードにカーソルを合わせるたびに小さなテキストに拡大効果があり、「虫眼鏡」の下のテキストを読むことができるようにすることです。

これは魚眼レンズの例のコードですが、エッジ バンドリング グラフに追加しても効果はありません。ここで目的の効果を確認できます: http://bost.ocks.org/mike/fisheye/

グラフでこの効果を実現するには、何を変更する必要がありますか?

これは、魚眼効果を実装したい階層バンドリング グラフの例です。

https://jsfiddle.net/6zubznta/1/

0 投票する
1 に答える
2216 参照

c++ - 魚眼画像のキャリブレーションを実行 - 魚眼効果をキャンセル

私は現在、C ++でopencvライブラリを使用しています。私の目標は、画像の魚眼効果をキャンセルすることです(「平面にする」)関数「undistortImage」を使用して効果をキャンセルしていますが、カメラのキャリブレーションを実行する前に必要ですパラメータK、Knew、およびDを見つけるために、ドキュメントを正確に理解していませんでした(リンク:http://docs.opencv.org/master/db/d58/group__calib3d__fisheye.html#gga37375a2741e88052ce346884dfc9c6a0a0899eaa2f96d6eed9927c4b4f4464e05)。私の理解では、ポイントの 2 つのリストを指定する必要があり、関数「調整」は必要な配列を返すことになっています。だから私の質問は次のとおりです。魚眼画像が与えられた場合、結果を得るためにポイントの2つのリストをどのように選択する必要がありますか? これは当面の私のコードで、非常に基本的なもので、写真を撮って表示し、歪みを補正して新しい画像を表示するだけです。行列の要素はランダムであるため、現在、結果は期待どおりではありません。答えてくれてありがとう。