Kernel — 커널
Kernel — 커널 (java.awt.image)
지정된 픽셀과 그 주변 픽셀이 필터링 연산의 출력 이미지에서 해당 픽셀 위치에 대해 계산된 값에 어떻게 영향을 주는지 설명하는 행렬을 정의하는 클래스예요.
본문
Kernel은 java.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)의 커널 데이터
예외: IllegalArgumentException — data의 길이가 width와 height의 곱보다 작을 때
메서드 상세
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)
커널 데이터를 행 우선 순서로 반환해요. data가 null이면 새 배열을 할당해요.
예외: IllegalArgumentException — data가 이 Kernel의 크기보다 작을 때
clone()
public Object clone()
이 객체를 복제해요.