問題タブ [submatrix]

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 に答える
3820 参照

android - opencv android java マトリックス サブマトリックス (ROI 関心領域)

I've mRgba Matrix and a Rect r(フレーム内で認識されたもの)

によって定義されるフレームのこの部分のサブマトリックスが必要ですRect r.

このように使用すると:

sub = mRgba.submat(r);

適切なサブマトリックスを取得しましたが、次のステップに問題がありました。フレームのこの部分を変更してから、元にコピーして戻したいと考えています。

例えば:

この変更されたサブマトリックスを元に戻すにはどうすればよいですか。または、Rect r 部分を除いてすべてゼロで mRgba と同じサイズのマスクを取得/作成するにはどうすればよいですか?

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

matlab - Matlab:要素から行列の境界までの距離を見つける

Matlab で、次のような行列があるとします。

ここで、すべての要素の周りに 3x3 のサブマトリックスを見つける必要があります (したがって、各要素は 3x3 サブマトリックスの中心になります)。途中で fx を見つけても問題ありません。

1 2 3 4 5 6 7 8 9
1 2 3 4 5 6 7 8 9
1 2 3 4 5 6 7 8 9
1 2 3 4 5 6 7 8 9
1 2 3 4 5 6 7 8 9
1 2 3 4 5 6 7 8 9

サブマトリックスは次のとおりです。

しかし、マトリックスの境界、つまり最初または最後の行または列の要素にある場合、もちろん 3x3 サブマトリックスを見つけることはできません。代わりに、適合する部分行列が必要です。コーナーFXで私は得るだろう

1 2 3 4 5 6 7 8 9
1 2 3 4 5 6 7 8 9
1 2 3 4 5 6 7 8 9
1 2 3 4 5 6 7 8 9
1 2 3 4 5 6 7 8 9
1 2 3 4 5 6 7 8 9

サブマトリックスは次のとおりです。

国境の真ん中で、fx を取得します。

1 2 3 4 5 6 7 8 9
1 2 3 4 5 6 7 8 9
1 2 3 4 5 6 7 8 9
1 2 3 4 5 6 7 8 9
1 2 3 4 5 6 7 8 9
1 2 3 4 5 6 7 8 9

与える:

または別の例として:

1 2 3 4 5 6 7 8 9
1 2 3 4 5 6 7 8 9
1 2 3 4 5 6 7 8 9
1 2 3 4 5 6 7 8 9
1 2 3 4 5 6 7 8 9
1 2 3 4 5 6 7 8 9

与える:

私の言いたいことを理解していただければ幸いです。要素から境界線までの距離を見つけることができる機能がありません。

すべての要素をサブマトリックスの中心として扱うことができ、要素から境界線までの距離がサブマトリックスの境界線より下にあるかどうかをテストできれば (サブマトリックスの寸法は、5x5 サブマトリックスを fx に変更します)、次に私は作成中にサブマトリックスの一部を切り捨てることができます。

最も効率的な方法で要素から行列の境界までの距離を見つけるにはどうすればよいですか?

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

matlab - MATLAB: 論理インデックスを使用して部分行列を抽出する

MATLAB でのこの非常に単純な問題に対するエレガントな解決策を探しています。行列があるとします

および次の形式の論理変数

の値にM関連付けられている の要素を取得しようとすると、列ベクトルが得られます1I

[5 7 ; 6 13]この論理インデックスから行列を取得する最も簡単な方法は何ですか?

の非ゼロ要素の形状がわかっている場合はI、インデックス作成後に形状変更を使用できますが、これは一般的なケースではありません。

また、MATLAB でのこのタイプのインデックス付けの既定の動作は、ゼロ以外の値がI行列を形成しない場合に関して一貫性を強制することを認識していますが、この特定のケースに対する簡単な解決策があるかどうか疑問に思います.

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

c++ - OpenCV サブマトリックスの問題 (type short)

より大きなマトリックスから取得した新しい (サブ) マトリックスを作成するときに問題が発生し、誰かが私に手を貸してくれることを望んでいました。

