問題タブ [depth]

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

xml - XPath: 方法: 現在のコンテキストの指定された属性名を持つすべての子と孫を (深さに関係なく) 選択しますか?

xml:

深さは不明。xlink:href 属性を持つすべての要素を選択するにはどうすればよいですか?

私は次のことを試しました:

任意のガイダンスをいただければ幸いです。

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

matlab - Kinect深度画像をMatlabに保存しますか?

Kinectを使用することで、各深度画像のピクセルがカメラとオブジェクトの間の距離(ミリメートル単位)を格納した深度画像を取得できます。後で使用できるように保存したいと思います。最高の推奨事項は何ですか?

深度画像を画像(jpg / pngなど)として保存することを考えています。ただし、値は通常50mmから10000mmですが、通常の画像要素は0から255まで保存できます。次に、データを0〜255の範囲にスケーリングする必要があります。これにより、データが何らかの形で悪用される可能性があります。

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

opengl - GPU のテクスチャに深度バッファをコピーする方法は?

現在の深度バッファをテクスチャに取得して、シェーダでアクセスしたいと考えています。さまざまな理由から、別の深度パスを実行することはできませんが、既にレンダリングされた深度をコピーする必要があります。

glReadPixelsCPU が関与し、パフォーマンスが低下する可能性があります。私の知る限り、glBlitFramebuffer深さから色へのブリットはできず、深さから深さへのブリットのみです。

GPUでこれを行う方法は?

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

c++ - DirectXZバッファが正しく機能しない

私の問題は、DirectX 9の深度テストに集中しています。ゲーム内の静的なポイントで1つのオブジェクトをレンダリングし、DirectInputからの入力に基づいて変更できるポイントで別のオブジェクトをレンダリングしようとしています。オブジェクトの1つは、ほぼ500ユニット離れて描画されます。最初にシーンを描画すると、2つのオブジェクトは正しくレンダリングされますが、2番目のオブジェクトの位置が変わると(カメラも移動して)、深度テストが有効になっていて、遠方平面の値。この問題により、私はフォーラム(これも含まれます)を調べて、運が悪かった答えを見つけました。誰かが助けることができればそれは大いにありがたいです。

編集:

多分私は少し不明確でした。位置を変更する前にオブジェクトは正しく描画されますが、カメラの方向は自由に変更でき、悪影響はありません。位置が変更されると、オブジェクトは正しくレンダリングされません。

更新:

@ paul-jan:コードを投稿しますが、いくつかのクラスに散在しています...デプスバッファは、D3DPRESENT_PARAMETERSで宣言されたD3DFMT_D16自動バッファです。MSDNのドキュメントによると、自動的に有効になり、書き込みが有効になり、関数はD3DCMP_LESSEQUALです。また、モデルはXファイルから読み込まれ、DirectXビューアーで正常に表示されます。

@vines:興味深い仮説。変換は異なりますが、ワールドマトリックスのみです。私の直感は、それがビューマトリックスにあるということです。私は、フランクD.ルナの著書「DirectX9.0cを使用した3Dゲームプログラミングの概要」で説明されている実装に取り​​組んでいます。この実装は、目的に合わせて変更しました。つまり、3軸回転です。しかし、私はそれに私の実装を台無しにしたかもしれません。

ここにいくつかのコードがあります...

r =右ベクトル、u =上ベクトル、f =順ベクトル、p =位置、w =世界行列、l =ローカル空間オフセット変換(世界変換の少し前に物事を変換するための私自身のアイデア)。

全体のアイデアは、サードパーソンスターファイター戦闘ゲーム用のカメラに基づいています。カメラと船は1つのオブジェクトとして「結合」され(したがって、ローカルスペース変換)、ビューマトリックスは船のワールドマトリックスの逆になります。ただし、これがそれを実装するための最良の方法であるかどうかはわかりません。

何か案は?

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

objective-c - OpenGL 深度テストの問題

Mac 上の OpenGL に問題があります。問題は深度テストにあると思います。

だから、私の問題について: 説明するのではなく、2 つのスクリーンショットを作成 ました。 .rackspacecloud.com/dd2267e27a561b5f02344dca57508dddce21d2315f.jpg

緑の床を描かないと、すべてが(ちょっと)うまく見えます。しかし、それでも、このように見えるのは恐ろしいことです。

Opengl のセットアップに使用する 3 つのコードブロックを次に示します。

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

pixel - android:ピクセルデバイスの深さ

