이것은 배울 수 있습니까? Python에서 스킨을 푸는 방법

미세 박피술과 같은 복잡한 이미지 처리의 경우 scipy와 같은 과학 컴퓨팅 패키지를 사용하는 것이 분명히 더 복잡하므로 아티팩트 opencv가 사용됩니다.

pip install opencv-python

미세 박피술의 본질은 표면을 흐리게 하는 것이지만 흐림을 직접 사용하면 윤곽의 가장자리가 흐려집니다. 따라서 가장자리를 보존하는 역할을 할 수 있는 필터인 양방향 필터링을 사용할 필요가 있으며,

opencv에는 이미지 표시를 위한 창이 포함되어 있으므로 다른 드로잉 패키지를 가져올 필요가 없습니다. 먼저 이미지를 엽니다.

import numpy as np
import cv2

img = cv2.imread("dip.jpg")
cv2.imshow("test",img)

그림이 보여주듯이

여기에 이미지 설명 삽입

먼저 이미지에 대해 양방향 필터링을 수행합니다.

#双边滤波,三个参数分别是
biImg = cv2.bilateralFilter(img,50,50,50)
ck = np.append(img,biIimg,axis=1)       #拼接处理前后的图像,用于对比
cv2.imshow("comparison",ck)

비교해보면 양의 태반을 바른 듯 약간의 효과도 있고 피부가 확연히 개선된 것을 알 수 있다.

여기에 이미지 설명 삽입

그 중 bilateralFilterOpencv의 양방향 필터링 기능은 가우스 필터링을 기반으로 에지 관련 가중치 요소를 추가합니다. 따라서 양방향 필터링은 임계값 검색 에지 + 가우스 필터링으로 이해할 수 있습니다. 가장자리를 찾은 후 가장자리가 아닌 영역에는 가우스 필터링을 사용하고 가장자리와 유사한 영역에는 가우스 필터링의 가중치를 줄입니다. 따라서 처리할 이미지 외에 img입력 매개변수는 각각 필터 반경, 가우스 필터 함수의 표준 편차 및 임계값 함수의 표준 편차입니다.

추천

출처blog.csdn.net/m0_37816922/article/details/123421520