Skip to content

Extracts a part of the image specified by width and height from the given image file path using OpenCV.

License

Notifications You must be signed in to change notification settings

hansalemaos/getpartofimg

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Extracts a part of the image specified by width and height from the given image file path using OpenCV.

pip install getpartofimg

Tested against Windows 10 / Python 3.10 / Anaconda

Parameters:

image : Any The file path of the image from which a part will be extracted.

width : int The desired width of the extracted part.

height : int The desired height of the extracted part.

allow_resize : bool, optional (default=True) If True, allows resizing of the input image when the specified width or height is greater than the original image's dimensions.

Returns:

numpy.ndarray The extracted part of the image as a NumPy array.

Raises:

ValueError If the 'allow_resize' parameter is set to False and the specified width or height is greater than the original image's dimensions, a ValueError is raised with a message indicating that the image is too small.

Notes:

The function uses the 'cv2.imread_plus' function ( https://github.com/hansalemaos/a_cv_imwrite_imread_plus ) to read the image from the given file path. It then calculates the possible ranges for extracting the desired part based on the image's dimensions and the specified width and height. If the 'allow_resize' parameter is True, the function resizes the image using 'cv2.easy_resize_image' ( https://github.com/hansalemaos/a_cv2_easy_resize ) with the 'cv2.INTER_AREA' interpolation method to fit the desired part. Otherwise, it raises a ValueError.

Random starting coordinates within the allowable range are generated to extract the part of the image specified by the given width and height.

# Example usage:
import cv2
from getpartofimg import get_part_of_image
im = get_part_of_image(image=r"https://raw.githubusercontent.com/hansalemaos/screenshots/main/pic5.png", width=600, height=500, allow_resize=True)
cv2.imwrite('c:\\testimage.png', im)

About

Extracts a part of the image specified by width and height from the given image file path using OpenCV.

Topics

Resources

License

Stars

Watchers

Forks

Languages