タグ付けされた質問 「image-processing」

一般に、画像処理は、写真やビデオフレームなどの入力が画像である信号処理の任意の形式です。

1
ノイズ除去のための複素関数の大きさの総変動の勾配
ほぼ一定の大きさであるが一定ではない位相を持つ複雑な関数(たとえば、MRI画像)があるとします。f∗f∗f^* を見つけて総変動項を含む目的関数を設定する最適化問題がある場合(ノイズ除去または圧縮センシングなど)、通常は次の形式になります。f∗f∗f^* obj1(f)=…+TV(f)obj1(f)=…+TV(f) obj_1(f) = \ldots + \text{TV}(f) ただし、は区分的に一定の大きさであると想定しているので、次のように使用する方がよいと思います。fff obj2(f)=…+TV(|f|)obj2(f)=…+TV(|f|) obj_2(f) = \ldots + \text{TV}(|f|) ただし、勾配ベースのソルバーの場合、obj2の勾配を知る必要があります。用傾斜:である。勾配は何ですか?obj1(f)obj1(f)obj_1(f)TV′(TV(f))TV′(TV(f))\text{TV}'\left(TV(f)\right)obj2(f)obj2(f)obj_2(f) 更新: 直感的には、次のようなものを想定します(フェーズはに影響を与えないため、フェーズは「そのまま」にしておきます)。obj2obj2obj_2 TV′(TV(|f|))∗eiarg(f)TV′(TV(|f|))∗eiarg⁡(f) \text{TV}'\left(TV(|f|)\right)* e^{i \arg(f)} しかし、複雑な分析に関する私の知識は非常に限られており、これが意味をなすかどうかはわかりません。

1
画像のリサンプリング前にローパスフィルタリングを行う際のガウスカーネルパラメーターの選択?
信号をqの係数で間引きする必要があります。 より具体的には、私の信号は3D「画像」です。 I(xi,yj,zk) I(xi,yj,zk)\ I(x_i,y_j,z_k)、これをz方向に2倍ダウンサンプリングする必要があります。 サイズnのガウスカーネルでたたみ込むことにより、デシメーションの前にローパスフィルタリングを実行したいと思います。 ガウスカーネルは、分布の95%を占めるため、0の上下に2標準偏差を作成します。 私はnの大きさを教えてくれる経験則を探しています。 ガウシアンはfN / qを超えるすべての周波数をフィルターで除去する必要があると私は考えていますか?ここで、fN:元の信号のナイキスト周波数? 標準偏差のガウスのフーリエ σ σ\ \sigma 標準偏差を持つ別のガウス σ∗= 1 / σ σ∗=1/σ\ \sigma^* =1/\sigma 。ローパスフィルターがどれほど厳密であるかわかりません。カット周波数fcは2または3の標準偏差にする必要がありますか? 次に、サイズnのガウスカーネルのカット周波数fcの式は何ですか?fc(n)=? 以下は、Matlabで計算されたいくつかのガウスカーネルの周波数応答です。 私の実際の問題にはq = 2が関係しており、この図から、n = 5がうまく機能することがわかります。経験則があれば良かったので、遭遇するqごとにこれを行う必要はありませんでした。

1
画像から影を取り除く
画像からブドウのみを抽出したい。残念ながら、時々私はブドウを正確に手に入れません。 すべてのケースでうまく機能しないコードがあります。時々、それは影とブドウを区別しません。 入力画像の例: 私が得ている結果: そしてこれは私のコードです: RGB = imread('DSC02807.JPG'); GRAY = rgb2gray(RGB); threshold = graythresh(GRAY); originalImage = im2bw(GRAY, threshold); originalImage = bwareaopen(originalImage,250); SE = strel('disk',10); IM2 = imclose(originalImage,SE); originalImage = IM2; imshow(originalImage);

