ヒント: 高く狙い、足を地面につけたままにします
記事ディレクトリ
- I.はじめに
- 2. 主な内容
-
漠然
-
角
-
安心
-
輪郭
-
研ぐ
-
- 要約する
I.はじめに
opencv filter - opencv を使用して、さまざまな画像フィルター効果を実現します
2. 主な内容
1.ファジー
画像のぼかしは、画像の平滑化とも呼ばれ、主に画像内の周囲の点とはかなり異なる点を処理し、そのピクセル値を周囲の点と同様の値に調整します. 目的は、画像のノイズを除去することです.とエッジ。
フィルタリングにはいくつかの種類があります
<1> 平均フィルタリング
②ガウスフィルタ
<3>ボックスフィルタリング
<4>メディアンフィルタリング
<5>双方向フィルタリング
<6>2D フィルタリング
<1> 平均フィルタリング
平均フィルタリングは、現在のポイントを中心として、現在のポイントのピクセル値を周囲のN * Nポイントのピクセルの平均値に置き換えます。
im=cv2.imread('lena.jpg')
cv2.imshow('input',im)
im2=cv2.blur(im,(5,5))
# im2=cv2.blur(im,(20,20))
cv2.imshow('output',im2)
cv2.waitKey(0)
②ガウスフィルタ
ガウス フィルタリングでは、最初に、ピクセル ポイントと中心点の間の距離に応じて、各ピクセルに異なる重みが割り当てられます。中心点に近いほど重みが大きくなり、中心点から遠ざかるほど重みが小さくなります。次に、重みに従ってフィールド内のすべてのピクセルの合計を計算し、その合計を中心ピクセル値として使用します。
import cv2
im=cv2.imread('lena.jpg')
cv2.imshow('input',im)
im2=cv2.GaussianBlur(im,(5,5),0,0)
cv2.imshow('output',im2)
cv2.waitKey(0)
<3>ボックスフィルタリング
ボックス フィルタリングは平均フィルタリングに基づいており、フィルタリング結果を正規化するかどうかを選択できます。Trueの場合、フィルター結果はドメイン内のポイントのピクセル値の合計の平均であり、それ以外の場合はピクセル値の合計です。
import cv2
im=cv2.imread('lena.jpg')
cv2.imshow('input',im)
im2=cv2.boxFilter(im, -1, (5,5),
normalize=True)
# im2=cv2.blur(im,(20,20))
cv2.imshow('output',im2)
cv2.waitKey(0)
<4>メディアンフィルタリング
中央値フィルタリングは、最初に近傍内のすべてのピクセル値を並べ替え、中央値を近傍の中心点のピクセル値として取得します
import cv2
im=cv2.imread('lena.jpg')
cv2.imshow('input',im)
im2=cv2.medianBlur(im, 21)
# im2=cv2.blur(im,(20,20))
cv2.imshow('output',im2)
cv2.waitKey(0)
<5>双方向フィルタリング
バイラテラル フィルタリングでは、距離と色差の情報を考慮してピクセル値を計算するため、ノイズを除去しながらエッジ情報を保持します。
import cv2
im=cv2.imread('lena.jpg')
cv2.imshow('input',im)
im2=cv2.bilateralFilter(im, 50, 100, 100)
# im2=cv2.blur(im,(20,20))
cv2.imshow('output',im2)
cv2.waitKey(0)
<6>2D フィルタリング
2D 畳み込みでは、カスタム畳み込みカーネルを使用してフィルタリング操作を実行できます。
要約する
画像共通ぼかしフィルター操作
-
平均フィルタリング
-
ガウス フィルター
-
ボックスフィルタリング
-
メディアン フィルター
-
バイラテラル フィルタリング
-
2Dフィルタリング
-
輪郭
-
安心
-
研ぐ