問題を次の小さなコード スニペットに絞り込みました。

上記は float 型の行列では機能するようですが、short を使用する場合は機能しません。

アイデアは、データをコピーするのではなく、rightBestX からのデータ参照を使用することです。x に正常にコピーされました。ただし、コードの最後の行を実行すると、失われます (x の行とは異なります)。また、refcount は x では 2 ですが、leftBestXRegion では 1 です...

繰り返しますが、これはフロートで機能します。ここで何が間違っているのか誰にも分かりますか?

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

matlab - matlabで部分行列を作成する「賢い」方法を探しています

2900 x 7 サイズのマトリックスがあります

各列 (x、y、z、se、インデックス、xc、yc) には、すべて同じサイズの 2900 x 1 の数値が含まれます。

6番目と7番目の列で特定の要素を見つけることにより、このサブマトリックスからいくつかのサブマトリックスを作成しようとしています。このような:

しかし、これは、340 の部分行列を生成するために 340 行を書く必要があることを意味します。これを行う賢い方法はありますか?2 つの for ループを使用しようとしました。

しかし、うまくいきませんでした。

これらの部分行列を取得するにはどうすればよいですか?

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

matlab - 各部分行列または cell 配列から特定の行を収集する

各サブマトリックスまたはセル配列から最後の行を収集したいと考えています。

  • マトリックス名 A に 17 x 20 のセルがあります。

  • 各サブマトリックスの行数は異なりますが、列数は同じです (合計 7 列、すべて)

  • 各サブマトリックスの最後の行のみで構成されるファイルを生成しようとしました。私のターゲットファイルのfromは

    /li>
  • だから私は試しました

    /li>
  • しかし、それは機能していません.Subscript indexs must be either real positive integers or logicals.というエラーが発生します。

  • 最初にサイズを定義する必要がありますか? どのような操作を行う必要がありますか? またはどのコマンドが便利ですか? cellfun を試してみましたが、ここでどのように使用できるかわかりません。

  • この状況を解決するには助けが必要です。ありがとう~!

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

image-processing - 画像内の部分一致パターンの検索

画像 (0-255) 内の 2 次元パターンを見つける次の問題を考えてみましょう。

大きい行列のほとんどの要素 (たとえば > 50%) が小さい行列のそれぞれの要素のある範囲内にある場合、一致は (x, y) で見つかったと言われます。

この問題は画像検索の標準的な問題だったのを覚えていますが、思い出せず、正確な名前も見つかりませんでした。

誰かが同等の標準問題の名前を見つけてくれたら、とてもありがたいです。
前もって感謝します。

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

c++ - 固有値を使用した部分行列とインデックス

私は現在 MATLAB プロジェクトに取り組んでおり、C++ と Eigen を使用して最も計算量の多い部分を再実装したいと考えています。次の操作 (MATLAB 構文) を実行する方法があるかどうかを知りたいです。

MATLAB に慣れていない方のために説明すると、上記のコマンドは、値が 3 未満の A のセルで構成される行列 B を初期化します。

Eigenフォーラムの投稿から、次を使用して目的のインデックスを取得できることがわかりました。

私がしたいのは次のようなものです:

ありがとう。

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

matlab - すべての部分行列を取得する

私は次のようなN×M行列を持っていますm

forループを使用せずにサイズP×Q(P、Qは奇数)のすべての部分行列を取得したいと思います。

結果sは、P×Q×((N-P + 1)・(M-Q + 1))行列になります。

たとえば、P = Q = 3の場合:

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

c++ - より大きな行列の部分行列の和

入力として大きな行列があり、小さな行列のサイズがあります。大きな行列から形成できるすべての可能な小さな行列の合計を計算する必要があります。

例。入力行列サイズ: 4 × 4

マトリックス:

入力より小さい行列サイズ: 3 × 3 (必ずしも正方形である必要はありません)

より小さな行列が可能:

それらの合計、最終出力

これは私がしました:

これは遅すぎると思います。誰かがより速い方法を提案できますか?