The easiest way to install Google Vision is through Composer.
composer require jordikroon/google-vision
Next is to obtain an API key through the Google Cloud Platform. To get one visit the link below. https://cloud.google.com/vision/docs/quickstart
$vision = new \Vision\Vision(
$apiKey,
[
// See a list of all features in the table below
// Feature, Limit
new \Vision\Feature(\Vision\Feature::FACE_DETECTION, 100),
]
);
$imagePath = $_FILES['file']['tmp_name'];
$response = $vision->request(
// See a list of all image loaders in the table below
new \Vision\Request\Image\LocalImage($imagePath)
);
$faces = $response->getFaceAnnotations();
foreach ($faces as $face) {
foreach ($face->getBoundingPoly()->getVertices() as $vertex) {
echo sprintf('Person at position X %f and Y %f', $vertex->getX(), $vertex->getY());
}
}
Name | Constant |
---|---|
LABEL_DETECTION | \Vision\Feature::LABEL_DETECTION |
TEXT_DETECTION | \Vision\Feature::TEXT_DETECTION |
FACE_DETECTION | \Vision\Feature::FACE_DETECTION |
LANDMARK_DETECTION | \Vision\Feature::LANDMARK_DETECTION |
LOGO_DETECTION | \Vision\Feature::LOGO_DETECTION |
SAFE_SEARCH_DETECTION | \Vision\Feature::SAFE_SEARCH_DETECTION |
IMAGE_PROPERTIES | \Vision\Feature::IMAGE_PROPERTIES |
WEB_DETECTION | \Vision\Feature::WEB_DETECTION |
CROP_HINTS | \Vision\Feature::CROP_HINTS |
DOCUMENT_TEXT_DETECTION | \Vision\Feature::DOCUMENT_TEXT_DETECTION |
Image loader | Description |
---|---|
\Vision\Request\Image\Base64Image | Loads Base64 encoded images |
\Vision\Request\Image\BinaryImage | Loads binary images (file_get_contents or fopen) |
\Vision\Request\Image\GoogleCloudImage | Loads images from a Google Cloud bucket |
\Vision\Request\Image\LocalImage | Loads a locally stored image |
\Vision\Request\Image\RemoteImage | Loads a remote (HTTP/HTTPS) image somewhere from the web |
To add a feature, add a new \Vision\Feature
instance to features array used as second parameter. See Basic Usage for a full example.
new \Vision\Feature($feature, $maxResults);
$ composer install
$ ./vendor/bin/phpunit
Jordi Kroon | Github | Twitter | jordikroon.nl