Ctrl+K
Logo image Logo image

Site Navigation

  • API Reference
  • Examples

Site Navigation

  • API Reference
  • Examples

Section Navigation

  • PyFlink Table
  • PyFlink DataFrame
  • PyFlink Multimodal
    • Image
    • Video
    • Utilities
  • PyFlink DataStream
  • PyFlink Common

pyflink.multimodal.operators.image_face_blur#

image_face_blur(*columns, cv_classifier='haarcascade_frontalface_alt.xml', blur_type='gaussian', radius=2, min_neighbors=3, scale_factor=1.1, min_size=None, max_size=None, concurrency=None)[source]#

Create a face blurring UDF (OpenCV Haar Cascade + PIL-based).

Requires pip install opencv-python Pillow. This is a scalar UDF that returns a decoded image.

Parameters
  • *columns – Optional image column(s). When provided, the UDF is applied directly instead of returning a factory.

  • cv_classifier – OpenCV Haar cascade XML filename. Must be a bare filename without path separators. Default "haarcascade_frontalface_alt.xml".

  • blur_type – Blur filter type. One of "gaussian", "box". Default "gaussian".

  • radius – Blur kernel radius in pixels. Default 2 is a light visual blur; use a larger value for privacy/anonymization.

  • min_neighbors – OpenCV detectMultiScale minNeighbors value. Higher values reduce false positives but may miss faces. Default 3.

  • scale_factor – Image pyramid scale factor for multi-scale detection. Default 1.1.

  • min_size – Minimum face size as (width, height) tuple in pixels. Detections smaller than this are ignored. None (default) uses OpenCV’s built-in minimum.

  • max_size – Maximum face size as (width, height) tuple in pixels. Detections larger than this are ignored. None (default) imposes no upper limit.

  • concurrency – UDF concurrency. None uses the framework default.

Returns

A UDF that returns a decoded image with faces blurred,

or None for null input. Unsupported decoded image outputs fail fast at the codec boundary.

Raises

ValueError – If blur or detection parameters are invalid.

Usage:

>>> # As a reusable variable
>>> blur = image_face_blur(blur_type="gaussian", radius=3)
>>> df = df.with_column("blurred", blur(col("img")))
>>>
>>> # Inline
>>> df = df.with_column("blurred", image_face_blur(col("img")))

previous

pyflink.multimodal.operators.image_face_count

next

pyflink.multimodal.operators.image_nsfw_score

Show Source

Created using Sphinx 4.5.0.