반응형

2024/07 5

ERODE 함수 소개

제가 얼마전에 MORPH_GRADIENT 함수를 소개하는 게시물을 올리면서 거기서 형태학적 이미지 처리(Morphological Image Processing, 이후부터는 MIP로 줄여서 부릅니다)라는 개념에 관하여 언급을 한 바 있습니다. 그 이유는 MORPH_GRADIENT 함수의 이미지 처리 알고리즘이 MIP의 범주에 속하는 여러가지 기법들 중 하나였기 때문입니다. 그리고 IDL에서는 MIP에 속하는 여러가지 기법들이 반영된 기능 함수들이 다양하게 지원되고 있다는 것도 함께 언급하였는데요. 이러한 범주에 속하는 여러 기능 함수들 중에는 ERODE 및 DILATE 함수가 있습니다. 이 함수들은 각각 Erosion 및 Dilation이라는 기법에 해당되는 기능을 수행하는데, 굳이 우리말로 번역해본다면 ..

MORPH_GRADIENT 함수 소개

2차원 이미지에 대한 처리 기법들 중에는 특정한 형태(Shape or Morphology)를 갖는 형체들(Features)을 기반으로 분석 및 처리를 수행하는 기법들이 있습니다. 이러한 기법들을 총괄적으로는 흔히 형태학적 이미지 처리(Morphological Image Processing) 기법이라고 부릅니다. 이러한 기법들은 기본적으로는 컨볼루션(Convolution)을 기반으로 하는데, 이 때 적용되는 커널(Kernel)의 형태 그리고 컨볼루션을 적용하는 횟수 및 순서 등에 따라 여러가지 변형 기법들로 나눠지게 됩니다. 예를 들면 Erosion, Dilation, Opening, Closing 등의 기법들입니다. IDL에서도 이러한 형태학적 이미지 처리 기법을 기반으로 하는 여러가지 기능 함수들이 지..

수식(Equation)의 가시화에 관한 유의 사항들

앞서 두 차례에 걸쳐서 데이터 배열 없이 수식(Equation)만 받아서 가시화하는 기능들에 관한 게시물들을 올린 바 있습니다. PLOT 함수에서 1차원 수식을 가시화하는 방법에 관한 게시물 그리고 CONTOUR 및 SURFACE 함수에서 2차원 수식을 가시화하는 방법에 관한 게시물 두가지로 나눠서 올렸는데요. 두 게시물에서 미처 언급하지 못했지만 유의해야 할 사항들이 좀 있어서 여기서 마저 정리를 해보고자 합니다. 1) IDL NG(New Graphics) 체계의 PLOT, CONTOUR, SURFACE 함수에서만 지원됩니다. 그리고 이러한 기능이 지원되기 시작한 것은 IDL 8.3 버전부터입니다. 그 이전 버전의 IDL에서는 지원되지 않습니다. 2) 웬지 3차원 수식을 VOLUME 같은 함수에서 지원..

IDL/New Graphics 2024.07.12

수식(Equation)만 명시하여 Contour 및 Surface 표출하기

NG 체계의 PLOT 함수에서 수식(Equation)만 명시하여 1차원적인 플롯(Plot)을 표출하는 방법에 관하여 바로 직전의 게시물을 통하여 소개한 바 있습니다. 이것은 결국 y = f(x) 형태의 1차원 함수에 대한 수식 자체를 PLOT 함수에 그대로 투입하는 방식이라고 볼 수 있습니다. 비슷한 맥락으로 y = f(x, y) 형태의 2차원 함수에 대한 수식만 명시하여 그림을 표출하는 것도 가능합니다. 이러한 기능은 CONTOUR 및 SURFACE 함수에서 지원됩니다. 따라서 오늘은 그 방법에 관하여 예제와 함께 살펴보기로 하겠습니다. 먼저 CONTOUR 함수에서 수식만 명시하여 2차원적인 등위선(Contour) 그림을 표출하는 예제부터 보면 그 과정은 다음과 같습니다. ct = COLORTABLE(..

IDL/New Graphics 2024.07.09

수식(Equation)만 명시하여 플롯(Plot) 표출하기

오늘은 IDL의 NG(New Graphics) 체계에서 플롯(Plot)을 표출하는데 있어서 PLOT 함수에서 수식(Equation)만 지정하여 그림을 구현하는 방법에 관하여 소개해보고자 합니다. 우리가 플롯을 표출하는데 있어서는, X축에 해당되는 값들로 구성된 배열을 정의하고 이를 일정한 수식에 의하여 계산하여 산출된 값들로 구성된 배열이 Y축에 대응되도록 하는 방식을 사용하는 것이 일반적입니다. 예를 들면 다음과 같은 방식입니다. x = FINDGEN(101)/10-5 y = x^3-2*x^2-5*x+6 win = WINDOW(DIMENSIONS=[600, 500], /NO_TOOLBAR) p = PLOT(x, y, THICK=2, COLOR='tomato', MARGIN=0.1, /CURRENT) 여..

IDL/New Graphics 2024.07.05