• 목록
  • 아래로
  • 위로

https://stackoverflow.com/a/49592509 여기 올라온 아이디어를 참고하였습니다 ^^

(현재의 scipy 버전에 맞게 살짝 수정했네요.)

 

Wasserstein distance에 대해서는 아래 문서를 참고하세요!

https://kionkim.github.io/2018/06/01/WGAN_1/

 

pilmode에 대해서는 아래 문서를 참고하세요 :)

https://imageio.readthedocs.io/en/stable/format_bmp-pil.html?highlight=pilmode#parameters-for-reading

 

 

 

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)

 

 

 

제가 테스트해보니 칼라 이미지에서는 아주 좋은 결과를 얻기는 어려운 것 같네요 ㅠㅠ

 

그럼 즐거운 불금 되세요! ^-^

 

작성자
이니스프리 119 Lv. (2%) 3649420/115200000EXP

Make StudyForUs Great Again!

 

CSVpuymXAAAVVpd.jpg

댓글 1

이니스프리 작성자
profile image
https://github.com/jterrace/pyssim

참고로 Wasserstein distance와는 무관하지만 이 모듈도 괜찮은 것 같네요 ^^
comment menu
2020.07.13. 18:06

신고

"이니스프리님의 댓글"

이 댓글을 신고 하시겠습니까?

권한이 없습니다.
번호 제목 글쓴이 날짜 조회 수
공지 시스템 점검 작업 완료 안내 10 마스터 마스터 24.09.05.16:25 1060
공지 [중요] 호스팅 만료와 관련하여 일부 수칙이 변경됩니다. 4 마스터 마스터 23.01.14.02:23 7785
497 [Python] 최적화된 윈도우용 Tensorflow가 있는 Github repository 이니스프리 이니스프리 20.05.20.18:47 167
496 HDMI 단자의 QHD 출력을 정식으로 지원하지 않는 NVIDIA 그래픽 카드로 QHD 60 Hz 해상도 출력하기 2 image 제르엘 제르엘 24.06.09.17:45 167
495 [PHP] 파일을 읽어서 각 행을 리스트로 만들기 이니스프리 이니스프리 19.07.10.20:29 168
494 [학술정보] Breaking character and natural image based CAPTCHA using feature classification 1 이니스프리 이니스프리 18.11.13.16:01 170
493 [Python] Youtube Playlist에 담긴 동영상들을 역순으로 불러오기 이니스프리 이니스프리 21.03.19.00:41 170
492 TCP BBR을 사용하여 기존 TCP 구현보다도 훨씬 빠른 속도를 즐기는 방법 2 image Seia Seia 20.01.19.07:01 171
491 [Python] Tabulate 모듈로 작성한 테이블을 파일로 저장할 때 에러가 발생하는 경우 이니스프리 이니스프리 24.04.20.23:45 172
490 [Python] Youtube_dl 사용시 주의할 점 이니스프리 이니스프리 21.03.12.22:14 176
489 앱체크 라이선스 갱신과 관련하여 이니스프리 이니스프리 19.05.11.14:43 177
488 [Python] PDF 파일을 특정 페이지를 기준으로 두 개로 나누기 이니스프리 이니스프리 24.08.11.20:27 179
487 [스퀘어넷] Ubuntu Server 18.04 LTS 지원 1 이니스프리 이니스프리 19.02.04.22:20 180
486 [팁] 모바일 앱 빌더 해피보이 20.04.02.08:59 180
485 마지막 방문일자 알려주기 슬기 슬기 18.10.11.00:31 181
484 AMD KOREA 라이젠 3500X 공식 런칭 예정 image 이니스프리 이니스프리 19.10.15.17:50 181
483 최근 KT 해외망 간단 리뷰 이니스프리 이니스프리 19.12.25.23:21 181
482 [Vultr] Important Tax Notice 이니스프리 이니스프리 19.11.20.07:38 182
481 [펌] 하이패스 미납요금 내기 귀찮을 땐, 동네 편의점? image 이니스프리 이니스프리 19.08.28.14:53 183
480 [펌] 하나의 키 입력으로 유튜브 광고 차단하기 - Block YouTube Ads With a Single Keystroke 2 이니스프리 이니스프리 20.06.14.10:19 183
479 [파이썬] OS에 따른 파일경로 표기방법의 차이와 관련하여 이니스프리 이니스프리 19.07.08.20:27 184
478 [Python] OrderedDict에 대한 간단한 소개 3 이니스프리 이니스프리 20.06.16.13:09 184