2
画像のコントラストを測定する
プロジェクトの場合、グローバルイメージのコントラストを測定したいと思います。 さまざまな画像を比較して、コントラストが最高の画像を取得したいと思います。ウェーバーのコントラストについて知っていますが、正規化されたコントラスト値(0〜1の範囲)が必要です。 openCVでこれを行う簡単な方法はありますか?

1
各ピクセル値を近傍の最も表現されたピクセル値に変換することを含むたたみ込み
グレースケール画像の背景の強度の段階的な変化を修正するために、ぼかし、畳み込み画像から元の画像を差し引いてきました。 場合によっては、ぼかしの代わりに中央値ぼかしを使用することで改善が見られました。 したがって、さらに進んでグレースケール画像を畳み込むフィルターを使用して、各ピクセルが長方形の近傍のヒストグラムで最も表現されたピクセル値の値を取ることができるかどうか疑問に思いました。 この畳み込みの名前を知っていますか? OpenCVの実装を知っていますか? どうもありがとうございました、

1
ウィンドウ処理のコンテキストでの超解像とは何ですか?
DSP / DIPのコンテキストで、超解像とは何かを理解しようとしています。最大化/最小化されている基準とその理由 私のオンライン検索のほとんどは光学物理学の観点から超解像技術を生み出していますが、私はそれらが画像処理や一部のドップラーレーダー処理でも使用されていることを偶然に知っています。 私が覚えているSuper-Resの特定の例の1つは、メインローブがボックスカーの幅と同じ幅でありながら、ハミングウィンドウのようにサイドローブが非常に低く高速に低下するウィンドウ関数の設計でした。この意味で、「スーパー解像度」は、メインローブの幅が狭く、ダイナミックレンジが非常に高いため、互いに非常に近い周波数を解決できるという事実に由来しています。これは本当に超解像度と同じですか? (おそらく)それをノイズ除去やスパース性追求の形に例えているという説明はありますか?それともまったく別の動物ですか?



1
DNAクロマトグラムトレースデータのプロット
サンガーDNA シーケンスはクロマトグラムトレースを生成し、FinchTVやChromasLiteなどの多くのプログラムで視覚化できます。生データは、4つのDNA塩基(A、C、G、T)のそれぞれの座標で構成されます。ただし、プロットは、前の図に示すように、平滑化されたピークとして表示されます。多くのプログラムでは、プロットのx軸とy軸を拡大または縮小して、プロットの形状を変更できます。(少数の)生データポイントからこれらのような滑らかな曲線をプロットするために使用される数学的な方法は何ですか?

1
離散(逆)Haar(2D)変換の実装
合成すると常に恒等演算が行われるように、Haar変換とその逆の実装に興味があります。私の入力は、指定された範囲内の離散的な序数です。Haar変換の出力も、同様に離散的な序数(または固定小数点)の数値にする必要があります。 私は、入力信号が範囲内に均一に分散されたサンプルで構成されている場合に基づいて作業しました 0..(2n−1)0..(2n−1)0..(2^n-1) そして、私の変換された信号もそうです、そしてそれで、原則として、私の元の信号は逆ハールによって完全に再現されるべきです。 私は、GNU Octaveを使用してこの(Matlab)実装に手を加えました。 http://people.sc.fsu.edu/~jburkardt/m_src/haar/haar.html これは倍精度値を使用します...変換された表現を元の状態空間と同じ状態空間に合わせるために、round()を使用して変換されたデータの離散表現を確立するように強制します。当然のことながら、逆変換の出力に対して再びround()を使用する必要があることがわかりました。 round(haar_2d_inverse(round(haar_2d(signal))))がほとんどの信号値の恒等関数ではないことは、おそらく驚くことではありません...事例では、通常、再構成された信号-ほぼ対称に見え(少数の再構成されたサンプルで+1または-1)、これはnの選択にほとんど依存しないようです。 私が知りたいのは、順序サンプルで機能するhaar_2dおよびhaar_2d_inverseの「より良い」実装があるかどうかです。異常は、Haar実装自体の結果なのか、中間段階でround()を適用した方法なのでしょうか?後者の場合、丸める前にスケーリングしてこれを修正できますか?

