[DIP] Moirè (모아레) (and Beat)

2024. 9. 30. 13:14·Programming/DIP
728x90
728x90

1. Moire 란?

  • 디지털 이미지나 영상에서 발생하는 시각적 왜곡 현상
  • 원래 패턴과 해상도 차이로 인해 생기는 잔물결 무늬 또는 줄무늬

두 개의 유사한 패턴이 약간의 오프셋이나 회전으로 겹쳐질 때 발생하는 광학 현상을 가르키며
원래 이미지나 패턴에 없던 간섭 패턴이 생기게 됨.


두 개의 주파수가 유사한 signal이 중첩되어 서로 간섭할 때 나타나는 현상으로 두 signal의 평균주파수의 합성 signal을 만드는데 이 결과 signal이 두 주파수의 차이만큼의 주파수로 주기적으로 커지고 작아지는 패턴이 생성됨: Sound에서는 맥놀이(beat)현상 이라고 불림.

2. 발생 원인

  • Dense pattern: 격자무늬, 천의 섬유, 건물 외벽 등 규칙적 패턴
  • Resolution mismatch: 카메라 센서와 촬영 대상 패턴을 획득하는데 요구되는 spatial resolution 이 맞지 않음
  • 디스플레이 문제: 화면 해상도와 이미지 해상도가 다를 때

수학적으로 설명하면

  • 두 개의 유사하지만 약간 다른 주파수를 가진 패턴들이
  • 겹칠 때 Moirè 가 발생하게 된다.

음악에서는 Moirè 와 유사한 개념이 beat freq.(여러 음이 겹쳐진 상태에서 envelop의 진폭이 완전히 증가하고 감소하는 빈도)로

  • $f_1$과 $f_2$주파수의 패턴이 겹쳐질 때,
  • $|f_1-f_2|$의 주파수를 지니는 패턴 (envelope의 주파수의 2배)이 생성됨.

이 패턴이 이미지 상에서의 Moirè임.

$$y_1 = A \cos(2\pi f_1 t) \\ y_2 = A \cos(2\pi f_2 t) $$

 

여기서 $y_\text{total}$은 다음과 같음:

$$\begin{aligned} y_\text{total} &= y_1 + y_2 \\ &= A\left\{ \cos (2\pi f_1 t) +\cos (2\pi f_2 t) \right\} \\ 2A \cos \left(2\pi \frac{f_1+f_2}{2}t\right) \cos \left(2\pi \frac{f_1-f_2}{2}t\right) \end{aligned}$$

 

여기서 $\cos \left( \pi (f_1 - f_2) t \right)$ 부분이 envelope)외피)를 형성하고,

  • 이 함수는 주파수 $\frac{|f_1 - f_2|}{2}$ 로 진동.
  • 즉, 두번째 cos이 envelope를 결정하며 해당 envelope의 반파장마다 beat, 맥놀이 발생.)
  • beat(맥놀이) 음의 음고(pitch←중첩된 wave의 freq.) 는 두 주파수 피치의 평균값이고, 맥놀이 주파수(beat frequency)는 두 주파수의 차이값

beat의 주기는 합쳐진 파형에서 최대와 최대 사이의 거리 $T_\text{beat}$이므로 다음이 성립.

  • Freq. of Beats : $|f_1-f_2|=2f_\text{envelope}=2\dfrac{|f_1-f_2|}{2}$

Example1:
440Hz 와 442Hz 두 소리가 합쳐지면 그 중간인 441Hz 의 소리(중첩된 wave의 freq.)가 1초에 두번(i.e., 2Hz, 비트의 진동수) 커졌다 작아졌다 함.

Example2:

  • 두 개의 선형 패턴을 겹쳐 놓고, 그 중 한 패턴만 위/아래로 움직였을 때 생성되는 Moirè 패턴을 보여줌.
  • 좀 더 자세히 보면, 이 때 생성된 Moirè 패턴( 움직이는 굵은 선 )은 기존의 패턴과 모양이 매우 비슷하지만 크게 보임.
  • 그리고 기존 패턴의 움직임에 비해 생성된 Moirè 패턴은 훨씬 빠른 속도로 움직이고 있는 걸 알 수 있음.

Example3:

Moirè 패턴을 통해 일종의 확대 효과를 얻을 수 있음:

  • 위의 경우에서 처럼 원본 패턴과 흡사한 동그란 형태, 그리고 가운데가 비어있는 6각형의 모아레 패턴이 생성됨.
  • 생성된 패턴의 크기는 위의 Freq. of Beats에 의해 확대되어 보임.

