問題タブ [affinetransform]

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 投票する
4 に答える
34930 参照

java - Javaで画像を回転させる

画像を回転させようとしています。をJInternalFrame含む がありJLabelます。ラベルには画像が含まれています。画像を回転させた後、内部フレームのサイズを変更する必要があります。私が現在持っているコードは画像を回転させますが、画像の端に黒があり、中心がずれています。これを修正する方法について何か提案はありますか?

0 投票する
2 に答える
750 参照

java - 形状を移動する Java awt/swing AffineTransformation

円をアニメーション化するプログラムは、一度に数百が描画されると滑らかに描画されません。アフィン変換を使用して形状をコピーすることが提案されました。このコードは、graphics2D を使用するようにリファクタリングされていますが、機能しますが、まだ何百もの楕円を埋めているため、パフォーマンスが向上することはありません。アフィン変換を適切に使用して形状を一度塗りつぶしてからコピー/移動する方法は?

}

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

java - JComponent JPanelズーム、パン、座標に関する質問

JPanelユーザーがズームおよびパンできるベクター画像を使用しています。この画像をオーバーレイするのは(透明)JComponentで、ユーザーが下にある画像に注釈を付けることができます。これはフルスケールでうまく機能しますが、を使用してズームインするとAffineTransform、オーバーレイ座標も影響を受けます。したがって、ユーザーが画像にボックスを描画すると、ボックスも拡大縮小されます。

この振る舞いを切り離す方法について何か提案はありますか?のJComponent影響を受けないように?JPanelAffineTransform

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

gtk - gtk のアフィン変換

gtk フレームワークを使用してアフィン変換操作を行う必要があります。

私はカイロを見つけましたが、それは私の要件を解決しません. 変換オブジェクトを作成し、次のような操作を行う必要があります。

  1. [tranform1 translateXBy:2.5 yBy:3.8];
  2. [transform1 rotateByDegrees:23.0];
  3. [transform1 appendTransform:transform2];

ここで、transform1、transform2 は AffineTransformation のオブジェクトです。

よろしく、iSight

0 投票する
4 に答える
21335 参照

ios - UIImageに変換せずにIOS 4でCVImageBufferイメージを直接回転させる方法は?

私は、iPhone で OpenCV 2.2 を使用して顔を検出しています。次のコードに示すように、IOS 4 の AVCaptureSession を使用してカメラ ストリームにアクセスしています。

私の課題は、ビデオ フレームが CVBufferRef (CVImageBuffer へのポインター) オブジェクトとして取り込まれ、幅 480 ピクセル、高さ 300 ピクセルの横向きになることです。電話を横向きに持っている場合はこれで問題ありませんが、電話を直立させた場合は、これらのフレームを時計回りに 90 度回転させて、OpenCV が顔を正しく検出できるようにします。

この人が行っているように、CVBufferRefをCGImageに変換し、次に UIImage に変換し、回転させることができます。ビデオ フレームから取得した CGImage を回転させる

ただし、これは多くの CPU を浪費します。入ってくる画像をより高速に回転する方法を探しています。可能であれば GPU を使用してこの処理を行うのが理想的です。

何か案は?

イアン

コードサンプル:

0 投票する
2 に答える
10042 参照

java - AffineTransform で回転し、元の座標系を維持する方法は?

私は Java Swing で形状を回転および平行移動するコマンド パターンです。平行移動と回転は別々にうまく機能しますが、60 度を実行すると、回転、次に平行移動、平行移動は新しい回転座標に従います。つまり、マウスをドラッグすると、マウスの移動ベクトルから 60 度のギャップで形状が移動します。簡単な解決策はありますか? 助けてください、私はここで壁にぶつかっています

ローテーションの実行方法

翻訳のための私の実行方法

どんな助けでも本当に感謝できます

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

c# - Emgu (OpenCV) による変換 - アフィン/パースペクティブ?

私は現在、EMGUを使用して変換を実装しようとしていますが、それがどのように機能するかについて頭を悩ませているようには見えません(オンラインの例はないようです)。

