Buckets:
VAE 이미지 프로세서
VaeImageProcessor는 StableDiffusionPipeline이 VAE 인코딩을 위해 이미지 입력을 준비하고, 디코딩된 출력을 후처리할 때 사용할 수 있는 통합된 API를 제공합니다. 여기에는 리사이즈, 정규화, PIL Image, PyTorch, NumPy 배열 간의 변환과 같은 변환 작업이 포함됩니다.
VaeImageProcessor를 사용하는 모든 파이프라인은 PIL Image, PyTorch tensor 또는 NumPy 배열을 이미지 입력으로 받아 사용자의 output_type 인자에 따라 출력을 반환합니다. 인코딩된 이미지 latents를 파이프라인에 직접 전달하고 output_type 인자를 통해 특정 출력(예: output_type="latent")으로 latents를 반환할 수 있습니다. 이를 통해 하나의 파이프라인에서 생성된 latents를 latent space를 벗어나지 않고 다른 파이프라인의 입력으로 전달할 수 있습니다. 또한 PyTorch tensor를 서로 다른 파이프라인 사이에 직접 전달함으로써 여러 파이프라인을 함께 사용하는 것이 훨씬 쉬워집니다.
VaeImageProcessor[[diffusers.VaeImageProcessor]]
diffusers.VaeImageProcessor[[diffusers.VaeImageProcessor]]
diffusers.VaeImageProcessor(do_resize: bool = True, vae_scale_factor: int = 8, vae_latent_channels: int = 4, resample: str = 'lanczos', reducing_gap: int | None = None, do_normalize: bool = True, do_binarize: bool = False, do_convert_rgb: bool = False, do_convert_grayscale: bool = False)
매개변수:
do_resize (bool, 선택 사항, 기본값 True) : 이미지의 (height, width) 차원을 vae_scale_factor의 배수로 다운스케일할지 여부입니다. image_processor.VaeImageProcessor.preprocess() 메서드에서 height 및 width 인수를 받을 수 있습니다.
vae_scale_factor (int, 선택 사항, 기본값 8) : VAE 스케일 팩터입니다. do_resize가 True인 경우, 이미지는 이 팩터의 배수로 자동으로 리사이즈됩니다.
resample (str, 선택 사항, 기본값 lanczos) : 이미지를 리사이즈할 때 사용할 리샘플링 필터.
do_normalize (bool, 선택 사항, 기본값 True) : 이미지를 [-1,1] 범위로 정규화할지 여부.
do_binarize (bool, 선택 사항, 기본값 False) : 이미지를 0/1로 바이너리화할지 여부.
do_convert_rgb (bool, 선택 사항, 기본값은 False) : 이미지를 RGB 형식으로 변환할지 여부.
do_convert_grayscale (bool, 선택 사항, 기본값은 False) : 이미지를 회색조 형식으로 변환할지 여부.
VAE용 이미지 프로세서.
apply_overlay[[diffusers.VaeImageProcessor.apply_overlay]]
apply_overlay(mask: Image, init_image: Image, image: Image, crop_coords: tuple[int, int, int, int] | None = None)
매개변수:
mask (PIL.Image.Image) : 오버레이할 영역을 강조하는 마스크 이미지.
init_image (PIL.Image.Image) : 오버레이가 적용되는 원본 이미지.
image (PIL.Image.Image) : 원본 위에 오버레이할 이미지.
crop_coords (tuple[int, int, int, int], 선택 사항) : 이미지를 자를 좌표입니다. 지정된 경우 이미지가 해당 좌표에 따라 잘립니다.
반환값: PIL.Image.Image
오버레이가 적용된 최종 이미지.
…
binarize[[diffusers.VaeImageProcessor.binarize]]
binarize(image: Image)
매개변수:
image (PIL.Image.Image) : 이미지 입력값으로, PIL 이미지여야 합니다.
반환값: PIL.Image.Image
이진화된 이미지. 0.5보다 작은 값은 0으로, 0.5보다 큰 값은 1로 설정됩니다.
마스크를 생성합니다.
블러[[diffusers.VaeImageProcessor.blur]]
blur(image: Image, blur_factor: int = 4)
매개변수:
image (PIL.Image.Image) : 회색조로 변환할 PIL 이미지.
반환값: PIL.Image.Image
회색 변환된 PIL 이미지.
이미지에 가우시안 블러를 적용합니다.
convert_to_grayscale[[diffusers.VaeImageProcessor.convert_to_grayscale]]
convert_to_grayscale(image: Image)
매개변수:
image (PIL.Image.Image) : 변환할 입력 이미지.
반환값: PIL.Image.Image
회색으로 변환된 이미지.
주어진 PIL 이미지를 회색조로 변환합니다.
convert_to_rgb[[diffusers.VaeImageProcessor.convert_to_rgb]]
convert_to_rgb(image: Image)
매개변수:
image (PIL.Image.Image) : RGB로 변환할 PIL 이미지.
반환값: PIL.Image.Image
RGB로 변환된 PIL 이미지.
PIL 이미지를 RGB 형식으로 변환합니다.
denormalize[[diffusers.VaeImageProcessor.denormalize]]
denormalize(images: typing.Union[numpy.ndarray, torch.Tensor])
매개변수:
images (np.ndarray 또는 torch.Tensor) : 역정규화할 이미지 배열.
반환값: np.ndarray 또는 torch.Tensor
비정규화된 이미지 배열.
이미지 배열을 [0,1] 범위로 비정규화합니다.
get_crop_region[[diffusers.VaeImageProcessor.get_crop_region]]
get_crop_region(mask_image: Image, width: int, height: int, pad = 0)
매개변수:
mask_image (PIL.Image.Image) : 마스크 이미지.
width (int) : 처리할 이미지의 너비.
height (int) : 처리할 이미지의 높이.
pad (int, optional) : crop 영역에 추가할 padding입니다. 기본값은 0입니다.
반환값: tuple
(x1, y1, x2, y2)는 이미지 내 모든 마스킹된 영역을 포함하고 원래의 종횡비를 유지하는 직사각형 영역을 나타냅니다.
이미지 내 모든 마스킹된 영역을 포함하는 직사각형 영역을 찾은 후, 원본 이미지의 종횡비(aspect ratio)에 맞게 영역을 확장합니다. 예를 들어, 사용자가 128x32 영역에 마스킹을 그렸고 처리 차원이 512x512인 경우, 해당 영역은 128x128로 확장됩니다.
get_default_height_width[[diffusers.VaeImageProcessor.get_default_height_width]]
get_default_height_width(image: typing.Union[PIL.Image.Image, numpy.ndarray, torch.Tensor], height: int | None = None, width: int | None = None)
매개변수:
image (PIL.Image.Image | np.ndarray | torch.Tensor) : PIL 이미지, NumPy 배열 또는 PyTorch 텐서일 수 있는 이미지 입력입니다. NumPy 배열인 경우, 형태가 [batch, height, width] 또는 [batch, height, width, channels]여야 합니다. PyTorch 텐서인 경우, 형태가 [batch, channels, height, width]여야 합니다.
height (int | None, 선택 사항, 기본값 None) : 전처리된 이미지의 높이입니다. None인 경우 image 입력의 높이가 사용됩니다.
width (int | None, 선택 사항, 기본값 None) : 전처리된 이미지의 너비입니다. None인 경우 image 입력의 너비를 사용합니다.
반환값: tuple[int, int]
vae_scale_factor의 가장 가까운 정수 배수로 리사이즈된 높이와 너비를 포함하는 튜플입니다.
vae_scale_factor의 정수 배로 축소된 이미지의 높이와 너비를 반환합니다.
normalize[[diffusers.VaeImageProcessor.normalize]]
normalize(images: typing.Union[numpy.ndarray, torch.Tensor])
매개변수:
images (np.ndarray 또는 torch.Tensor) : 정규화할 이미지 배열.
반환값: np.ndarray 또는 torch.Tensor
정규화된 이미지 배열.
이미지 배열을 [-1,1] 범위로 정규화합니다.
numpy_to_pil[[diffusers.VaeImageProcessor.numpy_to_pil]]
numpy_to_pil(images: ndarray)
매개변수:
images (np.ndarray) : PIL 형식으로 변환할 이미지 배열.
반환값: list[PIL.Image.Image]
PIL 이미지 목록.
numpy 이미지 또는 이미지 배치 하나를 PIL 이미지로 변환합니다.
numpy_to_pt[[diffusers.VaeImageProcessor.numpy_to_pt]]
numpy_to_pt(images: ndarray)
매개변수:
images (np.ndarray) : PyTorch 형식으로 변환할 NumPy 이미지 배열.
반환값: torch.Tensor
이미지의 PyTorch 텐서 표현입니다.
NumPy 이미지를 PyTorch 텐서로 변환합니다.
pil_to_numpy[[diffusers.VaeImageProcessor.pil_to_numpy]]
pil_to_numpy(images: list[PIL.Image.Image] | PIL.Image.Image)
매개변수:
images (PIL.Image.Image 또는 list[PIL.Image.Image]) : NumPy 형식으로 변환할 PIL 이미지 또는 이미지 목록.
반환값: np.ndarray
이미지의 NumPy 배열 표현입니다.
PIL 이미지 또는 PIL 이미지 목록을 NumPy 배열로 변환합니다.
postprocess[[diffusers.VaeImageProcessor.postprocess]]
postprocess(image: Tensor, output_type: str = 'pil', do_denormalize: list[bool] | None = None)
매개변수:
image (torch.Tensor) : 이미지 입력값으로, B x C x H x W 형상의 pytorch 텐서여야 합니다.
output_type (str, 선택 사항, 기본값 pil) : 이미지의 출력 유형으로, pil, np, pt, latent 중 하나를 사용할 수 있습니다.
do_denormalize (list[bool], 선택 사항, 기본값 None) : 이미지를 [0,1] 범위로 비정규화할지 여부입니다. None인 경우 VaeImageProcessor 설정의 do_normalize 값을 사용합니다.
반환값: PIL.Image.Image, np.ndarray 또는 torch.Tensor
후처리된 이미지.
텐서에서 output_type로 이미지 출력을 후처리합니다.
preprocess[[diffusers.VaeImageProcessor.preprocess]]
preprocess(image: typing.Union[PIL.Image.Image, numpy.ndarray, torch.Tensor, list[PIL.Image.Image], list[numpy.ndarray], list[torch.Tensor]], height: int | None = None, width: int | None = None, resize_mode: str = 'default', crops_coords: tuple[int, int, int, int] | None = None)
매개변수:
image (PipelineImageInput) : 이미지 입력으로, PIL 이미지, NumPy 배열, PyTorch 텐서 형식을 지원하며 지원되는 형식의 리스트도 허용합니다.
height (int, 선택 사항) : 전처리된 이미지의 높이입니다. None인 경우 get_default_height_width()를 사용하여 기본 높이를 가져옵니다.
width (int, 선택 사항) : 전처리된 이미지의 너비입니다. None인 경우, 기본 너비를 가져오기 위해 get_default_height_width()`를 사용합니다.
resize_mode (str, 선택 사항, 기본값 default) : 리사이즈 모드입니다. default 또는 fill 중 하나여야 합니다. default인 경우, 지정된 너비와 높이에 맞게 이미지를 리사이즈하며 원래의 종횡비를 유지하지 않을 수 있습니다. fill인 경우, 종횡비를 유지하면서 지정된 너비와 높이에 맞게 이미지를 리사이즈한 후, 해당 차원 내에서 이미지를 중앙 정렬하고 빈 공간을 이미지 데이터로 채웁니다. crop인 경우, 종횡비를 유지하면서 지정된 너비와 높이에 맞게 이미지를 리사이즈한 후, 해당 차원 내에서 이미지를 중앙 정렬하고 초과 부분을 잘라냅니다. resize_mode fill과 crop는 PIL 이미지 입력에서만 지원된다는 점에 유의하세요.
crops_coords (list[tuple[int, int, int, int]], 선택 사항, 기본값 None) : 배치 내 각 이미지의 크롭 좌표입니다. None인 경우 이미지를 크롭하지 않습니다.
반환값: torch.Tensor
전처리된 이미지.
이미지 입력을 전처리합니다.
pt_to_numpy[[diffusers.VaeImageProcessor.pt_to_numpy]]
pt_to_numpy(images: Tensor)
매개변수:
images (torch.Tensor) : NumPy 형식으로 변환할 PyTorch 텐서.
반환값: np.ndarray
이미지의 NumPy 배열 표현입니다.
PyTorch 텐서를 NumPy 이미지로 변환합니다.
크기 조정[[diffusers.VaeImageProcessor.resize]]
resize(image: typing.Union[PIL.Image.Image, numpy.ndarray, torch.Tensor], height: int, width: int, resize_mode: str = 'default')
매개변수:
image (PIL.Image.Image, np.ndarray 또는 torch.Tensor) : 이미지 입력으로, PIL 이미지, numpy 배열 또는 pytorch 텐서일 수 있습니다.
height (int) : 리사이즈할 높이.
width (int) : 리사이즈할 너비.
resize_mode (str, 선택 사항, 기본값 default) : 사용할 리사이즈 모드입니다. default 또는 fill 중 하나여야 합니다. default인 경우, 지정된 너비와 높이에 맞게 이미지를 리사이즈하며 원래의 종횡비를 유지하지 않을 수 있습니다. fill인 경우, 종횡비를 유지하면서 지정된 너비와 높이에 맞게 이미지를 리사이즈한 후, 차원을 중심으로 이미지를 배치하고 빈 공간을 이미지 데이터로 채웁니다. crop인 경우, 종횡비를 유지하면서 지정된 너비와 높이에 맞게 이미지를 리사이즈한 후, 차원을 중심으로 이미지를 배치하고 초과 부분을 잘라냅니다. fill 및 crop resize_mode는 PIL 이미지 입력에서만 지원된다는 점에 유의하세요.
반환값: PIL.Image.Image, np.ndarray 또는 torch.Tensor
크기가 조정된 이미지.
이미지 크기 조정
InpaintProcessor[[diffusers.InpaintProcessor]]
InpaintProcessor는 mask와 image 입력을 받아 함께 처리합니다. 선택적으로 padding_mask_crop을 받아 mask 오버레이를 적용할 수 있습니다.
diffusers.InpaintProcessor[[diffusers.InpaintProcessor]]
diffusers.InpaintProcessor(do_resize: bool = True, vae_scale_factor: int = 8, vae_latent_channels: int = 4, resample: str = 'lanczos', reducing_gap: int | None = None, do_normalize: bool = True, do_binarize: bool = False, do_convert_grayscale: bool = False, mask_do_normalize: bool = False, mask_do_binarize: bool = True, mask_do_convert_grayscale: bool = True)
인페인팅용 이미지와 마스크를 처리하는 이미지 프로세서
postprocess[[diffusers.InpaintProcessor.postprocess]]
postprocess(image: Tensor, output_type: str = 'pil', original_image: PIL.Image.Image | None = None, original_mask: PIL.Image.Image | None = None, crops_coords: tuple[int, int, int, int] | None = None)
이미지를 후처리하고, 선택적으로 마스크 오버레이를 적용합니다
preprocess[[diffusers.InpaintProcessor.preprocess]]
preprocess(image: Image, mask: PIL.Image.Image | None = None, height: int | None = None, width: int | None = None, padding_mask_crop: int | None = None)
이미지와 마스크를 전처리합니다.
VaeImageProcessorLDM3D[[diffusers.VaeImageProcessorLDM3D]]
VaeImageProcessorLDM3D는 RGB 및 깊이(depth) 입력을 받아 RGB 및 깊이 출력을 반환합니다.
diffusers.VaeImageProcessorLDM3D[[diffusers.VaeImageProcessorLDM3D]]
diffusers.VaeImageProcessorLDM3D(do_resize: bool = True, vae_scale_factor: int = 8, resample: str = 'lanczos', do_normalize: bool = True)
매개변수:
do_resize (bool, 선택 사항, 기본값 True) : 이미지의 (높이, 너비) 차원을 vae_scale_factor의 배수로 다운스케일할지 여부.
vae_scale_factor (int, 선택 사항, 기본값 8) : VAE 스케일 팩터입니다. do_resize가 True인 경우, 이미지는 이 팩터의 배수로 자동으로 리사이즈됩니다.
resample (str, 선택 사항, 기본값 lanczos) : 이미지를 리사이즈할 때 사용할 리샘플링 필터.
do_normalize (bool, 선택 사항, 기본값 True) : 이미지를 [-1,1] 범위로 정규화할지 여부.
VAE LDM3D용 이미지 프로세서입니다.
depth_pil_to_numpy[[diffusers.VaeImageProcessorLDM3D.depth_pil_to_numpy]]
depth_pil_to_numpy(images: list[PIL.Image.Image] | PIL.Image.Image)
매개변수:
images (list[PIL.Image.Image, PIL.Image.Image]) : 변환할 입력 이미지 또는 이미지 목록.
반환값: np.ndarray
변환된 이미지의 NumPy 배열입니다.
PIL 이미지 또는 PIL 이미지 목록을 NumPy 배열로 변환합니다.
numpy_to_depth[[diffusers.VaeImageProcessorLDM3D.numpy_to_depth]]
numpy_to_depth(images: ndarray)
매개변수:
images (np.ndarray) : 단일 이미지 또는 배치일 수 있는 깊이 이미지의 입력 NumPy 배열
반환값: list[PIL.Image.Image]
입력 NumPy 깊이 이미지에서 변환된 PIL 이미지 목록입니다.
NumPy 깊이 이미지 또는 이미지 배치 목록을 PIL 이미지 목록으로 변환합니다.
numpy_to_pil[[diffusers.VaeImageProcessorLDM3D.numpy_to_pil]]
numpy_to_pil(images: ndarray)
매개변수:
images (np.ndarray) : 입력 NumPy 이미지 배열로, 단일 이미지 또는 배치일 수 있습니다.
반환값: list[PIL.Image.Image]
입력 NumPy 배열에서 변환된 PIL 이미지 목록입니다.
NumPy 이미지 또는 이미지 배치 목록을 PIL 이미지 목록으로 변환합니다.
preprocess[[diffusers.VaeImageProcessorLDM3D.preprocess]]
preprocess(rgb: typing.Union[torch.Tensor, PIL.Image.Image, numpy.ndarray], depth: typing.Union[torch.Tensor, PIL.Image.Image, numpy.ndarray], height: int | None = None, width: int | None = None, target_res: int | None = None)
매개변수:
rgb (torch.Tensor | PIL.Image.Image | np.ndarray) : 단일 이미지 또는 배치일 수 있는 RGB 입력 이미지
depth (torch.Tensor | PIL.Image.Image | np.ndarray) : 단일 이미지 또는 배치일 수 있는 깊이 입력 이미지
height (int | None, 선택 사항, 기본값 None) : 처리된 이미지의 원하는 높이입니다. None인 경우, 입력 이미지의 높이를 기본값으로 사용합니다.
width (int | None, 선택 사항, 기본값 None) : 처리된 이미지의 원하는 너비입니다. None인 경우, 입력 이미지의 너비로 기본 설정됩니다.
target_res (int | None, 선택 사항, 기본값 None) : 이미지를 리사이즈할 대상 해상도입니다. 지정된 경우 height와 width를 덮어씁니다.
반환값: tuple[torch.Tensor, torch.Tensor]
PyTorch 텐서로 처리된 RGB 및 깊이 이미지를 포함하는 튜플입니다.
이미지 입력을 전처리합니다. 허용되는 형식은 PIL 이미지, NumPy 배열 또는 PyTorch 텐서입니다.
rgblike_to_depthmap[[diffusers.VaeImageProcessorLDM3D.rgblike_to_depthmap]]
rgblike_to_depthmap(image: typing.Union[numpy.ndarray, torch.Tensor])
RGB와 유사한 깊이 이미지를 깊이 맵으로 변환합니다.
PixArtImageProcessor[[diffusers.PixArtImageProcessor]]
diffusers.PixArtImageProcessor[[diffusers.PixArtImageProcessor]]
diffusers.PixArtImageProcessor(do_resize: bool = True, vae_scale_factor: int = 8, resample: str = 'lanczos', do_normalize: bool = True, do_binarize: bool = False, do_convert_grayscale: bool = False)
매개변수:
do_resize (bool, 선택 사항, 기본값 True) : 이미지의 (height, width) 차원을 vae_scale_factor의 배수로 다운스케일할지 여부입니다. image_processor.VaeImageProcessor.preprocess() 메서드에서 height 및 width 인수를 받을 수 있습니다.
vae_scale_factor (int, 선택 사항, 기본값 8) : VAE 스케일 팩터입니다. do_resize가 True인 경우, 이미지는 이 팩터의 배수로 자동으로 리사이즈됩니다.
resample (str, 선택 사항, 기본값 lanczos) : 이미지를 리사이즈할 때 사용할 리샘플링 필터.
do_normalize (bool, 선택 사항, 기본값 True) : 이미지를 [-1,1] 범위로 정규화할지 여부.
do_binarize (bool, 선택 사항, 기본값 False) : 이미지를 0/1로 바이너리화할지 여부.
do_convert_rgb (bool, 선택 사항, 기본값은 False) : 이미지를 RGB 형식으로 변환할지 여부.
do_convert_grayscale (bool, 선택 사항, 기본값은 False) : 이미지를 회색조 형식으로 변환할지 여부.
PixArt 이미지의 리사이즈 및 크롭을 위한 이미지 프로세서.
classify_height_width_bin[[diffusers.PixArtImageProcessor.classify_height_width_bin]]
classify_height_width_bin(height: int, width: int, ratios: dict)
매개변수:
height (int) : 이미지의 높이.
width (int) : 이미지의 너비.
ratios (dict) : 키가 종횡비이고 값이 (height, width) 튜플인 사전입니다.
반환값: tuple[int, int]
가장 가까운 버킷화된 높이와 너비.
aspect ratio에 기반하여 버닝된 높이와 너비를 반환합니다.
resize_and_crop_tensor[[diffusers.PixArtImageProcessor.resize_and_crop_tensor]]
resize_and_crop_tensor(samples: Tensor, new_width: int, new_height: int)
매개변수:
samples (torch.Tensor) : N이 배치 크기, C가 채널 수, H가 높이, W가 너비인 (N, C, H, W) 형태의 텐서.
new_width (int) : 출력 이미지의 원하는 너비.
new_height (int) : 출력 이미지의 원하는 높이.
반환값: torch.Tensor
리사이즈 및 크롭된 이미지를 포함하는 텐서.
이미지 텐서를 지정된 크기로 리사이즈하고 크롭합니다.
IPAdapterMaskProcessor[[diffusers.IPAdapterMaskProcessor]]
diffusers.IPAdapterMaskProcessor[[diffusers.IPAdapterMaskProcessor]]
diffusers.IPAdapterMaskProcessor(do_resize: bool = True, vae_scale_factor: int = 8, resample: str = 'lanczos', do_normalize: bool = False, do_binarize: bool = True, do_convert_grayscale: bool = True)
매개변수:
do_resize (bool, 선택 사항, 기본값 True) : 이미지의 (높이, 너비) 차원을 vae_scale_factor의 배수로 다운스케일할지 여부.
vae_scale_factor (int, 선택 사항, 기본값 8) : VAE 스케일 팩터입니다. do_resize가 True인 경우, 이미지는 이 팩터의 배수로 자동으로 리사이즈됩니다.
resample (str, 선택 사항, 기본값 lanczos) : 이미지를 리사이즈할 때 사용할 리샘플링 필터.
do_normalize (bool, 선택 사항, 기본값 False) : 이미지를 [-1,1] 범위로 정규화할지 여부.
do_binarize (bool, 선택 사항, 기본값 True) : 이미지를 0/1로 바이너리화할지 여부.
do_convert_grayscale (bool, 선택 사항, 기본값은 True) : 이미지를 회색조 형식으로 변환할지 여부.
IP Adapter 이미지 마스크용 이미지 프로세서.
다운샘플링[[diffusers.IPAdapterMaskProcessor.downsample]]
downsample(mask: Tensor, batch_size: int, num_queries: int, value_embed_dim: int)
매개변수:
mask (torch.Tensor) : IPAdapterMaskProcessor.preprocess()로 생성된 입력 마스크 텐서.
batch_size (int) : 배치 크기.
num_queries (int) : 쿼리의 개수.
value_embed_dim (int) : 값 임베딩의 차원.
반환값: torch.Tensor
다운샘플링된 마스크 텐서.
제공된 mask 텐서를 스케일된 dot-product attention에 필요한 차원에 맞게 다운샘플링합니다. mask의 종횡비가 출력 이미지의 종횡비와 일치하지 않으면 경고가 발생합니다.
Xet Storage Details
- Size:
- 27 kB
- Xet hash:
- ecb2dd273272cf7f97a104410ede75b2dfe8506ea8be3015b54d2d298e65e15e
Xet efficiently stores files, intelligently splitting them into unique chunks and accelerating uploads and downloads. More info.