gevman / azure-thumbnails
Create image thumbnails with help of Microsoft Artificial Intelligence, and show what needed! After uploading an image, a high quality thumbnail gets generated and the Computer Vision API algorithm analyzes the objects within the image, then crops it to fit the requirements of the “region of interes
Requires
- php: >=5.5
- guzzlehttp/guzzle: ^6.2
This package is auto-updated.
Last update: 2024-11-21 03:25:01 UTC
README
Create image thumbnails with help of Microsoft Artificial Intelligence, and show what needed!
A thumbnail is a small representation of a full-size image. Varied devices such as phones, tablets, and PCs create a need for different user experience (UX) layouts and thumbnail sizes. Using smart cropping, this Computer Vision API feature helps solve the problem.
After uploading an image, a high quality thumbnail gets generated and the Computer Vision API algorithm analyzes the objects within the image, then crops it to fit the requirements of the “region of interest” (ROI). The output gets displayed within a special framework as seen in below illustration. The generated thumbnail can be presented in a different aspect ratio than that of the original image to accommodate a user’s needs.
The thumbnail algorithm works as follows:
- Removes distracting elements from the image and recognizes the main object, the “region of interest” (ROI).
- Crops the image based on identified “region of interest”.
- Changes the aspect ratio to fit the target thumbnail dimensions.
Installation (using composer)
composer require gevman/azure-thumbnails
Methods
thumbnail(string $image, int $width, int $height)
Create thumbnail
$image
- full path of image$width
- thumbnail width$height
- thumbnail height
saveAs(string $file [, int $quality = 99])
Save thumbnail to specified path
$file
- full path of thumbnail$quality
- thumbnail quality
show([int $quality = 99][, string $contentType = 'image/jpeg'])
Show thumbnail
$quality
- thumbnail quality$contentType
- Content-Type header
Example of usage
Get your Computer Vision API key
from Microsoft Azure
require '../vendor/autoload.php'; $generator = new \Gevman\Thumbnails\Generator('{Computer Vision API key}'); $thumb = $generator->thumbnail('/full/path/to/original.jpg', 1000, 500); //will save thumbnail to specified path $thumb->saveAs('/full/path/to/thumbnail.jpg', 100); //will show thumbnail $thumb->show();