デバイスのピクセル深度(色数)を取得できるかどうか知りたいのですが。DisplayMetricsを使用すると、解像度を知ることができます...

しかし、どこでピクセル深度を見つけることができますか?

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

java - 最小-最大ヒープJavaの偶数-奇数レベルのチェック

したがって、これは、配列の特定のインデックスがヒープの最大レベルまたは最小レベルを表すかどうかを判断するために作成したメソッドです。最小レベルの深さは偶数(0を含む)、最大レベルの深さは奇数です。正常に動作しますが、実行時間は(私が思うに)O(log N)です。実行時間が一定である単純な数学計算のように、これを行うためのより効率的な方法はありますか?このメソッドは、データがインデックス0ではなく配列のインデックス1から始まることを前提としていることに注意してください。

0 投票する
6 に答える
201609 参照

python - Python: Python オブジェクトの呼び出し中に最大再帰深度を超えました

約 5M ページで (URL ID を増やして) 実行し、必要な情報を含むページを解析するクローラーを作成しました。

URL(200K)で実行され、良い結果と悪い結果を保存するアルゴリズムを使用した後、多くの時間を無駄にしていることがわかりました。次の有効な URL を確認するために使用できるサブトラヘンドがいくつか返されることがわかりました。

減数を非常に速く見ることができます (いくつかの最初の「良い ID」の少し例) -

約 200K の URL をクロールした後、14K の良い結果しか得られませんでした。時間を無駄にしており、最適化する必要があることがわかったので、いくつかの統計を実行し、ID を 8\18\17\ で増やしながら URL をチェックする関数を作成しました。 8 (上を返す減数) など'.

これが機能です -

基本的に -checkNextID(ID) は、データから8を引いた最初のIDを取得しているため、最初の反復は最初の「if isValid」句と一致します(isValid(ID + 8)はTrueを返します)。

lastResultは、最後の既知の URL ID を保存する変数であるため、numOfRuns が

isValid()は、ID + サブトラヘンドの 1 つを取得し、URL に必要なものが含まれている場合は True を返し、URL のスープ オブジェクトを名前付きのグローバル変数 - ' curRes ' に保存する関数です。URL が含まれていない場合は False を返します。必要なデータが含まれていません。

parseHTMLは、スープ オブジェクト (curRes) を取得し、必要なデータを解析して、データを csv に保存し、True を返す関数です。

isValid() が True を返した場合は、parseHTML() を呼び出してから、次の ID + サブトラヘンドをチェックしようとします (checkNextID(ID + サブトラヘンド) を呼び出すことによって)。 1 ずつ増やして、次の有効な URL が見つかるまでもう一度確認してください。

ここで残りのコードを見ることができます

コードを実行した後、約 950 ~ の良い結果が得られ、突然例外が発生しました -

「問題が発生しました: Python オブジェクトの呼び出し中に最大再帰深度を超えました」

WireShark で、scipt が id - 510009541 (510000003 でスクリプトを開始しました) に固執していることを確認できました。スクリプトは、エラーに気付き停止する前に、その ID で URL を数回取得しようとしました。

同じ結果が得られたのを見て本当に興奮しましたが、古いスクリプトよりも 25 倍から 40 倍高速で、HTTP リクエストが少なく、非常に正確です。古いスクリプトを 30 時間実行したところ、新しいスクリプトで 5 ~ 10 分で 960 ~ の結果が得られたときに 14 ~ 15,000 の結果が得られました。

スタックの制限について読みましたが、Python で実装しようとしているアルゴリズムの解決策が必要です (古い「アルゴリズム」に戻ることはできません。終了することはありません)。

ありがとう!

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

c++ - 16 ビット深度の CvMat* を 8 ビット深度に変換

Kinect と OpenCV を使用しています。私はすでにこのフォーラムを検索していますが、私の問題のようなものは見つかりませんでした。Kinect (16 ビット) から生の深度データを保持し、それを CvMat* に保存してから、それを cvGetImage に渡して、そこから IplImage* を作成します。

しかし、cvThreshdold を実行して輪郭を見つけるために、この画像で作業する必要があります。これら 2 つの関数は、入力に 8 ビット深度のイメージを必要とします。CvMat* depthMetersMat を 8-bit-depth-CvMat* に変換するにはどうすればよいですか?

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

actionscript-2 - AS2 で深度を管理する方法

以下の AS2 コードでムービー クリップ (mainClip) を変更して、Flash ファイル内のすべてのグラフィックスの背後に配置するにはどうすればよいですか?

コードは以下のとおりです。