opencv 이미지 필터(평균 값,사각형,고 스,중간 값)

4096 단어 opencv영상 필터
필 터 를 왜 사용 합 니까?
그림 의 소음 성분 을 제거 하 는 것 을 그림 의 평활 화 나 필터 작업 이 라 고 합 니 다.신호 나 이미지 의 에 너 지 는 대부분 폭 스펙트럼 의 저주파 와 중간 주파수 에 집중 되 는 것 이 흔 하지만 비교적 높 은 주파수 에서 관심 이 있 는 정 보 는 소음 에 자주 잠긴다.따라서 고주파 성분 의 폭 을 낮 출 수 있 는 필 터 는 소음 의 영향 을 줄 일 수 있다.
다음 그림 은 왼쪽 그림 에 캡 사이 신 소음 이 있 고 오른쪽 그림 은 중간 값 필터 로 처리 한 그림 이다.

이미지 필터 의 목적 은 두 가지 가 있다.하 나 는 추출 대상 의 특징 을 이미지 인식 의 특징 모델 로 하 는 것 이다.다른 하 나 는 이미지 처리 의 요구 에 적응 하기 위해 이미지 디지털화 시 혼 입 된 소음 을 없 애 는 것 이다.
python+opencv 설명
평균 값 필터
속뜻
그림:빨간색 점 을 처리 하려 면 새 값 은 주변 N 곱 하기 N 픽 셀 의 평균(자신 포함)과 같 습 니 다.

표현 식 으로 표현:

전체 그림 에 평균 값 필터 로 확장

실현 방법:
처리 결과=cv2.blur(원본 그림,핵 크기)
핵 크기:(너비,높이)의 원조
효과:그림 을 흐 리 게 합 니 다.캡 사이 신 에 공격 당 한 사진 을 처리 할 수 있 습 니 다.

import cv2
a=cv2.imread('lenacolor.png')#
b=cv2.blur(a,(8,8))
cv2.imshow('original',a)
cv2.imshow('result',b)
cv2.waitKey(0)
cv2.destroyAllWindows()

스 퀘 어 필터
구현 방법:함수 box Filter
처리 결과=cv2.boxFilter(원본 이미지,대상 이미지 깊이,핵 크기,normalize 속성)
대상 이미지 깊이:int 형식의 대상 이미지 깊이,-1 은 원본 이미지 와 일치 함 을 표시 합 니 다.
핵 크기:(너비,높이)원조
normalize:대상 그림 을 정규 화 할 지 여부
normalize 가 true 일 때 평균 값 필터 와 마찬가지 로 false 일 때 임의의 점 의 픽 셀 을 주위 픽 셀 점 의 합 으로 표시 하여 255 이상 넘 치기 쉽다.

normalize=1,1 은 true

import cv2
a=cv2.imread('lenacolor.png')#
b=cv2.boxFilter(a,-1,(5,5),normalize=1)
cv2.imshow('original',a)
cv2.imshow('result',b)
cv2.waitKey(0)
cv2.destroyAllWindows()
결과:

normalize=0,0 은 false
결 과 는 흰색 이 아 닌 점 이 몇 개 밖 에 없어 요.

핵 크기 감소(2,2)normalize=0

가우스 필터
의미:
중심 점 은 가중치 가 높 고 멀 수록 낮다.

실현 방법:GaussianBlur
처리 결과=cv2.GaussianBlur(원본 이미지 src,핵 함수 크기 ksize,sigmaX)
핵 함수 크기 ksize:(N,N)홀수 여야 합 니 다.
sigmaX:x 방향 방 차 를 제어 하고 가중치 를 제어 하 며 보통 0 을 취하 고 스스로 방 차 를 계산한다.y 축 분산 과 x 일치

import cv2
a=cv2.imread('lenacolor.png')#
b=cv2.GaussianBlur(a,(3,3),0)
cv2.imshow('original',a)
cv2.imshow('result',b)
cv2.waitKey(0)
cv2.destroyAllWindows()

중간 값 필터
픽 셀 점 인접 도 메 인 근처 픽 셀 의 중간 값 을 사용 하여 이 점 의 픽 셀 값 을 대체 합 니 다.쉽게 말 하면 이 픽 셀 의 왼쪽 에서 다섯 개의 픽 셀 점 을 찾 고 오른쪽 에서 다섯 개의 픽 셀 점 을 찾 아 정렬 한 다음 에 중간 값 을 만 들 고 중간 크기 의 값 으로 이 픽 셀 의 값 을 대체 합 니 다.
중간 값 필 터 는 반점 과 캡 사이 신 소음 을 효과적으로 제거 할 수 있다.그러나 효율 이 낮 아 연산 시간 은 평균 값 필터 의 5 배 이상이다.

실현 방법:medianBlur
대상 그림=cv2.medianBlur(원본 그림,intksize)
intksize:핵 함수,홀수 여야 합 니 다.

import cv2
a=cv2.imread('lenacolor.png')#
b=cv2.medianBlur(a,5)
cv2.imshow('original',a)
cv2.imshow('result',b)
cv2.waitKey(0)
cv2.destroyAllWindows()

opencv 이미지 필터(평균 값,사각형,고 스,중간 값)에 관 한 이 글 은 여기까지 소개 되 었 습 니 다.더 많은 opencv 이미지 필터 내용 은 우리 의 이전 글 을 검색 하거나 아래 의 관련 글 을 계속 찾 아 보 세 요.앞으로 많은 지원 을 바 랍 니 다!

좋은 웹페이지 즐겨찾기