MCPcopy
hub / github.com/zai-org/GLM-OCR / image_tensor_to_base64

Function image_tensor_to_base64

glmocr/utils/image_utils.py:235–254  ·  view source on GitHub ↗

Convert a torch image tensor to base64. Args: image_tensor: torch.Tensor, shape (C, H, W) image_format: Image format. Returns: Base64-encoded image.

(image_tensor, image_format)

Source from the content-addressed store, hash-verified

233
234
235def image_tensor_to_base64(image_tensor, image_format):
236 """Convert a torch image tensor to base64.
237
238 Args:
239 image_tensor: torch.Tensor, shape (C, H, W)
240 image_format: Image format.
241
242 Returns:
243 Base64-encoded image.
244 """
245
246 if image_tensor.shape[0] != 3:
247 raise ValueError("Input tensor is not a 3-channel image.")
248 image_array = image_tensor.permute(1, 2, 0).numpy()
249 image_array = image_array.astype(np.uint8)
250 image = Image.fromarray(image_array)
251 buffered = BytesIO()
252 image.save(buffered, format=image_format)
253 img_str = base64.b64encode(buffered.getvalue()).decode("utf-8")
254 return img_str
255
256
257# -----------------------------------------------------------------------------

Callers

nothing calls this directly

Calls 1

saveMethod · 0.45

Tested by

no test coverage detected