1
opencvを使用してGUIの要素を検出するにはどうすればよいですか?
アプリケーションのスクリーンショットが与えられた場合、opencvのみを使用してそのアプリケーションのGUI要素を見つける方法はありますか?(画像のようなもの) opencvインストールフォルダーにあるcoherence.pyサンプルの画像とその他の効果をブレンドして遊んでみました。実行可能な結果を​​得ることに成功しませんでした。 誰かこれをしましたか?私が何をしようと思っているのか分かりますか? ありがとう (私はopencvと画像処理が初めてなので、可能な場合は明確な説明を避けないでください):)

1
単純な画像に使用できるセグメンテーション方法は何ですか?
私が現在携わっているプロジェクトに関連して、自分のイメージを「セグメント化」するのに役立つ可能性があることが1つあることに気付きました。そのために、以下に非常に簡単な例を示しました。 セグメンテーションメソッドは一般的にどのように機能し、どのクラスが最初のイメージから私を導くのに役立ちますか: ...秒に: ここで発生したと思われるスケーリングを無視してください。

2
Matlabを使用して画像をセグメント化するために流域を適用する方法は?
流域を使用してこの画像をセグメント化して、画像内の人物のみを取得する方法は? これまでに次のことを行いました。 勾配を計算しました 流域変換を計算しました 私のコード: clear; I=imread('inpaint.jpg'); I=rgb2gray(I); hy = fspecial('sobel'); hx = hy'; Iy = imfilter(double(I), hy, 'replicate'); Ix = imfilter(double(I), hx, 'replicate'); gradmag = sqrt(Ix.^2 + Iy.^2); figure, imshow(gradmag,[]), title('Gradient magnitude (gradmag)') L = watershed(gradmag); % Lrgb = label2rgb(L); figure, imshow(L), title('Watershed transform of gradient magnitude (Lrgb)') 流域の適用に成功しました …

2
この色変換の名前は何ですか?
これは画像の色変換に関する質問です。RGB画像を名前がわからない色空間に変換するために使用しているこの色変換マトリックスがあります。 T = [(1/3) (1/3) (1/3); (1/2) 0 (-1/2); (-1/2) 1 (-1/2)] この色変換の名前は何ですか?KLトランスフォームと呼ばれるものをどこかで見たことがあると思いますが、それは画像の大規模なコレクションに対して計算されたKLTに近いためです...

1
ウィンドウ付き画像スケーリングフィルターで最適なタップ数をどのように選択しますか?
フィルターを使用して画像を拡大縮小しようとしていますが、ほとんどの場合、機能しているように見えます。しかし、今は最適なタップ数のフィルターを生成できるようにしたいと思います。一般的に、タップ数が多いほど良いことを知っています。ただし、タップを1回追加するごとに画像の品質がどの程度向上するかについては、利益が減少しています。それでは、実装の複雑さと画質の間の適切なトレードオフとなるタップ数を選ぶにはどうすればよいでしょうか。いくつかの「理想的な」フィルターに対して異なるフィルターを評価できる標準測定はありますか? これについてもっと考えると、これは本当に2つの質問だと思います。1つは、使用するウィンドウ化されたsincを決定することです(この場合、既にlanczos2または3を使用することに決めています)。これは、アプリケーションに応じてさまざまなトレードオフを持つより一般的な質問です。しかし、その決定が行われると、タップ数は簡単に決定されます。lanczos2の場合、理想的なタップ数は4であり、lanczos3の場合、理想的なタップ数は6です。これが5または7ではない理由は、ウィンドウ処理により、これらのタップの1つが常にゼロになるためです。 より一般的なケースでは、特定のウィンドウに必要なタップ数を簡単に示す方法は、次のように言うだけです。 taps = max - min lanczos2の場合、最大値は2で、最小値は-2です。したがって、タップ= 4。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.