MCPcopy Create free account
hub / github.com/Open-Bee/DataStudio / encode_image_to_base64

Function encode_image_to_base64

datastudio/utils/vision.py:19–38  ·  view source on GitHub ↗

Encode PIL Image to base64 data URL string. Args: img: PIL Image object. target_size: Maximum dimension for thumbnail (-1 to skip resizing). fmt: Output format (default: JPEG). Returns: Base64 encoded data URL string.

(img, target_size=-1, fmt="JPEG")

Source from the content-addressed store, hash-verified

17
18
19def encode_image_to_base64(img, target_size=-1, fmt="JPEG"):
20 """Encode PIL Image to base64 data URL string.
21
22 Args:
23 img: PIL Image object.
24 target_size: Maximum dimension for thumbnail (-1 to skip resizing).
25 fmt: Output format (default: JPEG).
26
27 Returns:
28 Base64 encoded data URL string.
29 """
30 if target_size > 0:
31 img.thumbnail((target_size, target_size))
32 img_buffer = io.BytesIO()
33 img.save(img_buffer, format=fmt)
34 image_data = img_buffer.getvalue()
35 img_buffer.close() # Explicitly close BytesIO to free memory
36 image_base64 = base64.b64encode(image_data).decode("utf-8")
37 del image_data # Explicitly delete large object
38 return f"data:image/jpeg;base64,{image_base64}"
39
40
41# ==============================================================================

Calls 2

closeMethod · 0.80
saveMethod · 0.45