変換元 (および変換先) の 4 つのポイントを含むイメージを取得しましたが、他にどの変数が必要かはわかりませんが、「mapMat」を要求しますか?

これが私がこれまでに持っているものです:

ただし、これは機能しません。また、アフィン変換が最も理想的なソリューションであるかどうかもわかりませんでした。FindHomography とパースペクティブ変換についても読みましたが、ここで適用されるかどうかはわかりません。

私が達成したいターゲット変換は次のようなものです:

http://img832.imageshack.us/img832/5157/targettransform.png

どんな助けでも大歓迎です、

ありがとう

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

java - Java-サブピクセルラインの精度にはAffineTransformが必要ですか?

私はこれまでJavaの描画方法を使用したことがないので、PoCとしてアナログ時計を作成することにしました。手に加えて、分/時間の目盛りが付いた文字盤を描きます。単純なsin/cos計算を使用して、円の周りの線の位置を決定します。

しかし、細かい目盛りが非常に短いため、線の角度が間違っていることに気づきました。これは、Graphics2D.drawLine()Line2D.double()メソッドの両方がサブピクセルの精度で描画できないためだと確信しています。

中心から始まり、円でマスクして(より長く、より正確な線を作成するために)線を引くことができることは知っていますが、それはそのようなエレガントでコストのかかる解決策のようです。私はこれを行う方法についていくつかの調査を行いましたが、私が遭遇した最良の答えはを使用することAffineTransformです。AffineTransformスーパーサンプリングを実行する必要があるのではなく、回転ありのみを使用できると思います。

これは、サブピクセル精度で描画する唯一の/最良の方法ですか?または、潜在的に高速なソリューションはありますか?

編集:私はすでにオブジェクトにを設定しRenderingHintていGraphics2Dます。

要求に応じて、ここにコードの一部を示します(これは単なるPoCであったため、完全には最適化されていません)。

これが図面のスクリーンショットです。少し見づらいかもしれませんが、59分間目盛りを見てください。それは完全に垂直です。

サンプル画像

0 投票する
3 に答える
3194 参照

java - ストロークを変換せずにAffineTransform?

scale()2つの異なるパラメーター(x方向とy方向の異なる比率によるスケーリング)でGraphics2D関数を使用すると、このGraphics2Dオブジェクトに後で描画されるすべてのものもスケーリングされます。これには、ある方向に描かれた線が別の方向に描かれた線よりも太いという奇妙な効果があります。次のプログラムはこの効果を生み出し、このウィンドウを表示します。

スクリーンショットの例

この座標変換を使用して、アプリケーションモデルの座標(この例では(2,1、2,4))を画面(またはコンポーネント)のピクセル座標に手動で変換する必要がないようにしていますが、このストロークの歪みは必要ありません。つまり、現在のxスケールとyスケールの係数に関係なく、すべての線を同じ幅にしたいのです。

この効果を生み出すものはわかっていますが(Strokeオブジェクトは、ユーザー座標でペイントされる長方形のストローク形状を作成し、それが画面座標に変換されます)、これを解決する方法がわかりません。

  • X方向とY方向でシェイプを異なるストロークにする(これにより、ここで歪みを元に戻す)新しいストローク実装を作成する必要がありますか?(または、誰かがそのような実装をすでに知っていますか?)
  • 図形を画面座標に変換して、そこでストロークする必要がありますか?
  • 他の(より良い)アイデアはありますか?
0 投票する
1 に答える
3106 参照

raphael - Raphael.js でマトリックスを変換する

Raphael で作成した楕円に 2D アフィン変換行列を適用しようとしています。基礎となる SVG がこれをサポートできることは理解していますが、Raphael はこれにアクセスする方法を提供していますか?

私は変換行列を自分で解析し、回転、スケーリング、および翻訳を手動で実行し、Raphael に適用しようとしましたが、うまくいかないようで、もっと良い方法があるに違いないと思いましたか?

どうもありがとう、ウィル。