이 함수는 이미지가 전처리된 4차원 블롭 행렬을 반환합니다. 이 블롭은 모델에 입력될 준비가 된 데이터 형식입니다.
const blob = cv.blobFromImage(
image,
1,
{ width: 192, height: 144 },
[104, 117, 123, 0],
false,
false
);
- image: 전처리할 입력 이미지입니다. 이 이미지는 네트워크에 입력될 대상입니다.
- 1: 스케일 팩터(scale factor)로, 이미지의 픽셀 값에 곱해지는 값입니다. 여기서 1을 사용하여 픽셀 값을 그대로 사용합니다. 통상 255로 나누어, 픽셀 값을 0에서 1 사이로 변환합니다
- { width: 192, height: 144 }: 입력 이미지의 크기입니다. 이미지를 192x144 해상도로 리사이즈합니다.
- [104, 117, 123, 0]:평균 값(mean values)입니다. 각각의 채널(R, G, B)에 대해 평균 값을 뺍니다. 이 과정은 이미지의 조명이나 색상 차이를 보정하기 위해 사용됩니다. 예: 각 픽셀의 R, G, B 값을 각각 104, 117, 123만큼 감소시킵니다. 마지막 값(0)은 투명도(A)에 대한 값으로, 여기서는 사용되지 않습니다. 예를 들어, 이 값이 [0, 0, 0, 0] 인 경우는 평균값으로 사용될 RGB(A) 값으로 모두 0되어 따로 평균값을 빼지 않습니다.
- false: 스왑RB(Swap RB) 여부입니다. 여기서는 false로, 기본적으로 RGB 채널 순서를 유지합니다. true 인 경우는 RGB 채널을 스왑하여, BGR 형식으로 입력을 변환합니다.
- false: 크로핑 여부로, false이면 리사이즈 후 크롭을 하지 않습니다.