3. 대표적 발생 상황

  • 천, 건축물 등에서 촘촘한 패턴 촬영 시
  • 고해상도 이미지를 저해상도 화면에서 렌더링할 때
  • 작은 해상도로의 resizeing의 경우 자주 발생하는데 이경우 적절할 interpolation이 필요함.

 

참고로, Moirè 를 이용한 패턴 분석 기술을 비전 머신에 적용하면 고정밀 정렬, 디펙 검사, 패턴 균일도 검사 등 다양한 검사 분야에 적용 가능함 (Example3 참고).


4. 같이 보면 좋은 자료들

https://gist.github.com/dsaint31x/9b4b49ed00d573a4faf1005b35d4dc67

 

dip_moire_inter_area.ipynb

dip_moire_inter_area.ipynb. GitHub Gist: instantly share code, notes, and snippets.

gist.github.com

https://visionblog.vieworks.com/knowledge/application/%EB%AA%A8%EC%95%84%EB%A0%88moire%EB%9E%80-1/

 

모아레(Moiré)란? (1) | 뷰웍스 머신비전 블로그

혹시 모아레(Moiré) 라는 말을 들어보셨나요? ‘모아레(Moiré)’ 라는 단어는 원래 물에 젖은 섬유가 겹겹이 쌓인 모양을 일컫는 프랑스어로부터 시작되었습니다. 다소 익숙치 못한 단어이지만 실

visionblog.vieworks.com

2024.09.22 - [Programming/DIP] - [DIP] CV2.INTER_AREA

 

[DIP] CV2.INTER_AREA

CV2.INTER_AREA는 OpenCV 라이브러리에서 제공하는 image interpolation 방법 중 하나임. 주요 특징과 작동 방식은 다음과같음:목적:주로 이미지를 축소(downsampling or shrinking)할 때 사용됨.pixel area 관계를 사

dsaint31.tistory.com

 


 

'Programming > DIP' 카테고리의 다른 글

[DIP] Contrast Limited Adaptive Histogram Equalization (CLAHE)  (0) 2024.10.07
[DIP] Histogram Matching: Image Enhancement  (1) 2024.10.07
[DIP] cv2.convertSacleAbs(): contrast, brightness 수동조정  (0) 2024.09.23
[DIP] Image 다루기: cv2-기본편 3 (Summary)  (1) 2024.09.22
[DIP] CV2.INTER_AREA  (0) 2024.09.22
'Programming/DIP' 카테고리의 다른 글
  • [DIP] Contrast Limited Adaptive Histogram Equalization (CLAHE)
  • [DIP] Histogram Matching: Image Enhancement
  • [DIP] cv2.convertSacleAbs(): contrast, brightness 수동조정
  • [DIP] Image 다루기: cv2-기본편 3 (Summary)
dsaint31x
dsaint31x
    반응형
    250x250
  • dsaint31x
    Dsaint31's blog
    dsaint31x
  • 전체
    오늘
    어제
    • 분류 전체보기 (746)
      • Private Life (13)
      • Programming (192)
        • DIP (110)
        • ML (26)
      • Computer (119)
        • CE (53)
        • ETC (33)
        • CUDA (3)
        • Blog, Markdown, Latex (4)
        • Linux (9)
      • ... (351)
        • Signals and Systems (103)
        • Math (172)
        • Linear Algebra (33)
        • Physics (42)
        • 인성세미나 (1)
      • 정리필요. (54)
        • 의료기기의 이해 (6)
        • PET, MRI and so on. (1)
        • PET Study 2009 (1)
        • 방사선 장해방호 (4)
        • 방사선 생물학 (3)
        • 방사선 계측 (9)
        • 기타 방사능관련 (3)
        • 고시 (9)
        • 정리 (18)
      • RI (0)
      • 원자력,방사능 관련법 (2)
  • 블로그 메뉴

    • Math
    • Programming
    • SS
    • DIP
  • 링크

    • Convex Optimization For All
  • 공지사항

    • Test
    • PET Study 2009
    • 기타 방사능관련.
  • 인기 글

  • 태그

    numpy
    DIP
    signals_and_systems
    signal_and_system
    cv2
    math
    opencv
    Python
    SS
    인허가제도
    fourier transform
    function
    Term
    SIGNAL
    Programming
    Vector
    linear algebra
    Convolution
    Optimization
    Probability
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.3
dsaint31x
[DIP] Moirè (모아레) (and Beat)
상단으로

티스토리툴바