Kernel — 커널

Kernel — 커널 (java.awt.image)

지정된 픽셀과 그 주변 픽셀이 필터링 연산의 출력 이미지에서 해당 픽셀 위치에 대해 계산된 값에 어떻게 영향을 주는지 설명하는 행렬을 정의하는 클래스예요.

출처: Java API Reference

본문

Kerneljava.lang.Object를 확장하고 Cloneable을 구현해요. ConvolveOp와 함께 사용돼요. X 원점(X origin)과 Y 원점(Y origin)은 출력 값을 계산하는 픽셀 위치에 해당하는 커널 행렬 요소를 나타내요.

생성자

public Kernel(int width, int height, float[] data)

float 배열에서 Kernel 객체를 구성해요. data 배열의 첫 width*height 요소가 복사돼요. data 배열의 길이가 width*height보다 작으면 IllegalArgumentException이 던져져요. X 원점은 (width-1)/2, Y 원점은 (height-1)/2예요.

파라미터: width — 커널 너비 / height — 커널 높이 / data — 행 우선 순서(row major)의 커널 데이터

예외: IllegalArgumentExceptiondata의 길이가 widthheight의 곱보다 작을 때

메서드 상세

getXOrigin() / getYOrigin()

public final int getXOrigin()
public final int getYOrigin()

이 Kernel의 X 원점, Y 원점을 반환해요.

getWidth() / getHeight()

public final int getWidth()
public final int getHeight()

이 Kernel의 너비, 높이를 반환해요.

getKernelData(float[] data)

public final float[] getKernelData(float[] data)

커널 데이터를 행 우선 순서로 반환해요. datanull이면 새 배열을 할당해요.

예외: IllegalArgumentExceptiondata가 이 Kernel의 크기보다 작을 때

clone()

public Object clone()

이 객체를 복제해요.

더 알아보기