Skip to main content

Images

Image Objects

np_arr_img_to_bytes

def np_arr_img_to_bytes(arr, format: str = 'JPEG') -> bytes

Convert a NumPy array to bytes

Arguments:

  • arr - The NumPy array to convert
  • format - The format of the image. Defaults to "JPEG".

Returns:

  • bytes - The image as bytes

image_to_bytes

def image_to_bytes(image: Image, format: str = "JPEG") -> bytes

Convert an image to bytes

Arguments:

  • image PIL.Image - The image to convert
  • format str, optional - The format of the image. Defaults to "JPEG".

Returns:

  • bytes - The image as bytes

rotate

def rotate(points, angle, c_x=0, c_y=0)

Rotate a set of points around a center

Arguments:

  • points - The points to rotate; iterable of (x, y) pairs
  • angle - The angle of counterclockwise rotation in degrees
  • c_x - The x coordinate of the center of rotation
  • c_y - The y coordinate of the center of rotation

Returns:

  • points - The rotated points as a NumPy array of shape (n,2) and type int

resolve

def resolve(points: np.array, image_meta, operations) -> np.array

Resolve the coordinates of a bounding box to the original image size

Given an array of (x,y) points with respect to the coordinates of an image, returns the corresponding coordinates with respect to a the resized or rotated image that resulted from a series of operations.

Arguments:

  • points NumPy array - The coordinates of the bounding box; shape (...,2)
  • image dict - The image properties
  • operations list - The operations applied to the image

Returns:

  • resolved_points NumPy array - The resolved coordinates, same shape as points

Images Objects

class Images(Entities)

The python wrapper of images in ApertureDB.

This class serves 2 purposes: This class is a layer on top of the native query. It facilitate interactions with images in the database in a pythonic way. Abstracts the complexity of the query language and the communication with the database.

*It includes utility methods to visualize image and annotations Inter convert the representation into NumPy matrices and find similar images, related bounding boxes, etc.

Arguments:

  • db - The database connector, perhaps as returned by Utils.create_connector

total_results

def total_results() -> int

Returns the total number of images that matched the query

Returns:

  • int - Count of images that match the query.

get_image_by_index

def get_image_by_index(index: int)

Get a single image by its index in the array of retrieved ids

Arguments:

  • index int - Position in the image ids retrieved.

get_np_image_by_index

def get_np_image_by_index(index: int)

Retrieves the NumPy representation of image from database

Arguments:

  • index int - Position in the image ids retrieved.

get_bboxes_by_index

def get_bboxes_by_index(index: int)

Get related bounding box for the image

Arguments:

  • index int - Position in the image ids retrieved.

Returns:

  • _type_ - description
def search(constraints=None,
operations=None,
format=None,
limit=None,
sort=None)

Sets a new query to retrieve images parameters as described below

Arguments:

  • constraints dict, optional - Constraints. Defaults to None.
  • operations dict, optional - Operations. Defaults to None.
  • format str, optional - Format of the returned images. Without this, the images are returned as they are stored. Defaults to None.
  • limit int, optional - number of values to restrict results to. Defaults to None.
  • sort dict, optional - Sort. Defaults to None.

search_by_property

def search_by_property(prop_key: str, prop_values: list)

Constructs a constraints block and does a new search

Arguments:

  • prop_key str - Key on which to search
  • prop_values list - The values that must match for the key.

display

def display(show_bboxes: bool = False,
bbox_constraints: Constraints = None,
show_polygons: bool = False,
limit: Union[int, object] = None,
polygon_constraints: Constraints = None,
polygon_tag_key: str = "_label",
polygon_tag_format: str = "{}") -> None

Display images with annotations

Arguments:

  • show_bboxes - bool, optional Show bounding boxes, by default False
  • bbox_constraints - Constraints, optional Constraints for bounding boxes, by default None
  • show_polygons - bool, optional Show polygons, by default False
  • limit - Union[int, object], optional Number of images to display, by default None
  • polygon_constraints - Constraints, optional Constraints for polygons, by default None
  • polygon_tag_key - str, optional Key for the polygon tag, by default "_label"
  • polygon_tag_format - str, optional Format for the polygon tag, by default "{}"

get_props_names

def get_props_names() -> List[str]

Get the names of the properties that apply to images

Returns:

  • properties List[str] - The names of the properties of the images

get_properties

def get_properties(prop_list: Iterable[str] = []) -> Dict[str, Any]

Get the properties of the images

Arguments:

  • prop_list List[str], optional - The list of properties to retrieve. Defaults to [].

Returns:

property_values Dict[str, Any]: The properties of the images