- 1
- 이니스프리
- 조회 수 1855
https://stackoverflow.com/a/49592509 여기 올라온 아이디어를 참고하였습니다 ^^
(현재의 scipy 버전에 맞게 살짝 수정했네요.)
Wasserstein distance에 대해서는 아래 문서를 참고하세요!
https://kionkim.github.io/2018/06/01/WGAN_1/
pilmode에 대해서는 아래 문서를 참고하세요 :)
from scipy.stats import wasserstein_distance from imageio import imread import numpy as np def get_histogram(img): h, w = img.shape hist = [0.0] * 256 for i in range(h): for j in range(w): hist[img[i, j]] += 1 return np.array(hist) / (h * w) a = imread('file01.jpg', pilmode='L') b = imread('file02.jpg', pilmode='L') a_hist = get_histogram(a) b_hist = get_histogram(b) dist = wasserstein_distance(a_hist, b_hist) print(dist)
제가 테스트해보니 칼라 이미지에서는 아주 좋은 결과를 얻기는 어려운 것 같네요 ㅠㅠ
그럼 즐거운 불금 되세요! ^-^
참고로 Wasserstein distance와는 무관하지만 이 모듈도 괜찮은 것 같네요 ^^